diff --git a/apps/edr-freight-web/backoffice/src/pages/fleet/format.ts b/apps/edr-freight-web/backoffice/src/pages/fleet/format.ts new file mode 100644 index 000000000..6193ca58c --- /dev/null +++ b/apps/edr-freight-web/backoffice/src/pages/fleet/format.ts @@ -0,0 +1,16 @@ +/** Shared formatting helpers for the fleet-management pages. */ + +/** Format a number as Ethiopian Birr, e.g. 12345.6 → "ETB 12,346". */ +export function formatETB(amount: number, fractionDigits = 0): string { + const value = Number.isFinite(amount) ? amount : 0; + return `ETB ${value.toLocaleString("en-US", { + minimumFractionDigits: fractionDigits, + maximumFractionDigits: fractionDigits, + })}`; +} + +/** Safe percentage of `part` over `total`, rounded, 0 when total is 0. */ +export function pct(part: number, total: number): number { + if (!total || !Number.isFinite(total) || !Number.isFinite(part)) return 0; + return Math.round((part / total) * 100); +}