21 lines
572 B
TypeScript
21 lines
572 B
TypeScript
/**
|
|
* Formatte une date en respectant les conventions françaises (jj/mm/aaaa).
|
|
* Retourne "—" si la valeur est invalide ou absente.
|
|
*/
|
|
export const formatFrenchDate = (value: Date | string | number | null | undefined): string => {
|
|
if (value === null || value === undefined || value === '') {
|
|
return '—'
|
|
}
|
|
|
|
const date = value instanceof Date ? value : new Date(value)
|
|
if (Number.isNaN(date.getTime())) {
|
|
return '—'
|
|
}
|
|
|
|
return new Intl.DateTimeFormat('fr-FR', {
|
|
day: '2-digit',
|
|
month: '2-digit',
|
|
year: 'numeric',
|
|
}).format(date)
|
|
}
|