Files
pluriwave/lib/l10n/formato_fechas.dart
T
FreeTLab 2b28c4daed fix(vacaciones): replace the progress bar with the prototype's date pair
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.
2026-07-30 10:25:07 +02:00

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);