export const formatCurrency = (amount: number) => { return new Intl.NumberFormat('id-ID', { style: 'currency', currency: 'IDR', minimumFractionDigits: 0 }).format(amount) } export const formatShortCurrency = (num: number): string => { if (num >= 1_000_000) { return (num / 1_000_000).toFixed(2) + 'M' } else if (num >= 1_000) { return (num / 1_000).toFixed(2) + 'k' } return num.toString() } export const formatDate = (dateString: any) => { return new Date(dateString).toLocaleDateString('id-ID', { day: 'numeric', month: 'short', year: 'numeric' }) } export const formatDateDDMMYYYY = (dateString: Date | string) => { const date = new Date(dateString) const day = String(date.getDate()).padStart(2, '0') const month = String(date.getMonth() + 1).padStart(2, '0') const year = date.getFullYear() return `${day}-${month}-${year}` } export const formatDatetime = (dateString: string | number | Date) => { const date = new Date(dateString) const day = String(date.getDate()).padStart(2, '0') const month = date.toLocaleString('id-ID', { month: 'long' }) // Aug const year = date.getFullYear() const hours = String(date.getHours()).padStart(2, '0') const minutes = String(date.getMinutes()).padStart(2, '0') return `${day} ${month} ${year} ${hours}:${minutes}` }