Files
Homarr/src/tools/client/math.ts

23 lines
648 B
TypeScript
Raw Normal View History

const ranges = [
{ divider: 1e18, suffix: 'E' },
{ divider: 1e15, suffix: 'P' },
{ divider: 1e12, suffix: 'T' },
{ divider: 1e9, suffix: 'G' },
{ divider: 1e6, suffix: 'M' },
{ divider: 1e3, suffix: 'k' },
];
export const formatNumber = (n: number, decimalPlaces: number) => {
// eslint-disable-next-line no-restricted-syntax
for (const range of ranges) {
2023-07-21 18:08:40 +09:00
if (n < range.divider) continue;
2023-07-21 18:08:40 +09:00
return (n / range.divider).toFixed(decimalPlaces) + range.suffix;
}
return n.toFixed(decimalPlaces);
};
export const formatPercentage = (n: number, decimalPlaces: number) => {
return `${(n * 100).toFixed(decimalPlaces)}%`;
};