46 lines
1.3 KiB
TypeScript
46 lines
1.3 KiB
TypeScript
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}`
|
|
}
|