diff options
| author | Arman Shah <[email protected]> | 2018-02-19 23:50:04 -0800 |
|---|---|---|
| committer | Arman Shah <[email protected]> | 2018-02-19 23:50:04 -0800 |
| commit | ae34dcfd3823a609ba7182f2d6eda593be876f7d (patch) | |
| tree | b9d7f2884c4999349418cbdc4f9ab46d113e0afd /node_modules/pretty-bytes/pretty-bytes.js | |
| parent | Initial commit (diff) | |
| download | launcher-ae34dcfd3823a609ba7182f2d6eda593be876f7d.tar.xz launcher-ae34dcfd3823a609ba7182f2d6eda593be876f7d.zip | |
add base files
Diffstat (limited to 'node_modules/pretty-bytes/pretty-bytes.js')
| -rw-r--r-- | node_modules/pretty-bytes/pretty-bytes.js | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/node_modules/pretty-bytes/pretty-bytes.js b/node_modules/pretty-bytes/pretty-bytes.js new file mode 100644 index 0000000..626c18a --- /dev/null +++ b/node_modules/pretty-bytes/pretty-bytes.js @@ -0,0 +1,46 @@ +/*! + pretty-bytes + Convert bytes to a human readable string: 1337 → 1.34 kB + https://github.com/sindresorhus/pretty-bytes + by Sindre Sorhus + MIT License +*/ +(function () { + 'use strict'; + + // Number.isNaN() polyfill + var isNaN = function (val) { + return val !== val; + }; + + var prettyBytes = function (num) { + if (typeof num !== 'number' || isNaN(num)) { + throw new TypeError('Expected a number'); + } + + var exponent; + var unit; + var neg = num < 0; + var units = ['B', 'kB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB']; + + if (neg) { + num = -num; + } + + if (num < 1) { + return (neg ? '-' : '') + num + ' B'; + } + + exponent = Math.min(Math.floor(Math.log(num) / Math.log(1000)), units.length - 1); + num = (num / Math.pow(1000, exponent)).toFixed(2) * 1; + unit = units[exponent]; + + return (neg ? '-' : '') + num + ' ' + unit; + }; + + if (typeof module !== 'undefined' && module.exports) { + module.exports = prettyBytes; + } else { + self.prettyBytes = prettyBytes; + } +})(); |