const formatters = new Map(); const getFormatter = (format: Intl.DateTimeFormatOptions): Intl.DateTimeFormat => { const key = JSON.stringify(format); let formatter = formatters.get(key); if (!formatter) { formatter = new Intl.DateTimeFormat(undefined, format); formatters.set(key, formatter); } return formatter; }; const formatDate = ( originalDate: string | Date | undefined, format: Intl.DateTimeFormatOptions = { day: "2-digit", month: "2-digit", year: "2-digit", } ): string => { if (!originalDate) return ""; const date = typeof originalDate === "string" ? new Date(originalDate) : originalDate; const formatter = getFormatter(format); const formattedDate = formatter.format(date); if (typeof originalDate === "string" && formattedDate === "Invalid Date") return originalDate; return formattedDate; }; export default formatDate;