Item 21 / audit 9b.4-9b.5 (t4:451-462, 469-479): the active vacation range showed a LinearProgressIndicator the prototype never draws. Replace it with the screen's real signature element -- a start/end date pair (day+month, weekday, connector rule) -- reused with a flat connector for the "programados"/"pasados" rows, replacing their plain ListTiles with proper cards.
25 lines
1.1 KiB
Dart
25 lines
1.1 KiB
Dart
import 'package:intl/intl.dart';
|
|
|
|
/// Locale-aware short date (S5-R4).
|
|
///
|
|
/// Replaces the old hardcoded `DD/MM/YYYY` pattern, which was wrong for
|
|
/// locales like en-US (M/D/Y) or ja (Y/M/D). [localeTag] accepts both
|
|
/// BCP-47 ('en-US') and ICU ('en_US') forms — intl canonicalizes them.
|
|
///
|
|
/// Date symbols for the active locale are loaded by
|
|
/// GlobalMaterialLocalizations, so any widget below MaterialApp can call
|
|
/// this safely.
|
|
String fechaCortaLocalizada(String localeTag, DateTime fecha) =>
|
|
DateFormat.yMd(localeTag).format(fecha);
|
|
|
|
/// Day + abbreviated month, locale-aware (e.g. "28 jul" for `es`, "Jul 28"
|
|
/// for `en`) — item 21 / audit 9b.4 (t4:459), the big digit half of the
|
|
/// vacation screen's date-pair.
|
|
String diaMesLocalizado(String localeTag, DateTime fecha) =>
|
|
DateFormat.MMMd(localeTag).format(fecha);
|
|
|
|
/// Full weekday name, locale-aware (e.g. "lunes"/"Monday") — item 21 /
|
|
/// audit 9b.4 (t4:459), the small caption under the day-month.
|
|
String nombreDiaSemanaLocalizado(String localeTag, DateTime fecha) =>
|
|
DateFormat.EEEE(localeTag).format(fecha);
|