Underground-Digital/Workflow-Engine
0
1/*2* Formats a number with comma separators.3 formatNumber(1234567) will return '1,234,567'4 formatNumber(1234567.89) will return '1,234,567.89'5*/6export const formatNumber = (num: number | string) => {7 if (!num)8 return num9 const parts = num.toString().split('.')10 parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ',')11 return parts.join('.')12}13 14export const formatFileSize = (num: number) => {15 if (!num)16 return num17 const units = ['', 'K', 'M', 'G', 'T', 'P']18 let index = 019 while (num >= 1024 && index < units.length) {20 num = num / 102421 index++22 }23 return `${num.toFixed(2)}${units[index]}B`24}25 26export const formatTime = (num: number) => {27 if (!num)28 return num29 const units = ['sec', 'min', 'h']30 let index = 031 while (num >= 60 && index < units.length) {32 num = num / 6033 index++34 }35 return `${num.toFixed(2)} ${units[index]}`36}37 