mirror of
https://github.com/revanced/revanced-manager.git
synced 2025-04-29 13:34:25 +02:00
build(deps): bump slang_flutter and slang (#2374)
Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Pun Butrach <pun.butrach@gmail.com>
This commit is contained in:
parent
b3ba0fcd6a
commit
dfb3fe3749
21
.github/workflows/sync_crowdin.yml
vendored
21
.github/workflows/sync_crowdin.yml
vendored
@ -25,10 +25,10 @@ jobs:
|
|||||||
uses: subosito/flutter-action@v2
|
uses: subosito/flutter-action@v2
|
||||||
with:
|
with:
|
||||||
cache: true
|
cache: true
|
||||||
flutter-version: 3.24.x
|
flutter-version: 3.27.x
|
||||||
|
|
||||||
- name: Sync translations from Crowdin
|
- name: Sync translations from Crowdin
|
||||||
uses: crowdin/github-action@v1
|
uses: crowdin/github-action@v2
|
||||||
with:
|
with:
|
||||||
config: crowdin.yml
|
config: crowdin.yml
|
||||||
upload_sources: true
|
upload_sources: true
|
||||||
@ -47,20 +47,25 @@ jobs:
|
|||||||
CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }}
|
CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }}
|
||||||
CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}
|
CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}
|
||||||
|
|
||||||
# There has to be a better way to do this
|
- name: Validation of synced translations
|
||||||
- name: Normalization of Translation Strings
|
|
||||||
run: |
|
run: |
|
||||||
dart pub get
|
dart pub get
|
||||||
cd assets/i18n
|
dart run slang validate
|
||||||
sudo chmod 766 *.json
|
|
||||||
cd ../..
|
- name: Normalization of Translation Strings
|
||||||
|
run: |
|
||||||
|
sudo chmod 766 assets/i18n/*.i18n.json
|
||||||
|
|
||||||
dart run slang analyze
|
dart run slang analyze
|
||||||
dart run slang clean
|
dart run slang clean
|
||||||
dart run slang normalize
|
dart run slang normalize
|
||||||
|
|
||||||
cd assets/i18n
|
cd assets/i18n
|
||||||
dart nuke.dart >> $GITHUB_STEP_SUMMARY
|
dart nuke.dart >> $GITHUB_STEP_SUMMARY
|
||||||
cd ../..
|
cd ../..
|
||||||
|
|
||||||
dart run slang
|
dart run slang
|
||||||
|
|
||||||
flutter analyze lib/gen/strings.g.dart --no-fatal-infos --no-fatal-warnings
|
flutter analyze lib/gen/strings.g.dart --no-fatal-infos --no-fatal-warnings
|
||||||
|
|
||||||
- name: Commit translations
|
- name: Commit translations
|
||||||
@ -68,5 +73,5 @@ jobs:
|
|||||||
git config user.name revanced-bot
|
git config user.name revanced-bot
|
||||||
git config user.email github@revanced.app
|
git config user.email github@revanced.app
|
||||||
sudo chown -R $USER:$USER .git
|
sudo chown -R $USER:$USER .git
|
||||||
git commit -m "chore: Remove empty values from JSON" assets/i18n/strings_*.json
|
git commit -m "chore: Remove empty values from JSON" assets/i18n/*.i18n.json
|
||||||
git push origin HEAD:feat/translations
|
git push origin HEAD:feat/translations
|
||||||
|
@ -1,14 +0,0 @@
|
|||||||
# Nuke:tm:
|
|
||||||
|
|
||||||
> ![CAUTION]
|
|
||||||
> Some of the code are licensed under BSD 3-Clause License, please check inside the code file for more information.
|
|
||||||
|
|
||||||
## Usage
|
|
||||||
|
|
||||||
Move to your desire directory and run
|
|
||||||
|
|
||||||
```bash
|
|
||||||
dart nuke.dart
|
|
||||||
```
|
|
||||||
|
|
||||||
and it will remove all the empty keys from the JSON files in the current folder.
|
|
0
assets/i18n/strings_ar_SA.i18n.json → assets/i18n/ar_SA.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ar_SA.i18n.json → assets/i18n/ar_SA.i18n.json
Executable file → Normal file
0
assets/i18n/strings_az_AZ.i18n.json → assets/i18n/az_AZ.i18n.json
Executable file → Normal file
0
assets/i18n/strings_az_AZ.i18n.json → assets/i18n/az_AZ.i18n.json
Executable file → Normal file
0
assets/i18n/strings_be_BY.i18n.json → assets/i18n/be_BY.i18n.json
Executable file → Normal file
0
assets/i18n/strings_be_BY.i18n.json → assets/i18n/be_BY.i18n.json
Executable file → Normal file
0
assets/i18n/strings_bg_BG.i18n.json → assets/i18n/bg_BG.i18n.json
Executable file → Normal file
0
assets/i18n/strings_bg_BG.i18n.json → assets/i18n/bg_BG.i18n.json
Executable file → Normal file
0
assets/i18n/strings_bn_BD.i18n.json → assets/i18n/bn_BD.i18n.json
Executable file → Normal file
0
assets/i18n/strings_bn_BD.i18n.json → assets/i18n/bn_BD.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ca_ES.i18n.json → assets/i18n/ca_ES.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ca_ES.i18n.json → assets/i18n/ca_ES.i18n.json
Executable file → Normal file
0
assets/i18n/strings_cs_CZ.i18n.json → assets/i18n/cs_CZ.i18n.json
Executable file → Normal file
0
assets/i18n/strings_cs_CZ.i18n.json → assets/i18n/cs_CZ.i18n.json
Executable file → Normal file
0
assets/i18n/strings_da_DK.i18n.json → assets/i18n/da_DK.i18n.json
Executable file → Normal file
0
assets/i18n/strings_da_DK.i18n.json → assets/i18n/da_DK.i18n.json
Executable file → Normal file
0
assets/i18n/strings_de_DE.i18n.json → assets/i18n/de_DE.i18n.json
Executable file → Normal file
0
assets/i18n/strings_de_DE.i18n.json → assets/i18n/de_DE.i18n.json
Executable file → Normal file
0
assets/i18n/strings_el_GR.i18n.json → assets/i18n/el_GR.i18n.json
Executable file → Normal file
0
assets/i18n/strings_el_GR.i18n.json → assets/i18n/el_GR.i18n.json
Executable file → Normal file
2
assets/i18n/strings.i18n.json → assets/i18n/en.i18n.json
Executable file → Normal file
2
assets/i18n/strings.i18n.json → assets/i18n/en.i18n.json
Executable file → Normal file
@ -295,4 +295,4 @@
|
|||||||
"install_failed_version_downgrade_description": "The installation failed due to the patched app being a lower version than the installed app.\n\nUninstall the app and try again?",
|
"install_failed_version_downgrade_description": "The installation failed due to the patched app being a lower version than the installed app.\n\nUninstall the app and try again?",
|
||||||
"status_unknown_description": "The installation failed due to an unknown reason. Please try again."
|
"status_unknown_description": "The installation failed due to an unknown reason. Please try again."
|
||||||
}
|
}
|
||||||
}
|
}
|
0
assets/i18n/strings_es_AR.i18n.json → assets/i18n/es_AR.i18n.json
Executable file → Normal file
0
assets/i18n/strings_es_AR.i18n.json → assets/i18n/es_AR.i18n.json
Executable file → Normal file
0
assets/i18n/strings_es_ES.i18n.json → assets/i18n/es_ES.i18n.json
Executable file → Normal file
0
assets/i18n/strings_es_ES.i18n.json → assets/i18n/es_ES.i18n.json
Executable file → Normal file
0
assets/i18n/strings_es_MX.i18n.json → assets/i18n/es_MX.i18n.json
Executable file → Normal file
0
assets/i18n/strings_es_MX.i18n.json → assets/i18n/es_MX.i18n.json
Executable file → Normal file
0
assets/i18n/strings_et_EE.i18n.json → assets/i18n/et_EE.i18n.json
Executable file → Normal file
0
assets/i18n/strings_et_EE.i18n.json → assets/i18n/et_EE.i18n.json
Executable file → Normal file
0
assets/i18n/strings_fa_IR.i18n.json → assets/i18n/fa_IR.i18n.json
Executable file → Normal file
0
assets/i18n/strings_fa_IR.i18n.json → assets/i18n/fa_IR.i18n.json
Executable file → Normal file
0
assets/i18n/strings_fi_FI.i18n.json → assets/i18n/fi_FI.i18n.json
Executable file → Normal file
0
assets/i18n/strings_fi_FI.i18n.json → assets/i18n/fi_FI.i18n.json
Executable file → Normal file
0
assets/i18n/strings_fil_PH.i18n.json → assets/i18n/fil_PH.i18n.json
Executable file → Normal file
0
assets/i18n/strings_fil_PH.i18n.json → assets/i18n/fil_PH.i18n.json
Executable file → Normal file
0
assets/i18n/strings_fr_FR.i18n.json → assets/i18n/fr_FR.i18n.json
Executable file → Normal file
0
assets/i18n/strings_fr_FR.i18n.json → assets/i18n/fr_FR.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ga_IE.i18n.json → assets/i18n/ga_IE.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ga_IE.i18n.json → assets/i18n/ga_IE.i18n.json
Executable file → Normal file
0
assets/i18n/strings_he_IL.i18n.json → assets/i18n/he_IL.i18n.json
Executable file → Normal file
0
assets/i18n/strings_he_IL.i18n.json → assets/i18n/he_IL.i18n.json
Executable file → Normal file
0
assets/i18n/strings_hi_IN.i18n.json → assets/i18n/hi_IN.i18n.json
Executable file → Normal file
0
assets/i18n/strings_hi_IN.i18n.json → assets/i18n/hi_IN.i18n.json
Executable file → Normal file
0
assets/i18n/strings_hr_HR.i18n.json → assets/i18n/hr_HR.i18n.json
Executable file → Normal file
0
assets/i18n/strings_hr_HR.i18n.json → assets/i18n/hr_HR.i18n.json
Executable file → Normal file
0
assets/i18n/strings_hu_HU.i18n.json → assets/i18n/hu_HU.i18n.json
Executable file → Normal file
0
assets/i18n/strings_hu_HU.i18n.json → assets/i18n/hu_HU.i18n.json
Executable file → Normal file
0
assets/i18n/strings_hy_AM.i18n.json → assets/i18n/hy_AM.i18n.json
Executable file → Normal file
0
assets/i18n/strings_hy_AM.i18n.json → assets/i18n/hy_AM.i18n.json
Executable file → Normal file
0
assets/i18n/strings_id_ID.i18n.json → assets/i18n/id_ID.i18n.json
Executable file → Normal file
0
assets/i18n/strings_id_ID.i18n.json → assets/i18n/id_ID.i18n.json
Executable file → Normal file
0
assets/i18n/strings_is_IS.i18n.json → assets/i18n/is_IS.i18n.json
Executable file → Normal file
0
assets/i18n/strings_is_IS.i18n.json → assets/i18n/is_IS.i18n.json
Executable file → Normal file
0
assets/i18n/strings_it_IT.i18n.json → assets/i18n/it_IT.i18n.json
Executable file → Normal file
0
assets/i18n/strings_it_IT.i18n.json → assets/i18n/it_IT.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ja_JP.i18n.json → assets/i18n/ja_JP.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ja_JP.i18n.json → assets/i18n/ja_JP.i18n.json
Executable file → Normal file
0
assets/i18n/strings_kk_KZ.i18n.json → assets/i18n/kk_KZ.i18n.json
Executable file → Normal file
0
assets/i18n/strings_kk_KZ.i18n.json → assets/i18n/kk_KZ.i18n.json
Executable file → Normal file
0
assets/i18n/strings_km_KH.i18n.json → assets/i18n/km_KH.i18n.json
Executable file → Normal file
0
assets/i18n/strings_km_KH.i18n.json → assets/i18n/km_KH.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ko_KR.i18n.json → assets/i18n/ko_KR.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ko_KR.i18n.json → assets/i18n/ko_KR.i18n.json
Executable file → Normal file
0
assets/i18n/strings_lt_LT.i18n.json → assets/i18n/lt_LT.i18n.json
Executable file → Normal file
0
assets/i18n/strings_lt_LT.i18n.json → assets/i18n/lt_LT.i18n.json
Executable file → Normal file
0
assets/i18n/strings_lv_LV.i18n.json → assets/i18n/lv_LV.i18n.json
Executable file → Normal file
0
assets/i18n/strings_lv_LV.i18n.json → assets/i18n/lv_LV.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ms_MY.i18n.json → assets/i18n/ms_MY.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ms_MY.i18n.json → assets/i18n/ms_MY.i18n.json
Executable file → Normal file
0
assets/i18n/strings_my_MM.i18n.json → assets/i18n/my_MM.i18n.json
Executable file → Normal file
0
assets/i18n/strings_my_MM.i18n.json → assets/i18n/my_MM.i18n.json
Executable file → Normal file
0
assets/i18n/strings_nb_NO.i18n.json → assets/i18n/nb_NO.i18n.json
Executable file → Normal file
0
assets/i18n/strings_nb_NO.i18n.json → assets/i18n/nb_NO.i18n.json
Executable file → Normal file
0
assets/i18n/strings_nl_NL.i18n.json → assets/i18n/nl_NL.i18n.json
Executable file → Normal file
0
assets/i18n/strings_nl_NL.i18n.json → assets/i18n/nl_NL.i18n.json
Executable file → Normal file
0
assets/i18n/strings_no_NO.i18n.json → assets/i18n/no_NO.i18n.json
Executable file → Normal file
0
assets/i18n/strings_no_NO.i18n.json → assets/i18n/no_NO.i18n.json
Executable file → Normal file
@ -43,11 +43,16 @@ T? removeBlankEntries<T>(T? json) {
|
|||||||
if (json is List) {
|
if (json is List) {
|
||||||
json.removeWhere((e) => e == null);
|
json.removeWhere((e) => e == null);
|
||||||
json.forEach(removeBlankEntries);
|
json.forEach(removeBlankEntries);
|
||||||
|
// If the list is empty after removing nulls, return null to remove it.
|
||||||
|
return json.isEmpty ? null : json;
|
||||||
} else if (json is Map) {
|
} else if (json is Map) {
|
||||||
json.removeWhere(
|
json.removeWhere(
|
||||||
(key, value) => key == null || value == null || value == '',
|
(key, value) => key == null || value == null || value == '',
|
||||||
);
|
);
|
||||||
json.values.forEach(removeBlankEntries);
|
json.values.forEach(removeBlankEntries);
|
||||||
|
// If the map is empty after removing blank entries, return null to remove it.
|
||||||
|
return json.isEmpty ? null : json;
|
||||||
|
|
||||||
}
|
}
|
||||||
return json;
|
return json;
|
||||||
}
|
}
|
||||||
@ -62,11 +67,21 @@ Future<void> processJsonFiles() async {
|
|||||||
final String contents = await file.readAsString();
|
final String contents = await file.readAsString();
|
||||||
final dynamic json = jsonDecode(contents);
|
final dynamic json = jsonDecode(contents);
|
||||||
final dynamic processedJson = removeBlankEntries(json);
|
final dynamic processedJson = removeBlankEntries(json);
|
||||||
|
bool isEmpty = false;
|
||||||
|
|
||||||
file.writeAsString(
|
if (processedJson is Map) {
|
||||||
const JsonEncoder.withIndent(' ').convert(processedJson),
|
isEmpty = processedJson.values.every((value) => value is Map && value.isEmpty);
|
||||||
);
|
}
|
||||||
print('🥞 Task successful on: ${file.path}');
|
|
||||||
|
if (processedJson == null || isEmpty) {
|
||||||
|
await file.delete();
|
||||||
|
print('🗑️ File deleted: ${file.path}');
|
||||||
|
} else {
|
||||||
|
await file.writeAsString(
|
||||||
|
const JsonEncoder.withIndent(' ').convert(processedJson),
|
||||||
|
);
|
||||||
|
print('🥞 Task successful on: ${file.path}');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
print('💥 Task failed on: ${file.path}: $e');
|
print('💥 Task failed on: ${file.path}: $e');
|
||||||
|
0
assets/i18n/strings_or_IN.i18n.json → assets/i18n/or_IN.i18n.json
Executable file → Normal file
0
assets/i18n/strings_or_IN.i18n.json → assets/i18n/or_IN.i18n.json
Executable file → Normal file
0
assets/i18n/strings_pl_PL.i18n.json → assets/i18n/pl_PL.i18n.json
Executable file → Normal file
0
assets/i18n/strings_pl_PL.i18n.json → assets/i18n/pl_PL.i18n.json
Executable file → Normal file
0
assets/i18n/strings_pt_BR.i18n.json → assets/i18n/pt_BR.i18n.json
Executable file → Normal file
0
assets/i18n/strings_pt_BR.i18n.json → assets/i18n/pt_BR.i18n.json
Executable file → Normal file
0
assets/i18n/strings_pt_PT.i18n.json → assets/i18n/pt_PT.i18n.json
Executable file → Normal file
0
assets/i18n/strings_pt_PT.i18n.json → assets/i18n/pt_PT.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ro_RO.i18n.json → assets/i18n/ro_RO.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ro_RO.i18n.json → assets/i18n/ro_RO.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ru_RU.i18n.json → assets/i18n/ru_RU.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ru_RU.i18n.json → assets/i18n/ru_RU.i18n.json
Executable file → Normal file
0
assets/i18n/strings_sk_SK.i18n.json → assets/i18n/sk_SK.i18n.json
Executable file → Normal file
0
assets/i18n/strings_sk_SK.i18n.json → assets/i18n/sk_SK.i18n.json
Executable file → Normal file
0
assets/i18n/strings_sl_SI.i18n.json → assets/i18n/sl_SI.i18n.json
Executable file → Normal file
0
assets/i18n/strings_sl_SI.i18n.json → assets/i18n/sl_SI.i18n.json
Executable file → Normal file
0
assets/i18n/strings_sq_AL.i18n.json → assets/i18n/sq_AL.i18n.json
Executable file → Normal file
0
assets/i18n/strings_sq_AL.i18n.json → assets/i18n/sq_AL.i18n.json
Executable file → Normal file
0
assets/i18n/strings_sr_CS.i18n.json → assets/i18n/sr_CS.i18n.json
Executable file → Normal file
0
assets/i18n/strings_sr_CS.i18n.json → assets/i18n/sr_CS.i18n.json
Executable file → Normal file
0
assets/i18n/strings_sr_SP.i18n.json → assets/i18n/sr_SP.i18n.json
Executable file → Normal file
0
assets/i18n/strings_sr_SP.i18n.json → assets/i18n/sr_SP.i18n.json
Executable file → Normal file
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"navigationView": {},
|
|
||||||
"homeView": {},
|
|
||||||
"applicationItem": {},
|
|
||||||
"latestCommitCard": {},
|
|
||||||
"patcherView": {},
|
|
||||||
"appSelectorCard": {},
|
|
||||||
"patchSelectorCard": {},
|
|
||||||
"socialMediaCard": {},
|
|
||||||
"appSelectorView": {},
|
|
||||||
"patchesSelectorView": {},
|
|
||||||
"patchOptionsView": {},
|
|
||||||
"patchItem": {},
|
|
||||||
"installerView": {},
|
|
||||||
"settingsView": {},
|
|
||||||
"appInfoView": {},
|
|
||||||
"contributorsView": {},
|
|
||||||
"installErrorDialog": {}
|
|
||||||
}
|
|
0
assets/i18n/strings_sv_SE.i18n.json → assets/i18n/sv_SE.i18n.json
Executable file → Normal file
0
assets/i18n/strings_sv_SE.i18n.json → assets/i18n/sv_SE.i18n.json
Executable file → Normal file
0
assets/i18n/strings_sw_KE.i18n.json → assets/i18n/sw_KE.i18n.json
Executable file → Normal file
0
assets/i18n/strings_sw_KE.i18n.json → assets/i18n/sw_KE.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ta_IN.i18n.json → assets/i18n/ta_IN.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ta_IN.i18n.json → assets/i18n/ta_IN.i18n.json
Executable file → Normal file
0
assets/i18n/strings_te_IN.i18n.json → assets/i18n/te_IN.i18n.json
Executable file → Normal file
0
assets/i18n/strings_te_IN.i18n.json → assets/i18n/te_IN.i18n.json
Executable file → Normal file
0
assets/i18n/strings_th_TH.i18n.json → assets/i18n/th_TH.i18n.json
Executable file → Normal file
0
assets/i18n/strings_th_TH.i18n.json → assets/i18n/th_TH.i18n.json
Executable file → Normal file
0
assets/i18n/strings_tr_TR.i18n.json → assets/i18n/tr_TR.i18n.json
Executable file → Normal file
0
assets/i18n/strings_tr_TR.i18n.json → assets/i18n/tr_TR.i18n.json
Executable file → Normal file
0
assets/i18n/strings_uk_UA.i18n.json → assets/i18n/uk_UA.i18n.json
Executable file → Normal file
0
assets/i18n/strings_uk_UA.i18n.json → assets/i18n/uk_UA.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ur_PK.i18n.json → assets/i18n/ur_PK.i18n.json
Executable file → Normal file
0
assets/i18n/strings_ur_PK.i18n.json → assets/i18n/ur_PK.i18n.json
Executable file → Normal file
0
assets/i18n/strings_uz_UZ.i18n.json → assets/i18n/uz_UZ.i18n.json
Executable file → Normal file
0
assets/i18n/strings_uz_UZ.i18n.json → assets/i18n/uz_UZ.i18n.json
Executable file → Normal file
0
assets/i18n/strings_vi_VN.i18n.json → assets/i18n/vi_VN.i18n.json
Executable file → Normal file
0
assets/i18n/strings_vi_VN.i18n.json → assets/i18n/vi_VN.i18n.json
Executable file → Normal file
0
assets/i18n/strings_zh_CN.i18n.json → assets/i18n/zh_CN.i18n.json
Executable file → Normal file
0
assets/i18n/strings_zh_CN.i18n.json → assets/i18n/zh_CN.i18n.json
Executable file → Normal file
0
assets/i18n/strings_zh_HK.i18n.json → assets/i18n/zh_HK.i18n.json
Executable file → Normal file
0
assets/i18n/strings_zh_HK.i18n.json → assets/i18n/zh_HK.i18n.json
Executable file → Normal file
0
assets/i18n/strings_zh_TW.i18n.json → assets/i18n/zh_TW.i18n.json
Executable file → Normal file
0
assets/i18n/strings_zh_TW.i18n.json → assets/i18n/zh_TW.i18n.json
Executable file → Normal file
@ -3,6 +3,6 @@ api_token_env: "CROWDIN_PERSONAL_TOKEN"
|
|||||||
|
|
||||||
preserve_hierarchy: false
|
preserve_hierarchy: false
|
||||||
files:
|
files:
|
||||||
- source: /assets/i18n/strings.i18n.json
|
- source: /assets/i18n/en.i18n.json
|
||||||
translation: /assets/i18n/strings_%locale_with_underscore%.i18n.json
|
translation: /assets/i18n/%locale_with_underscore%.i18n.json
|
||||||
skip_untranslated_strings: true
|
skip_untranslated_strings: true
|
||||||
|
@ -1040,18 +1040,18 @@ packages:
|
|||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
name: slang
|
name: slang
|
||||||
sha256: a466773de768eb95bdf681e0a92e7c8010d44bb247b62130426c83ece33aeaed
|
sha256: "4cdc3d8f4b384dbc56d94c87a5371d4a584460d82a74e18247ec690a0e369ff2"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "3.32.0"
|
version: "4.4.0"
|
||||||
slang_flutter:
|
slang_flutter:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
name: slang_flutter
|
name: slang_flutter
|
||||||
sha256: "1a98e878673996902fa5ef0b61ce5c245e41e4d25640d18af061c6aab917b0c7"
|
sha256: "819637a23348adbc4f4e8faee3f274d8908f9af31d57bf1e277cd730b14bacde"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "3.32.0"
|
version: "4.4.0"
|
||||||
source_gen:
|
source_gen:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
@ -61,8 +61,8 @@ dependencies:
|
|||||||
git: # remove once https://github.com/badjio/skeletons/pull/11 is merged
|
git: # remove once https://github.com/badjio/skeletons/pull/11 is merged
|
||||||
url: https://github.com/Ofceab-Studio/skeletons
|
url: https://github.com/Ofceab-Studio/skeletons
|
||||||
ref: 326fbb4223ac4d8a6301cc2f16b6112ecd308c71 # Branch: master
|
ref: 326fbb4223ac4d8a6301cc2f16b6112ecd308c71 # Branch: master
|
||||||
slang: ^3.30.2
|
slang: ^4.4.0
|
||||||
slang_flutter: ^3.30.0
|
slang_flutter: ^4.4.0
|
||||||
stacked: ^3.4.2
|
stacked: ^3.4.2
|
||||||
stacked_generator: ^1.6.0
|
stacked_generator: ^1.6.0
|
||||||
stacked_services: ^1.6.0
|
stacked_services: ^1.6.0
|
||||||
|
Loading…
x
Reference in New Issue
Block a user