UNPKG

@fle-ui/plus-im-record

Version:
56 lines (55 loc) 1.59 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.parseFileSize = exports.debounce = exports.addUrlSearch = void 0; var debounce = exports.debounce = function debounce(fn, delay) { var timeoutId; return function () { var _this = this; for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } clearTimeout(timeoutId); timeoutId = setTimeout(function () { // @ts-ignore fn.apply(_this, args); }, delay); }; }; /** * 格式化文件大小 * @param size 文件大小(字节) * @returns 格式化后的文件大小字符串 */ var parseFileSize = exports.parseFileSize = function parseFileSize(size) { var level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0; var fileSizeMap = { 0: 'B', 1: 'KB', 2: 'MB', 3: 'GB', 4: 'TB' }; var handler = function handler(size, level) { if (level >= Object.keys(fileSizeMap).length) { return 'the file is too big'; } if (size < 1024) { return "".concat(size).concat(fileSizeMap[level]); } return handler(Math.round(size / 1024), level + 1); }; return handler(size, level); }; /** * 给URL添加查询参数 * @param url 原始URL * @param search 要添加的查询字符串 * @returns 添加参数后的URL */ var addUrlSearch = exports.addUrlSearch = function addUrlSearch(url, search) { var urlObj = new URL(url); urlObj.search += (urlObj.search.startsWith('?') ? '&' : '?') + search; return urlObj.href; };