@reliverse/rematch
Version:
@reliverse/rematch is a high-performance minimal glob matcher, with micromatch-level power, zepto-level size, and reliverse-grade dx.
24 lines (23 loc) • 747 B
JavaScript
import pico from "./rematch.js";
function rematchFn(pattern, inputOrOptions, maybeOptions) {
const options = typeof inputOrOptions === "object" ? inputOrOptions : maybeOptions || {};
const input = typeof inputOrOptions === "string" ? inputOrOptions : void 0;
if (options.windows === null || options.windows === void 0) {
options.windows = process.platform === "win32";
}
try {
const matcher = pico(pattern, options);
if (input === void 0) {
return (str) => !!matcher(str);
}
return !!matcher(input);
} catch (_error) {
if (input === void 0) {
return (str) => str === pattern;
}
return input === pattern;
}
}
const rematch = rematchFn;
Object.assign(rematch, pico);
export default rematch;