UNPKG

@intuitionrobotics/ts-common

Version:
34 lines 1.34 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.regexpCase = regexpCase; exports.createFilterPattern = createFilterPattern; exports.calculateJsonSizeMb = calculateJsonSizeMb; exports.__stringify = __stringify; const object_tools_1 = require("./object-tools"); function regexpCase(value, reg) { return value.match(new RegExp(reg)) || { input: undefined }; } function createFilterPattern(rawFilter) { let filter = rawFilter || ""; filter = filter.trim(); filter = filter.replace(/\s+/, " "); filter = filter.replace(new RegExp("(.)", "g"), ".*?$1"); filter.length === 0 ? filter = ".*?" : filter += ".*"; return filter; } function calculateJsonSizeMb(data) { const number = JSON.stringify(data).length / 1024 / 1024; return Math.round(number * 100) / 100; } function __stringify(obj, pretty) { if (Array.isArray(pretty) && typeof obj === "object") { return `${(0, object_tools_1._keys)(obj).reduce((carry, key, idx) => { // @ts-ignore return carry + ` ${String(key)}: ${__stringify(obj[key], pretty.includes(key))}${idx !== (0, object_tools_1._keys)(obj).length - 1 && ',\n'}`; }, `{\n`)}\n}`; } if (pretty) return JSON.stringify(obj, null, 2); return JSON.stringify(obj); } //# sourceMappingURL=tools.js.map