diff --git a/docs/index.html b/docs/index.html index 434a940..0353f27 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1,4 +1,4 @@ -

Hello world

+

Hello world!

\ No newline at end of file diff --git a/docs/telegram-bot-playground/metadata.json b/docs/telegram-bot-playground/metadata.json deleted file mode 100644 index 56f1b6a..0000000 --- a/docs/telegram-bot-playground/metadata.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "styles.css": "oq5lin", - "main.js": "yozt7w", - "web-worker.js": "f5lxb1" -} \ No newline at end of file diff --git a/docs/telegram-bot-playground/scripts/main.js b/docs/telegram-bot-playground/scripts/main.js deleted file mode 100644 index ce086d6..0000000 --- a/docs/telegram-bot-playground/scripts/main.js +++ /dev/null @@ -1,253 +0,0 @@ -// src/tg-bot-playground/bot-launcher/load.ts -async function loadWorker() { - const version = await fetch("./metadata.json", { cache: "no-cache" }).then((_) => _.json()).then((_) => _["web-worker.js"]); - if (!version) { - console.warn("Cannot get version from metadata"); - return; - } - ; - const worker = new Worker(`./scripts/worker/web-worker.js?v=${version}`, { type: "module" }); - console.log("web worker has been loaded"); - return worker; -} - -// src/tg-bot-playground/bot-launcher/run.ts -var makeRunnableBot = (tsTextModel, worker) => (state) => tsTextModel.getJsCode().then((code) => { - if (!state.bot.token || state.bot.token.length < 10) return; - if (!code.serialized) { - console.warn("Serizalized js code not defined"); - return; - } - worker.postMessage({ - command: "run-bot", - token: state.bot.token, - code: code.serialized - }); - state.bot.status = "active"; -}).catch((error) => { - console.warn("cannot run bot", error); -}); -var checkTokenAndRun = (state, runnableBot) => { - const token = state.bot.token; - if (!token) return; - fetch(`https://api.telegram.org/bot${token}/getMe`).then((_) => _.json()).then((info) => { - if (info.ok) { - state.bot.name = info.result.first_name; - console.log("Running bot"); - runnableBot(state); - } else { - state.bot.name = "nameless"; - } - }).catch((error) => { - console.warn("check token error", error); - }); -}; - -// src/tg-bot-playground/bot-launcher/_main.ts -var makeBotLauncher = async (tsTextModel) => { - const worker = await loadWorker(); - if (!worker) return; - const runnableBot = makeRunnableBot(tsTextModel, worker); - return { - worker, - runBot: (state) => runnableBot(state), - checkTokenAndRun: (state) => checkTokenAndRun(state, runnableBot) - }; -}; - -// src/tg-bot-playground/utils.ts -var fetchText = (path) => fetch(path).then((_) => _.text()); -var getMonacoLoader = () => { - if (!("monaco_loader" in window) || typeof window.monaco_loader != "object" || window.monaco_loader == null) { - console.warn("monaco loader is not available"); - return; - } - return window.monaco_loader; -}; -function getAlpine() { - if (!("Alpine" in window) || typeof window.Alpine != "object" || window.Alpine == null) { - console.warn("Alpine is not available"); - return; - } - return window.Alpine; -} - -// src/tg-bot-playground/editor/setup.ts -var setupDts = async (monaco) => { - const dts = await fetchText("https://cdn.jsdelivr.net/npm/@effect-ak/tg-bot-client@0.2.2/dist/index.d.ts"); - monaco.languages.typescript.typescriptDefaults.setExtraLibs([ - { - content: dts, - filePath: "node_modules/@effect-ak/tg-bot-client/index.d.ts" - } - ]); - monaco.languages.typescript.typescriptDefaults.setCompilerOptions({ - ...monaco.languages.typescript.typescriptDefaults.getCompilerOptions(), - moduleResolution: monaco.languages.typescript.ModuleResolutionKind.NodeJs, - typeRoots: [ - "node_modules" - ], - strict: true - }); -}; - -// src/tg-bot-playground/editor/ts-text-model.ts -var makeTsTextModel = async (monaco) => { - const emptyExample = await fetchText("./example/empty.ts"); - const tsModel = monaco.editor.createModel(emptyExample, "typescript"); - let cachedWorkerPromise = null; - const getTsCode = async () => { - if (!cachedWorkerPromise) { - cachedWorkerPromise = (async () => { - const tsWorker = await monaco.languages.typescript.getTypeScriptWorker(); - return tsWorker(tsModel.uri); - })(); - } - return cachedWorkerPromise.then((_) => _.getEmitOutput(tsModel.uri.toString())); - }; - return { - tsModel, - getJsCode: async () => { - const output = await getTsCode(); - const code = output.outputFiles[0].text; - const defaultExport = await getDefaultExport(code); - return { - defaultExport, - serialized: serialize(defaultExport?.default) - }; - } - }; -}; -async function getDefaultExport(code) { - try { - const encodedCode = encodeURIComponent(code); - const module = await import(`data:text/javascript,${encodedCode}`); - const result = module.default; - return { default: result }; - } catch (e) { - console.warn("get default error", e); - return void 0; - } -} -var serialize = (input) => { - if (typeof input != "object" || !input) { - return void 0; - } - const result = []; - for (const [key, value] of Object.entries(input)) { - if (typeof value != "function") { - continue; - } - result.push([key, value.toString()]); - } - return JSON.stringify(Object.fromEntries(result)); -}; - -// src/tg-bot-playground/editor/init.ts -var initEditor = async (loader) => { - const container = document.getElementById("container"); - if (!container) { - console.warn("container not found"); - return; - } - loader.config({ - paths: { - vs: "https://cdn.jsdelivr.net/npm/monaco-editor@latest/min/vs" - } - }); - const monaco = await loader.init(); - const tsTextModel = await makeTsTextModel(monaco); - const editor = monaco.editor.create(container, { - model: tsTextModel.tsModel, - contextmenu: false, - minimap: { - enabled: false - } - }); - return { - tsTextModel, - editor, - monaco - }; -}; - -// src/tg-bot-playground/editor/_editor.ts -var makeEditor = async (state) => { - const loader = getMonacoLoader(); - if (!loader) return; - const editor = await initEditor(loader); - if (!editor) return; - await setupDts(editor.monaco); - return { - tsTextModel: editor.tsTextModel, - loadExample: () => { - if (!state.selectedExample) return; - fetchText(`./example/${state.selectedExample}`).then((_) => editor.tsTextModel.tsModel.setValue(_)); - }, - onCodeChange: (f) => { - let timeoutId; - const debounceDelay = 1e3; - editor.tsTextModel.tsModel.onDidChangeContent(() => { - if (timeoutId !== void 0) { - clearTimeout(timeoutId); - } - timeoutId = window.setTimeout(() => { - const markers = editor.monaco.editor.getModelMarkers({ - resource: editor.tsTextModel.tsModel.uri - }); - const hasError = markers.find((_) => _.severity.valueOf() == 8) != null; - if (!hasError) { - f(); - } else { - console.debug("Code contains errors"); - } - }, debounceDelay); - }); - } - }; -}; - -// src/tg-bot-playground/main.ts -var makeGlobalState = (alpine) => { - const state = alpine.reactive({ - bot: { - name: "nameless", - status: "idle", - token: "" - }, - selectedExample: "empty.ts", - botUpdates: [] - }); - return state; -}; -document.addEventListener("alpine:init", async () => { - const Alpine = getAlpine(); - if (!Alpine) return; - const state = makeGlobalState(Alpine); - Alpine.store("state", state); - const editor = await makeEditor(state); - if (!editor) return; - const botLauncher = await makeBotLauncher(editor.tsTextModel); - if (!botLauncher) return; - editor.onCodeChange(() => { - botLauncher.runBot(state); - }); - document.addEventListener("check-token", () => { - botLauncher.checkTokenAndRun(state); - }); - document.addEventListener("change-example", () => { - editor.loadExample(); - }); - botLauncher.worker.onmessage = (event) => { - const data = event.data; - console.log("got message from worker", data); - if (!data) return; - if (data.botState) { - Object.assign(state.bot, data.botState); - } - state.botUpdates.push(data); - }; -}); -export { - makeGlobalState -}; diff --git a/docs/telegram-bot-playground/scripts/worker/web-worker.js b/docs/telegram-bot-playground/scripts/worker/web-worker.js deleted file mode 100644 index 7c0e6e3..0000000 --- a/docs/telegram-bot-playground/scripts/worker/web-worker.js +++ /dev/null @@ -1,3823 +0,0 @@ -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/Function.js -var isFunction = (input) => typeof input === "function"; -var dual = function(arity, body) { - if (typeof arity === "function") { - return function() { - if (arity(arguments)) { - return body.apply(this, arguments); - } - return (self2) => body(self2, ...arguments); - }; - } - switch (arity) { - case 0: - case 1: - throw new RangeError(`Invalid arity ${arity}`); - case 2: - return function(a, b) { - if (arguments.length >= 2) { - return body(a, b); - } - return function(self2) { - return body(self2, a); - }; - }; - case 3: - return function(a, b, c) { - if (arguments.length >= 3) { - return body(a, b, c); - } - return function(self2) { - return body(self2, a, b); - }; - }; - case 4: - return function(a, b, c, d) { - if (arguments.length >= 4) { - return body(a, b, c, d); - } - return function(self2) { - return body(self2, a, b, c); - }; - }; - case 5: - return function(a, b, c, d, e) { - if (arguments.length >= 5) { - return body(a, b, c, d, e); - } - return function(self2) { - return body(self2, a, b, c, d); - }; - }; - default: - return function() { - if (arguments.length >= arity) { - return body.apply(this, arguments); - } - const args2 = arguments; - return function(self2) { - return body(self2, ...args2); - }; - }; - } -}; -var identity = (a) => a; -var constant = (value) => () => value; -var constTrue = /* @__PURE__ */ constant(true); -var constFalse = /* @__PURE__ */ constant(false); -var constUndefined = /* @__PURE__ */ constant(void 0); -var constVoid = constUndefined; -function pipe(a, ab, bc, cd, de, ef, fg, gh, hi) { - switch (arguments.length) { - case 1: - return a; - case 2: - return ab(a); - case 3: - return bc(ab(a)); - case 4: - return cd(bc(ab(a))); - case 5: - return de(cd(bc(ab(a)))); - case 6: - return ef(de(cd(bc(ab(a))))); - case 7: - return fg(ef(de(cd(bc(ab(a)))))); - case 8: - return gh(fg(ef(de(cd(bc(ab(a))))))); - case 9: - return hi(gh(fg(ef(de(cd(bc(ab(a)))))))); - default: { - let ret = arguments[0]; - for (let i = 1; i < arguments.length; i++) { - ret = arguments[i](ret); - } - return ret; - } - } -} - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/Equivalence.js -var make = (isEquivalent) => (self2, that) => self2 === that || isEquivalent(self2, that); - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/version.js -var moduleVersion = "3.11.9"; -var getCurrentVersion = () => moduleVersion; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/GlobalValue.js -var globalStoreId = /* @__PURE__ */ Symbol.for(`effect/GlobalValue/globalStoreId/${/* @__PURE__ */ getCurrentVersion()}`); -if (!(globalStoreId in globalThis)) { - ; - globalThis[globalStoreId] = /* @__PURE__ */ new Map(); -} -var globalStore = globalThis[globalStoreId]; -var globalValue = (id, compute) => { - if (!globalStore.has(id)) { - globalStore.set(id, compute()); - } - return globalStore.get(id); -}; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/Predicate.js -var isFunction2 = isFunction; -var isRecordOrArray = (input) => typeof input === "object" && input !== null; -var isObject = (input) => isRecordOrArray(input) || isFunction2(input); -var hasProperty = /* @__PURE__ */ dual(2, (self2, property) => isObject(self2) && property in self2); -var isTagged = /* @__PURE__ */ dual(2, (self2, tag) => hasProperty(self2, "_tag") && self2["_tag"] === tag); - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/errors.js -var getBugErrorMessage = (message) => `BUG: ${message} - please report an issue at https://github.com/Effect-TS/effect/issues`; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/Utils.js -var GenKindTypeId = /* @__PURE__ */ Symbol.for("effect/Gen/GenKind"); -var GenKindImpl = class { - value; - constructor(value) { - this.value = value; - } - /** - * @since 2.0.0 - */ - get _F() { - return identity; - } - /** - * @since 2.0.0 - */ - get _R() { - return (_) => _; - } - /** - * @since 2.0.0 - */ - get _O() { - return (_) => _; - } - /** - * @since 2.0.0 - */ - get _E() { - return (_) => _; - } - /** - * @since 2.0.0 - */ - [GenKindTypeId] = GenKindTypeId; - /** - * @since 2.0.0 - */ - [Symbol.iterator]() { - return new SingleShotGen(this); - } -}; -var SingleShotGen = class _SingleShotGen { - self; - called = false; - constructor(self2) { - this.self = self2; - } - /** - * @since 2.0.0 - */ - next(a) { - return this.called ? { - value: a, - done: true - } : (this.called = true, { - value: this.self, - done: false - }); - } - /** - * @since 2.0.0 - */ - return(a) { - return { - value: a, - done: true - }; - } - /** - * @since 2.0.0 - */ - throw(e) { - throw e; - } - /** - * @since 2.0.0 - */ - [Symbol.iterator]() { - return new _SingleShotGen(this.self); - } -}; -var MUL_HI = 1481765933 >>> 0; -var MUL_LO = 1284865837 >>> 0; -var YieldWrapTypeId = /* @__PURE__ */ Symbol.for("effect/Utils/YieldWrap"); -var YieldWrap = class { - /** - * @since 3.0.6 - */ - #value; - constructor(value) { - this.#value = value; - } - /** - * @since 3.0.6 - */ - [YieldWrapTypeId]() { - return this.#value; - } -}; -function yieldWrapGet(self2) { - if (typeof self2 === "object" && self2 !== null && YieldWrapTypeId in self2) { - return self2[YieldWrapTypeId](); - } - throw new Error(getBugErrorMessage("yieldWrapGet")); -} -var structuralRegionState = /* @__PURE__ */ globalValue("effect/Utils/isStructuralRegion", () => ({ - enabled: false, - tester: void 0 -})); -var genConstructor = function* () { -}.constructor; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/Hash.js -var randomHashCache = /* @__PURE__ */ globalValue(/* @__PURE__ */ Symbol.for("effect/Hash/randomHashCache"), () => /* @__PURE__ */ new WeakMap()); -var symbol = /* @__PURE__ */ Symbol.for("effect/Hash"); -var hash = (self2) => { - if (structuralRegionState.enabled === true) { - return 0; - } - switch (typeof self2) { - case "number": - return number(self2); - case "bigint": - return string(self2.toString(10)); - case "boolean": - return string(String(self2)); - case "symbol": - return string(String(self2)); - case "string": - return string(self2); - case "undefined": - return string("undefined"); - case "function": - case "object": { - if (self2 === null) { - return string("null"); - } else if (self2 instanceof Date) { - return hash(self2.toISOString()); - } else if (isHash(self2)) { - return self2[symbol](); - } else { - return random(self2); - } - } - default: - throw new Error(`BUG: unhandled typeof ${typeof self2} - please report an issue at https://github.com/Effect-TS/effect/issues`); - } -}; -var random = (self2) => { - if (!randomHashCache.has(self2)) { - randomHashCache.set(self2, number(Math.floor(Math.random() * Number.MAX_SAFE_INTEGER))); - } - return randomHashCache.get(self2); -}; -var combine = (b) => (self2) => self2 * 53 ^ b; -var optimize = (n) => n & 3221225471 | n >>> 1 & 1073741824; -var isHash = (u) => hasProperty(u, symbol); -var number = (n) => { - if (n !== n || n === Infinity) { - return 0; - } - let h = n | 0; - if (h !== n) { - h ^= n * 4294967295; - } - while (n > 4294967295) { - h ^= n /= 4294967295; - } - return optimize(h); -}; -var string = (str) => { - let h = 5381, i = str.length; - while (i) { - h = h * 33 ^ str.charCodeAt(--i); - } - return optimize(h); -}; -var structureKeys = (o, keys2) => { - let h = 12289; - for (let i = 0; i < keys2.length; i++) { - h ^= pipe(string(keys2[i]), combine(hash(o[keys2[i]]))); - } - return optimize(h); -}; -var structure = (o) => structureKeys(o, Object.keys(o)); -var array = (arr) => { - let h = 6151; - for (let i = 0; i < arr.length; i++) { - h = pipe(h, combine(hash(arr[i]))); - } - return optimize(h); -}; -var cached = function() { - if (arguments.length === 1) { - const self3 = arguments[0]; - return function(hash3) { - Object.defineProperty(self3, symbol, { - value() { - return hash3; - }, - enumerable: false - }); - return hash3; - }; - } - const self2 = arguments[0]; - const hash2 = arguments[1]; - Object.defineProperty(self2, symbol, { - value() { - return hash2; - }, - enumerable: false - }); - return hash2; -}; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/Equal.js -var symbol2 = /* @__PURE__ */ Symbol.for("effect/Equal"); -function equals() { - if (arguments.length === 1) { - return (self2) => compareBoth(self2, arguments[0]); - } - return compareBoth(arguments[0], arguments[1]); -} -function compareBoth(self2, that) { - if (self2 === that) { - return true; - } - const selfType = typeof self2; - if (selfType !== typeof that) { - return false; - } - if (selfType === "object" || selfType === "function") { - if (self2 !== null && that !== null) { - if (isEqual(self2) && isEqual(that)) { - if (hash(self2) === hash(that) && self2[symbol2](that)) { - return true; - } else { - return structuralRegionState.enabled && structuralRegionState.tester ? structuralRegionState.tester(self2, that) : false; - } - } else if (self2 instanceof Date && that instanceof Date) { - return self2.toISOString() === that.toISOString(); - } - } - if (structuralRegionState.enabled) { - if (Array.isArray(self2) && Array.isArray(that)) { - return self2.length === that.length && self2.every((v, i) => compareBoth(v, that[i])); - } - if (Object.getPrototypeOf(self2) === Object.prototype && Object.getPrototypeOf(self2) === Object.prototype) { - const keysSelf = Object.keys(self2); - const keysThat = Object.keys(that); - if (keysSelf.length === keysThat.length) { - for (const key of keysSelf) { - if (!(key in that && compareBoth(self2[key], that[key]))) { - return structuralRegionState.tester ? structuralRegionState.tester(self2, that) : false; - } - } - return true; - } - } - return structuralRegionState.tester ? structuralRegionState.tester(self2, that) : false; - } - } - return structuralRegionState.enabled && structuralRegionState.tester ? structuralRegionState.tester(self2, that) : false; -} -var isEqual = (u) => hasProperty(u, symbol2); - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/Inspectable.js -var NodeInspectSymbol = /* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom"); -var toJSON = (x) => { - try { - if (hasProperty(x, "toJSON") && isFunction2(x["toJSON"]) && x["toJSON"].length === 0) { - return x.toJSON(); - } else if (Array.isArray(x)) { - return x.map(toJSON); - } - } catch (_) { - return {}; - } - return redact(x); -}; -var format = (x) => JSON.stringify(x, null, 2); -var BaseProto = { - toJSON() { - return toJSON(this); - }, - [NodeInspectSymbol]() { - return this.toJSON(); - }, - toString() { - return format(this.toJSON()); - } -}; -var Class = class { - /** - * @since 2.0.0 - */ - [NodeInspectSymbol]() { - return this.toJSON(); - } - /** - * @since 2.0.0 - */ - toString() { - return format(this.toJSON()); - } -}; -var toStringUnknown = (u, whitespace = 2) => { - if (typeof u === "string") { - return u; - } - try { - return typeof u === "object" ? stringifyCircular(u, whitespace) : String(u); - } catch (_) { - return String(u); - } -}; -var stringifyCircular = (obj, whitespace) => { - let cache = []; - const retVal = JSON.stringify(obj, (_key, value) => typeof value === "object" && value !== null ? cache.includes(value) ? void 0 : cache.push(value) && (redactableState.fiberRefs !== void 0 && isRedactable(value) ? value[symbolRedactable](redactableState.fiberRefs) : value) : value, whitespace); - cache = void 0; - return retVal; -}; -var symbolRedactable = /* @__PURE__ */ Symbol.for("effect/Inspectable/Redactable"); -var isRedactable = (u) => typeof u === "object" && u !== null && symbolRedactable in u; -var redactableState = /* @__PURE__ */ globalValue("effect/Inspectable/redactableState", () => ({ - fiberRefs: void 0 -})); -var redact = (u) => { - if (isRedactable(u) && redactableState.fiberRefs !== void 0) { - return u[symbolRedactable](redactableState.fiberRefs); - } - return u; -}; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/Pipeable.js -var pipeArguments = (self2, args2) => { - switch (args2.length) { - case 0: - return self2; - case 1: - return args2[0](self2); - case 2: - return args2[1](args2[0](self2)); - case 3: - return args2[2](args2[1](args2[0](self2))); - case 4: - return args2[3](args2[2](args2[1](args2[0](self2)))); - case 5: - return args2[4](args2[3](args2[2](args2[1](args2[0](self2))))); - case 6: - return args2[5](args2[4](args2[3](args2[2](args2[1](args2[0](self2)))))); - case 7: - return args2[6](args2[5](args2[4](args2[3](args2[2](args2[1](args2[0](self2))))))); - case 8: - return args2[7](args2[6](args2[5](args2[4](args2[3](args2[2](args2[1](args2[0](self2)))))))); - case 9: - return args2[8](args2[7](args2[6](args2[5](args2[4](args2[3](args2[2](args2[1](args2[0](self2))))))))); - default: { - let ret = self2; - for (let i = 0, len = args2.length; i < len; i++) { - ret = args2[i](ret); - } - return ret; - } - } -}; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/opCodes/effect.js -var OP_COMMIT = "Commit"; -var OP_FAILURE = "Failure"; -var OP_WITH_RUNTIME = "WithRuntime"; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/effectable.js -var EffectTypeId = /* @__PURE__ */ Symbol.for("effect/Effect"); -var StreamTypeId = /* @__PURE__ */ Symbol.for("effect/Stream"); -var SinkTypeId = /* @__PURE__ */ Symbol.for("effect/Sink"); -var ChannelTypeId = /* @__PURE__ */ Symbol.for("effect/Channel"); -var effectVariance = { - /* c8 ignore next */ - _R: (_) => _, - /* c8 ignore next */ - _E: (_) => _, - /* c8 ignore next */ - _A: (_) => _, - _V: /* @__PURE__ */ getCurrentVersion() -}; -var sinkVariance = { - /* c8 ignore next */ - _A: (_) => _, - /* c8 ignore next */ - _In: (_) => _, - /* c8 ignore next */ - _L: (_) => _, - /* c8 ignore next */ - _E: (_) => _, - /* c8 ignore next */ - _R: (_) => _ -}; -var channelVariance = { - /* c8 ignore next */ - _Env: (_) => _, - /* c8 ignore next */ - _InErr: (_) => _, - /* c8 ignore next */ - _InElem: (_) => _, - /* c8 ignore next */ - _InDone: (_) => _, - /* c8 ignore next */ - _OutErr: (_) => _, - /* c8 ignore next */ - _OutElem: (_) => _, - /* c8 ignore next */ - _OutDone: (_) => _ -}; -var EffectPrototype = { - [EffectTypeId]: effectVariance, - [StreamTypeId]: effectVariance, - [SinkTypeId]: sinkVariance, - [ChannelTypeId]: channelVariance, - [symbol2](that) { - return this === that; - }, - [symbol]() { - return cached(this, random(this)); - }, - [Symbol.iterator]() { - return new SingleShotGen(new YieldWrap(this)); - }, - pipe() { - return pipeArguments(this, arguments); - } -}; -var StructuralPrototype = { - [symbol]() { - return cached(this, structure(this)); - }, - [symbol2](that) { - const selfKeys = Object.keys(this); - const thatKeys = Object.keys(that); - if (selfKeys.length !== thatKeys.length) { - return false; - } - for (const key of selfKeys) { - if (!(key in that && equals(this[key], that[key]))) { - return false; - } - } - return true; - } -}; -var CommitPrototype = { - ...EffectPrototype, - _op: OP_COMMIT -}; -var StructuralCommitPrototype = { - ...CommitPrototype, - ...StructuralPrototype -}; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/option.js -var TypeId = /* @__PURE__ */ Symbol.for("effect/Option"); -var CommonProto = { - ...EffectPrototype, - [TypeId]: { - _A: (_) => _ - }, - [NodeInspectSymbol]() { - return this.toJSON(); - }, - toString() { - return format(this.toJSON()); - } -}; -var SomeProto = /* @__PURE__ */ Object.assign(/* @__PURE__ */ Object.create(CommonProto), { - _tag: "Some", - _op: "Some", - [symbol2](that) { - return isOption(that) && isSome(that) && equals(this.value, that.value); - }, - [symbol]() { - return cached(this, combine(hash(this._tag))(hash(this.value))); - }, - toJSON() { - return { - _id: "Option", - _tag: this._tag, - value: toJSON(this.value) - }; - } -}); -var NoneHash = /* @__PURE__ */ hash("None"); -var NoneProto = /* @__PURE__ */ Object.assign(/* @__PURE__ */ Object.create(CommonProto), { - _tag: "None", - _op: "None", - [symbol2](that) { - return isOption(that) && isNone(that); - }, - [symbol]() { - return NoneHash; - }, - toJSON() { - return { - _id: "Option", - _tag: this._tag - }; - } -}); -var isOption = (input) => hasProperty(input, TypeId); -var isNone = (fa) => fa._tag === "None"; -var isSome = (fa) => fa._tag === "Some"; -var none = /* @__PURE__ */ Object.create(NoneProto); -var some = (value) => { - const a = Object.create(SomeProto); - a.value = value; - return a; -}; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/either.js -var TypeId2 = /* @__PURE__ */ Symbol.for("effect/Either"); -var CommonProto2 = { - ...EffectPrototype, - [TypeId2]: { - _R: (_) => _ - }, - [NodeInspectSymbol]() { - return this.toJSON(); - }, - toString() { - return format(this.toJSON()); - } -}; -var RightProto = /* @__PURE__ */ Object.assign(/* @__PURE__ */ Object.create(CommonProto2), { - _tag: "Right", - _op: "Right", - [symbol2](that) { - return isEither(that) && isRight(that) && equals(this.right, that.right); - }, - [symbol]() { - return combine(hash(this._tag))(hash(this.right)); - }, - toJSON() { - return { - _id: "Either", - _tag: this._tag, - right: toJSON(this.right) - }; - } -}); -var LeftProto = /* @__PURE__ */ Object.assign(/* @__PURE__ */ Object.create(CommonProto2), { - _tag: "Left", - _op: "Left", - [symbol2](that) { - return isEither(that) && isLeft(that) && equals(this.left, that.left); - }, - [symbol]() { - return combine(hash(this._tag))(hash(this.left)); - }, - toJSON() { - return { - _id: "Either", - _tag: this._tag, - left: toJSON(this.left) - }; - } -}); -var isEither = (input) => hasProperty(input, TypeId2); -var isLeft = (ma) => ma._tag === "Left"; -var isRight = (ma) => ma._tag === "Right"; -var left = (left3) => { - const a = Object.create(LeftProto); - a.left = left3; - return a; -}; -var right = (right3) => { - const a = Object.create(RightProto); - a.right = right3; - return a; -}; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/Either.js -var right2 = right; -var left2 = left; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/Option.js -var none2 = () => none; -var some2 = some; -var isNone2 = isNone; -var isSome2 = isSome; -var getOrElse = /* @__PURE__ */ dual(2, (self2, onNone) => isNone2(self2) ? onNone() : self2.value); -var getOrUndefined = /* @__PURE__ */ getOrElse(constUndefined); - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/Array.js -var fromIterable = (collection) => Array.isArray(collection) ? collection : Array.from(collection); -var isArray = Array.isArray; -var reverse = (self2) => Array.from(self2).reverse(); -var reduce = /* @__PURE__ */ dual(3, (self2, b, f) => fromIterable(self2).reduce((b2, a, i) => f(b2, a, i), b)); - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/context.js -var TagTypeId = /* @__PURE__ */ Symbol.for("effect/Context/Tag"); -var ReferenceTypeId = /* @__PURE__ */ Symbol.for("effect/Context/Reference"); -var STMSymbolKey = "effect/STM"; -var STMTypeId = /* @__PURE__ */ Symbol.for(STMSymbolKey); -var TagProto = { - ...EffectPrototype, - _op: "Tag", - [STMTypeId]: effectVariance, - [TagTypeId]: { - _Service: (_) => _, - _Identifier: (_) => _ - }, - toString() { - return format(this.toJSON()); - }, - toJSON() { - return { - _id: "Tag", - key: this.key, - stack: this.stack - }; - }, - [NodeInspectSymbol]() { - return this.toJSON(); - }, - of(self2) { - return self2; - }, - context(self2) { - return make2(this, self2); - } -}; -var ReferenceProto = { - ...TagProto, - [ReferenceTypeId]: ReferenceTypeId -}; -var Tag = (id) => () => { - const limit = Error.stackTraceLimit; - Error.stackTraceLimit = 2; - const creationError = new Error(); - Error.stackTraceLimit = limit; - function TagClass() { - } - Object.setPrototypeOf(TagClass, TagProto); - TagClass.key = id; - Object.defineProperty(TagClass, "stack", { - get() { - return creationError.stack; - } - }); - return TagClass; -}; -var Reference = () => (id, options) => { - const limit = Error.stackTraceLimit; - Error.stackTraceLimit = 2; - const creationError = new Error(); - Error.stackTraceLimit = limit; - function ReferenceClass() { - } - Object.setPrototypeOf(ReferenceClass, ReferenceProto); - ReferenceClass.key = id; - ReferenceClass.defaultValue = options.defaultValue; - Object.defineProperty(ReferenceClass, "stack", { - get() { - return creationError.stack; - } - }); - return ReferenceClass; -}; -var TypeId3 = /* @__PURE__ */ Symbol.for("effect/Context"); -var ContextProto = { - [TypeId3]: { - _Services: (_) => _ - }, - [symbol2](that) { - if (isContext(that)) { - if (this.unsafeMap.size === that.unsafeMap.size) { - for (const k of this.unsafeMap.keys()) { - if (!that.unsafeMap.has(k) || !equals(this.unsafeMap.get(k), that.unsafeMap.get(k))) { - return false; - } - } - return true; - } - } - return false; - }, - [symbol]() { - return cached(this, number(this.unsafeMap.size)); - }, - pipe() { - return pipeArguments(this, arguments); - }, - toString() { - return format(this.toJSON()); - }, - toJSON() { - return { - _id: "Context", - services: Array.from(this.unsafeMap).map(toJSON) - }; - }, - [NodeInspectSymbol]() { - return this.toJSON(); - } -}; -var makeContext = (unsafeMap) => { - const context = Object.create(ContextProto); - context.unsafeMap = unsafeMap; - return context; -}; -var serviceNotFoundError = (tag) => { - const error = new Error(`Service not found${tag.key ? `: ${String(tag.key)}` : ""}`); - if (tag.stack) { - const lines = tag.stack.split("\n"); - if (lines.length > 2) { - const afterAt = lines[2].match(/at (.*)/); - if (afterAt) { - error.message = error.message + ` (defined at ${afterAt[1]})`; - } - } - } - if (error.stack) { - const lines = error.stack.split("\n"); - lines.splice(1, 3); - error.stack = lines.join("\n"); - } - return error; -}; -var isContext = (u) => hasProperty(u, TypeId3); -var make2 = (tag, service2) => makeContext(/* @__PURE__ */ new Map([[tag.key, service2]])); -var add = /* @__PURE__ */ dual(3, (self2, tag, service2) => { - const map7 = new Map(self2.unsafeMap); - map7.set(tag.key, service2); - return makeContext(map7); -}); -var defaultValueCache = /* @__PURE__ */ globalValue("effect/Context/defaultValueCache", () => /* @__PURE__ */ new Map()); -var getDefaultValue = (tag) => { - if (defaultValueCache.has(tag.key)) { - return defaultValueCache.get(tag.key); - } - const value = tag.defaultValue(); - defaultValueCache.set(tag.key, value); - return value; -}; -var unsafeGetReference = (self2, tag) => { - return self2.unsafeMap.has(tag.key) ? self2.unsafeMap.get(tag.key) : getDefaultValue(tag); -}; -var unsafeGet = /* @__PURE__ */ dual(2, (self2, tag) => { - if (!self2.unsafeMap.has(tag.key)) { - if (ReferenceTypeId in tag) return getDefaultValue(tag); - throw serviceNotFoundError(tag); - } - return self2.unsafeMap.get(tag.key); -}); - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/Context.js -var add2 = add; -var unsafeGet2 = unsafeGet; -var Tag2 = Tag; -var Reference2 = Reference; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/Effectable.js -var EffectPrototype2 = EffectPrototype; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/Micro.js -var TypeId4 = /* @__PURE__ */ Symbol.for("effect/Micro"); -var MicroExitTypeId = /* @__PURE__ */ Symbol.for("effect/Micro/MicroExit"); -var isMicro = (u) => typeof u === "object" && u !== null && TypeId4 in u; -var MicroCauseTypeId = /* @__PURE__ */ Symbol.for("effect/Micro/MicroCause"); -var microCauseVariance = { - _E: identity -}; -var MicroCauseImpl = class extends globalThis.Error { - _tag; - traces; - [MicroCauseTypeId]; - constructor(_tag, originalError, traces) { - const causeName = `MicroCause.${_tag}`; - let name; - let message; - let stack; - if (originalError instanceof globalThis.Error) { - name = `(${causeName}) ${originalError.name}`; - message = originalError.message; - const messageLines = message.split("\n").length; - stack = originalError.stack ? `(${causeName}) ${originalError.stack.split("\n").slice(0, messageLines + 3).join("\n")}` : `${name}: ${message}`; - } else { - name = causeName; - message = toStringUnknown(originalError, 0); - stack = `${name}: ${message}`; - } - if (traces.length > 0) { - stack += ` - ${traces.join("\n ")}`; - } - super(message); - this._tag = _tag; - this.traces = traces; - this[MicroCauseTypeId] = microCauseVariance; - this.name = name; - this.stack = stack; - } - pipe() { - return pipeArguments(this, arguments); - } - toString() { - return this.stack; - } - [NodeInspectSymbol]() { - return this.stack; - } -}; -var Fail = class extends MicroCauseImpl { - error; - constructor(error, traces = []) { - super("Fail", error, traces); - this.error = error; - } -}; -var causeFail = (error, traces = []) => new Fail(error, traces); -var Die = class extends MicroCauseImpl { - defect; - constructor(defect, traces = []) { - super("Die", defect, traces); - this.defect = defect; - } -}; -var causeDie = (defect, traces = []) => new Die(defect, traces); -var Interrupt = class extends MicroCauseImpl { - constructor(traces = []) { - super("Interrupt", "interrupted", traces); - } -}; -var causeInterrupt = (traces = []) => new Interrupt(traces); -var causeIsFail = (self2) => self2._tag === "Fail"; -var causeIsInterrupt = (self2) => self2._tag === "Interrupt"; -var MicroFiberTypeId = /* @__PURE__ */ Symbol.for("effect/Micro/MicroFiber"); -var fiberVariance = { - _A: identity, - _E: identity -}; -var MicroFiberImpl = class { - context; - interruptible; - [MicroFiberTypeId]; - _stack = []; - _observers = []; - _exit; - _children; - currentOpCount = 0; - constructor(context, interruptible2 = true) { - this.context = context; - this.interruptible = interruptible2; - this[MicroFiberTypeId] = fiberVariance; - } - getRef(ref) { - return unsafeGetReference(this.context, ref); - } - addObserver(cb) { - if (this._exit) { - cb(this._exit); - return constVoid; - } - this._observers.push(cb); - return () => { - const index = this._observers.indexOf(cb); - if (index >= 0) { - this._observers.splice(index, 1); - } - }; - } - _interrupted = false; - unsafeInterrupt() { - if (this._exit) { - return; - } - this._interrupted = true; - if (this.interruptible) { - this.evaluate(exitInterrupt); - } - } - unsafePoll() { - return this._exit; - } - evaluate(effect) { - if (this._exit) { - return; - } else if (this._yielded !== void 0) { - const yielded = this._yielded; - this._yielded = void 0; - yielded(); - } - const exit2 = this.runLoop(effect); - if (exit2 === Yield) { - return; - } - const interruptChildren = fiberMiddleware.interruptChildren && fiberMiddleware.interruptChildren(this); - if (interruptChildren !== void 0) { - return this.evaluate(flatMap(interruptChildren, () => exit2)); - } - this._exit = exit2; - for (let i = 0; i < this._observers.length; i++) { - this._observers[i](exit2); - } - this._observers.length = 0; - } - runLoop(effect) { - let yielding = false; - let current = effect; - this.currentOpCount = 0; - try { - while (true) { - this.currentOpCount++; - if (!yielding && this.getRef(CurrentScheduler).shouldYield(this)) { - yielding = true; - const prev = current; - current = flatMap(yieldNow, () => prev); - } - current = current[evaluate](this); - if (current === Yield) { - const yielded = this._yielded; - if (MicroExitTypeId in yielded) { - this._yielded = void 0; - return yielded; - } - return Yield; - } - } - } catch (error) { - if (!hasProperty(current, evaluate)) { - return exitDie(`MicroFiber.runLoop: Not a valid effect: ${String(current)}`); - } - return exitDie(error); - } - } - getCont(symbol3) { - while (true) { - const op = this._stack.pop(); - if (!op) return void 0; - const cont = op[ensureCont] && op[ensureCont](this); - if (cont) return { - [symbol3]: cont - }; - if (op[symbol3]) return op; - } - } - // cancel the yielded operation, or for the yielded exit value - _yielded = void 0; - yieldWith(value) { - this._yielded = value; - return Yield; - } - children() { - return this._children ??= /* @__PURE__ */ new Set(); - } -}; -var fiberMiddleware = /* @__PURE__ */ globalValue("effect/Micro/fiberMiddleware", () => ({ - interruptChildren: void 0 -})); -var fiberAwait = (self2) => async((resume) => sync(self2.addObserver((exit2) => resume(succeed(exit2))))); -var fiberInterrupt = (self2) => suspend(() => { - self2.unsafeInterrupt(); - return asVoid(fiberAwait(self2)); -}); -var fiberInterruptAll = (fibers) => suspend(() => { - for (const fiber of fibers) fiber.unsafeInterrupt(); - const iter = fibers[Symbol.iterator](); - const wait = suspend(() => { - let result = iter.next(); - while (!result.done) { - if (result.value.unsafePoll()) { - result = iter.next(); - continue; - } - const fiber = result.value; - return async((resume) => { - fiber.addObserver((_) => { - resume(wait); - }); - }); - } - return exitVoid; - }); - return wait; -}); -var identifier = /* @__PURE__ */ Symbol.for("effect/Micro/identifier"); -var args = /* @__PURE__ */ Symbol.for("effect/Micro/args"); -var evaluate = /* @__PURE__ */ Symbol.for("effect/Micro/evaluate"); -var successCont = /* @__PURE__ */ Symbol.for("effect/Micro/successCont"); -var failureCont = /* @__PURE__ */ Symbol.for("effect/Micro/failureCont"); -var ensureCont = /* @__PURE__ */ Symbol.for("effect/Micro/ensureCont"); -var Yield = /* @__PURE__ */ Symbol.for("effect/Micro/Yield"); -var microVariance = { - _A: identity, - _E: identity, - _R: identity -}; -var MicroProto = { - ...EffectPrototype2, - _op: "Micro", - [TypeId4]: microVariance, - pipe() { - return pipeArguments(this, arguments); - }, - [Symbol.iterator]() { - return new SingleShotGen(new YieldWrap(this)); - }, - toJSON() { - return { - _id: "Micro", - op: this[identifier], - ...args in this ? { - args: this[args] - } : void 0 - }; - }, - toString() { - return format(this); - }, - [NodeInspectSymbol]() { - return format(this); - } -}; -function defaultEvaluate(_fiber) { - return exitDie(`Micro.evaluate: Not implemented`); -} -var makePrimitiveProto = (options) => ({ - ...MicroProto, - [identifier]: options.op, - [evaluate]: options.eval ?? defaultEvaluate, - [successCont]: options.contA, - [failureCont]: options.contE, - [ensureCont]: options.ensure -}); -var makePrimitive = (options) => { - const Proto = makePrimitiveProto(options); - return function() { - const self2 = Object.create(Proto); - self2[args] = options.single === false ? arguments : arguments[0]; - return self2; - }; -}; -var makeExit = (options) => { - const Proto = { - ...makePrimitiveProto(options), - [MicroExitTypeId]: MicroExitTypeId, - _tag: options.op, - get [options.prop]() { - return this[args]; - }, - toJSON() { - return { - _id: "MicroExit", - _tag: options.op, - [options.prop]: this[args] - }; - }, - [symbol2](that) { - return isMicroExit(that) && that._tag === options.op && equals(this[args], that[args]); - }, - [symbol]() { - return cached(this, combine(string(options.op))(hash(this[args]))); - } - }; - return function(value) { - const self2 = Object.create(Proto); - self2[args] = value; - self2[successCont] = void 0; - self2[failureCont] = void 0; - self2[ensureCont] = void 0; - return self2; - }; -}; -var succeed = /* @__PURE__ */ makeExit({ - op: "Success", - prop: "value", - eval(fiber) { - const cont = fiber.getCont(successCont); - return cont ? cont[successCont](this[args], fiber) : fiber.yieldWith(this); - } -}); -var failCause = /* @__PURE__ */ makeExit({ - op: "Failure", - prop: "cause", - eval(fiber) { - let cont = fiber.getCont(failureCont); - while (causeIsInterrupt(this[args]) && cont && fiber.interruptible) { - cont = fiber.getCont(failureCont); - } - return cont ? cont[failureCont](this[args], fiber) : fiber.yieldWith(this); - } -}); -var fail = (error) => failCause(causeFail(error)); -var sync = /* @__PURE__ */ makePrimitive({ - op: "Sync", - eval(fiber) { - const value = this[args](); - const cont = fiber.getCont(successCont); - return cont ? cont[successCont](value, fiber) : fiber.yieldWith(exitSucceed(value)); - } -}); -var suspend = /* @__PURE__ */ makePrimitive({ - op: "Suspend", - eval(_fiber) { - return this[args](); - } -}); -var yieldNowWith = /* @__PURE__ */ makePrimitive({ - op: "Yield", - eval(fiber) { - let resumed = false; - fiber.getRef(CurrentScheduler).scheduleTask(() => { - if (resumed) return; - fiber.evaluate(exitVoid); - }, this[args] ?? 0); - return fiber.yieldWith(() => { - resumed = true; - }); - } -}); -var yieldNow = /* @__PURE__ */ yieldNowWith(0); -var void_ = /* @__PURE__ */ succeed(void 0); -var tryPromise = (options) => asyncOptions(function(resume, signal) { - try { - options.try(signal).then((a) => resume(succeed(a)), (e) => resume(fail(options.catch(e)))); - } catch (err) { - resume(fail(options.catch(err))); - } -}, options.try.length !== 0); -var withMicroFiber = /* @__PURE__ */ makePrimitive({ - op: "WithMicroFiber", - eval(fiber) { - return this[args](fiber); - } -}); -var asyncOptions = /* @__PURE__ */ makePrimitive({ - op: "Async", - single: false, - eval(fiber) { - const register = this[args][0]; - let resumed = false; - let yielded = false; - const controller = this[args][1] ? new AbortController() : void 0; - const onCancel = register((effect) => { - if (resumed) return; - resumed = true; - if (yielded) { - fiber.evaluate(effect); - } else { - yielded = effect; - } - }, controller?.signal); - if (yielded !== false) return yielded; - yielded = true; - fiber._yielded = () => { - resumed = true; - }; - if (controller === void 0 && onCancel === void 0) { - return Yield; - } - fiber._stack.push(asyncFinalizer(() => { - resumed = true; - controller?.abort(); - return onCancel ?? exitVoid; - })); - return Yield; - } -}); -var asyncFinalizer = /* @__PURE__ */ makePrimitive({ - op: "AsyncFinalizer", - ensure(fiber) { - if (fiber.interruptible) { - fiber.interruptible = false; - fiber._stack.push(setInterruptible(true)); - } - }, - contE(cause, _fiber) { - return causeIsInterrupt(cause) ? flatMap(this[args](), () => failCause(cause)) : failCause(cause); - } -}); -var async = (register) => asyncOptions(register, register.length >= 2); -var gen = (...args2) => suspend(() => fromIterator(args2.length === 1 ? args2[0]() : args2[1].call(args2[0]))); -var fromIterator = /* @__PURE__ */ makePrimitive({ - op: "Iterator", - contA(value, fiber) { - const state = this[args].next(value); - if (state.done) return succeed(state.value); - fiber._stack.push(this); - return yieldWrapGet(state.value); - }, - eval(fiber) { - return this[successCont](void 0, fiber); - } -}); -var as = /* @__PURE__ */ dual(2, (self2, value) => map2(self2, (_) => value)); -var andThen = /* @__PURE__ */ dual(2, (self2, f) => flatMap(self2, (a) => { - const value = isMicro(f) ? f : typeof f === "function" ? f(a) : f; - return isMicro(value) ? value : succeed(value); -})); -var tap = /* @__PURE__ */ dual(2, (self2, f) => flatMap(self2, (a) => { - const value = isMicro(f) ? f : typeof f === "function" ? f(a) : f; - return isMicro(value) ? as(value, a) : succeed(a); -})); -var asVoid = (self2) => flatMap(self2, (_) => exitVoid); -var exit = (self2) => matchCause(self2, { - onFailure: exitFailCause, - onSuccess: exitSucceed -}); -var flatMap = /* @__PURE__ */ dual(2, (self2, f) => { - const onSuccess = Object.create(OnSuccessProto); - onSuccess[args] = self2; - onSuccess[successCont] = f; - return onSuccess; -}); -var OnSuccessProto = /* @__PURE__ */ makePrimitiveProto({ - op: "OnSuccess", - eval(fiber) { - fiber._stack.push(this); - return this[args]; - } -}); -var map2 = /* @__PURE__ */ dual(2, (self2, f) => flatMap(self2, (a) => succeed(f(a)))); -var isMicroExit = (u) => hasProperty(u, MicroExitTypeId); -var exitSucceed = succeed; -var exitFailCause = failCause; -var exitInterrupt = /* @__PURE__ */ exitFailCause(/* @__PURE__ */ causeInterrupt()); -var exitDie = (defect) => exitFailCause(causeDie(defect)); -var exitVoid = /* @__PURE__ */ exitSucceed(void 0); -var exitVoidAll = (exits) => { - for (const exit2 of exits) { - if (exit2._tag === "Failure") { - return exit2; - } - } - return exitVoid; -}; -var setImmediate = "setImmediate" in globalThis ? globalThis.setImmediate : (f) => setTimeout(f, 0); -var MicroSchedulerDefault = class { - tasks = []; - running = false; - /** - * @since 3.5.9 - */ - scheduleTask(task, _priority) { - this.tasks.push(task); - if (!this.running) { - this.running = true; - setImmediate(this.afterScheduled); - } - } - /** - * @since 3.5.9 - */ - afterScheduled = () => { - this.running = false; - this.runTasks(); - }; - /** - * @since 3.5.9 - */ - runTasks() { - const tasks = this.tasks; - this.tasks = []; - for (let i = 0, len = tasks.length; i < len; i++) { - tasks[i](); - } - } - /** - * @since 3.5.9 - */ - shouldYield(fiber) { - return fiber.currentOpCount >= fiber.getRef(MaxOpsBeforeYield); - } - /** - * @since 3.5.9 - */ - flush() { - while (this.tasks.length > 0) { - this.runTasks(); - } - } -}; -var service = (tag) => withMicroFiber((fiber) => succeed(unsafeGet2(fiber.context, tag))); -var updateContext = /* @__PURE__ */ dual(2, (self2, f) => withMicroFiber((fiber) => { - const prev = fiber.context; - fiber.context = f(prev); - return onExit(self2, () => { - fiber.context = prev; - return void_; - }); -})); -var provideService = /* @__PURE__ */ dual(3, (self2, tag, service2) => updateContext(self2, add2(tag, service2))); -var provideServiceEffect = /* @__PURE__ */ dual(3, (self2, tag, acquire) => flatMap(acquire, (service2) => provideService(self2, tag, service2))); -var MaxOpsBeforeYield = class extends (/* @__PURE__ */ Reference2()("effect/Micro/currentMaxOpsBeforeYield", { - defaultValue: () => 2048 -})) { -}; -var CurrentConcurrency = class extends (/* @__PURE__ */ Reference2()("effect/Micro/currentConcurrency", { - defaultValue: () => "unbounded" -})) { -}; -var CurrentScheduler = class extends (/* @__PURE__ */ Reference2()("effect/Micro/currentScheduler", { - defaultValue: () => new MicroSchedulerDefault() -})) { -}; -var repeatExit = /* @__PURE__ */ dual(2, (self2, options) => suspend(() => { - const startedAt = options.schedule ? Date.now() : 0; - let attempt = 0; - const loop = flatMap(exit(self2), (exit2) => { - if (options.while !== void 0 && !options.while(exit2)) { - return exit2; - } else if (options.times !== void 0 && attempt >= options.times) { - return exit2; - } - attempt++; - let delayEffect = yieldNow; - if (options.schedule !== void 0) { - const elapsed = Date.now() - startedAt; - const duration = options.schedule(attempt, elapsed); - if (isNone2(duration)) { - return exit2; - } - delayEffect = sleep(duration.value); - } - return flatMap(delayEffect, () => loop); - }); - return loop; -})); -var repeat = /* @__PURE__ */ dual((args2) => isMicro(args2[0]), (self2, options) => repeatExit(self2, { - ...options, - while: (exit2) => exit2._tag === "Success" && (options?.while === void 0 || options.while(exit2.value)) -})); -var catchAllCause = /* @__PURE__ */ dual(2, (self2, f) => { - const onFailure = Object.create(OnFailureProto); - onFailure[args] = self2; - onFailure[failureCont] = f; - return onFailure; -}); -var OnFailureProto = /* @__PURE__ */ makePrimitiveProto({ - op: "OnFailure", - eval(fiber) { - fiber._stack.push(this); - return this[args]; - } -}); -var catchCauseIf = /* @__PURE__ */ dual(3, (self2, predicate, f) => catchAllCause(self2, (cause) => predicate(cause) ? f(cause) : failCause(cause))); -var tapErrorCauseIf = /* @__PURE__ */ dual(3, (self2, refinement, f) => catchCauseIf(self2, refinement, (cause) => andThen(f(cause), failCause(cause)))); -var tapError = /* @__PURE__ */ dual(2, (self2, f) => tapErrorCauseIf(self2, causeIsFail, (fail4) => f(fail4.error))); -var matchCauseEffect = /* @__PURE__ */ dual(2, (self2, options) => { - const primitive = Object.create(OnSuccessAndFailureProto); - primitive[args] = self2; - primitive[successCont] = options.onSuccess; - primitive[failureCont] = options.onFailure; - return primitive; -}); -var OnSuccessAndFailureProto = /* @__PURE__ */ makePrimitiveProto({ - op: "OnSuccessAndFailure", - eval(fiber) { - fiber._stack.push(this); - return this[args]; - } -}); -var matchCause = /* @__PURE__ */ dual(2, (self2, options) => matchCauseEffect(self2, { - onFailure: (cause) => sync(() => options.onFailure(cause)), - onSuccess: (value) => sync(() => options.onSuccess(value)) -})); -var sleep = (millis) => async((resume) => { - const timeout = setTimeout(() => { - resume(void_); - }, millis); - return sync(() => { - clearTimeout(timeout); - }); -}); -var delay = /* @__PURE__ */ dual(2, (self2, millis) => andThen(sleep(millis), self2)); -var MicroScopeTypeId = /* @__PURE__ */ Symbol.for("effect/Micro/MicroScope"); -var MicroScopeImpl = class _MicroScopeImpl { - [MicroScopeTypeId]; - state = { - _tag: "Open", - finalizers: /* @__PURE__ */ new Set() - }; - constructor() { - this[MicroScopeTypeId] = MicroScopeTypeId; - } - unsafeAddFinalizer(finalizer) { - if (this.state._tag === "Open") { - this.state.finalizers.add(finalizer); - } - } - addFinalizer(finalizer) { - return suspend(() => { - if (this.state._tag === "Open") { - this.state.finalizers.add(finalizer); - return void_; - } - return finalizer(this.state.exit); - }); - } - unsafeRemoveFinalizer(finalizer) { - if (this.state._tag === "Open") { - this.state.finalizers.delete(finalizer); - } - } - close(microExit) { - return suspend(() => { - if (this.state._tag === "Open") { - const finalizers = Array.from(this.state.finalizers).reverse(); - this.state = { - _tag: "Closed", - exit: microExit - }; - return flatMap(forEach(finalizers, (finalizer) => exit(finalizer(microExit))), exitVoidAll); - } - return void_; - }); - } - get fork() { - return sync(() => { - const newScope = new _MicroScopeImpl(); - if (this.state._tag === "Closed") { - newScope.state = this.state; - return newScope; - } - function fin(exit2) { - return newScope.close(exit2); - } - this.state.finalizers.add(fin); - newScope.unsafeAddFinalizer((_) => sync(() => this.unsafeRemoveFinalizer(fin))); - return newScope; - }); - } -}; -var onExit = /* @__PURE__ */ dual(2, (self2, f) => uninterruptibleMask((restore) => matchCauseEffect(restore(self2), { - onFailure: (cause) => flatMap(f(exitFailCause(cause)), () => failCause(cause)), - onSuccess: (a) => flatMap(f(exitSucceed(a)), () => succeed(a)) -}))); -var setInterruptible = /* @__PURE__ */ makePrimitive({ - op: "SetInterruptible", - ensure(fiber) { - fiber.interruptible = this[args]; - if (fiber._interrupted && fiber.interruptible) { - return () => exitInterrupt; - } - } -}); -var interruptible = (self2) => withMicroFiber((fiber) => { - if (fiber.interruptible) return self2; - fiber.interruptible = true; - fiber._stack.push(setInterruptible(false)); - if (fiber._interrupted) return exitInterrupt; - return self2; -}); -var uninterruptibleMask = (f) => withMicroFiber((fiber) => { - if (!fiber.interruptible) return f(identity); - fiber.interruptible = false; - fiber._stack.push(setInterruptible(true)); - return f(interruptible); -}); -var whileLoop = /* @__PURE__ */ makePrimitive({ - op: "While", - contA(value, fiber) { - this[args].step(value); - if (this[args].while()) { - fiber._stack.push(this); - return this[args].body(); - } - return exitVoid; - }, - eval(fiber) { - if (this[args].while()) { - fiber._stack.push(this); - return this[args].body(); - } - return exitVoid; - } -}); -var forEach = (iterable, f, options) => withMicroFiber((parent) => { - const concurrencyOption = options?.concurrency === "inherit" ? parent.getRef(CurrentConcurrency) : options?.concurrency ?? 1; - const concurrency = concurrencyOption === "unbounded" ? Number.POSITIVE_INFINITY : Math.max(1, concurrencyOption); - const items = fromIterable(iterable); - let length = items.length; - if (length === 0) { - return options?.discard ? void_ : succeed([]); - } - const out = options?.discard ? void 0 : new Array(length); - let index = 0; - if (concurrency === 1) { - return as(whileLoop({ - while: () => index < items.length, - body: () => f(items[index], index), - step: out ? (b) => out[index++] = b : (_) => index++ - }), out); - } - return async((resume) => { - const fibers = /* @__PURE__ */ new Set(); - let result = void 0; - let inProgress = 0; - let doneCount = 0; - let pumping = false; - let interrupted = false; - function pump() { - pumping = true; - while (inProgress < concurrency && index < length) { - const currentIndex = index; - const item = items[currentIndex]; - index++; - inProgress++; - try { - const child = unsafeFork(parent, f(item, currentIndex), true, true); - fibers.add(child); - child.addObserver((exit2) => { - fibers.delete(child); - if (interrupted) { - return; - } else if (exit2._tag === "Failure") { - if (result === void 0) { - result = exit2; - length = index; - fibers.forEach((fiber) => fiber.unsafeInterrupt()); - } - } else if (out !== void 0) { - out[currentIndex] = exit2.value; - } - doneCount++; - inProgress--; - if (doneCount === length) { - resume(result ?? succeed(out)); - } else if (!pumping && inProgress < concurrency) { - pump(); - } - }); - } catch (err) { - result = exitDie(err); - length = index; - fibers.forEach((fiber) => fiber.unsafeInterrupt()); - } - } - pumping = false; - } - pump(); - return suspend(() => { - interrupted = true; - index = length; - return fiberInterruptAll(fibers); - }); - }); -}); -var unsafeFork = (parent, effect, immediate = false, daemon = false) => { - const child = new MicroFiberImpl(parent.context, parent.interruptible); - if (!daemon) { - parent.children().add(child); - child.addObserver(() => parent.children().delete(child)); - } - if (immediate) { - child.evaluate(effect); - } else { - parent.getRef(CurrentScheduler).scheduleTask(() => child.evaluate(effect), 0); - } - return child; -}; -var forkDaemon = (self2) => withMicroFiber((fiber) => succeed(unsafeFork(fiber, self2, false, true))); -var runFork = (effect, options) => { - const fiber = new MicroFiberImpl(CurrentScheduler.context(options?.scheduler ?? new MicroSchedulerDefault())); - fiber.evaluate(effect); - if (options?.signal) { - if (options.signal.aborted) { - fiber.unsafeInterrupt(); - } else { - const abort = () => fiber.unsafeInterrupt(); - options.signal.addEventListener("abort", abort, { - once: true - }); - fiber.addObserver(() => options.signal.removeEventListener("abort", abort)); - } - } - return fiber; -}; -var runPromiseExit = (effect, options) => new Promise((resolve, _reject) => { - const handle = runFork(effect, options); - handle.addObserver(resolve); -}); -var runPromise = (effect, options) => runPromiseExit(effect, options).then((exit2) => { - if (exit2._tag === "Failure") { - throw exit2.cause; - } - return exit2.value; -}); - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/String.js -var snakeToCamel = (self2) => { - let str = self2[0]; - for (let i = 1; i < self2.length; i++) { - str += self2[i] === "_" ? self2[++i].toUpperCase() : self2[i]; - } - return str; -}; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/Chunk.js -var TypeId5 = /* @__PURE__ */ Symbol.for("effect/Chunk"); -function copy(src, srcPos, dest, destPos, len) { - for (let i = srcPos; i < Math.min(src.length, srcPos + len); i++) { - dest[destPos + i - srcPos] = src[i]; - } - return dest; -} -var emptyArray = []; -var getEquivalence = (isEquivalent) => make((self2, that) => self2.length === that.length && toReadonlyArray(self2).every((value, i) => isEquivalent(value, unsafeGet3(that, i)))); -var _equivalence = /* @__PURE__ */ getEquivalence(equals); -var ChunkProto = { - [TypeId5]: { - _A: (_) => _ - }, - toString() { - return format(this.toJSON()); - }, - toJSON() { - return { - _id: "Chunk", - values: toReadonlyArray(this).map(toJSON) - }; - }, - [NodeInspectSymbol]() { - return this.toJSON(); - }, - [symbol2](that) { - return isChunk(that) && _equivalence(this, that); - }, - [symbol]() { - return cached(this, array(toReadonlyArray(this))); - }, - [Symbol.iterator]() { - switch (this.backing._tag) { - case "IArray": { - return this.backing.array[Symbol.iterator](); - } - case "IEmpty": { - return emptyArray[Symbol.iterator](); - } - default: { - return toReadonlyArray(this)[Symbol.iterator](); - } - } - }, - pipe() { - return pipeArguments(this, arguments); - } -}; -var makeChunk = (backing) => { - const chunk = Object.create(ChunkProto); - chunk.backing = backing; - switch (backing._tag) { - case "IEmpty": { - chunk.length = 0; - chunk.depth = 0; - chunk.left = chunk; - chunk.right = chunk; - break; - } - case "IConcat": { - chunk.length = backing.left.length + backing.right.length; - chunk.depth = 1 + Math.max(backing.left.depth, backing.right.depth); - chunk.left = backing.left; - chunk.right = backing.right; - break; - } - case "IArray": { - chunk.length = backing.array.length; - chunk.depth = 0; - chunk.left = _empty; - chunk.right = _empty; - break; - } - case "ISingleton": { - chunk.length = 1; - chunk.depth = 0; - chunk.left = _empty; - chunk.right = _empty; - break; - } - case "ISlice": { - chunk.length = backing.length; - chunk.depth = backing.chunk.depth + 1; - chunk.left = _empty; - chunk.right = _empty; - break; - } - } - return chunk; -}; -var isChunk = (u) => hasProperty(u, TypeId5); -var _empty = /* @__PURE__ */ makeChunk({ - _tag: "IEmpty" -}); -var empty2 = () => _empty; -var make3 = (...as2) => as2.length === 1 ? of(as2[0]) : unsafeFromNonEmptyArray(as2); -var of = (a) => makeChunk({ - _tag: "ISingleton", - a -}); -var fromIterable2 = (self2) => isChunk(self2) ? self2 : makeChunk({ - _tag: "IArray", - array: fromIterable(self2) -}); -var copyToArray = (self2, array2, initial) => { - switch (self2.backing._tag) { - case "IArray": { - copy(self2.backing.array, 0, array2, initial, self2.length); - break; - } - case "IConcat": { - copyToArray(self2.left, array2, initial); - copyToArray(self2.right, array2, initial + self2.left.length); - break; - } - case "ISingleton": { - array2[initial] = self2.backing.a; - break; - } - case "ISlice": { - let i = 0; - let j = initial; - while (i < self2.length) { - array2[j] = unsafeGet3(self2, i); - i += 1; - j += 1; - } - break; - } - } -}; -var toReadonlyArray_ = (self2) => { - switch (self2.backing._tag) { - case "IEmpty": { - return emptyArray; - } - case "IArray": { - return self2.backing.array; - } - default: { - const arr = new Array(self2.length); - copyToArray(self2, arr, 0); - self2.backing = { - _tag: "IArray", - array: arr - }; - self2.left = _empty; - self2.right = _empty; - self2.depth = 0; - return arr; - } - } -}; -var toReadonlyArray = toReadonlyArray_; -var reverseChunk = (self2) => { - switch (self2.backing._tag) { - case "IEmpty": - case "ISingleton": - return self2; - case "IArray": { - return makeChunk({ - _tag: "IArray", - array: reverse(self2.backing.array) - }); - } - case "IConcat": { - return makeChunk({ - _tag: "IConcat", - left: reverse2(self2.backing.right), - right: reverse2(self2.backing.left) - }); - } - case "ISlice": - return unsafeFromArray(reverse(toReadonlyArray(self2))); - } -}; -var reverse2 = reverseChunk; -var unsafeFromArray = (self2) => makeChunk({ - _tag: "IArray", - array: self2 -}); -var unsafeFromNonEmptyArray = (self2) => unsafeFromArray(self2); -var unsafeGet3 = /* @__PURE__ */ dual(2, (self2, index) => { - switch (self2.backing._tag) { - case "IEmpty": { - throw new Error(`Index out of bounds`); - } - case "ISingleton": { - if (index !== 0) { - throw new Error(`Index out of bounds`); - } - return self2.backing.a; - } - case "IArray": { - if (index >= self2.length || index < 0) { - throw new Error(`Index out of bounds`); - } - return self2.backing.array[index]; - } - case "IConcat": { - return index < self2.left.length ? unsafeGet3(self2.left, index) : unsafeGet3(self2.right, index - self2.left.length); - } - case "ISlice": { - return unsafeGet3(self2.backing.chunk, index + self2.backing.offset); - } - } -}); -var prepend = /* @__PURE__ */ dual(2, (self2, elem) => appendAll(of(elem), self2)); -var appendAll = /* @__PURE__ */ dual(2, (self2, that) => { - if (self2.backing._tag === "IEmpty") { - return that; - } - if (that.backing._tag === "IEmpty") { - return self2; - } - const diff = that.depth - self2.depth; - if (Math.abs(diff) <= 1) { - return makeChunk({ - _tag: "IConcat", - left: self2, - right: that - }); - } else if (diff < -1) { - if (self2.left.depth >= self2.right.depth) { - const nr = appendAll(self2.right, that); - return makeChunk({ - _tag: "IConcat", - left: self2.left, - right: nr - }); - } else { - const nrr = appendAll(self2.right.right, that); - if (nrr.depth === self2.depth - 3) { - const nr = makeChunk({ - _tag: "IConcat", - left: self2.right.left, - right: nrr - }); - return makeChunk({ - _tag: "IConcat", - left: self2.left, - right: nr - }); - } else { - const nl = makeChunk({ - _tag: "IConcat", - left: self2.left, - right: self2.right.left - }); - return makeChunk({ - _tag: "IConcat", - left: nl, - right: nrr - }); - } - } - } else { - if (that.right.depth >= that.left.depth) { - const nl = appendAll(self2, that.left); - return makeChunk({ - _tag: "IConcat", - left: nl, - right: that.right - }); - } else { - const nll = appendAll(self2, that.left.left); - if (nll.depth === that.depth - 3) { - const nl = makeChunk({ - _tag: "IConcat", - left: nll, - right: that.left.right - }); - return makeChunk({ - _tag: "IConcat", - left: nl, - right: that.right - }); - } else { - const nr = makeChunk({ - _tag: "IConcat", - left: that.left.right, - right: that.right - }); - return makeChunk({ - _tag: "IConcat", - left: nll, - right: nr - }); - } - } - } -}); -var isEmpty = (self2) => self2.length === 0; -var isNonEmpty = (self2) => self2.length > 0; -var unsafeHead = (self2) => unsafeGet3(self2, 0); -var headNonEmpty = unsafeHead; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/hashMap/config.js -var SIZE = 5; -var BUCKET_SIZE = /* @__PURE__ */ Math.pow(2, SIZE); -var MASK = BUCKET_SIZE - 1; -var MAX_INDEX_NODE = BUCKET_SIZE / 2; -var MIN_ARRAY_NODE = BUCKET_SIZE / 4; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/hashMap/bitwise.js -function popcount(x) { - x -= x >> 1 & 1431655765; - x = (x & 858993459) + (x >> 2 & 858993459); - x = x + (x >> 4) & 252645135; - x += x >> 8; - x += x >> 16; - return x & 127; -} -function hashFragment(shift, h) { - return h >>> shift & MASK; -} -function toBitmap(x) { - return 1 << x; -} -function fromBitmap(bitmap, bit) { - return popcount(bitmap & bit - 1); -} - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/stack.js -var make4 = (value, previous) => ({ - value, - previous -}); - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/hashMap/array.js -function arrayUpdate(mutate2, at, v, arr) { - let out = arr; - if (!mutate2) { - const len = arr.length; - out = new Array(len); - for (let i = 0; i < len; ++i) out[i] = arr[i]; - } - out[at] = v; - return out; -} -function arraySpliceOut(mutate2, at, arr) { - const newLen = arr.length - 1; - let i = 0; - let g = 0; - let out = arr; - if (mutate2) { - i = g = at; - } else { - out = new Array(newLen); - while (i < at) out[g++] = arr[i++]; - } - ; - ++i; - while (i <= newLen) out[g++] = arr[i++]; - if (mutate2) { - out.length = newLen; - } - return out; -} -function arraySpliceIn(mutate2, at, v, arr) { - const len = arr.length; - if (mutate2) { - let i2 = len; - while (i2 >= at) arr[i2--] = arr[i2]; - arr[at] = v; - return arr; - } - let i = 0, g = 0; - const out = new Array(len + 1); - while (i < at) out[g++] = arr[i++]; - out[at] = v; - while (i < len) out[++g] = arr[i++]; - return out; -} - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/hashMap/node.js -var EmptyNode = class _EmptyNode { - _tag = "EmptyNode"; - modify(edit, _shift, f, hash2, key, size4) { - const v = f(none2()); - if (isNone2(v)) return new _EmptyNode(); - ++size4.value; - return new LeafNode(edit, hash2, key, v); - } -}; -function isEmptyNode(a) { - return isTagged(a, "EmptyNode"); -} -function isLeafNode(node) { - return isEmptyNode(node) || node._tag === "LeafNode" || node._tag === "CollisionNode"; -} -function canEditNode(node, edit) { - return isEmptyNode(node) ? false : edit === node.edit; -} -var LeafNode = class _LeafNode { - edit; - hash; - key; - value; - _tag = "LeafNode"; - constructor(edit, hash2, key, value) { - this.edit = edit; - this.hash = hash2; - this.key = key; - this.value = value; - } - modify(edit, shift, f, hash2, key, size4) { - if (equals(key, this.key)) { - const v2 = f(this.value); - if (v2 === this.value) return this; - else if (isNone2(v2)) { - ; - --size4.value; - return new EmptyNode(); - } - if (canEditNode(this, edit)) { - this.value = v2; - return this; - } - return new _LeafNode(edit, hash2, key, v2); - } - const v = f(none2()); - if (isNone2(v)) return this; - ++size4.value; - return mergeLeaves(edit, shift, this.hash, this, hash2, new _LeafNode(edit, hash2, key, v)); - } -}; -var CollisionNode = class _CollisionNode { - edit; - hash; - children; - _tag = "CollisionNode"; - constructor(edit, hash2, children) { - this.edit = edit; - this.hash = hash2; - this.children = children; - } - modify(edit, shift, f, hash2, key, size4) { - if (hash2 === this.hash) { - const canEdit = canEditNode(this, edit); - const list = this.updateCollisionList(canEdit, edit, this.hash, this.children, f, key, size4); - if (list === this.children) return this; - return list.length > 1 ? new _CollisionNode(edit, this.hash, list) : list[0]; - } - const v = f(none2()); - if (isNone2(v)) return this; - ++size4.value; - return mergeLeaves(edit, shift, this.hash, this, hash2, new LeafNode(edit, hash2, key, v)); - } - updateCollisionList(mutate2, edit, hash2, list, f, key, size4) { - const len = list.length; - for (let i = 0; i < len; ++i) { - const child = list[i]; - if ("key" in child && equals(key, child.key)) { - const value = child.value; - const newValue2 = f(value); - if (newValue2 === value) return list; - if (isNone2(newValue2)) { - ; - --size4.value; - return arraySpliceOut(mutate2, i, list); - } - return arrayUpdate(mutate2, i, new LeafNode(edit, hash2, key, newValue2), list); - } - } - const newValue = f(none2()); - if (isNone2(newValue)) return list; - ++size4.value; - return arrayUpdate(mutate2, len, new LeafNode(edit, hash2, key, newValue), list); - } -}; -var IndexedNode = class _IndexedNode { - edit; - mask; - children; - _tag = "IndexedNode"; - constructor(edit, mask, children) { - this.edit = edit; - this.mask = mask; - this.children = children; - } - modify(edit, shift, f, hash2, key, size4) { - const mask = this.mask; - const children = this.children; - const frag = hashFragment(shift, hash2); - const bit = toBitmap(frag); - const indx = fromBitmap(mask, bit); - const exists = mask & bit; - const canEdit = canEditNode(this, edit); - if (!exists) { - const _newChild = new EmptyNode().modify(edit, shift + SIZE, f, hash2, key, size4); - if (!_newChild) return this; - return children.length >= MAX_INDEX_NODE ? expand(edit, frag, _newChild, mask, children) : new _IndexedNode(edit, mask | bit, arraySpliceIn(canEdit, indx, _newChild, children)); - } - const current = children[indx]; - const child = current.modify(edit, shift + SIZE, f, hash2, key, size4); - if (current === child) return this; - let bitmap = mask; - let newChildren; - if (isEmptyNode(child)) { - bitmap &= ~bit; - if (!bitmap) return new EmptyNode(); - if (children.length <= 2 && isLeafNode(children[indx ^ 1])) { - return children[indx ^ 1]; - } - newChildren = arraySpliceOut(canEdit, indx, children); - } else { - newChildren = arrayUpdate(canEdit, indx, child, children); - } - if (canEdit) { - this.mask = bitmap; - this.children = newChildren; - return this; - } - return new _IndexedNode(edit, bitmap, newChildren); - } -}; -var ArrayNode = class _ArrayNode { - edit; - size; - children; - _tag = "ArrayNode"; - constructor(edit, size4, children) { - this.edit = edit; - this.size = size4; - this.children = children; - } - modify(edit, shift, f, hash2, key, size4) { - let count = this.size; - const children = this.children; - const frag = hashFragment(shift, hash2); - const child = children[frag]; - const newChild = (child || new EmptyNode()).modify(edit, shift + SIZE, f, hash2, key, size4); - if (child === newChild) return this; - const canEdit = canEditNode(this, edit); - let newChildren; - if (isEmptyNode(child) && !isEmptyNode(newChild)) { - ; - ++count; - newChildren = arrayUpdate(canEdit, frag, newChild, children); - } else if (!isEmptyNode(child) && isEmptyNode(newChild)) { - ; - --count; - if (count <= MIN_ARRAY_NODE) { - return pack(edit, count, frag, children); - } - newChildren = arrayUpdate(canEdit, frag, new EmptyNode(), children); - } else { - newChildren = arrayUpdate(canEdit, frag, newChild, children); - } - if (canEdit) { - this.size = count; - this.children = newChildren; - return this; - } - return new _ArrayNode(edit, count, newChildren); - } -}; -function pack(edit, count, removed, elements) { - const children = new Array(count - 1); - let g = 0; - let bitmap = 0; - for (let i = 0, len = elements.length; i < len; ++i) { - if (i !== removed) { - const elem = elements[i]; - if (elem && !isEmptyNode(elem)) { - children[g++] = elem; - bitmap |= 1 << i; - } - } - } - return new IndexedNode(edit, bitmap, children); -} -function expand(edit, frag, child, bitmap, subNodes) { - const arr = []; - let bit = bitmap; - let count = 0; - for (let i = 0; bit; ++i) { - if (bit & 1) arr[i] = subNodes[count++]; - bit >>>= 1; - } - arr[frag] = child; - return new ArrayNode(edit, count + 1, arr); -} -function mergeLeavesInner(edit, shift, h1, n1, h2, n2) { - if (h1 === h2) return new CollisionNode(edit, h1, [n2, n1]); - const subH1 = hashFragment(shift, h1); - const subH2 = hashFragment(shift, h2); - if (subH1 === subH2) { - return (child) => new IndexedNode(edit, toBitmap(subH1) | toBitmap(subH2), [child]); - } else { - const children = subH1 < subH2 ? [n1, n2] : [n2, n1]; - return new IndexedNode(edit, toBitmap(subH1) | toBitmap(subH2), children); - } -} -function mergeLeaves(edit, shift, h1, n1, h2, n2) { - let stack = void 0; - let currentShift = shift; - while (true) { - const res = mergeLeavesInner(edit, currentShift, h1, n1, h2, n2); - if (typeof res === "function") { - stack = make4(res, stack); - currentShift = currentShift + SIZE; - } else { - let final = res; - while (stack != null) { - final = stack.value(final); - stack = stack.previous; - } - return final; - } - } -} - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/hashMap.js -var HashMapSymbolKey = "effect/HashMap"; -var HashMapTypeId = /* @__PURE__ */ Symbol.for(HashMapSymbolKey); -var HashMapProto = { - [HashMapTypeId]: HashMapTypeId, - [Symbol.iterator]() { - return new HashMapIterator(this, (k, v) => [k, v]); - }, - [symbol]() { - let hash2 = hash(HashMapSymbolKey); - for (const item of this) { - hash2 ^= pipe(hash(item[0]), combine(hash(item[1]))); - } - return cached(this, hash2); - }, - [symbol2](that) { - if (isHashMap(that)) { - if (that._size !== this._size) { - return false; - } - for (const item of this) { - const elem = pipe(that, getHash(item[0], hash(item[0]))); - if (isNone2(elem)) { - return false; - } else { - if (!equals(item[1], elem.value)) { - return false; - } - } - } - return true; - } - return false; - }, - toString() { - return format(this.toJSON()); - }, - toJSON() { - return { - _id: "HashMap", - values: Array.from(this).map(toJSON) - }; - }, - [NodeInspectSymbol]() { - return this.toJSON(); - }, - pipe() { - return pipeArguments(this, arguments); - } -}; -var makeImpl = (editable, edit, root, size4) => { - const map7 = Object.create(HashMapProto); - map7._editable = editable; - map7._edit = edit; - map7._root = root; - map7._size = size4; - return map7; -}; -var HashMapIterator = class _HashMapIterator { - map; - f; - v; - constructor(map7, f) { - this.map = map7; - this.f = f; - this.v = visitLazy(this.map._root, this.f, void 0); - } - next() { - if (isNone2(this.v)) { - return { - done: true, - value: void 0 - }; - } - const v0 = this.v.value; - this.v = applyCont(v0.cont); - return { - done: false, - value: v0.value - }; - } - [Symbol.iterator]() { - return new _HashMapIterator(this.map, this.f); - } -}; -var applyCont = (cont) => cont ? visitLazyChildren(cont[0], cont[1], cont[2], cont[3], cont[4]) : none2(); -var visitLazy = (node, f, cont = void 0) => { - switch (node._tag) { - case "LeafNode": { - if (isSome2(node.value)) { - return some2({ - value: f(node.key, node.value.value), - cont - }); - } - return applyCont(cont); - } - case "CollisionNode": - case "ArrayNode": - case "IndexedNode": { - const children = node.children; - return visitLazyChildren(children.length, children, 0, f, cont); - } - default: { - return applyCont(cont); - } - } -}; -var visitLazyChildren = (len, children, i, f, cont) => { - while (i < len) { - const child = children[i++]; - if (child && !isEmptyNode(child)) { - return visitLazy(child, f, [len, children, i, f, cont]); - } - } - return applyCont(cont); -}; -var _empty2 = /* @__PURE__ */ makeImpl(false, 0, /* @__PURE__ */ new EmptyNode(), 0); -var empty3 = () => _empty2; -var isHashMap = (u) => hasProperty(u, HashMapTypeId); -var getHash = /* @__PURE__ */ dual(3, (self2, key, hash2) => { - let node = self2._root; - let shift = 0; - while (true) { - switch (node._tag) { - case "LeafNode": { - return equals(key, node.key) ? node.value : none2(); - } - case "CollisionNode": { - if (hash2 === node.hash) { - const children = node.children; - for (let i = 0, len = children.length; i < len; ++i) { - const child = children[i]; - if ("key" in child && equals(key, child.key)) { - return child.value; - } - } - } - return none2(); - } - case "IndexedNode": { - const frag = hashFragment(shift, hash2); - const bit = toBitmap(frag); - if (node.mask & bit) { - node = node.children[fromBitmap(node.mask, bit)]; - shift += SIZE; - break; - } - return none2(); - } - case "ArrayNode": { - node = node.children[hashFragment(shift, hash2)]; - if (node) { - shift += SIZE; - break; - } - return none2(); - } - default: - return none2(); - } - } -}); -var set = /* @__PURE__ */ dual(3, (self2, key, value) => modifyAt(self2, key, () => some2(value))); -var setTree = /* @__PURE__ */ dual(3, (self2, newRoot, newSize) => { - if (self2._editable) { - ; - self2._root = newRoot; - self2._size = newSize; - return self2; - } - return newRoot === self2._root ? self2 : makeImpl(self2._editable, self2._edit, newRoot, newSize); -}); -var keys = (self2) => new HashMapIterator(self2, (key) => key); -var size = (self2) => self2._size; -var beginMutation = (self2) => makeImpl(true, self2._edit + 1, self2._root, self2._size); -var modifyAt = /* @__PURE__ */ dual(3, (self2, key, f) => modifyHash(self2, key, hash(key), f)); -var modifyHash = /* @__PURE__ */ dual(4, (self2, key, hash2, f) => { - const size4 = { - value: self2._size - }; - const newRoot = self2._root.modify(self2._editable ? self2._edit : NaN, 0, f, hash2, key, size4); - return pipe(self2, setTree(newRoot, size4.value)); -}); -var forEach2 = /* @__PURE__ */ dual(2, (self2, f) => reduce2(self2, void 0, (_, value, key) => f(value, key))); -var reduce2 = /* @__PURE__ */ dual(3, (self2, zero, f) => { - const root = self2._root; - if (root._tag === "LeafNode") { - return isSome2(root.value) ? f(zero, root.value.value, root.key) : zero; - } - if (root._tag === "EmptyNode") { - return zero; - } - const toVisit = [root.children]; - let children; - while (children = toVisit.pop()) { - for (let i = 0, len = children.length; i < len; ) { - const child = children[i++]; - if (child && !isEmptyNode(child)) { - if (child._tag === "LeafNode") { - if (isSome2(child.value)) { - zero = f(zero, child.value.value, child.key); - } - } else { - toVisit.push(child.children); - } - } - } - } - return zero; -}); - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/hashSet.js -var HashSetSymbolKey = "effect/HashSet"; -var HashSetTypeId = /* @__PURE__ */ Symbol.for(HashSetSymbolKey); -var HashSetProto = { - [HashSetTypeId]: HashSetTypeId, - [Symbol.iterator]() { - return keys(this._keyMap); - }, - [symbol]() { - return cached(this, combine(hash(this._keyMap))(hash(HashSetSymbolKey))); - }, - [symbol2](that) { - if (isHashSet(that)) { - return size(this._keyMap) === size(that._keyMap) && equals(this._keyMap, that._keyMap); - } - return false; - }, - toString() { - return format(this.toJSON()); - }, - toJSON() { - return { - _id: "HashSet", - values: Array.from(this).map(toJSON) - }; - }, - [NodeInspectSymbol]() { - return this.toJSON(); - }, - pipe() { - return pipeArguments(this, arguments); - } -}; -var makeImpl2 = (keyMap) => { - const set2 = Object.create(HashSetProto); - set2._keyMap = keyMap; - return set2; -}; -var isHashSet = (u) => hasProperty(u, HashSetTypeId); -var _empty3 = /* @__PURE__ */ makeImpl2(/* @__PURE__ */ empty3()); -var empty4 = () => _empty3; -var size2 = (self2) => size(self2._keyMap); -var beginMutation2 = (self2) => makeImpl2(beginMutation(self2._keyMap)); -var endMutation = (self2) => { - ; - self2._keyMap._editable = false; - return self2; -}; -var mutate = /* @__PURE__ */ dual(2, (self2, f) => { - const transient = beginMutation2(self2); - f(transient); - return endMutation(transient); -}); -var add3 = /* @__PURE__ */ dual(2, (self2, value) => self2._keyMap._editable ? (set(value, true)(self2._keyMap), self2) : makeImpl2(set(value, true)(self2._keyMap))); -var union2 = /* @__PURE__ */ dual(2, (self2, that) => mutate(empty4(), (set2) => { - forEach3(self2, (value) => add3(set2, value)); - for (const value of that) { - add3(set2, value); - } -})); -var forEach3 = /* @__PURE__ */ dual(2, (self2, f) => forEach2(self2._keyMap, (_, k) => f(k))); - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/HashSet.js -var empty5 = empty4; -var size3 = size2; -var add4 = add3; -var union3 = union2; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/opCodes/cause.js -var OP_DIE = "Die"; -var OP_EMPTY = "Empty"; -var OP_FAIL = "Fail"; -var OP_INTERRUPT = "Interrupt"; -var OP_PARALLEL = "Parallel"; -var OP_SEQUENTIAL = "Sequential"; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/cause.js -var CauseSymbolKey = "effect/Cause"; -var CauseTypeId = /* @__PURE__ */ Symbol.for(CauseSymbolKey); -var variance = { - /* c8 ignore next */ - _E: (_) => _ -}; -var proto = { - [CauseTypeId]: variance, - [symbol]() { - return pipe(hash(CauseSymbolKey), combine(hash(flattenCause(this))), cached(this)); - }, - [symbol2](that) { - return isCause(that) && causeEquals(this, that); - }, - pipe() { - return pipeArguments(this, arguments); - }, - toJSON() { - switch (this._tag) { - case "Empty": - return { - _id: "Cause", - _tag: this._tag - }; - case "Die": - return { - _id: "Cause", - _tag: this._tag, - defect: toJSON(this.defect) - }; - case "Interrupt": - return { - _id: "Cause", - _tag: this._tag, - fiberId: this.fiberId.toJSON() - }; - case "Fail": - return { - _id: "Cause", - _tag: this._tag, - failure: toJSON(this.error) - }; - case "Sequential": - case "Parallel": - return { - _id: "Cause", - _tag: this._tag, - left: toJSON(this.left), - right: toJSON(this.right) - }; - } - }, - toString() { - return pretty(this); - }, - [NodeInspectSymbol]() { - return this.toJSON(); - } -}; -var fail2 = (error) => { - const o = Object.create(proto); - o._tag = OP_FAIL; - o.error = error; - return o; -}; -var parallel = (left3, right3) => { - const o = Object.create(proto); - o._tag = OP_PARALLEL; - o.left = left3; - o.right = right3; - return o; -}; -var sequential = (left3, right3) => { - const o = Object.create(proto); - o._tag = OP_SEQUENTIAL; - o.left = left3; - o.right = right3; - return o; -}; -var isCause = (u) => hasProperty(u, CauseTypeId); -var isInterruptedOnly = (self2) => reduceWithContext(void 0, IsInterruptedOnlyCauseReducer)(self2); -var causeEquals = (left3, right3) => { - let leftStack = of(left3); - let rightStack = of(right3); - while (isNonEmpty(leftStack) && isNonEmpty(rightStack)) { - const [leftParallel, leftSequential] = pipe(headNonEmpty(leftStack), reduce4([empty5(), empty2()], ([parallel2, sequential2], cause) => { - const [par, seq] = evaluateCause(cause); - return some2([pipe(parallel2, union3(par)), pipe(sequential2, appendAll(seq))]); - })); - const [rightParallel, rightSequential] = pipe(headNonEmpty(rightStack), reduce4([empty5(), empty2()], ([parallel2, sequential2], cause) => { - const [par, seq] = evaluateCause(cause); - return some2([pipe(parallel2, union3(par)), pipe(sequential2, appendAll(seq))]); - })); - if (!equals(leftParallel, rightParallel)) { - return false; - } - leftStack = leftSequential; - rightStack = rightSequential; - } - return true; -}; -var flattenCause = (cause) => { - return flattenCauseLoop(of(cause), empty2()); -}; -var flattenCauseLoop = (causes, flattened) => { - while (1) { - const [parallel2, sequential2] = pipe(causes, reduce([empty5(), empty2()], ([parallel3, sequential3], cause) => { - const [par, seq] = evaluateCause(cause); - return [pipe(parallel3, union3(par)), pipe(sequential3, appendAll(seq))]; - })); - const updated = size3(parallel2) > 0 ? pipe(flattened, prepend(parallel2)) : flattened; - if (isEmpty(sequential2)) { - return reverse2(updated); - } - causes = sequential2; - flattened = updated; - } - throw new Error(getBugErrorMessage("Cause.flattenCauseLoop")); -}; -var evaluateCause = (self2) => { - let cause = self2; - const stack = []; - let _parallel = empty5(); - let _sequential = empty2(); - while (cause !== void 0) { - switch (cause._tag) { - case OP_EMPTY: { - if (stack.length === 0) { - return [_parallel, _sequential]; - } - cause = stack.pop(); - break; - } - case OP_FAIL: { - _parallel = add4(_parallel, make3(cause._tag, cause.error)); - if (stack.length === 0) { - return [_parallel, _sequential]; - } - cause = stack.pop(); - break; - } - case OP_DIE: { - _parallel = add4(_parallel, make3(cause._tag, cause.defect)); - if (stack.length === 0) { - return [_parallel, _sequential]; - } - cause = stack.pop(); - break; - } - case OP_INTERRUPT: { - _parallel = add4(_parallel, make3(cause._tag, cause.fiberId)); - if (stack.length === 0) { - return [_parallel, _sequential]; - } - cause = stack.pop(); - break; - } - case OP_SEQUENTIAL: { - switch (cause.left._tag) { - case OP_EMPTY: { - cause = cause.right; - break; - } - case OP_SEQUENTIAL: { - cause = sequential(cause.left.left, sequential(cause.left.right, cause.right)); - break; - } - case OP_PARALLEL: { - cause = parallel(sequential(cause.left.left, cause.right), sequential(cause.left.right, cause.right)); - break; - } - default: { - _sequential = prepend(_sequential, cause.right); - cause = cause.left; - break; - } - } - break; - } - case OP_PARALLEL: { - stack.push(cause.right); - cause = cause.left; - break; - } - } - } - throw new Error(getBugErrorMessage("Cause.evaluateCauseLoop")); -}; -var IsInterruptedOnlyCauseReducer = { - emptyCase: constTrue, - failCase: constFalse, - dieCase: constFalse, - interruptCase: constTrue, - sequentialCase: (_, left3, right3) => left3 && right3, - parallelCase: (_, left3, right3) => left3 && right3 -}; -var OP_SEQUENTIAL_CASE = "SequentialCase"; -var OP_PARALLEL_CASE = "ParallelCase"; -var reduce4 = /* @__PURE__ */ dual(3, (self2, zero, pf) => { - let accumulator = zero; - let cause = self2; - const causes = []; - while (cause !== void 0) { - const option = pf(accumulator, cause); - accumulator = isSome2(option) ? option.value : accumulator; - switch (cause._tag) { - case OP_SEQUENTIAL: { - causes.push(cause.right); - cause = cause.left; - break; - } - case OP_PARALLEL: { - causes.push(cause.right); - cause = cause.left; - break; - } - default: { - cause = void 0; - break; - } - } - if (cause === void 0 && causes.length > 0) { - cause = causes.pop(); - } - } - return accumulator; -}); -var reduceWithContext = /* @__PURE__ */ dual(3, (self2, context, reducer) => { - const input = [self2]; - const output = []; - while (input.length > 0) { - const cause = input.pop(); - switch (cause._tag) { - case OP_EMPTY: { - output.push(right2(reducer.emptyCase(context))); - break; - } - case OP_FAIL: { - output.push(right2(reducer.failCase(context, cause.error))); - break; - } - case OP_DIE: { - output.push(right2(reducer.dieCase(context, cause.defect))); - break; - } - case OP_INTERRUPT: { - output.push(right2(reducer.interruptCase(context, cause.fiberId))); - break; - } - case OP_SEQUENTIAL: { - input.push(cause.right); - input.push(cause.left); - output.push(left2({ - _tag: OP_SEQUENTIAL_CASE - })); - break; - } - case OP_PARALLEL: { - input.push(cause.right); - input.push(cause.left); - output.push(left2({ - _tag: OP_PARALLEL_CASE - })); - break; - } - } - } - const accumulator = []; - while (output.length > 0) { - const either = output.pop(); - switch (either._tag) { - case "Left": { - switch (either.left._tag) { - case OP_SEQUENTIAL_CASE: { - const left3 = accumulator.pop(); - const right3 = accumulator.pop(); - const value = reducer.sequentialCase(context, left3, right3); - accumulator.push(value); - break; - } - case OP_PARALLEL_CASE: { - const left3 = accumulator.pop(); - const right3 = accumulator.pop(); - const value = reducer.parallelCase(context, left3, right3); - accumulator.push(value); - break; - } - } - break; - } - case "Right": { - accumulator.push(either.right); - break; - } - } - } - if (accumulator.length === 0) { - throw new Error("BUG: Cause.reduceWithContext - please report an issue at https://github.com/Effect-TS/effect/issues"); - } - return accumulator.pop(); -}); -var pretty = (cause, options) => { - if (isInterruptedOnly(cause)) { - return "All fibers interrupted without errors."; - } - return prettyErrors(cause).map(function(e) { - if (options?.renderErrorCause !== true || e.cause === void 0) { - return e.stack; - } - return `${e.stack} { -${renderErrorCause(e.cause, " ")} -}`; - }).join("\n"); -}; -var renderErrorCause = (cause, prefix) => { - const lines = cause.stack.split("\n"); - let stack = `${prefix}[cause]: ${lines[0]}`; - for (let i = 1, len = lines.length; i < len; i++) { - stack += ` -${prefix}${lines[i]}`; - } - if (cause.cause) { - stack += ` { -${renderErrorCause(cause.cause, `${prefix} `)} -${prefix}}`; - } - return stack; -}; -var PrettyError = class _PrettyError extends globalThis.Error { - span = void 0; - constructor(originalError) { - const originalErrorIsObject = typeof originalError === "object" && originalError !== null; - const prevLimit = Error.stackTraceLimit; - Error.stackTraceLimit = 1; - super(prettyErrorMessage(originalError), originalErrorIsObject && "cause" in originalError && typeof originalError.cause !== "undefined" ? { - cause: new _PrettyError(originalError.cause) - } : void 0); - if (this.message === "") { - this.message = "An error has occurred"; - } - Error.stackTraceLimit = prevLimit; - this.name = originalError instanceof Error ? originalError.name : "Error"; - if (originalErrorIsObject) { - if (spanSymbol in originalError) { - this.span = originalError[spanSymbol]; - } - Object.keys(originalError).forEach((key) => { - if (!(key in this)) { - this[key] = originalError[key]; - } - }); - } - this.stack = prettyErrorStack(`${this.name}: ${this.message}`, originalError instanceof Error && originalError.stack ? originalError.stack : "", this.span); - } -}; -var prettyErrorMessage = (u) => { - if (typeof u === "string") { - return u; - } - if (typeof u === "object" && u !== null && u instanceof Error) { - return u.message; - } - try { - if (hasProperty(u, "toString") && isFunction2(u["toString"]) && u["toString"] !== Object.prototype.toString && u["toString"] !== globalThis.Array.prototype.toString) { - return u["toString"](); - } - } catch { - } - return stringifyCircular(u); -}; -var locationRegex = /\((.*)\)/; -var spanToTrace = /* @__PURE__ */ globalValue("effect/Tracer/spanToTrace", () => /* @__PURE__ */ new WeakMap()); -var prettyErrorStack = (message, stack, span) => { - const out = [message]; - const lines = stack.startsWith(message) ? stack.slice(message.length).split("\n") : stack.split("\n"); - for (let i = 1; i < lines.length; i++) { - if (lines[i].includes("Generator.next")) { - break; - } - if (lines[i].includes("effect_internal_function")) { - out.pop(); - break; - } - out.push(lines[i].replace(/at .*effect_instruction_i.*\((.*)\)/, "at $1").replace(/EffectPrimitive\.\w+/, "")); - } - if (span) { - let current = span; - let i = 0; - while (current && current._tag === "Span" && i < 10) { - const stackFn = spanToTrace.get(current); - if (typeof stackFn === "function") { - const stack2 = stackFn(); - if (typeof stack2 === "string") { - const locationMatch = stack2.match(locationRegex); - const location = locationMatch ? locationMatch[1] : stack2.replace(/^at /, ""); - out.push(` at ${current.name} (${location})`); - } else { - out.push(` at ${current.name}`); - } - } else { - out.push(` at ${current.name}`); - } - current = getOrUndefined(current.parent); - i++; - } - } - return out.join("\n"); -}; -var spanSymbol = /* @__PURE__ */ Symbol.for("effect/SpanAnnotation"); -var prettyErrors = (cause) => reduceWithContext(cause, void 0, { - emptyCase: () => [], - dieCase: (_, unknownError) => { - return [new PrettyError(unknownError)]; - }, - failCase: (_, error) => { - return [new PrettyError(error)]; - }, - interruptCase: () => [], - parallelCase: (_, l, r) => [...l, ...r], - sequentialCase: (_, l, r) => [...l, ...r] -}); - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/singleShotGen.js -var SingleShotGen2 = class _SingleShotGen { - self; - called = false; - constructor(self2) { - this.self = self2; - } - next(a) { - return this.called ? { - value: a, - done: true - } : (this.called = true, { - value: this.self, - done: false - }); - } - return(a) { - return { - value: a, - done: true - }; - } - throw(e) { - throw e; - } - [Symbol.iterator]() { - return new _SingleShotGen(this.self); - } -}; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/internal/core.js -var EffectTypeId2 = /* @__PURE__ */ Symbol.for("effect/Effect"); -var EffectPrimitive = class { - _op; - effect_instruction_i0 = void 0; - effect_instruction_i1 = void 0; - effect_instruction_i2 = void 0; - trace = void 0; - [EffectTypeId2] = effectVariance; - constructor(_op) { - this._op = _op; - } - [symbol2](that) { - return this === that; - } - [symbol]() { - return cached(this, random(this)); - } - pipe() { - return pipeArguments(this, arguments); - } - toJSON() { - return { - _id: "Effect", - _op: this._op, - effect_instruction_i0: toJSON(this.effect_instruction_i0), - effect_instruction_i1: toJSON(this.effect_instruction_i1), - effect_instruction_i2: toJSON(this.effect_instruction_i2) - }; - } - toString() { - return format(this.toJSON()); - } - [NodeInspectSymbol]() { - return this.toJSON(); - } - [Symbol.iterator]() { - return new SingleShotGen2(new YieldWrap(this)); - } -}; -var EffectPrimitiveFailure = class { - _op; - effect_instruction_i0 = void 0; - effect_instruction_i1 = void 0; - effect_instruction_i2 = void 0; - trace = void 0; - [EffectTypeId2] = effectVariance; - constructor(_op) { - this._op = _op; - this._tag = _op; - } - [symbol2](that) { - return exitIsExit(that) && that._op === "Failure" && // @ts-expect-error - equals(this.effect_instruction_i0, that.effect_instruction_i0); - } - [symbol]() { - return pipe( - // @ts-expect-error - string(this._tag), - // @ts-expect-error - combine(hash(this.effect_instruction_i0)), - cached(this) - ); - } - get cause() { - return this.effect_instruction_i0; - } - pipe() { - return pipeArguments(this, arguments); - } - toJSON() { - return { - _id: "Exit", - _tag: this._op, - cause: this.cause.toJSON() - }; - } - toString() { - return format(this.toJSON()); - } - [NodeInspectSymbol]() { - return this.toJSON(); - } - [Symbol.iterator]() { - return new SingleShotGen2(new YieldWrap(this)); - } -}; -var EffectPrimitiveSuccess = class { - _op; - effect_instruction_i0 = void 0; - effect_instruction_i1 = void 0; - effect_instruction_i2 = void 0; - trace = void 0; - [EffectTypeId2] = effectVariance; - constructor(_op) { - this._op = _op; - this._tag = _op; - } - [symbol2](that) { - return exitIsExit(that) && that._op === "Success" && // @ts-expect-error - equals(this.effect_instruction_i0, that.effect_instruction_i0); - } - [symbol]() { - return pipe( - // @ts-expect-error - string(this._tag), - // @ts-expect-error - combine(hash(this.effect_instruction_i0)), - cached(this) - ); - } - get value() { - return this.effect_instruction_i0; - } - pipe() { - return pipeArguments(this, arguments); - } - toJSON() { - return { - _id: "Exit", - _tag: this._op, - value: toJSON(this.value) - }; - } - toString() { - return format(this.toJSON()); - } - [NodeInspectSymbol]() { - return this.toJSON(); - } - [Symbol.iterator]() { - return new SingleShotGen2(new YieldWrap(this)); - } -}; -var isEffect = (u) => hasProperty(u, EffectTypeId2); -var withFiberRuntime = (withRuntime) => { - const effect = new EffectPrimitive(OP_WITH_RUNTIME); - effect.effect_instruction_i0 = withRuntime; - return effect; -}; -var spanSymbol2 = /* @__PURE__ */ Symbol.for("effect/SpanAnnotation"); -var originalSymbol = /* @__PURE__ */ Symbol.for("effect/OriginalAnnotation"); -var capture = (obj, span) => { - if (isSome2(span)) { - return new Proxy(obj, { - has(target, p) { - return p === spanSymbol2 || p === originalSymbol || p in target; - }, - get(target, p) { - if (p === spanSymbol2) { - return span.value; - } - if (p === originalSymbol) { - return obj; - } - return target[p]; - } - }); - } - return obj; -}; -var fail3 = (error) => isObject(error) && !(spanSymbol2 in error) ? withFiberRuntime((fiber) => failCause2(fail2(capture(error, currentSpanFromFiber(fiber))))) : failCause2(fail2(error)); -var failCause2 = (cause) => { - const effect = new EffectPrimitiveFailure(OP_FAILURE); - effect.effect_instruction_i0 = cause; - return effect; -}; -var logLevelAll = { - _tag: "All", - syslog: 0, - label: "ALL", - ordinal: Number.MIN_SAFE_INTEGER, - pipe() { - return pipeArguments(this, arguments); - } -}; -var logLevelNone = { - _tag: "None", - syslog: 7, - label: "OFF", - ordinal: Number.MAX_SAFE_INTEGER, - pipe() { - return pipeArguments(this, arguments); - } -}; -var RequestResolverSymbolKey = "effect/RequestResolver"; -var RequestResolverTypeId = /* @__PURE__ */ Symbol.for(RequestResolverSymbolKey); -var requestResolverVariance = { - /* c8 ignore next */ - _A: (_) => _, - /* c8 ignore next */ - _R: (_) => _ -}; -var RequestResolverImpl = class _RequestResolverImpl { - runAll; - target; - [RequestResolverTypeId] = requestResolverVariance; - constructor(runAll, target) { - this.runAll = runAll; - this.target = target; - } - [symbol]() { - return cached(this, this.target ? hash(this.target) : random(this)); - } - [symbol2](that) { - return this.target ? isRequestResolver(that) && equals(this.target, that.target) : this === that; - } - identified(...ids) { - return new _RequestResolverImpl(this.runAll, fromIterable2(ids)); - } - pipe() { - return pipeArguments(this, arguments); - } -}; -var isRequestResolver = (u) => hasProperty(u, RequestResolverTypeId); -var YieldableError = /* @__PURE__ */ function() { - class YieldableError2 extends globalThis.Error { - commit() { - return fail3(this); - } - toJSON() { - return { - ...this - }; - } - [NodeInspectSymbol]() { - if (this.toString !== globalThis.Error.prototype.toString) { - return this.stack ? `${this.toString()} -${this.stack.split("\n").slice(1).join("\n")}` : this.toString(); - } else if ("Bun" in globalThis) { - return pretty(fail2(this), { - renderErrorCause: true - }); - } - return this; - } - } - Object.assign(YieldableError2.prototype, StructuralCommitPrototype); - return YieldableError2; -}(); -var makeException = (proto2, tag) => { - class Base2 extends YieldableError { - _tag = tag; - } - Object.assign(Base2.prototype, proto2); - Base2.prototype.name = tag; - return Base2; -}; -var RuntimeExceptionTypeId = /* @__PURE__ */ Symbol.for("effect/Cause/errors/RuntimeException"); -var RuntimeException = /* @__PURE__ */ makeException({ - [RuntimeExceptionTypeId]: RuntimeExceptionTypeId -}, "RuntimeException"); -var InterruptedExceptionTypeId = /* @__PURE__ */ Symbol.for("effect/Cause/errors/InterruptedException"); -var InterruptedException = /* @__PURE__ */ makeException({ - [InterruptedExceptionTypeId]: InterruptedExceptionTypeId -}, "InterruptedException"); -var IllegalArgumentExceptionTypeId = /* @__PURE__ */ Symbol.for("effect/Cause/errors/IllegalArgument"); -var IllegalArgumentException = /* @__PURE__ */ makeException({ - [IllegalArgumentExceptionTypeId]: IllegalArgumentExceptionTypeId -}, "IllegalArgumentException"); -var NoSuchElementExceptionTypeId = /* @__PURE__ */ Symbol.for("effect/Cause/errors/NoSuchElement"); -var NoSuchElementException = /* @__PURE__ */ makeException({ - [NoSuchElementExceptionTypeId]: NoSuchElementExceptionTypeId -}, "NoSuchElementException"); -var InvalidPubSubCapacityExceptionTypeId = /* @__PURE__ */ Symbol.for("effect/Cause/errors/InvalidPubSubCapacityException"); -var InvalidPubSubCapacityException = /* @__PURE__ */ makeException({ - [InvalidPubSubCapacityExceptionTypeId]: InvalidPubSubCapacityExceptionTypeId -}, "InvalidPubSubCapacityException"); -var ExceededCapacityExceptionTypeId = /* @__PURE__ */ Symbol.for("effect/Cause/errors/ExceededCapacityException"); -var ExceededCapacityException = /* @__PURE__ */ makeException({ - [ExceededCapacityExceptionTypeId]: ExceededCapacityExceptionTypeId -}, "ExceededCapacityException"); -var TimeoutExceptionTypeId = /* @__PURE__ */ Symbol.for("effect/Cause/errors/Timeout"); -var TimeoutException = /* @__PURE__ */ makeException({ - [TimeoutExceptionTypeId]: TimeoutExceptionTypeId -}, "TimeoutException"); -var exitIsExit = (u) => isEffect(u) && "_tag" in u && (u._tag === "Success" || u._tag === "Failure"); -var currentSpanFromFiber = (fiber) => { - const span = fiber.currentSpan; - return span !== void 0 && span._tag === "Span" ? some2(span) : none2(); -}; - -// node_modules/.pnpm/effect@3.11.9/node_modules/effect/dist/esm/Data.js -var Error2 = /* @__PURE__ */ function() { - const plainArgsSymbol = /* @__PURE__ */ Symbol.for("effect/Data/Error/plainArgs"); - return class Base extends YieldableError { - constructor(args2) { - super(args2?.message, args2?.cause ? { - cause: args2.cause - } : void 0); - if (args2) { - Object.assign(this, args2); - Object.defineProperty(this, plainArgsSymbol, { - value: args2, - enumerable: false - }); - } - } - toJSON() { - return { - ...this[plainArgsSymbol], - ...this - }; - } - }; -}(); -var TaggedError = (tag) => { - class Base2 extends Error2 { - _tag = tag; - } - ; - Base2.prototype.name = tag; - return Base2; -}; - -// node_modules/.pnpm/@effect-ak+tg-bot-client@file+..+tg-bot-client+effect-ak-tg-bot-client-0.2.2.tgz/node_modules/@effect-ak/tg-bot-client/dist/index.mjs -var defaultBaseUrl = "https://api.telegram.org"; -var MESSAGE_EFFECTS = { - "\u{1F525}": "5104841245755180586", - "\u{1F44D}": "5107584321108051014", - "\u{1F44E}": "5104858069142078462", - "\u2764\uFE0F": "5159385139981059251", - "\u{1F389}": "5046509860389126442", - "\u{1F4A9}": "5046589136895476101" -}; -var messageEffectIdCodes = Object.keys(MESSAGE_EFFECTS); -var makeTgBotClientConfig = (input) => TgBotClientConfig.of({ - ...input, - ["base-url"]: input["base-url"] ?? defaultBaseUrl -}); -var TgBotClientConfig = class extends Tag2("TgBotClientConfig")() { -}; -var TgBotClientError = class _TgBotClientError extends TaggedError("TgBotClientError") { - static missingSuccess = new _TgBotClientError({ - reason: { - type: "ClientInternalError", - cause: "Expected 'success' to be defined" - } - }); -}; -var isFileContent = (input) => typeof input == "object" && input != null && ("file_content" in input && input.file_content instanceof Uint8Array) && ("file_name" in input && typeof input.file_name == "string"); -var isTgBotApiResponse = (input) => typeof input == "object" && input != null && ("ok" in input && typeof input.ok == "boolean"); -var isTgBotClientSettingsInput = (input) => typeof input == "object" && input != null && ("bot-token" in input && typeof input["bot-token"] == "string"); -var makePayload = (body) => { - const entries = Object.entries(body); - if (entries.length == 0) return void 0; - const result = new FormData(); - for (const [key, value] of entries) { - if (!value) continue; - if (typeof value != "object") { - result.append(key, `${value}`); - } else if (isFileContent(value)) { - result.append(key, new Blob([value.file_content]), value.file_name); - } else { - result.append(key, JSON.stringify(value)); - } - } - return result; -}; -var execute = (config, method, input) => gen(function* () { - const httpResponse = yield* tryPromise({ - try: () => fetch( - `${config["base-url"]}/bot${config["bot-token"]}/${snakeToCamel(method)}`, - { - body: makePayload(input) ?? null, - method: "POST" - } - ), - catch: (cause) => new TgBotClientError({ - reason: { type: "ClientInternalError", cause } - }) - }); - const response = yield* tryPromise({ - try: () => httpResponse.json(), - catch: () => new TgBotClientError({ - reason: { type: "UnexpectedResponse", response: httpResponse } - }) - }); - if (!isTgBotApiResponse(response)) { - return yield* fail(new TgBotClientError({ - reason: { type: "UnexpectedResponse", response } - })); - } - if (!httpResponse.ok) { - return yield* fail(new TgBotClientError({ - reason: { - type: "NotOkResponse", - ...response.error_code ? { errorCode: response.error_code } : void 0, - ...response.description ? { details: response.description } : void 0 - } - })); - } - return response.result; -}); -var ClientExecuteRequestService = class extends Tag2("ClientExecuteRequestService")() { -}; -var ClientExecuteRequestServiceDefault = gen(function* () { - const config = yield* service(TgBotClientConfig); - return { - execute: (method, input) => execute(config, method, input) - }; -}); -var getFile = (fileId, config, execute2) => gen(function* () { - const response = yield* execute2.execute("get_file", { file_id: fileId }); - const file_path = response.file_path; - if (!file_path || file_path.length == 0) { - return yield* fail( - new TgBotClientError({ - reason: { - type: "UnableToGetFile", - cause: "File path not defined" - } - }) - ); - } - const file_name = file_path.replaceAll("/", "-"); - const url = `${config["base-url"]}/file/bot${config["bot-token"]}/${file_path}`; - const fileContent = yield* tryPromise({ - try: () => fetch(url).then((_) => _.arrayBuffer()), - catch: (cause) => new TgBotClientError({ - reason: { type: "UnableToGetFile", cause } - }) - }); - const file = new File([new Uint8Array(fileContent)], file_name); - return file; -}); -var ClientFileService = class extends Tag2("ClientFileService")() { -}; -var ClientFileServiceDefault = gen(function* () { - const config = yield* service(TgBotClientConfig); - const execute2 = yield* service(ClientExecuteRequestService); - return { - getFile: (input) => getFile(input.file_id, config, execute2) - }; -}).pipe( - provideServiceEffect(ClientExecuteRequestService, ClientExecuteRequestServiceDefault) -); -var makeSettingsFrom = (input) => { - let limit = input.batch_size ?? 10; - let timeout = input.timeout ?? 10; - let max_empty_responses = input.max_empty_responses; - if (limit < 10 || limit > 100) { - console.warn("Wrong limit, must be in [10..100], using 10 instead"); - limit = 10; - } - if (timeout < 2 || timeout > 10) { - console.warn("Wrong timeout, must be in [2..10], using 2 instead"); - limit = 10; - } - if (max_empty_responses && max_empty_responses < 2) { - console.warn("Wrong max_empty_responses, must be in [2..infinity], using infinity"); - max_empty_responses = void 0; - } - return { - limit, - timeout, - max_empty_responses - }; -}; -var extractUpdate = (input) => { - for (const [field, value] of Object.entries(input)) { - if (field == "update_id") { - continue; - } - return { - type: field, - ...value - }; - } - return void 0; -}; -var fetchUpdates = ({ state, settings, execute: execute2, handlers }) => gen(function* () { - const updateId = state.lastUpdateId; - console.info("getting updates", state); - const updates = yield* execute2("get_updates", { - ...settings, - ...updateId ? { offset: updateId } : void 0 - }).pipe( - andThen((_) => _.sort((_2) => _2.update_id)) - ); - let lastSuccessId = void 0; - let hasError = false; - for (const updateObject of updates) { - const update = extractUpdate(updateObject); - if (!update) { - console.warn("Unknown update", update); - hasError = true; - break; - } - const handler2 = handlers[`on_${update.type}`]; - if (!handler2) { - console.warn("Handler for update not defined", update); - hasError = true; - break; - } - const handleResult = handler2(update); - if ("chat" in update) { - const response = yield* execute2(`send_${handleResult.type}`, { - ...handleResult, - chat_id: update.chat.id - }); - console.log("bot response", response); - } - if (!handleResult) { - hasError = true; - console.log(handleResult); - break; - } - ; - lastSuccessId = updateObject.update_id; - } - if (hasError && lastSuccessId) { - const resp = ( - //commit successfully handled messages - yield* execute2("get_updates", { - offset: lastSuccessId, - limit: 0 - }) - ); - } - return { updates, lastSuccessId, hasError }; -}); -var pollAndHandle = (input) => { - const state = { - lastUpdateId: void 0, - emptyResponses: 0 - }; - const settings = makeSettingsFrom(input.settings); - return delay(1e3)( - fetchUpdates({ - state, - settings, - execute: input.execute, - handlers: input.settings - }) - ).pipe( - repeat({ - while: ({ updates, lastSuccessId, hasError }) => { - if (hasError) { - console.warn("error in handler, quitting"); - return false; - } - if (updates.length == 0) { - state.emptyResponses += 1; - if (settings.max_empty_responses && state.emptyResponses > settings.max_empty_responses) { - console.info("too many empty responses, quitting"); - return false; - } - } else { - state.emptyResponses = 0; - } - ; - if (lastSuccessId) { - state.lastUpdateId = lastSuccessId + 1; - } - return true; - } - }) - ); -}; -var BotUpdatePollerService = class extends Tag2("BotUpdatePollerService")() { -}; -var BotUpdatesPollerServiceDefault = gen(function* () { - console.log("Initiating BotUpdatesPollerServiceDefault"); - const state = { - fiber: void 0 - }; - const client = yield* service(ClientExecuteRequestService); - const runBot = (messageHandler) => gen(function* () { - console.log(state); - const startFiber = pollAndHandle({ - settings: messageHandler, - execute: client.execute - }).pipe( - forkDaemon, - tap( - (fiber) => fiber.addObserver((exit2) => { - console.log("bot's fiber has been closed", exit2); - if (messageHandler.onExit) { - messageHandler.onExit(exit2); - } - }) - ) - ); - if (state.fiber) { - console.log("killing previous bot's fiber"); - yield* fiberInterrupt(state.fiber); - } - state.fiber = yield* startFiber; - console.log("Reading bot's updates.....", state.fiber == null); - return state.fiber; - }); - return { - runBot - }; -}).pipe( - provideServiceEffect(ClientExecuteRequestService, ClientExecuteRequestServiceDefault) -); -var makeClientConfigFrom = (input) => gen(function* () { - if (input.type == "config") { - return makeTgBotClientConfig(input); - } - const config = yield* tryPromise({ - try: async () => { - const { readFileSync } = await import("fs"); - return JSON.parse(await readFileSync("config.json", "utf-8")); - }, - catch: (error) => { - console.warn(error); - return "ReadingConfigError"; - } - }); - if (!isTgBotClientSettingsInput(config)) { - return yield* fail("InvalidConfig"); - } - return makeTgBotClientConfig(config); -}); -var makeBot = (messageHandler) => gen(function* () { - const { runBot } = yield* service(BotUpdatePollerService); - return { - fiber: yield* runBot(messageHandler), - runBot - }; -}).pipe( - tapError((error) => { - console.error(error); - return void_; - }) -); -var BotFactoryService = class extends Tag2("BotFactoryService")() { -}; -var BotFactoryServiceDefault = { - makeBot, - runBot: (input) => gen(function* () { - console.log("client"); - const client = yield* makeClientConfigFrom(input); - const poller = yield* BotUpdatesPollerServiceDefault.pipe( - provideService(TgBotClientConfig, client) - ); - const bot = yield* makeBot(input).pipe( - provideService(BotUpdatePollerService, poller) - ); - const reload = (input2) => bot.runBot(input2).pipe(runPromise); - return { - reload - }; - }) -}; -var runTgChatBot = (input) => BotFactoryServiceDefault.runBot(input).pipe(runPromise); - -// src/tg-bot-playground/types.ts -var isRunBot = (input) => typeof input == "object" && input != null && "command" in input && "token" in input && "code" in input; - -// src/tg-bot-playground/worker/utils.ts -var parseJson = (input) => { - try { - return { parsed: JSON.parse(input) }; - } catch { - return void 0; - } -}; -var deserialize = (input) => { - const result = []; - const fields = parseJson(input); - if (typeof fields?.parsed != "object") return; - for (const [k, v] of Object.entries(fields.parsed)) { - try { - const f = new Function(`return ${v}`)(); - result.push([k, f]); - } catch (e) { - console.warn("deserialize field error", { k, v, e }); - } - } - return Object.fromEntries(result); -}; - -// src/tg-bot-playground/worker/handler.ts -var makeWorkerHandler = (notifyParent) => { - let messageId = 0; - let botInstance = void 0; - const sendEvent = (input) => notifyParent({ - ...input, - messageId: messageId++ - }); - return async (command) => { - if (!isRunBot(command)) { - sendEvent({ - error: "not a run bot command", - command - }); - return; - } - if (command.command == "run-bot") { - const handlers = deserialize(command.code); - if (botInstance) { - console.log("reloading..."); - await botInstance.reload({ - ...handlers - }); - sendEvent({ - botState: { - status: "reloaded" - } - }); - return; - } - botInstance = await runTgChatBot({ - type: "config", - "bot-token": command.token, - ...handlers, - onExit: (exit2) => sendEvent({ - success: "Bot's fiber has been shutdown", - exit: exit2, - botState: { - status: "stopped" - } - }) - }); - sendEvent({ - success: "Bot's fiber has been created", - botState: { - status: "active" - } - }); - return; - } - sendEvent({ - error: "Unknown command" - }); - }; -}; - -// src/tg-bot-playground/worker/web-worker.ts -var handler = makeWorkerHandler( - (_) => self.postMessage(_) -); -self.onmessage = (msg) => handler(msg.data); diff --git a/docs/tg-bot-playground/assets/index-ChPUFYFo.js b/docs/tg-bot-playground/assets/index-ChPUFYFo.js new file mode 100644 index 0000000..eb1121f --- /dev/null +++ b/docs/tg-bot-playground/assets/index-ChPUFYFo.js @@ -0,0 +1,3596 @@ +(function polyfill() { + const relList = document.createElement("link").relList; + if (relList && relList.supports && relList.supports("modulepreload")) { + return; + } + for (const link of document.querySelectorAll('link[rel="modulepreload"]')) { + processPreload(link); + } + new MutationObserver((mutations) => { + for (const mutation of mutations) { + if (mutation.type !== "childList") { + continue; + } + for (const node of mutation.addedNodes) { + if (node.tagName === "LINK" && node.rel === "modulepreload") + processPreload(node); + } + } + }).observe(document, { childList: true, subtree: true }); + function getFetchOpts(link) { + const fetchOpts = {}; + if (link.integrity) fetchOpts.integrity = link.integrity; + if (link.referrerPolicy) fetchOpts.referrerPolicy = link.referrerPolicy; + if (link.crossOrigin === "use-credentials") + fetchOpts.credentials = "include"; + else if (link.crossOrigin === "anonymous") fetchOpts.credentials = "omit"; + else fetchOpts.credentials = "same-origin"; + return fetchOpts; + } + function processPreload(link) { + if (link.ep) + return; + link.ep = true; + const fetchOpts = getFetchOpts(link); + fetch(link.href, fetchOpts); + } +})(); +const makeRunnableBot = (tsTextModel, worker) => (state) => tsTextModel.getJsCode().then((code) => { + if (!state.bot.token || state.bot.token.length < 10) return; + if (!code.serialized) { + console.warn("Serizalized js code not defined"); + return; + } + worker.postMessage({ + command: "run-bot", + token: state.bot.token, + code: code.serialized + }); + state.bot.status = "active"; +}).catch((error2) => { + console.warn("cannot run bot", error2); +}); +const checkTokenAndRun = (state, runnableBot) => { + const token = state.bot.token; + if (!token) return; + fetch(`https://api.telegram.org/bot${token}/getMe`).then((_) => _.json()).then((info) => { + if (info.ok) { + state.bot.name = info.result.first_name; + console.log("Running bot"); + runnableBot(state); + } else { + state.bot.name = "nameless"; + } + }).catch((error2) => { + console.warn("check token error", error2); + }); +}; +const makeBotLauncher = async (tsTextModel) => { + const worker = new Worker(new URL( + /* @vite-ignore */ + "" + new URL("web-worker-CgNZSpPE.js", import.meta.url).href, + import.meta.url + ), { type: "module" }); + if (!worker) return; + const runnableBot = makeRunnableBot(tsTextModel, worker); + return { + worker, + runBot: (state) => runnableBot(state), + checkTokenAndRun: (state) => checkTokenAndRun(state, runnableBot) + }; +}; +const fetchText = (path) => fetch(path).then((_) => _.text()); +const getMonacoLoader = () => { + if (!("monaco_loader" in window) || typeof window.monaco_loader != "object" || window.monaco_loader == null) { + console.warn("monaco loader is not available"); + return; + } + return window.monaco_loader; +}; +const setupDts = async (monaco) => { + const dts = await fetchText("https://cdn.jsdelivr.net/npm/@effect-ak/tg-bot-client@0.2.2/dist/index.d.ts"); + monaco.languages.typescript.typescriptDefaults.setExtraLibs([ + { + content: dts, + filePath: "node_modules/@effect-ak/tg-bot-client/index.d.ts" + } + ]); + monaco.languages.typescript.typescriptDefaults.setCompilerOptions({ + ...monaco.languages.typescript.typescriptDefaults.getCompilerOptions(), + moduleResolution: monaco.languages.typescript.ModuleResolutionKind.NodeJs, + typeRoots: [ + "node_modules" + ], + strict: true + }); +}; +const scriptRel = "modulepreload"; +const assetsURL = function(dep, importerUrl) { + return new URL(dep, importerUrl).href; +}; +const seen = {}; +const __vitePreload = function preload(baseModule, deps, importerUrl) { + let promise = Promise.resolve(); + if (deps && deps.length > 0) { + const links = document.getElementsByTagName("link"); + const cspNonceMeta = document.querySelector( + "meta[property=csp-nonce]" + ); + const cspNonce = (cspNonceMeta == null ? void 0 : cspNonceMeta.nonce) || (cspNonceMeta == null ? void 0 : cspNonceMeta.getAttribute("nonce")); + promise = Promise.allSettled( + deps.map((dep) => { + dep = assetsURL(dep, importerUrl); + if (dep in seen) return; + seen[dep] = true; + const isCss = dep.endsWith(".css"); + const cssSelector = isCss ? '[rel="stylesheet"]' : ""; + const isBaseRelative = !!importerUrl; + if (isBaseRelative) { + for (let i = links.length - 1; i >= 0; i--) { + const link2 = links[i]; + if (link2.href === dep && (!isCss || link2.rel === "stylesheet")) { + return; + } + } + } else if (document.querySelector(`link[href="${dep}"]${cssSelector}`)) { + return; + } + const link = document.createElement("link"); + link.rel = isCss ? "stylesheet" : scriptRel; + if (!isCss) { + link.as = "script"; + } + link.crossOrigin = ""; + link.href = dep; + if (cspNonce) { + link.setAttribute("nonce", cspNonce); + } + document.head.appendChild(link); + if (isCss) { + return new Promise((res, rej) => { + link.addEventListener("load", res); + link.addEventListener( + "error", + () => rej(new Error(`Unable to preload CSS for ${dep}`)) + ); + }); + } + }) + ); + } + function handlePreloadError(err) { + const e = new Event("vite:preloadError", { + cancelable: true + }); + e.payload = err; + window.dispatchEvent(e); + if (!e.defaultPrevented) { + throw err; + } + } + return promise.then((res) => { + for (const item of res || []) { + if (item.status !== "rejected") continue; + handlePreloadError(item.reason); + } + return baseModule().catch(handlePreloadError); + }); +}; +const makeTsTextModel = async (monaco) => { + const emptyExample = await fetchText("./example/empty.ts"); + const tsModel = monaco.editor.createModel(emptyExample, "typescript"); + let cachedWorkerPromise = null; + const getTsCode = async () => { + if (!cachedWorkerPromise) { + cachedWorkerPromise = (async () => { + const tsWorker = await monaco.languages.typescript.getTypeScriptWorker(); + return tsWorker(tsModel.uri); + })(); + } + return cachedWorkerPromise.then((_) => _.getEmitOutput(tsModel.uri.toString())); + }; + return { + tsModel, + getJsCode: async () => { + const output = await getTsCode(); + const code = output.outputFiles[0].text; + const defaultExport = await getDefaultExport(code); + return { + defaultExport, + serialized: serialize(defaultExport == null ? void 0 : defaultExport.default) + }; + } + }; +}; +async function getDefaultExport(code) { + try { + const encodedCode = encodeURIComponent(code); + const module = await __vitePreload(() => import( + /* @vite-ignore */ + `data:text/javascript,${encodedCode}` + ), true ? [] : void 0, import.meta.url); + const result = module.default; + return { default: result }; + } catch (e) { + console.warn("get default error", e); + return void 0; + } +} +const serialize = (input) => { + if (typeof input != "object" || !input) { + return void 0; + } + const result = []; + for (const [key, value] of Object.entries(input)) { + if (typeof value != "function") { + continue; + } + result.push([key, value.toString()]); + } + return JSON.stringify(Object.fromEntries(result)); +}; +const initEditor = async (loader) => { + const container = document.getElementById("container"); + if (!container) { + console.warn("container not found"); + return; + } + loader.config({ + paths: { + vs: "https://cdn.jsdelivr.net/npm/monaco-editor@latest/min/vs" + } + }); + const monaco = await loader.init(); + const tsTextModel = await makeTsTextModel(monaco); + const editor = monaco.editor.create(container, { + model: tsTextModel.tsModel, + contextmenu: false, + minimap: { + enabled: false + } + }); + return { + tsTextModel, + editor, + monaco + }; +}; +const makeEditor = async () => { + const loader = getMonacoLoader(); + if (!loader) return; + const editor = await initEditor(loader); + if (!editor) return; + await setupDts(editor.monaco); + return { + tsTextModel: editor.tsTextModel, + onCodeChange: (f) => { + let timeoutId; + const debounceDelay = 1e3; + editor.tsTextModel.tsModel.onDidChangeContent(() => { + if (timeoutId !== void 0) { + clearTimeout(timeoutId); + } + timeoutId = window.setTimeout(() => { + const markers = editor.monaco.editor.getModelMarkers({ + resource: editor.tsTextModel.tsModel.uri + }); + const hasError = markers.find((_) => _.severity.valueOf() == 8) != null; + if (!hasError) { + f(); + } else { + console.debug("Code contains errors"); + } + }, debounceDelay); + }); + } + }; +}; +var flushPending = false; +var flushing = false; +var queue = []; +var lastFlushedIndex = -1; +function scheduler(callback) { + queueJob(callback); +} +function queueJob(job) { + if (!queue.includes(job)) + queue.push(job); + queueFlush(); +} +function dequeueJob(job) { + let index = queue.indexOf(job); + if (index !== -1 && index > lastFlushedIndex) + queue.splice(index, 1); +} +function queueFlush() { + if (!flushing && !flushPending) { + flushPending = true; + queueMicrotask(flushJobs); + } +} +function flushJobs() { + flushPending = false; + flushing = true; + for (let i = 0; i < queue.length; i++) { + queue[i](); + lastFlushedIndex = i; + } + queue.length = 0; + lastFlushedIndex = -1; + flushing = false; +} +var reactive; +var effect; +var release; +var raw; +var shouldSchedule = true; +function disableEffectScheduling(callback) { + shouldSchedule = false; + callback(); + shouldSchedule = true; +} +function setReactivityEngine(engine) { + reactive = engine.reactive; + release = engine.release; + effect = (callback) => engine.effect(callback, { scheduler: (task) => { + if (shouldSchedule) { + scheduler(task); + } else { + task(); + } + } }); + raw = engine.raw; +} +function overrideEffect(override) { + effect = override; +} +function elementBoundEffect(el) { + let cleanup2 = () => { + }; + let wrappedEffect = (callback) => { + let effectReference = effect(callback); + if (!el._x_effects) { + el._x_effects = /* @__PURE__ */ new Set(); + el._x_runEffects = () => { + el._x_effects.forEach((i) => i()); + }; + } + el._x_effects.add(effectReference); + cleanup2 = () => { + if (effectReference === void 0) + return; + el._x_effects.delete(effectReference); + release(effectReference); + }; + return effectReference; + }; + return [wrappedEffect, () => { + cleanup2(); + }]; +} +function watch(getter, callback) { + let firstTime = true; + let oldValue; + let effectReference = effect(() => { + let value = getter(); + JSON.stringify(value); + if (!firstTime) { + queueMicrotask(() => { + callback(value, oldValue); + oldValue = value; + }); + } else { + oldValue = value; + } + firstTime = false; + }); + return () => release(effectReference); +} +var onAttributeAddeds = []; +var onElRemoveds = []; +var onElAddeds = []; +function onElAdded(callback) { + onElAddeds.push(callback); +} +function onElRemoved(el, callback) { + if (typeof callback === "function") { + if (!el._x_cleanups) + el._x_cleanups = []; + el._x_cleanups.push(callback); + } else { + callback = el; + onElRemoveds.push(callback); + } +} +function onAttributesAdded(callback) { + onAttributeAddeds.push(callback); +} +function onAttributeRemoved(el, name, callback) { + if (!el._x_attributeCleanups) + el._x_attributeCleanups = {}; + if (!el._x_attributeCleanups[name]) + el._x_attributeCleanups[name] = []; + el._x_attributeCleanups[name].push(callback); +} +function cleanupAttributes(el, names) { + if (!el._x_attributeCleanups) + return; + Object.entries(el._x_attributeCleanups).forEach(([name, value]) => { + if (names === void 0 || names.includes(name)) { + value.forEach((i) => i()); + delete el._x_attributeCleanups[name]; + } + }); +} +function cleanupElement(el) { + var _a, _b; + (_a = el._x_effects) == null ? void 0 : _a.forEach(dequeueJob); + while ((_b = el._x_cleanups) == null ? void 0 : _b.length) + el._x_cleanups.pop()(); +} +var observer = new MutationObserver(onMutate); +var currentlyObserving = false; +function startObservingMutations() { + observer.observe(document, { subtree: true, childList: true, attributes: true, attributeOldValue: true }); + currentlyObserving = true; +} +function stopObservingMutations() { + flushObserver(); + observer.disconnect(); + currentlyObserving = false; +} +var queuedMutations = []; +function flushObserver() { + let records = observer.takeRecords(); + queuedMutations.push(() => records.length > 0 && onMutate(records)); + let queueLengthWhenTriggered = queuedMutations.length; + queueMicrotask(() => { + if (queuedMutations.length === queueLengthWhenTriggered) { + while (queuedMutations.length > 0) + queuedMutations.shift()(); + } + }); +} +function mutateDom(callback) { + if (!currentlyObserving) + return callback(); + stopObservingMutations(); + let result = callback(); + startObservingMutations(); + return result; +} +var isCollecting = false; +var deferredMutations = []; +function deferMutations() { + isCollecting = true; +} +function flushAndStopDeferringMutations() { + isCollecting = false; + onMutate(deferredMutations); + deferredMutations = []; +} +function onMutate(mutations) { + if (isCollecting) { + deferredMutations = deferredMutations.concat(mutations); + return; + } + let addedNodes = []; + let removedNodes = /* @__PURE__ */ new Set(); + let addedAttributes = /* @__PURE__ */ new Map(); + let removedAttributes = /* @__PURE__ */ new Map(); + for (let i = 0; i < mutations.length; i++) { + if (mutations[i].target._x_ignoreMutationObserver) + continue; + if (mutations[i].type === "childList") { + mutations[i].removedNodes.forEach((node) => { + if (node.nodeType !== 1) + return; + if (!node._x_marker) + return; + removedNodes.add(node); + }); + mutations[i].addedNodes.forEach((node) => { + if (node.nodeType !== 1) + return; + if (removedNodes.has(node)) { + removedNodes.delete(node); + return; + } + if (node._x_marker) + return; + addedNodes.push(node); + }); + } + if (mutations[i].type === "attributes") { + let el = mutations[i].target; + let name = mutations[i].attributeName; + let oldValue = mutations[i].oldValue; + let add2 = () => { + if (!addedAttributes.has(el)) + addedAttributes.set(el, []); + addedAttributes.get(el).push({ name, value: el.getAttribute(name) }); + }; + let remove = () => { + if (!removedAttributes.has(el)) + removedAttributes.set(el, []); + removedAttributes.get(el).push(name); + }; + if (el.hasAttribute(name) && oldValue === null) { + add2(); + } else if (el.hasAttribute(name)) { + remove(); + add2(); + } else { + remove(); + } + } + } + removedAttributes.forEach((attrs, el) => { + cleanupAttributes(el, attrs); + }); + addedAttributes.forEach((attrs, el) => { + onAttributeAddeds.forEach((i) => i(el, attrs)); + }); + for (let node of removedNodes) { + if (addedNodes.some((i) => i.contains(node))) + continue; + onElRemoveds.forEach((i) => i(node)); + } + for (let node of addedNodes) { + if (!node.isConnected) + continue; + onElAddeds.forEach((i) => i(node)); + } + addedNodes = null; + removedNodes = null; + addedAttributes = null; + removedAttributes = null; +} +function scope(node) { + return mergeProxies(closestDataStack(node)); +} +function addScopeToNode(node, data2, referenceNode) { + node._x_dataStack = [data2, ...closestDataStack(referenceNode || node)]; + return () => { + node._x_dataStack = node._x_dataStack.filter((i) => i !== data2); + }; +} +function closestDataStack(node) { + if (node._x_dataStack) + return node._x_dataStack; + if (typeof ShadowRoot === "function" && node instanceof ShadowRoot) { + return closestDataStack(node.host); + } + if (!node.parentNode) { + return []; + } + return closestDataStack(node.parentNode); +} +function mergeProxies(objects) { + return new Proxy({ objects }, mergeProxyTrap); +} +var mergeProxyTrap = { + ownKeys({ objects }) { + return Array.from( + new Set(objects.flatMap((i) => Object.keys(i))) + ); + }, + has({ objects }, name) { + if (name == Symbol.unscopables) + return false; + return objects.some( + (obj) => Object.prototype.hasOwnProperty.call(obj, name) || Reflect.has(obj, name) + ); + }, + get({ objects }, name, thisProxy) { + if (name == "toJSON") + return collapseProxies; + return Reflect.get( + objects.find( + (obj) => Reflect.has(obj, name) + ) || {}, + name, + thisProxy + ); + }, + set({ objects }, name, value, thisProxy) { + const target = objects.find( + (obj) => Object.prototype.hasOwnProperty.call(obj, name) + ) || objects[objects.length - 1]; + const descriptor = Object.getOwnPropertyDescriptor(target, name); + if ((descriptor == null ? void 0 : descriptor.set) && (descriptor == null ? void 0 : descriptor.get)) + return descriptor.set.call(thisProxy, value) || true; + return Reflect.set(target, name, value); + } +}; +function collapseProxies() { + let keys = Reflect.ownKeys(this); + return keys.reduce((acc, key) => { + acc[key] = Reflect.get(this, key); + return acc; + }, {}); +} +function initInterceptors(data2) { + let isObject2 = (val) => typeof val === "object" && !Array.isArray(val) && val !== null; + let recurse = (obj, basePath = "") => { + Object.entries(Object.getOwnPropertyDescriptors(obj)).forEach(([key, { value, enumerable }]) => { + if (enumerable === false || value === void 0) + return; + if (typeof value === "object" && value !== null && value.__v_skip) + return; + let path = basePath === "" ? key : `${basePath}.${key}`; + if (typeof value === "object" && value !== null && value._x_interceptor) { + obj[key] = value.initialize(data2, path, key); + } else { + if (isObject2(value) && value !== obj && !(value instanceof Element)) { + recurse(value, path); + } + } + }); + }; + return recurse(data2); +} +function interceptor(callback, mutateObj = () => { +}) { + let obj = { + initialValue: void 0, + _x_interceptor: true, + initialize(data2, path, key) { + return callback(this.initialValue, () => get(data2, path), (value) => set(data2, path, value), path, key); + } + }; + mutateObj(obj); + return (initialValue) => { + if (typeof initialValue === "object" && initialValue !== null && initialValue._x_interceptor) { + let initialize = obj.initialize.bind(obj); + obj.initialize = (data2, path, key) => { + let innerValue = initialValue.initialize(data2, path, key); + obj.initialValue = innerValue; + return initialize(data2, path, key); + }; + } else { + obj.initialValue = initialValue; + } + return obj; + }; +} +function get(obj, path) { + return path.split(".").reduce((carry, segment) => carry[segment], obj); +} +function set(obj, path, value) { + if (typeof path === "string") + path = path.split("."); + if (path.length === 1) + obj[path[0]] = value; + else if (path.length === 0) + throw error; + else { + if (obj[path[0]]) + return set(obj[path[0]], path.slice(1), value); + else { + obj[path[0]] = {}; + return set(obj[path[0]], path.slice(1), value); + } + } +} +var magics = {}; +function magic(name, callback) { + magics[name] = callback; +} +function injectMagics(obj, el) { + let memoizedUtilities = getUtilities(el); + Object.entries(magics).forEach(([name, callback]) => { + Object.defineProperty(obj, `$${name}`, { + get() { + return callback(el, memoizedUtilities); + }, + enumerable: false + }); + }); + return obj; +} +function getUtilities(el) { + let [utilities, cleanup2] = getElementBoundUtilities(el); + let utils = { interceptor, ...utilities }; + onElRemoved(el, cleanup2); + return utils; +} +function tryCatch(el, expression, callback, ...args) { + try { + return callback(...args); + } catch (e) { + handleError(e, el, expression); + } +} +function handleError(error2, el, expression = void 0) { + error2 = Object.assign( + error2 ?? { message: "No error message given." }, + { el, expression } + ); + console.warn(`Alpine Expression Error: ${error2.message} + +${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el); + setTimeout(() => { + throw error2; + }, 0); +} +var shouldAutoEvaluateFunctions = true; +function dontAutoEvaluateFunctions(callback) { + let cache = shouldAutoEvaluateFunctions; + shouldAutoEvaluateFunctions = false; + let result = callback(); + shouldAutoEvaluateFunctions = cache; + return result; +} +function evaluate(el, expression, extras = {}) { + let result; + evaluateLater(el, expression)((value) => result = value, extras); + return result; +} +function evaluateLater(...args) { + return theEvaluatorFunction(...args); +} +var theEvaluatorFunction = normalEvaluator; +function setEvaluator(newEvaluator) { + theEvaluatorFunction = newEvaluator; +} +function normalEvaluator(el, expression) { + let overriddenMagics = {}; + injectMagics(overriddenMagics, el); + let dataStack = [overriddenMagics, ...closestDataStack(el)]; + let evaluator = typeof expression === "function" ? generateEvaluatorFromFunction(dataStack, expression) : generateEvaluatorFromString(dataStack, expression, el); + return tryCatch.bind(null, el, expression, evaluator); +} +function generateEvaluatorFromFunction(dataStack, func) { + return (receiver = () => { + }, { scope: scope2 = {}, params = [] } = {}) => { + let result = func.apply(mergeProxies([scope2, ...dataStack]), params); + runIfTypeOfFunction(receiver, result); + }; +} +var evaluatorMemo = {}; +function generateFunctionFromString(expression, el) { + if (evaluatorMemo[expression]) { + return evaluatorMemo[expression]; + } + let AsyncFunction = Object.getPrototypeOf(async function() { + }).constructor; + let rightSideSafeExpression = /^[\n\s]*if.*\(.*\)/.test(expression.trim()) || /^(let|const)\s/.test(expression.trim()) ? `(async()=>{ ${expression} })()` : expression; + const safeAsyncFunction = () => { + try { + let func2 = new AsyncFunction( + ["__self", "scope"], + `with (scope) { __self.result = ${rightSideSafeExpression} }; __self.finished = true; return __self.result;` + ); + Object.defineProperty(func2, "name", { + value: `[Alpine] ${expression}` + }); + return func2; + } catch (error2) { + handleError(error2, el, expression); + return Promise.resolve(); + } + }; + let func = safeAsyncFunction(); + evaluatorMemo[expression] = func; + return func; +} +function generateEvaluatorFromString(dataStack, expression, el) { + let func = generateFunctionFromString(expression, el); + return (receiver = () => { + }, { scope: scope2 = {}, params = [] } = {}) => { + func.result = void 0; + func.finished = false; + let completeScope = mergeProxies([scope2, ...dataStack]); + if (typeof func === "function") { + let promise = func(func, completeScope).catch((error2) => handleError(error2, el, expression)); + if (func.finished) { + runIfTypeOfFunction(receiver, func.result, completeScope, params, el); + func.result = void 0; + } else { + promise.then((result) => { + runIfTypeOfFunction(receiver, result, completeScope, params, el); + }).catch((error2) => handleError(error2, el, expression)).finally(() => func.result = void 0); + } + } + }; +} +function runIfTypeOfFunction(receiver, value, scope2, params, el) { + if (shouldAutoEvaluateFunctions && typeof value === "function") { + let result = value.apply(scope2, params); + if (result instanceof Promise) { + result.then((i) => runIfTypeOfFunction(receiver, i, scope2, params)).catch((error2) => handleError(error2, el, value)); + } else { + receiver(result); + } + } else if (typeof value === "object" && value instanceof Promise) { + value.then((i) => receiver(i)); + } else { + receiver(value); + } +} +var prefixAsString = "x-"; +function prefix(subject = "") { + return prefixAsString + subject; +} +function setPrefix(newPrefix) { + prefixAsString = newPrefix; +} +var directiveHandlers = {}; +function directive(name, callback) { + directiveHandlers[name] = callback; + return { + before(directive2) { + if (!directiveHandlers[directive2]) { + console.warn(String.raw`Cannot find directive \`${directive2}\`. \`${name}\` will use the default order of execution`); + return; + } + const pos = directiveOrder.indexOf(directive2); + directiveOrder.splice(pos >= 0 ? pos : directiveOrder.indexOf("DEFAULT"), 0, name); + } + }; +} +function directiveExists(name) { + return Object.keys(directiveHandlers).includes(name); +} +function directives(el, attributes, originalAttributeOverride) { + attributes = Array.from(attributes); + if (el._x_virtualDirectives) { + let vAttributes = Object.entries(el._x_virtualDirectives).map(([name, value]) => ({ name, value })); + let staticAttributes = attributesOnly(vAttributes); + vAttributes = vAttributes.map((attribute) => { + if (staticAttributes.find((attr) => attr.name === attribute.name)) { + return { + name: `x-bind:${attribute.name}`, + value: `"${attribute.value}"` + }; + } + return attribute; + }); + attributes = attributes.concat(vAttributes); + } + let transformedAttributeMap = {}; + let directives2 = attributes.map(toTransformedAttributes((newName, oldName) => transformedAttributeMap[newName] = oldName)).filter(outNonAlpineAttributes).map(toParsedDirectives(transformedAttributeMap, originalAttributeOverride)).sort(byPriority); + return directives2.map((directive2) => { + return getDirectiveHandler(el, directive2); + }); +} +function attributesOnly(attributes) { + return Array.from(attributes).map(toTransformedAttributes()).filter((attr) => !outNonAlpineAttributes(attr)); +} +var isDeferringHandlers = false; +var directiveHandlerStacks = /* @__PURE__ */ new Map(); +var currentHandlerStackKey = Symbol(); +function deferHandlingDirectives(callback) { + isDeferringHandlers = true; + let key = Symbol(); + currentHandlerStackKey = key; + directiveHandlerStacks.set(key, []); + let flushHandlers = () => { + while (directiveHandlerStacks.get(key).length) + directiveHandlerStacks.get(key).shift()(); + directiveHandlerStacks.delete(key); + }; + let stopDeferring = () => { + isDeferringHandlers = false; + flushHandlers(); + }; + callback(flushHandlers); + stopDeferring(); +} +function getElementBoundUtilities(el) { + let cleanups = []; + let cleanup2 = (callback) => cleanups.push(callback); + let [effect3, cleanupEffect] = elementBoundEffect(el); + cleanups.push(cleanupEffect); + let utilities = { + Alpine: alpine_default, + effect: effect3, + cleanup: cleanup2, + evaluateLater: evaluateLater.bind(evaluateLater, el), + evaluate: evaluate.bind(evaluate, el) + }; + let doCleanup = () => cleanups.forEach((i) => i()); + return [utilities, doCleanup]; +} +function getDirectiveHandler(el, directive2) { + let noop = () => { + }; + let handler4 = directiveHandlers[directive2.type] || noop; + let [utilities, cleanup2] = getElementBoundUtilities(el); + onAttributeRemoved(el, directive2.original, cleanup2); + let fullHandler = () => { + if (el._x_ignore || el._x_ignoreSelf) + return; + handler4.inline && handler4.inline(el, directive2, utilities); + handler4 = handler4.bind(handler4, el, directive2, utilities); + isDeferringHandlers ? directiveHandlerStacks.get(currentHandlerStackKey).push(handler4) : handler4(); + }; + fullHandler.runCleanups = cleanup2; + return fullHandler; +} +var startingWith = (subject, replacement) => ({ name, value }) => { + if (name.startsWith(subject)) + name = name.replace(subject, replacement); + return { name, value }; +}; +var into = (i) => i; +function toTransformedAttributes(callback = () => { +}) { + return ({ name, value }) => { + let { name: newName, value: newValue } = attributeTransformers.reduce((carry, transform) => { + return transform(carry); + }, { name, value }); + if (newName !== name) + callback(newName, name); + return { name: newName, value: newValue }; + }; +} +var attributeTransformers = []; +function mapAttributes(callback) { + attributeTransformers.push(callback); +} +function outNonAlpineAttributes({ name }) { + return alpineAttributeRegex().test(name); +} +var alpineAttributeRegex = () => new RegExp(`^${prefixAsString}([^:^.]+)\\b`); +function toParsedDirectives(transformedAttributeMap, originalAttributeOverride) { + return ({ name, value }) => { + let typeMatch = name.match(alpineAttributeRegex()); + let valueMatch = name.match(/:([a-zA-Z0-9\-_:]+)/); + let modifiers = name.match(/\.[^.\]]+(?=[^\]]*$)/g) || []; + let original = originalAttributeOverride || transformedAttributeMap[name] || name; + return { + type: typeMatch ? typeMatch[1] : null, + value: valueMatch ? valueMatch[1] : null, + modifiers: modifiers.map((i) => i.replace(".", "")), + expression: value, + original + }; + }; +} +var DEFAULT = "DEFAULT"; +var directiveOrder = [ + "ignore", + "ref", + "data", + "id", + "anchor", + "bind", + "init", + "for", + "model", + "modelable", + "transition", + "show", + "if", + DEFAULT, + "teleport" +]; +function byPriority(a, b) { + let typeA = directiveOrder.indexOf(a.type) === -1 ? DEFAULT : a.type; + let typeB = directiveOrder.indexOf(b.type) === -1 ? DEFAULT : b.type; + return directiveOrder.indexOf(typeA) - directiveOrder.indexOf(typeB); +} +function dispatch(el, name, detail = {}) { + el.dispatchEvent( + new CustomEvent(name, { + detail, + bubbles: true, + // Allows events to pass the shadow DOM barrier. + composed: true, + cancelable: true + }) + ); +} +function walk(el, callback) { + if (typeof ShadowRoot === "function" && el instanceof ShadowRoot) { + Array.from(el.children).forEach((el2) => walk(el2, callback)); + return; + } + let skip = false; + callback(el, () => skip = true); + if (skip) + return; + let node = el.firstElementChild; + while (node) { + walk(node, callback); + node = node.nextElementSibling; + } +} +function warn(message, ...args) { + console.warn(`Alpine Warning: ${message}`, ...args); +} +var started = false; +function start() { + if (started) + warn("Alpine has already been initialized on this page. Calling Alpine.start() more than once can cause problems."); + started = true; + if (!document.body) + warn("Unable to initialize. Trying to load Alpine before `` is available. Did you forget to add `defer` in Alpine's ` - - - - + + -

Telegram Bot Playground 🤖

+

Telegram Bot Playground 🤖

diff --git a/makefile b/makefile new file mode 100644 index 0000000..b73fd36 --- /dev/null +++ b/makefile @@ -0,0 +1,5 @@ +build-tg: + PROJECT=tg-bot-playground vite build + +dev: + PROJECT=tg-bot-playground vite \ No newline at end of file diff --git a/package.json b/package.json index 3421dbb..b691e84 100644 --- a/package.json +++ b/package.json @@ -1,22 +1,17 @@ { "private": "true", "type": "module", - "scripts": { - "gen-html": "redocly build-docs --output ../effect-ak.github.io/telegram-bot-api/index.html", - "dev": "cd docs && http-server", - "build": "tsup && node scripts/prep-page.js" - }, "dependencies": { "@edge-runtime/vm": "^5.0.0", - "@effect-ak/tg-bot-client": "file:../tg-bot-client/effect-ak-tg-bot-client-0.2.2.tgz", + "@effect-ak/tg-bot-client": "^0.3.0", "@monaco-editor/loader": "^1.4.0", - "@redocly/cli": "^1.26.0", "@types/alpinejs": "^3.13.11", - "@types/node": "22.10.2", - "effect": "^3.11.9", + "@types/node": "^22.10.5", + "alpinejs": "^3.14.8", + "effect": "^3.12.6", "monaco-editor": "^0.52.2", - "typescript": "^5.7.2", + "vite": "^6.0.11", "vite-tsconfig-paths": "^5.1.4", - "vitest": "^2.1.8" + "vitest": "^3.0.3" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 17d10d9..3b57778 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,49 +12,38 @@ importers: specifier: ^5.0.0 version: 5.0.0 '@effect-ak/tg-bot-client': - specifier: file:../tg-bot-client/effect-ak-tg-bot-client-0.2.2.tgz - version: file:../tg-bot-client/effect-ak-tg-bot-client-0.2.2.tgz + specifier: ^0.3.0 + version: 0.3.2 '@monaco-editor/loader': specifier: ^1.4.0 version: 1.4.0(monaco-editor@0.52.2) - '@redocly/cli': - specifier: ^1.26.0 - version: 1.26.1(enzyme@3.11.0) '@types/alpinejs': specifier: ^3.13.11 version: 3.13.11 '@types/node': - specifier: 22.10.2 - version: 22.10.2 + specifier: ^22.10.5 + version: 22.10.7 + alpinejs: + specifier: ^3.14.8 + version: 3.14.8 effect: - specifier: ^3.11.9 - version: 3.11.9 + specifier: ^3.12.6 + version: 3.12.6 monaco-editor: specifier: ^0.52.2 version: 0.52.2 - typescript: - specifier: ^5.7.2 - version: 5.7.2 + vite: + specifier: ^6.0.11 + version: 6.0.11(@types/node@22.10.7) vite-tsconfig-paths: specifier: ^5.1.4 - version: 5.1.4(typescript@5.7.2)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)) + version: 5.1.4(vite@6.0.11(@types/node@22.10.7)) vitest: - specifier: ^2.1.8 - version: 2.1.8(@edge-runtime/vm@5.0.0)(@types/node@22.10.2)(lightningcss@1.28.2) + specifier: ^3.0.3 + version: 3.0.3(@edge-runtime/vm@5.0.0)(@types/node@22.10.7) packages: - '@babel/runtime@7.26.0': - resolution: {integrity: sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==, tarball: https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.0.tgz} - engines: {node: '>=6.9.0'} - - '@cfaester/enzyme-adapter-react-18@0.8.0': - resolution: {integrity: sha512-3Z3ThTUouHwz8oIyhTYQljEMNRFtlVyc3VOOHCbxs47U6cnXs8K9ygi/c1tv49s7MBlTXeIcuN+Ttd9aPtILFQ==, tarball: https://registry.npmjs.org/@cfaester/enzyme-adapter-react-18/-/enzyme-adapter-react-18-0.8.0.tgz} - peerDependencies: - enzyme: ^3.11.0 - react: '>=18' - react-dom: '>=18' - '@edge-runtime/primitives@6.0.0': resolution: {integrity: sha512-FqoxaBT+prPBHBwE1WXS1ocnu/VLTQyZ6NMUBAdbP7N2hsFTTxMC/jMu2D/8GAlMQfxeuppcPuCUk/HO3fpIvA==, tarball: https://registry.npmjs.org/@edge-runtime/primitives/-/primitives-6.0.0.tgz} engines: {node: '>=18'} @@ -63,160 +52,159 @@ packages: resolution: {integrity: sha512-NKBGBSIKUG584qrS1tyxVpX/AKJKQw5HgjYEnPLC0QsTw79JrGn+qUr8CXFb955Iy7GUdiiUv1rJ6JBGvaKb6w==, tarball: https://registry.npmjs.org/@edge-runtime/vm/-/vm-5.0.0.tgz} engines: {node: '>=18'} - '@effect-ak/tg-bot-client@file:../tg-bot-client/effect-ak-tg-bot-client-0.2.2.tgz': - resolution: {integrity: sha512-kfASWdDyMxBWSsaLkC9tKhfSvVMWiT/pAyaY1qybduThAWDm1vN4n3r6qbcSL1u2nQAlPSIh926UCROMA/Bhbw==, tarball: file:../tg-bot-client/effect-ak-tg-bot-client-0.2.2.tgz} - version: 0.2.2 - - '@emotion/is-prop-valid@1.2.2': - resolution: {integrity: sha512-uNsoYd37AFmaCdXlg6EYD1KaPOaRWRByMCYzbKUX4+hhMfrxdVSelShywL4JVaAeM/eHUOSprYBQls+/neX3pw==, tarball: https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.2.tgz} - - '@emotion/memoize@0.8.1': - resolution: {integrity: sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==, tarball: https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz} - - '@emotion/unitless@0.8.1': - resolution: {integrity: sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==, tarball: https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz} + '@effect-ak/tg-bot-client@0.3.2': + resolution: {integrity: sha512-ecfLb2QHycbUT/0QBiFpHab8ncRh+l3jLExkRUQWlvzqBVt7tRSKQXYvhAkxmV+wKJmxuqHz8YNn6GQ+ui9Www==, tarball: https://registry.npmjs.org/@effect-ak/tg-bot-client/-/tg-bot-client-0.3.2.tgz} - '@esbuild/aix-ppc64@0.21.5': - resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==, tarball: https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/aix-ppc64@0.24.2': + resolution: {integrity: sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==, tarball: https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.2.tgz} + engines: {node: '>=18'} cpu: [ppc64] os: [aix] - '@esbuild/android-arm64@0.21.5': - resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==, tarball: https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/android-arm64@0.24.2': + resolution: {integrity: sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==, tarball: https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.2.tgz} + engines: {node: '>=18'} cpu: [arm64] os: [android] - '@esbuild/android-arm@0.21.5': - resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==, tarball: https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/android-arm@0.24.2': + resolution: {integrity: sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==, tarball: https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.2.tgz} + engines: {node: '>=18'} cpu: [arm] os: [android] - '@esbuild/android-x64@0.21.5': - resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==, tarball: https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/android-x64@0.24.2': + resolution: {integrity: sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==, tarball: https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.2.tgz} + engines: {node: '>=18'} cpu: [x64] os: [android] - '@esbuild/darwin-arm64@0.21.5': - resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==, tarball: https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/darwin-arm64@0.24.2': + resolution: {integrity: sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==, tarball: https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.2.tgz} + engines: {node: '>=18'} cpu: [arm64] os: [darwin] - '@esbuild/darwin-x64@0.21.5': - resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==, tarball: https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/darwin-x64@0.24.2': + resolution: {integrity: sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==, tarball: https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.2.tgz} + engines: {node: '>=18'} cpu: [x64] os: [darwin] - '@esbuild/freebsd-arm64@0.21.5': - resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==, tarball: https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/freebsd-arm64@0.24.2': + resolution: {integrity: sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==, tarball: https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.2.tgz} + engines: {node: '>=18'} cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-x64@0.21.5': - resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==, tarball: https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/freebsd-x64@0.24.2': + resolution: {integrity: sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==, tarball: https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.2.tgz} + engines: {node: '>=18'} cpu: [x64] os: [freebsd] - '@esbuild/linux-arm64@0.21.5': - resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==, tarball: https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/linux-arm64@0.24.2': + resolution: {integrity: sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==, tarball: https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.2.tgz} + engines: {node: '>=18'} cpu: [arm64] os: [linux] - '@esbuild/linux-arm@0.21.5': - resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==, tarball: https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/linux-arm@0.24.2': + resolution: {integrity: sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==, tarball: https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.2.tgz} + engines: {node: '>=18'} cpu: [arm] os: [linux] - '@esbuild/linux-ia32@0.21.5': - resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==, tarball: https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/linux-ia32@0.24.2': + resolution: {integrity: sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==, tarball: https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.2.tgz} + engines: {node: '>=18'} cpu: [ia32] os: [linux] - '@esbuild/linux-loong64@0.21.5': - resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==, tarball: https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/linux-loong64@0.24.2': + resolution: {integrity: sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==, tarball: https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.2.tgz} + engines: {node: '>=18'} cpu: [loong64] os: [linux] - '@esbuild/linux-mips64el@0.21.5': - resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==, tarball: https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/linux-mips64el@0.24.2': + resolution: {integrity: sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==, tarball: https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.2.tgz} + engines: {node: '>=18'} cpu: [mips64el] os: [linux] - '@esbuild/linux-ppc64@0.21.5': - resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==, tarball: https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/linux-ppc64@0.24.2': + resolution: {integrity: sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==, tarball: https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.2.tgz} + engines: {node: '>=18'} cpu: [ppc64] os: [linux] - '@esbuild/linux-riscv64@0.21.5': - resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==, tarball: https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/linux-riscv64@0.24.2': + resolution: {integrity: sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==, tarball: https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.2.tgz} + engines: {node: '>=18'} cpu: [riscv64] os: [linux] - '@esbuild/linux-s390x@0.21.5': - resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==, tarball: https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/linux-s390x@0.24.2': + resolution: {integrity: sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==, tarball: https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.2.tgz} + engines: {node: '>=18'} cpu: [s390x] os: [linux] - '@esbuild/linux-x64@0.21.5': - resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==, tarball: https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/linux-x64@0.24.2': + resolution: {integrity: sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==, tarball: https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.2.tgz} + engines: {node: '>=18'} cpu: [x64] os: [linux] - '@esbuild/netbsd-x64@0.21.5': - resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==, tarball: https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/netbsd-arm64@0.24.2': + resolution: {integrity: sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==, tarball: https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.24.2.tgz} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + + '@esbuild/netbsd-x64@0.24.2': + resolution: {integrity: sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==, tarball: https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.2.tgz} + engines: {node: '>=18'} cpu: [x64] os: [netbsd] - '@esbuild/openbsd-x64@0.21.5': - resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==, tarball: https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/openbsd-arm64@0.24.2': + resolution: {integrity: sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==, tarball: https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.2.tgz} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + + '@esbuild/openbsd-x64@0.24.2': + resolution: {integrity: sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==, tarball: https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.2.tgz} + engines: {node: '>=18'} cpu: [x64] os: [openbsd] - '@esbuild/sunos-x64@0.21.5': - resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==, tarball: https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/sunos-x64@0.24.2': + resolution: {integrity: sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==, tarball: https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.2.tgz} + engines: {node: '>=18'} cpu: [x64] os: [sunos] - '@esbuild/win32-arm64@0.21.5': - resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==, tarball: https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/win32-arm64@0.24.2': + resolution: {integrity: sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==, tarball: https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.2.tgz} + engines: {node: '>=18'} cpu: [arm64] os: [win32] - '@esbuild/win32-ia32@0.21.5': - resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==, tarball: https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/win32-ia32@0.24.2': + resolution: {integrity: sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==, tarball: https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.2.tgz} + engines: {node: '>=18'} cpu: [ia32] os: [win32] - '@esbuild/win32-x64@0.21.5': - resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==, tarball: https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz} - engines: {node: '>=12'} + '@esbuild/win32-x64@0.24.2': + resolution: {integrity: sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==, tarball: https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.2.tgz} + engines: {node: '>=18'} cpu: [x64] os: [win32] - '@exodus/schemasafe@1.3.0': - resolution: {integrity: sha512-5Aap/GaRupgNx/feGBwLLTVv8OQFfv3pq2lPRzPg9R+IOBnDgghTGW7l7EuVXOvg5cc/xSAlRW8rBrjIC3Nvqw==, tarball: https://registry.npmjs.org/@exodus/schemasafe/-/schemasafe-1.3.0.tgz} - '@jridgewell/sourcemap-codec@1.5.0': resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==, tarball: https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz} @@ -225,113 +213,98 @@ packages: peerDependencies: monaco-editor: '>= 0.21.0 < 1' - '@redocly/ajv@8.11.2': - resolution: {integrity: sha512-io1JpnwtIcvojV7QKDUSIuMN/ikdOUd1ReEnUnMKGfDVridQZ31J0MmIuqwuRjWDZfmvr+Q0MqCcfHM2gTivOg==, tarball: https://registry.npmjs.org/@redocly/ajv/-/ajv-8.11.2.tgz} - - '@redocly/cli@1.26.1': - resolution: {integrity: sha512-ZNutKq1W+iiwpR7GtuGCfU1hU62KsP0AELDvcCvkWzcCWhRiaOGEQSSwPfRdjehgzqecApUvG0nG0nCQmwqcoQ==, tarball: https://registry.npmjs.org/@redocly/cli/-/cli-1.26.1.tgz} - engines: {node: '>=14.19.0', npm: '>=7.0.0'} - hasBin: true - - '@redocly/config@0.17.1': - resolution: {integrity: sha512-CEmvaJuG7pm2ylQg53emPmtgm4nW2nxBgwXzbVEHpGas/lGnMyN8Zlkgiz6rPw0unASg6VW3wlz27SOL5XFHYQ==, tarball: https://registry.npmjs.org/@redocly/config/-/config-0.17.1.tgz} - - '@redocly/openapi-core@1.26.1': - resolution: {integrity: sha512-xRuVZqMVRFzqjbUCpOTra4tbnmQMWsya996omZMV3WgD084Z6OWB3FXflhAp93E/yAmbWlWZpddw758AyoaLSw==, tarball: https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.26.1.tgz} - engines: {node: '>=14.19.0', npm: '>=7.0.0'} - - '@rollup/rollup-android-arm-eabi@4.29.1': - resolution: {integrity: sha512-ssKhA8RNltTZLpG6/QNkCSge+7mBQGUqJRisZ2MDQcEGaK93QESEgWK2iOpIDZ7k9zPVkG5AS3ksvD5ZWxmItw==, tarball: https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.29.1.tgz} + '@rollup/rollup-android-arm-eabi@4.31.0': + resolution: {integrity: sha512-9NrR4033uCbUBRgvLcBrJofa2KY9DzxL2UKZ1/4xA/mnTNyhZCWBuD8X3tPm1n4KxcgaraOYgrFKSgwjASfmlA==, tarball: https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.31.0.tgz} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.29.1': - resolution: {integrity: sha512-CaRfrV0cd+NIIcVVN/jx+hVLN+VRqnuzLRmfmlzpOzB87ajixsN/+9L5xNmkaUUvEbI5BmIKS+XTwXsHEb65Ew==, tarball: https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.29.1.tgz} + '@rollup/rollup-android-arm64@4.31.0': + resolution: {integrity: sha512-iBbODqT86YBFHajxxF8ebj2hwKm1k8PTBQSojSt3d1FFt1gN+xf4CowE47iN0vOSdnd+5ierMHBbu/rHc7nq5g==, tarball: https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.31.0.tgz} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.29.1': - resolution: {integrity: sha512-2ORr7T31Y0Mnk6qNuwtyNmy14MunTAMx06VAPI6/Ju52W10zk1i7i5U3vlDRWjhOI5quBcrvhkCHyF76bI7kEw==, tarball: https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.29.1.tgz} + '@rollup/rollup-darwin-arm64@4.31.0': + resolution: {integrity: sha512-WHIZfXgVBX30SWuTMhlHPXTyN20AXrLH4TEeH/D0Bolvx9PjgZnn4H677PlSGvU6MKNsjCQJYczkpvBbrBnG6g==, tarball: https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.31.0.tgz} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.29.1': - resolution: {integrity: sha512-j/Ej1oanzPjmN0tirRd5K2/nncAhS9W6ICzgxV+9Y5ZsP0hiGhHJXZ2JQ53iSSjj8m6cRY6oB1GMzNn2EUt6Ng==, tarball: https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.29.1.tgz} + '@rollup/rollup-darwin-x64@4.31.0': + resolution: {integrity: sha512-hrWL7uQacTEF8gdrQAqcDy9xllQ0w0zuL1wk1HV8wKGSGbKPVjVUv/DEwT2+Asabf8Dh/As+IvfdU+H8hhzrQQ==, tarball: https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.31.0.tgz} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.29.1': - resolution: {integrity: sha512-91C//G6Dm/cv724tpt7nTyP+JdN12iqeXGFM1SqnljCmi5yTXriH7B1r8AD9dAZByHpKAumqP1Qy2vVNIdLZqw==, tarball: https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.29.1.tgz} + '@rollup/rollup-freebsd-arm64@4.31.0': + resolution: {integrity: sha512-S2oCsZ4hJviG1QjPY1h6sVJLBI6ekBeAEssYKad1soRFv3SocsQCzX6cwnk6fID6UQQACTjeIMB+hyYrFacRew==, tarball: https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.31.0.tgz} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.29.1': - resolution: {integrity: sha512-hEioiEQ9Dec2nIRoeHUP6hr1PSkXzQaCUyqBDQ9I9ik4gCXQZjJMIVzoNLBRGet+hIUb3CISMh9KXuCcWVW/8w==, tarball: https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.29.1.tgz} + '@rollup/rollup-freebsd-x64@4.31.0': + resolution: {integrity: sha512-pCANqpynRS4Jirn4IKZH4tnm2+2CqCNLKD7gAdEjzdLGbH1iO0zouHz4mxqg0uEMpO030ejJ0aA6e1PJo2xrPA==, tarball: https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.31.0.tgz} cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.29.1': - resolution: {integrity: sha512-Py5vFd5HWYN9zxBv3WMrLAXY3yYJ6Q/aVERoeUFwiDGiMOWsMs7FokXihSOaT/PMWUty/Pj60XDQndK3eAfE6A==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.29.1.tgz} + '@rollup/rollup-linux-arm-gnueabihf@4.31.0': + resolution: {integrity: sha512-0O8ViX+QcBd3ZmGlcFTnYXZKGbFu09EhgD27tgTdGnkcYXLat4KIsBBQeKLR2xZDCXdIBAlWLkiXE1+rJpCxFw==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.31.0.tgz} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.29.1': - resolution: {integrity: sha512-RiWpGgbayf7LUcuSNIbahr0ys2YnEERD4gYdISA06wa0i8RALrnzflh9Wxii7zQJEB2/Eh74dX4y/sHKLWp5uQ==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.29.1.tgz} + '@rollup/rollup-linux-arm-musleabihf@4.31.0': + resolution: {integrity: sha512-w5IzG0wTVv7B0/SwDnMYmbr2uERQp999q8FMkKG1I+j8hpPX2BYFjWe69xbhbP6J9h2gId/7ogesl9hwblFwwg==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.31.0.tgz} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.29.1': - resolution: {integrity: sha512-Z80O+taYxTQITWMjm/YqNoe9d10OX6kDh8X5/rFCMuPqsKsSyDilvfg+vd3iXIqtfmp+cnfL1UrYirkaF8SBZA==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.29.1.tgz} + '@rollup/rollup-linux-arm64-gnu@4.31.0': + resolution: {integrity: sha512-JyFFshbN5xwy6fulZ8B/8qOqENRmDdEkcIMF0Zz+RsfamEW+Zabl5jAb0IozP/8UKnJ7g2FtZZPEUIAlUSX8cA==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.31.0.tgz} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.29.1': - resolution: {integrity: sha512-fOHRtF9gahwJk3QVp01a/GqS4hBEZCV1oKglVVq13kcK3NeVlS4BwIFzOHDbmKzt3i0OuHG4zfRP0YoG5OF/rA==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.29.1.tgz} + '@rollup/rollup-linux-arm64-musl@4.31.0': + resolution: {integrity: sha512-kpQXQ0UPFeMPmPYksiBL9WS/BDiQEjRGMfklVIsA0Sng347H8W2iexch+IEwaR7OVSKtr2ZFxggt11zVIlZ25g==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.31.0.tgz} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-loongarch64-gnu@4.29.1': - resolution: {integrity: sha512-5a7q3tnlbcg0OodyxcAdrrCxFi0DgXJSoOuidFUzHZ2GixZXQs6Tc3CHmlvqKAmOs5eRde+JJxeIf9DonkmYkw==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.29.1.tgz} + '@rollup/rollup-linux-loongarch64-gnu@4.31.0': + resolution: {integrity: sha512-pMlxLjt60iQTzt9iBb3jZphFIl55a70wexvo8p+vVFK+7ifTRookdoXX3bOsRdmfD+OKnMozKO6XM4zR0sHRrQ==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.31.0.tgz} cpu: [loong64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.29.1': - resolution: {integrity: sha512-9b4Mg5Yfz6mRnlSPIdROcfw1BU22FQxmfjlp/CShWwO3LilKQuMISMTtAu/bxmmrE6A902W2cZJuzx8+gJ8e9w==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.29.1.tgz} + '@rollup/rollup-linux-powerpc64le-gnu@4.31.0': + resolution: {integrity: sha512-D7TXT7I/uKEuWiRkEFbed1UUYZwcJDU4vZQdPTcepK7ecPhzKOYk4Er2YR4uHKme4qDeIh6N3XrLfpuM7vzRWQ==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.31.0.tgz} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.29.1': - resolution: {integrity: sha512-G5pn0NChlbRM8OJWpJFMX4/i8OEU538uiSv0P6roZcbpe/WfhEO+AT8SHVKfp8qhDQzaz7Q+1/ixMy7hBRidnQ==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.29.1.tgz} + '@rollup/rollup-linux-riscv64-gnu@4.31.0': + resolution: {integrity: sha512-wal2Tc8O5lMBtoePLBYRKj2CImUCJ4UNGJlLwspx7QApYny7K1cUYlzQ/4IGQBLmm+y0RS7dwc3TDO/pmcneTw==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.31.0.tgz} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.29.1': - resolution: {integrity: sha512-WM9lIkNdkhVwiArmLxFXpWndFGuOka4oJOZh8EP3Vb8q5lzdSCBuhjavJsw68Q9AKDGeOOIHYzYm4ZFvmWez5g==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.29.1.tgz} + '@rollup/rollup-linux-s390x-gnu@4.31.0': + resolution: {integrity: sha512-O1o5EUI0+RRMkK9wiTVpk2tyzXdXefHtRTIjBbmFREmNMy7pFeYXCFGbhKFwISA3UOExlo5GGUuuj3oMKdK6JQ==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.31.0.tgz} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.29.1': - resolution: {integrity: sha512-87xYCwb0cPGZFoGiErT1eDcssByaLX4fc0z2nRM6eMtV9njAfEE6OW3UniAoDhX4Iq5xQVpE6qO9aJbCFumKYQ==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.29.1.tgz} + '@rollup/rollup-linux-x64-gnu@4.31.0': + resolution: {integrity: sha512-zSoHl356vKnNxwOWnLd60ixHNPRBglxpv2g7q0Cd3Pmr561gf0HiAcUBRL3S1vPqRC17Zo2CX/9cPkqTIiai1g==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.31.0.tgz} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.29.1': - resolution: {integrity: sha512-xufkSNppNOdVRCEC4WKvlR1FBDyqCSCpQeMMgv9ZyXqqtKBfkw1yfGMTUTs9Qsl6WQbJnsGboWCp7pJGkeMhKA==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.29.1.tgz} + '@rollup/rollup-linux-x64-musl@4.31.0': + resolution: {integrity: sha512-ypB/HMtcSGhKUQNiFwqgdclWNRrAYDH8iMYH4etw/ZlGwiTVxBz2tDrGRrPlfZu6QjXwtd+C3Zib5pFqID97ZA==, tarball: https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.31.0.tgz} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.29.1': - resolution: {integrity: sha512-F2OiJ42m77lSkizZQLuC+jiZ2cgueWQL5YC9tjo3AgaEw+KJmVxHGSyQfDUoYR9cci0lAywv2Clmckzulcq6ig==, tarball: https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.29.1.tgz} + '@rollup/rollup-win32-arm64-msvc@4.31.0': + resolution: {integrity: sha512-JuhN2xdI/m8Hr+aVO3vspO7OQfUFO6bKLIRTAy0U15vmWjnZDLrEgCZ2s6+scAYaQVpYSh9tZtRijApw9IXyMw==, tarball: https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.31.0.tgz} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.29.1': - resolution: {integrity: sha512-rYRe5S0FcjlOBZQHgbTKNrqxCBUmgDJem/VQTCcTnA2KCabYSWQDrytOzX7avb79cAAweNmMUb/Zw18RNd4mng==, tarball: https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.29.1.tgz} + '@rollup/rollup-win32-ia32-msvc@4.31.0': + resolution: {integrity: sha512-U1xZZXYkvdf5MIWmftU8wrM5PPXzyaY1nGCI4KI4BFfoZxHamsIe+BtnPLIvvPykvQWlVbqUXdLa4aJUuilwLQ==, tarball: https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.31.0.tgz} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.29.1': - resolution: {integrity: sha512-+10CMg9vt1MoHj6x1pxyjPSMjHTIlqs8/tBztXvPAx24SKs9jwVnKqHJumlH/IzhaPUaj3T6T6wfZr8okdXaIg==, tarball: https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.29.1.tgz} + '@rollup/rollup-win32-x64-msvc@4.31.0': + resolution: {integrity: sha512-ul8rnCsUumNln5YWwz0ted2ZHFhzhRRnkpBZ+YRuHoRAlUji9KChpOUOndY7uykrPEPXVbHLlsdo6v5yXo/TXw==, tarball: https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.31.0.tgz} cpu: [x64] os: [win32] @@ -341,139 +314,55 @@ packages: '@types/estree@1.0.6': resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==, tarball: https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz} - '@types/json-schema@7.0.15': - resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==, tarball: https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz} + '@types/node@22.10.7': + resolution: {integrity: sha512-V09KvXxFiutGp6B7XkpaDXlNadZxrzajcY50EuoLIpQ6WWYCSvf19lVIazzfIzQvhUN2HjX12spLojTnhuKlGg==, tarball: https://registry.npmjs.org/@types/node/-/node-22.10.7.tgz} - '@types/node@22.10.2': - resolution: {integrity: sha512-Xxr6BBRCAOQixvonOye19wnzyDiUtTeqldOOmj3CkeblonbccA12PFwlufvRdrpjXxqnmUaeiU5EOA+7s5diUQ==, tarball: https://registry.npmjs.org/@types/node/-/node-22.10.2.tgz} + '@vitest/expect@3.0.3': + resolution: {integrity: sha512-SbRCHU4qr91xguu+dH3RUdI5dC86zm8aZWydbp961aIR7G8OYNN6ZiayFuf9WAngRbFOfdrLHCGgXTj3GtoMRQ==, tarball: https://registry.npmjs.org/@vitest/expect/-/expect-3.0.3.tgz} - '@types/stylis@4.2.5': - resolution: {integrity: sha512-1Xve+NMN7FWjY14vLoY5tL3BVEQ/n42YLwaqJIPYhotZ9uBHt87VceMwWQpzmdEt2TNXIorIFG+YeCUUW7RInw==, tarball: https://registry.npmjs.org/@types/stylis/-/stylis-4.2.5.tgz} - - '@types/trusted-types@2.0.7': - resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==, tarball: https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz} - - '@vitest/expect@2.1.8': - resolution: {integrity: sha512-8ytZ/fFHq2g4PJVAtDX57mayemKgDR6X3Oa2Foro+EygiOJHUXhCqBAAKQYYajZpFoIfvBCF1j6R6IYRSIUFuw==, tarball: https://registry.npmjs.org/@vitest/expect/-/expect-2.1.8.tgz} - - '@vitest/mocker@2.1.8': - resolution: {integrity: sha512-7guJ/47I6uqfttp33mgo6ga5Gr1VnL58rcqYKyShoRK9ebu8T5Rs6HN3s1NABiBeVTdWNrwUMcHH54uXZBN4zA==, tarball: https://registry.npmjs.org/@vitest/mocker/-/mocker-2.1.8.tgz} + '@vitest/mocker@3.0.3': + resolution: {integrity: sha512-XT2XBc4AN9UdaxJAeIlcSZ0ILi/GzmG5G8XSly4gaiqIvPV3HMTSIDZWJVX6QRJ0PX1m+W8Cy0K9ByXNb/bPIA==, tarball: https://registry.npmjs.org/@vitest/mocker/-/mocker-3.0.3.tgz} peerDependencies: msw: ^2.4.9 - vite: ^5.0.0 + vite: ^5.0.0 || ^6.0.0 peerDependenciesMeta: msw: optional: true vite: optional: true - '@vitest/pretty-format@2.1.8': - resolution: {integrity: sha512-9HiSZ9zpqNLKlbIDRWOnAWqgcA7xu+8YxXSekhr0Ykab7PAYFkhkwoqVArPOtJhPmYeE2YHgKZlj3CP36z2AJQ==, tarball: https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.8.tgz} - - '@vitest/runner@2.1.8': - resolution: {integrity: sha512-17ub8vQstRnRlIU5k50bG+QOMLHRhYPAna5tw8tYbj+jzjcspnwnwtPtiOlkuKC4+ixDPTuLZiqiWWQ2PSXHVg==, tarball: https://registry.npmjs.org/@vitest/runner/-/runner-2.1.8.tgz} + '@vitest/pretty-format@3.0.3': + resolution: {integrity: sha512-gCrM9F7STYdsDoNjGgYXKPq4SkSxwwIU5nkaQvdUxiQ0EcNlez+PdKOVIsUJvh9P9IeIFmjn4IIREWblOBpP2Q==, tarball: https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-3.0.3.tgz} - '@vitest/snapshot@2.1.8': - resolution: {integrity: sha512-20T7xRFbmnkfcmgVEz+z3AU/3b0cEzZOt/zmnvZEctg64/QZbSDJEVm9fLnnlSi74KibmRsO9/Qabi+t0vCRPg==, tarball: https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.1.8.tgz} - - '@vitest/spy@2.1.8': - resolution: {integrity: sha512-5swjf2q95gXeYPevtW0BLk6H8+bPlMb4Vw/9Em4hFxDcaOxS+e0LOX4yqNxoHzMR2akEB2xfpnWUzkZokmgWDg==, tarball: https://registry.npmjs.org/@vitest/spy/-/spy-2.1.8.tgz} - - '@vitest/utils@2.1.8': - resolution: {integrity: sha512-dwSoui6djdwbfFmIgbIjX2ZhIoG7Ex/+xpxyiEgIGzjliY8xGkcpITKTlp6B4MgtGkF2ilvm97cPM96XZaAgcA==, tarball: https://registry.npmjs.org/@vitest/utils/-/utils-2.1.8.tgz} - - abort-controller@3.0.0: - resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==, tarball: https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz} - engines: {node: '>=6.5'} - - agent-base@7.1.3: - resolution: {integrity: sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==, tarball: https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz} - engines: {node: '>= 14'} - - ansi-regex@5.0.1: - resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==, tarball: https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz} - engines: {node: '>=8'} - - ansi-styles@4.3.0: - resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==, tarball: https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz} - engines: {node: '>=8'} + '@vitest/runner@3.0.3': + resolution: {integrity: sha512-Rgi2kOAk5ZxWZlwPguRJFOBmWs6uvvyAAR9k3MvjRvYrG7xYvKChZcmnnpJCS98311CBDMqsW9MzzRFsj2gX3g==, tarball: https://registry.npmjs.org/@vitest/runner/-/runner-3.0.3.tgz} - anymatch@3.1.3: - resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==, tarball: https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz} - engines: {node: '>= 8'} + '@vitest/snapshot@3.0.3': + resolution: {integrity: sha512-kNRcHlI4txBGztuJfPEJ68VezlPAXLRT1u5UCx219TU3kOG2DplNxhWLwDf2h6emwmTPogzLnGVwP6epDaJN6Q==, tarball: https://registry.npmjs.org/@vitest/snapshot/-/snapshot-3.0.3.tgz} - argparse@2.0.1: - resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==, tarball: https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz} + '@vitest/spy@3.0.3': + resolution: {integrity: sha512-7/dgux8ZBbF7lEIKNnEqQlyRaER9nkAL9eTmdKJkDO3hS8p59ATGwKOCUDHcBLKr7h/oi/6hP+7djQk8049T2A==, tarball: https://registry.npmjs.org/@vitest/spy/-/spy-3.0.3.tgz} - array-buffer-byte-length@1.0.2: - resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==, tarball: https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz} - engines: {node: '>= 0.4'} + '@vitest/utils@3.0.3': + resolution: {integrity: sha512-f+s8CvyzPtMFY1eZKkIHGhPsQgYo5qCm6O8KZoim9qm1/jT64qBgGpO5tHscNH6BzRHM+edLNOP+3vO8+8pE/A==, tarball: https://registry.npmjs.org/@vitest/utils/-/utils-3.0.3.tgz} - array.prototype.filter@1.0.4: - resolution: {integrity: sha512-r+mCJ7zXgXElgR4IRC+fkvNCeoaavWBs6EdCso5Tbcf+iEMKzBU/His60lt34WEZ9vlb8wDkZvQGcVI5GwkfoQ==, tarball: https://registry.npmjs.org/array.prototype.filter/-/array.prototype.filter-1.0.4.tgz} - engines: {node: '>= 0.4'} + '@vue/reactivity@3.1.5': + resolution: {integrity: sha512-1tdfLmNjWG6t/CsPldh+foumYFo3cpyCHgBYQ34ylaMsJ+SNHQ1kApMIa8jN+i593zQuaw3AdWH0nJTARzCFhg==, tarball: https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.1.5.tgz} - array.prototype.flat@1.3.3: - resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==, tarball: https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz} - engines: {node: '>= 0.4'} + '@vue/shared@3.1.5': + resolution: {integrity: sha512-oJ4F3TnvpXaQwZJNF3ZK+kLPHKarDmJjJ6jyzVNDKH9md1dptjC7lWR//jrGuLdek/U6iltWxqAnYOu8gCiOvA==, tarball: https://registry.npmjs.org/@vue/shared/-/shared-3.1.5.tgz} - arraybuffer.prototype.slice@1.0.4: - resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==, tarball: https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz} - engines: {node: '>= 0.4'} + alpinejs@3.14.8: + resolution: {integrity: sha512-wT2fuP2DXpGk/jKaglwy7S/IJpm1FD+b7U6zUrhwErjoq5h27S4dxkJEXVvhbdwyPv9U+3OkUuNLkZT4h2Kfrg==, tarball: https://registry.npmjs.org/alpinejs/-/alpinejs-3.14.8.tgz} assertion-error@2.0.1: resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==, tarball: https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz} engines: {node: '>=12'} - asynckit@0.4.0: - resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==, tarball: https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz} - - available-typed-arrays@1.0.7: - resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==, tarball: https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz} - engines: {node: '>= 0.4'} - - balanced-match@1.0.2: - resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==, tarball: https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz} - - binary-extensions@2.3.0: - resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==, tarball: https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz} - engines: {node: '>=8'} - - boolbase@1.0.0: - resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==, tarball: https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz} - - brace-expansion@1.1.11: - resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==, tarball: https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz} - - brace-expansion@2.0.1: - resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==, tarball: https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz} - - braces@3.0.3: - resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==, tarball: https://registry.npmjs.org/braces/-/braces-3.0.3.tgz} - engines: {node: '>=8'} - cac@6.7.14: resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==, tarball: https://registry.npmjs.org/cac/-/cac-6.7.14.tgz} engines: {node: '>=8'} - call-bind-apply-helpers@1.0.1: - resolution: {integrity: sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==, tarball: https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.1.tgz} - engines: {node: '>= 0.4'} - - call-bind@1.0.8: - resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==, tarball: https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz} - engines: {node: '>= 0.4'} - - call-bound@1.0.3: - resolution: {integrity: sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==, tarball: https://registry.npmjs.org/call-bound/-/call-bound-1.0.3.tgz} - engines: {node: '>= 0.4'} - - call-me-maybe@1.0.2: - resolution: {integrity: sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==, tarball: https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz} - - camelize@1.0.1: - resolution: {integrity: sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==, tarball: https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz} - chai@5.1.2: resolution: {integrity: sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==, tarball: https://registry.npmjs.org/chai/-/chai-5.1.2.tgz} engines: {node: '>=12'} @@ -482,79 +371,6 @@ packages: resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==, tarball: https://registry.npmjs.org/check-error/-/check-error-2.1.1.tgz} engines: {node: '>= 16'} - cheerio-select@2.1.0: - resolution: {integrity: sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==, tarball: https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz} - - cheerio@1.0.0: - resolution: {integrity: sha512-quS9HgjQpdaXOvsZz82Oz7uxtXiy6UIsIQcpBj7HRw2M63Skasm9qlDocAM7jNuaxdhpPU7c4kJN+gA5MCu4ww==, tarball: https://registry.npmjs.org/cheerio/-/cheerio-1.0.0.tgz} - engines: {node: '>=18.17'} - - chokidar@3.6.0: - resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==, tarball: https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz} - engines: {node: '>= 8.10.0'} - - classnames@2.5.1: - resolution: {integrity: sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==, tarball: https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz} - - cliui@7.0.4: - resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==, tarball: https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz} - - clsx@2.1.1: - resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==, tarball: https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz} - engines: {node: '>=6'} - - color-convert@2.0.1: - resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==, tarball: https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz} - engines: {node: '>=7.0.0'} - - color-name@1.1.4: - resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==, tarball: https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz} - - colorette@1.4.0: - resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==, tarball: https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz} - - combined-stream@1.0.8: - resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==, tarball: https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz} - engines: {node: '>= 0.8'} - - commander@2.20.3: - resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==, tarball: https://registry.npmjs.org/commander/-/commander-2.20.3.tgz} - - concat-map@0.0.1: - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==, tarball: https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz} - - core-js@3.39.0: - resolution: {integrity: sha512-raM0ew0/jJUqkJ0E6e8UDtl+y/7ktFivgWvqw8dNSQeNWoSDLvQ1H/RN3aPXB9tBd4/FhyR4RDPGhsNIMsAn7g==, tarball: https://registry.npmjs.org/core-js/-/core-js-3.39.0.tgz} - - css-color-keywords@1.0.0: - resolution: {integrity: sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==, tarball: https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz} - engines: {node: '>=4'} - - css-select@5.1.0: - resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==, tarball: https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz} - - css-to-react-native@3.2.0: - resolution: {integrity: sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==, tarball: https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz} - - css-what@6.1.0: - resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==, tarball: https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz} - engines: {node: '>= 6'} - - csstype@3.1.3: - resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==, tarball: https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz} - - data-view-buffer@1.0.2: - resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==, tarball: https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz} - engines: {node: '>= 0.4'} - - data-view-byte-length@1.0.2: - resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==, tarball: https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz} - engines: {node: '>= 0.4'} - - data-view-byte-offset@1.0.1: - resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==, tarball: https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz} - engines: {node: '>= 0.4'} - debug@4.4.0: resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==, tarball: https://registry.npmjs.org/debug/-/debug-4.4.0.tgz} engines: {node: '>=6.0'} @@ -564,127 +380,24 @@ packages: supports-color: optional: true - decko@1.2.0: - resolution: {integrity: sha512-m8FnyHXV1QX+S1cl+KPFDIl6NMkxtKsy6+U/aYyjrOqWMuwAwYWu7ePqrsUHtDR5Y8Yk2pi/KIDSgF+vT4cPOQ==, tarball: https://registry.npmjs.org/decko/-/decko-1.2.0.tgz} - deep-eql@5.0.2: resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==, tarball: https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz} engines: {node: '>=6'} - define-data-property@1.1.4: - resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==, tarball: https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz} - engines: {node: '>= 0.4'} - - define-properties@1.2.1: - resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==, tarball: https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz} - engines: {node: '>= 0.4'} - - delayed-stream@1.0.0: - resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==, tarball: https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz} - engines: {node: '>=0.4.0'} - - detect-libc@1.0.3: - resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==, tarball: https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz} - engines: {node: '>=0.10'} - hasBin: true - - discontinuous-range@1.0.0: - resolution: {integrity: sha512-c68LpLbO+7kP/b1Hr1qs8/BJ09F5khZGTxqxZuhzxpmwJKOgRFHJWIb9/KmqnqHhLdO55aOxFH/EGBvUQbL/RQ==, tarball: https://registry.npmjs.org/discontinuous-range/-/discontinuous-range-1.0.0.tgz} - - dom-serializer@2.0.0: - resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==, tarball: https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz} - - domelementtype@2.3.0: - resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==, tarball: https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz} - - domhandler@5.0.3: - resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==, tarball: https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz} - engines: {node: '>= 4'} - - dompurify@3.2.3: - resolution: {integrity: sha512-U1U5Hzc2MO0oW3DF+G9qYN0aT7atAou4AgI0XjWz061nyBPbdxkfdhfy5uMgGn6+oLFCfn44ZGbdDqCzVmlOWA==, tarball: https://registry.npmjs.org/dompurify/-/dompurify-3.2.3.tgz} - - domutils@3.1.0: - resolution: {integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==, tarball: https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz} + effect@3.12.6: + resolution: {integrity: sha512-4gNxRpXduuvVv03528sPLGglkCAX9szGBUA6oIG3YL+6ap82JmbVp4OIa+xTurype+H9b4/I4M2ubxDxJJ01Og==, tarball: https://registry.npmjs.org/effect/-/effect-3.12.6.tgz} - dunder-proto@1.0.1: - resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==, tarball: https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz} - engines: {node: '>= 0.4'} + es-module-lexer@1.6.0: + resolution: {integrity: sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==, tarball: https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.6.0.tgz} - effect@3.11.9: - resolution: {integrity: sha512-BeEOFVpe+f7S9mTiA2CLIzi1ywxgF1fUbcAank4jwdd6P0ZHQhaW3XVPZ7vkCNDTqmJs2f/gN2uV+Yw0ZqfDng==, tarball: https://registry.npmjs.org/effect/-/effect-3.11.9.tgz} - - emoji-regex@8.0.0: - resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==, tarball: https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz} - - encoding-sniffer@0.2.0: - resolution: {integrity: sha512-ju7Wq1kg04I3HtiYIOrUrdfdDvkyO9s5XM8QAj/bN61Yo/Vb4vgJxy5vi4Yxk01gWHbrofpPtpxM8bKger9jhg==, tarball: https://registry.npmjs.org/encoding-sniffer/-/encoding-sniffer-0.2.0.tgz} - - entities@4.5.0: - resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==, tarball: https://registry.npmjs.org/entities/-/entities-4.5.0.tgz} - engines: {node: '>=0.12'} - - enzyme-shallow-equal@1.0.7: - resolution: {integrity: sha512-/um0GFqUXnpM9SvKtje+9Tjoz3f1fpBC3eXRFrNs8kpYn69JljciYP7KZTqM/YQbUY9KUjvKB4jo/q+L6WGGvg==, tarball: https://registry.npmjs.org/enzyme-shallow-equal/-/enzyme-shallow-equal-1.0.7.tgz} - - enzyme@3.11.0: - resolution: {integrity: sha512-Dw8/Gs4vRjxY6/6i9wU0V+utmQO9kvh9XLnz3LIudviOnVYDEe2ec+0k+NQoMamn1VrjKgCUOWj5jG/5M5M0Qw==, tarball: https://registry.npmjs.org/enzyme/-/enzyme-3.11.0.tgz} - - es-abstract@1.23.7: - resolution: {integrity: sha512-OygGC8kIcDhXX+6yAZRGLqwi2CmEXCbLQixeGUgYeR+Qwlppqmo7DIDr8XibtEBZp+fJcoYpoatp5qwLMEdcqQ==, tarball: https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.7.tgz} - engines: {node: '>= 0.4'} - - es-array-method-boxes-properly@1.0.0: - resolution: {integrity: sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==, tarball: https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz} - - es-define-property@1.0.1: - resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==, tarball: https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz} - engines: {node: '>= 0.4'} - - es-errors@1.3.0: - resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==, tarball: https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz} - engines: {node: '>= 0.4'} - - es-module-lexer@1.5.4: - resolution: {integrity: sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==, tarball: https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz} - - es-object-atoms@1.0.0: - resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==, tarball: https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz} - engines: {node: '>= 0.4'} - - es-set-tostringtag@2.0.3: - resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==, tarball: https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz} - engines: {node: '>= 0.4'} - - es-shim-unscopables@1.0.2: - resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==, tarball: https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz} - - es-to-primitive@1.3.0: - resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==, tarball: https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz} - engines: {node: '>= 0.4'} - - es6-promise@3.3.1: - resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==, tarball: https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz} - - esbuild@0.21.5: - resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==, tarball: https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz} - engines: {node: '>=12'} + esbuild@0.24.2: + resolution: {integrity: sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==, tarball: https://registry.npmjs.org/esbuild/-/esbuild-0.24.2.tgz} + engines: {node: '>=18'} hasBin: true - escalade@3.2.0: - resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==, tarball: https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz} - engines: {node: '>=6'} - estree-walker@3.0.3: resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==, tarball: https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz} - event-target-shim@5.0.1: - resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==, tarball: https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz} - engines: {node: '>=6'} - - eventemitter3@5.0.1: - resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==, tarball: https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz} - expect-type@1.1.0: resolution: {integrity: sha512-bFi65yM+xZgk+u/KRIpekdSYkTB5W1pEf0Lt8Q8Msh7b+eQ7LXVtIB1Bkm4fvclDEL1b2CZkMhv2mOeF8tMdkA==, tarball: https://registry.npmjs.org/expect-type/-/expect-type-1.1.0.tgz} engines: {node: '>=12.0.0'} @@ -693,949 +406,166 @@ packages: resolution: {integrity: sha512-h5+1OzzfCC3Ef7VbtKdcv7zsstUQwUDlYpUTvjeUsJAssPgLn7QzbboPtL5ro04Mq0rPOsMzl7q5hIbRs2wD1A==, tarball: https://registry.npmjs.org/fast-check/-/fast-check-3.23.2.tgz} engines: {node: '>=8.0.0'} - fast-deep-equal@3.1.3: - resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==, tarball: https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz} - - fast-safe-stringify@2.1.1: - resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==, tarball: https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz} - - fast-xml-parser@4.5.1: - resolution: {integrity: sha512-y655CeyUQ+jj7KBbYMc4FG01V8ZQqjN+gDYGJ50RtfsUB8iG9AmwmwoAgeKLJdmueKKMrH1RJ7yXHTSoczdv5w==, tarball: https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.5.1.tgz} - hasBin: true - - fill-range@7.1.1: - resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==, tarball: https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz} - engines: {node: '>=8'} - - for-each@0.3.3: - resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==, tarball: https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz} - - foreach@2.0.6: - resolution: {integrity: sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==, tarball: https://registry.npmjs.org/foreach/-/foreach-2.0.6.tgz} - - form-data@4.0.1: - resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==, tarball: https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz} - engines: {node: '>= 6'} - - fs.realpath@1.0.0: - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==, tarball: https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz} - fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==, tarball: https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} os: [darwin] - function-bind@1.1.2: - resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==, tarball: https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz} - - function.prototype.name@1.1.8: - resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==, tarball: https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz} - engines: {node: '>= 0.4'} - - functions-have-names@1.2.3: - resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==, tarball: https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz} - - get-caller-file@2.0.5: - resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==, tarball: https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz} - engines: {node: 6.* || 8.* || >= 10.*} - - get-intrinsic@1.2.6: - resolution: {integrity: sha512-qxsEs+9A+u85HhllWJJFicJfPDhRmjzoYdl64aMWW9yRIJmSyxdn8IEkuIM530/7T+lv0TIHd8L6Q/ra0tEoeA==, tarball: https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.6.tgz} - engines: {node: '>= 0.4'} - - get-port-please@3.1.2: - resolution: {integrity: sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ==, tarball: https://registry.npmjs.org/get-port-please/-/get-port-please-3.1.2.tgz} - - get-symbol-description@1.1.0: - resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==, tarball: https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz} - engines: {node: '>= 0.4'} - - glob-parent@5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==, tarball: https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz} - engines: {node: '>= 6'} - - glob@7.2.3: - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==, tarball: https://registry.npmjs.org/glob/-/glob-7.2.3.tgz} - deprecated: Glob versions prior to v9 are no longer supported - - globalthis@1.0.4: - resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==, tarball: https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz} - engines: {node: '>= 0.4'} - globrex@0.1.2: resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==, tarball: https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz} - gopd@1.2.0: - resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==, tarball: https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz} - engines: {node: '>= 0.4'} - - handlebars@4.7.8: - resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==, tarball: https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz} - engines: {node: '>=0.4.7'} - hasBin: true - - has-bigints@1.1.0: - resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==, tarball: https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz} - engines: {node: '>= 0.4'} - - has-property-descriptors@1.0.2: - resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==, tarball: https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz} - - has-proto@1.2.0: - resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==, tarball: https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz} - engines: {node: '>= 0.4'} - - has-symbols@1.1.0: - resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==, tarball: https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz} - engines: {node: '>= 0.4'} - - has-tostringtag@1.0.2: - resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==, tarball: https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz} - engines: {node: '>= 0.4'} - - has@1.0.4: - resolution: {integrity: sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==, tarball: https://registry.npmjs.org/has/-/has-1.0.4.tgz} - engines: {node: '>= 0.4.0'} - - hasown@2.0.2: - resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==, tarball: https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz} - engines: {node: '>= 0.4'} - - html-element-map@1.3.1: - resolution: {integrity: sha512-6XMlxrAFX4UEEGxctfFnmrFaaZFNf9i5fNuV5wZ3WWQ4FVaNP1aX1LkX9j2mfEx1NpjeE/rL3nmgEn23GdFmrg==, tarball: https://registry.npmjs.org/html-element-map/-/html-element-map-1.3.1.tgz} - - htmlparser2@9.1.0: - resolution: {integrity: sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==, tarball: https://registry.npmjs.org/htmlparser2/-/htmlparser2-9.1.0.tgz} - - http2-client@1.3.5: - resolution: {integrity: sha512-EC2utToWl4RKfs5zd36Mxq7nzHHBuomZboI0yYL6Y0RmBgT7Sgkq4rQ0ezFTYoIsSs7Tm9SJe+o2FcAg6GBhGA==, tarball: https://registry.npmjs.org/http2-client/-/http2-client-1.3.5.tgz} - - https-proxy-agent@7.0.6: - resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==, tarball: https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz} - engines: {node: '>= 14'} - - iconv-lite@0.6.3: - resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==, tarball: https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz} - engines: {node: '>=0.10.0'} - - inflight@1.0.6: - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==, tarball: https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz} - deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. - - inherits@2.0.4: - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==, tarball: https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz} - - internal-slot@1.1.0: - resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==, tarball: https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz} - engines: {node: '>= 0.4'} - - is-array-buffer@3.0.5: - resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==, tarball: https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz} - engines: {node: '>= 0.4'} + loupe@3.1.2: + resolution: {integrity: sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg==, tarball: https://registry.npmjs.org/loupe/-/loupe-3.1.2.tgz} - is-async-function@2.0.0: - resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==, tarball: https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz} - engines: {node: '>= 0.4'} + magic-string@0.30.17: + resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==, tarball: https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz} - is-bigint@1.1.0: - resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==, tarball: https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz} - engines: {node: '>= 0.4'} + monaco-editor@0.52.2: + resolution: {integrity: sha512-GEQWEZmfkOGLdd3XK8ryrfWz3AIP8YymVXiPHEdewrUq7mh0qrKrfHLNCXcbB6sTnMLnOZ3ztSiKcciFUkIJwQ==, tarball: https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.52.2.tgz} - is-binary-path@2.1.0: - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==, tarball: https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz} - engines: {node: '>=8'} + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==, tarball: https://registry.npmjs.org/ms/-/ms-2.1.3.tgz} - is-boolean-object@1.2.1: - resolution: {integrity: sha512-l9qO6eFlUETHtuihLcYOaLKByJ1f+N4kthcU9YjHy3N+B3hWv0y/2Nd0mu/7lTFnRQHTrSdXF50HQ3bl5fEnng==, tarball: https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.1.tgz} - engines: {node: '>= 0.4'} + nanoid@3.3.8: + resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==, tarball: https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true - is-callable@1.2.7: - resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==, tarball: https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz} - engines: {node: '>= 0.4'} + pathe@2.0.2: + resolution: {integrity: sha512-15Ztpk+nov8DR524R4BF7uEuzESgzUEAV4Ah7CUMNGXdE5ELuvxElxGXndBl32vMSsWa1jpNf22Z+Er3sKwq+w==, tarball: https://registry.npmjs.org/pathe/-/pathe-2.0.2.tgz} - is-data-view@1.0.2: - resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==, tarball: https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz} - engines: {node: '>= 0.4'} + pathval@2.0.0: + resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==, tarball: https://registry.npmjs.org/pathval/-/pathval-2.0.0.tgz} + engines: {node: '>= 14.16'} - is-date-object@1.1.0: - resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==, tarball: https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz} - engines: {node: '>= 0.4'} + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==, tarball: https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz} - is-extglob@2.1.1: - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==, tarball: https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz} - engines: {node: '>=0.10.0'} + postcss@8.5.1: + resolution: {integrity: sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==, tarball: https://registry.npmjs.org/postcss/-/postcss-8.5.1.tgz} + engines: {node: ^10 || ^12 || >=14} - is-finalizationregistry@1.1.1: - resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==, tarball: https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz} - engines: {node: '>= 0.4'} + pure-rand@6.1.0: + resolution: {integrity: sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==, tarball: https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz} - is-fullwidth-code-point@3.0.0: - resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==, tarball: https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz} - engines: {node: '>=8'} + rollup@4.31.0: + resolution: {integrity: sha512-9cCE8P4rZLx9+PjoyqHLs31V9a9Vpvfo4qNcs6JCiGWYhw2gijSetFbH6SSy1whnkgcefnUwr8sad7tgqsGvnw==, tarball: https://registry.npmjs.org/rollup/-/rollup-4.31.0.tgz} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true - is-generator-function@1.0.10: - resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==, tarball: https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz} - engines: {node: '>= 0.4'} + siginfo@2.0.0: + resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==, tarball: https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz} - is-glob@4.0.3: - resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==, tarball: https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz} + source-map-js@1.2.1: + resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==, tarball: https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz} engines: {node: '>=0.10.0'} - is-map@2.0.3: - resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==, tarball: https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz} - engines: {node: '>= 0.4'} - - is-number-object@1.1.1: - resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==, tarball: https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz} - engines: {node: '>= 0.4'} - - is-number@7.0.0: - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==, tarball: https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz} - engines: {node: '>=0.12.0'} - - is-regex@1.2.1: - resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==, tarball: https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz} - engines: {node: '>= 0.4'} - - is-set@2.0.3: - resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==, tarball: https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz} - engines: {node: '>= 0.4'} - - is-shared-array-buffer@1.0.4: - resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==, tarball: https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz} - engines: {node: '>= 0.4'} - - is-string@1.1.1: - resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==, tarball: https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz} - engines: {node: '>= 0.4'} - - is-subset@0.1.1: - resolution: {integrity: sha512-6Ybun0IkarhmEqxXCNw/C0bna6Zb/TkfUX9UbwJtK6ObwAVCxmAP308WWTHviM/zAqXk05cdhYsUsZeGQh99iw==, tarball: https://registry.npmjs.org/is-subset/-/is-subset-0.1.1.tgz} - - is-symbol@1.1.1: - resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==, tarball: https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz} - engines: {node: '>= 0.4'} + stackback@0.0.2: + resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==, tarball: https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz} - is-typed-array@1.1.15: - resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==, tarball: https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz} - engines: {node: '>= 0.4'} + state-local@1.0.7: + resolution: {integrity: sha512-HTEHMNieakEnoe33shBYcZ7NX83ACUjCu8c40iOGEZsngj9zRnkqS9j1pqQPXwobB0ZcVTk27REb7COQ0UR59w==, tarball: https://registry.npmjs.org/state-local/-/state-local-1.0.7.tgz} - is-weakmap@2.0.2: - resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==, tarball: https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz} - engines: {node: '>= 0.4'} + std-env@3.8.0: + resolution: {integrity: sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==, tarball: https://registry.npmjs.org/std-env/-/std-env-3.8.0.tgz} - is-weakref@1.1.0: - resolution: {integrity: sha512-SXM8Nwyys6nT5WP6pltOwKytLV7FqQ4UiibxVmW+EIosHcmCqkkjViTb5SNssDlkCiEYRP1/pdWUKVvZBmsR2Q==, tarball: https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.0.tgz} - engines: {node: '>= 0.4'} + tinybench@2.9.0: + resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==, tarball: https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz} - is-weakset@2.0.4: - resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==, tarball: https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz} - engines: {node: '>= 0.4'} + tinyexec@0.3.2: + resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==, tarball: https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz} - isarray@2.0.5: - resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==, tarball: https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz} + tinypool@1.0.2: + resolution: {integrity: sha512-al6n+QEANGFOMf/dmUMsuS5/r9B06uwlyNjZZql/zv8J7ybHCgoihBNORZCY2mzUuAnomQa2JdhyHKzZxPCrFA==, tarball: https://registry.npmjs.org/tinypool/-/tinypool-1.0.2.tgz} + engines: {node: ^18.0.0 || >=20.0.0} - js-levenshtein@1.1.6: - resolution: {integrity: sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==, tarball: https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz} - engines: {node: '>=0.10.0'} + tinyrainbow@2.0.0: + resolution: {integrity: sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==, tarball: https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-2.0.0.tgz} + engines: {node: '>=14.0.0'} - js-tokens@4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==, tarball: https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz} + tinyspy@3.0.2: + resolution: {integrity: sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==, tarball: https://registry.npmjs.org/tinyspy/-/tinyspy-3.0.2.tgz} + engines: {node: '>=14.0.0'} - js-yaml@4.1.0: - resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==, tarball: https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz} + tsconfck@3.1.4: + resolution: {integrity: sha512-kdqWFGVJqe+KGYvlSO9NIaWn9jT1Ny4oKVzAJsKii5eoE9snzTJzL4+MMVOMn+fikWGFmKEylcXL710V/kIPJQ==, tarball: https://registry.npmjs.org/tsconfck/-/tsconfck-3.1.4.tgz} + engines: {node: ^18 || >=20} hasBin: true + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true - json-pointer@0.6.2: - resolution: {integrity: sha512-vLWcKbOaXlO+jvRy4qNd+TI1QUPZzfJj1tpJ3vAXDych5XJf93ftpUKe5pKCrzyIIwgBJcOcCVRUfqQP25afBw==, tarball: https://registry.npmjs.org/json-pointer/-/json-pointer-0.6.2.tgz} + undici-types@6.20.0: + resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==, tarball: https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz} - json-schema-traverse@1.0.0: - resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==, tarball: https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz} + vite-node@3.0.3: + resolution: {integrity: sha512-0sQcwhwAEw/UJGojbhOrnq3HtiZ3tC7BzpAa0lx3QaTX0S3YX70iGcik25UBdB96pmdwjyY2uyKNYruxCDmiEg==, tarball: https://registry.npmjs.org/vite-node/-/vite-node-3.0.3.tgz} + engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} + hasBin: true - lightningcss-darwin-arm64@1.28.2: - resolution: {integrity: sha512-/8cPSqZiusHSS+WQz0W4NuaqFjquys1x+NsdN/XOHb+idGHJSoJ7SoQTVl3DZuAgtPZwFZgRfb/vd1oi8uX6+g==, tarball: https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.28.2.tgz} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [darwin] - - lightningcss-darwin-x64@1.28.2: - resolution: {integrity: sha512-R7sFrXlgKjvoEG8umpVt/yutjxOL0z8KWf0bfPT3cYMOW4470xu5qSHpFdIOpRWwl3FKNMUdbKtMUjYt0h2j4g==, tarball: https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.28.2.tgz} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [darwin] - - lightningcss-freebsd-x64@1.28.2: - resolution: {integrity: sha512-l2qrCT+x7crAY+lMIxtgvV10R8VurzHAoUZJaVFSlHrN8kRLTvEg9ObojIDIexqWJQvJcVVV3vfzsEynpiuvgA==, tarball: https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.28.2.tgz} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [freebsd] - - lightningcss-linux-arm-gnueabihf@1.28.2: - resolution: {integrity: sha512-DKMzpICBEKnL53X14rF7hFDu8KKALUJtcKdFUCW5YOlGSiwRSgVoRjM97wUm/E0NMPkzrTi/rxfvt7ruNK8meg==, tarball: https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.28.2.tgz} - engines: {node: '>= 12.0.0'} - cpu: [arm] - os: [linux] - - lightningcss-linux-arm64-gnu@1.28.2: - resolution: {integrity: sha512-nhfjYkfymWZSxdtTNMWyhFk2ImUm0X7NAgJWFwnsYPOfmtWQEapzG/DXZTfEfMjSzERNUNJoQjPAbdqgB+sjiw==, tarball: https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.28.2.tgz} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [linux] - - lightningcss-linux-arm64-musl@1.28.2: - resolution: {integrity: sha512-1SPG1ZTNnphWvAv8RVOymlZ8BDtAg69Hbo7n4QxARvkFVCJAt0cgjAw1Fox0WEhf4PwnyoOBaVH0Z5YNgzt4dA==, tarball: https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.28.2.tgz} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [linux] - - lightningcss-linux-x64-gnu@1.28.2: - resolution: {integrity: sha512-ZhQy0FcO//INWUdo/iEdbefntTdpPVQ0XJwwtdbBuMQe+uxqZoytm9M+iqR9O5noWFaxK+nbS2iR/I80Q2Ofpg==, tarball: https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.28.2.tgz} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [linux] - - lightningcss-linux-x64-musl@1.28.2: - resolution: {integrity: sha512-alb/j1NMrgQmSFyzTbN1/pvMPM+gdDw7YBuQ5VSgcFDypN3Ah0BzC2dTZbzwzaMdUVDszX6zH5MzjfVN1oGuww==, tarball: https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.28.2.tgz} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [linux] - - lightningcss-win32-arm64-msvc@1.28.2: - resolution: {integrity: sha512-WnwcjcBeAt0jGdjlgbT9ANf30pF0C/QMb1XnLnH272DQU8QXh+kmpi24R55wmWBwaTtNAETZ+m35ohyeMiNt+g==, tarball: https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.28.2.tgz} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [win32] - - lightningcss-win32-x64-msvc@1.28.2: - resolution: {integrity: sha512-3piBifyT3avz22o6mDKywQC/OisH2yDK+caHWkiMsF82i3m5wDBadyCjlCQ5VNgzYkxrWZgiaxHDdd5uxsi0/A==, tarball: https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.28.2.tgz} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [win32] - - lightningcss@1.28.2: - resolution: {integrity: sha512-ePLRrbt3fgjXI5VFZOLbvkLD5ZRuxGKm+wJ3ujCqBtL3NanDHPo/5zicR5uEKAPiIjBYF99BM4K4okvMznjkVA==, tarball: https://registry.npmjs.org/lightningcss/-/lightningcss-1.28.2.tgz} - engines: {node: '>= 12.0.0'} - - lodash.escape@4.0.1: - resolution: {integrity: sha512-nXEOnb/jK9g0DYMr1/Xvq6l5xMD7GDG55+GSYIYmS0G4tBk/hURD4JR9WCavs04t33WmJx9kCyp9vJ+mr4BOUw==, tarball: https://registry.npmjs.org/lodash.escape/-/lodash.escape-4.0.1.tgz} - - lodash.flattendeep@4.4.0: - resolution: {integrity: sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==, tarball: https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz} - - lodash.isequal@4.5.0: - resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==, tarball: https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz} - - loose-envify@1.4.0: - resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==, tarball: https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz} - hasBin: true - - loupe@3.1.2: - resolution: {integrity: sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg==, tarball: https://registry.npmjs.org/loupe/-/loupe-3.1.2.tgz} - - lunr@2.3.9: - resolution: {integrity: sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==, tarball: https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz} - - magic-string@0.30.17: - resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==, tarball: https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz} - - mark.js@8.11.1: - resolution: {integrity: sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==, tarball: https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz} - - marked@4.3.0: - resolution: {integrity: sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==, tarball: https://registry.npmjs.org/marked/-/marked-4.3.0.tgz} - engines: {node: '>= 12'} - hasBin: true - - math-intrinsics@1.1.0: - resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==, tarball: https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz} - engines: {node: '>= 0.4'} - - mime-db@1.52.0: - resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==, tarball: https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz} - engines: {node: '>= 0.6'} - - mime-types@2.1.35: - resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==, tarball: https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz} - engines: {node: '>= 0.6'} - - minimatch@3.1.2: - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==, tarball: https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz} - - minimatch@5.1.6: - resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==, tarball: https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz} - engines: {node: '>=10'} - - minimist@1.2.8: - resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==, tarball: https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz} - - mobx-react-lite@4.1.0: - resolution: {integrity: sha512-QEP10dpHHBeQNv1pks3WnHRCem2Zp636lq54M2nKO2Sarr13pL4u6diQXf65yzXUn0mkk18SyIDCm9UOJYTi1w==, tarball: https://registry.npmjs.org/mobx-react-lite/-/mobx-react-lite-4.1.0.tgz} + vite-tsconfig-paths@5.1.4: + resolution: {integrity: sha512-cYj0LRuLV2c2sMqhqhGpaO3LretdtMn/BVX4cPLanIZuwwrkVl+lK84E/miEXkCHWXuq65rhNN4rXsBcOB3S4w==, tarball: https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-5.1.4.tgz} peerDependencies: - mobx: ^6.9.0 - react: ^16.8.0 || ^17 || ^18 || ^19 - react-dom: '*' - react-native: '*' + vite: '*' peerDependenciesMeta: - react-dom: - optional: true - react-native: + vite: optional: true - mobx-react@9.2.0: - resolution: {integrity: sha512-dkGWCx+S0/1mfiuFfHRH8D9cplmwhxOV5CkXMp38u6rQGG2Pv3FWYztS0M7ncR6TyPRQKaTG/pnitInoYE9Vrw==, tarball: https://registry.npmjs.org/mobx-react/-/mobx-react-9.2.0.tgz} + vite@6.0.11: + resolution: {integrity: sha512-4VL9mQPKoHy4+FE0NnRE/kbY51TOfaknxAjt3fJbGJxhIpBZiqVzlZDEesWWsuREXHwNdAoOFZ9MkPEVXczHwg==, tarball: https://registry.npmjs.org/vite/-/vite-6.0.11.tgz} + engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} + hasBin: true peerDependencies: - mobx: ^6.9.0 - react: ^16.8.0 || ^17 || ^18 || ^19 - react-dom: '*' - react-native: '*' + '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 + jiti: '>=1.21.0' + less: '*' + lightningcss: ^1.21.0 + sass: '*' + sass-embedded: '*' + stylus: '*' + sugarss: '*' + terser: ^5.16.0 + tsx: ^4.8.1 + yaml: ^2.4.2 peerDependenciesMeta: - react-dom: + '@types/node': optional: true - react-native: + jiti: + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + tsx: + optional: true + yaml: optional: true - mobx@6.13.5: - resolution: {integrity: sha512-/HTWzW2s8J1Gqt+WmUj5Y0mddZk+LInejADc79NJadrWla3rHzmRHki/mnEUH1AvOmbNTZ1BRbKxr8DSgfdjMA==, tarball: https://registry.npmjs.org/mobx/-/mobx-6.13.5.tgz} - - monaco-editor@0.52.2: - resolution: {integrity: sha512-GEQWEZmfkOGLdd3XK8ryrfWz3AIP8YymVXiPHEdewrUq7mh0qrKrfHLNCXcbB6sTnMLnOZ3ztSiKcciFUkIJwQ==, tarball: https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.52.2.tgz} - - moo@0.5.2: - resolution: {integrity: sha512-iSAJLHYKnX41mKcJKjqvnAN9sf0LMDTXDEvFv+ffuRR9a1MIuXLjMNL6EsnDHSkKLTWNqQQ5uo61P4EbU4NU+Q==, tarball: https://registry.npmjs.org/moo/-/moo-0.5.2.tgz} - - ms@2.1.3: - resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==, tarball: https://registry.npmjs.org/ms/-/ms-2.1.3.tgz} - - nanoid@3.3.8: - resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==, tarball: https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} - hasBin: true - - nearley@2.20.1: - resolution: {integrity: sha512-+Mc8UaAebFzgV+KpI5n7DasuuQCHA89dmwm7JXw3TV43ukfNQ9DnBH3Mdb2g/I4Fdxc26pwimBWvjIw0UAILSQ==, tarball: https://registry.npmjs.org/nearley/-/nearley-2.20.1.tgz} + vitest@3.0.3: + resolution: {integrity: sha512-dWdwTFUW9rcnL0LyF2F+IfvNQWB0w9DERySCk8VMG75F8k25C7LsZoh6XfCjPvcR8Nb+Lqi9JKr6vnzH7HSrpQ==, tarball: https://registry.npmjs.org/vitest/-/vitest-3.0.3.tgz} + engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true - - neo-async@2.6.2: - resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==, tarball: https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz} - - node-fetch-h2@2.3.0: - resolution: {integrity: sha512-ofRW94Ab0T4AOh5Fk8t0h8OBWrmjb0SSB20xh1H8YnPV9EJ+f5AMoYSUQ2zgJ4Iq2HAK0I2l5/Nequ8YzFS3Hg==, tarball: https://registry.npmjs.org/node-fetch-h2/-/node-fetch-h2-2.3.0.tgz} - engines: {node: 4.x || >=6.0.0} - - node-fetch@2.7.0: - resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==, tarball: https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz} - engines: {node: 4.x || >=6.0.0} peerDependencies: - encoding: ^0.1.0 + '@edge-runtime/vm': '*' + '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 + '@vitest/browser': 3.0.3 + '@vitest/ui': 3.0.3 + happy-dom: '*' + jsdom: '*' peerDependenciesMeta: - encoding: - optional: true - - node-readfiles@0.2.0: - resolution: {integrity: sha512-SU00ZarexNlE4Rjdm83vglt5Y9yiQ+XI1XpflWlb7q7UTN1JUItm69xMeiQCTxtTfnzt+83T8Cx+vI2ED++VDA==, tarball: https://registry.npmjs.org/node-readfiles/-/node-readfiles-0.2.0.tgz} - - normalize-path@3.0.0: - resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==, tarball: https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz} - engines: {node: '>=0.10.0'} - - nth-check@2.1.1: - resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==, tarball: https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz} - - oas-kit-common@1.0.8: - resolution: {integrity: sha512-pJTS2+T0oGIwgjGpw7sIRU8RQMcUoKCDWFLdBqKB2BNmGpbBMH2sdqAaOXUg8OzonZHU0L7vfJu1mJFEiYDWOQ==, tarball: https://registry.npmjs.org/oas-kit-common/-/oas-kit-common-1.0.8.tgz} - - oas-linter@3.2.2: - resolution: {integrity: sha512-KEGjPDVoU5K6swgo9hJVA/qYGlwfbFx+Kg2QB/kd7rzV5N8N5Mg6PlsoCMohVnQmo+pzJap/F610qTodKzecGQ==, tarball: https://registry.npmjs.org/oas-linter/-/oas-linter-3.2.2.tgz} - - oas-resolver@2.5.6: - resolution: {integrity: sha512-Yx5PWQNZomfEhPPOphFbZKi9W93CocQj18NlD2Pa4GWZzdZpSJvYwoiuurRI7m3SpcChrnO08hkuQDL3FGsVFQ==, tarball: https://registry.npmjs.org/oas-resolver/-/oas-resolver-2.5.6.tgz} - hasBin: true - - oas-schema-walker@1.1.5: - resolution: {integrity: sha512-2yucenq1a9YPmeNExoUa9Qwrt9RFkjqaMAA1X+U7sbb0AqBeTIdMHky9SQQ6iN94bO5NW0W4TRYXerG+BdAvAQ==, tarball: https://registry.npmjs.org/oas-schema-walker/-/oas-schema-walker-1.1.5.tgz} - - oas-validator@5.0.8: - resolution: {integrity: sha512-cu20/HE5N5HKqVygs3dt94eYJfBi0TsZvPVXDhbXQHiEityDN+RROTleefoKRKKJ9dFAF2JBkDHgvWj0sjKGmw==, tarball: https://registry.npmjs.org/oas-validator/-/oas-validator-5.0.8.tgz} - - object-assign@4.1.1: - resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==, tarball: https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz} - engines: {node: '>=0.10.0'} - - object-inspect@1.13.3: - resolution: {integrity: sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==, tarball: https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.3.tgz} - engines: {node: '>= 0.4'} - - object-is@1.1.6: - resolution: {integrity: sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==, tarball: https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz} - engines: {node: '>= 0.4'} - - object-keys@1.1.1: - resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==, tarball: https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz} - engines: {node: '>= 0.4'} - - object.assign@4.1.7: - resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==, tarball: https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz} - engines: {node: '>= 0.4'} - - object.entries@1.1.8: - resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==, tarball: https://registry.npmjs.org/object.entries/-/object.entries-1.1.8.tgz} - engines: {node: '>= 0.4'} - - object.values@1.2.1: - resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==, tarball: https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz} - engines: {node: '>= 0.4'} - - once@1.4.0: - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==, tarball: https://registry.npmjs.org/once/-/once-1.4.0.tgz} - - openapi-sampler@1.6.1: - resolution: {integrity: sha512-s1cIatOqrrhSj2tmJ4abFYZQK6l5v+V4toO5q1Pa0DyN8mtyqy2I+Qrj5W9vOELEtybIMQs/TBZGVO/DtTFK8w==, tarball: https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.6.1.tgz} - - parse5-htmlparser2-tree-adapter@7.1.0: - resolution: {integrity: sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g==, tarball: https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.1.0.tgz} - - parse5-parser-stream@7.1.2: - resolution: {integrity: sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow==, tarball: https://registry.npmjs.org/parse5-parser-stream/-/parse5-parser-stream-7.1.2.tgz} - - parse5@7.2.1: - resolution: {integrity: sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==, tarball: https://registry.npmjs.org/parse5/-/parse5-7.2.1.tgz} - - path-browserify@1.0.1: - resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==, tarball: https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz} - - path-is-absolute@1.0.1: - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==, tarball: https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz} - engines: {node: '>=0.10.0'} - - pathe@1.1.2: - resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==, tarball: https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz} - - pathval@2.0.0: - resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==, tarball: https://registry.npmjs.org/pathval/-/pathval-2.0.0.tgz} - engines: {node: '>= 14.16'} - - perfect-scrollbar@1.5.6: - resolution: {integrity: sha512-rixgxw3SxyJbCaSpo1n35A/fwI1r2rdwMKOTCg/AcG+xOEyZcE8UHVjpZMFCVImzsFoCZeJTT+M/rdEIQYO2nw==, tarball: https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.5.6.tgz} - - performance-now@2.1.0: - resolution: {integrity: sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==, tarball: https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz} - - picocolors@1.1.1: - resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==, tarball: https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz} - - picomatch@2.3.1: - resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==, tarball: https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz} - engines: {node: '>=8.6'} - - pluralize@8.0.0: - resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==, tarball: https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz} - engines: {node: '>=4'} - - polished@4.3.1: - resolution: {integrity: sha512-OBatVyC/N7SCW/FaDHrSd+vn0o5cS855TOmYi4OkdWUMSJCET/xip//ch8xGUvtr3i44X9LVyWwQlRMTN3pwSA==, tarball: https://registry.npmjs.org/polished/-/polished-4.3.1.tgz} - engines: {node: '>=10'} - - possible-typed-array-names@1.0.0: - resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==, tarball: https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz} - engines: {node: '>= 0.4'} - - postcss-value-parser@4.2.0: - resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==, tarball: https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz} - - postcss@8.4.38: - resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==, tarball: https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz} - engines: {node: ^10 || ^12 || >=14} - - postcss@8.4.49: - resolution: {integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==, tarball: https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz} - engines: {node: ^10 || ^12 || >=14} - - prismjs@1.29.0: - resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==, tarball: https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz} - engines: {node: '>=6'} - - prop-types@15.8.1: - resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==, tarball: https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz} - - pure-rand@6.1.0: - resolution: {integrity: sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==, tarball: https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz} - - queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==, tarball: https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz} - - raf@3.4.1: - resolution: {integrity: sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==, tarball: https://registry.npmjs.org/raf/-/raf-3.4.1.tgz} - - railroad-diagrams@1.0.0: - resolution: {integrity: sha512-cz93DjNeLY0idrCNOH6PviZGRN9GJhsdm9hpn1YCS879fj4W+x5IFJhhkRZcwVgMmFF7R82UA/7Oh+R8lLZg6A==, tarball: https://registry.npmjs.org/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz} - - randexp@0.4.6: - resolution: {integrity: sha512-80WNmd9DA0tmZrw9qQa62GPPWfuXJknrmVmLcxvq4uZBdYqb1wYoKTmnlGUchvVWe0XiLupYkBoXVOxz3C8DYQ==, tarball: https://registry.npmjs.org/randexp/-/randexp-0.4.6.tgz} - engines: {node: '>=0.12'} - - randombytes@2.1.0: - resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==, tarball: https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz} - - react-dom@18.3.1: - resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==, tarball: https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz} - peerDependencies: - react: ^18.3.1 - - react-is@16.13.1: - resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==, tarball: https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz} - - react-is@18.3.1: - resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==, tarball: https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz} - - react-shallow-renderer@16.15.0: - resolution: {integrity: sha512-oScf2FqQ9LFVQgA73vr86xl2NaOIX73rh+YFqcOp68CWj56tSfgtGKrEbyhCj0rSijyG9M1CYprTh39fBi5hzA==, tarball: https://registry.npmjs.org/react-shallow-renderer/-/react-shallow-renderer-16.15.0.tgz} - peerDependencies: - react: ^16.0.0 || ^17.0.0 || ^18.0.0 - - react-tabs@6.1.0: - resolution: {integrity: sha512-6QtbTRDKM+jA/MZTTefvigNxo0zz+gnBTVFw2CFVvq+f2BuH0nF0vDLNClL045nuTAdOoK/IL1vTP0ZLX0DAyQ==, tarball: https://registry.npmjs.org/react-tabs/-/react-tabs-6.1.0.tgz} - peerDependencies: - react: ^18.0.0 || ^19.0.0 - - react@18.3.1: - resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==, tarball: https://registry.npmjs.org/react/-/react-18.3.1.tgz} - engines: {node: '>=0.10.0'} - - readable-stream@3.6.2: - resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==, tarball: https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz} - engines: {node: '>= 6'} - - readdirp@3.6.0: - resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==, tarball: https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz} - engines: {node: '>=8.10.0'} - - redoc@2.2.0: - resolution: {integrity: sha512-52rz/xJtpUBc3Y/GAkaX03czKhQXTxoU7WnkXNzRLuGwiGb/iEO4OgwcgQqtwHWrYNaZXTyqZ4MAVXpi/e1gAg==, tarball: https://registry.npmjs.org/redoc/-/redoc-2.2.0.tgz} - engines: {node: '>=6.9', npm: '>=3.0.0'} - peerDependencies: - core-js: ^3.1.4 - mobx: ^6.0.4 - react: ^16.8.4 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.4 || ^17.0.0 || ^18.0.0 - styled-components: ^4.1.1 || ^5.1.1 || ^6.0.5 - - reflect.getprototypeof@1.0.9: - resolution: {integrity: sha512-r0Ay04Snci87djAsI4U+WNRcSw5S4pOH7qFjd/veA5gC7TbqESR3tcj28ia95L/fYUDw11JKP7uqUKUAfVvV5Q==, tarball: https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.9.tgz} - engines: {node: '>= 0.4'} - - reftools@1.1.9: - resolution: {integrity: sha512-OVede/NQE13xBQ+ob5CKd5KyeJYU2YInb1bmV4nRoOfquZPkAkxuOXicSe1PvqIuZZ4kD13sPKBbR7UFDmli6w==, tarball: https://registry.npmjs.org/reftools/-/reftools-1.1.9.tgz} - - regenerator-runtime@0.14.1: - resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==, tarball: https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz} - - regexp.prototype.flags@1.5.3: - resolution: {integrity: sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==, tarball: https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz} - engines: {node: '>= 0.4'} - - require-directory@2.1.1: - resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==, tarball: https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz} - engines: {node: '>=0.10.0'} - - require-from-string@2.0.2: - resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==, tarball: https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz} - engines: {node: '>=0.10.0'} - - ret@0.1.15: - resolution: {integrity: sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==, tarball: https://registry.npmjs.org/ret/-/ret-0.1.15.tgz} - engines: {node: '>=0.12'} - - rollup@4.29.1: - resolution: {integrity: sha512-RaJ45M/kmJUzSWDs1Nnd5DdV4eerC98idtUOVr6FfKcgxqvjwHmxc5upLF9qZU9EpsVzzhleFahrT3shLuJzIw==, tarball: https://registry.npmjs.org/rollup/-/rollup-4.29.1.tgz} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} - hasBin: true - - rst-selector-parser@2.2.3: - resolution: {integrity: sha512-nDG1rZeP6oFTLN6yNDV/uiAvs1+FS/KlrEwh7+y7dpuApDBy6bI2HTBcc0/V8lv9OTqfyD34eF7au2pm8aBbhA==, tarball: https://registry.npmjs.org/rst-selector-parser/-/rst-selector-parser-2.2.3.tgz} - - safe-array-concat@1.1.3: - resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==, tarball: https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz} - engines: {node: '>=0.4'} - - safe-buffer@5.2.1: - resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==, tarball: https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz} - - safe-regex-test@1.1.0: - resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==, tarball: https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz} - engines: {node: '>= 0.4'} - - safer-buffer@2.1.2: - resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==, tarball: https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz} - - scheduler@0.23.2: - resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==, tarball: https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz} - - semver@7.6.3: - resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==, tarball: https://registry.npmjs.org/semver/-/semver-7.6.3.tgz} - engines: {node: '>=10'} - hasBin: true - - set-function-length@1.2.2: - resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==, tarball: https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz} - engines: {node: '>= 0.4'} - - set-function-name@2.0.2: - resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==, tarball: https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz} - engines: {node: '>= 0.4'} - - shallowequal@1.1.0: - resolution: {integrity: sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==, tarball: https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz} - - should-equal@2.0.0: - resolution: {integrity: sha512-ZP36TMrK9euEuWQYBig9W55WPC7uo37qzAEmbjHz4gfyuXrEUgF8cUvQVO+w+d3OMfPvSRQJ22lSm8MQJ43LTA==, tarball: https://registry.npmjs.org/should-equal/-/should-equal-2.0.0.tgz} - - should-format@3.0.3: - resolution: {integrity: sha512-hZ58adtulAk0gKtua7QxevgUaXTTXxIi8t41L3zo9AHvjXO1/7sdLECuHeIN2SRtYXpNkmhoUP2pdeWgricQ+Q==, tarball: https://registry.npmjs.org/should-format/-/should-format-3.0.3.tgz} - - should-type-adaptors@1.1.0: - resolution: {integrity: sha512-JA4hdoLnN+kebEp2Vs8eBe9g7uy0zbRo+RMcU0EsNy+R+k049Ki+N5tT5Jagst2g7EAja+euFuoXFCa8vIklfA==, tarball: https://registry.npmjs.org/should-type-adaptors/-/should-type-adaptors-1.1.0.tgz} - - should-type@1.4.0: - resolution: {integrity: sha512-MdAsTu3n25yDbIe1NeN69G4n6mUnJGtSJHygX3+oN0ZbO3DTiATnf7XnYJdGT42JCXurTb1JI0qOBR65shvhPQ==, tarball: https://registry.npmjs.org/should-type/-/should-type-1.4.0.tgz} - - should-util@1.0.1: - resolution: {integrity: sha512-oXF8tfxx5cDk8r2kYqlkUJzZpDBqVY/II2WhvU0n9Y3XYvAYRmeaf1PvvIvTgPnv4KJ+ES5M0PyDq5Jp+Ygy2g==, tarball: https://registry.npmjs.org/should-util/-/should-util-1.0.1.tgz} - - should@13.2.3: - resolution: {integrity: sha512-ggLesLtu2xp+ZxI+ysJTmNjh2U0TsC+rQ/pfED9bUZZ4DKefP27D+7YJVVTvKsmjLpIi9jAa7itwDGkDDmt1GQ==, tarball: https://registry.npmjs.org/should/-/should-13.2.3.tgz} - - side-channel-list@1.0.0: - resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==, tarball: https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz} - engines: {node: '>= 0.4'} - - side-channel-map@1.0.1: - resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==, tarball: https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz} - engines: {node: '>= 0.4'} - - side-channel-weakmap@1.0.2: - resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==, tarball: https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz} - engines: {node: '>= 0.4'} - - side-channel@1.1.0: - resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==, tarball: https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz} - engines: {node: '>= 0.4'} - - siginfo@2.0.0: - resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==, tarball: https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz} - - simple-websocket@9.1.0: - resolution: {integrity: sha512-8MJPnjRN6A8UCp1I+H/dSFyjwJhp6wta4hsVRhjf8w9qBHRzxYt14RaOcjvQnhD1N4yKOddEjflwMnQM4VtXjQ==, tarball: https://registry.npmjs.org/simple-websocket/-/simple-websocket-9.1.0.tgz} - - slugify@1.4.7: - resolution: {integrity: sha512-tf+h5W1IrjNm/9rKKj0JU2MDMruiopx0jjVA5zCdBtcGjfp0+c5rHw/zADLC3IeKlGHtVbHtpfzvYA0OYT+HKg==, tarball: https://registry.npmjs.org/slugify/-/slugify-1.4.7.tgz} - engines: {node: '>=8.0.0'} - - source-map-js@1.2.1: - resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==, tarball: https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz} - engines: {node: '>=0.10.0'} - - source-map@0.6.1: - resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==, tarball: https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz} - engines: {node: '>=0.10.0'} - - stackback@0.0.2: - resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==, tarball: https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz} - - state-local@1.0.7: - resolution: {integrity: sha512-HTEHMNieakEnoe33shBYcZ7NX83ACUjCu8c40iOGEZsngj9zRnkqS9j1pqQPXwobB0ZcVTk27REb7COQ0UR59w==, tarball: https://registry.npmjs.org/state-local/-/state-local-1.0.7.tgz} - - std-env@3.8.0: - resolution: {integrity: sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==, tarball: https://registry.npmjs.org/std-env/-/std-env-3.8.0.tgz} - - stickyfill@1.1.1: - resolution: {integrity: sha512-GCp7vHAfpao+Qh/3Flh9DXEJ/qSi0KJwJw6zYlZOtRYXWUIpMM6mC2rIep/dK8RQqwW0KxGJIllmjPIBOGN8AA==, tarball: https://registry.npmjs.org/stickyfill/-/stickyfill-1.1.1.tgz} - - string-width@4.2.3: - resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==, tarball: https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz} - engines: {node: '>=8'} - - string.prototype.trim@1.2.10: - resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==, tarball: https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz} - engines: {node: '>= 0.4'} - - string.prototype.trimend@1.0.9: - resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==, tarball: https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz} - engines: {node: '>= 0.4'} - - string.prototype.trimstart@1.0.8: - resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==, tarball: https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz} - engines: {node: '>= 0.4'} - - string_decoder@1.3.0: - resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==, tarball: https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz} - - strip-ansi@6.0.1: - resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==, tarball: https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz} - engines: {node: '>=8'} - - strnum@1.0.5: - resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==, tarball: https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz} - - styled-components@6.1.13: - resolution: {integrity: sha512-M0+N2xSnAtwcVAQeFEsGWFFxXDftHUD7XrKla06QbpUMmbmtFBMMTcKWvFXtWxuD5qQkB8iU5gk6QASlx2ZRMw==, tarball: https://registry.npmjs.org/styled-components/-/styled-components-6.1.13.tgz} - engines: {node: '>= 16'} - peerDependencies: - react: '>= 16.8.0' - react-dom: '>= 16.8.0' - - stylis@4.3.2: - resolution: {integrity: sha512-bhtUjWd/z6ltJiQwg0dUfxEJ+W+jdqQd8TbWLWyeIJHlnsqmGLRFFd8e5mA0AZi/zx90smXRlN66YMTcaSFifg==, tarball: https://registry.npmjs.org/stylis/-/stylis-4.3.2.tgz} - - swagger2openapi@7.0.8: - resolution: {integrity: sha512-upi/0ZGkYgEcLeGieoz8gT74oWHA0E7JivX7aN9mAf+Tc7BQoRBvnIGHoPDw+f9TXTW4s6kGYCZJtauP6OYp7g==, tarball: https://registry.npmjs.org/swagger2openapi/-/swagger2openapi-7.0.8.tgz} - hasBin: true - - tinybench@2.9.0: - resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==, tarball: https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz} - - tinyexec@0.3.1: - resolution: {integrity: sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ==, tarball: https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.1.tgz} - - tinypool@1.0.2: - resolution: {integrity: sha512-al6n+QEANGFOMf/dmUMsuS5/r9B06uwlyNjZZql/zv8J7ybHCgoihBNORZCY2mzUuAnomQa2JdhyHKzZxPCrFA==, tarball: https://registry.npmjs.org/tinypool/-/tinypool-1.0.2.tgz} - engines: {node: ^18.0.0 || >=20.0.0} - - tinyrainbow@1.2.0: - resolution: {integrity: sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==, tarball: https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-1.2.0.tgz} - engines: {node: '>=14.0.0'} - - tinyspy@3.0.2: - resolution: {integrity: sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==, tarball: https://registry.npmjs.org/tinyspy/-/tinyspy-3.0.2.tgz} - engines: {node: '>=14.0.0'} - - to-regex-range@5.0.1: - resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==, tarball: https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz} - engines: {node: '>=8.0'} - - tr46@0.0.3: - resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==, tarball: https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz} - - tsconfck@3.1.4: - resolution: {integrity: sha512-kdqWFGVJqe+KGYvlSO9NIaWn9jT1Ny4oKVzAJsKii5eoE9snzTJzL4+MMVOMn+fikWGFmKEylcXL710V/kIPJQ==, tarball: https://registry.npmjs.org/tsconfck/-/tsconfck-3.1.4.tgz} - engines: {node: ^18 || >=20} - hasBin: true - peerDependencies: - typescript: ^5.0.0 - peerDependenciesMeta: - typescript: - optional: true - - tslib@2.6.2: - resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==, tarball: https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz} - - typed-array-buffer@1.0.3: - resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==, tarball: https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz} - engines: {node: '>= 0.4'} - - typed-array-byte-length@1.0.3: - resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==, tarball: https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz} - engines: {node: '>= 0.4'} - - typed-array-byte-offset@1.0.4: - resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==, tarball: https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz} - engines: {node: '>= 0.4'} - - typed-array-length@1.0.7: - resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==, tarball: https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz} - engines: {node: '>= 0.4'} - - typescript@5.7.2: - resolution: {integrity: sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==, tarball: https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz} - engines: {node: '>=14.17'} - hasBin: true - - uglify-js@3.19.3: - resolution: {integrity: sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==, tarball: https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.3.tgz} - engines: {node: '>=0.8.0'} - hasBin: true - - unbox-primitive@1.1.0: - resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==, tarball: https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz} - engines: {node: '>= 0.4'} - - undici-types@6.20.0: - resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==, tarball: https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz} - - undici@6.21.0: - resolution: {integrity: sha512-BUgJXc752Kou3oOIuU1i+yZZypyZRqNPW0vqoMPl8VaoalSfeR0D8/t4iAS3yirs79SSMTxTag+ZC86uswv+Cw==, tarball: https://registry.npmjs.org/undici/-/undici-6.21.0.tgz} - engines: {node: '>=18.17'} - - uri-js-replace@1.0.1: - resolution: {integrity: sha512-W+C9NWNLFOoBI2QWDp4UT9pv65r2w5Cx+3sTYFvtMdDBxkKt1syCqsUdSFAChbEe1uK5TfS04wt/nGwmaeIQ0g==, tarball: https://registry.npmjs.org/uri-js-replace/-/uri-js-replace-1.0.1.tgz} - - url-template@2.0.8: - resolution: {integrity: sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw==, tarball: https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz} - - use-sync-external-store@1.4.0: - resolution: {integrity: sha512-9WXSPC5fMv61vaupRkCKCxsPxBocVnwakBEkMIHHpkTTg6icbJtg6jzgtLDm4bl3cSHAca52rYWih0k4K3PfHw==, tarball: https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.4.0.tgz} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - - util-deprecate@1.0.2: - resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==, tarball: https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz} - - vite-node@2.1.8: - resolution: {integrity: sha512-uPAwSr57kYjAUux+8E2j0q0Fxpn8M9VoyfGiRI8Kfktz9NcYMCenwY5RnZxnF1WTu3TGiYipirIzacLL3VVGFg==, tarball: https://registry.npmjs.org/vite-node/-/vite-node-2.1.8.tgz} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - - vite-tsconfig-paths@5.1.4: - resolution: {integrity: sha512-cYj0LRuLV2c2sMqhqhGpaO3LretdtMn/BVX4cPLanIZuwwrkVl+lK84E/miEXkCHWXuq65rhNN4rXsBcOB3S4w==, tarball: https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-5.1.4.tgz} - peerDependencies: - vite: '*' - peerDependenciesMeta: - vite: - optional: true - - vite@5.4.11: - resolution: {integrity: sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==, tarball: https://registry.npmjs.org/vite/-/vite-5.4.11.tgz} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - peerDependencies: - '@types/node': ^18.0.0 || >=20.0.0 - less: '*' - lightningcss: ^1.21.0 - sass: '*' - sass-embedded: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - sass-embedded: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - - vitest@2.1.8: - resolution: {integrity: sha512-1vBKTZskHw/aosXqQUlVWWlGUxSJR8YtiyZDJAFeW2kPAeX6S3Sool0mjspO+kXLuxVWlEDDowBAeqeAQefqLQ==, tarball: https://registry.npmjs.org/vitest/-/vitest-2.1.8.tgz} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - peerDependencies: - '@edge-runtime/vm': '*' - '@types/node': ^18.0.0 || >=20.0.0 - '@vitest/browser': 2.1.8 - '@vitest/ui': 2.1.8 - happy-dom: '*' - jsdom: '*' - peerDependenciesMeta: - '@edge-runtime/vm': + '@edge-runtime/vm': optional: true '@types/node': optional: true @@ -1644,1775 +574,378 @@ packages: '@vitest/ui': optional: true happy-dom: - optional: true - jsdom: - optional: true - - webidl-conversions@3.0.1: - resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==, tarball: https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz} - - whatwg-encoding@3.1.1: - resolution: {integrity: sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==, tarball: https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz} - engines: {node: '>=18'} - - whatwg-mimetype@4.0.0: - resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==, tarball: https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz} - engines: {node: '>=18'} - - whatwg-url@5.0.0: - resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==, tarball: https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz} - - which-boxed-primitive@1.1.1: - resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==, tarball: https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz} - engines: {node: '>= 0.4'} - - which-builtin-type@1.2.1: - resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==, tarball: https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz} - engines: {node: '>= 0.4'} - - which-collection@1.0.2: - resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==, tarball: https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz} - engines: {node: '>= 0.4'} - - which-typed-array@1.1.18: - resolution: {integrity: sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==, tarball: https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.18.tgz} - engines: {node: '>= 0.4'} - - why-is-node-running@2.3.0: - resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==, tarball: https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.3.0.tgz} - engines: {node: '>=8'} - hasBin: true - - wordwrap@1.0.0: - resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==, tarball: https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz} - - wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==, tarball: https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz} - engines: {node: '>=10'} - - wrappy@1.0.2: - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==, tarball: https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz} - - ws@7.5.10: - resolution: {integrity: sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==, tarball: https://registry.npmjs.org/ws/-/ws-7.5.10.tgz} - engines: {node: '>=8.3.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - - y18n@5.0.8: - resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==, tarball: https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz} - engines: {node: '>=10'} - - yaml-ast-parser@0.0.43: - resolution: {integrity: sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==, tarball: https://registry.npmjs.org/yaml-ast-parser/-/yaml-ast-parser-0.0.43.tgz} - - yaml@1.10.2: - resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==, tarball: https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz} - engines: {node: '>= 6'} - - yargs-parser@20.2.9: - resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==, tarball: https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz} - engines: {node: '>=10'} - - yargs@17.0.1: - resolution: {integrity: sha512-xBBulfCc8Y6gLFcrPvtqKz9hz8SO0l1Ni8GgDekvBX2ro0HRQImDGnikfc33cgzcYUSncapnNcZDjVFIH3f6KQ==, tarball: https://registry.npmjs.org/yargs/-/yargs-17.0.1.tgz} - engines: {node: '>=12'} - -snapshots: - - '@babel/runtime@7.26.0': - dependencies: - regenerator-runtime: 0.14.1 - - '@cfaester/enzyme-adapter-react-18@0.8.0(enzyme@3.11.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - enzyme: 3.11.0 - enzyme-shallow-equal: 1.0.7 - function.prototype.name: 1.1.8 - has: 1.0.4 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-is: 18.3.1 - react-shallow-renderer: 16.15.0(react@18.3.1) - - '@edge-runtime/primitives@6.0.0': {} - - '@edge-runtime/vm@5.0.0': - dependencies: - '@edge-runtime/primitives': 6.0.0 - - '@effect-ak/tg-bot-client@file:../tg-bot-client/effect-ak-tg-bot-client-0.2.2.tgz': - dependencies: - effect: 3.11.9 - - '@emotion/is-prop-valid@1.2.2': - dependencies: - '@emotion/memoize': 0.8.1 - - '@emotion/memoize@0.8.1': {} - - '@emotion/unitless@0.8.1': {} - - '@esbuild/aix-ppc64@0.21.5': - optional: true - - '@esbuild/android-arm64@0.21.5': - optional: true - - '@esbuild/android-arm@0.21.5': - optional: true - - '@esbuild/android-x64@0.21.5': - optional: true - - '@esbuild/darwin-arm64@0.21.5': - optional: true - - '@esbuild/darwin-x64@0.21.5': - optional: true - - '@esbuild/freebsd-arm64@0.21.5': - optional: true - - '@esbuild/freebsd-x64@0.21.5': - optional: true - - '@esbuild/linux-arm64@0.21.5': - optional: true - - '@esbuild/linux-arm@0.21.5': - optional: true - - '@esbuild/linux-ia32@0.21.5': - optional: true - - '@esbuild/linux-loong64@0.21.5': - optional: true - - '@esbuild/linux-mips64el@0.21.5': - optional: true - - '@esbuild/linux-ppc64@0.21.5': - optional: true - - '@esbuild/linux-riscv64@0.21.5': - optional: true - - '@esbuild/linux-s390x@0.21.5': - optional: true - - '@esbuild/linux-x64@0.21.5': - optional: true - - '@esbuild/netbsd-x64@0.21.5': - optional: true - - '@esbuild/openbsd-x64@0.21.5': - optional: true - - '@esbuild/sunos-x64@0.21.5': - optional: true - - '@esbuild/win32-arm64@0.21.5': - optional: true - - '@esbuild/win32-ia32@0.21.5': - optional: true - - '@esbuild/win32-x64@0.21.5': - optional: true - - '@exodus/schemasafe@1.3.0': {} - - '@jridgewell/sourcemap-codec@1.5.0': {} - - '@monaco-editor/loader@1.4.0(monaco-editor@0.52.2)': - dependencies: - monaco-editor: 0.52.2 - state-local: 1.0.7 - - '@redocly/ajv@8.11.2': - dependencies: - fast-deep-equal: 3.1.3 - json-schema-traverse: 1.0.0 - require-from-string: 2.0.2 - uri-js-replace: 1.0.1 - - '@redocly/cli@1.26.1(enzyme@3.11.0)': - dependencies: - '@redocly/openapi-core': 1.26.1 - abort-controller: 3.0.0 - chokidar: 3.6.0 - colorette: 1.4.0 - core-js: 3.39.0 - form-data: 4.0.1 - get-port-please: 3.1.2 - glob: 7.2.3 - handlebars: 4.7.8 - mobx: 6.13.5 - node-fetch: 2.7.0 - pluralize: 8.0.0 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - redoc: 2.2.0(core-js@3.39.0)(enzyme@3.11.0)(mobx@6.13.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(styled-components@6.1.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) - semver: 7.6.3 - simple-websocket: 9.1.0 - styled-components: 6.1.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - yargs: 17.0.1 - transitivePeerDependencies: - - bufferutil - - encoding - - enzyme - - react-native - - supports-color - - utf-8-validate - - '@redocly/config@0.17.1': {} - - '@redocly/openapi-core@1.26.1': - dependencies: - '@redocly/ajv': 8.11.2 - '@redocly/config': 0.17.1 - colorette: 1.4.0 - https-proxy-agent: 7.0.6 - js-levenshtein: 1.1.6 - js-yaml: 4.1.0 - minimatch: 5.1.6 - node-fetch: 2.7.0 - pluralize: 8.0.0 - yaml-ast-parser: 0.0.43 - transitivePeerDependencies: - - encoding - - supports-color - - '@rollup/rollup-android-arm-eabi@4.29.1': - optional: true - - '@rollup/rollup-android-arm64@4.29.1': - optional: true - - '@rollup/rollup-darwin-arm64@4.29.1': - optional: true - - '@rollup/rollup-darwin-x64@4.29.1': - optional: true - - '@rollup/rollup-freebsd-arm64@4.29.1': - optional: true - - '@rollup/rollup-freebsd-x64@4.29.1': - optional: true - - '@rollup/rollup-linux-arm-gnueabihf@4.29.1': - optional: true - - '@rollup/rollup-linux-arm-musleabihf@4.29.1': - optional: true - - '@rollup/rollup-linux-arm64-gnu@4.29.1': - optional: true - - '@rollup/rollup-linux-arm64-musl@4.29.1': - optional: true - - '@rollup/rollup-linux-loongarch64-gnu@4.29.1': - optional: true - - '@rollup/rollup-linux-powerpc64le-gnu@4.29.1': - optional: true - - '@rollup/rollup-linux-riscv64-gnu@4.29.1': - optional: true - - '@rollup/rollup-linux-s390x-gnu@4.29.1': - optional: true - - '@rollup/rollup-linux-x64-gnu@4.29.1': - optional: true - - '@rollup/rollup-linux-x64-musl@4.29.1': - optional: true - - '@rollup/rollup-win32-arm64-msvc@4.29.1': - optional: true - - '@rollup/rollup-win32-ia32-msvc@4.29.1': - optional: true - - '@rollup/rollup-win32-x64-msvc@4.29.1': - optional: true - - '@types/alpinejs@3.13.11': {} - - '@types/estree@1.0.6': {} - - '@types/json-schema@7.0.15': {} - - '@types/node@22.10.2': - dependencies: - undici-types: 6.20.0 - - '@types/stylis@4.2.5': {} - - '@types/trusted-types@2.0.7': - optional: true - - '@vitest/expect@2.1.8': - dependencies: - '@vitest/spy': 2.1.8 - '@vitest/utils': 2.1.8 - chai: 5.1.2 - tinyrainbow: 1.2.0 - - '@vitest/mocker@2.1.8(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2))': - dependencies: - '@vitest/spy': 2.1.8 - estree-walker: 3.0.3 - magic-string: 0.30.17 - optionalDependencies: - vite: 5.4.11(@types/node@22.10.2)(lightningcss@1.28.2) - - '@vitest/pretty-format@2.1.8': - dependencies: - tinyrainbow: 1.2.0 - - '@vitest/runner@2.1.8': - dependencies: - '@vitest/utils': 2.1.8 - pathe: 1.1.2 - - '@vitest/snapshot@2.1.8': - dependencies: - '@vitest/pretty-format': 2.1.8 - magic-string: 0.30.17 - pathe: 1.1.2 - - '@vitest/spy@2.1.8': - dependencies: - tinyspy: 3.0.2 - - '@vitest/utils@2.1.8': - dependencies: - '@vitest/pretty-format': 2.1.8 - loupe: 3.1.2 - tinyrainbow: 1.2.0 - - abort-controller@3.0.0: - dependencies: - event-target-shim: 5.0.1 - - agent-base@7.1.3: {} - - ansi-regex@5.0.1: {} - - ansi-styles@4.3.0: - dependencies: - color-convert: 2.0.1 - - anymatch@3.1.3: - dependencies: - normalize-path: 3.0.0 - picomatch: 2.3.1 - - argparse@2.0.1: {} - - array-buffer-byte-length@1.0.2: - dependencies: - call-bound: 1.0.3 - is-array-buffer: 3.0.5 - - array.prototype.filter@1.0.4: - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-abstract: 1.23.7 - es-array-method-boxes-properly: 1.0.0 - es-object-atoms: 1.0.0 - is-string: 1.1.1 - - array.prototype.flat@1.3.3: - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-abstract: 1.23.7 - es-shim-unscopables: 1.0.2 - - arraybuffer.prototype.slice@1.0.4: - dependencies: - array-buffer-byte-length: 1.0.2 - call-bind: 1.0.8 - define-properties: 1.2.1 - es-abstract: 1.23.7 - es-errors: 1.3.0 - get-intrinsic: 1.2.6 - is-array-buffer: 3.0.5 - - assertion-error@2.0.1: {} - - asynckit@0.4.0: {} - - available-typed-arrays@1.0.7: - dependencies: - possible-typed-array-names: 1.0.0 - - balanced-match@1.0.2: {} - - binary-extensions@2.3.0: {} - - boolbase@1.0.0: {} - - brace-expansion@1.1.11: - dependencies: - balanced-match: 1.0.2 - concat-map: 0.0.1 - - brace-expansion@2.0.1: - dependencies: - balanced-match: 1.0.2 - - braces@3.0.3: - dependencies: - fill-range: 7.1.1 - - cac@6.7.14: {} - - call-bind-apply-helpers@1.0.1: - dependencies: - es-errors: 1.3.0 - function-bind: 1.1.2 - - call-bind@1.0.8: - dependencies: - call-bind-apply-helpers: 1.0.1 - es-define-property: 1.0.1 - get-intrinsic: 1.2.6 - set-function-length: 1.2.2 - - call-bound@1.0.3: - dependencies: - call-bind-apply-helpers: 1.0.1 - get-intrinsic: 1.2.6 - - call-me-maybe@1.0.2: {} - - camelize@1.0.1: {} - - chai@5.1.2: - dependencies: - assertion-error: 2.0.1 - check-error: 2.1.1 - deep-eql: 5.0.2 - loupe: 3.1.2 - pathval: 2.0.0 - - check-error@2.1.1: {} - - cheerio-select@2.1.0: - dependencies: - boolbase: 1.0.0 - css-select: 5.1.0 - css-what: 6.1.0 - domelementtype: 2.3.0 - domhandler: 5.0.3 - domutils: 3.1.0 - - cheerio@1.0.0: - dependencies: - cheerio-select: 2.1.0 - dom-serializer: 2.0.0 - domhandler: 5.0.3 - domutils: 3.1.0 - encoding-sniffer: 0.2.0 - htmlparser2: 9.1.0 - parse5: 7.2.1 - parse5-htmlparser2-tree-adapter: 7.1.0 - parse5-parser-stream: 7.1.2 - undici: 6.21.0 - whatwg-mimetype: 4.0.0 - - chokidar@3.6.0: - dependencies: - anymatch: 3.1.3 - braces: 3.0.3 - glob-parent: 5.1.2 - is-binary-path: 2.1.0 - is-glob: 4.0.3 - normalize-path: 3.0.0 - readdirp: 3.6.0 - optionalDependencies: - fsevents: 2.3.3 - - classnames@2.5.1: {} - - cliui@7.0.4: - dependencies: - string-width: 4.2.3 - strip-ansi: 6.0.1 - wrap-ansi: 7.0.0 - - clsx@2.1.1: {} - - color-convert@2.0.1: - dependencies: - color-name: 1.1.4 - - color-name@1.1.4: {} - - colorette@1.4.0: {} - - combined-stream@1.0.8: - dependencies: - delayed-stream: 1.0.0 - - commander@2.20.3: {} - - concat-map@0.0.1: {} - - core-js@3.39.0: {} - - css-color-keywords@1.0.0: {} - - css-select@5.1.0: - dependencies: - boolbase: 1.0.0 - css-what: 6.1.0 - domhandler: 5.0.3 - domutils: 3.1.0 - nth-check: 2.1.1 - - css-to-react-native@3.2.0: - dependencies: - camelize: 1.0.1 - css-color-keywords: 1.0.0 - postcss-value-parser: 4.2.0 - - css-what@6.1.0: {} - - csstype@3.1.3: {} - - data-view-buffer@1.0.2: - dependencies: - call-bound: 1.0.3 - es-errors: 1.3.0 - is-data-view: 1.0.2 - - data-view-byte-length@1.0.2: - dependencies: - call-bound: 1.0.3 - es-errors: 1.3.0 - is-data-view: 1.0.2 - - data-view-byte-offset@1.0.1: - dependencies: - call-bound: 1.0.3 - es-errors: 1.3.0 - is-data-view: 1.0.2 - - debug@4.4.0: - dependencies: - ms: 2.1.3 - - decko@1.2.0: {} - - deep-eql@5.0.2: {} - - define-data-property@1.1.4: - dependencies: - es-define-property: 1.0.1 - es-errors: 1.3.0 - gopd: 1.2.0 - - define-properties@1.2.1: - dependencies: - define-data-property: 1.1.4 - has-property-descriptors: 1.0.2 - object-keys: 1.1.1 - - delayed-stream@1.0.0: {} - - detect-libc@1.0.3: - optional: true - - discontinuous-range@1.0.0: {} - - dom-serializer@2.0.0: - dependencies: - domelementtype: 2.3.0 - domhandler: 5.0.3 - entities: 4.5.0 - - domelementtype@2.3.0: {} - - domhandler@5.0.3: - dependencies: - domelementtype: 2.3.0 - - dompurify@3.2.3: - optionalDependencies: - '@types/trusted-types': 2.0.7 - - domutils@3.1.0: - dependencies: - dom-serializer: 2.0.0 - domelementtype: 2.3.0 - domhandler: 5.0.3 - - dunder-proto@1.0.1: - dependencies: - call-bind-apply-helpers: 1.0.1 - es-errors: 1.3.0 - gopd: 1.2.0 - - effect@3.11.9: - dependencies: - fast-check: 3.23.2 - - emoji-regex@8.0.0: {} - - encoding-sniffer@0.2.0: - dependencies: - iconv-lite: 0.6.3 - whatwg-encoding: 3.1.1 - - entities@4.5.0: {} - - enzyme-shallow-equal@1.0.7: - dependencies: - hasown: 2.0.2 - object-is: 1.1.6 - - enzyme@3.11.0: - dependencies: - array.prototype.flat: 1.3.3 - cheerio: 1.0.0 - enzyme-shallow-equal: 1.0.7 - function.prototype.name: 1.1.8 - has: 1.0.4 - html-element-map: 1.3.1 - is-boolean-object: 1.2.1 - is-callable: 1.2.7 - is-number-object: 1.1.1 - is-regex: 1.2.1 - is-string: 1.1.1 - is-subset: 0.1.1 - lodash.escape: 4.0.1 - lodash.isequal: 4.5.0 - object-inspect: 1.13.3 - object-is: 1.1.6 - object.assign: 4.1.7 - object.entries: 1.1.8 - object.values: 1.2.1 - raf: 3.4.1 - rst-selector-parser: 2.2.3 - string.prototype.trim: 1.2.10 - - es-abstract@1.23.7: - dependencies: - array-buffer-byte-length: 1.0.2 - arraybuffer.prototype.slice: 1.0.4 - available-typed-arrays: 1.0.7 - call-bind: 1.0.8 - call-bound: 1.0.3 - data-view-buffer: 1.0.2 - data-view-byte-length: 1.0.2 - data-view-byte-offset: 1.0.1 - es-define-property: 1.0.1 - es-errors: 1.3.0 - es-object-atoms: 1.0.0 - es-set-tostringtag: 2.0.3 - es-to-primitive: 1.3.0 - function.prototype.name: 1.1.8 - get-intrinsic: 1.2.6 - get-symbol-description: 1.1.0 - globalthis: 1.0.4 - gopd: 1.2.0 - has-property-descriptors: 1.0.2 - has-proto: 1.2.0 - has-symbols: 1.1.0 - hasown: 2.0.2 - internal-slot: 1.1.0 - is-array-buffer: 3.0.5 - is-callable: 1.2.7 - is-data-view: 1.0.2 - is-regex: 1.2.1 - is-shared-array-buffer: 1.0.4 - is-string: 1.1.1 - is-typed-array: 1.1.15 - is-weakref: 1.1.0 - math-intrinsics: 1.1.0 - object-inspect: 1.13.3 - object-keys: 1.1.1 - object.assign: 4.1.7 - regexp.prototype.flags: 1.5.3 - safe-array-concat: 1.1.3 - safe-regex-test: 1.1.0 - string.prototype.trim: 1.2.10 - string.prototype.trimend: 1.0.9 - string.prototype.trimstart: 1.0.8 - typed-array-buffer: 1.0.3 - typed-array-byte-length: 1.0.3 - typed-array-byte-offset: 1.0.4 - typed-array-length: 1.0.7 - unbox-primitive: 1.1.0 - which-typed-array: 1.1.18 - - es-array-method-boxes-properly@1.0.0: {} - - es-define-property@1.0.1: {} - - es-errors@1.3.0: {} - - es-module-lexer@1.5.4: {} - - es-object-atoms@1.0.0: - dependencies: - es-errors: 1.3.0 - - es-set-tostringtag@2.0.3: - dependencies: - get-intrinsic: 1.2.6 - has-tostringtag: 1.0.2 - hasown: 2.0.2 - - es-shim-unscopables@1.0.2: - dependencies: - hasown: 2.0.2 - - es-to-primitive@1.3.0: - dependencies: - is-callable: 1.2.7 - is-date-object: 1.1.0 - is-symbol: 1.1.1 - - es6-promise@3.3.1: {} - - esbuild@0.21.5: - optionalDependencies: - '@esbuild/aix-ppc64': 0.21.5 - '@esbuild/android-arm': 0.21.5 - '@esbuild/android-arm64': 0.21.5 - '@esbuild/android-x64': 0.21.5 - '@esbuild/darwin-arm64': 0.21.5 - '@esbuild/darwin-x64': 0.21.5 - '@esbuild/freebsd-arm64': 0.21.5 - '@esbuild/freebsd-x64': 0.21.5 - '@esbuild/linux-arm': 0.21.5 - '@esbuild/linux-arm64': 0.21.5 - '@esbuild/linux-ia32': 0.21.5 - '@esbuild/linux-loong64': 0.21.5 - '@esbuild/linux-mips64el': 0.21.5 - '@esbuild/linux-ppc64': 0.21.5 - '@esbuild/linux-riscv64': 0.21.5 - '@esbuild/linux-s390x': 0.21.5 - '@esbuild/linux-x64': 0.21.5 - '@esbuild/netbsd-x64': 0.21.5 - '@esbuild/openbsd-x64': 0.21.5 - '@esbuild/sunos-x64': 0.21.5 - '@esbuild/win32-arm64': 0.21.5 - '@esbuild/win32-ia32': 0.21.5 - '@esbuild/win32-x64': 0.21.5 - - escalade@3.2.0: {} - - estree-walker@3.0.3: - dependencies: - '@types/estree': 1.0.6 - - event-target-shim@5.0.1: {} - - eventemitter3@5.0.1: {} - - expect-type@1.1.0: {} - - fast-check@3.23.2: - dependencies: - pure-rand: 6.1.0 - - fast-deep-equal@3.1.3: {} - - fast-safe-stringify@2.1.1: {} - - fast-xml-parser@4.5.1: - dependencies: - strnum: 1.0.5 - - fill-range@7.1.1: - dependencies: - to-regex-range: 5.0.1 - - for-each@0.3.3: - dependencies: - is-callable: 1.2.7 - - foreach@2.0.6: {} - - form-data@4.0.1: - dependencies: - asynckit: 0.4.0 - combined-stream: 1.0.8 - mime-types: 2.1.35 - - fs.realpath@1.0.0: {} - - fsevents@2.3.3: - optional: true - - function-bind@1.1.2: {} - - function.prototype.name@1.1.8: - dependencies: - call-bind: 1.0.8 - call-bound: 1.0.3 - define-properties: 1.2.1 - functions-have-names: 1.2.3 - hasown: 2.0.2 - is-callable: 1.2.7 - - functions-have-names@1.2.3: {} - - get-caller-file@2.0.5: {} - - get-intrinsic@1.2.6: - dependencies: - call-bind-apply-helpers: 1.0.1 - dunder-proto: 1.0.1 - es-define-property: 1.0.1 - es-errors: 1.3.0 - es-object-atoms: 1.0.0 - function-bind: 1.1.2 - gopd: 1.2.0 - has-symbols: 1.1.0 - hasown: 2.0.2 - math-intrinsics: 1.1.0 - - get-port-please@3.1.2: {} - - get-symbol-description@1.1.0: - dependencies: - call-bound: 1.0.3 - es-errors: 1.3.0 - get-intrinsic: 1.2.6 - - glob-parent@5.1.2: - dependencies: - is-glob: 4.0.3 - - glob@7.2.3: - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.1.2 - once: 1.4.0 - path-is-absolute: 1.0.1 - - globalthis@1.0.4: - dependencies: - define-properties: 1.2.1 - gopd: 1.2.0 - - globrex@0.1.2: {} - - gopd@1.2.0: {} - - handlebars@4.7.8: - dependencies: - minimist: 1.2.8 - neo-async: 2.6.2 - source-map: 0.6.1 - wordwrap: 1.0.0 - optionalDependencies: - uglify-js: 3.19.3 - - has-bigints@1.1.0: {} - - has-property-descriptors@1.0.2: - dependencies: - es-define-property: 1.0.1 - - has-proto@1.2.0: - dependencies: - dunder-proto: 1.0.1 - - has-symbols@1.1.0: {} - - has-tostringtag@1.0.2: - dependencies: - has-symbols: 1.1.0 - - has@1.0.4: {} - - hasown@2.0.2: - dependencies: - function-bind: 1.1.2 - - html-element-map@1.3.1: - dependencies: - array.prototype.filter: 1.0.4 - call-bind: 1.0.8 - - htmlparser2@9.1.0: - dependencies: - domelementtype: 2.3.0 - domhandler: 5.0.3 - domutils: 3.1.0 - entities: 4.5.0 - - http2-client@1.3.5: {} - - https-proxy-agent@7.0.6: - dependencies: - agent-base: 7.1.3 - debug: 4.4.0 - transitivePeerDependencies: - - supports-color - - iconv-lite@0.6.3: - dependencies: - safer-buffer: 2.1.2 - - inflight@1.0.6: - dependencies: - once: 1.4.0 - wrappy: 1.0.2 - - inherits@2.0.4: {} - - internal-slot@1.1.0: - dependencies: - es-errors: 1.3.0 - hasown: 2.0.2 - side-channel: 1.1.0 - - is-array-buffer@3.0.5: - dependencies: - call-bind: 1.0.8 - call-bound: 1.0.3 - get-intrinsic: 1.2.6 - - is-async-function@2.0.0: - dependencies: - has-tostringtag: 1.0.2 - - is-bigint@1.1.0: - dependencies: - has-bigints: 1.1.0 - - is-binary-path@2.1.0: - dependencies: - binary-extensions: 2.3.0 - - is-boolean-object@1.2.1: - dependencies: - call-bound: 1.0.3 - has-tostringtag: 1.0.2 - - is-callable@1.2.7: {} - - is-data-view@1.0.2: - dependencies: - call-bound: 1.0.3 - get-intrinsic: 1.2.6 - is-typed-array: 1.1.15 - - is-date-object@1.1.0: - dependencies: - call-bound: 1.0.3 - has-tostringtag: 1.0.2 - - is-extglob@2.1.1: {} - - is-finalizationregistry@1.1.1: - dependencies: - call-bound: 1.0.3 - - is-fullwidth-code-point@3.0.0: {} - - is-generator-function@1.0.10: - dependencies: - has-tostringtag: 1.0.2 - - is-glob@4.0.3: - dependencies: - is-extglob: 2.1.1 - - is-map@2.0.3: {} - - is-number-object@1.1.1: - dependencies: - call-bound: 1.0.3 - has-tostringtag: 1.0.2 - - is-number@7.0.0: {} - - is-regex@1.2.1: - dependencies: - call-bound: 1.0.3 - gopd: 1.2.0 - has-tostringtag: 1.0.2 - hasown: 2.0.2 - - is-set@2.0.3: {} - - is-shared-array-buffer@1.0.4: - dependencies: - call-bound: 1.0.3 - - is-string@1.1.1: - dependencies: - call-bound: 1.0.3 - has-tostringtag: 1.0.2 - - is-subset@0.1.1: {} - - is-symbol@1.1.1: - dependencies: - call-bound: 1.0.3 - has-symbols: 1.1.0 - safe-regex-test: 1.1.0 - - is-typed-array@1.1.15: - dependencies: - which-typed-array: 1.1.18 - - is-weakmap@2.0.2: {} - - is-weakref@1.1.0: - dependencies: - call-bound: 1.0.3 - - is-weakset@2.0.4: - dependencies: - call-bound: 1.0.3 - get-intrinsic: 1.2.6 + optional: true + jsdom: + optional: true - isarray@2.0.5: {} + why-is-node-running@2.3.0: + resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==, tarball: https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.3.0.tgz} + engines: {node: '>=8'} + hasBin: true - js-levenshtein@1.1.6: {} +snapshots: - js-tokens@4.0.0: {} + '@edge-runtime/primitives@6.0.0': {} - js-yaml@4.1.0: + '@edge-runtime/vm@5.0.0': dependencies: - argparse: 2.0.1 + '@edge-runtime/primitives': 6.0.0 - json-pointer@0.6.2: + '@effect-ak/tg-bot-client@0.3.2': dependencies: - foreach: 2.0.6 - - json-schema-traverse@1.0.0: {} + effect: 3.12.6 - lightningcss-darwin-arm64@1.28.2: + '@esbuild/aix-ppc64@0.24.2': optional: true - lightningcss-darwin-x64@1.28.2: + '@esbuild/android-arm64@0.24.2': optional: true - lightningcss-freebsd-x64@1.28.2: + '@esbuild/android-arm@0.24.2': optional: true - lightningcss-linux-arm-gnueabihf@1.28.2: + '@esbuild/android-x64@0.24.2': optional: true - lightningcss-linux-arm64-gnu@1.28.2: + '@esbuild/darwin-arm64@0.24.2': optional: true - lightningcss-linux-arm64-musl@1.28.2: + '@esbuild/darwin-x64@0.24.2': optional: true - lightningcss-linux-x64-gnu@1.28.2: + '@esbuild/freebsd-arm64@0.24.2': optional: true - lightningcss-linux-x64-musl@1.28.2: + '@esbuild/freebsd-x64@0.24.2': optional: true - lightningcss-win32-arm64-msvc@1.28.2: + '@esbuild/linux-arm64@0.24.2': optional: true - lightningcss-win32-x64-msvc@1.28.2: + '@esbuild/linux-arm@0.24.2': optional: true - lightningcss@1.28.2: - dependencies: - detect-libc: 1.0.3 - optionalDependencies: - lightningcss-darwin-arm64: 1.28.2 - lightningcss-darwin-x64: 1.28.2 - lightningcss-freebsd-x64: 1.28.2 - lightningcss-linux-arm-gnueabihf: 1.28.2 - lightningcss-linux-arm64-gnu: 1.28.2 - lightningcss-linux-arm64-musl: 1.28.2 - lightningcss-linux-x64-gnu: 1.28.2 - lightningcss-linux-x64-musl: 1.28.2 - lightningcss-win32-arm64-msvc: 1.28.2 - lightningcss-win32-x64-msvc: 1.28.2 + '@esbuild/linux-ia32@0.24.2': optional: true - lodash.escape@4.0.1: {} - - lodash.flattendeep@4.4.0: {} - - lodash.isequal@4.5.0: {} - - loose-envify@1.4.0: - dependencies: - js-tokens: 4.0.0 - - loupe@3.1.2: {} - - lunr@2.3.9: {} - - magic-string@0.30.17: - dependencies: - '@jridgewell/sourcemap-codec': 1.5.0 - - mark.js@8.11.1: {} + '@esbuild/linux-loong64@0.24.2': + optional: true - marked@4.3.0: {} + '@esbuild/linux-mips64el@0.24.2': + optional: true - math-intrinsics@1.1.0: {} + '@esbuild/linux-ppc64@0.24.2': + optional: true - mime-db@1.52.0: {} + '@esbuild/linux-riscv64@0.24.2': + optional: true - mime-types@2.1.35: - dependencies: - mime-db: 1.52.0 + '@esbuild/linux-s390x@0.24.2': + optional: true - minimatch@3.1.2: - dependencies: - brace-expansion: 1.1.11 + '@esbuild/linux-x64@0.24.2': + optional: true - minimatch@5.1.6: - dependencies: - brace-expansion: 2.0.1 + '@esbuild/netbsd-arm64@0.24.2': + optional: true - minimist@1.2.8: {} + '@esbuild/netbsd-x64@0.24.2': + optional: true - mobx-react-lite@4.1.0(mobx@6.13.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): - dependencies: - mobx: 6.13.5 - react: 18.3.1 - use-sync-external-store: 1.4.0(react@18.3.1) - optionalDependencies: - react-dom: 18.3.1(react@18.3.1) + '@esbuild/openbsd-arm64@0.24.2': + optional: true - mobx-react@9.2.0(mobx@6.13.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): - dependencies: - mobx: 6.13.5 - mobx-react-lite: 4.1.0(mobx@6.13.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - react: 18.3.1 - optionalDependencies: - react-dom: 18.3.1(react@18.3.1) + '@esbuild/openbsd-x64@0.24.2': + optional: true - mobx@6.13.5: {} + '@esbuild/sunos-x64@0.24.2': + optional: true - monaco-editor@0.52.2: {} + '@esbuild/win32-arm64@0.24.2': + optional: true - moo@0.5.2: {} + '@esbuild/win32-ia32@0.24.2': + optional: true - ms@2.1.3: {} + '@esbuild/win32-x64@0.24.2': + optional: true - nanoid@3.3.8: {} + '@jridgewell/sourcemap-codec@1.5.0': {} - nearley@2.20.1: + '@monaco-editor/loader@1.4.0(monaco-editor@0.52.2)': dependencies: - commander: 2.20.3 - moo: 0.5.2 - railroad-diagrams: 1.0.0 - randexp: 0.4.6 + monaco-editor: 0.52.2 + state-local: 1.0.7 - neo-async@2.6.2: {} + '@rollup/rollup-android-arm-eabi@4.31.0': + optional: true - node-fetch-h2@2.3.0: - dependencies: - http2-client: 1.3.5 + '@rollup/rollup-android-arm64@4.31.0': + optional: true - node-fetch@2.7.0: - dependencies: - whatwg-url: 5.0.0 + '@rollup/rollup-darwin-arm64@4.31.0': + optional: true - node-readfiles@0.2.0: - dependencies: - es6-promise: 3.3.1 + '@rollup/rollup-darwin-x64@4.31.0': + optional: true - normalize-path@3.0.0: {} + '@rollup/rollup-freebsd-arm64@4.31.0': + optional: true - nth-check@2.1.1: - dependencies: - boolbase: 1.0.0 + '@rollup/rollup-freebsd-x64@4.31.0': + optional: true - oas-kit-common@1.0.8: - dependencies: - fast-safe-stringify: 2.1.1 + '@rollup/rollup-linux-arm-gnueabihf@4.31.0': + optional: true - oas-linter@3.2.2: - dependencies: - '@exodus/schemasafe': 1.3.0 - should: 13.2.3 - yaml: 1.10.2 + '@rollup/rollup-linux-arm-musleabihf@4.31.0': + optional: true - oas-resolver@2.5.6: - dependencies: - node-fetch-h2: 2.3.0 - oas-kit-common: 1.0.8 - reftools: 1.1.9 - yaml: 1.10.2 - yargs: 17.0.1 + '@rollup/rollup-linux-arm64-gnu@4.31.0': + optional: true - oas-schema-walker@1.1.5: {} + '@rollup/rollup-linux-arm64-musl@4.31.0': + optional: true - oas-validator@5.0.8: - dependencies: - call-me-maybe: 1.0.2 - oas-kit-common: 1.0.8 - oas-linter: 3.2.2 - oas-resolver: 2.5.6 - oas-schema-walker: 1.1.5 - reftools: 1.1.9 - should: 13.2.3 - yaml: 1.10.2 + '@rollup/rollup-linux-loongarch64-gnu@4.31.0': + optional: true - object-assign@4.1.1: {} + '@rollup/rollup-linux-powerpc64le-gnu@4.31.0': + optional: true - object-inspect@1.13.3: {} + '@rollup/rollup-linux-riscv64-gnu@4.31.0': + optional: true - object-is@1.1.6: - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 + '@rollup/rollup-linux-s390x-gnu@4.31.0': + optional: true - object-keys@1.1.1: {} + '@rollup/rollup-linux-x64-gnu@4.31.0': + optional: true - object.assign@4.1.7: - dependencies: - call-bind: 1.0.8 - call-bound: 1.0.3 - define-properties: 1.2.1 - es-object-atoms: 1.0.0 - has-symbols: 1.1.0 - object-keys: 1.1.1 - - object.entries@1.1.8: - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-object-atoms: 1.0.0 + '@rollup/rollup-linux-x64-musl@4.31.0': + optional: true - object.values@1.2.1: - dependencies: - call-bind: 1.0.8 - call-bound: 1.0.3 - define-properties: 1.2.1 - es-object-atoms: 1.0.0 + '@rollup/rollup-win32-arm64-msvc@4.31.0': + optional: true - once@1.4.0: - dependencies: - wrappy: 1.0.2 + '@rollup/rollup-win32-ia32-msvc@4.31.0': + optional: true - openapi-sampler@1.6.1: - dependencies: - '@types/json-schema': 7.0.15 - fast-xml-parser: 4.5.1 - json-pointer: 0.6.2 + '@rollup/rollup-win32-x64-msvc@4.31.0': + optional: true - parse5-htmlparser2-tree-adapter@7.1.0: - dependencies: - domhandler: 5.0.3 - parse5: 7.2.1 + '@types/alpinejs@3.13.11': {} - parse5-parser-stream@7.1.2: - dependencies: - parse5: 7.2.1 + '@types/estree@1.0.6': {} - parse5@7.2.1: + '@types/node@22.10.7': dependencies: - entities: 4.5.0 - - path-browserify@1.0.1: {} - - path-is-absolute@1.0.1: {} - - pathe@1.1.2: {} - - pathval@2.0.0: {} - - perfect-scrollbar@1.5.6: {} - - performance-now@2.1.0: {} - - picocolors@1.1.1: {} - - picomatch@2.3.1: {} - - pluralize@8.0.0: {} + undici-types: 6.20.0 - polished@4.3.1: + '@vitest/expect@3.0.3': dependencies: - '@babel/runtime': 7.26.0 - - possible-typed-array-names@1.0.0: {} - - postcss-value-parser@4.2.0: {} + '@vitest/spy': 3.0.3 + '@vitest/utils': 3.0.3 + chai: 5.1.2 + tinyrainbow: 2.0.0 - postcss@8.4.38: + '@vitest/mocker@3.0.3(vite@6.0.11(@types/node@22.10.7))': dependencies: - nanoid: 3.3.8 - picocolors: 1.1.1 - source-map-js: 1.2.1 + '@vitest/spy': 3.0.3 + estree-walker: 3.0.3 + magic-string: 0.30.17 + optionalDependencies: + vite: 6.0.11(@types/node@22.10.7) - postcss@8.4.49: + '@vitest/pretty-format@3.0.3': dependencies: - nanoid: 3.3.8 - picocolors: 1.1.1 - source-map-js: 1.2.1 - - prismjs@1.29.0: {} + tinyrainbow: 2.0.0 - prop-types@15.8.1: + '@vitest/runner@3.0.3': dependencies: - loose-envify: 1.4.0 - object-assign: 4.1.1 - react-is: 16.13.1 + '@vitest/utils': 3.0.3 + pathe: 2.0.2 - pure-rand@6.1.0: {} - - queue-microtask@1.2.3: {} - - raf@3.4.1: + '@vitest/snapshot@3.0.3': dependencies: - performance-now: 2.1.0 - - railroad-diagrams@1.0.0: {} + '@vitest/pretty-format': 3.0.3 + magic-string: 0.30.17 + pathe: 2.0.2 - randexp@0.4.6: + '@vitest/spy@3.0.3': dependencies: - discontinuous-range: 1.0.0 - ret: 0.1.15 + tinyspy: 3.0.2 - randombytes@2.1.0: + '@vitest/utils@3.0.3': dependencies: - safe-buffer: 5.2.1 + '@vitest/pretty-format': 3.0.3 + loupe: 3.1.2 + tinyrainbow: 2.0.0 - react-dom@18.3.1(react@18.3.1): + '@vue/reactivity@3.1.5': dependencies: - loose-envify: 1.4.0 - react: 18.3.1 - scheduler: 0.23.2 - - react-is@16.13.1: {} + '@vue/shared': 3.1.5 - react-is@18.3.1: {} + '@vue/shared@3.1.5': {} - react-shallow-renderer@16.15.0(react@18.3.1): + alpinejs@3.14.8: dependencies: - object-assign: 4.1.1 - react: 18.3.1 - react-is: 18.3.1 + '@vue/reactivity': 3.1.5 - react-tabs@6.1.0(react@18.3.1): - dependencies: - clsx: 2.1.1 - prop-types: 15.8.1 - react: 18.3.1 - - react@18.3.1: - dependencies: - loose-envify: 1.4.0 + assertion-error@2.0.1: {} - readable-stream@3.6.2: - dependencies: - inherits: 2.0.4 - string_decoder: 1.3.0 - util-deprecate: 1.0.2 + cac@6.7.14: {} - readdirp@3.6.0: + chai@5.1.2: dependencies: - picomatch: 2.3.1 + assertion-error: 2.0.1 + check-error: 2.1.1 + deep-eql: 5.0.2 + loupe: 3.1.2 + pathval: 2.0.0 - redoc@2.2.0(core-js@3.39.0)(enzyme@3.11.0)(mobx@6.13.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(styled-components@6.1.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1)): - dependencies: - '@cfaester/enzyme-adapter-react-18': 0.8.0(enzyme@3.11.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@redocly/openapi-core': 1.26.1 - classnames: 2.5.1 - core-js: 3.39.0 - decko: 1.2.0 - dompurify: 3.2.3 - eventemitter3: 5.0.1 - json-pointer: 0.6.2 - lunr: 2.3.9 - mark.js: 8.11.1 - marked: 4.3.0 - mobx: 6.13.5 - mobx-react: 9.2.0(mobx@6.13.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - openapi-sampler: 1.6.1 - path-browserify: 1.0.1 - perfect-scrollbar: 1.5.6 - polished: 4.3.1 - prismjs: 1.29.0 - prop-types: 15.8.1 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-tabs: 6.1.0(react@18.3.1) - slugify: 1.4.7 - stickyfill: 1.1.1 - styled-components: 6.1.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - swagger2openapi: 7.0.8 - url-template: 2.0.8 - transitivePeerDependencies: - - encoding - - enzyme - - react-native - - supports-color + check-error@2.1.1: {} - reflect.getprototypeof@1.0.9: + debug@4.4.0: dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - dunder-proto: 1.0.1 - es-abstract: 1.23.7 - es-errors: 1.3.0 - get-intrinsic: 1.2.6 - gopd: 1.2.0 - which-builtin-type: 1.2.1 - - reftools@1.1.9: {} + ms: 2.1.3 - regenerator-runtime@0.14.1: {} + deep-eql@5.0.2: {} - regexp.prototype.flags@1.5.3: + effect@3.12.6: dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-errors: 1.3.0 - set-function-name: 2.0.2 - - require-directory@2.1.1: {} - - require-from-string@2.0.2: {} + fast-check: 3.23.2 - ret@0.1.15: {} + es-module-lexer@1.6.0: {} - rollup@4.29.1: - dependencies: - '@types/estree': 1.0.6 + esbuild@0.24.2: optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.29.1 - '@rollup/rollup-android-arm64': 4.29.1 - '@rollup/rollup-darwin-arm64': 4.29.1 - '@rollup/rollup-darwin-x64': 4.29.1 - '@rollup/rollup-freebsd-arm64': 4.29.1 - '@rollup/rollup-freebsd-x64': 4.29.1 - '@rollup/rollup-linux-arm-gnueabihf': 4.29.1 - '@rollup/rollup-linux-arm-musleabihf': 4.29.1 - '@rollup/rollup-linux-arm64-gnu': 4.29.1 - '@rollup/rollup-linux-arm64-musl': 4.29.1 - '@rollup/rollup-linux-loongarch64-gnu': 4.29.1 - '@rollup/rollup-linux-powerpc64le-gnu': 4.29.1 - '@rollup/rollup-linux-riscv64-gnu': 4.29.1 - '@rollup/rollup-linux-s390x-gnu': 4.29.1 - '@rollup/rollup-linux-x64-gnu': 4.29.1 - '@rollup/rollup-linux-x64-musl': 4.29.1 - '@rollup/rollup-win32-arm64-msvc': 4.29.1 - '@rollup/rollup-win32-ia32-msvc': 4.29.1 - '@rollup/rollup-win32-x64-msvc': 4.29.1 - fsevents: 2.3.3 - - rst-selector-parser@2.2.3: - dependencies: - lodash.flattendeep: 4.4.0 - nearley: 2.20.1 + '@esbuild/aix-ppc64': 0.24.2 + '@esbuild/android-arm': 0.24.2 + '@esbuild/android-arm64': 0.24.2 + '@esbuild/android-x64': 0.24.2 + '@esbuild/darwin-arm64': 0.24.2 + '@esbuild/darwin-x64': 0.24.2 + '@esbuild/freebsd-arm64': 0.24.2 + '@esbuild/freebsd-x64': 0.24.2 + '@esbuild/linux-arm': 0.24.2 + '@esbuild/linux-arm64': 0.24.2 + '@esbuild/linux-ia32': 0.24.2 + '@esbuild/linux-loong64': 0.24.2 + '@esbuild/linux-mips64el': 0.24.2 + '@esbuild/linux-ppc64': 0.24.2 + '@esbuild/linux-riscv64': 0.24.2 + '@esbuild/linux-s390x': 0.24.2 + '@esbuild/linux-x64': 0.24.2 + '@esbuild/netbsd-arm64': 0.24.2 + '@esbuild/netbsd-x64': 0.24.2 + '@esbuild/openbsd-arm64': 0.24.2 + '@esbuild/openbsd-x64': 0.24.2 + '@esbuild/sunos-x64': 0.24.2 + '@esbuild/win32-arm64': 0.24.2 + '@esbuild/win32-ia32': 0.24.2 + '@esbuild/win32-x64': 0.24.2 - safe-array-concat@1.1.3: - dependencies: - call-bind: 1.0.8 - call-bound: 1.0.3 - get-intrinsic: 1.2.6 - has-symbols: 1.1.0 - isarray: 2.0.5 - - safe-buffer@5.2.1: {} - - safe-regex-test@1.1.0: + estree-walker@3.0.3: dependencies: - call-bound: 1.0.3 - es-errors: 1.3.0 - is-regex: 1.2.1 + '@types/estree': 1.0.6 - safer-buffer@2.1.2: {} + expect-type@1.1.0: {} - scheduler@0.23.2: + fast-check@3.23.2: dependencies: - loose-envify: 1.4.0 + pure-rand: 6.1.0 - semver@7.6.3: {} + fsevents@2.3.3: + optional: true - set-function-length@1.2.2: - dependencies: - define-data-property: 1.1.4 - es-errors: 1.3.0 - function-bind: 1.1.2 - get-intrinsic: 1.2.6 - gopd: 1.2.0 - has-property-descriptors: 1.0.2 - - set-function-name@2.0.2: - dependencies: - define-data-property: 1.1.4 - es-errors: 1.3.0 - functions-have-names: 1.2.3 - has-property-descriptors: 1.0.2 + globrex@0.1.2: {} - shallowequal@1.1.0: {} + loupe@3.1.2: {} - should-equal@2.0.0: + magic-string@0.30.17: dependencies: - should-type: 1.4.0 + '@jridgewell/sourcemap-codec': 1.5.0 - should-format@3.0.3: - dependencies: - should-type: 1.4.0 - should-type-adaptors: 1.1.0 + monaco-editor@0.52.2: {} - should-type-adaptors@1.1.0: - dependencies: - should-type: 1.4.0 - should-util: 1.0.1 + ms@2.1.3: {} - should-type@1.4.0: {} + nanoid@3.3.8: {} - should-util@1.0.1: {} + pathe@2.0.2: {} - should@13.2.3: - dependencies: - should-equal: 2.0.0 - should-format: 3.0.3 - should-type: 1.4.0 - should-type-adaptors: 1.1.0 - should-util: 1.0.1 + pathval@2.0.0: {} - side-channel-list@1.0.0: - dependencies: - es-errors: 1.3.0 - object-inspect: 1.13.3 + picocolors@1.1.1: {} - side-channel-map@1.0.1: + postcss@8.5.1: dependencies: - call-bound: 1.0.3 - es-errors: 1.3.0 - get-intrinsic: 1.2.6 - object-inspect: 1.13.3 + nanoid: 3.3.8 + picocolors: 1.1.1 + source-map-js: 1.2.1 - side-channel-weakmap@1.0.2: - dependencies: - call-bound: 1.0.3 - es-errors: 1.3.0 - get-intrinsic: 1.2.6 - object-inspect: 1.13.3 - side-channel-map: 1.0.1 + pure-rand@6.1.0: {} - side-channel@1.1.0: + rollup@4.31.0: dependencies: - es-errors: 1.3.0 - object-inspect: 1.13.3 - side-channel-list: 1.0.0 - side-channel-map: 1.0.1 - side-channel-weakmap: 1.0.2 + '@types/estree': 1.0.6 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.31.0 + '@rollup/rollup-android-arm64': 4.31.0 + '@rollup/rollup-darwin-arm64': 4.31.0 + '@rollup/rollup-darwin-x64': 4.31.0 + '@rollup/rollup-freebsd-arm64': 4.31.0 + '@rollup/rollup-freebsd-x64': 4.31.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.31.0 + '@rollup/rollup-linux-arm-musleabihf': 4.31.0 + '@rollup/rollup-linux-arm64-gnu': 4.31.0 + '@rollup/rollup-linux-arm64-musl': 4.31.0 + '@rollup/rollup-linux-loongarch64-gnu': 4.31.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.31.0 + '@rollup/rollup-linux-riscv64-gnu': 4.31.0 + '@rollup/rollup-linux-s390x-gnu': 4.31.0 + '@rollup/rollup-linux-x64-gnu': 4.31.0 + '@rollup/rollup-linux-x64-musl': 4.31.0 + '@rollup/rollup-win32-arm64-msvc': 4.31.0 + '@rollup/rollup-win32-ia32-msvc': 4.31.0 + '@rollup/rollup-win32-x64-msvc': 4.31.0 + fsevents: 2.3.3 siginfo@2.0.0: {} - simple-websocket@9.1.0: - dependencies: - debug: 4.4.0 - queue-microtask: 1.2.3 - randombytes: 2.1.0 - readable-stream: 3.6.2 - ws: 7.5.10 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - slugify@1.4.7: {} - source-map-js@1.2.1: {} - source-map@0.6.1: {} - stackback@0.0.2: {} state-local@1.0.7: {} std-env@3.8.0: {} - stickyfill@1.1.1: {} - - string-width@4.2.3: - dependencies: - emoji-regex: 8.0.0 - is-fullwidth-code-point: 3.0.0 - strip-ansi: 6.0.1 - - string.prototype.trim@1.2.10: - dependencies: - call-bind: 1.0.8 - call-bound: 1.0.3 - define-data-property: 1.1.4 - define-properties: 1.2.1 - es-abstract: 1.23.7 - es-object-atoms: 1.0.0 - has-property-descriptors: 1.0.2 - - string.prototype.trimend@1.0.9: - dependencies: - call-bind: 1.0.8 - call-bound: 1.0.3 - define-properties: 1.2.1 - es-object-atoms: 1.0.0 - - string.prototype.trimstart@1.0.8: - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-object-atoms: 1.0.0 - - string_decoder@1.3.0: - dependencies: - safe-buffer: 5.2.1 - - strip-ansi@6.0.1: - dependencies: - ansi-regex: 5.0.1 - - strnum@1.0.5: {} - - styled-components@6.1.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1): - dependencies: - '@emotion/is-prop-valid': 1.2.2 - '@emotion/unitless': 0.8.1 - '@types/stylis': 4.2.5 - css-to-react-native: 3.2.0 - csstype: 3.1.3 - postcss: 8.4.38 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - shallowequal: 1.1.0 - stylis: 4.3.2 - tslib: 2.6.2 - - stylis@4.3.2: {} - - swagger2openapi@7.0.8: - dependencies: - call-me-maybe: 1.0.2 - node-fetch: 2.7.0 - node-fetch-h2: 2.3.0 - node-readfiles: 0.2.0 - oas-kit-common: 1.0.8 - oas-resolver: 2.5.6 - oas-schema-walker: 1.1.5 - oas-validator: 5.0.8 - reftools: 1.1.9 - yaml: 1.10.2 - yargs: 17.0.1 - transitivePeerDependencies: - - encoding - tinybench@2.9.0: {} - tinyexec@0.3.1: {} + tinyexec@0.3.2: {} tinypool@1.0.2: {} - tinyrainbow@1.2.0: {} + tinyrainbow@2.0.0: {} tinyspy@3.0.2: {} - to-regex-range@5.0.1: - dependencies: - is-number: 7.0.0 - - tr46@0.0.3: {} - - tsconfck@3.1.4(typescript@5.7.2): - optionalDependencies: - typescript: 5.7.2 - - tslib@2.6.2: {} - - typed-array-buffer@1.0.3: - dependencies: - call-bound: 1.0.3 - es-errors: 1.3.0 - is-typed-array: 1.1.15 - - typed-array-byte-length@1.0.3: - dependencies: - call-bind: 1.0.8 - for-each: 0.3.3 - gopd: 1.2.0 - has-proto: 1.2.0 - is-typed-array: 1.1.15 - - typed-array-byte-offset@1.0.4: - dependencies: - available-typed-arrays: 1.0.7 - call-bind: 1.0.8 - for-each: 0.3.3 - gopd: 1.2.0 - has-proto: 1.2.0 - is-typed-array: 1.1.15 - reflect.getprototypeof: 1.0.9 - - typed-array-length@1.0.7: - dependencies: - call-bind: 1.0.8 - for-each: 0.3.3 - gopd: 1.2.0 - is-typed-array: 1.1.15 - possible-typed-array-names: 1.0.0 - reflect.getprototypeof: 1.0.9 - - typescript@5.7.2: {} - - uglify-js@3.19.3: - optional: true - - unbox-primitive@1.1.0: - dependencies: - call-bound: 1.0.3 - has-bigints: 1.1.0 - has-symbols: 1.1.0 - which-boxed-primitive: 1.1.1 + tsconfck@3.1.4: {} undici-types@6.20.0: {} - undici@6.21.0: {} - - uri-js-replace@1.0.1: {} - - url-template@2.0.8: {} - - use-sync-external-store@1.4.0(react@18.3.1): - dependencies: - react: 18.3.1 - - util-deprecate@1.0.2: {} - - vite-node@2.1.8(@types/node@22.10.2)(lightningcss@1.28.2): + vite-node@3.0.3(@types/node@22.10.7): dependencies: cac: 6.7.14 debug: 4.4.0 - es-module-lexer: 1.5.4 - pathe: 1.1.2 - vite: 5.4.11(@types/node@22.10.2)(lightningcss@1.28.2) + es-module-lexer: 1.6.0 + pathe: 2.0.2 + vite: 6.0.11(@types/node@22.10.7) transitivePeerDependencies: - '@types/node' + - jiti - less - lightningcss - sass @@ -3421,54 +954,56 @@ snapshots: - sugarss - supports-color - terser + - tsx + - yaml - vite-tsconfig-paths@5.1.4(typescript@5.7.2)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)): + vite-tsconfig-paths@5.1.4(vite@6.0.11(@types/node@22.10.7)): dependencies: debug: 4.4.0 globrex: 0.1.2 - tsconfck: 3.1.4(typescript@5.7.2) + tsconfck: 3.1.4 optionalDependencies: - vite: 5.4.11(@types/node@22.10.2)(lightningcss@1.28.2) + vite: 6.0.11(@types/node@22.10.7) transitivePeerDependencies: - supports-color - typescript - vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2): + vite@6.0.11(@types/node@22.10.7): dependencies: - esbuild: 0.21.5 - postcss: 8.4.49 - rollup: 4.29.1 + esbuild: 0.24.2 + postcss: 8.5.1 + rollup: 4.31.0 optionalDependencies: - '@types/node': 22.10.2 + '@types/node': 22.10.7 fsevents: 2.3.3 - lightningcss: 1.28.2 - vitest@2.1.8(@edge-runtime/vm@5.0.0)(@types/node@22.10.2)(lightningcss@1.28.2): + vitest@3.0.3(@edge-runtime/vm@5.0.0)(@types/node@22.10.7): dependencies: - '@vitest/expect': 2.1.8 - '@vitest/mocker': 2.1.8(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)) - '@vitest/pretty-format': 2.1.8 - '@vitest/runner': 2.1.8 - '@vitest/snapshot': 2.1.8 - '@vitest/spy': 2.1.8 - '@vitest/utils': 2.1.8 + '@vitest/expect': 3.0.3 + '@vitest/mocker': 3.0.3(vite@6.0.11(@types/node@22.10.7)) + '@vitest/pretty-format': 3.0.3 + '@vitest/runner': 3.0.3 + '@vitest/snapshot': 3.0.3 + '@vitest/spy': 3.0.3 + '@vitest/utils': 3.0.3 chai: 5.1.2 debug: 4.4.0 expect-type: 1.1.0 magic-string: 0.30.17 - pathe: 1.1.2 + pathe: 2.0.2 std-env: 3.8.0 tinybench: 2.9.0 - tinyexec: 0.3.1 + tinyexec: 0.3.2 tinypool: 1.0.2 - tinyrainbow: 1.2.0 - vite: 5.4.11(@types/node@22.10.2)(lightningcss@1.28.2) - vite-node: 2.1.8(@types/node@22.10.2)(lightningcss@1.28.2) + tinyrainbow: 2.0.0 + vite: 6.0.11(@types/node@22.10.7) + vite-node: 3.0.3(@types/node@22.10.7) why-is-node-running: 2.3.0 optionalDependencies: '@edge-runtime/vm': 5.0.0 - '@types/node': 22.10.2 + '@types/node': 22.10.7 transitivePeerDependencies: + - jiti - less - lightningcss - msw @@ -3478,91 +1013,10 @@ snapshots: - sugarss - supports-color - terser - - webidl-conversions@3.0.1: {} - - whatwg-encoding@3.1.1: - dependencies: - iconv-lite: 0.6.3 - - whatwg-mimetype@4.0.0: {} - - whatwg-url@5.0.0: - dependencies: - tr46: 0.0.3 - webidl-conversions: 3.0.1 - - which-boxed-primitive@1.1.1: - dependencies: - is-bigint: 1.1.0 - is-boolean-object: 1.2.1 - is-number-object: 1.1.1 - is-string: 1.1.1 - is-symbol: 1.1.1 - - which-builtin-type@1.2.1: - dependencies: - call-bound: 1.0.3 - function.prototype.name: 1.1.8 - has-tostringtag: 1.0.2 - is-async-function: 2.0.0 - is-date-object: 1.1.0 - is-finalizationregistry: 1.1.1 - is-generator-function: 1.0.10 - is-regex: 1.2.1 - is-weakref: 1.1.0 - isarray: 2.0.5 - which-boxed-primitive: 1.1.1 - which-collection: 1.0.2 - which-typed-array: 1.1.18 - - which-collection@1.0.2: - dependencies: - is-map: 2.0.3 - is-set: 2.0.3 - is-weakmap: 2.0.2 - is-weakset: 2.0.4 - - which-typed-array@1.1.18: - dependencies: - available-typed-arrays: 1.0.7 - call-bind: 1.0.8 - call-bound: 1.0.3 - for-each: 0.3.3 - gopd: 1.2.0 - has-tostringtag: 1.0.2 + - tsx + - yaml why-is-node-running@2.3.0: dependencies: siginfo: 2.0.0 stackback: 0.0.2 - - wordwrap@1.0.0: {} - - wrap-ansi@7.0.0: - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - - wrappy@1.0.2: {} - - ws@7.5.10: {} - - y18n@5.0.8: {} - - yaml-ast-parser@0.0.43: {} - - yaml@1.10.2: {} - - yargs-parser@20.2.9: {} - - yargs@17.0.1: - dependencies: - cliui: 7.0.4 - escalade: 3.2.0 - get-caller-file: 2.0.5 - require-directory: 2.1.1 - string-width: 4.2.3 - y18n: 5.0.8 - yargs-parser: 20.2.9 diff --git a/scripts/prep-page.js b/scripts/prep-page.js deleted file mode 100644 index 5677045..0000000 --- a/scripts/prep-page.js +++ /dev/null @@ -1,49 +0,0 @@ -import { existsSync } from "fs"; -import { readFile, writeFile } from "fs/promises" -import * as Path from "path" - -const files = [ - "styles.css", - "scripts/main.js", - "scripts/worker/web-worker.js", -]; - -const indexPagePath = "./docs/telegram-bot-playground/index.html"; -const metaPath = "./docs/telegram-bot-playground/metadata.json"; - -let html = await readFile(indexPagePath, "utf-8"); - -const metadata = {} - -for (const relativePath of files) { - - const absolutePath = Path.join("./docs/telegram-bot-playground", relativePath); - - if (!existsSync(absolutePath)) { - console.warn(`File '${absolutePath}' does not exist`) - continue; - } - - const content = await readFile(absolutePath, "utf-8"); - const hash = getShortHash(content); - - const filename = Path.basename(relativePath); - - const regex = new RegExp(`(${filename.replace(".", "\\.")}\\?v=)\\w*`, "g"); - html = html.replace(regex, `$1${hash}`); - - metadata[filename] = hash; - -} - -await writeFile(indexPagePath, html, "utf-8"); -await writeFile(metaPath, JSON.stringify(metadata, undefined, 2), "utf-8"); - -function getShortHash(str) { - let hash = 0; - for (let i = 0; i < str.length; i++) { - hash = (hash << 5) - hash + str.charCodeAt(i); - hash |= 0; - } - return Math.abs(hash).toString(36); -} diff --git a/src/tg-bot-playground/editor/_editor.ts b/src/common/editor/_editor.ts similarity index 66% rename from src/tg-bot-playground/editor/_editor.ts rename to src/common/editor/_editor.ts index 85adf64..3782d0d 100644 --- a/src/tg-bot-playground/editor/_editor.ts +++ b/src/common/editor/_editor.ts @@ -1,11 +1,8 @@ -import { fetchText, getMonacoLoader } from "#tg-bot-playground/utils.js"; -import { setupDts } from "./setup.js"; -import { initEditor } from "./init.js"; -import type { GlobalState } from "#tg-bot-playground/main.js"; +import { getMonacoLoader } from "#/common/utils"; +import { setupDts } from "./setup"; +import { initEditor } from "./init"; -export const makeEditor = async ( - state: GlobalState -) => { +export const makeEditor = async () => { const loader = getMonacoLoader(); @@ -19,11 +16,6 @@ export const makeEditor = async ( return { tsTextModel: editor.tsTextModel, - loadExample: () => { - if (!state.selectedExample) return; - fetchText(`./example/${state.selectedExample}`) - .then(_ => editor.tsTextModel.tsModel.setValue(_)) - }, onCodeChange: ( f: () => void ) => { diff --git a/src/tg-bot-playground/editor/init.ts b/src/common/editor/init.ts similarity index 84% rename from src/tg-bot-playground/editor/init.ts rename to src/common/editor/init.ts index 12dcefb..18bd829 100644 --- a/src/tg-bot-playground/editor/init.ts +++ b/src/common/editor/init.ts @@ -1,5 +1,5 @@ -import type { MonacoLoader } from "#tg-bot-playground/types.js"; -import { makeTsTextModel } from "./ts-text-model.js"; +import type { MonacoLoader } from "#/common/types"; +import { makeTsTextModel } from "./ts-text-model"; export const initEditor = async ( loader: MonacoLoader diff --git a/src/tg-bot-playground/editor/setup.ts b/src/common/editor/setup.ts similarity index 92% rename from src/tg-bot-playground/editor/setup.ts rename to src/common/editor/setup.ts index a34d48a..aa587b3 100644 --- a/src/tg-bot-playground/editor/setup.ts +++ b/src/common/editor/setup.ts @@ -1,5 +1,5 @@ import type { Monaco } from "@monaco-editor/loader"; -import { fetchText } from "#tg-bot-playground/utils.js"; +import { fetchText } from "#/common/utils"; export const setupDts = async ( monaco: Monaco diff --git a/src/tg-bot-playground/editor/ts-text-model.ts b/src/common/editor/ts-text-model.ts similarity index 90% rename from src/tg-bot-playground/editor/ts-text-model.ts rename to src/common/editor/ts-text-model.ts index 1f33edd..e2d8a7d 100644 --- a/src/tg-bot-playground/editor/ts-text-model.ts +++ b/src/common/editor/ts-text-model.ts @@ -1,5 +1,5 @@ -import { Monaco } from "#tg-bot-playground/types.js"; -import { fetchText } from "#tg-bot-playground/utils.js"; +import { Monaco } from "#/common/types"; +import { fetchText } from "#/common/utils"; import type { languages } from "monaco-editor"; export type TsTextModel = Awaited> @@ -42,7 +42,7 @@ export const makeTsTextModel = async function getDefaultExport(code: string) { try { const encodedCode = encodeURIComponent(code); - const module = await import(`data:text/javascript,${encodedCode}`); + const module = await import(/* @vite-ignore */`data:text/javascript,${encodedCode}`); const result = module.default; return { default: result as D }; } catch (e) { diff --git a/src/common/types.ts b/src/common/types.ts new file mode 100644 index 0000000..7fec73b --- /dev/null +++ b/src/common/types.ts @@ -0,0 +1,4 @@ +export type MonacoLoader = typeof import("@monaco-editor/loader").default; +export type TextModel = import("monaco-editor").editor.ITextModel; +export type Monaco = typeof import("monaco-editor"); +export type Alpine = typeof import("alpinejs"); diff --git a/src/tg-bot-playground/utils.ts b/src/common/utils.ts similarity index 91% rename from src/tg-bot-playground/utils.ts rename to src/common/utils.ts index 412bda8..08d7dc6 100644 --- a/src/tg-bot-playground/utils.ts +++ b/src/common/utils.ts @@ -1,4 +1,4 @@ -import type { MonacoLoader, Alpine } from "./types.js"; +import type { MonacoLoader, Alpine } from "./types"; export const fetchText = (path: string) => fetch(path).then(_ => _.text()) diff --git a/src/tg-bot-playground/bot-launcher/_main.ts b/src/tg-bot-playground/bot-launcher/_main.ts index 699476c..c7d7ae0 100644 --- a/src/tg-bot-playground/bot-launcher/_main.ts +++ b/src/tg-bot-playground/bot-launcher/_main.ts @@ -1,12 +1,12 @@ -import type { GlobalState } from "#tg-bot-playground/main.js"; -import type { TsTextModel } from "#tg-bot-playground/editor/ts-text-model.js"; -import { loadWorker } from "./load.js"; -import { checkTokenAndRun, makeRunnableBot } from "./run.js"; +import type { GlobalState } from "#/tg-bot-playground/main"; +import type { TsTextModel } from "#/common/editor/ts-text-model"; +import { checkTokenAndRun, makeRunnableBot } from "./run"; export const makeBotLauncher = async ( tsTextModel: TsTextModel ) => { - const worker = await loadWorker(); + + const worker = new Worker(new URL('../worker/web-worker.ts', import.meta.url), { type: "module" }) if (!worker) return; diff --git a/src/tg-bot-playground/bot-launcher/load.ts b/src/tg-bot-playground/bot-launcher/load.ts deleted file mode 100644 index 74bc734..0000000 --- a/src/tg-bot-playground/bot-launcher/load.ts +++ /dev/null @@ -1,14 +0,0 @@ -export async function loadWorker() { - const version: string = await ( - fetch("./metadata.json", { cache: "no-cache" }).then(_ => _.json()).then(_ => _["web-worker.js"]) - ); - - if (!version) { - console.warn("Cannot get version from metadata"); - return; - }; - - const worker = new Worker(`./scripts/worker/web-worker.js?v=${version}`, { type: "module" }); - console.log("web worker has been loaded"); - return worker; -} \ No newline at end of file diff --git a/src/tg-bot-playground/bot-launcher/run.ts b/src/tg-bot-playground/bot-launcher/run.ts index 2b4c050..6b98dcd 100644 --- a/src/tg-bot-playground/bot-launcher/run.ts +++ b/src/tg-bot-playground/bot-launcher/run.ts @@ -1,5 +1,5 @@ -import type { GlobalState } from "#tg-bot-playground/main.js"; -import type { TsTextModel } from "#tg-bot-playground/editor/ts-text-model.js"; +import type { GlobalState } from "#/tg-bot-playground/main"; +import type { TsTextModel } from "#/common/editor/ts-text-model"; export type RunnableBot = (ReturnType) export const makeRunnableBot = @@ -19,7 +19,7 @@ export const makeRunnableBot = token: state.bot.token, code: code.serialized }); - + state.bot.status = "active" }).catch(error => { console.warn("cannot run bot", error) @@ -30,20 +30,26 @@ export const checkTokenAndRun = const token = state.bot.token; - if (!token) return; + if (!token) { + state.bot.isReachable = false; + return + }; fetch(`https://api.telegram.org/bot${token}/getMe`) .then(_ => _.json()) .then(info => { if (info.ok) { state.bot.name = info.result.first_name; + state.bot.isReachable = true; console.log("Running bot") runnableBot(state); } else { state.bot.name = "nameless"; + state.bot.isReachable = false; } }).catch(error => { - console.warn("check token error", error) + console.warn("check token error", error); + state.bot.isReachable = false; }); } diff --git a/src/tg-bot-playground/index.html b/src/tg-bot-playground/index.html new file mode 100644 index 0000000..33b0286 --- /dev/null +++ b/src/tg-bot-playground/index.html @@ -0,0 +1,66 @@ + + + + Telegram Bot Playground + + + + + + + + + + + + +

Telegram Bot Playground 🤖

+ +
+ + + + + + + + +
+ +
+ + +
+ +
+
+
+ +
+
+ + + + \ No newline at end of file diff --git a/src/tg-bot-playground/main.ts b/src/tg-bot-playground/main.ts index 6543b40..92f6ff3 100644 --- a/src/tg-bot-playground/main.ts +++ b/src/tg-bot-playground/main.ts @@ -1,12 +1,14 @@ -import { makeBotLauncher } from "#tg-bot-playground/bot-launcher/_main.js"; -import { makeEditor } from "#tg-bot-playground/editor/_editor.js"; -import { getAlpine } from "#tg-bot-playground/utils.js"; -import type { Alpine, BotState } from "./types.js"; +import { makeBotLauncher } from "#/tg-bot-playground/bot-launcher/_main"; +import { makeEditor } from "#/common/editor/_editor"; +import { fetchText } from "#/common/utils"; +import type { BotState } from "./types"; +import Alpine from "alpinejs"; +import { stat } from "fs"; export type GlobalState = ReturnType; export const makeGlobalState = ( - alpine: Alpine + alpine: Alpine.Alpine ) => { const state = @@ -14,7 +16,9 @@ export const makeGlobalState = ( bot: { name: 'nameless', status: 'idle', - token: '' + token: '', + isAutoReload: false, + isReachable: false } as BotState, selectedExample: "empty.ts", botUpdates: [] as unknown[], @@ -24,16 +28,24 @@ export const makeGlobalState = ( } -document.addEventListener('alpine:init', async () => { - const Alpine = getAlpine(); +declare global { + interface Window { + Alpine: typeof Alpine; + } +} + +window.Alpine = Alpine; - if (!Alpine) return; +setup(); +Alpine.start(); + +async function setup() { const state = makeGlobalState(Alpine); Alpine.store("state", state); - const editor = await makeEditor(state); + const editor = await makeEditor(); if (!editor) return; @@ -42,6 +54,7 @@ document.addEventListener('alpine:init', async () => { if (!botLauncher) return; editor.onCodeChange(() => { + if (!state.bot.isReachable || !state.bot.isAutoReload) return; botLauncher.runBot(state); }); @@ -50,7 +63,9 @@ document.addEventListener('alpine:init', async () => { }); document.addEventListener("change-example", () => { - editor.loadExample() + if (!state.selectedExample) return; + fetchText(`./example/${state.selectedExample}`) + .then(_ => editor.tsTextModel.tsModel.setValue(_)) }); botLauncher.worker.onmessage = (event: MessageEvent) => { @@ -64,6 +79,4 @@ document.addEventListener('alpine:init', async () => { // console.log('Scrolling', $refs.updates.scrollHeight); // $nextTick(() => { $refs.updates.scrollTop = $refs.updates.scrollHeight }) } - -}) - +} \ No newline at end of file diff --git a/src/tg-bot-playground/static/example/command.ts b/src/tg-bot-playground/static/example/command.ts new file mode 100644 index 0000000..e524438 --- /dev/null +++ b/src/tg-bot-playground/static/example/command.ts @@ -0,0 +1,34 @@ +import type { BotMessageHandlers } from "@effect-ak/tg-bot-client" + +export default { + on_message: (msg) => { + + const commandEntity = msg.entities?.find(_ => _.type == "bot_command"); + const command = msg.text?.slice(commandEntity?.offset, commandEntity?.length); + + console.log("command", command); + + if (command == "/bye") { + return { + type: "message", + text: "See you later!" + } + } + + if (command == "/echo") { + return { + type: "message", + text: `
${JSON.stringify(msg, undefined, 2)}
`, + parse_mode: "HTML" + } + } + + console.log("got a message", msg.text) + + return { + type: "message", + text: "hey :)" + } + }, +} satisfies BotMessageHandlers + diff --git a/src/tg-bot-playground/static/example/empty.ts b/src/tg-bot-playground/static/example/empty.ts new file mode 100644 index 0000000..ebe4b2e --- /dev/null +++ b/src/tg-bot-playground/static/example/empty.ts @@ -0,0 +1,11 @@ +import type { BotMessageHandlers } from "@effect-ak/tg-bot-client" + +export default { + on_message: (msg) => { + + return { + type: "message", + text: "hey :)" + } + }, +} satisfies BotMessageHandlers diff --git a/src/tg-bot-playground/static/example/file.ts b/src/tg-bot-playground/static/example/file.ts new file mode 100644 index 0000000..f505eae --- /dev/null +++ b/src/tg-bot-playground/static/example/file.ts @@ -0,0 +1,26 @@ +import type { BotMessageHandlers } from "@effect-ak/tg-bot-client" + +export default { + on_message: (msg) => { + if (msg.text?.includes("+")) { + const numbers = msg.text.split("+"); + let result = 0; + for (const num of numbers) { + result += parseInt(num); + } + return { + type: "document", + caption: "sum result", + document: { + file_content: new TextEncoder().encode(`your sum is ${result}`), + file_name: "hello.txt" + } + } + } + + return { + type: "message", + text: "hey, send me a message in the format '3+3+3' and I will return you the sum of it in a text file" + } + }, +} satisfies BotMessageHandlers diff --git a/src/tg-bot-playground/static/favicon.ico b/src/tg-bot-playground/static/favicon.ico new file mode 100644 index 0000000..a0b7de2 Binary files /dev/null and b/src/tg-bot-playground/static/favicon.ico differ diff --git a/src/tg-bot-playground/styles.css b/src/tg-bot-playground/styles.css new file mode 100644 index 0000000..2489dd8 --- /dev/null +++ b/src/tg-bot-playground/styles.css @@ -0,0 +1,34 @@ +.flex-container { + display: flex; + background-color: rgb(62, 95, 113); + margin-top: 10px; + width: 100%; +} + +.flex-container > #container { + display: flex; + flex: 0 1 70%; + height: 600px; + border: 1px solid grey; +} + +.flex-container > #worker-updates { + display: flex; + flex: 1; + flex-direction: column; + align-items: flex-start; + justify-content: flex-start; + height: 600px; + overflow-y: auto; +} + +#worker-updates::-webkit-scrollbar { + display: none; +} + +#worker-updates > div { + background-color: #f1f1f1; + margin: 10px; + text-align: center; + border-radius: 5px; +} diff --git a/src/tg-bot-playground/types.ts b/src/tg-bot-playground/types.ts index bb24b8f..27a67fe 100644 --- a/src/tg-bot-playground/types.ts +++ b/src/tg-bot-playground/types.ts @@ -1,12 +1,9 @@ -export type MonacoLoader = typeof import("@monaco-editor/loader").default; -export type TextModel = import("monaco-editor").editor.ITextModel; -export type Monaco = typeof import("monaco-editor"); -export type Alpine = typeof import("alpinejs"); - export type BotState = { status: string token: string name: string + isReachable: boolean + isAutoReload: boolean } export type RunBot = { diff --git a/src/tg-bot-playground/worker/handler.ts b/src/tg-bot-playground/worker/handler.ts index de31a78..e9e4f0d 100644 --- a/src/tg-bot-playground/worker/handler.ts +++ b/src/tg-bot-playground/worker/handler.ts @@ -1,6 +1,6 @@ import { runTgChatBot, BotInstance } from "@effect-ak/tg-bot-client"; -import { isRunBot, type BotState } from "#tg-bot-playground/types.js"; -import { deserialize } from "./utils.js"; +import { isRunBot, type BotState } from "../types"; +import { deserialize } from "./utils"; export const makeWorkerHandler = ( notifyParent: (_: Record & { messageId: number }) => void @@ -47,7 +47,7 @@ export const makeWorkerHandler = ( botInstance = await runTgChatBot({ type: "config", - "bot-token": command.token, + bot_token: command.token, ...handlers, onExit: (exit) => sendEvent({ diff --git a/src/tg-bot-playground/worker/web-worker.ts b/src/tg-bot-playground/worker/web-worker.ts index d1e387b..8d1335d 100644 --- a/src/tg-bot-playground/worker/web-worker.ts +++ b/src/tg-bot-playground/worker/web-worker.ts @@ -1,4 +1,4 @@ -import { makeWorkerHandler } from "./handler.js"; +import { makeWorkerHandler } from "./handler"; const handler = makeWorkerHandler( diff --git a/test/utils.test.ts b/test/utils.test.ts index 50a39c0..6300739 100644 --- a/test/utils.test.ts +++ b/test/utils.test.ts @@ -1,41 +1,12 @@ -// @vitest-environment edge-runtime - import { describe, expect, it } from "vitest"; -import { serialize, deserialize, getDefaultExport } from "#tg-bot-playground/utils.js" -import assert from "assert"; +import { deserialize } from "#/tg-bot-playground/worker/utils" describe("utils", () => { - it("serialize and deserialize", () => { - - const obj = { - a: (arg: number) => { return arg } - }; - - const ser = serialize(obj); - - assert(ser); - - const actual = deserialize(ser) as typeof obj; - expect(actual.a(123)).toEqual(123) - - }); + it("is func", () => { - it("get default", async () => { - - const obj = ` - const a = 3 + 7; - - export default { - b: a - } - `; - - const actual = await getDefaultExport(obj); - - expect(actual?.default.b).toEqual(10) + expect(deserialize).toBeDefined(); }) - }) \ No newline at end of file diff --git a/tsconfig.json b/tsconfig.json index fbe41d5..4859790 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -4,9 +4,9 @@ "strict": true, "exactOptionalPropertyTypes": true, "target": "ES2022", - "module": "NodeNext", + "module": "ESNext", "lib": ["ESNext", "DOM", "WebWorker"], - "moduleResolution": "NodeNext", + "moduleResolution": "bundler", "moduleDetection": "force", "skipLibCheck": true, "noFallthroughCasesInSwitch": true, @@ -14,7 +14,7 @@ "noEmit": true, "baseUrl": ".", "paths": { - "#tg-bot-playground/*": ["./src/tg-bot-playground/*"], + "#/*": ["./src/*"] } } } diff --git a/tsup.config.json b/tsup.config.json index 81bb593..bf0b854 100644 --- a/tsup.config.json +++ b/tsup.config.json @@ -1,8 +1,7 @@ { "$schema": "https://cdn.jsdelivr.net/npm/tsup/schema.json", "entry": [ - "src/tg-bot-playground/worker/web-worker.ts", - "src/tg-bot-playground/main.ts" + "src/tg-bot-playground/worker/web-worker.ts" ], "splitting": false, "outDir": "docs/telegram-bot-playground/scripts", diff --git a/vite.config.ts b/vite.config.ts new file mode 100644 index 0000000..04e5c8b --- /dev/null +++ b/vite.config.ts @@ -0,0 +1,30 @@ +import type { UserConfig } from 'vite' +import tsconfigPaths from 'vite-tsconfig-paths' + +const configs: Record = { + "tg-bot-playground": { + root: "src/tg-bot-playground", + publicDir: "static", + base: "./", + plugins: [ + tsconfigPaths() + ], + build: { + emptyOutDir: true, + outDir: "../../docs/tg-bot-playground", + minify: false + } + } +} + +const project = process.env["PROJECT"]; + +if (!project) console.error("Project environment is undefined"); + +const config = configs[project!]; + +if (!config) console.error("Project is unknown"); + +console.log("resolved config =>", config); + +export default config;