feat(02-04): create template picker bottom sheet with German localization

- Add TemplatePickerSheet StatefulWidget with checklist UI for task templates
- Add showTemplatePickerSheet helper for modal display with DraggableScrollableSheet
- Add 4 German localization keys: templatePickerTitle, Skip, Add, Selected count
- All templates unchecked by default, confirm button only enabled with selection

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-15 22:17:21 +01:00
parent 08bacecf8a
commit 903567e735
4 changed files with 246 additions and 1 deletions

View File

@@ -59,5 +59,14 @@
"taskDeleteConfirmAction": "L\u00f6schen",
"taskEmptyTitle": "Noch keine Aufgaben",
"taskEmptyMessage": "Erstelle die erste Aufgabe f\u00fcr diesen Raum.",
"taskEmptyAction": "Aufgabe erstellen"
"taskEmptyAction": "Aufgabe erstellen",
"templatePickerTitle": "Aufgaben aus Vorlagen hinzuf\u00fcgen?",
"templatePickerSkip": "\u00dcberspringen",
"templatePickerAdd": "Hinzuf\u00fcgen",
"templatePickerSelected": "{count} ausgew\u00e4hlt",
"@templatePickerSelected": {
"placeholders": {
"count": { "type": "int" }
}
}
}

View File

@@ -393,6 +393,30 @@ abstract class AppLocalizations {
/// In de, this message translates to:
/// **'Aufgabe erstellen'**
String get taskEmptyAction;
/// No description provided for @templatePickerTitle.
///
/// In de, this message translates to:
/// **'Aufgaben aus Vorlagen hinzuf\u00fcgen?'**
String get templatePickerTitle;
/// No description provided for @templatePickerSkip.
///
/// In de, this message translates to:
/// **'\u00dcberspringen'**
String get templatePickerSkip;
/// No description provided for @templatePickerAdd.
///
/// In de, this message translates to:
/// **'Hinzuf\u00fcgen'**
String get templatePickerAdd;
/// No description provided for @templatePickerSelected.
///
/// In de, this message translates to:
/// **'{count} ausgew\u00e4hlt'**
String templatePickerSelected(int count);
}
class _AppLocalizationsDelegate

View File

@@ -164,4 +164,18 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get taskEmptyAction => 'Aufgabe erstellen';
@override
String get templatePickerTitle => 'Aufgaben aus Vorlagen hinzuf\u00fcgen?';
@override
String get templatePickerSkip => '\u00dcberspringen';
@override
String get templatePickerAdd => 'Hinzuf\u00fcgen';
@override
String templatePickerSelected(int count) {
return '$count ausgew\u00e4hlt';
}
}