Version 1
[yaffs-website] / node_modules / pretty-bytes / index.js
diff --git a/node_modules/pretty-bytes/index.js b/node_modules/pretty-bytes/index.js
new file mode 100644 (file)
index 0000000..92ab613
--- /dev/null
@@ -0,0 +1,27 @@
+'use strict';
+var numberIsNan = require('number-is-nan');
+
+module.exports = function (num) {
+       if (typeof num !== 'number' || numberIsNan(num)) {
+               throw new TypeError('Expected a number, got ' + typeof num);
+       }
+
+       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 = Number((num / Math.pow(1000, exponent)).toFixed(2));
+       unit = units[exponent];
+
+       return (neg ? '-' : '') + num + ' ' + unit;
+};