const UNITS = ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'] const parseTraffic = (num?: number) => { if (typeof num !== 'number') return ['NaN', ''] const exp = num < 1 ? 0 : Math.min(Math.floor(Math.log2(num) / 10), UNITS.length - 1) const dat = num / Math.pow(1024, exp) const ret = dat >= 1000 ? dat.toFixed(0) : dat.toPrecision(3) const unit = UNITS[exp] return [ret, unit] } export default parseTraffic