diff --git a/.github/workflows/fastlane.yml b/.github/workflows/fastlane.yml new file mode 100644 index 0000000..b88c5eb --- /dev/null +++ b/.github/workflows/fastlane.yml @@ -0,0 +1,16 @@ +name: Validate Fastlane metadata + +on: + workflow_dispatch: + push: + branches: [ "main" ] + pull_request: + branches: [ "main" ] + +jobs: + go: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Validate Fastlane Supply Metadata + uses: ashutoshgngwr/validate-fastlane-supply-metadata@v2 diff --git a/assets/graphics/icon-512x512.png b/assets/graphics/icon-512x512.png new file mode 100644 index 0000000..2cbf341 Binary files /dev/null and b/assets/graphics/icon-512x512.png differ diff --git a/fastlane/metadata/android/en-US/images/featureGraphic.png b/fastlane/metadata/android/en-US/images/featureGraphic.png deleted file mode 100755 index cc44814..0000000 Binary files a/fastlane/metadata/android/en-US/images/featureGraphic.png and /dev/null differ diff --git a/fastlane/metadata/android/en-US/images/featureGraphic.png b/fastlane/metadata/android/en-US/images/featureGraphic.png new file mode 120000 index 0000000..1c313f1 --- /dev/null +++ b/fastlane/metadata/android/en-US/images/featureGraphic.png @@ -0,0 +1 @@ +../../../../../assets/graphics/banner.png \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/images/icon.png b/fastlane/metadata/android/en-US/images/icon.png deleted file mode 100644 index 2cbf341..0000000 Binary files a/fastlane/metadata/android/en-US/images/icon.png and /dev/null differ diff --git a/fastlane/metadata/android/en-US/images/icon.png b/fastlane/metadata/android/en-US/images/icon.png new file mode 120000 index 0000000..90c4bd9 --- /dev/null +++ b/fastlane/metadata/android/en-US/images/icon.png @@ -0,0 +1 @@ +../../../../../assets/graphics/icon-512x512.png \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png deleted file mode 100644 index ecd7aa8..0000000 Binary files a/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png and /dev/null differ diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png new file mode 120000 index 0000000..c78483b --- /dev/null +++ b/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png @@ -0,0 +1 @@ +../../../../../../assets/screenshots/1.apps.png \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png deleted file mode 100644 index 699bbf7..0000000 Binary files a/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png and /dev/null differ diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png new file mode 120000 index 0000000..3101b70 --- /dev/null +++ b/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png @@ -0,0 +1 @@ +../../../../../../assets/screenshots/2.dark_theme.png \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png deleted file mode 100644 index 04b0ae1..0000000 Binary files a/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png and /dev/null differ diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png new file mode 120000 index 0000000..481e3d9 --- /dev/null +++ b/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png @@ -0,0 +1 @@ +../../../../../../assets/screenshots/3.material_you.png \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png deleted file mode 100644 index 55ae937..0000000 Binary files a/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png and /dev/null differ diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png new file mode 120000 index 0000000..dc799e0 --- /dev/null +++ b/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png @@ -0,0 +1 @@ +../../../../../../assets/screenshots/4.app.png \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/5.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/5.png deleted file mode 100644 index 5e5e7fe..0000000 Binary files a/fastlane/metadata/android/en-US/images/phoneScreenshots/5.png and /dev/null differ diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/5.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/5.png new file mode 120000 index 0000000..bbdd89f --- /dev/null +++ b/fastlane/metadata/android/en-US/images/phoneScreenshots/5.png @@ -0,0 +1 @@ +../../../../../../assets/screenshots/5.app_opts.png \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/6.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/6.png deleted file mode 100644 index 636eaf2..0000000 Binary files a/fastlane/metadata/android/en-US/images/phoneScreenshots/6.png and /dev/null differ diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/6.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/6.png new file mode 120000 index 0000000..29d4972 --- /dev/null +++ b/fastlane/metadata/android/en-US/images/phoneScreenshots/6.png @@ -0,0 +1 @@ +../../../../../../assets/screenshots/6.app_webview.png \ No newline at end of file diff --git a/fastlane/metadata/android/ru/title.txt b/fastlane/metadata/android/ru/title.txt new file mode 100644 index 0000000..e980f94 --- /dev/null +++ b/fastlane/metadata/android/ru/title.txt @@ -0,0 +1 @@ +Obtainium diff --git a/lib/app_sources/html.dart b/lib/app_sources/html.dart index af26cec..b00f73e 100644 --- a/lib/app_sources/html.dart +++ b/lib/app_sources/html.dart @@ -9,32 +9,7 @@ import 'package:obtainium/providers/apps_provider.dart'; import 'package:obtainium/providers/source_provider.dart'; String ensureAbsoluteUrl(String ambiguousUrl, Uri referenceAbsoluteUrl) { - if (ambiguousUrl.startsWith('//')) { - ambiguousUrl = '${referenceAbsoluteUrl.scheme}:$ambiguousUrl'; - } - try { - Uri.parse(ambiguousUrl).origin; - return ambiguousUrl; - } catch (err) { - // is relative - } - var currPathSegments = referenceAbsoluteUrl.path - .split('/') - .where((element) => element.trim().isNotEmpty) - .toList(); - String absoluteUrl; - if (ambiguousUrl.startsWith('/')) { - absoluteUrl = '${referenceAbsoluteUrl.origin}$ambiguousUrl'; - } else if (currPathSegments.isEmpty) { - absoluteUrl = '${referenceAbsoluteUrl.origin}/$ambiguousUrl'; - } else if (ambiguousUrl.split('/').where((e) => e.isNotEmpty).length == 1) { - absoluteUrl = - '${referenceAbsoluteUrl.origin}/${currPathSegments.join('/')}/$ambiguousUrl'; - } else { - absoluteUrl = - '${referenceAbsoluteUrl.origin}/${currPathSegments.sublist(0, currPathSegments.length - (currPathSegments.last.contains('.') ? 1 : 0)).join('/')}/$ambiguousUrl'; - } - return Uri.parse(absoluteUrl).toString(); + return referenceAbsoluteUrl.resolve(ambiguousUrl).toString(); } int compareAlphaNumeric(String a, String b) {