@polyipseity/obsidian-plugin-library 1.20.0 → 1.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
1
  // repository: https://github.com/polyipseity/obsidian-plugin-library
2
- import{check_outros as R,group_outros as A,transition_out as O}from"svelte/internal";import{escapeRegExp as S,identity as D,isEmpty as j,isNil as C,isObject as K,noop as F,range as I}from"lodash-es";import W from"browser-util-inspect";import M from"async-lock";function s(e,t,n){return n===void 0?delete e[t]:e[t]=n,n}function l(e){return`\`${e.replace(/(?<char>`|\\|\$)/ug,"\\$<char>")}\``}import{readFile as m,writeFile as g}from"node:fs/promises";import{fileURLToPath as x}from"node:url";import{isEmpty as T}from"lodash-es";import w from"lz-string";import{resolve as b}from"import-meta-resolve";var{compressToBase64:v}=w,k="compress";function P(e){return{name:e?.name??k,setup(t){if(e?.enable===!1)return;let{esbuild:n,initialOptions:r}=t,p=r.write??!0;r.write=!1,t.onEnd(async({errors:d,outputFiles:a})=>{if(!T(d)||!a)return;let c=a.find(({path:o})=>o.endsWith(".js"));if(c){let{path:o,text:u}=c,i={loader:"js",sourcefile:o};for(let f of["charset","color","define","drop","format","globalName","ignoreAnnotations","jsx","jsxDev","jsxFactory","jsxFragment","jsxImportSource","jsxSideEffects","keepNames","legalComments","logLevel","logLimit","logOverride","mangleCache","mangleProps","mangleQuoted","minify","minifyIdentifiers","minifySyntax","minifyWhitespace","platform","pure","reserveProps","sourceRoot","sourcemap","sourcesContent","supported","target","treeShaking"])s(i,f,r[f]);s(i,"banner",r.banner?.js),s(i,"footer",r.footer?.js);let{code:y}=await n.transform(await m(x(b("lz-string",import.meta.url))),i);c.contents=new TextEncoder().encode((await n.transform(`var a={};new Function("module",${l(y)})(a);new Function("require","module","exports",a.exports.decompressFromBase64(${l(v(u))}))(require,module,exports)`,i)).code)}p&&await Promise.all(a.map(async({path:o,contents:u})=>g(o,u)))})}}}export{P as default};
2
+ import{check_outros as R,group_outros as A,transition_out as O}from"svelte/internal";import{escapeRegExp as S,identity as D,isEmpty as j,isNil as C,isObject as K,noop as F,range as I}from"lodash-es";import N from"browser-util-inspect";import L from"async-lock";function s(e,t,n){return n===void 0?delete e[t]:e[t]=n,n}function l(e){return`\`${e.replace(/(?<char>`|\\|\$)/ug,"\\$<char>")}\``}import{readFile as m,writeFile as g}from"node:fs/promises";import{fileURLToPath as x}from"node:url";import{isEmpty as T}from"lodash-es";import w from"lz-string";import{resolve as b}from"import-meta-resolve";var{compressToBase64:v}=w,k="compress";function P(e){return{name:e?.name??k,setup(t){if(e?.enable===!1)return;let{esbuild:n,initialOptions:r}=t,p=r.write??!0;r.write=!1,t.onEnd(async({errors:d,outputFiles:a})=>{if(!T(d)||!a)return;let c=a.find(({path:o})=>o.endsWith(".js"));if(c){let{path:o,text:u}=c,i={loader:"js",sourcefile:o};for(let f of["charset","color","define","drop","format","globalName","ignoreAnnotations","jsx","jsxDev","jsxFactory","jsxFragment","jsxImportSource","jsxSideEffects","keepNames","legalComments","logLevel","logLimit","logOverride","mangleCache","mangleProps","mangleQuoted","minify","minifyIdentifiers","minifySyntax","minifyWhitespace","platform","pure","reserveProps","sourceRoot","sourcemap","sourcesContent","supported","target","treeShaking"])s(i,f,r[f]);s(i,"banner",r.banner?.js),s(i,"footer",r.footer?.js);let{code:y}=await n.transform(await m(x(b("lz-string",import.meta.url))),i);c.contents=new TextEncoder().encode((await n.transform(`var a={};new Function("module",${l(y)})(a);new Function("require","module","exports",a.exports.decompressFromBase64(${l(v(u))}))(require,module,exports)`,i)).code)}p&&await Promise.all(a.map(async({path:o,contents:u})=>g(o,u)))})}}}export{P as default};
3
3
  // repository: https://github.com/polyipseity/obsidian-plugin-library
4
4
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../sources/util.ts", "../../sources/esbuild-compress/index.ts"],
4
- "sourcesContent": ["import {\r\n\tcheck_outros as $checkOutros,\r\n\tgroup_outros as $groupOutros,\r\n\ttransition_out as $transitionOut,\r\n} from \"svelte/internal\"\r\nimport {\r\n\ttype AnyObject,\r\n\ttype AsyncFunctionConstructor,\r\n\ttype Base64String,\r\n\ttype CodePoint,\r\n\ttype ReadonlyTuple,\r\n\tcontravariant,\r\n\tcorrectType,\r\n\tlaunderUnchecked,\r\n\tsimplifyType,\r\n} from \"./types.js\"\r\nimport type {\r\n\tAsyncOrSync,\r\n\tDeepReadonly,\r\n\tDeepWritable,\r\n\tNewable,\r\n} from \"ts-essentials\"\r\nimport {\r\n\ttype DebouncedFunc,\r\n\tescapeRegExp,\r\n\tidentity,\r\n\tisEmpty,\r\n\tisNil,\r\n\tisObject,\r\n\tnoop,\r\n\trange,\r\n} from \"lodash-es\"\r\nimport { NEVER_REGEX_G, SI_PREFIX_SCALE } from \"./magic.js\"\r\nimport {\r\n\ttype PrimitiveTypeE,\r\n\ttype TypeofMapE,\r\n\tgenericTypeofGuardE,\r\n} from \"./typeof.js\"\r\nimport inspect, { type Options } from \"browser-util-inspect\"\r\nimport AsyncLock from \"async-lock\"\r\nimport { MAX_LOCK_PENDING } from \"./internals/magic.js\"\r\nimport type { SvelteComponent } from \"svelte\"\r\n\r\nexport type KeyModifier = \"Alt\" | \"Ctrl\" | \"Meta\" | \"Shift\"\r\n\r\nexport class EventEmitterLite<A extends readonly unknown[]> {\r\n\tprotected static readonly emitLock = \"emit\"\r\n\tprotected readonly lock = new AsyncLock({ maxPending: MAX_LOCK_PENDING })\r\n\treadonly #listeners: ((...args: A) => unknown)[] = []\r\n\r\n\tpublic async emit(...args: A): Promise<void> {\r\n\t\treturn new Promise((resolve, reject) => {\r\n\t\t\tthis.lock.acquire(EventEmitterLite.emitLock, async () => {\r\n\t\t\t\t// Copy to prevent concurrent modification\r\n\t\t\t\tconst emitted = [...this.#listeners]\r\n\t\t\t\t\t.map(async list => { await list(...args) })\r\n\t\t\t\tresolve(Promise.all(emitted).then(noop))\r\n\t\t\t\tawait Promise.allSettled(emitted)\r\n\t\t\t}).catch(reject)\r\n\t\t})\r\n\t}\r\n\r\n\tpublic listen(listener: (...args: A) => unknown): () => void {\r\n\t\tthis.#listeners.push(listener)\r\n\t\treturn () => { remove(this.#listeners, listener) }\r\n\t}\r\n}\r\n\r\nexport type PromisePromise<T> = Promise<{\r\n\treadonly promise: Promise<T>\r\n\treadonly resolve: (value: AsyncOrSync<T>) => void\r\n\treadonly reject: (reason?: unknown) => void\r\n}>\r\n\r\nexport class Functions<\r\n\tAsync extends boolean = false,\r\n\tArgs extends readonly unknown[] = [],\r\n> extends Array<\r\n\tAsync extends true ? (\r\n\t\t...args: Args\r\n\t) => unknown : Async extends false ? (\r\n\t\t...args: Args\r\n\t) => void : never> {\r\n\tpublic constructor(\r\n\t\tprotected readonly options: {\r\n\t\t\treadonly async: Async\r\n\t\t\treadonly settled?: boolean\r\n\t\t},\r\n\t\t...args: readonly (Async extends true ? (\r\n\t\t\t...args: Args\r\n\t\t) => unknown : Async extends false ? (\r\n\t\t\t...args: Args\r\n\t\t) => void : never)[]\r\n\t) {\r\n\t\tsuper(...args)\r\n\t}\r\n\r\n\tpublic transform(func: (\r\n\t\tself0: this[number][],\r\n\t) => readonly this[number][]): Functions<Async, Args> {\r\n\t\treturn new Functions(this.options, ...func(this))\r\n\t}\r\n\r\n\tpublic call(...args: Args): Async extends true\r\n\t\t// eslint-disable-next-line @typescript-eslint/no-invalid-void-type\r\n\t\t? Promise<void> : Async extends false ? void : never {\r\n\t\treturn this.call0(null, ...args)\r\n\t}\r\n\r\n\tpublic call0(\r\n\t\tthisArg: unknown,\r\n\t\t...args: Args\r\n\t): Async extends true\r\n\t\t// eslint-disable-next-line @typescript-eslint/no-invalid-void-type\r\n\t\t? Promise<void> : Async extends false ? void : never\r\n\tpublic call0(thisArg: unknown, ...args: Args): AsyncOrSync<void> {\r\n\t\tconst { async, settled } = this.options\r\n\t\tif (async) {\r\n\t\t\treturn (async (): Promise<void> => {\r\n\t\t\t\tconst promises = this.map(async func => {\r\n\t\t\t\t\tawait func.call(thisArg, ...args)\r\n\t\t\t\t})\r\n\t\t\t\tif (settled ?? false) {\r\n\t\t\t\t\tawait Promise.allSettled(promises)\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\t\t\t\tawait Promise.all(promises)\r\n\t\t\t})()\r\n\t\t}\r\n\t\tthis.forEach(settled ?? false\r\n\t\t\t? (func): void => {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tfunc.call(thisArg, ...args)\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tself.console.error(error)\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t: (func): void => { func.call(thisArg, ...args) })\r\n\t\treturn void 0\r\n\t}\r\n}\r\n\r\nexport async function acquireConditionally<T>(\r\n\tlock: AsyncLock,\r\n\tkey: string[] | string,\r\n\tcondition: boolean,\r\n\tfn: () => PromiseLike<T> | T,\r\n): Promise<T> {\r\n\treturn condition ? lock.acquire(key, fn) : fn()\r\n}\r\n\r\nexport function alternativeRegExp(strs: readonly string[]): RegExp {\r\n\treturn isEmpty(strs)\r\n\t\t? NEVER_REGEX_G\r\n\t\t: new RegExp(\r\n\t\t\t[...strs]\r\n\t\t\t\t.sort(({ length: left }, { length: right }) => right - left)\r\n\t\t\t\t.map(escapeRegExp)\r\n\t\t\t\t.join(\"|\"),\r\n\t\t\t\"gu\",\r\n\t\t)\r\n}\r\n\r\nexport function anyToError(obj: unknown): Error {\r\n\treturn obj instanceof Error ? obj : new Error(String(obj))\r\n}\r\n\r\nexport function aroundIdentityFactory<T extends (this: unknown,\r\n\t...args: readonly unknown[]\r\n) => unknown>() {\r\n\treturn (proto: T) => function fn(\r\n\t\tthis: ThisParameterType<T>,\r\n\t\t...args: Parameters<T>\r\n\t): ReturnType<T> {\r\n\t\treturn proto.apply(this, args) as ReturnType<T>\r\n\t}\r\n}\r\n\r\nexport function assignExact<K extends keyof any, T extends {\r\n\t[_ in K]?: unknown\r\n}>(self0: T, key: K & keyof T, value?: T[K]): typeof value {\r\n\tif (value === void 0) {\r\n\t\t// eslint-disable-next-line @typescript-eslint/no-dynamic-delete\r\n\t\tdelete self0[key]\r\n\t} else {\r\n\t\tself0[key] = value\r\n\t}\r\n\treturn value\r\n}\r\n\r\nexport function asyncDebounce<\r\n\tA extends readonly unknown[], R,\r\n>(func: DebouncedFunc<(\r\n\tresolve: (value: AsyncOrSync<R>) => void,\r\n\treject: (reason?: unknown) => void,\r\n\t...args: A) => void>): (...args: A) => Promise<R> {\r\n\tconst promises: {\r\n\t\treadonly resolve: (value: AsyncOrSync<R>) => void\r\n\t\treadonly reject: (reason?: unknown) => void\r\n\t}[] = []\r\n\treturn async (...args: A): Promise<R> =>\r\n\t\tnew Promise((resolve, reject) => {\r\n\t\t\tpromises.push({ reject, resolve })\r\n\t\t\tfunc(value => {\r\n\t\t\t\tfor (const promise of promises.splice(0)) {\r\n\t\t\t\t\tpromise.resolve(value)\r\n\t\t\t\t}\r\n\t\t\t}, error => {\r\n\t\t\t\tfor (const promise of promises.splice(0)) {\r\n\t\t\t\t\tpromise.reject(error)\r\n\t\t\t\t}\r\n\t\t\t}, ...args)\r\n\t\t})\r\n}\r\n\r\nexport function asyncFunction(\r\n\tself0: typeof globalThis,\r\n): AsyncFunctionConstructor {\r\n\treturn self0.eval(\"(async()=>{}).constructor\") as AsyncFunctionConstructor\r\n}\r\n\r\nexport function base64ToBytes(base64: Base64String): Uint8Array {\r\n\treturn Uint8Array.from(self.atob(base64), byte => byte.codePointAt(0) ?? NaN)\r\n}\r\n\r\nexport function base64ToString(base64: Base64String): string {\r\n\treturn new TextDecoder().decode(base64ToBytes(base64))\r\n}\r\n\r\nexport function basename(path: string, ext = \"\"): string {\r\n\tconst ret = path.slice(Math.max(\r\n\t\tpath.lastIndexOf(\"/\"),\r\n\t\tpath.lastIndexOf(\"\\\\\"),\r\n\t) + 1)\r\n\treturn ret.endsWith(ext) ? ret.slice(0, ret.length - ext.length) : ret\r\n}\r\n\r\nexport function bigIntReplacer(): (key: string, value: unknown) => unknown {\r\n\treturn (_0, value) => {\r\n\t\tif (typeof value === \"bigint\") {\r\n\t\t\treturn value.toString()\r\n\t\t}\r\n\t\treturn value\r\n\t}\r\n}\r\n\r\nexport function bracket<T extends object, K extends keyof any>(\r\n\tself0: T,\r\n\tkey: K,\r\n): { readonly valid: false; readonly value?: never }\r\n\t| { readonly valid: true; readonly value: T[K & keyof T] } {\r\n\tconst proof = typedIn(self0, key)\r\n\treturn Object.freeze(proof\r\n\t\t? { valid: true, value: proof() }\r\n\t\t: { valid: false })\r\n}\r\n\r\nexport function bytesToBase64(bytes: Uint8Array): Base64String {\r\n\treturn self.btoa(Array\r\n\t\t.from(bytes, byte => String.fromCodePoint(byte))\r\n\t\t.join(\"\")) as Base64String\r\n}\r\n\r\nexport function capitalize(\r\n\tstr: string,\r\n\tlocales?: string[] | string,\r\n): string {\r\n\treturn mapFirstCodePoint(str, first => first.toLocaleUpperCase(locales))\r\n}\r\n\r\n// eslint-disable-next-line @typescript-eslint/explicit-function-return-type, @typescript-eslint/explicit-module-boundary-types\r\nexport function cartesianProduct<T extends readonly (readonly unknown[])[],\r\n>(...arrays: T) {\r\n\treturn deepFreeze(arrays.reduce((acc, arr) => acc\r\n\t\t.flatMap(comb => arr.map(ele => [comb, ele].flat())), [[]])) as\r\n\t\treadonly ({ readonly [I in keyof T]: T[I][number] } &\r\n\t\t{ readonly length: T[\"length\"] })[]\r\n}\r\n\r\nexport function clear(self0: unknown[]): void {\r\n\tself0.length = 0\r\n}\r\n\r\nexport function clearProperties(self0: object): void {\r\n\tfor (const key of typedOwnKeys(self0)) {\r\n\t\t// eslint-disable-next-line @typescript-eslint/no-dynamic-delete\r\n\t\tdelete self0[key]\r\n\t}\r\n}\r\n\r\nexport function cloneAsFrozen<T>(\r\n\tobj: T,\r\n\tcloner: <V>(value: V) => V = structuredClone,\r\n): DeepReadonly<T> {\r\n\treturn simplifyType(deepFreeze(cloneAsWritable(obj, cloner)))\r\n}\r\n\r\nexport function cloneAsWritable<T>(\r\n\tobj: T,\r\n\tcloner: <V>(value: V) => V = structuredClone,\r\n): DeepWritable<T> {\r\n\t// `readonly` is fake at runtime\r\n\treturn cloner(obj) as DeepWritable<T>\r\n}\r\n\r\nexport function consumeEvent(event: Event): void {\r\n\tevent.preventDefault()\r\n\tevent.stopPropagation()\r\n}\r\n\r\nexport function copyOnWrite<T extends object>(\r\n\tobj: DeepReadonly<T>,\r\n\tmutator: (obj: DeepWritable<T>) => void,\r\n): DeepReadonly<T> {\r\n\tconst ret = simplifyType<T>(cloneAsWritable(obj))\r\n\tmutator(ret)\r\n\treturn simplifyType<T>(deepFreeze(ret))\r\n}\r\n\r\nexport async function copyOnWriteAsync<T extends object>(\r\n\tobj: DeepReadonly<T>,\r\n\tmutator: (obj: DeepWritable<T>) => unknown,\r\n): Promise<DeepReadonly<T>> {\r\n\tconst ret = simplifyType<T>(cloneAsWritable(obj))\r\n\tawait mutator(ret)\r\n\treturn simplifyType<T>(deepFreeze(ret))\r\n}\r\n\r\nexport function createChildElement<K extends keyof HTMLElementTagNameMap>(\r\n\telement: ParentNode & { readonly ownerDocument: Document },\r\n\ttype: K,\r\n\tcallback = (_element: HTMLElementTagNameMap[K]): void => { },\r\n\toptions?: ElementCreationOptions,\r\n): HTMLElementTagNameMap[K] {\r\n\tconst ret = element.ownerDocument.createElement(type, options)\r\n\telement.append(ret)\r\n\tcallback(ret)\r\n\treturn ret\r\n}\r\n\r\nexport function createDocumentFragment(\r\n\tself0: Document,\r\n\tcallback: (fragment: DocumentFragment) => void,\r\n): DocumentFragment {\r\n\tconst ret = self0.createDocumentFragment()\r\n\tcallback(ret)\r\n\treturn ret\r\n}\r\n\r\nexport function deepFreeze<const T>(value: T): DeepReadonly<T> {\r\n\treturn deepFreeze0(value, new WeakSet())\r\n}\r\nfunction deepFreeze0<T>(value: T, freezing: WeakSet<object>): DeepReadonly<T> {\r\n\tif (typeof value === \"object\" && value) {\r\n\t\tfreezing.add(value)\r\n\t\tfor (const subkey of typedOwnKeys(value)) {\r\n\t\t\tconst subvalue = value[subkey]\r\n\t\t\tif (isObject(subvalue) && !freezing.has(subvalue)) {\r\n\t\t\t\tdeepFreeze0(subvalue, freezing)\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\treturn Object.freeze(value) as DeepReadonly<T>\r\n}\r\n\r\n// Feature request: https://github.com/sveltejs/svelte/issues/4056\r\nexport function destroyWithOutro(self0: SvelteComponent): void {\r\n\tconst { $$: { fragment } } = self0\r\n\tif (fragment !== false && fragment) {\r\n\t\ttry {\r\n\t\t\t$groupOutros()\r\n\t\t\t$transitionOut(fragment, 0, 0, () => { self0.$destroy() })\r\n\t\t\t$checkOutros()\r\n\t\t} catch (error) {\r\n\t\t\tself.console.error(error)\r\n\t\t\tself0.$destroy()\r\n\t\t}\r\n\t} else {\r\n\t\tself0.$destroy()\r\n\t}\r\n}\r\n\r\nexport function escapeJavaScriptString(value: string): string {\r\n\treturn `\\`${value.replace(/(?<char>`|\\\\|\\$)/ug, \"\\\\$<char>\")}\\``\r\n}\r\n\r\nexport function escapeQuerySelectorAttribute(value: string): string {\r\n\treturn multireplace(value, {\r\n\t\t// eslint-disable-next-line @typescript-eslint/naming-convention\r\n\t\t\"\\\"\": \"\\\\\\\"\",\r\n\t\t// eslint-disable-next-line @typescript-eslint/naming-convention\r\n\t\t\"\\\\\": \"\\\\\\\\\",\r\n\t})\r\n}\r\n\r\nexport function extname(path: string): string {\r\n\tconst base = basename(path),\r\n\t\tidx = base.lastIndexOf(\".\")\r\n\treturn idx === -1 ? \"\" : base.slice(idx)\r\n}\r\n\r\nexport function getKeyModifiers(\r\n\tevent: KeyboardEvent,\r\n): readonly KeyModifier[] {\r\n\tconst ret: KeyModifier[] = []\r\n\tif (event.altKey) { ret.push(\"Alt\") }\r\n\tif (event.ctrlKey) { ret.push(\"Ctrl\") }\r\n\tif (event.metaKey) { ret.push(\"Meta\") }\r\n\tif (event.shiftKey) { ret.push(\"Shift\") }\r\n\treturn deepFreeze(ret)\r\n}\r\n\r\nexport function typedIn<T extends object, K extends keyof any>(\r\n\tself0: T,\r\n\tkey: K,\r\n): (() => T[K & keyof T]) | null {\r\n\tif (key in self0) {\r\n\t\treturn () => self0[key as K & keyof T]\r\n\t}\r\n\treturn null\r\n}\r\n\r\nexport function typedOwnKeys<T extends object>(\r\n\tself0: T,\r\n): (keyof T & (string | symbol))[] {\r\n\treturn Reflect.ownKeys(self0) as (keyof T & (string | symbol))[]\r\n}\r\n\r\nexport function typedKeys<T extends readonly (keyof any)[]>() {\r\n\treturn <O extends (keyof O extends T[number] ? {\r\n\t\treadonly [_ in T[number]]: unknown\r\n\t} : never)>(obj: O): Readonly<T> =>\r\n\t\tdeepFreeze(Object.keys(obj)) as T\r\n}\r\n\r\nexport function inSet<const T extends ReadonlyTuple>(\r\n\tset: T,\r\n\tobj: unknown,\r\n): obj is T[number] {\r\n\treturn contravariant(set).includes(obj)\r\n}\r\n\r\nexport function insertAt<T>(\r\n\tself0: T[],\r\n\tindex: number,\r\n\t...items: readonly T[]\r\n): void {\r\n\tself0.splice(index, 0, ...items)\r\n}\r\n\r\nexport function instanceOf<T extends Node | UIEvent>(\r\n\tself0: unknown,\r\n\ttype: Newable<T>,\r\n): self0 is T {\r\n\tif (!isObject(self0)) { return false }\r\n\tif (self0 instanceof type) { return true }\r\n\tconst { name } = type,\r\n\t\ttypeMain: unknown = Reflect.get(self, name)\r\n\tif (typeof typeMain === \"function\" && self0 instanceof typeMain) {\r\n\t\treturn true\r\n\t}\r\n\tconst\r\n\t\twin = \"ownerDocument\" in self0\r\n\t\t\t? launderUnchecked<AnyObject>(self0.ownerDocument)[\"defaultView\"]\r\n\t\t\t: launderUnchecked<AnyObject>(self0)[\"view\"],\r\n\t\ttypeWin: unknown = isObject(win) ? Reflect.get(win, name) : null\r\n\tif (typeof typeWin === \"function\" && self0 instanceof typeWin) {\r\n\t\treturn true\r\n\t}\r\n\treturn false\r\n}\r\n\r\nexport function isHomogenousArray<T extends PrimitiveTypeE>(\r\n\ttypes: readonly T[],\r\n\tvalue: unknown,\r\n): value is TypeofMapE[T][] {\r\n\tif (!Array.isArray(value)) { return false }\r\n\treturn value.every(element => genericTypeofGuardE(types, element))\r\n}\r\n\r\nexport function isNonNil<T>(\r\n\tvalue: (T & (null | undefined)) extends never ? never : T,\r\n): value is (T & (null | undefined)) extends never ? never : NonNullable<T> {\r\n\treturn !isNil(value)\r\n}\r\n\r\nexport function lazyInit<T>(initializer: () => T): () => T {\r\n\tlet cache: {\r\n\t\treadonly init: false\r\n\t\treadonly value: null\r\n\t} | {\r\n\t\treadonly init: true\r\n\t\treadonly value: T\r\n\t} = { init: false, value: null }\r\n\treturn () => {\r\n\t\tconst cache0 = cache.init\r\n\t\t\t? cache\r\n\t\t\t: cache = { init: true, value: initializer() }\r\n\t\treturn cache0.value\r\n\t}\r\n}\r\n\r\n// eslint-disable-next-line @typescript-eslint/ban-types\r\nexport function lazyProxy<T extends Function | object>(\r\n\tinitializer: () => T,\r\n): T {\r\n\tconst lazy = lazyInit(initializer),\r\n\t\tfunctions = new Map(),\r\n\t\tproxy = new Proxy(lazy, {\r\n\t\t\tapply(target, thisArg, argArray): unknown {\r\n\t\t\t\tconst target0 = target()\r\n\t\t\t\tif (typeof target0 !== \"function\") {\r\n\t\t\t\t\tthrow new TypeError(String(target0))\r\n\t\t\t\t}\r\n\t\t\t\treturn Reflect.apply(\r\n\t\t\t\t\ttarget0,\r\n\t\t\t\t\tthisArg === target ? target() : thisArg,\r\n\t\t\t\t\targArray,\r\n\t\t\t\t)\r\n\t\t\t},\r\n\t\t\tconstruct(target, argArray, newTarget): object {\r\n\t\t\t\tconst target0 = target()\r\n\t\t\t\tif (typeof target0 !== \"function\") {\r\n\t\t\t\t\tthrow new TypeError(String(target0))\r\n\t\t\t\t}\r\n\t\t\t\tconst ret: unknown = Reflect.construct(\r\n\t\t\t\t\ttarget0,\r\n\t\t\t\t\targArray,\r\n\t\t\t\t\tnewTarget === target ? target0 : newTarget,\r\n\t\t\t\t)\r\n\t\t\t\tif (isObject(ret)) { return ret }\r\n\t\t\t\tthrow new TypeError(String(ret))\r\n\t\t\t},\r\n\t\t\tdefineProperty(target, property, attributes): boolean {\r\n\t\t\t\tif (!(attributes.configurable ?? true) &&\r\n\t\t\t\t\t!Reflect.defineProperty(target, property, attributes)) {\r\n\t\t\t\t\treturn false\r\n\t\t\t\t}\r\n\t\t\t\treturn Reflect.defineProperty(target(), property, attributes)\r\n\t\t\t},\r\n\t\t\tdeleteProperty(target, property): boolean {\r\n\t\t\t\tconst own = Reflect.getOwnPropertyDescriptor(target, property)\r\n\t\t\t\tif (!(own?.configurable ?? true) &&\r\n\t\t\t\t\t!Reflect.deleteProperty(target, property)) {\r\n\t\t\t\t\treturn false\r\n\t\t\t\t}\r\n\t\t\t\treturn Reflect.deleteProperty(target(), property)\r\n\t\t\t},\r\n\t\t\tget(target, property, receiver): unknown {\r\n\t\t\t\tconst own = Reflect.getOwnPropertyDescriptor(target, property)\r\n\t\t\t\tif (!(own?.configurable ?? true) &&\r\n\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-extra-parens\r\n\t\t\t\t\t(!(own?.writable ?? true) || (own?.set && !own.get))) {\r\n\t\t\t\t\treturn Reflect.get(target, property, receiver)\r\n\t\t\t\t}\r\n\t\t\t\tconst ret = Reflect.get(\r\n\t\t\t\t\ttarget(),\r\n\t\t\t\t\tproperty,\r\n\t\t\t\t\treceiver === target ? target() : receiver,\r\n\t\t\t\t)\r\n\t\t\t\tif (typeof ret === \"function\") {\r\n\t\t\t\t\tconst ret0 = ret\r\n\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/explicit-function-return-type\r\n\t\t\t\t\treturn functions.get(ret) ?? (() => {\r\n\t\t\t\t\t\tfunction fn(\r\n\t\t\t\t\t\t\tthis: unknown,\r\n\t\t\t\t\t\t\t...args: readonly unknown[]\r\n\t\t\t\t\t\t): unknown {\r\n\t\t\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition, @typescript-eslint/strict-boolean-expressions\r\n\t\t\t\t\t\t\tif (new.target) {\r\n\t\t\t\t\t\t\t\treturn Reflect.construct(\r\n\t\t\t\t\t\t\t\t\tret0,\r\n\t\t\t\t\t\t\t\t\targs,\r\n\t\t\t\t\t\t\t\t\tnew.target === fn ? ret0 : new.target,\r\n\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\treturn Reflect.apply(\r\n\t\t\t\t\t\t\t\tret0,\r\n\t\t\t\t\t\t\t\tthis === proxy ? target() : this,\r\n\t\t\t\t\t\t\t\targs,\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tfunctions.set(ret, fn)\r\n\t\t\t\t\t\treturn fn\r\n\t\t\t\t\t})()\r\n\t\t\t\t}\r\n\t\t\t\treturn ret\r\n\t\t\t},\r\n\t\t\tgetOwnPropertyDescriptor(\r\n\t\t\t\ttarget,\r\n\t\t\t\tproperty,\r\n\t\t\t): PropertyDescriptor | undefined {\r\n\t\t\t\tlet ret = Reflect.getOwnPropertyDescriptor(target(), property)\r\n\t\t\t\tif (ret && !(ret.configurable ?? true) &&\r\n\t\t\t\t\t!Reflect.defineProperty(target, property, ret)) {\r\n\t\t\t\t\tret = void 0\r\n\t\t\t\t}\r\n\t\t\t\treturn ret\r\n\t\t\t},\r\n\t\t\tgetPrototypeOf(target): object | null {\r\n\t\t\t\treturn Reflect.getPrototypeOf(target())\r\n\t\t\t},\r\n\t\t\thas(target, property): boolean {\r\n\t\t\t\treturn Reflect.getOwnPropertyDescriptor(target, property)\r\n\t\t\t\t\t?.configurable ?? true\r\n\t\t\t\t\t? Reflect.has(target(), property)\r\n\t\t\t\t\t: Reflect.has(target, property)\r\n\t\t\t},\r\n\t\t\tisExtensible(target): boolean {\r\n\t\t\t\treturn Reflect.isExtensible(target)\r\n\t\t\t},\r\n\t\t\townKeys(target): ArrayLike<string | symbol> {\r\n\t\t\t\treturn [\r\n\t\t\t\t\t...new Set([\r\n\t\t\t\t\t\tReflect.ownKeys(target()),\r\n\t\t\t\t\t\tReflect.ownKeys(target)\r\n\t\t\t\t\t\t\t.filter(key => !(Reflect.getOwnPropertyDescriptor(target, key)\r\n\t\t\t\t\t\t\t\t?.configurable ?? true)),\r\n\t\t\t\t\t].flat()),\r\n\t\t\t\t]\r\n\t\t\t},\r\n\t\t\tpreventExtensions(target): boolean {\r\n\t\t\t\treturn Reflect.preventExtensions(target)\r\n\t\t\t},\r\n\t\t\tset(target, property, newValue, receiver): boolean {\r\n\t\t\t\tconst own = Reflect.getOwnPropertyDescriptor(target, property)\r\n\t\t\t\tif (!(own?.configurable ?? true) &&\r\n\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-extra-parens\r\n\t\t\t\t\t(!(own?.writable ?? true) || (own?.get && !own.set)) &&\r\n\t\t\t\t\t!Reflect.set(target, property, newValue, receiver)) {\r\n\t\t\t\t\treturn false\r\n\t\t\t\t}\r\n\t\t\t\treturn Reflect.set(\r\n\t\t\t\t\ttarget(),\r\n\t\t\t\t\tproperty,\r\n\t\t\t\t\tnewValue,\r\n\t\t\t\t\treceiver === target ? target() : receiver,\r\n\t\t\t\t)\r\n\t\t\t},\r\n\t\t\tsetPrototypeOf(target, proto): boolean {\r\n\t\t\t\treturn Reflect.setPrototypeOf(target(), proto)\r\n\t\t\t},\r\n\t\t} satisfies Required<ProxyHandler<typeof lazy>>)\r\n\treturn proxy as T\r\n}\r\n\r\nexport function logFormat(\r\n\toptions: Options,\r\n\t...args: readonly unknown[]\r\n): string {\r\n\tif (isEmpty(args)) { return \"\" }\r\n\tconst\r\n\t\tstringify0 = (param: unknown): string => {\r\n\t\t\ttry {\r\n\t\t\t\treturn inspect(param, options)\r\n\t\t\t} catch {\r\n\t\t\t\t// Do not log\r\n\t\t\t\treturn String(param)\r\n\t\t\t}\r\n\t\t},\r\n\t\t[format, ...rest] = args\r\n\tif (typeof format === \"string\") {\r\n\t\treturn [\r\n\t\t\t...(function* fn(): Generator<string, void> {\r\n\t\t\t\tconst params = rest[Symbol.iterator]()\r\n\t\t\t\tlet back = 0\r\n\t\t\t\tfor (let sub = format.indexOf(\"%\");\r\n\t\t\t\t\tsub !== -1;\r\n\t\t\t\t\tsub = format.indexOf(\"%\", back)) {\r\n\t\t\t\t\tyield format.slice(back, sub)\r\n\t\t\t\t\tback = sub + \"%\".length\r\n\t\t\t\t\tconst type = format.codePointAt(back)\r\n\t\t\t\t\tif (type === void 0) {\r\n\t\t\t\t\t\tyield \"%\"\r\n\t\t\t\t\t\tcontinue\r\n\t\t\t\t\t}\r\n\t\t\t\t\tconst type0 = String.fromCodePoint(type)\r\n\t\t\t\t\tback += type0.length\r\n\t\t\t\t\tlet func: ((param: unknown) => string) | null = null\r\n\t\t\t\t\tswitch (type0) {\r\n\t\t\t\t\t\tcase \"%\":\r\n\t\t\t\t\t\t\tyield \"%%\"\r\n\t\t\t\t\t\t\tbreak\r\n\t\t\t\t\t\tcase \"s\":\r\n\t\t\t\t\t\t\tfunc = (param): string => String(param)\r\n\t\t\t\t\t\t\tbreak\r\n\t\t\t\t\t\tcase \"o\":\r\n\t\t\t\t\t\tcase \"O\":\r\n\t\t\t\t\t\t\tfunc = stringify0\r\n\t\t\t\t\t\t\tbreak\r\n\t\t\t\t\t\tcase \"f\":\r\n\t\t\t\t\t\t\tfunc = (param): string => Number(param).toString()\r\n\t\t\t\t\t\t\tbreak\r\n\t\t\t\t\t\tcase \"d\":\r\n\t\t\t\t\t\tcase \"i\":\r\n\t\t\t\t\t\t\tfunc = (param): string => Math.trunc(Number(param)).toString()\r\n\t\t\t\t\t\t\tbreak\r\n\t\t\t\t\t\tcase \"c\":\r\n\t\t\t\t\t\t\t// CSS unsupported\r\n\t\t\t\t\t\t\tfunc = (): string => \"\"\r\n\t\t\t\t\t\t\tbreak\r\n\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\tyield `%${type0}`\r\n\t\t\t\t\t\t\tbreak\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (func) {\r\n\t\t\t\t\t\tconst param = params.next()\r\n\t\t\t\t\t\tif (param.done ?? false) {\r\n\t\t\t\t\t\t\tyield `%${type0}`\r\n\t\t\t\t\t\t\tbreak\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tyield func(param.value)\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tyield format.slice(back)\r\n\t\t\t\tfor (const param of params) {\r\n\t\t\t\t\tyield ` ${stringify0(param)}`\r\n\t\t\t\t}\r\n\t\t\t}()),\r\n\t\t].join(\"\")\r\n\t}\r\n\treturn args.map(stringify0).join(\" \")\r\n}\r\n\r\nexport function mapFirstCodePoint(\r\n\tstr: string,\r\n\tmap: (value: string) => string,\r\n\tmapRest: (value: string) => string = identity,\r\n): string {\r\n\tconst cp0 = str.codePointAt(0)\r\n\tif (cp0 === void 0) { return \"\" }\r\n\tconst char0 = String.fromCodePoint(cp0)\r\n\treturn `${map(char0)}${mapRest(str.slice(char0.length))}`\r\n}\r\n\r\nexport function multireplace(\r\n\tself0: string,\r\n\treplacements: Readonly<Record<string, string>>,\r\n): string {\r\n\treturn self0.replace(\r\n\t\talternativeRegExp(Object.keys(replacements)),\r\n\t\tmatch => replacements[match] ?? match,\r\n\t)\r\n}\r\n\r\nexport function onResize(\r\n\telement: Element,\r\n\tcallback: (entry: ResizeObserverEntry) => void,\r\n): ResizeObserver {\r\n\tconst ret = new (activeSelf(element).ResizeObserver)(ents => {\r\n\t\tconst ent = ents.at(-1)\r\n\t\tif (ent) { callback(ent) }\r\n\t})\r\n\tret.observe(element)\r\n\treturn ret\r\n}\r\n\r\nexport function onVisible(\r\n\telement: Element,\r\n\tcallback: (entry: IntersectionObserverEntry) => void,\r\n\ttransient = false,\r\n): IntersectionObserver {\r\n\tconst ret = new (activeSelf(element).IntersectionObserver)(ents => {\r\n\t\tfor (const ent of transient\r\n\t\t\t? ents.reverse()\r\n\t\t\t: [ents.at(-1) ?? { isIntersecting: false }]) {\r\n\t\t\tif (ent.isIntersecting) {\r\n\t\t\t\tcallback(ent)\r\n\t\t\t\tbreak\r\n\t\t\t}\r\n\t\t}\r\n\t})\r\n\tret.observe(element)\r\n\treturn ret\r\n}\r\n\r\nexport function openExternal(self0: Window, url?: URL | string): Window | null {\r\n\treturn self0.open(url, \"_blank\", \"noreferrer\")\r\n}\r\n\r\nexport async function promisePromise<T = void>(): PromisePromise<T> {\r\n\treturn new Promise(resolve0 => {\r\n\t\tconst promise = new Promise<T>((resolve, reject) => {\r\n\t\t\tresolve0(Promise.resolve()\r\n\t\t\t\t.then(() => ({ promise, reject, resolve })))\r\n\t\t})\r\n\t})\r\n}\r\n\r\nexport function randomNotIn(\r\n\tself0: readonly string[],\r\n\tgenerator = (): string => self.crypto.randomUUID(),\r\n): string {\r\n\tlet ret = generator()\r\n\twhile (self0.includes(ret)) { ret = generator() }\r\n\treturn ret\r\n}\r\n\r\nexport function rangeCodePoint(\r\n\tstart: CodePoint,\r\n\tend?: CodePoint,\r\n\tstep?: number,\r\n): readonly string[] {\r\n\treturn deepFreeze(\r\n\t\trange(start.codePointAt(0), end?.codePointAt(0), step)\r\n\t\t\t.map(cp => String.fromCodePoint(cp)),\r\n\t)\r\n}\r\n\r\nexport function remove<T>(self0: T[], item: T): T | undefined {\r\n\treturn removeAt(self0, self0.indexOf(item))\r\n}\r\n\r\nexport function removeAt<T>(self0: T[], index: number): T | undefined {\r\n\treturn self0.splice(index, 1)[0]\r\n}\r\n\r\nexport function replaceAllRegex(string: string): RegExp {\r\n\treturn new RegExp(escapeRegExp(string), \"ug\")\r\n}\r\n\r\nexport function splitLines(\r\n\tstr: string,\r\n\tdelimiter = /\\r\\n|[\\n\\v\\f\\r\\x85\\u2028\\u2029]/u,\r\n): readonly string[] {\r\n\treturn str.split(delimiter)\r\n}\r\n\r\nexport function startCase(str: string, locales?: string[] | string): string {\r\n\treturn str.replace(/\\w\\S*/gu, ss => mapFirstCodePoint(\r\n\t\tss,\r\n\t\tstr0 => str0.toLocaleUpperCase(locales),\r\n\t\tstr0 => str0.toLocaleLowerCase(locales),\r\n\t))\r\n}\r\n\r\nexport function stringToBase64(string: string): Base64String {\r\n\treturn bytesToBase64(new TextEncoder().encode(string))\r\n}\r\n\r\nexport function activeSelf(\r\n\treference?: Element | UIEvent | null,\r\n): Window & typeof globalThis {\r\n\tif (reference) {\r\n\t\tif (\"ownerDocument\" in reference) {\r\n\t\t\tconst { ownerDocument: { defaultView } } = reference\r\n\t\t\tif (defaultView) { return defaultView }\r\n\t\t}\r\n\t\tif (\"view\" in reference) {\r\n\t\t\tconst { view } = reference\r\n\t\t\tif (view) { return correctType(view) }\r\n\t\t}\r\n\t\tcorrectType(self.activeWindow).console.warn(reference)\r\n\t}\r\n\treturn correctType(self.activeWindow)\r\n}\r\n\r\nexport async function sleep2(\r\n\tself0: WindowOrWorkerGlobalScope,\r\n\ttimeInSeconds: number,\r\n): Promise<void> {\r\n\treturn new Promise(resolve => {\r\n\t\tself0.setTimeout(resolve, timeInSeconds * SI_PREFIX_SCALE)\r\n\t})\r\n}\r\n\r\nexport function swap(self0: unknown[], left: number, right: number): void {\r\n\t[self0[left], self0[right]] = [self0[right], self0[left]]\r\n}\r\n\r\nexport function uncapitalize(\r\n\tstr: string,\r\n\tlocales?: string[] | string,\r\n): string {\r\n\treturn mapFirstCodePoint(str, first => first.toLocaleLowerCase(locales))\r\n}\r\n\r\nexport function unexpected(): never {\r\n\tthrow new Error()\r\n}\r\n", "import type { Plugin, TransformOptions } from \"esbuild\"\r\nimport { assignExact, escapeJavaScriptString as escJSStr } from \"../util.js\"\r\nimport { readFile, writeFile } from \"node:fs/promises\"\r\nimport { fileURLToPath } from \"node:url\"\r\nimport { isEmpty } from \"lodash-es\"\r\nimport lzString from \"lz-string\"\r\nimport { resolve } from \"import-meta-resolve\"\r\n\r\nconst { compressToBase64 } = lzString,\r\n\tNAME = \"compress\"\r\n\r\nexport interface Options {\r\n\treadonly enable?: boolean | undefined\r\n\treadonly name?: string | undefined\r\n}\r\n\r\nexport default function esbuildCompress(options?: Options): Plugin {\r\n\treturn {\r\n\t\tname: options?.name ?? NAME,\r\n\t\tsetup(build): void {\r\n\t\t\tif (options?.enable === false) { return }\r\n\t\t\tconst { esbuild, initialOptions } = build,\r\n\t\t\t\twrite = initialOptions.write ?? true\r\n\t\t\t// Await https://github.com/evanw/esbuild/issues/2999\r\n\t\t\tinitialOptions.write = false\r\n\t\t\tbuild.onEnd(async ({ errors, outputFiles }) => {\r\n\t\t\t\tif (!isEmpty(errors) || !outputFiles) { return }\r\n\t\t\t\tconst main = outputFiles.find(({ path }) => path.endsWith(\".js\"))\r\n\t\t\t\tif (main) {\r\n\t\t\t\t\tconst { path, text } = main,\r\n\t\t\t\t\t\ttOpts: TransformOptions = {\r\n\t\t\t\t\t\t\tloader: \"js\",\r\n\t\t\t\t\t\t\tsourcefile: path,\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\tfor (const key of [\r\n\t\t\t\t\t\t\"charset\",\r\n\t\t\t\t\t\t\"color\",\r\n\t\t\t\t\t\t\"define\",\r\n\t\t\t\t\t\t\"drop\",\r\n\t\t\t\t\t\t// \"dropLabels\",\r\n\t\t\t\t\t\t\"format\",\r\n\t\t\t\t\t\t\"globalName\",\r\n\t\t\t\t\t\t\"ignoreAnnotations\",\r\n\t\t\t\t\t\t\"jsx\",\r\n\t\t\t\t\t\t\"jsxDev\",\r\n\t\t\t\t\t\t\"jsxFactory\",\r\n\t\t\t\t\t\t\"jsxFragment\",\r\n\t\t\t\t\t\t\"jsxImportSource\",\r\n\t\t\t\t\t\t\"jsxSideEffects\",\r\n\t\t\t\t\t\t\"keepNames\",\r\n\t\t\t\t\t\t\"legalComments\",\r\n\t\t\t\t\t\t// \"lineLimit\",\r\n\t\t\t\t\t\t\"logLevel\",\r\n\t\t\t\t\t\t\"logLimit\",\r\n\t\t\t\t\t\t\"logOverride\",\r\n\t\t\t\t\t\t\"mangleCache\",\r\n\t\t\t\t\t\t\"mangleProps\",\r\n\t\t\t\t\t\t\"mangleQuoted\",\r\n\t\t\t\t\t\t\"minify\",\r\n\t\t\t\t\t\t\"minifyIdentifiers\",\r\n\t\t\t\t\t\t\"minifySyntax\",\r\n\t\t\t\t\t\t\"minifyWhitespace\",\r\n\t\t\t\t\t\t\"platform\",\r\n\t\t\t\t\t\t\"pure\",\r\n\t\t\t\t\t\t\"reserveProps\",\r\n\t\t\t\t\t\t\"sourceRoot\",\r\n\t\t\t\t\t\t\"sourcemap\",\r\n\t\t\t\t\t\t\"sourcesContent\",\r\n\t\t\t\t\t\t\"supported\",\r\n\t\t\t\t\t\t\"target\",\r\n\t\t\t\t\t\t\"treeShaking\",\r\n\t\t\t\t\t\t// \"tsconfigRaw\",\r\n\t\t\t\t\t] as const) {\r\n\t\t\t\t\t\tassignExact(tOpts, key, initialOptions[key])\r\n\t\t\t\t\t}\r\n\t\t\t\t\tassignExact(tOpts, \"banner\", initialOptions.banner?.[\"js\"])\r\n\t\t\t\t\tassignExact(tOpts, \"footer\", initialOptions.footer?.[\"js\"])\r\n\t\t\t\t\tconst { code: lzStringBundle } = await esbuild.transform(\r\n\t\t\t\t\t\tawait readFile(\r\n\t\t\t\t\t\t\tfileURLToPath(resolve(\"lz-string\", import.meta.url)),\r\n\t\t\t\t\t\t),\r\n\t\t\t\t\t\ttOpts,\r\n\t\t\t\t\t)\r\n\t\t\t\t\tmain.contents = new TextEncoder().encode(\r\n\t\t\t\t\t\t(await esbuild.transform(\r\n\t\t\t\t\t\t\t`var a={};new Function(\"module\",${escJSStr(\r\n\t\t\t\t\t\t\t\tlzStringBundle,\r\n\t\t\t\t\t\t\t\t// eslint-disable-next-line max-len\r\n\t\t\t\t\t\t\t)})(a);new Function(\"require\",\"module\",\"exports\",a.exports.decompressFromBase64(${escJSStr(\r\n\t\t\t\t\t\t\t\tcompressToBase64(text),\r\n\t\t\t\t\t\t\t)}))(require,module,exports)`,\r\n\t\t\t\t\t\t\ttOpts,\r\n\t\t\t\t\t\t)).code,\r\n\t\t\t\t\t)\r\n\t\t\t\t}\r\n\t\t\t\tif (!write) { return }\r\n\t\t\t\tawait Promise.all(outputFiles\r\n\t\t\t\t\t.map(async ({ path, contents }) => writeFile(path, contents)))\r\n\t\t\t})\r\n\t\t},\r\n\t}\r\n}\r\n"],
4
+ "sourcesContent": ["import {\r\n\tcheck_outros as $checkOutros,\r\n\tgroup_outros as $groupOutros,\r\n\ttransition_out as $transitionOut,\r\n} from \"svelte/internal\"\r\nimport {\r\n\ttype AnyObject,\r\n\ttype AsyncFunctionConstructor,\r\n\ttype Base64String,\r\n\ttype CodePoint,\r\n\ttype ReadonlyTuple,\r\n\tcontravariant,\r\n\tcorrectType,\r\n\tlaunderUnchecked,\r\n\tsimplifyType,\r\n} from \"./types.js\"\r\nimport type {\r\n\tAsyncOrSync,\r\n\tDeepReadonly,\r\n\tDeepWritable,\r\n\tNewable,\r\n} from \"ts-essentials\"\r\nimport {\r\n\ttype DebouncedFunc,\r\n\tescapeRegExp,\r\n\tidentity,\r\n\tisEmpty,\r\n\tisNil,\r\n\tisObject,\r\n\tnoop,\r\n\trange,\r\n} from \"lodash-es\"\r\nimport { NEVER_REGEX_G, SI_PREFIX_SCALE } from \"./magic.js\"\r\nimport {\r\n\ttype PrimitiveTypeE,\r\n\ttype TypeofMapE,\r\n\tgenericTypeofGuardE,\r\n} from \"./typeof.js\"\r\nimport inspect, { type Options } from \"browser-util-inspect\"\r\nimport AsyncLock from \"async-lock\"\r\nimport { MAX_LOCK_PENDING } from \"./internals/magic.js\"\r\nimport type { SvelteComponent } from \"svelte\"\r\n\r\nexport type KeyModifier = \"Alt\" | \"Ctrl\" | \"Meta\" | \"Shift\"\r\n\r\nexport class EventEmitterLite<A extends readonly unknown[]> {\r\n\tprotected static readonly emitLock = \"emit\"\r\n\tprotected readonly lock = new AsyncLock({ maxPending: MAX_LOCK_PENDING })\r\n\treadonly #listeners: ((...args: A) => unknown)[] = []\r\n\r\n\tpublic async emit(...args: A): Promise<void> {\r\n\t\treturn new Promise((resolve, reject) => {\r\n\t\t\tthis.lock.acquire(EventEmitterLite.emitLock, async () => {\r\n\t\t\t\t// Copy to prevent concurrent modification\r\n\t\t\t\tconst emitted = [...this.#listeners]\r\n\t\t\t\t\t.map(async list => { await list(...args) })\r\n\t\t\t\tresolve(Promise.all(emitted).then(noop))\r\n\t\t\t\tawait Promise.allSettled(emitted)\r\n\t\t\t}).catch(reject)\r\n\t\t})\r\n\t}\r\n\r\n\tpublic listen(listener: (...args: A) => unknown): () => void {\r\n\t\tthis.#listeners.push(listener)\r\n\t\treturn () => { remove(this.#listeners, listener) }\r\n\t}\r\n}\r\n\r\nexport type PromisePromise<T> = Promise<{\r\n\treadonly promise: Promise<T>\r\n\treadonly resolve: (value: AsyncOrSync<T>) => void\r\n\treadonly reject: (reason?: unknown) => void\r\n}>\r\n\r\nexport class Functions<\r\n\tAsync extends boolean = false,\r\n\tArgs extends readonly unknown[] = [],\r\n> extends Array<\r\n\tAsync extends true ? (\r\n\t\t...args: Args\r\n\t) => unknown : Async extends false ? (\r\n\t\t...args: Args\r\n\t) => void : never> {\r\n\tpublic constructor(\r\n\t\tprotected readonly options: {\r\n\t\t\treadonly async: Async\r\n\t\t\treadonly settled?: boolean\r\n\t\t},\r\n\t\t...args: readonly (Async extends true ? (\r\n\t\t\t...args: Args\r\n\t\t) => unknown : Async extends false ? (\r\n\t\t\t...args: Args\r\n\t\t) => void : never)[]\r\n\t) {\r\n\t\tsuper(...args)\r\n\t}\r\n\r\n\tpublic transform(func: (\r\n\t\tself0: this[number][],\r\n\t) => readonly this[number][]): Functions<Async, Args> {\r\n\t\treturn new Functions(this.options, ...func(this))\r\n\t}\r\n\r\n\tpublic call(...args: Args): Async extends true\r\n\t\t// eslint-disable-next-line @typescript-eslint/no-invalid-void-type\r\n\t\t? Promise<void> : Async extends false ? void : never {\r\n\t\treturn this.call0(null, ...args)\r\n\t}\r\n\r\n\tpublic call0(\r\n\t\tthisArg: unknown,\r\n\t\t...args: Args\r\n\t): Async extends true\r\n\t\t// eslint-disable-next-line @typescript-eslint/no-invalid-void-type\r\n\t\t? Promise<void> : Async extends false ? void : never\r\n\tpublic call0(thisArg: unknown, ...args: Args): AsyncOrSync<void> {\r\n\t\tconst { async, settled } = this.options\r\n\t\tif (async) {\r\n\t\t\treturn (async (): Promise<void> => {\r\n\t\t\t\tconst promises = this.map(async func => {\r\n\t\t\t\t\tawait func.call(thisArg, ...args)\r\n\t\t\t\t})\r\n\t\t\t\tif (settled ?? false) {\r\n\t\t\t\t\tawait Promise.allSettled(promises)\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\t\t\t\tawait Promise.all(promises)\r\n\t\t\t})()\r\n\t\t}\r\n\t\tthis.forEach(settled ?? false\r\n\t\t\t? (func): void => {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tfunc.call(thisArg, ...args)\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tself.console.error(error)\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t: (func): void => { func.call(thisArg, ...args) })\r\n\t\treturn void 0\r\n\t}\r\n}\r\n\r\nexport async function acquireConditionally<T>(\r\n\tlock: AsyncLock,\r\n\tkey: string[] | string,\r\n\tcondition: boolean,\r\n\tfn: () => PromiseLike<T> | T,\r\n): Promise<T> {\r\n\treturn condition ? lock.acquire(key, fn) : fn()\r\n}\r\n\r\nexport function alternativeRegExp(strs: readonly string[]): RegExp {\r\n\treturn isEmpty(strs)\r\n\t\t? NEVER_REGEX_G\r\n\t\t: new RegExp(\r\n\t\t\t[...strs]\r\n\t\t\t\t.sort(({ length: left }, { length: right }) => right - left)\r\n\t\t\t\t.map(escapeRegExp)\r\n\t\t\t\t.join(\"|\"),\r\n\t\t\t\"gu\",\r\n\t\t)\r\n}\r\n\r\nexport function anyToError(obj: unknown): Error {\r\n\treturn obj instanceof Error ? obj : new Error(String(obj))\r\n}\r\n\r\nexport function aroundIdentityFactory<T extends (this: unknown,\r\n\t...args: readonly unknown[]\r\n) => unknown>() {\r\n\treturn (proto: T) => function fn(\r\n\t\tthis: ThisParameterType<T>,\r\n\t\t...args: Parameters<T>\r\n\t): ReturnType<T> {\r\n\t\treturn proto.apply(this, args) as ReturnType<T>\r\n\t}\r\n}\r\n\r\nexport function assignExact<K extends keyof any, T extends {\r\n\t[_ in K]?: unknown\r\n}>(self0: T, key: K & keyof T, value?: T[K]): typeof value {\r\n\tif (value === void 0) {\r\n\t\t// eslint-disable-next-line @typescript-eslint/no-dynamic-delete\r\n\t\tdelete self0[key]\r\n\t} else {\r\n\t\tself0[key] = value\r\n\t}\r\n\treturn value\r\n}\r\n\r\nexport function asyncDebounce<\r\n\tA extends readonly unknown[], R,\r\n>(func: DebouncedFunc<(\r\n\tresolve: (value: AsyncOrSync<R>) => void,\r\n\treject: (reason?: unknown) => void,\r\n\t...args: A) => void>): (...args: A) => Promise<R> {\r\n\tconst promises: {\r\n\t\treadonly resolve: (value: AsyncOrSync<R>) => void\r\n\t\treadonly reject: (reason?: unknown) => void\r\n\t}[] = []\r\n\treturn async (...args: A): Promise<R> =>\r\n\t\tnew Promise((resolve, reject) => {\r\n\t\t\tpromises.push({ reject, resolve })\r\n\t\t\tfunc(value => {\r\n\t\t\t\tfor (const promise of promises.splice(0)) {\r\n\t\t\t\t\tpromise.resolve(value)\r\n\t\t\t\t}\r\n\t\t\t}, error => {\r\n\t\t\t\tfor (const promise of promises.splice(0)) {\r\n\t\t\t\t\tpromise.reject(error)\r\n\t\t\t\t}\r\n\t\t\t}, ...args)\r\n\t\t})\r\n}\r\n\r\nexport function asyncFunction(\r\n\tself0: typeof globalThis,\r\n): AsyncFunctionConstructor {\r\n\treturn self0.eval(\"(async()=>{}).constructor\") as AsyncFunctionConstructor\r\n}\r\n\r\nexport function base64ToBytes(base64: Base64String): Uint8Array {\r\n\treturn Uint8Array.from(self.atob(base64), byte => byte.codePointAt(0) ?? NaN)\r\n}\r\n\r\nexport function base64ToString(base64: Base64String): string {\r\n\treturn new TextDecoder().decode(base64ToBytes(base64))\r\n}\r\n\r\nexport function basename(path: string, ext = \"\"): string {\r\n\tconst ret = path.slice(Math.max(\r\n\t\tpath.lastIndexOf(\"/\"),\r\n\t\tpath.lastIndexOf(\"\\\\\"),\r\n\t) + 1)\r\n\treturn ret.endsWith(ext) ? ret.slice(0, ret.length - ext.length) : ret\r\n}\r\n\r\nexport function bigIntReplacer(): (key: string, value: unknown) => unknown {\r\n\treturn (_0, value) => {\r\n\t\tif (typeof value === \"bigint\") {\r\n\t\t\treturn value.toString()\r\n\t\t}\r\n\t\treturn value\r\n\t}\r\n}\r\n\r\nexport function bracket<T extends object, K extends keyof any>(\r\n\tself0: T,\r\n\tkey: K,\r\n): { readonly valid: false; readonly value?: never }\r\n\t| { readonly valid: true; readonly value: T[K & keyof T] } {\r\n\tconst proof = typedIn(self0, key)\r\n\treturn Object.freeze(proof\r\n\t\t? { valid: true, value: proof() }\r\n\t\t: { valid: false })\r\n}\r\n\r\nexport function bytesToBase64(bytes: Uint8Array): Base64String {\r\n\treturn self.btoa(Array\r\n\t\t.from(bytes, byte => String.fromCodePoint(byte))\r\n\t\t.join(\"\")) as Base64String\r\n}\r\n\r\nexport function capitalize(\r\n\tstr: string,\r\n\tlocales?: string[] | string,\r\n): string {\r\n\treturn mapFirstCodePoint(str, first => first.toLocaleUpperCase(locales))\r\n}\r\n\r\n// eslint-disable-next-line @typescript-eslint/explicit-function-return-type, @typescript-eslint/explicit-module-boundary-types\r\nexport function cartesianProduct<T extends readonly (readonly unknown[])[],\r\n>(...arrays: T) {\r\n\treturn deepFreeze(arrays.reduce((acc, arr) => acc\r\n\t\t.flatMap(comb => arr.map(ele => [comb, ele].flat())), [[]])) as\r\n\t\treadonly ({ readonly [I in keyof T]: T[I][number] } &\r\n\t\t{ readonly length: T[\"length\"] })[]\r\n}\r\n\r\nexport function clear(self0: unknown[]): void {\r\n\tself0.length = 0\r\n}\r\n\r\nexport function clearProperties(self0: object): void {\r\n\tfor (const key of typedOwnKeys(self0)) {\r\n\t\t// eslint-disable-next-line @typescript-eslint/no-dynamic-delete\r\n\t\tdelete self0[key]\r\n\t}\r\n}\r\n\r\nexport function cloneAsFrozen<T>(\r\n\tobj: T,\r\n\tcloner: <V>(value: V) => V = structuredClone,\r\n): DeepReadonly<T> {\r\n\treturn simplifyType(deepFreeze(cloneAsWritable(obj, cloner)))\r\n}\r\n\r\nexport function cloneAsWritable<T>(\r\n\tobj: T,\r\n\tcloner: <V>(value: V) => V = structuredClone,\r\n): DeepWritable<T> {\r\n\t// `readonly` is fake at runtime\r\n\treturn cloner(obj) as DeepWritable<T>\r\n}\r\n\r\nexport function consumeEvent(event: Event): void {\r\n\tevent.preventDefault()\r\n\tevent.stopPropagation()\r\n}\r\n\r\nexport function copyOnWrite<T extends object>(\r\n\tobj: DeepReadonly<T>,\r\n\tmutator: (obj: DeepWritable<T>) => void,\r\n): DeepReadonly<T> {\r\n\tconst ret = simplifyType<T>(cloneAsWritable(obj))\r\n\tmutator(ret)\r\n\treturn simplifyType<T>(deepFreeze(ret))\r\n}\r\n\r\nexport async function copyOnWriteAsync<T extends object>(\r\n\tobj: DeepReadonly<T>,\r\n\tmutator: (obj: DeepWritable<T>) => unknown,\r\n): Promise<DeepReadonly<T>> {\r\n\tconst ret = simplifyType<T>(cloneAsWritable(obj))\r\n\tawait mutator(ret)\r\n\treturn simplifyType<T>(deepFreeze(ret))\r\n}\r\n\r\nexport function createChildElement<K extends keyof HTMLElementTagNameMap>(\r\n\telement: ParentNode & { readonly ownerDocument: Document },\r\n\ttype: K,\r\n\tcallback = (_element: HTMLElementTagNameMap[K]): void => { },\r\n\toptions?: ElementCreationOptions,\r\n): HTMLElementTagNameMap[K] {\r\n\tconst ret = element.ownerDocument.createElement(type, options)\r\n\telement.append(ret)\r\n\tcallback(ret)\r\n\treturn ret\r\n}\r\n\r\nexport function createDocumentFragment(\r\n\tself0: Document,\r\n\tcallback: (fragment: DocumentFragment) => void,\r\n): DocumentFragment {\r\n\tconst ret = self0.createDocumentFragment()\r\n\tcallback(ret)\r\n\treturn ret\r\n}\r\n\r\nexport function deepFreeze<const T>(value: T): DeepReadonly<T> {\r\n\treturn deepFreeze0(value, new WeakSet())\r\n}\r\nfunction deepFreeze0<T>(value: T, freezing: WeakSet<object>): DeepReadonly<T> {\r\n\tif (typeof value === \"object\" && value) {\r\n\t\tfreezing.add(value)\r\n\t\tfor (const subkey of typedOwnKeys(value)) {\r\n\t\t\tconst subvalue = value[subkey]\r\n\t\t\tif (isObject(subvalue) && !freezing.has(subvalue)) {\r\n\t\t\t\tdeepFreeze0(subvalue, freezing)\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\treturn Object.freeze(value) as DeepReadonly<T>\r\n}\r\n\r\n// Feature request: https://github.com/sveltejs/svelte/issues/4056\r\nexport function destroyWithOutro(self0: SvelteComponent): void {\r\n\tconst { $$: { fragment } } = self0\r\n\tif (fragment !== false && fragment) {\r\n\t\ttry {\r\n\t\t\t$groupOutros()\r\n\t\t\t$transitionOut(fragment, 0, 0, () => { self0.$destroy() })\r\n\t\t\t$checkOutros()\r\n\t\t} catch (error) {\r\n\t\t\tself.console.error(error)\r\n\t\t\tself0.$destroy()\r\n\t\t}\r\n\t} else {\r\n\t\tself0.$destroy()\r\n\t}\r\n}\r\n\r\nexport function escapeJavaScriptString(value: string): string {\r\n\treturn `\\`${value.replace(/(?<char>`|\\\\|\\$)/ug, \"\\\\$<char>\")}\\``\r\n}\r\n\r\nexport function escapeQuerySelectorAttribute(value: string): string {\r\n\treturn multireplace(value, new Map([\r\n\t\t[\"\\\"\", \"\\\\\\\"\"],\r\n\t\t[\"\\\\\", \"\\\\\\\\\"],\r\n\t]))\r\n}\r\n\r\nexport function extname(path: string): string {\r\n\tconst base = basename(path),\r\n\t\tidx = base.lastIndexOf(\".\")\r\n\treturn idx === -1 ? \"\" : base.slice(idx)\r\n}\r\n\r\nexport function getKeyModifiers(\r\n\tevent: KeyboardEvent,\r\n): readonly KeyModifier[] {\r\n\tconst ret: KeyModifier[] = []\r\n\tif (event.altKey) { ret.push(\"Alt\") }\r\n\tif (event.ctrlKey) { ret.push(\"Ctrl\") }\r\n\tif (event.metaKey) { ret.push(\"Meta\") }\r\n\tif (event.shiftKey) { ret.push(\"Shift\") }\r\n\treturn deepFreeze(ret)\r\n}\r\n\r\nexport function typedIn<T extends object, K extends keyof any>(\r\n\tself0: T,\r\n\tkey: K,\r\n): (() => T[K & keyof T]) | null {\r\n\tif (key in self0) {\r\n\t\treturn () => self0[key as K & keyof T]\r\n\t}\r\n\treturn null\r\n}\r\n\r\nexport function typedOwnKeys<T extends object>(\r\n\tself0: T,\r\n): (keyof T & (string | symbol))[] {\r\n\treturn Reflect.ownKeys(self0) as (keyof T & (string | symbol))[]\r\n}\r\n\r\nexport function typedKeys<T extends readonly (keyof any)[]>() {\r\n\treturn <O extends (keyof O extends T[number] ? {\r\n\t\treadonly [_ in T[number]]: unknown\r\n\t} : never)>(obj: O): Readonly<T> =>\r\n\t\tdeepFreeze(Object.keys(obj)) as T\r\n}\r\n\r\nexport function inSet<const T extends ReadonlyTuple>(\r\n\tset: T,\r\n\tobj: unknown,\r\n): obj is T[number] {\r\n\treturn contravariant(set).includes(obj)\r\n}\r\n\r\nexport function insertAt<T>(\r\n\tself0: T[],\r\n\tindex: number,\r\n\t...items: readonly T[]\r\n): void {\r\n\tself0.splice(index, 0, ...items)\r\n}\r\n\r\nexport function instanceOf<T extends Node | UIEvent>(\r\n\tself0: unknown,\r\n\ttype: Newable<T>,\r\n): self0 is T {\r\n\tif (!isObject(self0)) { return false }\r\n\tif (self0 instanceof type) { return true }\r\n\tconst { name } = type,\r\n\t\ttypeMain: unknown = Reflect.get(self, name)\r\n\tif (typeof typeMain === \"function\" && self0 instanceof typeMain) {\r\n\t\treturn true\r\n\t}\r\n\tconst\r\n\t\twin = \"ownerDocument\" in self0\r\n\t\t\t? launderUnchecked<AnyObject>(self0.ownerDocument)[\"defaultView\"]\r\n\t\t\t: launderUnchecked<AnyObject>(self0)[\"view\"],\r\n\t\ttypeWin: unknown = isObject(win) ? Reflect.get(win, name) : null\r\n\tif (typeof typeWin === \"function\" && self0 instanceof typeWin) {\r\n\t\treturn true\r\n\t}\r\n\treturn false\r\n}\r\n\r\nexport function isHomogenousArray<T extends PrimitiveTypeE>(\r\n\ttypes: readonly T[],\r\n\tvalue: unknown,\r\n): value is TypeofMapE[T][] {\r\n\tif (!Array.isArray(value)) { return false }\r\n\treturn value.every(element => genericTypeofGuardE(types, element))\r\n}\r\n\r\nexport function isNonNil<T>(\r\n\tvalue: (T & (null | undefined)) extends never ? never : T,\r\n): value is (T & (null | undefined)) extends never ? never : NonNullable<T> {\r\n\treturn !isNil(value)\r\n}\r\n\r\nexport function lazyInit<T>(initializer: () => T): () => T {\r\n\tlet cache: {\r\n\t\treadonly init: false\r\n\t\treadonly value: null\r\n\t} | {\r\n\t\treadonly init: true\r\n\t\treadonly value: T\r\n\t} = { init: false, value: null }\r\n\treturn () => {\r\n\t\tconst cache0 = cache.init\r\n\t\t\t? cache\r\n\t\t\t: cache = { init: true, value: initializer() }\r\n\t\treturn cache0.value\r\n\t}\r\n}\r\n\r\n// eslint-disable-next-line @typescript-eslint/ban-types\r\nexport function lazyProxy<T extends Function | object>(\r\n\tinitializer: () => T,\r\n): T {\r\n\tconst lazy = lazyInit(initializer),\r\n\t\tfunctions = new Map(),\r\n\t\tproxy = new Proxy(lazy, {\r\n\t\t\tapply(target, thisArg, argArray): unknown {\r\n\t\t\t\tconst target0 = target()\r\n\t\t\t\tif (typeof target0 !== \"function\") {\r\n\t\t\t\t\tthrow new TypeError(String(target0))\r\n\t\t\t\t}\r\n\t\t\t\treturn Reflect.apply(\r\n\t\t\t\t\ttarget0,\r\n\t\t\t\t\tthisArg === target ? target() : thisArg,\r\n\t\t\t\t\targArray,\r\n\t\t\t\t)\r\n\t\t\t},\r\n\t\t\tconstruct(target, argArray, newTarget): object {\r\n\t\t\t\tconst target0 = target()\r\n\t\t\t\tif (typeof target0 !== \"function\") {\r\n\t\t\t\t\tthrow new TypeError(String(target0))\r\n\t\t\t\t}\r\n\t\t\t\tconst ret: unknown = Reflect.construct(\r\n\t\t\t\t\ttarget0,\r\n\t\t\t\t\targArray,\r\n\t\t\t\t\tnewTarget === target ? target0 : newTarget,\r\n\t\t\t\t)\r\n\t\t\t\tif (isObject(ret)) { return ret }\r\n\t\t\t\tthrow new TypeError(String(ret))\r\n\t\t\t},\r\n\t\t\tdefineProperty(target, property, attributes): boolean {\r\n\t\t\t\tif (!(attributes.configurable ?? true) &&\r\n\t\t\t\t\t!Reflect.defineProperty(target, property, attributes)) {\r\n\t\t\t\t\treturn false\r\n\t\t\t\t}\r\n\t\t\t\treturn Reflect.defineProperty(target(), property, attributes)\r\n\t\t\t},\r\n\t\t\tdeleteProperty(target, property): boolean {\r\n\t\t\t\tconst own = Reflect.getOwnPropertyDescriptor(target, property)\r\n\t\t\t\tif (!(own?.configurable ?? true) &&\r\n\t\t\t\t\t!Reflect.deleteProperty(target, property)) {\r\n\t\t\t\t\treturn false\r\n\t\t\t\t}\r\n\t\t\t\treturn Reflect.deleteProperty(target(), property)\r\n\t\t\t},\r\n\t\t\tget(target, property, receiver): unknown {\r\n\t\t\t\tconst own = Reflect.getOwnPropertyDescriptor(target, property)\r\n\t\t\t\tif (!(own?.configurable ?? true) &&\r\n\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-extra-parens\r\n\t\t\t\t\t(!(own?.writable ?? true) || (own?.set && !own.get))) {\r\n\t\t\t\t\treturn Reflect.get(target, property, receiver)\r\n\t\t\t\t}\r\n\t\t\t\tconst ret = Reflect.get(\r\n\t\t\t\t\ttarget(),\r\n\t\t\t\t\tproperty,\r\n\t\t\t\t\treceiver === target ? target() : receiver,\r\n\t\t\t\t)\r\n\t\t\t\tif (typeof ret === \"function\") {\r\n\t\t\t\t\tconst ret0 = ret\r\n\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/explicit-function-return-type\r\n\t\t\t\t\treturn functions.get(ret) ?? (() => {\r\n\t\t\t\t\t\tfunction fn(\r\n\t\t\t\t\t\t\tthis: unknown,\r\n\t\t\t\t\t\t\t...args: readonly unknown[]\r\n\t\t\t\t\t\t): unknown {\r\n\t\t\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition, @typescript-eslint/strict-boolean-expressions\r\n\t\t\t\t\t\t\tif (new.target) {\r\n\t\t\t\t\t\t\t\treturn Reflect.construct(\r\n\t\t\t\t\t\t\t\t\tret0,\r\n\t\t\t\t\t\t\t\t\targs,\r\n\t\t\t\t\t\t\t\t\tnew.target === fn ? ret0 : new.target,\r\n\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\treturn Reflect.apply(\r\n\t\t\t\t\t\t\t\tret0,\r\n\t\t\t\t\t\t\t\tthis === proxy ? target() : this,\r\n\t\t\t\t\t\t\t\targs,\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tfunctions.set(ret, fn)\r\n\t\t\t\t\t\treturn fn\r\n\t\t\t\t\t})()\r\n\t\t\t\t}\r\n\t\t\t\treturn ret\r\n\t\t\t},\r\n\t\t\tgetOwnPropertyDescriptor(\r\n\t\t\t\ttarget,\r\n\t\t\t\tproperty,\r\n\t\t\t): PropertyDescriptor | undefined {\r\n\t\t\t\tlet ret = Reflect.getOwnPropertyDescriptor(target(), property)\r\n\t\t\t\tif (ret && !(ret.configurable ?? true) &&\r\n\t\t\t\t\t!Reflect.defineProperty(target, property, ret)) {\r\n\t\t\t\t\tret = void 0\r\n\t\t\t\t}\r\n\t\t\t\treturn ret\r\n\t\t\t},\r\n\t\t\tgetPrototypeOf(target): object | null {\r\n\t\t\t\treturn Reflect.getPrototypeOf(target())\r\n\t\t\t},\r\n\t\t\thas(target, property): boolean {\r\n\t\t\t\treturn Reflect.getOwnPropertyDescriptor(target, property)\r\n\t\t\t\t\t?.configurable ?? true\r\n\t\t\t\t\t? Reflect.has(target(), property)\r\n\t\t\t\t\t: Reflect.has(target, property)\r\n\t\t\t},\r\n\t\t\tisExtensible(target): boolean {\r\n\t\t\t\treturn Reflect.isExtensible(target)\r\n\t\t\t},\r\n\t\t\townKeys(target): ArrayLike<string | symbol> {\r\n\t\t\t\treturn [\r\n\t\t\t\t\t...new Set([\r\n\t\t\t\t\t\tReflect.ownKeys(target()),\r\n\t\t\t\t\t\tReflect.ownKeys(target)\r\n\t\t\t\t\t\t\t.filter(key => !(Reflect.getOwnPropertyDescriptor(target, key)\r\n\t\t\t\t\t\t\t\t?.configurable ?? true)),\r\n\t\t\t\t\t].flat()),\r\n\t\t\t\t]\r\n\t\t\t},\r\n\t\t\tpreventExtensions(target): boolean {\r\n\t\t\t\treturn Reflect.preventExtensions(target)\r\n\t\t\t},\r\n\t\t\tset(target, property, newValue, receiver): boolean {\r\n\t\t\t\tconst own = Reflect.getOwnPropertyDescriptor(target, property)\r\n\t\t\t\tif (!(own?.configurable ?? true) &&\r\n\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-extra-parens\r\n\t\t\t\t\t(!(own?.writable ?? true) || (own?.get && !own.set)) &&\r\n\t\t\t\t\t!Reflect.set(target, property, newValue, receiver)) {\r\n\t\t\t\t\treturn false\r\n\t\t\t\t}\r\n\t\t\t\treturn Reflect.set(\r\n\t\t\t\t\ttarget(),\r\n\t\t\t\t\tproperty,\r\n\t\t\t\t\tnewValue,\r\n\t\t\t\t\treceiver === target ? target() : receiver,\r\n\t\t\t\t)\r\n\t\t\t},\r\n\t\t\tsetPrototypeOf(target, proto): boolean {\r\n\t\t\t\treturn Reflect.setPrototypeOf(target(), proto)\r\n\t\t\t},\r\n\t\t} satisfies Required<ProxyHandler<typeof lazy>>)\r\n\treturn proxy as T\r\n}\r\n\r\nexport function logFormat(\r\n\toptions: Options,\r\n\t...args: readonly unknown[]\r\n): string {\r\n\tif (isEmpty(args)) { return \"\" }\r\n\tconst\r\n\t\tstringify0 = (param: unknown): string => {\r\n\t\t\ttry {\r\n\t\t\t\treturn inspect(param, options)\r\n\t\t\t} catch {\r\n\t\t\t\t// Do not log\r\n\t\t\t\treturn String(param)\r\n\t\t\t}\r\n\t\t},\r\n\t\t[format, ...rest] = args\r\n\tif (typeof format === \"string\") {\r\n\t\treturn [\r\n\t\t\t...(function* fn(): Generator<string, void> {\r\n\t\t\t\tconst params = rest[Symbol.iterator]()\r\n\t\t\t\tlet back = 0\r\n\t\t\t\tfor (let sub = format.indexOf(\"%\");\r\n\t\t\t\t\tsub !== -1;\r\n\t\t\t\t\tsub = format.indexOf(\"%\", back)) {\r\n\t\t\t\t\tyield format.slice(back, sub)\r\n\t\t\t\t\tback = sub + \"%\".length\r\n\t\t\t\t\tconst type = format.codePointAt(back)\r\n\t\t\t\t\tif (type === void 0) {\r\n\t\t\t\t\t\tyield \"%\"\r\n\t\t\t\t\t\tcontinue\r\n\t\t\t\t\t}\r\n\t\t\t\t\tconst type0 = String.fromCodePoint(type)\r\n\t\t\t\t\tback += type0.length\r\n\t\t\t\t\tlet func: ((param: unknown) => string) | null = null\r\n\t\t\t\t\tswitch (type0) {\r\n\t\t\t\t\t\tcase \"%\":\r\n\t\t\t\t\t\t\tyield \"%%\"\r\n\t\t\t\t\t\t\tbreak\r\n\t\t\t\t\t\tcase \"s\":\r\n\t\t\t\t\t\t\tfunc = (param): string => String(param)\r\n\t\t\t\t\t\t\tbreak\r\n\t\t\t\t\t\tcase \"o\":\r\n\t\t\t\t\t\tcase \"O\":\r\n\t\t\t\t\t\t\tfunc = stringify0\r\n\t\t\t\t\t\t\tbreak\r\n\t\t\t\t\t\tcase \"f\":\r\n\t\t\t\t\t\t\tfunc = (param): string => Number(param).toString()\r\n\t\t\t\t\t\t\tbreak\r\n\t\t\t\t\t\tcase \"d\":\r\n\t\t\t\t\t\tcase \"i\":\r\n\t\t\t\t\t\t\tfunc = (param): string => Math.trunc(Number(param)).toString()\r\n\t\t\t\t\t\t\tbreak\r\n\t\t\t\t\t\tcase \"c\":\r\n\t\t\t\t\t\t\t// CSS unsupported\r\n\t\t\t\t\t\t\tfunc = (): string => \"\"\r\n\t\t\t\t\t\t\tbreak\r\n\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\tyield `%${type0}`\r\n\t\t\t\t\t\t\tbreak\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (func) {\r\n\t\t\t\t\t\tconst param = params.next()\r\n\t\t\t\t\t\tif (param.done ?? false) {\r\n\t\t\t\t\t\t\tyield `%${type0}`\r\n\t\t\t\t\t\t\tbreak\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tyield func(param.value)\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tyield format.slice(back)\r\n\t\t\t\tfor (const param of params) {\r\n\t\t\t\t\tyield ` ${stringify0(param)}`\r\n\t\t\t\t}\r\n\t\t\t}()),\r\n\t\t].join(\"\")\r\n\t}\r\n\treturn args.map(stringify0).join(\" \")\r\n}\r\n\r\nexport function mapFirstCodePoint(\r\n\tstr: string,\r\n\tmap: (value: string) => string,\r\n\tmapRest: (value: string) => string = identity,\r\n): string {\r\n\tconst cp0 = str.codePointAt(0)\r\n\tif (cp0 === void 0) { return \"\" }\r\n\tconst char0 = String.fromCodePoint(cp0)\r\n\treturn `${map(char0)}${mapRest(str.slice(char0.length))}`\r\n}\r\n\r\nexport function multireplace(\r\n\tself0: string,\r\n\treplacements: Map<string, string>,\r\n): string {\r\n\treturn self0.replace(\r\n\t\talternativeRegExp(Object.keys(replacements)),\r\n\t\tmatch => replacements.get(match) ?? match,\r\n\t)\r\n}\r\n\r\nexport function onResize(\r\n\telement: Element,\r\n\tcallback: (entry: ResizeObserverEntry) => void,\r\n): ResizeObserver {\r\n\tconst ret = new (activeSelf(element).ResizeObserver)(ents => {\r\n\t\tconst ent = ents.at(-1)\r\n\t\tif (ent) { callback(ent) }\r\n\t})\r\n\tret.observe(element)\r\n\treturn ret\r\n}\r\n\r\nexport function onVisible(\r\n\telement: Element,\r\n\tcallback: (entry: IntersectionObserverEntry) => void,\r\n\ttransient = false,\r\n): IntersectionObserver {\r\n\tconst ret = new (activeSelf(element).IntersectionObserver)(ents => {\r\n\t\tfor (const ent of transient\r\n\t\t\t? ents.reverse()\r\n\t\t\t: [ents.at(-1) ?? { isIntersecting: false }]) {\r\n\t\t\tif (ent.isIntersecting) {\r\n\t\t\t\tcallback(ent)\r\n\t\t\t\tbreak\r\n\t\t\t}\r\n\t\t}\r\n\t})\r\n\tret.observe(element)\r\n\treturn ret\r\n}\r\n\r\nexport function openExternal(self0: Window, url?: URL | string): Window | null {\r\n\treturn self0.open(url, \"_blank\", \"noreferrer\")\r\n}\r\n\r\nexport async function promisePromise<T = void>(): PromisePromise<T> {\r\n\treturn new Promise(resolve0 => {\r\n\t\tconst promise = new Promise<T>((resolve, reject) => {\r\n\t\t\tresolve0(Promise.resolve()\r\n\t\t\t\t.then(() => ({ promise, reject, resolve })))\r\n\t\t})\r\n\t})\r\n}\r\n\r\nexport function randomNotIn(\r\n\tself0: readonly string[],\r\n\tgenerator = (): string => self.crypto.randomUUID(),\r\n): string {\r\n\tlet ret = generator()\r\n\twhile (self0.includes(ret)) { ret = generator() }\r\n\treturn ret\r\n}\r\n\r\nexport function rangeCodePoint(\r\n\tstart: CodePoint,\r\n\tend?: CodePoint,\r\n\tstep?: number,\r\n): readonly string[] {\r\n\treturn deepFreeze(\r\n\t\trange(start.codePointAt(0), end?.codePointAt(0), step)\r\n\t\t\t.map(cp => String.fromCodePoint(cp)),\r\n\t)\r\n}\r\n\r\nexport function remove<T>(self0: T[], item: T): T | undefined {\r\n\treturn removeAt(self0, self0.indexOf(item))\r\n}\r\n\r\nexport function removeAt<T>(self0: T[], index: number): T | undefined {\r\n\treturn self0.splice(index, 1)[0]\r\n}\r\n\r\nexport function replaceAllRegex(string: string): RegExp {\r\n\treturn new RegExp(escapeRegExp(string), \"ug\")\r\n}\r\n\r\nexport function splitLines(\r\n\tstr: string,\r\n\tdelimiter = /\\r\\n|[\\n\\v\\f\\r\\x85\\u2028\\u2029]/u,\r\n): readonly string[] {\r\n\treturn str.split(delimiter)\r\n}\r\n\r\nexport function startCase(str: string, locales?: string[] | string): string {\r\n\treturn str.replace(/\\w\\S*/gu, ss => mapFirstCodePoint(\r\n\t\tss,\r\n\t\tstr0 => str0.toLocaleUpperCase(locales),\r\n\t\tstr0 => str0.toLocaleLowerCase(locales),\r\n\t))\r\n}\r\n\r\nexport function stringToBase64(string: string): Base64String {\r\n\treturn bytesToBase64(new TextEncoder().encode(string))\r\n}\r\n\r\nexport function activeSelf(\r\n\treference?: Element | UIEvent | null,\r\n): Window & typeof globalThis {\r\n\tif (reference) {\r\n\t\tif (\"ownerDocument\" in reference) {\r\n\t\t\tconst { ownerDocument: { defaultView } } = reference\r\n\t\t\tif (defaultView) { return defaultView }\r\n\t\t}\r\n\t\tif (\"view\" in reference) {\r\n\t\t\tconst { view } = reference\r\n\t\t\tif (view) { return correctType(view) }\r\n\t\t}\r\n\t\tcorrectType(self.activeWindow).console.warn(reference)\r\n\t}\r\n\treturn correctType(self.activeWindow)\r\n}\r\n\r\nexport async function sleep2(\r\n\tself0: WindowOrWorkerGlobalScope,\r\n\ttimeInSeconds: number,\r\n): Promise<void> {\r\n\treturn new Promise(resolve => {\r\n\t\tself0.setTimeout(resolve, timeInSeconds * SI_PREFIX_SCALE)\r\n\t})\r\n}\r\n\r\nexport function swap(self0: unknown[], left: number, right: number): void {\r\n\t[self0[left], self0[right]] = [self0[right], self0[left]]\r\n}\r\n\r\nexport function uncapitalize(\r\n\tstr: string,\r\n\tlocales?: string[] | string,\r\n): string {\r\n\treturn mapFirstCodePoint(str, first => first.toLocaleLowerCase(locales))\r\n}\r\n\r\nexport function unexpected(): never {\r\n\tthrow new Error()\r\n}\r\n", "import type { Plugin, TransformOptions } from \"esbuild\"\r\nimport { assignExact, escapeJavaScriptString as escJSStr } from \"../util.js\"\r\nimport { readFile, writeFile } from \"node:fs/promises\"\r\nimport { fileURLToPath } from \"node:url\"\r\nimport { isEmpty } from \"lodash-es\"\r\nimport lzString from \"lz-string\"\r\nimport { resolve } from \"import-meta-resolve\"\r\n\r\nconst { compressToBase64 } = lzString,\r\n\tNAME = \"compress\"\r\n\r\nexport interface Options {\r\n\treadonly enable?: boolean | undefined\r\n\treadonly name?: string | undefined\r\n}\r\n\r\nexport default function esbuildCompress(options?: Options): Plugin {\r\n\treturn {\r\n\t\tname: options?.name ?? NAME,\r\n\t\tsetup(build): void {\r\n\t\t\tif (options?.enable === false) { return }\r\n\t\t\tconst { esbuild, initialOptions } = build,\r\n\t\t\t\twrite = initialOptions.write ?? true\r\n\t\t\t// Await https://github.com/evanw/esbuild/issues/2999\r\n\t\t\tinitialOptions.write = false\r\n\t\t\tbuild.onEnd(async ({ errors, outputFiles }) => {\r\n\t\t\t\tif (!isEmpty(errors) || !outputFiles) { return }\r\n\t\t\t\tconst main = outputFiles.find(({ path }) => path.endsWith(\".js\"))\r\n\t\t\t\tif (main) {\r\n\t\t\t\t\tconst { path, text } = main,\r\n\t\t\t\t\t\ttOpts: TransformOptions = {\r\n\t\t\t\t\t\t\tloader: \"js\",\r\n\t\t\t\t\t\t\tsourcefile: path,\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\tfor (const key of [\r\n\t\t\t\t\t\t\"charset\",\r\n\t\t\t\t\t\t\"color\",\r\n\t\t\t\t\t\t\"define\",\r\n\t\t\t\t\t\t\"drop\",\r\n\t\t\t\t\t\t// \"dropLabels\",\r\n\t\t\t\t\t\t\"format\",\r\n\t\t\t\t\t\t\"globalName\",\r\n\t\t\t\t\t\t\"ignoreAnnotations\",\r\n\t\t\t\t\t\t\"jsx\",\r\n\t\t\t\t\t\t\"jsxDev\",\r\n\t\t\t\t\t\t\"jsxFactory\",\r\n\t\t\t\t\t\t\"jsxFragment\",\r\n\t\t\t\t\t\t\"jsxImportSource\",\r\n\t\t\t\t\t\t\"jsxSideEffects\",\r\n\t\t\t\t\t\t\"keepNames\",\r\n\t\t\t\t\t\t\"legalComments\",\r\n\t\t\t\t\t\t// \"lineLimit\",\r\n\t\t\t\t\t\t\"logLevel\",\r\n\t\t\t\t\t\t\"logLimit\",\r\n\t\t\t\t\t\t\"logOverride\",\r\n\t\t\t\t\t\t\"mangleCache\",\r\n\t\t\t\t\t\t\"mangleProps\",\r\n\t\t\t\t\t\t\"mangleQuoted\",\r\n\t\t\t\t\t\t\"minify\",\r\n\t\t\t\t\t\t\"minifyIdentifiers\",\r\n\t\t\t\t\t\t\"minifySyntax\",\r\n\t\t\t\t\t\t\"minifyWhitespace\",\r\n\t\t\t\t\t\t\"platform\",\r\n\t\t\t\t\t\t\"pure\",\r\n\t\t\t\t\t\t\"reserveProps\",\r\n\t\t\t\t\t\t\"sourceRoot\",\r\n\t\t\t\t\t\t\"sourcemap\",\r\n\t\t\t\t\t\t\"sourcesContent\",\r\n\t\t\t\t\t\t\"supported\",\r\n\t\t\t\t\t\t\"target\",\r\n\t\t\t\t\t\t\"treeShaking\",\r\n\t\t\t\t\t\t// \"tsconfigRaw\",\r\n\t\t\t\t\t] as const) {\r\n\t\t\t\t\t\tassignExact(tOpts, key, initialOptions[key])\r\n\t\t\t\t\t}\r\n\t\t\t\t\tassignExact(tOpts, \"banner\", initialOptions.banner?.[\"js\"])\r\n\t\t\t\t\tassignExact(tOpts, \"footer\", initialOptions.footer?.[\"js\"])\r\n\t\t\t\t\tconst { code: lzStringBundle } = await esbuild.transform(\r\n\t\t\t\t\t\tawait readFile(\r\n\t\t\t\t\t\t\tfileURLToPath(resolve(\"lz-string\", import.meta.url)),\r\n\t\t\t\t\t\t),\r\n\t\t\t\t\t\ttOpts,\r\n\t\t\t\t\t)\r\n\t\t\t\t\tmain.contents = new TextEncoder().encode(\r\n\t\t\t\t\t\t(await esbuild.transform(\r\n\t\t\t\t\t\t\t`var a={};new Function(\"module\",${escJSStr(\r\n\t\t\t\t\t\t\t\tlzStringBundle,\r\n\t\t\t\t\t\t\t\t// eslint-disable-next-line max-len\r\n\t\t\t\t\t\t\t)})(a);new Function(\"require\",\"module\",\"exports\",a.exports.decompressFromBase64(${escJSStr(\r\n\t\t\t\t\t\t\t\tcompressToBase64(text),\r\n\t\t\t\t\t\t\t)}))(require,module,exports)`,\r\n\t\t\t\t\t\t\ttOpts,\r\n\t\t\t\t\t\t)).code,\r\n\t\t\t\t\t)\r\n\t\t\t\t}\r\n\t\t\t\tif (!write) { return }\r\n\t\t\t\tawait Promise.all(outputFiles\r\n\t\t\t\t\t.map(async ({ path, contents }) => writeFile(path, contents)))\r\n\t\t\t})\r\n\t\t},\r\n\t}\r\n}\r\n"],
5
5
  "mappings": ";AAAA,OACC,gBAAgBA,EAChB,gBAAgBC,EAChB,kBAAkBC,MACZ,kBAkBP,OAEC,gBAAAC,EACA,YAAAC,EACA,WAAAC,EACA,SAAAC,EACA,YAAAC,EACA,QAAAC,EACA,SAAAC,MACM,YAOP,OAAOC,MAA+B,uBACtC,OAAOC,MAAe,aA2If,SAASC,EAEbC,EAAUC,EAAkBC,EAA4B,CAC1D,OAAIA,IAAU,OAEb,OAAOF,EAAMC,CAAG,EAEhBD,EAAMC,CAAG,EAAIC,EAEPA,CACR,CAkMO,SAASC,EAAuBC,EAAuB,CAC7D,MAAO,KAAKA,EAAM,QAAQ,qBAAsB,WAAW,CAAC,IAC7D,CC9XA,OAAS,YAAAC,EAAU,aAAAC,MAAiB,mBACpC,OAAS,iBAAAC,MAAqB,WAC9B,OAAS,WAAAC,MAAe,YACxB,OAAOC,MAAc,YACrB,OAAS,WAAAC,MAAe,sBAExB,GAAM,CAAE,iBAAAC,CAAiB,EAAIF,EAC5BG,EAAO,WAOO,SAARC,EAAiCC,EAA2B,CAClE,MAAO,CACN,KAAMA,GAAS,MAAQF,EACvB,MAAMG,EAAa,CAClB,GAAID,GAAS,SAAW,GAAS,OACjC,GAAM,CAAE,QAAAE,EAAS,eAAAC,CAAe,EAAIF,EACnCG,EAAQD,EAAe,OAAS,GAEjCA,EAAe,MAAQ,GACvBF,EAAM,MAAM,MAAO,CAAE,OAAAI,EAAQ,YAAAC,CAAY,IAAM,CAC9C,GAAI,CAACZ,EAAQW,CAAM,GAAK,CAACC,EAAe,OACxC,IAAMC,EAAOD,EAAY,KAAK,CAAC,CAAE,KAAAE,CAAK,IAAMA,EAAK,SAAS,KAAK,CAAC,EAChE,GAAID,EAAM,CACT,GAAM,CAAE,KAAAC,EAAM,KAAAC,CAAK,EAAIF,EACtBG,EAA0B,CACzB,OAAQ,KACR,WAAYF,CACb,EACD,QAAWG,IAAO,CACjB,UACA,QACA,SACA,OAEA,SACA,aACA,oBACA,MACA,SACA,aACA,cACA,kBACA,iBACA,YACA,gBAEA,WACA,WACA,cACA,cACA,cACA,eACA,SACA,oBACA,eACA,mBACA,WACA,OACA,eACA,aACA,YACA,iBACA,YACA,SACA,aAED,EACCC,EAAYF,EAAOC,EAAKR,EAAeQ,CAAG,CAAC,EAE5CC,EAAYF,EAAO,SAAUP,EAAe,QAAS,EAAK,EAC1DS,EAAYF,EAAO,SAAUP,EAAe,QAAS,EAAK,EAC1D,GAAM,CAAE,KAAMU,CAAe,EAAI,MAAMX,EAAQ,UAC9C,MAAMX,EACLE,EAAcG,EAAQ,YAAa,YAAY,GAAG,CAAC,CACpD,EACAc,CACD,EACAH,EAAK,SAAW,IAAI,YAAY,EAAE,QAChC,MAAML,EAAQ,UACd,kCAAkCY,EACjCD,CAED,CAAC,iFAAiFC,EACjFjB,EAAiBY,CAAI,CACtB,CAAC,6BACDC,CACD,GAAG,IACJ,CACD,CACKN,GACL,MAAM,QAAQ,IAAIE,EAChB,IAAI,MAAO,CAAE,KAAAE,EAAM,SAAAO,CAAS,IAAMvB,EAAUgB,EAAMO,CAAQ,CAAC,CAAC,CAC/D,CAAC,CACF,CACD,CACD",
6
6
  "names": ["$checkOutros", "$groupOutros", "$transitionOut", "escapeRegExp", "identity", "isEmpty", "isNil", "isObject", "noop", "range", "inspect", "AsyncLock", "assignExact", "self0", "key", "value", "escapeJavaScriptString", "value", "readFile", "writeFile", "fileURLToPath", "isEmpty", "lzString", "resolve", "compressToBase64", "NAME", "esbuildCompress", "options", "build", "esbuild", "initialOptions", "write", "errors", "outputFiles", "main", "path", "text", "tOpts", "key", "assignExact", "lzStringBundle", "escapeJavaScriptString", "contents"]
7
7
  }