UNPKG

epicwar

Version:
28 lines (27 loc) 740 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.parseSize = void 0; const KB_TO_BYTE = 1024; const MB_TO_BYTE = KB_TO_BYTE * KB_TO_BYTE; const GB_TO_BYTE = MB_TO_BYTE * KB_TO_BYTE; function parseSize(input) { const data = /(\d+(\.\d{0,2})?|\.?\d{1,2})\s?(\w+)/gm.exec(input); if (!data) { return +input; } let response = +data[1]; const grouper = data[3].toLowerCase(); switch (grouper) { case 'kb': response *= KB_TO_BYTE; break; case 'mb': response *= MB_TO_BYTE; break; case 'gb': response *= GB_TO_BYTE; break; } return response; } exports.parseSize = parseSize;