halkyon_app: data locations as precise as a country or a state
An operator's DATA_LOCATION and BACKUP_LOCATION may name a subdivision
(ISO 3166-2, US-CA, DE-BY) besides the EU or a country. The app adds
"(EU)" to a member country and the country to a subdivision ("Germany
(EU)", "California, United States", "Bavaria, Germany (EU)"), in
English and German, and shows the most specific flag there is: a
subdivision's own where the flag package has one, else its country's.
Subdivision names come from Unicode CLDR 48.2 (tool/subdivision_names.py),
bundled with their licence, which the app registers.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
e23cc77f7c
commit
96f2d14618
5 changed files with 616 additions and 49 deletions
|
|
@ -17,6 +17,8 @@
|
|||
"instanceBackupsIn": "Sicherungen: {place}",
|
||||
"instanceNoBackups": "Keine Sicherungen",
|
||||
"instanceEuropeanUnion": "Europäische Union",
|
||||
"instanceCountryInEu": "{country} (EU)",
|
||||
"instanceSubdivisionOf": "{subdivision}, {country}",
|
||||
"accountsTitle": "Konten",
|
||||
"accountAdd": "Konto hinzufügen",
|
||||
"accountAddSubtitle": "Wähle die Instanz für das Konto, das du hinzufügst.",
|
||||
|
|
|
|||
|
|
@ -70,6 +70,27 @@
|
|||
},
|
||||
"instanceNoBackups": "No backups",
|
||||
"instanceEuropeanUnion": "European Union",
|
||||
"instanceCountryInEu": "{country} (EU)",
|
||||
"@instanceCountryInEu": {
|
||||
"description": "A country of the European Union, where an instance keeps data: Germany (EU).",
|
||||
"placeholders": {
|
||||
"country": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"instanceSubdivisionOf": "{subdivision}, {country}",
|
||||
"@instanceSubdivisionOf": {
|
||||
"description": "A state or region with its country, where an instance keeps data: California, United States.",
|
||||
"placeholders": {
|
||||
"subdivision": {
|
||||
"type": "String"
|
||||
},
|
||||
"country": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"accountsTitle": "Accounts",
|
||||
"accountAdd": "Add account",
|
||||
"accountAddSubtitle": "Choose the instance for the account to add.",
|
||||
|
|
|
|||
|
|
@ -205,6 +205,18 @@ abstract class HalkyonAppLocalizations {
|
|||
/// **'European Union'**
|
||||
String get instanceEuropeanUnion;
|
||||
|
||||
/// A country of the European Union, where an instance keeps data: Germany (EU).
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{country} (EU)'**
|
||||
String instanceCountryInEu(String country);
|
||||
|
||||
/// A state or region with its country, where an instance keeps data: California, United States.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{subdivision}, {country}'**
|
||||
String instanceSubdivisionOf(String subdivision, String country);
|
||||
|
||||
/// No description provided for @accountsTitle.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
|
|
|
|||
|
|
@ -74,6 +74,16 @@ class HalkyonAppLocalizationsDe extends HalkyonAppLocalizations {
|
|||
@override
|
||||
String get instanceEuropeanUnion => 'Europäische Union';
|
||||
|
||||
@override
|
||||
String instanceCountryInEu(String country) {
|
||||
return '$country (EU)';
|
||||
}
|
||||
|
||||
@override
|
||||
String instanceSubdivisionOf(String subdivision, String country) {
|
||||
return '$subdivision, $country';
|
||||
}
|
||||
|
||||
@override
|
||||
String get accountsTitle => 'Konten';
|
||||
|
||||
|
|
|
|||
|
|
@ -74,6 +74,16 @@ class HalkyonAppLocalizationsEn extends HalkyonAppLocalizations {
|
|||
@override
|
||||
String get instanceEuropeanUnion => 'European Union';
|
||||
|
||||
@override
|
||||
String instanceCountryInEu(String country) {
|
||||
return '$country (EU)';
|
||||
}
|
||||
|
||||
@override
|
||||
String instanceSubdivisionOf(String subdivision, String country) {
|
||||
return '$subdivision, $country';
|
||||
}
|
||||
|
||||
@override
|
||||
String get accountsTitle => 'Accounts';
|
||||
|
||||
|
|
|
|||
Reference in a new issue