// Mirrors App\Support\Price::format() — keep both in sync. Greek formatting: // comma as the decimal separator, dot as the thousands separator, and no // decimals shown unless the amount actually needs them. // 19.00 -> "€19", 19.50 -> "€19,5", 19.55 -> "€19,55" export function formatPrice(amount, currency = '€') { if (amount === null || amount === undefined) return null const value = Math.round(parseFloat(amount) * 100) / 100 const cents = Math.round(value * 100) const decimals = cents % 100 === 0 ? 0 : (cents % 10 === 0 ? 1 : 2) const formatted = value.toLocaleString('el-GR', { minimumFractionDigits: decimals, maximumFractionDigits: decimals, }) return currency + formatted }