Security update to Drupal 8.4.6
[yaffs-website] / node_modules / pretty-bytes / index.js
1 'use strict';
2 var numberIsNan = require('number-is-nan');
3
4 module.exports = function (num) {
5         if (typeof num !== 'number' || numberIsNan(num)) {
6                 throw new TypeError('Expected a number, got ' + typeof num);
7         }
8
9         var exponent;
10         var unit;
11         var neg = num < 0;
12         var units = ['B', 'kB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
13
14         if (neg) {
15                 num = -num;
16         }
17
18         if (num < 1) {
19                 return (neg ? '-' : '') + num + ' B';
20         }
21
22         exponent = Math.min(Math.floor(Math.log(num) / Math.log(1000)), units.length - 1);
23         num = Number((num / Math.pow(1000, exponent)).toFixed(2));
24         unit = units[exponent];
25
26         return (neg ? '-' : '') + num + ' ' + unit;
27 };