mihawk
Version:
A tiny & simple mock server tool, support json,js,cjs,ts(typescript).
49 lines (48 loc) • 1.84 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.getByteSize = exports.delAddrProtocol = exports.formatPatterns = exports.isMatchPatterns = exports.shallowEqual = exports.fuzzyIncludes = void 0;
const anymatch_1 = __importDefault(require("anymatch"));
function fuzzyIncludes(list, target) {
if (list.includes(target)) {
return true;
}
return list.some(it => it.includes(target));
}
exports.fuzzyIncludes = fuzzyIncludes;
function shallowEqual(str1, str2) {
if (str1 === str2) {
return true;
}
else {
const s1 = str1.trim();
const s2 = str2.trim();
return s1 === s2 || s1.toLowerCase() === s2.toLowerCase();
}
}
exports.shallowEqual = shallowEqual;
function isMatchPatterns(target, patterns) {
if (typeof patterns === 'string') {
patterns = [patterns];
}
patterns = formatPatterns(patterns);
if (!(patterns === null || patterns === void 0 ? void 0 : patterns.length)) {
return false;
}
return (0, anymatch_1.default)(patterns, target);
}
exports.isMatchPatterns = isMatchPatterns;
function formatPatterns(filters) {
return filters && Array.isArray(filters) ? filters.filter(flt => !!flt).map(flt => (typeof flt !== 'string' ? String(flt) : flt)) : [];
}
exports.formatPatterns = formatPatterns;
function delAddrProtocol(address) {
return ((address === null || address === void 0 ? void 0 : address.replace(/^(https?:\/\/)/, '').replace(/^(file:\/\/)/, '').replace(/\/+$/, '')) || '');
}
exports.delAddrProtocol = delAddrProtocol;
function getByteSize(content) {
return Buffer.byteLength(content || '', 'utf8');
}
exports.getByteSize = getByteSize;