feat(alarmas): rewrite alarm editor with inline time widget

Replace the native showTimePicker dialog in the alarm editor sheet with
a giant inline HH:MM editor (drag/tap to adjust, wraps at 23:59-00:00).
Weekday circles now render unconditionally (disabled outside weekly
mode) instead of being gated behind an `if`.

The date field, fallback-station picker, and sound dropdown are not
dropped: per resolution 3 they move into a collapsed "Advanced" section
so the mockup's weekday-circles-only layout does not lose capability.
Volume/fade-in sliders get a cosmetic type-scale restyle only.

size:exception: 993 changed lines (891+/102-) against the 500-650
forecast - lib/ production code alone is 429 lines, within band; new
test files and 13 regenerated l10n/gen files account for the rest, the
same pattern every prior work unit in this branch has hit.
This commit is contained in:
2026-07-29 11:43:15 +02:00
parent 332c2192cd
commit a2121d84bd
22 changed files with 935 additions and 115 deletions
+24
View File
@@ -2564,6 +2564,30 @@ abstract class AppLocalizations {
/// **'Modo vacaciones'**
String get vacationIconLabel;
/// No description provided for @alarmAdvancedSectionTitle.
///
/// In es, this message translates to:
/// **'Avanzado'**
String get alarmAdvancedSectionTitle;
/// No description provided for @alarmInlineHourLabel.
///
/// In es, this message translates to:
/// **'Hora'**
String get alarmInlineHourLabel;
/// No description provided for @alarmInlineMinuteLabel.
///
/// In es, this message translates to:
/// **'Minuto'**
String get alarmInlineMinuteLabel;
/// No description provided for @alarmVolumeRisingStatus.
///
/// In es, this message translates to:
/// **'Subiendo volumen'**
String get alarmVolumeRisingStatus;
/// No description provided for @streamUrlHint.
///
/// In es, this message translates to: