Skip to content

Commit

Permalink
Merge pull request #69 from vanlooverenkoen/bugfix/language-tag
Browse files Browse the repository at this point in the history
Use language tag instead of languageCode
  • Loading branch information
vanlooverenkoen committed Feb 1, 2022
2 parents e12c2b0 + 57b0e6e commit 8918207
Show file tree
Hide file tree
Showing 12 changed files with 45 additions and 24 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
# Changelog
## [4.1.2] - 2022-01-01
### Fixed
- changed language code to `toLanguageTag()`

## [4.1.1] - 2021-12-16
### Fixed
- Output path should also be used for the correct imports
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2019 Van Looveren Koen
Copyright (c) 2022 Koen Van Looveren

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
2 changes: 1 addition & 1 deletion example/ios/Flutter/AppFrameworkInfo.plist
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,6 @@
<key>CFBundleVersion</key>
<string>1.0</string>
<key>MinimumOSVersion</key>
<string>8.0</string>
<string>9.0</string>
</dict>
</plist>
8 changes: 4 additions & 4 deletions example/ios/Runner.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objectVersion = 50;
objects = {

/* Begin PBXBuildFile section */
Expand Down Expand Up @@ -165,7 +165,7 @@
97C146E61CF9000F007C117D /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0910;
LastUpgradeCheck = 1300;
ORGANIZATIONNAME = "The Chromium Authors";
TargetAttributes = {
97C146ED1CF9000F007C117D = {
Expand Down Expand Up @@ -337,7 +337,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
Expand Down Expand Up @@ -384,7 +384,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = iphoneos;
TARGETED_DEVICE_FAMILY = "1,2";
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "0910"
LastUpgradeVersion = "1300"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
Expand Down
9 changes: 9 additions & 0 deletions example/lib/screen/home_screen.dart
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,15 @@ class HomeScreen extends StatelessWidget {
child: const Text('Nederlands (Not translated)'),
onPressed: Provider.of<LocaleViewModel>(context).onSwitchToDutch,
),
MaterialButton(
child: const Text('fi-FI (Not translated)'),
onPressed: Provider.of<LocaleViewModel>(context).onSwitchToFiFi,
),
MaterialButton(
child: const Text('zh-Hans-CN (Not translated)'),
onPressed:
Provider.of<LocaleViewModel>(context).onSwitchToZHHansCN,
),
Container(height: 32),
Text(Localization.of(context).test),
Text(Localization.of(context).testArg1('string')),
Expand Down
2 changes: 1 addition & 1 deletion example/lib/util/locale/localization.dart
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ class Localization {
localizations._localisedOverrideValues = overrideLocalizations;
}
final jsonContent = await rootBundle.loadString(
'assets/locale/${locale.languageCode}.json',
'assets/locale/${locale.toLanguageTag()}.json',
cache: useCaching);
localizations._localisedValues =
json.decode(jsonContent) as Map<String, dynamic>; // ignore: avoid_as
Expand Down
4 changes: 2 additions & 2 deletions example/lib/util/locale/localization_delegate.dart
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ class LocalizationDelegate extends LocalizationsDelegate<Localization> {
static List<Locale> get supportedLocales {
if (localeFilter == null) return _supportedLocales;
return _supportedLocales
.where((element) => localeFilter?.call(element.languageCode) ?? true)
.where((element) => localeFilter?.call(element.toLanguageTag()) ?? true)
.toList();
}

Expand All @@ -59,7 +59,7 @@ class LocalizationDelegate extends LocalizationsDelegate<Localization> {

@override
bool isSupported(Locale locale) =>
supportedLanguages.contains(locale.languageCode);
supportedLanguages.contains(locale.toLanguageTag());

@override
Future<Localization> load(Locale locale) async {
Expand Down
8 changes: 8 additions & 0 deletions example/lib/viewmodel/locale/locale_viewmodel.dart
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,14 @@ class LocaleViewModel with ChangeNotifier {
await _onUpdateLocaleClicked(const Locale('en'));
}

Future<void> onSwitchToZHHansCN() async {
await _onUpdateLocaleClicked(const Locale('zh', 'Hans-CN'));
}

Future<void> onSwitchToFiFi() async {
await _onUpdateLocaleClicked(const Locale('fi', 'FI'));
}

Future<void> onSwitchToSystemLanguage() async {
await _onUpdateLocaleClicked(null);
}
Expand Down
6 changes: 3 additions & 3 deletions lib/src/locale_gen_sb_writer.dart
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ class LocaleGenSbWriter {
' localizations._localisedOverrideValues = overrideLocalizations;')
..writeln(' }')
..writeln(
" final jsonContent = await rootBundle.loadString('${params.assetsDir}\${locale.languageCode}.json', cache: useCaching);")
" final jsonContent = await rootBundle.loadString('${params.assetsDir}\${locale.toLanguageTag()}.json', cache: useCaching);")
..writeln(
' localizations._localisedValues = json.decode(jsonContent) as Map<String, dynamic>; // ignore: avoid_as')
..writeln(' return localizations;')
Expand Down Expand Up @@ -176,7 +176,7 @@ class LocaleGenSbWriter {
..writeln(' static List<Locale> get supportedLocales {')
..writeln(' if (localeFilter == null) return _supportedLocales;')
..writeln(
' return _supportedLocales.where((element) => localeFilter?.call(element.languageCode) ?? true).toList();')
' return _supportedLocales.where((element) => localeFilter?.call(element.toLanguageTag()) ?? true).toList();')
..writeln(' }')
..writeln()
..writeln(' LocalizationOverrides? localizationOverrides;')
Expand All @@ -198,7 +198,7 @@ class LocaleGenSbWriter {
..writeln()
..writeln(' @override')
..writeln(
' bool isSupported(Locale locale) => supportedLanguages.contains(locale.languageCode);')
' bool isSupported(Locale locale) => supportedLanguages.contains(locale.toLanguageTag());')
..writeln()
..writeln(' @override')
..writeln(' Future<Localization> load(Locale locale) async {')
Expand Down
2 changes: 1 addition & 1 deletion pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: locale_gen
description: Dart tool that will convert your default locale json to dart code.
version: 4.1.1
version: 4.1.2
homepage: https://github.com/vanlooverenkoen/locale_gen

environment:
Expand Down
20 changes: 10 additions & 10 deletions test/locale_gen_sb_writer_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -226,7 +226,7 @@ class Localization {
final overrideLocalizations = await localizationOverrides.getOverriddenLocalizations(locale);
localizations._localisedOverrideValues = overrideLocalizations;
}
final jsonContent = await rootBundle.loadString('assets/locale/${locale.languageCode}.json', cache: useCaching);
final jsonContent = await rootBundle.loadString('assets/locale/${locale.toLanguageTag()}.json', cache: useCaching);
localizations._localisedValues = json.decode(jsonContent) as Map<String, dynamic>; // ignore: avoid_as
return localizations;
}
Expand Down Expand Up @@ -304,7 +304,7 @@ class Localization {
final overrideLocalizations = await localizationOverrides.getOverriddenLocalizations(locale);
localizations._localisedOverrideValues = overrideLocalizations;
}
final jsonContent = await rootBundle.loadString('assets/locale/${locale.languageCode}.json', cache: useCaching);
final jsonContent = await rootBundle.loadString('assets/locale/${locale.toLanguageTag()}.json', cache: useCaching);
localizations._localisedValues = json.decode(jsonContent) as Map<String, dynamic>; // ignore: avoid_as
return localizations;
}
Expand Down Expand Up @@ -394,7 +394,7 @@ class Localization {
final overrideLocalizations = await localizationOverrides.getOverriddenLocalizations(locale);
localizations._localisedOverrideValues = overrideLocalizations;
}
final jsonContent = await rootBundle.loadString('assets/locale/${locale.languageCode}.json', cache: useCaching);
final jsonContent = await rootBundle.loadString('assets/locale/${locale.toLanguageTag()}.json', cache: useCaching);
localizations._localisedValues = json.decode(jsonContent) as Map<String, dynamic>; // ignore: avoid_as
return localizations;
}
Expand Down Expand Up @@ -493,7 +493,7 @@ class Localization {
final overrideLocalizations = await localizationOverrides.getOverriddenLocalizations(locale);
localizations._localisedOverrideValues = overrideLocalizations;
}
final jsonContent = await rootBundle.loadString('assets/locale/${locale.languageCode}.json', cache: useCaching);
final jsonContent = await rootBundle.loadString('assets/locale/${locale.toLanguageTag()}.json', cache: useCaching);
localizations._localisedValues = json.decode(jsonContent) as Map<String, dynamic>; // ignore: avoid_as
return localizations;
}
Expand Down Expand Up @@ -593,7 +593,7 @@ class Localization {
final overrideLocalizations = await localizationOverrides.getOverriddenLocalizations(locale);
localizations._localisedOverrideValues = overrideLocalizations;
}
final jsonContent = await rootBundle.loadString('assets/locale/${locale.languageCode}.json', cache: useCaching);
final jsonContent = await rootBundle.loadString('assets/locale/${locale.toLanguageTag()}.json', cache: useCaching);
localizations._localisedValues = json.decode(jsonContent) as Map<String, dynamic>; // ignore: avoid_as
return localizations;
}
Expand Down Expand Up @@ -695,7 +695,7 @@ class Localization {
final overrideLocalizations = await localizationOverrides.getOverriddenLocalizations(locale);
localizations._localisedOverrideValues = overrideLocalizations;
}
final jsonContent = await rootBundle.loadString('assets/locale/${locale.languageCode}.json', cache: useCaching);
final jsonContent = await rootBundle.loadString('assets/locale/${locale.toLanguageTag()}.json', cache: useCaching);
localizations._localisedValues = json.decode(jsonContent) as Map<String, dynamic>; // ignore: avoid_as
return localizations;
}
Expand Down Expand Up @@ -777,7 +777,7 @@ class LocalizationDelegate extends LocalizationsDelegate<Localization> {
static List<Locale> get supportedLocales {
if (localeFilter == null) return _supportedLocales;
return _supportedLocales.where((element) => localeFilter?.call(element.languageCode) ?? true).toList();
return _supportedLocales.where((element) => localeFilter?.call(element.toLanguageTag()) ?? true).toList();
}
LocalizationOverrides? localizationOverrides;
Expand All @@ -798,7 +798,7 @@ class LocalizationDelegate extends LocalizationsDelegate<Localization> {
}
@override
bool isSupported(Locale locale) => supportedLanguages.contains(locale.languageCode);
bool isSupported(Locale locale) => supportedLanguages.contains(locale.toLanguageTag());
@override
Future<Localization> load(Locale locale) async {
Expand Down Expand Up @@ -856,7 +856,7 @@ class LocalizationDelegate extends LocalizationsDelegate<Localization> {
static List<Locale> get supportedLocales {
if (localeFilter == null) return _supportedLocales;
return _supportedLocales.where((element) => localeFilter?.call(element.languageCode) ?? true).toList();
return _supportedLocales.where((element) => localeFilter?.call(element.toLanguageTag()) ?? true).toList();
}
LocalizationOverrides? localizationOverrides;
Expand All @@ -877,7 +877,7 @@ class LocalizationDelegate extends LocalizationsDelegate<Localization> {
}
@override
bool isSupported(Locale locale) => supportedLanguages.contains(locale.languageCode);
bool isSupported(Locale locale) => supportedLanguages.contains(locale.toLanguageTag());
@override
Future<Localization> load(Locale locale) async {
Expand Down

0 comments on commit 8918207

Please sign in to comment.