UNPKG

hdd-space

Version:

This module provides getting information about free space and size of hdds

49 lines 3.88 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var utils_1 = require("./utils"); exports.multiplierPowers = { bit: -3, byte: 0, kb: 10, mb: 20, gb: 30, tb: 40, pb: 50, eb: 60, zb: 70, yb: 80 }; var maxScale = 80; var invertedMultipliers = utils_1.invertHashTable(exports.multiplierPowers); function capitalizeMultiplier(multiplier) { switch (multiplier) { case 'bit': return 'Bits'; case 'byte': return 'Bytes'; default: return multiplier.toUpperCase(); } } function scaleNumber(n, power) { return n / Math.pow(2, power); } function formatSize(format, size) { if (typeof format === 'function') { return format(size); } var staticFormat = format.toLowerCase(); if (staticFormat in exports.multiplierPowers) { var power = exports.multiplierPowers[staticFormat]; return scaleNumber(size, power) + ' ' + capitalizeMultiplier(staticFormat); } if (staticFormat === 'auto') { var scale = Math.floor(Math.log(size) / Math.log(1024)) * 10; if (!(scale in invertedMultipliers)) { scale = scale > maxScale ? maxScale : 0; } var unit = invertedMultipliers[scale]; return scaleNumber(size, scale).toFixed(2) + ' ' + capitalizeMultiplier(unit); } console.error("Bad format [" + staticFormat + "]"); return formatSize('byte', size); } exports.formatSize = formatSize; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2Zvcm1hdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLGlDQUF3QztBQUUzQixRQUFBLGdCQUFnQixHQUFHO0lBQy9CLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDUCxJQUFJLEVBQUUsQ0FBQztJQUNQLEVBQUUsRUFBRSxFQUFFO0lBQ04sRUFBRSxFQUFFLEVBQUU7SUFDTixFQUFFLEVBQUUsRUFBRTtJQUNOLEVBQUUsRUFBRSxFQUFFO0lBQ04sRUFBRSxFQUFFLEVBQUU7SUFDTixFQUFFLEVBQUUsRUFBRTtJQUNOLEVBQUUsRUFBRSxFQUFFO0lBQ04sRUFBRSxFQUFFLEVBQUU7Q0FDTixDQUFDO0FBRUYsSUFBTSxRQUFRLEdBQUcsRUFBRSxDQUFDO0FBRXBCLElBQU0sbUJBQW1CLEdBQUcsdUJBQWUsQ0FBQyx3QkFBZ0IsQ0FBbUQsQ0FBQztBQUVoSCw4QkFBOEIsVUFBa0I7SUFDL0MsTUFBTSxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUNwQixLQUFLLEtBQUssRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQzFCLEtBQUssTUFBTSxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDNUIsU0FBUyxNQUFNLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzFDLENBQUM7QUFDRixDQUFDO0FBUUQscUJBQXFCLENBQVMsRUFBRSxLQUFhO0lBQzVDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsU0FBQSxDQUFDLEVBQUksS0FBSyxDQUFBLENBQUM7QUFDdkIsQ0FBQztBQUVELG9CQUEyQixNQUFjLEVBQUUsSUFBWTtJQUN0RCxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQ2xDLE1BQU0sQ0FBRSxNQUF3QixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFDRCxJQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsV0FBVyxFQUFrQixDQUFDO0lBQzFELEVBQUUsQ0FBQyxDQUFDLFlBQVksSUFBSSx3QkFBZ0IsQ0FBQyxDQUFDLENBQUM7UUFDdEMsSUFBTSxLQUFLLEdBQUcsd0JBQWdCLENBQUMsWUFBNkMsQ0FBQyxDQUFDO1FBQzlFLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxHQUFHLEdBQUcsR0FBRyxvQkFBb0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBQ0QsRUFBRSxDQUFDLENBQUMsWUFBWSxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDN0IsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDN0QsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNyQyxLQUFLLEdBQUcsS0FBSyxHQUFHLFFBQVEsR0FBRyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ3pDLENBQUM7UUFDRCxJQUFNLElBQUksR0FBRyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN4QyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxHQUFHLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLGlCQUFlLFlBQVksTUFBRyxDQUFDLENBQUM7SUFDOUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDakMsQ0FBQztBQW5CRCxnQ0FtQkMifQ==