formatToken method
Resolves a single format token into its string value for the
given moment.
This powers the format method. You generally won't call it directly, but it's public so you can extend or override token behaviour.
Implementation
String? formatToken(Moment moment, String token) {
switch (token) {
case ddd:
return weekDayNames[moment.weekday]!.substring(0, 3);
case dddd:
return weekDayNames[moment.weekday];
case D:
return moment.date.toString();
case Do:
return '${moment.date}${_getOrdinal(moment.date!)}';
case DD:
return moment.date.toString().padLeft(2, '0');
case M:
return moment.month.toString();
case Mo:
return '${moment.month}${_getOrdinal(moment.month)}';
case MM:
return moment.month.toString().padLeft(2, '0');
case MMM:
return monthNames[moment.month]!.substring(0, 3);
case mmmm:
return monthNames[moment.month];
case yy:
return moment.year.toString().substring(2);
case yyyy:
return moment.year.toString();
case h:
int hour12 = moment.hour! % 12;
return hour12 == 0 ? '12' : hour12.toString();
case hh:
int hour12 = moment.hour! % 12;
return (hour12 == 0 ? 12 : hour12).toString().padLeft(2, '0');
case H:
return moment.hour.toString();
case HH:
return moment.hour.toString().padLeft(2, '0');
case m:
return moment.minute.toString();
case mm:
return moment.minute.toString().padLeft(2, '0');
case s:
return moment.second.toString();
case ss:
return moment.second.toString().padLeft(2, '0');
case A:
return moment.clockPhase;
case a:
return moment.clockPhase.toLowerCase();
case t:
return '${moment.hour}:${moment.minute}:${moment.second}';
case dateNumeric:
return '${moment.date.toString().padLeft(2, '0')}/${moment.month.toString().padLeft(2, '0')}/$year';
default:
return token;
}
}