forked from Nova-reward/Nova-Rewards
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathutils.ts
More file actions
28 lines (22 loc) · 805 Bytes
/
Copy pathutils.ts
File metadata and controls
28 lines (22 loc) · 805 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
export { formatTokenAmount } from '../../novaRewards/frontend/lib/formatting';
export function formatNumber(num: number, decimals: number = 2): string {
if (isNaN(num)) return '0';
if (num >= 1_000_000) {
return (num / 1_000_000).toFixed(decimals) + 'M';
}
if (num >= 1_000) {
return (num / 1_000).toFixed(decimals) + 'K';
}
return num.toLocaleString(undefined, {
minimumFractionDigits: 0,
maximumFractionDigits: decimals,
});
}
export function truncateAddress(address: string, start = 6, end = 4): string {
if (!address) return '';
if (address.length <= start + end) return address;
return `${address.slice(0, start)}...${address.slice(-end)}`;
}
export function sleep(ms: number): Promise<void> {
return new Promise(resolve => setTimeout(resolve, ms));
}