@zubridge/electron
Version:
A streamlined state management library for Electron applications using Zustand.
1,505 lines (1,484 loc) • 72.2 kB
JavaScript
// Renderer-safe build with polyfilled Node.js modules
import { a as __commonJS, i as notImplementedClass, n as notImplemented, o as __export, r as notImplementedAsync, s as __toESM, t as util_default } from "./util-ChrZB-qk.js";
//#region ../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/types/tokens.js
var require_tokens = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/types/tokens.js": ((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
}) });
//#endregion
//#region ../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/types/types.js
var require_types$1 = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/types/types.js": ((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.types = void 0;
(function(types$1) {
types$1[types$1["ROOT"] = 0] = "ROOT";
types$1[types$1["GROUP"] = 1] = "GROUP";
types$1[types$1["POSITION"] = 2] = "POSITION";
types$1[types$1["SET"] = 3] = "SET";
types$1[types$1["RANGE"] = 4] = "RANGE";
types$1[types$1["REPETITION"] = 5] = "REPETITION";
types$1[types$1["REFERENCE"] = 6] = "REFERENCE";
types$1[types$1["CHAR"] = 7] = "CHAR";
})(exports.types || (exports.types = {}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/types/set-lookup.js
var require_set_lookup = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/types/set-lookup.js": ((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
}) });
//#endregion
//#region ../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/types/index.js
var require_types = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/types/index.js": ((exports) => {
var __createBinding$5 = exports && exports.__createBinding || (Object.create ? (function(o, m, k, k2) {
if (k2 === void 0) k2 = k;
Object.defineProperty(o, k2, {
enumerable: true,
get: function() {
return m[k];
}
});
}) : (function(o, m, k, k2) {
if (k2 === void 0) k2 = k;
o[k2] = m[k];
}));
var __exportStar$1 = exports && exports.__exportStar || function(m, exports$1) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports$1, p)) __createBinding$5(exports$1, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
__exportStar$1(require_tokens(), exports);
__exportStar$1(require_types$1(), exports);
__exportStar$1(require_set_lookup(), exports);
}) });
//#endregion
//#region ../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/sets.js
var require_sets = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/sets.js": ((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.anyChar = exports.notWhitespace = exports.whitespace = exports.notInts = exports.ints = exports.notWords = exports.words = void 0;
const types_1$6 = require_types();
const INTS = () => [{
type: types_1$6.types.RANGE,
from: 48,
to: 57
}];
const WORDS = () => [
{
type: types_1$6.types.CHAR,
value: 95
},
{
type: types_1$6.types.RANGE,
from: 97,
to: 122
},
{
type: types_1$6.types.RANGE,
from: 65,
to: 90
},
{
type: types_1$6.types.RANGE,
from: 48,
to: 57
}
];
const WHITESPACE = () => [
{
type: types_1$6.types.CHAR,
value: 9
},
{
type: types_1$6.types.CHAR,
value: 10
},
{
type: types_1$6.types.CHAR,
value: 11
},
{
type: types_1$6.types.CHAR,
value: 12
},
{
type: types_1$6.types.CHAR,
value: 13
},
{
type: types_1$6.types.CHAR,
value: 32
},
{
type: types_1$6.types.CHAR,
value: 160
},
{
type: types_1$6.types.CHAR,
value: 5760
},
{
type: types_1$6.types.RANGE,
from: 8192,
to: 8202
},
{
type: types_1$6.types.CHAR,
value: 8232
},
{
type: types_1$6.types.CHAR,
value: 8233
},
{
type: types_1$6.types.CHAR,
value: 8239
},
{
type: types_1$6.types.CHAR,
value: 8287
},
{
type: types_1$6.types.CHAR,
value: 12288
},
{
type: types_1$6.types.CHAR,
value: 65279
}
];
const NOTANYCHAR = () => [
{
type: types_1$6.types.CHAR,
value: 10
},
{
type: types_1$6.types.CHAR,
value: 13
},
{
type: types_1$6.types.CHAR,
value: 8232
},
{
type: types_1$6.types.CHAR,
value: 8233
}
];
exports.words = () => ({
type: types_1$6.types.SET,
set: WORDS(),
not: false
});
exports.notWords = () => ({
type: types_1$6.types.SET,
set: WORDS(),
not: true
});
exports.ints = () => ({
type: types_1$6.types.SET,
set: INTS(),
not: false
});
exports.notInts = () => ({
type: types_1$6.types.SET,
set: INTS(),
not: true
});
exports.whitespace = () => ({
type: types_1$6.types.SET,
set: WHITESPACE(),
not: false
});
exports.notWhitespace = () => ({
type: types_1$6.types.SET,
set: WHITESPACE(),
not: true
});
exports.anyChar = () => ({
type: types_1$6.types.SET,
set: NOTANYCHAR(),
not: true
});
}) });
//#endregion
//#region ../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/util.js
var require_util = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/util.js": ((exports) => {
var __createBinding$4 = exports && exports.__createBinding || (Object.create ? (function(o, m, k, k2) {
if (k2 === void 0) k2 = k;
Object.defineProperty(o, k2, {
enumerable: true,
get: function() {
return m[k];
}
});
}) : (function(o, m, k, k2) {
if (k2 === void 0) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault$3 = exports && exports.__setModuleDefault || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", {
enumerable: true,
value: v
});
}) : function(o, v) {
o["default"] = v;
});
var __importStar$3 = exports && exports.__importStar || function(mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) {
for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding$4(result, mod, k);
}
__setModuleDefault$3(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.tokenizeClass = exports.strToChars = void 0;
const types_1$5 = require_types();
const sets$2 = __importStar$3(require_sets());
const CTRL = "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?";
/**
* Finds character representations in str and convert all to
* their respective characters.
*
* @param {string} str
* @returns {string}
*/
exports.strToChars = (str) => {
return str.replace(/(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|c([@A-Z[\\\]^?])|([0tnvfr]))/g, (s, b, lbs, a16, b16, dctrl, eslsh) => {
if (lbs) return s;
let code = b ? 8 : a16 ? parseInt(a16, 16) : b16 ? parseInt(b16, 16) : dctrl ? CTRL.indexOf(dctrl) : {
0: 0,
t: 9,
n: 10,
v: 11,
f: 12,
r: 13
}[eslsh];
let c = String.fromCharCode(code);
return /[[\]{}^$.|?*+()]/.test(c) ? `\\${c}` : c;
});
};
/**
* Turns class into tokens
* reads str until it encounters a ] not preceeded by a \
*
* @param {string} str
* @param {string} regexpStr
* @returns {Array.<Array.<Object>, number>}
*/
exports.tokenizeClass = (str, regexpStr) => {
var _a, _b, _c, _d, _e, _f, _g;
let tokens = [], rs, c;
const regexp = /\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(((?:\\)])|(((?:\\)?([^\]])))))|(\])|(?:\\)?([^])/g;
while ((rs = regexp.exec(str)) !== null) {
const p = (_g = (_f = (_e = (_d = (_c = (_b = (_a = rs[1] && sets$2.words()) !== null && _a !== void 0 ? _a : rs[2] && sets$2.ints()) !== null && _b !== void 0 ? _b : rs[3] && sets$2.whitespace()) !== null && _c !== void 0 ? _c : rs[4] && sets$2.notWords()) !== null && _d !== void 0 ? _d : rs[5] && sets$2.notInts()) !== null && _e !== void 0 ? _e : rs[6] && sets$2.notWhitespace()) !== null && _f !== void 0 ? _f : rs[7] && {
type: types_1$5.types.RANGE,
from: (rs[8] || rs[9]).charCodeAt(0),
to: (c = rs[10]).charCodeAt(c.length - 1)
}) !== null && _g !== void 0 ? _g : (c = rs[16]) && {
type: types_1$5.types.CHAR,
value: c.charCodeAt(0)
};
if (p) tokens.push(p);
else return [tokens, regexp.lastIndex];
}
throw new SyntaxError(`Invalid regular expression: /${regexpStr}/: Unterminated character class`);
};
}) });
//#endregion
//#region ../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/tokenizer.js
var require_tokenizer = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/tokenizer.js": ((exports) => {
var __createBinding$3 = exports && exports.__createBinding || (Object.create ? (function(o, m, k, k2) {
if (k2 === void 0) k2 = k;
Object.defineProperty(o, k2, {
enumerable: true,
get: function() {
return m[k];
}
});
}) : (function(o, m, k, k2) {
if (k2 === void 0) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault$2 = exports && exports.__setModuleDefault || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", {
enumerable: true,
value: v
});
}) : function(o, v) {
o["default"] = v;
});
var __importStar$2 = exports && exports.__importStar || function(mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) {
for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding$3(result, mod, k);
}
__setModuleDefault$2(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.tokenizer = void 0;
const util = __importStar$2(require_util());
const types_1$4 = require_types();
const sets$1 = __importStar$2(require_sets());
/**
* Valid opening characters for capture group names.
*/
const captureGroupFirstChar = /^[a-zA-Z_$]$/i;
/**
* Valid characters for capture group names.
*/
const captureGroupChars = /^[a-zA-Z0-9_$]$/i;
const digit = /\d/;
/**
* Tokenizes a regular expression (that is currently a string)
* @param {string} regexpStr String of regular expression to be tokenized
*
* @returns {Root}
*/
exports.tokenizer = (regexpStr) => {
let i = 0, c;
let start = {
type: types_1$4.types.ROOT,
stack: []
};
let lastGroup = start;
let last = start.stack;
let groupStack = [];
let referenceQueue = [];
let groupCount = 0;
const repeatErr = (col) => {
throw new SyntaxError(`Invalid regular expression: /${regexpStr}/: Nothing to repeat at column ${col - 1}`);
};
let str = util.strToChars(regexpStr);
while (i < str.length) switch (c = str[i++]) {
case "\\":
if (i === str.length) throw new SyntaxError(`Invalid regular expression: /${regexpStr}/: \\ at end of pattern`);
switch (c = str[i++]) {
case "b":
last.push({
type: types_1$4.types.POSITION,
value: "b"
});
break;
case "B":
last.push({
type: types_1$4.types.POSITION,
value: "B"
});
break;
case "w":
last.push(sets$1.words());
break;
case "W":
last.push(sets$1.notWords());
break;
case "d":
last.push(sets$1.ints());
break;
case "D":
last.push(sets$1.notInts());
break;
case "s":
last.push(sets$1.whitespace());
break;
case "S":
last.push(sets$1.notWhitespace());
break;
default: if (digit.test(c)) {
let digits = c;
while (i < str.length && digit.test(str[i])) digits += str[i++];
let value = parseInt(digits, 10);
const reference = {
type: types_1$4.types.REFERENCE,
value
};
last.push(reference);
referenceQueue.push({
reference,
stack: last,
index: last.length - 1
});
} else last.push({
type: types_1$4.types.CHAR,
value: c.charCodeAt(0)
});
}
break;
case "^":
last.push({
type: types_1$4.types.POSITION,
value: "^"
});
break;
case "$":
last.push({
type: types_1$4.types.POSITION,
value: "$"
});
break;
case "[": {
let not;
if (str[i] === "^") {
not = true;
i++;
} else not = false;
let classTokens = util.tokenizeClass(str.slice(i), regexpStr);
i += classTokens[1];
last.push({
type: types_1$4.types.SET,
set: classTokens[0],
not
});
break;
}
case ".":
last.push(sets$1.anyChar());
break;
case "(": {
let group = {
type: types_1$4.types.GROUP,
stack: [],
remember: true
};
if (str[i] === "?") {
c = str[i + 1];
i += 2;
if (c === "=") {
group.followedBy = true;
group.remember = false;
} else if (c === "!") {
group.notFollowedBy = true;
group.remember = false;
} else if (c === "<") {
let name = "";
if (captureGroupFirstChar.test(str[i])) {
name += str[i];
i++;
} else throw new SyntaxError(`Invalid regular expression: /${regexpStr}/: Invalid capture group name, character '${str[i]}' after '<' at column ${i + 1}`);
while (i < str.length && captureGroupChars.test(str[i])) {
name += str[i];
i++;
}
if (!name) throw new SyntaxError(`Invalid regular expression: /${regexpStr}/: Invalid capture group name, character '${str[i]}' after '<' at column ${i + 1}`);
if (str[i] !== ">") throw new SyntaxError(`Invalid regular expression: /${regexpStr}/: Unclosed capture group name, expected '>', found '${str[i]}' at column ${i + 1}`);
group.name = name;
i++;
} else if (c === ":") group.remember = false;
else throw new SyntaxError(`Invalid regular expression: /${regexpStr}/: Invalid group, character '${c}' after '?' at column ${i - 1}`);
} else groupCount += 1;
last.push(group);
groupStack.push(lastGroup);
lastGroup = group;
last = group.stack;
break;
}
case ")":
if (groupStack.length === 0) throw new SyntaxError(`Invalid regular expression: /${regexpStr}/: Unmatched ) at column ${i - 1}`);
lastGroup = groupStack.pop();
last = lastGroup.options ? lastGroup.options[lastGroup.options.length - 1] : lastGroup.stack;
break;
case "|": {
if (!lastGroup.options) {
lastGroup.options = [lastGroup.stack];
delete lastGroup.stack;
}
let stack = [];
lastGroup.options.push(stack);
last = stack;
break;
}
case "{": {
let rs = /^(\d+)(,(\d+)?)?\}/.exec(str.slice(i)), min, max;
if (rs !== null) {
if (last.length === 0) repeatErr(i);
min = parseInt(rs[1], 10);
max = rs[2] ? rs[3] ? parseInt(rs[3], 10) : Infinity : min;
i += rs[0].length;
last.push({
type: types_1$4.types.REPETITION,
min,
max,
value: last.pop()
});
} else last.push({
type: types_1$4.types.CHAR,
value: 123
});
break;
}
case "?":
if (last.length === 0) repeatErr(i);
last.push({
type: types_1$4.types.REPETITION,
min: 0,
max: 1,
value: last.pop()
});
break;
case "+":
if (last.length === 0) repeatErr(i);
last.push({
type: types_1$4.types.REPETITION,
min: 1,
max: Infinity,
value: last.pop()
});
break;
case "*":
if (last.length === 0) repeatErr(i);
last.push({
type: types_1$4.types.REPETITION,
min: 0,
max: Infinity,
value: last.pop()
});
break;
default: last.push({
type: types_1$4.types.CHAR,
value: c.charCodeAt(0)
});
}
if (groupStack.length !== 0) throw new SyntaxError(`Invalid regular expression: /${regexpStr}/: Unterminated group`);
updateReferences(referenceQueue, groupCount);
return start;
};
/**
* This is a side effecting function that changes references to chars
* if there are not enough capturing groups to reference
* See: https://github.com/fent/ret.js/pull/39#issuecomment-1006475703
* See: https://github.com/fent/ret.js/issues/38
* @param {(Reference | Char)[]} referenceQueue
* @param {number} groupCount
* @returns {void}
*/
function updateReferences(referenceQueue, groupCount) {
for (const elem of referenceQueue.reverse()) if (groupCount < elem.reference.value) {
elem.reference.type = types_1$4.types.CHAR;
const valueString = elem.reference.value.toString();
elem.reference.value = parseInt(valueString, 8);
if (!/^[0-7]+$/.test(valueString)) {
let i = 0;
while (valueString[i] !== "8" && valueString[i] !== "9") i += 1;
if (i === 0) {
elem.reference.value = valueString.charCodeAt(0);
i += 1;
} else elem.reference.value = parseInt(valueString.slice(0, i), 8);
if (valueString.length > i) {
const tail = elem.stack.splice(elem.index + 1);
for (const char of valueString.slice(i)) elem.stack.push({
type: types_1$4.types.CHAR,
value: char.charCodeAt(0)
});
elem.stack.push(...tail);
}
}
}
}
}) });
//#endregion
//#region ../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/sets-lookup.js
var require_sets_lookup = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/sets-lookup.js": ((exports) => {
var __createBinding$2 = exports && exports.__createBinding || (Object.create ? (function(o, m, k, k2) {
if (k2 === void 0) k2 = k;
Object.defineProperty(o, k2, {
enumerable: true,
get: function() {
return m[k];
}
});
}) : (function(o, m, k, k2) {
if (k2 === void 0) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault$1 = exports && exports.__setModuleDefault || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", {
enumerable: true,
value: v
});
}) : function(o, v) {
o["default"] = v;
});
var __importStar$1 = exports && exports.__importStar || function(mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) {
for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding$2(result, mod, k);
}
__setModuleDefault$1(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.NOTANYCHAR = exports.WHITESPACE = exports.WORDS = exports.INTS = void 0;
const Sets = __importStar$1(require_sets());
const types_1$3 = require_types();
function setToLookup(tokens) {
let lookup = {};
let len = 0;
for (const token of tokens) {
if (token.type === types_1$3.types.CHAR) lookup[token.value] = true;
if (token.type === types_1$3.types.RANGE) lookup[`${token.from}-${token.to}`] = true;
len += 1;
}
return {
lookup: () => Object.assign({}, lookup),
len
};
}
exports.INTS = setToLookup(Sets.ints().set);
exports.WORDS = setToLookup(Sets.words().set);
exports.WHITESPACE = setToLookup(Sets.whitespace().set);
exports.NOTANYCHAR = setToLookup(Sets.anyChar().set);
}) });
//#endregion
//#region ../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/write-set-tokens.js
var require_write_set_tokens = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/write-set-tokens.js": ((exports) => {
var __createBinding$1 = exports && exports.__createBinding || (Object.create ? (function(o, m, k, k2) {
if (k2 === void 0) k2 = k;
Object.defineProperty(o, k2, {
enumerable: true,
get: function() {
return m[k];
}
});
}) : (function(o, m, k, k2) {
if (k2 === void 0) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = exports && exports.__setModuleDefault || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", {
enumerable: true,
value: v
});
}) : function(o, v) {
o["default"] = v;
});
var __importStar = exports && exports.__importStar || function(mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) {
for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding$1(result, mod, k);
}
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.writeSetTokens = exports.setChar = void 0;
const types_1$2 = require_types();
const sets = __importStar(require_sets_lookup());
/**
* Takes character code and returns character to be displayed in a set
* @param {number} charCode Character code of set element
* @returns {string} The string for the sets character
*/
function setChar(charCode) {
return charCode === 94 ? "\\^" : charCode === 92 ? "\\\\" : charCode === 93 ? "\\]" : charCode === 45 ? "\\-" : String.fromCharCode(charCode);
}
exports.setChar = setChar;
/**
* Test if a character set matches a 'set-lookup'
* @param {SetTokens} set The set to be tested
* @param {SetLookup} param The predefined 'set-lookup' & the number of elements in the lookup
* @returns {boolean} True if the character set corresponds to the 'set-lookup'
*/
function isSameSet(set, { lookup, len }) {
if (len !== set.length) return false;
const map = lookup();
for (const elem of set) {
if (elem.type === types_1$2.types.SET) return false;
const key = elem.type === types_1$2.types.CHAR ? elem.value : `${elem.from}-${elem.to}`;
if (map[key]) map[key] = false;
else return false;
}
return true;
}
/**
* Writes the tokens for a set
* @param {Set} set The set to display
* @param {boolean} isNested Whether the token is nested inside another set token
* @returns {string} The tokens for the set
*/
function writeSetTokens(set, isNested = false) {
if (isSameSet(set.set, sets.INTS)) return set.not ? "\\D" : "\\d";
if (isSameSet(set.set, sets.WORDS)) return set.not ? "\\W" : "\\w";
if (set.not && isSameSet(set.set, sets.NOTANYCHAR)) return ".";
if (isSameSet(set.set, sets.WHITESPACE)) return set.not ? "\\S" : "\\s";
let tokenString = "";
for (let i = 0; i < set.set.length; i++) {
const subset = set.set[i];
tokenString += writeSetToken(subset);
}
const contents = `${set.not ? "^" : ""}${tokenString}`;
return isNested ? contents : `[${contents}]`;
}
exports.writeSetTokens = writeSetTokens;
/**
* Writes a token within a set
* @param {Range | Char | Set} set The set token to display
* @returns {string} The token as a string
*/
function writeSetToken(set) {
if (set.type === types_1$2.types.CHAR) return setChar(set.value);
else if (set.type === types_1$2.types.RANGE) return `${setChar(set.from)}-${setChar(set.to)}`;
return writeSetTokens(set, true);
}
}) });
//#endregion
//#region ../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/reconstruct.js
var require_reconstruct = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/reconstruct.js": ((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.reconstruct = void 0;
const types_1$1 = require_types();
const write_set_tokens_1 = require_write_set_tokens();
const reduceStack = (stack) => stack.map(exports.reconstruct).join("");
const createAlternate = (token) => {
if ("options" in token) return token.options.map(reduceStack).join("|");
else if ("stack" in token) return reduceStack(token.stack);
else throw new Error(`options or stack must be Root or Group token`);
};
exports.reconstruct = (token) => {
switch (token.type) {
case types_1$1.types.ROOT: return createAlternate(token);
case types_1$1.types.CHAR: {
const c = String.fromCharCode(token.value);
return (/[[\\{}$^.|?*+()]/.test(c) ? "\\" : "") + c;
}
case types_1$1.types.POSITION: if (token.value === "^" || token.value === "$") return token.value;
else return `\\${token.value}`;
case types_1$1.types.REFERENCE: return `\\${token.value}`;
case types_1$1.types.SET: return write_set_tokens_1.writeSetTokens(token);
case types_1$1.types.GROUP: return `(${token.name ? `?<${token.name}>` : token.remember ? "" : token.followedBy ? "?=" : token.notFollowedBy ? "?!" : "?:"}${createAlternate(token)})`;
case types_1$1.types.REPETITION: {
const { min, max } = token;
let endWith;
if (min === 0 && max === 1) endWith = "?";
else if (min === 1 && max === Infinity) endWith = "+";
else if (min === 0 && max === Infinity) endWith = "*";
else if (max === Infinity) endWith = `{${min},}`;
else if (min === max) endWith = `{${min}}`;
else endWith = `{${min},${max}}`;
return `${exports.reconstruct(token.value)}${endWith}`;
}
case types_1$1.types.RANGE: return `${write_set_tokens_1.setChar(token.from)}-${write_set_tokens_1.setChar(token.to)}`;
default: throw new Error(`Invalid token type ${token}`);
}
};
}) });
//#endregion
//#region ../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/index.js
var require_dist = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/ret@0.5.0/node_modules/ret/dist/index.js": ((exports, module) => {
var __createBinding = exports && exports.__createBinding || (Object.create ? (function(o, m, k, k2) {
if (k2 === void 0) k2 = k;
Object.defineProperty(o, k2, {
enumerable: true,
get: function() {
return m[k];
}
});
}) : (function(o, m, k, k2) {
if (k2 === void 0) k2 = k;
o[k2] = m[k];
}));
var __exportStar = exports && exports.__exportStar || function(m, exports$1) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports$1, p)) __createBinding(exports$1, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.types = void 0;
/* istanbul ignore file */
const types_1 = require_types();
Object.defineProperty(exports, "types", {
enumerable: true,
get: function() {
return types_1.types;
}
});
__exportStar(require_tokenizer(), exports);
__exportStar(require_reconstruct(), exports);
const tokenizer_1 = require_tokenizer();
const reconstruct_1 = require_reconstruct();
__exportStar(require_types(), exports);
exports.default = tokenizer_1.tokenizer;
module.exports = tokenizer_1.tokenizer;
module.exports.types = types_1.types;
module.exports.reconstruct = reconstruct_1.reconstruct;
}) });
//#endregion
//#region ../../node_modules/.pnpm/safe-regex2@5.0.0/node_modules/safe-regex2/index.js
var require_safe_regex2 = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/safe-regex2@5.0.0/node_modules/safe-regex2/index.js": ((exports, module) => {
const parse = require_dist();
const types = parse.types;
function safeRegex(re, opts) {
if (!opts) opts = {};
/* c8 ignore next */
const replimit = opts.limit === void 0 ? 25 : opts.limit;
/* c8 ignore next 2 */
if (isRegExp(re)) re = re.source;
else if (typeof re !== "string") re = String(re);
try {
re = parse(re);
} catch {
return false;
}
let reps = 0;
return (function walk(node, starHeight) {
let i;
let ok;
let len;
if (node.type === types.REPETITION) {
starHeight++;
reps++;
if (starHeight > 1) return false;
if (reps > replimit) return false;
}
if (node.options) for (i = 0, len = node.options.length; i < len; i++) {
ok = walk({ stack: node.options[i] }, starHeight);
if (!ok) return false;
}
const stack = node.stack || node.value?.stack;
if (!stack) return true;
for (i = 0; i < stack.length; i++) {
ok = walk(stack[i], starHeight);
if (!ok) return false;
}
return true;
})(re, 0);
}
function isRegExp(x) {
return {}.toString.call(x) === "[object RegExp]";
}
module.exports = safeRegex;
module.exports.default = safeRegex;
module.exports.safeRegex = safeRegex;
}) });
//#endregion
//#region ../../node_modules/.pnpm/unenv@2.0.0-rc.24/node_modules/unenv/dist/runtime/node/internal/fs/promises.mjs
var import_safe_regex2 = /* @__PURE__ */ __toESM(require_safe_regex2(), 1);
const access$1 = /* @__PURE__ */ notImplemented("fs.access");
const copyFile$1 = /* @__PURE__ */ notImplemented("fs.copyFile");
const cp$1 = /* @__PURE__ */ notImplemented("fs.cp");
const open$1 = /* @__PURE__ */ notImplemented("fs.open");
const opendir$1 = /* @__PURE__ */ notImplemented("fs.opendir");
const rename$1 = /* @__PURE__ */ notImplemented("fs.rename");
const truncate$1 = /* @__PURE__ */ notImplemented("fs.truncate");
const rm$1 = /* @__PURE__ */ notImplemented("fs.rm");
const rmdir$1 = /* @__PURE__ */ notImplemented("fs.rmdir");
const mkdir$1 = /* @__PURE__ */ notImplemented("fs.mkdir");
const readdir$1 = /* @__PURE__ */ notImplemented("fs.readdir");
const readlink$1 = /* @__PURE__ */ notImplemented("fs.readlink");
const symlink$1 = /* @__PURE__ */ notImplemented("fs.symlink");
const lstat$1 = /* @__PURE__ */ notImplemented("fs.lstat");
const stat$1 = /* @__PURE__ */ notImplemented("fs.stat");
const link$1 = /* @__PURE__ */ notImplemented("fs.link");
const unlink$1 = /* @__PURE__ */ notImplemented("fs.unlink");
const chmod$1 = /* @__PURE__ */ notImplemented("fs.chmod");
const lchmod$1 = /* @__PURE__ */ notImplemented("fs.lchmod");
const lchown$1 = /* @__PURE__ */ notImplemented("fs.lchown");
const chown$1 = /* @__PURE__ */ notImplemented("fs.chown");
const utimes$1 = /* @__PURE__ */ notImplemented("fs.utimes");
const lutimes$1 = /* @__PURE__ */ notImplemented("fs.lutimes");
const realpath$1 = /* @__PURE__ */ notImplemented("fs.realpath");
const mkdtemp$1 = /* @__PURE__ */ notImplemented("fs.mkdtemp");
const writeFile$1 = /* @__PURE__ */ notImplemented("fs.writeFile");
const appendFile$1 = /* @__PURE__ */ notImplemented("fs.appendFile");
const readFile$1 = /* @__PURE__ */ notImplemented("fs.readFile");
const watch$1 = /* @__PURE__ */ notImplemented("fs.watch");
const statfs$1 = /* @__PURE__ */ notImplemented("fs.statfs");
const glob$1 = /* @__PURE__ */ notImplemented("fs.glob");
//#endregion
//#region ../../node_modules/.pnpm/unenv@2.0.0-rc.24/node_modules/unenv/dist/runtime/node/internal/fs/constants.mjs
var constants_exports = /* @__PURE__ */ __export({
COPYFILE_EXCL: () => COPYFILE_EXCL,
COPYFILE_FICLONE: () => COPYFILE_FICLONE,
COPYFILE_FICLONE_FORCE: () => COPYFILE_FICLONE_FORCE,
EXTENSIONLESS_FORMAT_JAVASCRIPT: () => EXTENSIONLESS_FORMAT_JAVASCRIPT,
EXTENSIONLESS_FORMAT_WASM: () => EXTENSIONLESS_FORMAT_WASM,
F_OK: () => F_OK,
O_APPEND: () => O_APPEND,
O_CREAT: () => O_CREAT,
O_DIRECT: () => O_DIRECT,
O_DIRECTORY: () => O_DIRECTORY,
O_DSYNC: () => O_DSYNC,
O_EXCL: () => O_EXCL,
O_NOATIME: () => O_NOATIME,
O_NOCTTY: () => O_NOCTTY,
O_NOFOLLOW: () => O_NOFOLLOW,
O_NONBLOCK: () => O_NONBLOCK,
O_RDONLY: () => O_RDONLY,
O_RDWR: () => O_RDWR,
O_SYNC: () => O_SYNC,
O_TRUNC: () => O_TRUNC,
O_WRONLY: () => O_WRONLY,
R_OK: () => R_OK,
S_IFBLK: () => S_IFBLK,
S_IFCHR: () => S_IFCHR,
S_IFDIR: () => S_IFDIR,
S_IFIFO: () => S_IFIFO,
S_IFLNK: () => S_IFLNK,
S_IFMT: () => S_IFMT,
S_IFREG: () => S_IFREG,
S_IFSOCK: () => S_IFSOCK,
S_IRGRP: () => S_IRGRP,
S_IROTH: () => S_IROTH,
S_IRUSR: () => S_IRUSR,
S_IRWXG: () => S_IRWXG,
S_IRWXO: () => S_IRWXO,
S_IRWXU: () => S_IRWXU,
S_IWGRP: () => S_IWGRP,
S_IWOTH: () => S_IWOTH,
S_IWUSR: () => S_IWUSR,
S_IXGRP: () => S_IXGRP,
S_IXOTH: () => S_IXOTH,
S_IXUSR: () => S_IXUSR,
UV_DIRENT_BLOCK: () => UV_DIRENT_BLOCK,
UV_DIRENT_CHAR: () => UV_DIRENT_CHAR,
UV_DIRENT_DIR: () => UV_DIRENT_DIR,
UV_DIRENT_FIFO: () => UV_DIRENT_FIFO,
UV_DIRENT_FILE: () => UV_DIRENT_FILE,
UV_DIRENT_LINK: () => UV_DIRENT_LINK,
UV_DIRENT_SOCKET: () => UV_DIRENT_SOCKET,
UV_DIRENT_UNKNOWN: () => UV_DIRENT_UNKNOWN,
UV_FS_COPYFILE_EXCL: () => UV_FS_COPYFILE_EXCL,
UV_FS_COPYFILE_FICLONE: () => UV_FS_COPYFILE_FICLONE,
UV_FS_COPYFILE_FICLONE_FORCE: () => UV_FS_COPYFILE_FICLONE_FORCE,
UV_FS_O_FILEMAP: () => UV_FS_O_FILEMAP,
UV_FS_SYMLINK_DIR: () => UV_FS_SYMLINK_DIR,
UV_FS_SYMLINK_JUNCTION: () => UV_FS_SYMLINK_JUNCTION,
W_OK: () => W_OK,
X_OK: () => X_OK
});
const UV_FS_SYMLINK_DIR = 1;
const UV_FS_SYMLINK_JUNCTION = 2;
const O_RDONLY = 0;
const O_WRONLY = 1;
const O_RDWR = 2;
const UV_DIRENT_UNKNOWN = 0;
const UV_DIRENT_FILE = 1;
const UV_DIRENT_DIR = 2;
const UV_DIRENT_LINK = 3;
const UV_DIRENT_FIFO = 4;
const UV_DIRENT_SOCKET = 5;
const UV_DIRENT_CHAR = 6;
const UV_DIRENT_BLOCK = 7;
const EXTENSIONLESS_FORMAT_JAVASCRIPT = 0;
const EXTENSIONLESS_FORMAT_WASM = 1;
const S_IFMT = 61440;
const S_IFREG = 32768;
const S_IFDIR = 16384;
const S_IFCHR = 8192;
const S_IFBLK = 24576;
const S_IFIFO = 4096;
const S_IFLNK = 40960;
const S_IFSOCK = 49152;
const O_CREAT = 64;
const O_EXCL = 128;
const UV_FS_O_FILEMAP = 0;
const O_NOCTTY = 256;
const O_TRUNC = 512;
const O_APPEND = 1024;
const O_DIRECTORY = 65536;
const O_NOATIME = 262144;
const O_NOFOLLOW = 131072;
const O_SYNC = 1052672;
const O_DSYNC = 4096;
const O_DIRECT = 16384;
const O_NONBLOCK = 2048;
const S_IRWXU = 448;
const S_IRUSR = 256;
const S_IWUSR = 128;
const S_IXUSR = 64;
const S_IRWXG = 56;
const S_IRGRP = 32;
const S_IWGRP = 16;
const S_IXGRP = 8;
const S_IRWXO = 7;
const S_IROTH = 4;
const S_IWOTH = 2;
const S_IXOTH = 1;
const F_OK = 0;
const R_OK = 4;
const W_OK = 2;
const X_OK = 1;
const UV_FS_COPYFILE_EXCL = 1;
const COPYFILE_EXCL = 1;
const UV_FS_COPYFILE_FICLONE = 2;
const COPYFILE_FICLONE = 2;
const UV_FS_COPYFILE_FICLONE_FORCE = 4;
const COPYFILE_FICLONE_FORCE = 4;
//#endregion
//#region ../../node_modules/.pnpm/unenv@2.0.0-rc.24/node_modules/unenv/dist/runtime/node/fs/promises.mjs
var promises_default = {
constants: constants_exports,
access: access$1,
appendFile: appendFile$1,
chmod: chmod$1,
chown: chown$1,
copyFile: copyFile$1,
cp: cp$1,
glob: glob$1,
lchmod: lchmod$1,
lchown: lchown$1,
link: link$1,
lstat: lstat$1,
lutimes: lutimes$1,
mkdir: mkdir$1,
mkdtemp: mkdtemp$1,
open: open$1,
opendir: opendir$1,
readFile: readFile$1,
readdir: readdir$1,
readlink: readlink$1,
realpath: realpath$1,
rename: rename$1,
rm: rm$1,
rmdir: rmdir$1,
stat: stat$1,
statfs: statfs$1,
symlink: symlink$1,
truncate: truncate$1,
unlink: unlink$1,
utimes: utimes$1,
watch: watch$1,
writeFile: writeFile$1
};
//#endregion
//#region ../../node_modules/.pnpm/unenv@2.0.0-rc.24/node_modules/unenv/dist/runtime/node/internal/fs/classes.mjs
const Dir = /* @__PURE__ */ notImplementedClass("fs.Dir");
const Dirent = /* @__PURE__ */ notImplementedClass("fs.Dirent");
const Stats = /* @__PURE__ */ notImplementedClass("fs.Stats");
const ReadStream = /* @__PURE__ */ notImplementedClass("fs.ReadStream");
const WriteStream = /* @__PURE__ */ notImplementedClass("fs.WriteStream");
const FileReadStream = ReadStream;
const FileWriteStream = WriteStream;
//#endregion
//#region ../../node_modules/.pnpm/unenv@2.0.0-rc.24/node_modules/unenv/dist/runtime/node/internal/fs/fs.mjs
function callbackify(fn) {
const fnc = function(...args) {
const cb = args.pop();
fn().catch((error) => cb(error)).then((val) => cb(void 0, val));
};
fnc.__promisify__ = fn;
fnc.native = fnc;
return fnc;
}
const access = callbackify(access$1);
const appendFile = callbackify(appendFile$1);
const chown = callbackify(chown$1);
const chmod = callbackify(chmod$1);
const copyFile = callbackify(copyFile$1);
const cp = callbackify(cp$1);
const lchown = callbackify(lchown$1);
const lchmod = callbackify(lchmod$1);
const link = callbackify(link$1);
const lstat = callbackify(lstat$1);
const lutimes = callbackify(lutimes$1);
const mkdir = callbackify(mkdir$1);
const mkdtemp = callbackify(mkdtemp$1);
const realpath = callbackify(realpath$1);
const open = callbackify(open$1);
const opendir = callbackify(opendir$1);
const readdir = callbackify(readdir$1);
const readFile = callbackify(readFile$1);
const readlink = callbackify(readlink$1);
const rename = callbackify(rename$1);
const rm = callbackify(rm$1);
const rmdir = callbackify(rmdir$1);
const stat = callbackify(stat$1);
const symlink = callbackify(symlink$1);
const truncate = callbackify(truncate$1);
const unlink = callbackify(unlink$1);
const utimes = callbackify(utimes$1);
const writeFile = callbackify(writeFile$1);
const statfs = callbackify(statfs$1);
const close = /* @__PURE__ */ notImplementedAsync("fs.close");
const createReadStream = /* @__PURE__ */ notImplementedAsync("fs.createReadStream");
const createWriteStream = /* @__PURE__ */ notImplementedAsync("fs.createWriteStream");
const exists = /* @__PURE__ */ notImplementedAsync("fs.exists");
const fchown = /* @__PURE__ */ notImplementedAsync("fs.fchown");
const fchmod = /* @__PURE__ */ notImplementedAsync("fs.fchmod");
const fdatasync = /* @__PURE__ */ notImplementedAsync("fs.fdatasync");
const fstat = /* @__PURE__ */ notImplementedAsync("fs.fstat");
const fsync = /* @__PURE__ */ notImplementedAsync("fs.fsync");
const ftruncate = /* @__PURE__ */ notImplementedAsync("fs.ftruncate");
const futimes = /* @__PURE__ */ notImplementedAsync("fs.futimes");
const lstatSync = /* @__PURE__ */ notImplementedAsync("fs.lstatSync");
const read = /* @__PURE__ */ notImplementedAsync("fs.read");
const readv = /* @__PURE__ */ notImplementedAsync("fs.readv");
const realpathSync = /* @__PURE__ */ notImplementedAsync("fs.realpathSync");
const statSync = /* @__PURE__ */ notImplementedAsync("fs.statSync");
const unwatchFile = /* @__PURE__ */ notImplementedAsync("fs.unwatchFile");
const watch = /* @__PURE__ */ notImplementedAsync("fs.watch");
const watchFile = /* @__PURE__ */ notImplementedAsync("fs.watchFile");
const write = /* @__PURE__ */ notImplementedAsync("fs.write");
const writev = /* @__PURE__ */ notImplementedAsync("fs.writev");
const _toUnixTimestamp = /* @__PURE__ */ notImplementedAsync("fs._toUnixTimestamp");
const openAsBlob = /* @__PURE__ */ notImplementedAsync("fs.openAsBlob");
const glob = /* @__PURE__ */ notImplementedAsync("fs.glob");
const appendFileSync = /* @__PURE__ */ notImplemented("fs.appendFileSync");
const accessSync = /* @__PURE__ */ notImplemented("fs.accessSync");
const chownSync = /* @__PURE__ */ notImplemented("fs.chownSync");
const chmodSync = /* @__PURE__ */ notImplemented("fs.chmodSync");
const closeSync = /* @__PURE__ */ notImplemented("fs.closeSync");
const copyFileSync = /* @__PURE__ */ notImplemented("fs.copyFileSync");
const cpSync = /* @__PURE__ */ notImplemented("fs.cpSync");
const existsSync = () => false;
const fchownSync = /* @__PURE__ */ notImplemented("fs.fchownSync");
const fchmodSync = /* @__PURE__ */ notImplemented("fs.fchmodSync");
const fdatasyncSync = /* @__PURE__ */ notImplemented("fs.fdatasyncSync");
const fstatSync = /* @__PURE__ */ notImplemented("fs.fstatSync");
const fsyncSync = /* @__PURE__ */ notImplemented("fs.fsyncSync");
const ftruncateSync = /* @__PURE__ */ notImplemented("fs.ftruncateSync");
const futimesSync = /* @__PURE__ */ notImplemented("fs.futimesSync");
const lchownSync = /* @__PURE__ */ notImplemented("fs.lchownSync");
const lchmodSync = /* @__PURE__ */ notImplemented("fs.lchmodSync");
const linkSync = /* @__PURE__ */ notImplemented("fs.linkSync");
const lutimesSync = /* @__PURE__ */ notImplemented("fs.lutimesSync");
const mkdirSync = /* @__PURE__ */ notImplemented("fs.mkdirSync");
const mkdtempSync = /* @__PURE__ */ notImplemented("fs.mkdtempSync");
const openSync = /* @__PURE__ */ notImplemented("fs.openSync");
const opendirSync = /* @__PURE__ */ notImplemented("fs.opendirSync");
const readdirSync = /* @__PURE__ */ notImplemented("fs.readdirSync");
const readSync = /* @__PURE__ */ notImplemented("fs.readSync");
const readvSync = /* @__PURE__ */ notImplemented("fs.readvSync");
const readFileSync = /* @__PURE__ */ notImplemented("fs.readFileSync");
const readlinkSync = /* @__PURE__ */ notImplemented("fs.readlinkSync");
const renameSync = /* @__PURE__ */ notImplemented("fs.renameSync");
const rmSync = /* @__PURE__ */ notImplemented("fs.rmSync");
const rmdirSync = /* @__PURE__ */ notImplemented("fs.rmdirSync");
const symlinkSync = /* @__PURE__ */ notImplemented("fs.symlinkSync");
const truncateSync = /* @__PURE__ */ notImplemented("fs.truncateSync");
const unlinkSync = /* @__PURE__ */ notImplemented("fs.unlinkSync");
const utimesSync = /* @__PURE__ */ notImplemented("fs.utimesSync");
const writeFileSync = /* @__PURE__ */ notImplemented("fs.writeFileSync");
const writeSync = /* @__PURE__ */ notImplemented("fs.writeSync");
const writevSync = /* @__PURE__ */ notImplemented("fs.writevSync");
const statfsSync = /* @__PURE__ */ notImplemented("fs.statfsSync");
const globSync = /* @__PURE__ */ notImplemented("fs.globSync");
//#endregion
//#region ../../node_modules/.pnpm/unenv@2.0.0-rc.24/node_modules/unenv/dist/runtime/node/fs.mjs
var fs_default = {
F_OK,
R_OK,
W_OK,
X_OK,
constants: constants_exports,
promises: promises_default,
Dir,
Dirent,
FileReadStream,
FileWriteStream,
ReadStream,
Stats,
WriteStream,
_toUnixTimestamp,
access,
accessSync,
appendFile,
appendFileSync,
chmod,
chmodSync,
chown,
chownSync,
close,
closeSync,
copyFile,
copyFileSync,
cp,
cpSync,
createReadStream,
createWriteStream,
exists,
existsSync,
fchmod,
fchmodSync,
fchown,
fchownSync,
fdatasync,
fdatasyncSync,
fstat,
fstatSync,
fsync,
fsyncSync,
ftruncate,
ftruncateSync,
futimes,
futimesSync,
glob,
lchmod,
globSync,
lchmodSync,
lchown,
lchownSync,
link,
linkSync,
lstat,
lstatSync,
lutimes,
lutimesSync,
mkdir,
mkdirSync,
mkdtemp,
mkdtempSync,
open,
openAsBlob,
openSync,
opendir,
opendirSync,
read,
readFile,
readFileSync,
readSync,
readdir,
readdirSync,
readlink,
readlinkSync,
readv,
readvSync,
realpath,
realpathSync,
rename,
renameSync,
rm,
rmSync,
rmdir,
rmdirSync,
stat,
statSync,
statfs,
statfsSync,
symlink,
symlinkSync,
truncate,
truncateSync,
unlink,
unlinkSync,
unwatchFile,
utimes,
utimesSync,
watch,
watchFile,
write,
writeFile,
writeFileSync,
writeSync,
writev,
writevSync
};
//#endregion
//#region ../../node_modules/.pnpm/loglevel@1.9.2/node_modules/loglevel/lib/loglevel.js
var require_loglevel = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/loglevel@1.9.2/node_modules/loglevel/lib/loglevel.js": ((exports, module) => {
(function(root, definition) {
if (typeof define === "function" && define.amd) define(definition);
else if (typeof module === "object" && module.exports) module.exports = definition();
else root.log = definition();
})(exports, function() {
var noop = function() {};
var undefinedType = "undefined";
var isIE = typeof window !== undefinedType && typeof window.navigator !== undefinedType && /Trident\/|MSIE /.test(window.navigator.userAgent);
var logMethods = [
"trace",
"debug",
"info",
"warn",
"error"
];
var _loggersByName = {};
var defaultLogger = null;
function bindMethod(obj, methodName) {
var method = obj[methodName];
if (typeof method.bind === "function") return method.bind(obj);
else try {
return Function.prototype.bind.call(method, obj);
} catch (e) {
return function() {
return Function.prototype.apply.apply(method, [obj, arguments]);
};
}
}
function traceForIE() {
if (console.log) if (console.log.apply) console.log.apply(console, arguments);
else Function.prototype.apply.apply(console.log, [console, arguments]);
if (console.trace) console.trace();
}
function realMethod(methodName) {
if (methodName === "debug") methodName = "log";
if (typeof console === undefinedType) return false;
else if (methodName === "trace" && isIE) return traceForIE;
else if (console[methodName] !== void 0) return bindMethod(console, methodName);
else if (console.log !== void 0) return bindMethod(console, "log");
else return noop;
}
function replaceLoggingMethods() {
var level$1 = this.getLevel();
for (var i = 0; i < logMethods.length; i++) {
var methodName = logMethods[i];
this[methodName] = i < level$1 ? noop : this.methodFactory(methodName, level$1, this.name);
}
this.log = this.debug;
if (typeof console === undefinedType && level$1 < this.levels.SILENT) return "No console available for logging";
}
function enableLoggingWhenConsoleArrives(methodName) {
return function() {
if (typeof console !== undefinedType) {
replaceLoggingMethods.call(this);
this[methodName].apply(this, arguments);
}
};
}
function defaultMethodFactory(methodName, _level, _loggerName) {
return realMethod(methodName) || enableLoggingWhenConsoleArrives.apply(this, arguments);
}
function Logger(name, factory) {
var self = this;
/**
* The level inherited from a parent logger (or a global default). We
* cache this here rather than delegating to the parent so that it stays
* in sync with the actual logging methods that we have installed (the
* parent could change levels but we might not have rebuilt the loggers
* in this child yet).
* @type {number}
*/
var inheritedLevel;
/**
* The default level for this logger, if any. If set, this overrides
* `inheritedLevel`.
* @type {number|null}
*/
var defaultLevel;
/**
* A user-specific level for this logger. If set, this overrides
* `defaultLevel`.
* @type {number|null}
*/
var userLevel;
var storageKey = "loglevel";
if (typeof name === "string") storageKey += ":" + name;
else if (typeof name === "symbol") storageKey = void 0;
function persistLevelIfPossible(levelNum) {
var levelName = (logMethods[levelNum] || "silent").toUpperCase();
if (typeof window === undefinedType || !storageKey) return;
try {
window.localStorage[storageKey] = levelName;
return;
} catch (ignore) {}
try {
window.document.cookie = encodeURIComponent(storageKey) + "=" + levelName + ";";
} catch (ignore) {}
}
function getPersistedLevel() {
var storedLevel;
if (typeof window === undefinedType || !storageKey) return;
try {
storedLevel = window.localStorage[storageKey];
} catch (ignore) {}
if (typeof storedLevel === undefinedType) try {
var cookie = window.document.cookie;
var cookieName = encodeURIComponent(storageKey);
var location = cookie.indexOf(cookieName + "=");
if (location !== -1) storedLevel = /^([^;]+)/.exec(cookie.slice(location + cookieName.length + 1))[1];
} catch (ignore) {}
if (self.levels[storedLevel] === void 0) storedLevel = void 0;
return storedLevel;
}
function clearPersistedLevel() {
if (typeof window === undefinedType || !storageKey) return;
try {
window.localStorage.removeItem(storageKey);
} catch (ignore) {}
try {
window.document.cookie = encodeURIComponent(storageKey) + "=; expires=Thu, 01 Jan 1970 00:00:00 UTC";
} catch (ignore) {}
}
function normalizeLevel(input) {
var level$1 = input;
if (typeof level$1 === "string" && self.levels[level$1.toUpperCase()] !== void 0) level$1 = self.levels[level$1.toUpperCase()];
if (typeof level$1 === "number" && level$1 >= 0 && level$1 <= self.levels.SILENT) return level$1;
else throw new TypeError("log.setLevel() called with invalid level: " + input);
}
self.name = name;
self.levels = {
"TRACE": 0,
"DEBUG": 1,
"INFO": 2,
"WARN": 3,
"ERROR": 4,
"SILENT": 5
};
self.methodFactory = factory || defaultMethodFactory;
self.getLevel = function() {
if (userLevel != null) return userLevel;
else if (defaultLevel != null) return defaultLevel;
else return inheritedLevel;
};
self.setLevel = function(level$1, persist) {
userLevel = normalizeLevel(level$1);
if (persist !== false) persistLevelIfPossible(userLevel);
return replaceLoggingMethods.call(self);
};
self.setDefaultLevel = function(level$1) {
defaultLevel = normalizeLevel(level$1);
if (!getPersistedLevel()) self.setLevel(level$1, false);
};
self.resetLevel = function() {
userLevel = null;
clearPersistedLevel();
replaceLoggingMethods.call(self);
};
self.enableAll = function(persist) {
self.setLevel(self.levels.TRACE, persist);
};
self.disableAll = function(persist) {
self.setLevel(self.levels.SILENT, persist);
};
self.rebuild = function() {
if (defaultLogger !== self) inheritedLevel = normalizeLevel(defaultLogger.getLevel());
replaceLoggingMethods.call(self);
if (defaultLogger === self) for (var childName in _loggersByName) _loggersByName[childName].rebuild();
};
inheritedLevel = normalizeLevel(defaultLogger ? defaultLogger.getLevel() : "WARN");
var initialLevel = getPersistedLevel();
if (initialLevel != null) userLevel = normalizeLevel(initialLevel);
replaceLoggingMethods.call(self);
}
defaultLogger = new Logger();
defaultLogger.getLogger = function getLogger$1(name) {
if (typeof name !== "symbol" && typeof name !== "string" || name === "") throw new TypeError("You must supply a name when creating a logger.");
var logger = _loggersByName[name];
if (!logger) logger = _loggersByName[name] = new Logger(name, defaultLogger.methodFactory);
return logger;
};
var _log = typeof window !== undefinedType ? window.log : void 0;
defaultLogger.noConflict = function() {
if (typeof window !== undefinedType && window.log === defaultLogger) window.log = _log;
return defaultLogger;
};
defaultLogger.getLoggers = function getLoggers() {
return _loggersByName;
};
defaultLogger["default"] = defaultLogger;
return defaultLogger;
});
}) });
//#endregion
//#region ../../node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/vendor/ansi-styles/index.js
var import_loglevel = /* @__PURE__ */ __toESM(require_loglevel(), 1);
const ANSI_BACKGROUND_OFFSET = 10;
const wrapAnsi16 = (offset = 0) => (code) => `\u001B[${code + offset}m`;
const wrapAnsi256 = (offset = 0) => (code) => `\u001B[${38 + offset};5;${code}m`;
const wrapAnsi16m = (offset = 0) => (red, green, blue) => `\u001B[${38 + offset};2;${red};${green};${blue}m`;
const styles$1 = {
modifier: {
reset: [0, 0],
bold: [1, 22],
dim: [2, 22],
italic: [3, 23],
underline: [4, 24],
overline: [53, 55],
inverse: [7, 27],
hidden: [8, 28],
strikethrough: [9, 29]
},
color: {
black: [30, 39],
red: [31, 39],
green: [32, 39],
yellow: [33, 39],
blue: [34, 39],