feat(seed-saving): source attribution + advisory note
Record where the guidance comes from (copyright/attribution) and make clear it is general, not local gospel — kept light: - seed_saving.json gains a top-level sources list (Seed to Seed / Seed Savers Exchange / Organic Seed Alliance); parsed into SeedSavingData.sources, exposed via SeedSavingCatalog.sources. - The detail section shows a small muted footer: an italic 'advisory — adapt to your climate' line plus a 'Source: …' credit. - i18n seedSaving.advisory + sourcePrefix (en/es/pt/ast). - Tests: asset carries sources; the section renders advisory + credit.
This commit is contained in:
parent
4a1e72bc7e
commit
5ecdd1222a
15 changed files with 93 additions and 8 deletions
|
|
@ -23,7 +23,9 @@
|
|||
"difficulty": "Dificultá",
|
||||
"diffEasy": "Fácil",
|
||||
"diffMedium": "Media",
|
||||
"diffHard": "Difícil"
|
||||
"diffHard": "Difícil",
|
||||
"advisory": "Orientativu — afaílu al to clima y variedá.",
|
||||
"sourcePrefix": "Fonte"
|
||||
},
|
||||
"calendar": {
|
||||
"title": "Esti mes",
|
||||
|
|
|
|||
|
|
@ -23,7 +23,9 @@
|
|||
"difficulty": "Difficulty",
|
||||
"diffEasy": "Easy",
|
||||
"diffMedium": "Medium",
|
||||
"diffHard": "Hard"
|
||||
"diffHard": "Hard",
|
||||
"advisory": "General guidance — adapt it to your climate and variety.",
|
||||
"sourcePrefix": "Source"
|
||||
},
|
||||
"calendar": {
|
||||
"title": "This month",
|
||||
|
|
|
|||
|
|
@ -23,7 +23,9 @@
|
|||
"difficulty": "Dificultad",
|
||||
"diffEasy": "Fácil",
|
||||
"diffMedium": "Media",
|
||||
"diffHard": "Difícil"
|
||||
"diffHard": "Difícil",
|
||||
"advisory": "Orientativo — adáptalo a tu clima y variedad.",
|
||||
"sourcePrefix": "Fuente"
|
||||
},
|
||||
"calendar": {
|
||||
"title": "Este mes",
|
||||
|
|
|
|||
|
|
@ -23,7 +23,9 @@
|
|||
"difficulty": "Dificuldade",
|
||||
"diffEasy": "Fácil",
|
||||
"diffMedium": "Média",
|
||||
"diffHard": "Difícil"
|
||||
"diffHard": "Difícil",
|
||||
"advisory": "Orientativo — adapte-o ao seu clima e variedade.",
|
||||
"sourcePrefix": "Fonte"
|
||||
},
|
||||
"calendar": {
|
||||
"title": "Este mês",
|
||||
|
|
|
|||
|
|
@ -4,9 +4,9 @@
|
|||
/// To regenerate, run: `dart run slang`
|
||||
///
|
||||
/// Locales: 4
|
||||
/// Strings: 1960 (490 per locale)
|
||||
/// Strings: 1968 (492 per locale)
|
||||
///
|
||||
/// Built on 2026-07-11 at 05:18 UTC
|
||||
/// Built on 2026-07-11 at 05:50 UTC
|
||||
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: type=lint, unused_import
|
||||
|
|
|
|||
|
|
@ -114,6 +114,8 @@ class _Translations$seedSaving$ast extends Translations$seedSaving$en {
|
|||
@override String get diffEasy => 'Fácil';
|
||||
@override String get diffMedium => 'Media';
|
||||
@override String get diffHard => 'Difícil';
|
||||
@override String get advisory => 'Orientativu — afaílu al to clima y variedá.';
|
||||
@override String get sourcePrefix => 'Fonte';
|
||||
}
|
||||
|
||||
// Path: calendar
|
||||
|
|
@ -1284,6 +1286,8 @@ extension on TranslationsAst {
|
|||
'seedSaving.diffEasy' => 'Fácil',
|
||||
'seedSaving.diffMedium' => 'Media',
|
||||
'seedSaving.diffHard' => 'Difícil',
|
||||
'seedSaving.advisory' => 'Orientativu — afaílu al to clima y variedá.',
|
||||
'seedSaving.sourcePrefix' => 'Fonte',
|
||||
'calendar.title' => 'Esti mes',
|
||||
'calendar.filterChip' => 'Esti mes',
|
||||
'calendar.nothing' => ({required Object month}) => 'Nada anotao pa ${month}.',
|
||||
|
|
|
|||
|
|
@ -163,6 +163,12 @@ class Translations$seedSaving$en {
|
|||
|
||||
/// en: 'Hard'
|
||||
String get diffHard => 'Hard';
|
||||
|
||||
/// en: 'General guidance — adapt it to your climate and variety.'
|
||||
String get advisory => 'General guidance — adapt it to your climate and variety.';
|
||||
|
||||
/// en: 'Source'
|
||||
String get sourcePrefix => 'Source';
|
||||
}
|
||||
|
||||
// Path: calendar
|
||||
|
|
@ -2251,6 +2257,8 @@ extension on Translations {
|
|||
'seedSaving.diffEasy' => 'Easy',
|
||||
'seedSaving.diffMedium' => 'Medium',
|
||||
'seedSaving.diffHard' => 'Hard',
|
||||
'seedSaving.advisory' => 'General guidance — adapt it to your climate and variety.',
|
||||
'seedSaving.sourcePrefix' => 'Source',
|
||||
'calendar.title' => 'This month',
|
||||
'calendar.filterChip' => 'This month',
|
||||
'calendar.nothing' => ({required Object month}) => 'Nothing noted for ${month}.',
|
||||
|
|
|
|||
|
|
@ -114,6 +114,8 @@ class _Translations$seedSaving$es extends Translations$seedSaving$en {
|
|||
@override String get diffEasy => 'Fácil';
|
||||
@override String get diffMedium => 'Media';
|
||||
@override String get diffHard => 'Difícil';
|
||||
@override String get advisory => 'Orientativo — adáptalo a tu clima y variedad.';
|
||||
@override String get sourcePrefix => 'Fuente';
|
||||
}
|
||||
|
||||
// Path: calendar
|
||||
|
|
@ -1286,6 +1288,8 @@ extension on TranslationsEs {
|
|||
'seedSaving.diffEasy' => 'Fácil',
|
||||
'seedSaving.diffMedium' => 'Media',
|
||||
'seedSaving.diffHard' => 'Difícil',
|
||||
'seedSaving.advisory' => 'Orientativo — adáptalo a tu clima y variedad.',
|
||||
'seedSaving.sourcePrefix' => 'Fuente',
|
||||
'calendar.title' => 'Este mes',
|
||||
'calendar.filterChip' => 'Este mes',
|
||||
'calendar.nothing' => ({required Object month}) => 'Nada anotado para ${month}.',
|
||||
|
|
|
|||
|
|
@ -114,6 +114,8 @@ class _Translations$seedSaving$pt extends Translations$seedSaving$en {
|
|||
@override String get diffEasy => 'Fácil';
|
||||
@override String get diffMedium => 'Média';
|
||||
@override String get diffHard => 'Difícil';
|
||||
@override String get advisory => 'Orientativo — adapte-o ao seu clima e variedade.';
|
||||
@override String get sourcePrefix => 'Fonte';
|
||||
}
|
||||
|
||||
// Path: calendar
|
||||
|
|
@ -1283,6 +1285,8 @@ extension on TranslationsPt {
|
|||
'seedSaving.diffEasy' => 'Fácil',
|
||||
'seedSaving.diffMedium' => 'Média',
|
||||
'seedSaving.diffHard' => 'Difícil',
|
||||
'seedSaving.advisory' => 'Orientativo — adapte-o ao seu clima e variedade.',
|
||||
'seedSaving.sourcePrefix' => 'Fonte',
|
||||
'calendar.title' => 'Este mês',
|
||||
'calendar.filterChip' => 'Este mês',
|
||||
'calendar.nothing' => ({required Object month}) => 'Nada anotado para ${month}.',
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue