essor 0.0.11 → 0.0.12

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 +1 @@
1
- {"version":3,"sources":["../src/version.ts","../../shared/src/is.ts","../../shared/src/comm.ts","../../shared/src/name.ts","../../signal/dist/signal.dev.esm.js","../../template/dist/template.dev.esm.js","../src/index.ts"],"names":["essor_version","isObject","val","isArray","isString","isNil","x","isFunction","isFalsy","coerceArray","data","startsWith","str","searchString","kebabCase","string","match","offset","capitalizeFirstLetter","inputString","__defProp","__getOwnPropSymbols","__hasOwnProp","__propIsEnum","__defNormalProp","obj","key","value","__spreadValues","a","b","prop","isNull","isSet","_toString","isWeakMap","isWeakSet","isMap","isPrimitive","isHTMLElement","hasOwnProperty","hasOwn","hasChanged","oldValue","noop","isExclude","exclude","warn","msg","args","activeEffect","activeComputed","computedMap","signalMap","effectDeps","reactiveMap","arrayMethods","track","target","depsMap","dep","computedDepsMap","computedDeps","trigger","effect","computeds","computed","Signal","shallow","useReactive","newValue","isSignal","useSignal","shallowSignal","Computed","fn","prev","useComputed","isComputed","useEffect","effectFn","signalObject","initialValues","acc","unSignal","signal","isReactive","unReactive","REACTIVE_MARKER","createArrayProxy","initialValue","method","originalMethod","result","reactive","shallowReactive","unReactiveObj","handler","receiver","getValue","proxy","useWatch","source","cb","options","doWatch","getter","s","stop","_id","StoreMap","createOptionsStore","state","getters","actions","initState","reactiveState","subscriptions","actionCallbacks","store","payload","callback","index","action","createStore","_ComponentNode","template2","props","_a","_b","hook","context","node","parent","before","_c","_d","mountedNode","set","emitter","trackKey","suppressCleanupCall","_e","event","listener","cleanup","addEventListener","ComponentNode","h","_template","isHtmlTagName","convertToHtmlTag","template","TemplateNode","isJsxElement","html","closeHtmlTags","Fragment","selfClosingTags","htmlTags","coerceNode","text","insertChild","child","beforeNode","removeChild","replaceChild","setAttribute","element","attr","value2","binNode","setter","p","nextTick","eventName","input","selfClosingTagList","tagStack","output","tagPattern","lastIndex","fullMatch","tagName","isEndTag","unclosedTag","generateShortId","characters","charactersLength","i","patchChildren","childrenMap","nextChildren","children","childrenLength","range","start","replaces","nextChildrenMap","mapKeys","childIndex","currChild","currKey","getKey","origChild","patch","placeholder","next","jsxKey","_TemplateNode","cloneNode","firstChild","tree","walk","trackLastNodes","isRoot","item","path","patchChild","triggerValue","patchAttribute","cleanupBind","updateKey","nextNodes","newNode","onMount","throwIfOutsideComponent","onDestroy","useProvide","useInject","defaultValue","convertJsonToAttributes","json","renderTemplate","templateCollection","tmpl","childNodesMap","processedTemplates","propKey","idx","renderedString","renderToString","component","renderSSG","root"],"mappings":"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","file":"essor.esm.js","sourcesContent":["export const essor_version = '0.0.11';\n","import { _toString } from './comm';\n\nexport const isObject = (val: unknown): val is Record<any, any> =>\n val !== null && typeof val === 'object';\nexport function isPromise(val: any): boolean {\n return _toString.call(val) === '[object Promise]';\n}\n\nexport const isArray = Array.isArray;\n\nexport function isString(val: unknown): val is string {\n return typeof val === 'string';\n}\nexport function isNull(val: any): val is null {\n return val === null;\n}\nexport function isSymbol(val: unknown): val is symbol {\n return typeof val === 'symbol';\n}\n\nexport function isSet(val: any): val is Set<any> {\n return _toString.call(val) === '[object Set]';\n}\nexport function isWeakMap(val: any): val is WeakMap<any, any> {\n return _toString.call(val) === '[object WeakMap]';\n}\nexport function isWeakSet(val: any): val is WeakSet<any> {\n return _toString.call(val) === '[object WeakSet]';\n}\n\nexport function isMap(val: unknown): val is Map<any, any> {\n return _toString.call(val) === '[object Map]';\n}\nexport function isNil(x: any): x is null | undefined {\n return x === null || x === undefined;\n}\n\nexport const isFunction = (val: unknown): val is Function => typeof val === 'function';\n\nexport function isFalsy(x: any): x is false | null | undefined {\n return x === false || x === null || x === undefined;\n}\n\nexport const isPrimitive = (\n val: unknown,\n): val is string | number | boolean | symbol | null | undefined =>\n ['string', 'number', 'boolean', 'symbol', 'undefined'].includes(typeof val) || isNull(val);\n\nexport function isHTMLElement(obj) {\n if (!obj) return false;\n return obj && typeof obj === 'object' && obj.nodeType === 1 && typeof obj.nodeName === 'string';\n}\n","import { isFunction, isString } from './is';\n\nexport const _toString = Object.prototype.toString;\nexport const extend = Object.assign;\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\nexport const hasOwn = (val: object, key: string | symbol): key is keyof typeof val =>\n hasOwnProperty.call(val, key);\n\nexport function coerceArray<T>(data: T | T[]): T[] {\n return Array.isArray(data) ? (data.flat() as T[]) : [data];\n}\nexport const hasChanged = (value, oldValue) =>\n value !== oldValue && (value === value || oldValue === oldValue);\nexport const noop = Function.prototype as () => void;\n\n/**\n * A function that checks if a string starts with a specific substring.\n * indexOf faster under normal circumstances\n * @see https://www.measurethat.net/Benchmarks/Show/12350/0/startswith-vs-test-vs-match-vs-indexof#latest_results_block\n\n * @param {string} str - The input string to check.\n * @param {string} searchString - The substring to check for at the beginning of the input string.\n * @return {boolean} Returns true if the input string starts with the specified substring, otherwise false.\n */\nexport function startsWith(str, searchString) {\n if (!isString(str)) {\n return false;\n }\n return str.indexOf(searchString) === 0;\n}\n\n/**\n * Escapes special HTML characters in a string.\n * @param str - The string to escape.\n * @returns The escaped string.\n */\nexport function escape(str: string): string {\n return str.replaceAll(/[\"&'<>]/g, char => {\n switch (char) {\n case '&':\n return '&amp;';\n case '<':\n return '&lt;';\n case '>':\n return '&gt;';\n case '\"':\n return '&quot;';\n case \"'\":\n return '&#039;';\n default:\n return char;\n }\n });\n}\n\nexport type ExcludeType = ((key: string | symbol) => boolean) | (string | symbol)[];\n\n/**\n * Checks if a key should be excluded based on the provided exclude criteria.\n * @param key - The key to check.\n * @param exclude - The exclusion criteria.\n * @returns True if the key should be excluded, otherwise false.\n */\nexport function isExclude(key: string | symbol, exclude?: ExcludeType): boolean {\n return Array.isArray(exclude)\n ? exclude.includes(key)\n : isFunction(exclude)\n ? exclude(key)\n : false;\n}\n","export const kebabCase = (string: string): string => {\n return string.replaceAll(/[A-Z]+/g, (match, offset) => {\n return `${offset > 0 ? '-' : ''}${match.toLocaleLowerCase()}`;\n });\n};\n\nexport const camelCase = (str: string): string => {\n const s = str.replaceAll(/[\\s_-]+(.)?/g, (_, c) => (c ? c.toUpperCase() : ''));\n return s[0].toLowerCase() + s.slice(1);\n};\n/**\n * Capitalizes the first letter of a string.\n *\n * @param {string} inputString - The input string to capitalize the first letter.\n * @return {string} The string with the first letter capitalized.\n */\nexport const capitalizeFirstLetter = (inputString: string): string => {\n return inputString.charAt(0).toUpperCase() + inputString.slice(1);\n};\n","/**\n* @estjs/signal v0.0.11\n* (c) 2023-Present jiangxd <jiangxd2016@gmail.com>\n* @license MIT\n**/\nvar __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\n\n// ../shared/dist/shared.js\nvar isObject = (val) => val !== null && typeof val === \"object\";\nvar isArray = Array.isArray;\nfunction isString(val) {\n return typeof val === \"string\";\n}\nfunction isNull(val) {\n return val === null;\n}\nfunction isSet(val) {\n return _toString.call(val) === \"[object Set]\";\n}\nfunction isWeakMap(val) {\n return _toString.call(val) === \"[object WeakMap]\";\n}\nfunction isWeakSet(val) {\n return _toString.call(val) === \"[object WeakSet]\";\n}\nfunction isMap(val) {\n return _toString.call(val) === \"[object Map]\";\n}\nvar isFunction = (val) => typeof val === \"function\";\nvar isPrimitive = (val) => [\"string\", \"number\", \"boolean\", \"symbol\", \"undefined\"].includes(typeof val) || isNull(val);\nfunction isHTMLElement(obj) {\n if (!obj) return false;\n return obj && typeof obj === \"object\" && obj.nodeType === 1 && typeof obj.nodeName === \"string\";\n}\nvar _toString = Object.prototype.toString;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar hasOwn = (val, key) => hasOwnProperty.call(val, key);\nvar hasChanged = (value, oldValue) => value !== oldValue && (value === value || oldValue === oldValue);\nvar noop = Function.prototype;\nfunction startsWith(str, searchString) {\n if (!isString(str)) {\n return false;\n }\n return str.indexOf(searchString) === 0;\n}\nfunction isExclude(key, exclude) {\n return Array.isArray(exclude) ? exclude.includes(key) : isFunction(exclude) ? exclude(key) : false;\n}\nfunction warn(msg, ...args) {\n console.warn.apply(console, [`[Essor warn]: ${msg}`].concat(args));\n}\n\n// src/signal.ts\nvar activeEffect = null;\nvar activeComputed = null;\nvar computedMap = /* @__PURE__ */ new WeakMap();\nvar signalMap = /* @__PURE__ */ new WeakMap();\nvar effectDeps = /* @__PURE__ */ new Set();\nvar reactiveMap = /* @__PURE__ */ new WeakMap();\nvar arrayMethods = [\"push\", \"pop\", \"shift\", \"unshift\", \"splice\", \"sort\", \"reverse\"];\nfunction track(target, key) {\n if (!activeEffect && !activeComputed) return;\n let depsMap = signalMap.get(target);\n if (!depsMap) {\n depsMap = /* @__PURE__ */ new Map();\n signalMap.set(target, depsMap);\n }\n let dep = depsMap.get(key);\n if (!dep) {\n dep = /* @__PURE__ */ new Set();\n depsMap.set(key, dep);\n }\n if (activeEffect) dep.add(activeEffect);\n let computedDepsMap = computedMap.get(target);\n if (!computedDepsMap) {\n computedDepsMap = /* @__PURE__ */ new Map();\n computedMap.set(target, computedDepsMap);\n }\n let computedDeps = computedDepsMap.get(key);\n if (!computedDeps) {\n computedDeps = /* @__PURE__ */ new Set();\n computedDepsMap.set(key, computedDeps);\n }\n if (activeComputed) {\n computedDeps.add(activeComputed);\n }\n}\nfunction trigger(target, key) {\n const depsMap = signalMap.get(target);\n if (!depsMap) return;\n const dep = depsMap.get(key);\n if (dep) {\n dep.forEach((effect) => effectDeps.has(effect) && effect());\n }\n const computedDepsMap = computedMap.get(target);\n if (computedDepsMap) {\n const computeds = computedDepsMap.get(key);\n if (computeds) {\n computeds.forEach((computed) => computed.run());\n }\n }\n}\nvar Signal = class {\n constructor(value, shallow = false) {\n this._value = value;\n this._shallow = shallow;\n }\n /**\n * Get the current value of the Signal and track its usage.\n */\n get value() {\n track(this, \"_sv\");\n this.__triggerObject();\n return this._value;\n }\n /**\n * Trigger reactivity for non-primitive and non-HTMLElement values.\n * Recursively applies reactivity to nested objects.\n */\n __triggerObject() {\n if (!isPrimitive(this._value) && !isHTMLElement(this._value) && !this._shallow) {\n useReactive(this._value);\n }\n }\n /**\n * Set a new value to the Signal and trigger updates if the value has changed.\n */\n set value(newValue) {\n if (isSignal(newValue)) {\n console.warn(\"Signal cannot be set to another signal, use .peek() instead\");\n newValue = newValue.peek();\n }\n if (hasChanged(newValue, this._value)) {\n this._value = newValue;\n if (!isPrimitive(this._value) && !isHTMLElement(this._value)) {\n this.__triggerObject();\n }\n trigger(this, \"_sv\");\n }\n }\n /**\n * Peek at the current value of the Signal without tracking it.\n */\n peek() {\n return this._value;\n }\n};\nfunction useSignal(value) {\n if (isSignal(value)) {\n return value;\n }\n return new Signal(value);\n}\nfunction shallowSignal(value) {\n return new Signal(value, true);\n}\nfunction isSignal(value) {\n return value instanceof Signal;\n}\nvar Computed = class {\n constructor(fn) {\n this.fn = fn;\n const prev = activeComputed;\n activeComputed = this;\n this._value = this.fn();\n activeComputed = prev;\n }\n /**\n * Get the current computed value without tracking it.\n */\n peek() {\n return this._value;\n }\n /**\n * Run the computed function and update the value if it has changed.\n */\n run() {\n const newValue = this.fn();\n if (hasChanged(newValue, this._value)) {\n this._value = newValue;\n trigger(this, \"_cv\");\n }\n }\n /**\n * Get the current computed value and track its usage.\n */\n get value() {\n track(this, \"_cv\");\n return this._value;\n }\n};\nfunction useComputed(fn) {\n return new Computed(fn);\n}\nfunction isComputed(value) {\n return value instanceof Computed;\n}\nfunction useEffect(fn) {\n function effectFn() {\n const prev = activeEffect;\n activeEffect = effectFn;\n fn();\n activeEffect = prev;\n }\n effectDeps.add(effectFn);\n effectFn();\n return () => {\n effectDeps.delete(effectFn);\n activeEffect = null;\n };\n}\nfunction signalObject(initialValues, exclude) {\n const signals = Object.entries(initialValues).reduce((acc, [key, value]) => {\n acc[key] = isExclude(key, exclude) || isSignal(value) ? value : useSignal(value);\n return acc;\n }, {});\n return signals;\n}\nfunction unSignal(signal, exclude) {\n if (!signal) return {};\n if (isSignal(signal)) {\n return signal.peek();\n }\n if (isArray(signal)) {\n return signal.map((value) => unSignal(value, exclude));\n }\n if (isObject(signal)) {\n return Object.entries(signal).reduce((acc, [key, value]) => {\n if (isExclude(key, exclude)) {\n acc[key] = value;\n } else {\n acc[key] = isSignal(value) ? value.peek() : isReactive(value) ? unReactive(value) : value;\n }\n return acc;\n }, {});\n }\n return signal;\n}\nvar REACTIVE_MARKER = Symbol(\"useReactive\");\nfunction isReactive(obj) {\n return obj && obj[REACTIVE_MARKER] === true;\n}\nfunction createArrayProxy(initialValue) {\n arrayMethods.forEach((method) => {\n const originalMethod = Array.prototype[method];\n track(initialValue, \"length\");\n Object.defineProperty(initialValue, method, {\n value(...args) {\n const result = originalMethod.apply(this, args);\n if ([\"push\", \"pop\", \"shift\", \"unshift\", \"splice\", \"sort\", \"reverse\"].includes(method)) {\n trigger(initialValue, \"length\");\n }\n return result;\n },\n enumerable: false,\n writable: true,\n configurable: true\n });\n });\n}\nfunction useReactive(initialValue, exclude) {\n return reactive(initialValue, exclude, false);\n}\nfunction shallowReactive(initialValue, exclude) {\n return reactive(initialValue, exclude, true);\n}\nfunction unReactive(target) {\n if (!isObject(target)) {\n return target;\n }\n if (!isReactive(target)) {\n return target;\n }\n const unReactiveObj = Array.isArray(target) ? [] : {};\n for (const key in target) {\n if (hasOwn(target, key)) {\n const value = target[key];\n if (isReactive(value)) {\n unReactiveObj[key] = unReactive(value);\n } else if (isSignal(value)) {\n unReactiveObj[key] = value.peek();\n } else {\n unReactiveObj[key] = value;\n }\n }\n }\n return unReactiveObj;\n}\nfunction reactive(initialValue, exclude, shallow = false) {\n if (!isObject(initialValue)) {\n return initialValue;\n }\n if (isReactive(initialValue)) {\n return initialValue;\n }\n if (reactiveMap.has(initialValue)) {\n return reactiveMap.get(initialValue);\n }\n if (Array.isArray(initialValue)) {\n createArrayProxy(initialValue);\n }\n if (isSet(initialValue) || isMap(initialValue) || isWeakSet(initialValue) || isWeakMap(initialValue)) {\n return initialValue;\n }\n const handler = {\n get(target, key, receiver) {\n if (key === REACTIVE_MARKER || startsWith(key, \"_\")) return true;\n const getValue = Reflect.get(target, key, receiver);\n const value = isSignal(getValue) ? getValue.value : getValue;\n if (isExclude(key, exclude)) {\n return value;\n }\n track(target, key);\n if (isObject(value) && !shallow) {\n return useReactive(value);\n }\n return value;\n },\n set(target, key, value, receiver) {\n if (isExclude(key, exclude)) {\n Reflect.set(target, key, value, receiver);\n return true;\n }\n let oldValue = Reflect.get(target, key, receiver);\n if (isSignal(oldValue)) {\n oldValue = oldValue.value;\n }\n if (isSignal(value)) {\n value = value.value;\n }\n const obj = Reflect.set(target, key, value, receiver);\n if (hasChanged(value, oldValue)) {\n trigger(target, key);\n }\n return obj;\n },\n deleteProperty(target, key) {\n const oldValue = Reflect.get(target, key);\n const result = Reflect.deleteProperty(target, key);\n if (oldValue !== void 0) {\n trigger(target, key);\n }\n return result;\n }\n };\n const proxy = new Proxy(initialValue, handler);\n reactiveMap.set(initialValue, proxy);\n return proxy;\n}\n\n// src/watch.ts\nfunction useWatch(source, cb, options) {\n return doWatch(source, cb, options);\n}\nfunction doWatch(source, cb, options) {\n let getter;\n if (isSignal(source) || isComputed(source)) {\n getter = () => source.value;\n } else if (isReactive(source)) {\n getter = () => __spreadValues({}, source);\n } else if (isArray(source)) {\n getter = () => source.map((s) => {\n if (isSignal(s) || isComputed(s)) return s.value;\n if (isReactive(s)) return __spreadValues({}, s);\n if (isFunction(s)) return s();\n return warn(\"Invalid source\", s);\n });\n } else if (isFunction(source)) {\n getter = source;\n } else {\n warn(\"Invalid source type\", source);\n getter = noop;\n }\n let oldValue;\n const effectFn = () => {\n const newValue = getter();\n if ((options == null ? void 0 : options.deep) || hasChanged(newValue, oldValue)) {\n cb && cb(newValue, oldValue);\n oldValue = newValue;\n }\n };\n const stop = useEffect(effectFn);\n if (options == null ? void 0 : options.immediate) {\n effectFn();\n }\n return stop;\n}\n\n// src/store.ts\nvar _id = 0;\nvar StoreMap = /* @__PURE__ */ new Map();\nfunction createOptionsStore(options) {\n const { state, getters, actions } = options;\n const initState = __spreadValues({}, state != null ? state : {});\n const reactiveState = useReactive(state != null ? state : {});\n const subscriptions = [];\n const actionCallbacks = [];\n const default_actions = {\n patch$(payload) {\n Object.assign(reactiveState, payload);\n subscriptions.forEach((callback) => callback(reactiveState));\n actionCallbacks.forEach((callback) => callback(reactiveState));\n },\n subscribe$(callback) {\n subscriptions.push(callback);\n },\n unsubscribe$(callback) {\n const index = subscriptions.indexOf(callback);\n if (index !== -1) {\n subscriptions.splice(index, 1);\n }\n },\n onAction$(callback) {\n actionCallbacks.push(callback);\n },\n reset$() {\n Object.assign(reactiveState, initState);\n }\n };\n const store = __spreadValues({\n state: reactiveState\n }, default_actions);\n for (const key in getters) {\n const getter = getters[key];\n if (getter) {\n useWatch(useComputed(getter.bind(reactiveState, reactiveState)), (value) => {\n store[key] = value;\n });\n }\n }\n for (const key in actions) {\n const action = actions[key];\n if (action) {\n store[key] = action.bind(reactiveState);\n }\n }\n StoreMap.set(_id, store);\n ++_id;\n return store;\n}\nfunction createStore(options) {\n return function() {\n if (StoreMap.has(_id)) {\n return StoreMap.get(_id);\n }\n return createOptionsStore(options);\n };\n}\n/**\n* @estjs/shared v0.0.11\n* (c) 2023-Present jiangxd <jiangxd2016@gmail.com>\n* @license MIT\n**/\n\nexport { createStore, isComputed, isReactive, isSignal, shallowReactive, shallowSignal, signalObject, unReactive, unSignal, useComputed, useEffect, useReactive, useSignal, useWatch };\n","import { isString, isFunction, isArray, isNil, startsWith, capitalizeFirstLetter, coerceArray, isObject, isFalsy, kebabCase } from '@estjs/shared';\nimport { isSignal, useSignal, useEffect, signalObject, useReactive } from '@estjs/signal';\n\n/**\n* @estjs/template v0.0.11\n* (c) 2023-Present jiangxd <jiangxd2016@gmail.com>\n* @license MIT\n**/\n\nvar _ComponentNode = class _ComponentNode {\n constructor(template2, props) {\n this.template = template2;\n this.props = props;\n this.proxyProps = {};\n this.context = {};\n this.emitter = /* @__PURE__ */ new Set();\n this.mounted = false;\n this.rootNode = null;\n this.hooks = {\n mounted: /* @__PURE__ */ new Set(),\n destroy: /* @__PURE__ */ new Set()\n };\n this.trackMap = /* @__PURE__ */ new Map();\n this.proxyProps = signalObject(\n props,\n (key) => startsWith(key, \"on\") || startsWith(key, \"update\")\n );\n }\n addEventListener() {\n }\n removeEventListener() {\n }\n get firstChild() {\n var _a, _b;\n return (_b = (_a = this.rootNode) == null ? void 0 : _a.firstChild) != null ? _b : null;\n }\n get isConnected() {\n var _a, _b;\n return (_b = (_a = this.rootNode) == null ? void 0 : _a.isConnected) != null ? _b : false;\n }\n addHook(hook, cb) {\n var _a;\n (_a = this.hooks[hook]) == null ? void 0 : _a.add(cb);\n }\n getContext(context) {\n return _ComponentNode.context[context];\n }\n setContext(context, value) {\n _ComponentNode.context[context] = value;\n }\n inheritNode(node) {\n this.context = node.context;\n this.hooks = node.hooks;\n Object.assign(this.proxyProps, node.proxyProps);\n this.rootNode = node.rootNode;\n this.trackMap = node.trackMap;\n const props = this.props;\n this.props = node.props;\n this.patchProps(props);\n }\n mount(parent, before) {\n var _a, _b, _c, _d;\n if (!isFunction(this.template)) {\n throw new Error(\"Template must be a function\");\n }\n if (this.isConnected) {\n return (_b = (_a = this.rootNode) == null ? void 0 : _a.mount(parent, before)) != null ? _b : [];\n }\n _ComponentNode.ref = this;\n this.rootNode = this.template(useReactive(this.proxyProps, [\"children\"]));\n _ComponentNode.ref = null;\n this.mounted = true;\n const mountedNode = (_d = (_c = this.rootNode) == null ? void 0 : _c.mount(parent, before)) != null ? _d : [];\n this.hooks.mounted.forEach((handler) => handler());\n this.patchProps(this.props);\n return mountedNode;\n }\n unmount() {\n var _a;\n this.hooks.destroy.forEach((handler) => handler());\n Object.values(this.hooks).forEach((set) => set.clear());\n (_a = this.rootNode) == null ? void 0 : _a.unmount();\n this.rootNode = null;\n this.proxyProps = {};\n this.mounted = false;\n this.emitter.forEach((emitter) => emitter());\n }\n getNodeTrack(trackKey, suppressCleanupCall) {\n let track = this.trackMap.get(trackKey);\n if (!track) {\n track = { cleanup: () => {\n } };\n this.trackMap.set(trackKey, track);\n }\n if (!suppressCleanupCall) {\n track.cleanup();\n }\n return track;\n }\n patchProps(props) {\n var _a, _b, _c, _d, _e;\n for (const [key, prop] of Object.entries(props)) {\n if (startsWith(key, \"on\") && ((_a = this.rootNode) == null ? void 0 : _a.nodes)) {\n const event = key.slice(2).toLowerCase();\n const listener = prop;\n const cleanup = addEventListener(this.rootNode.nodes[0], event, listener);\n this.emitter.add(cleanup);\n } else if (key === \"ref\") {\n if (isSignal(prop)) {\n props[key].value = (_b = this.rootNode) == null ? void 0 : _b.nodes[0];\n } else if (isFunction(prop)) {\n props[key]((_c = this.rootNode) == null ? void 0 : _c.nodes[0]);\n }\n } else if (startsWith(key, \"update\")) {\n props[key] = isSignal(prop) ? prop.value : prop;\n } else if (key !== \"children\") {\n const newValue = (_e = (_d = this.proxyProps)[key]) != null ? _e : _d[key] = useSignal(prop);\n const track = this.getNodeTrack(key);\n track.cleanup = useEffect(() => {\n newValue.value = isFunction(prop) ? prop() : prop;\n });\n }\n }\n this.props = props;\n }\n};\n_ComponentNode.ref = null;\n_ComponentNode.context = {};\nvar ComponentNode = _ComponentNode;\n\n// src/template.ts\nfunction h(_template, props) {\n if (isString(_template)) {\n if (isHtmlTagName(_template)) {\n _template = convertToHtmlTag(_template);\n props = {\n 1: props\n };\n }\n if (_template === \"\") {\n props = {\n 0: props\n };\n }\n _template = template(_template);\n }\n return isFunction(_template) ? new ComponentNode(_template, props) : new TemplateNode(_template, props);\n}\nfunction isJsxElement(node) {\n return node instanceof ComponentNode || node instanceof TemplateNode;\n}\nfunction template(html) {\n html = closeHtmlTags(html);\n const template2 = document.createElement(\"template\");\n template2.innerHTML = html;\n return template2;\n}\nfunction Fragment(props) {\n return props.children;\n}\n\n// src/utils.ts\nvar selfClosingTags = \"area,base,br,col,embed,hr,img,input,link,meta,param,source,track,wbr\";\nvar htmlTags = \"a,abbr,acronym,address,applet,area,article,aside,audio,b,base,basefont,bdi,bdo,bgsound,big,blink,blockquote,body,br,button,canvas,caption,center,cite,code,col,colgroup,command,content,data,datalist,dd,del,details,dfn,dialog,dir,div,dl,dt,em,embed,fieldset,figcaption,figure,font,footer,form,frame,frameset,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,i,iframe,image,img,input,ins,kbd,keygen,label,legend,li,link,listing,main,map,mark,marquee,menu,menuitem,meta,meter,nav,nobr,noframes,noscript,object,ol,optgroup,option,output,p,param,picture,plaintext,pre,progress,q,rb,rp,rt,rtc,ruby,s,samp,script,section,select,shadow,small,source,spacer,span,strike,strong,style,sub,summary,sup,table,tbody,td,template,textarea,tfoot,th,thead,time,title,tr,track,tt,u,ul,var,video,wbr,xmp\";\nfunction coerceNode(data) {\n if (isJsxElement(data) || data instanceof Node) {\n return data;\n }\n const text = isFalsy(data) ? \"\" : String(data);\n return document.createTextNode(text);\n}\nfunction insertChild(parent, child, before = null) {\n const beforeNode = isJsxElement(before) ? before.firstChild : before;\n if (isJsxElement(child)) {\n child.mount(parent, beforeNode);\n } else if (beforeNode) {\n beforeNode.before(child);\n } else {\n parent.append(child);\n }\n}\nfunction removeChild(child) {\n if (isJsxElement(child)) {\n child.unmount();\n } else {\n const parent = child.parentNode;\n if (parent) {\n child.remove();\n }\n }\n}\nfunction replaceChild(parent, node, child) {\n insertChild(parent, node, child);\n removeChild(child);\n}\nfunction setAttribute(element, attr, value) {\n if (attr === \"class\") {\n if (typeof value === \"string\") {\n element.className = value;\n } else if (Array.isArray(value)) {\n element.className = value.join(\" \");\n } else if (value && typeof value === \"object\") {\n element.className = Object.entries(value).reduce((acc, [key, value2]) => acc + (value2 ? ` ${key}` : \"\"), \"\").trim();\n }\n return;\n }\n if (attr === \"style\") {\n if (typeof value === \"string\") {\n element.style.cssText = value;\n } else if (value && typeof value === \"object\") {\n const obj = value;\n Object.keys(obj).forEach((key) => {\n element.style.setProperty(kebabCase(key), String(obj[key]));\n });\n }\n return;\n }\n if (isFalsy(value)) {\n element.removeAttribute(attr);\n } else if (value === true) {\n element.setAttribute(attr, \"\");\n } else {\n if (element instanceof HTMLInputElement) {\n element.value = String(value);\n } else {\n element.setAttribute(attr, String(value));\n }\n }\n}\nfunction binNode(node, setter) {\n if (node instanceof HTMLInputElement) {\n switch (node.type) {\n case \"checkbox\":\n return addEventListener(node, \"change\", () => {\n setter(Boolean(node.checked));\n });\n case \"date\":\n return addEventListener(node, \"change\", () => {\n setter(node.value ? node.value : \"\");\n });\n case \"file\":\n return addEventListener(node, \"change\", () => {\n if (node.files) {\n setter(node.files);\n }\n });\n case \"number\":\n return addEventListener(node, \"input\", () => {\n const value = Number.parseFloat(node.value);\n setter(Number.isNaN(value) ? \"\" : String(value));\n });\n case \"radio\":\n return addEventListener(node, \"change\", () => {\n setter(node.checked ? node.value : \"\");\n });\n case \"text\":\n return addEventListener(node, \"input\", () => {\n setter(node.value);\n });\n }\n }\n if (node instanceof HTMLSelectElement) {\n return addEventListener(node, \"change\", () => {\n setter(node.value);\n });\n }\n if (node instanceof HTMLTextAreaElement) {\n return addEventListener(node, \"input\", () => {\n setter(node.value);\n });\n }\n}\nvar p = Promise.resolve();\nfunction nextTick(fn) {\n return fn ? p.then(fn) : p;\n}\nfunction addEventListener(node, eventName, handler) {\n node.addEventListener(eventName, handler);\n return () => node.removeEventListener(eventName, handler);\n}\nfunction closeHtmlTags(input) {\n const selfClosingTagList = selfClosingTags.split(\",\");\n const tagStack = [];\n const output = [];\n const tagPattern = /<\\/?([\\da-z-]+)([^>]*)>/gi;\n let lastIndex = 0;\n while (true) {\n const match = tagPattern.exec(input);\n if (!match) break;\n const [fullMatch, tagName] = match;\n const isEndTag = fullMatch[1] === \"/\";\n output.push(input.slice(lastIndex, match.index));\n lastIndex = match.index + fullMatch.length;\n if (isEndTag) {\n while (tagStack.length > 0 && tagStack[tagStack.length - 1] !== tagName) {\n const unclosedTag = tagStack.pop();\n if (unclosedTag) {\n output.push(`</${unclosedTag}>`);\n }\n }\n if (tagStack.length > 0) {\n tagStack.pop();\n }\n } else if (!selfClosingTagList.includes(tagName)) {\n tagStack.push(tagName);\n }\n output.push(fullMatch);\n }\n output.push(input.slice(lastIndex));\n while (tagStack.length > 0) {\n const unclosedTag = tagStack.pop();\n if (unclosedTag) {\n output.push(`</${unclosedTag}>`);\n }\n }\n return output.join(\"\");\n}\nfunction isHtmlTagName(tagName) {\n const htmlTagsList = htmlTags.split(\",\");\n return htmlTagsList.includes(tagName);\n}\nfunction convertToHtmlTag(tagName) {\n const selfClosingTagList = selfClosingTags.split(\",\");\n if (selfClosingTagList.includes(tagName)) {\n return `<${tagName}/>`;\n } else {\n return `<${tagName}></${tagName}>`;\n }\n}\nfunction generateShortId() {\n const characters = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\";\n let result = \"\";\n const charactersLength = characters.length;\n for (let i = 0; i < 8; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n}\n\n// src/patch.ts\nfunction patchChildren(parent, childrenMap, nextChildren, before) {\n const result = /* @__PURE__ */ new Map();\n const children = Array.from(childrenMap.values());\n const childrenLength = children.length;\n if (childrenMap.size > 0 && nextChildren.length === 0) {\n if (parent.childNodes.length === childrenLength + (before ? 1 : 0)) {\n parent.innerHTML = \"\";\n if (before) {\n insertChild(parent, before);\n }\n } else {\n const range = document.createRange();\n const child = children[0];\n const start = isJsxElement(child) ? child.firstChild : child;\n range.setStartBefore(start);\n if (before) {\n range.setEndBefore(before);\n } else {\n range.setEndAfter(parent);\n }\n range.deleteContents();\n }\n children.forEach((node) => {\n if (isJsxElement(node)) {\n node.unmount();\n }\n });\n return result;\n }\n const replaces = [];\n const nextChildrenMap = mapKeys(nextChildren);\n let childIndex = 0;\n for (let [i, child] of nextChildren.entries()) {\n let currChild = children[childIndex];\n let currKey = getKey(currChild, i);\n while (currChild && !nextChildrenMap.has(currKey)) {\n removeChild(currChild);\n childrenMap.delete(currKey);\n currChild = children[++childIndex];\n currKey = getKey(currChild, i);\n }\n const key = getKey(child, i);\n const origChild = childrenMap.get(key);\n if (origChild) {\n child = patch(parent, origChild, child);\n }\n if (currChild) {\n if (currChild === origChild) {\n childIndex++;\n } else {\n const placeholder = document.createComment(\"\");\n insertChild(parent, placeholder, currChild);\n replaces.push([placeholder, child]);\n }\n } else {\n insertChild(parent, child, before);\n }\n result.set(key, child);\n }\n replaces.forEach(([placeholder, child]) => replaceChild(parent, child, placeholder));\n childrenMap.forEach((child, key) => {\n if (child.isConnected && !result.has(key)) {\n removeChild(child);\n }\n });\n return result;\n}\nfunction patch(parent, node, next) {\n if (node === next) {\n return node;\n }\n if (isJsxElement(node) && isJsxElement(next) && node.template === next.template) {\n next.inheritNode(node);\n return next;\n }\n if (node instanceof Text && next instanceof Text) {\n if (node.textContent !== next.textContent) {\n node.textContent = next.textContent;\n }\n return node;\n }\n replaceChild(parent, next, node);\n return next;\n}\nfunction mapKeys(children) {\n const result = /* @__PURE__ */ new Map();\n for (const [i, child] of children.entries()) {\n const key = getKey(child, i);\n result.set(key, child);\n }\n return result;\n}\nfunction getKey(node, index) {\n if (isJsxElement(node)) {\n const jsxKey = node.key;\n if (jsxKey !== void 0 && jsxKey !== null) {\n return String(jsxKey);\n }\n }\n return `_$${index}$`;\n}\n\n// src/template-node.ts\nvar TemplateNode = class _TemplateNode {\n constructor(template2, props, key) {\n this.template = template2;\n this.props = props;\n this.key = key;\n this.treeMap = /* @__PURE__ */ new Map();\n this.mounted = false;\n this.nodes = [];\n this.provides = {};\n this.trackMap = /* @__PURE__ */ new Map();\n this.parent = null;\n }\n get firstChild() {\n var _a;\n return (_a = this.nodes[0]) != null ? _a : null;\n }\n get isConnected() {\n return this.mounted;\n }\n addEventListener() {\n }\n removeEventListener() {\n }\n mount(parent, before) {\n var _a;\n this.parent = parent;\n if (this.isConnected) {\n this.nodes.forEach((node) => insertChild(parent, node, before));\n return this.nodes;\n }\n this.key = this.key || generateShortId();\n const cloneNode = this.template.content.cloneNode(true);\n const firstChild = cloneNode.firstChild;\n if ((_a = firstChild == null ? void 0 : firstChild.hasAttribute) == null ? void 0 : _a.call(firstChild, \"_svg_\")) {\n firstChild.remove();\n firstChild == null ? void 0 : firstChild.childNodes.forEach((node) => {\n cloneNode.append(node);\n });\n }\n this.nodes = Array.from(cloneNode.childNodes);\n this.mapNodeTree(parent, cloneNode);\n insertChild(parent, cloneNode, before);\n this.patchNodes(this.props);\n this.mounted = true;\n return this.nodes;\n }\n unmount() {\n this.trackMap.forEach((track) => {\n var _a, _b;\n (_a = track.cleanup) == null ? void 0 : _a.call(track);\n (_b = track.lastNodes) == null ? void 0 : _b.forEach((node) => {\n if (track.isRoot) {\n removeChild(node);\n } else if (node instanceof _TemplateNode) {\n node.unmount();\n }\n });\n });\n this.trackMap.clear();\n this.treeMap.clear();\n this.nodes.forEach((node) => removeChild(node));\n this.nodes = [];\n this.mounted = false;\n }\n mapNodeTree(parent, tree) {\n let index = 1;\n this.treeMap.set(0, parent);\n const walk = (node) => {\n if (node.nodeType !== Node.DOCUMENT_FRAGMENT_NODE) {\n this.treeMap.set(index++, node);\n }\n let child = node.firstChild;\n while (child) {\n walk(child);\n child = child.nextSibling;\n }\n };\n walk(tree);\n }\n patchNodes(props) {\n for (const key in props) {\n const index = Number(key);\n const node = this.treeMap.get(index);\n if (node) {\n const value = this.props[key];\n this.patchNode(key, node, value, index === 0);\n }\n }\n this.props = props;\n }\n getNodeTrack(trackKey, trackLastNodes, isRoot) {\n var _a;\n let track = this.trackMap.get(trackKey);\n if (!track) {\n track = { cleanup: () => {\n } };\n if (trackLastNodes) {\n track.lastNodes = /* @__PURE__ */ new Map();\n }\n if (isRoot) {\n track.isRoot = true;\n }\n this.trackMap.set(trackKey, track);\n }\n (_a = track.cleanup) == null ? void 0 : _a.call(track);\n return track;\n }\n inheritNode(node) {\n this.mounted = node.mounted;\n this.nodes = node.nodes;\n this.trackMap = node.trackMap;\n this.treeMap = node.treeMap;\n const props = this.props;\n this.props = node.props;\n this.patchNodes(props);\n }\n patchNode(key, node, props, isRoot) {\n for (const attr in props) {\n if (attr === \"children\" && props.children) {\n if (!isArray(props.children)) {\n const trackKey = `${key}:${attr}:${0}`;\n const track = this.getNodeTrack(trackKey, true, isRoot);\n patchChild(track, node, props.children, null);\n } else {\n props.children.filter(Boolean).forEach((item, index) => {\n var _a;\n const [child, path] = isArray(item) ? item : [item, null];\n const before = isNil(path) ? null : (_a = this.treeMap.get(path)) != null ? _a : null;\n const trackKey = `${key}:${attr}:${index}`;\n const track = this.getNodeTrack(trackKey, true, isRoot);\n patchChild(track, node, child, before);\n });\n }\n } else if (attr === \"ref\") {\n if (isSignal(props[attr])) {\n props[attr].value = node;\n } else if (isFunction(props[attr])) {\n props[attr](node);\n }\n } else if (startsWith(attr, \"on\")) {\n const eventName = attr.slice(2).toLocaleLowerCase();\n const track = this.getNodeTrack(`${key}:${attr}`);\n const listener = props[attr];\n track.cleanup = addEventListener(node, eventName, listener);\n } else if (!startsWith(attr, \"update\")) {\n const track = this.getNodeTrack(`${key}:${attr}`);\n const val = props[attr];\n const triggerValue = isSignal(val) ? val : useSignal(val);\n patchAttribute(track, node, attr, triggerValue.value);\n const cleanup = useEffect(() => {\n triggerValue.value = isSignal(val) ? val.value : val;\n patchAttribute(track, node, attr, triggerValue.value);\n });\n let cleanupBind;\n const updateKey = `update${capitalizeFirstLetter(attr)}`;\n if (props[updateKey]) {\n cleanupBind = binNode(node, (value) => {\n props[updateKey](value);\n });\n }\n track.cleanup = () => {\n cleanup && cleanup();\n cleanupBind && cleanupBind();\n };\n }\n }\n }\n};\nfunction patchAttribute(track, node, attr, data) {\n const element = node;\n if (!element.setAttribute) {\n return;\n }\n if (isFunction(data)) {\n track.cleanup = useEffect(() => {\n setAttribute(element, attr, data());\n });\n } else {\n setAttribute(element, attr, data);\n }\n}\nfunction patchChild(track, parent, child, before) {\n if (isFunction(child)) {\n track.cleanup = useEffect(() => {\n const nextNodes = coerceArray(child()).map(coerceNode);\n track.lastNodes = patchChildren(parent, track.lastNodes, nextNodes, before);\n });\n } else {\n coerceArray(child).forEach((node, i) => {\n const newNode = coerceNode(node);\n track.lastNodes.set(String(i), newNode);\n insertChild(parent, newNode, before);\n });\n }\n}\n\n// src/hooks.ts\nfunction onMount(cb) {\n var _a;\n throwIfOutsideComponent(\"onMounted\");\n (_a = ComponentNode.ref) == null ? void 0 : _a.addHook(\"mounted\", cb);\n}\nfunction onDestroy(cb) {\n var _a;\n throwIfOutsideComponent(\"onDestroy\");\n (_a = ComponentNode.ref) == null ? void 0 : _a.addHook(\"destroy\", cb);\n}\nfunction throwIfOutsideComponent(hook) {\n if (!ComponentNode.ref) {\n console.error(\n `\"${hook}\" can only be called within the component function body\n and cannot be used in asynchronous or deferred calls.`\n );\n }\n}\nfunction useProvide(key, value) {\n var _a;\n throwIfOutsideComponent(\"useProvide\");\n (_a = ComponentNode.ref) == null ? void 0 : _a.setContext(key, value);\n}\nfunction useInject(key, defaultValue) {\n var _a;\n throwIfOutsideComponent(\"useInject\");\n return ((_a = ComponentNode.ref) == null ? void 0 : _a.getContext(key)) || defaultValue;\n}\nfunction convertJsonToAttributes(json) {\n return Object.entries(json).map(([key, value]) => `${key}=${JSON.stringify(escape(String(value)))}`).join(\" \");\n}\nfunction renderTemplate(template2, props) {\n if (isFunction(template2)) {\n return template2(props);\n }\n const templateCollection = Array.isArray(template2) ? template2.reduce((acc, tmpl, index) => {\n acc[index + 1] = { template: tmpl };\n return acc;\n }, {}) : template2;\n const childNodesMap = {};\n const processedTemplates = {};\n if (isObject(templateCollection)) {\n for (const [key, tmpl] of Object.entries(templateCollection)) {\n const prop = props[key];\n if (prop) {\n for (const propKey in prop) {\n if (startsWith(propKey, \"on\") && isFunction(prop[propKey])) {\n delete prop[propKey];\n }\n }\n if (prop.children) {\n for (const [child, idx] of prop.children) {\n if (!childNodesMap[idx]) childNodesMap[idx] = [];\n childNodesMap[idx].push(child);\n }\n delete prop.children;\n }\n }\n processedTemplates[key] = { template: tmpl.template, props: prop };\n }\n }\n return Object.entries(processedTemplates).map(([key, { template: tmpl, props: prop }]) => {\n let renderedString = tmpl;\n if (prop) {\n renderedString += ` ${convertJsonToAttributes(prop)}`;\n }\n if (childNodesMap[key]) {\n renderedString += childNodesMap[key].map((child) => renderTemplate(child, prop)).join(\"\");\n }\n return renderedString;\n }).join(\"\");\n}\nfunction renderToString(component, props) {\n return renderTemplate(component, props);\n}\nfunction renderSSG(component, root, props = {}) {\n root.innerHTML = renderTemplate(component, props);\n}\n\nexport { ComponentNode, Fragment, TemplateNode, h, isJsxElement, nextTick, onDestroy, onMount, renderSSG, renderTemplate, renderToString, template, useInject, useProvide };\n","import { essor_version } from './version';\n\nexport * from '@estjs/template';\nexport * from '@estjs/signal';\n\nif (globalThis) {\n globalThis.__essor_version__ = essor_version;\n}\n\nexport { essor_version };\n"]}
1
+ {"version":3,"sources":["../src/version.ts","../../shared/src/is.ts","../../shared/src/comm.ts","../../shared/src/name.ts","../../signal/dist/signal.dev.esm.js","../../template/dist/template.dev.esm.js","../src/index.ts"],"names":["essor_version","isObject","val","isArray","isString","isSymbol","isNil","x","isFunction","isFalsy","coerceArray","data","startsWith","str","searchString","escape","char","kebabCase","string","match","offset","capitalizeFirstLetter","inputString","__defProp","__getOwnPropSymbols","__hasOwnProp","__propIsEnum","__defNormalProp","obj","key","value","__spreadValues","a","b","prop","isSet","_toString","isWeakMap","isWeakSet","isMap","isPlainObject","isStringNumber","hasOwnProperty","hasOwn","hasChanged","oldValue","noop","isExclude","exclude","warn","msg","args","queue","activePreFlushCbs","p","isFlushPending","nextTick","fn","queueJob","job","queueFlush","flushJobs","queuePreFlushCb","cb","queueCb","activeQueue","flushPreFlushCbs","activeEffect","activeComputed","triggerMap","reactiveMap","ReactiveSymbol","ReactivePeekSymbol","SignalValueKey","ComputedValueKey","reactiveArrayKey","ReactiveCollectionKey","ReactiveWeakCollectionKey","inBatch","batchQueue","track","target","depsMap","dep","trigger","effect","Signal","shallow","useReactive","newValue","isSignal","useSignal","shallowSignal","Computed","prev","useComputed","isComputed","createScheduler","flush","useEffect","options","onTrack","onTrigger","effectFn","scheduler","signalObject","initialValues","acc","unSignal","signal","isReactive","unReactive","initialValue","reactive","shallowReactive","basicHandler","receiver","getValue","result","arrayInstrumentations","createArrayInstrumentations","instrumentations2","arr","l","res","ArrayHandler","collectionHandlers","instrumentations","weakCollectionHandlers","weakInstrumentations","hadKey","hadItems","callback","thisArg","handler","proxy","clearReactive","reactiveObj","useBatch","runBatch","useWatch","source","doWatch","INITIAL_WATCHER_VALUE","watcher","flushing","queueWatcher","flushWatchers","deep","immediate","getter","isMultiSource","s","resolveSource","baseGetter","depth","traverse","runCb","stop","seen","element","v","createOptionsStore","state","getters","actions","initState","reactiveState","subscriptions","actionCallbacks","store","payload","index","action","createStore","_Hooks","hook","_a","context","Hooks","ComponentNode","template2","props","key2","_b","node","parent","before","_c","_d","mountedNode","set","emitter","trackKey","suppressCleanupCall","event","listener","cleanup","addEventListener","h","_template","isHtmlTagName","convertToHtmlTag","template","TemplateNode","isComponent","isJsxElement","html","closeHtmlTags","Fragment","selfClosingTags","htmlTags","coerceNode","text","insertChild","child","beforeNode","removeChild","replaceChild","setAttribute","attr","value2","binNode","setter","eventName","input","selfClosingTagList","tagStack","output","tagPattern","lastIndex","fullMatch","tagName","isEndTag","unclosedTag","patchChildren","childrenMap","nextChildren","children","childrenLength","range","start","replaces","nextChildrenMap","mapKeys","childIndex","i","currChild","currKey","getKey","origChild","patch","placeholder","next","jsxKey","_TemplateNode","cloneNode","firstChild","tree","walk","trackLastNodes","isRoot","item","path","patchChild","triggerValue","patchAttribute","cleanupBind","updateKey","nextNodes","newNode","onMount","throwIfOutsideComponent","onDestroy","useProvide","useInject","defaultValue","useRef","generateAttributes","normalizeProps","propKey","handleChildResult","tmpl","childNodesMap","ServerNode","mapKey","childResult","_ServerNode","templateCollection","root","content","ssg","component","renderToString"],"mappings":";;;;;AAAO,IAAMA,EAAgB,CAAA,SCEtB,IAAMC,EAAAA,CAAYC,GACvBA,CAAQ,GAAA,IAAA,EAAQ,OAAOA,CAAAA,EAAQ,SAK1B,IAAMC,CAAAA,CAAU,KAAM,CAAA,OAAA,CAEtB,SAASC,CAASF,CAAAA,CAAAA,CAA6B,CACpD,OAAO,OAAOA,CAAQ,EAAA,QACxB,CAIO,SAASG,GAASH,CAA6B,CAAA,CACpD,OAAO,OAAOA,GAAQ,QACxB,CAeO,SAASI,EAAAA,CAAMC,EAA+B,CACnD,OAAOA,CAAM,EAAA,IACf,CAEO,IAAMC,CAAcN,CAAAA,CAAAA,EAAkC,OAAOA,CAAQ,EAAA,UAAA,CAErE,SAASO,CAAAA,CAAQF,EAAuC,CAC7D,OAAOA,CAAM,GAAA,CAAA,CAAA,EAASA,IAAM,IAAQA,EAAAA,CAAAA,GAAM,KAC5C,CAAA,CCjCO,SAASG,CAAeC,CAAAA,CAAAA,CAAoB,CACjD,OAAO,MAAM,OAAQA,CAAAA,CAAI,CAAKA,CAAAA,CAAAA,CAAK,MAAiB,CAAA,CAACA,CAAI,CAC3D,CAcO,SAASC,CAAAA,CAAWC,CAAKC,CAAAA,CAAAA,CAAc,CAC5C,OAAKV,CAAAA,CAASS,CAAG,CAAA,CAGVA,EAAI,OAAQC,CAAAA,CAAY,CAAM,GAAA,CAAA,CAF5B,EAGX,CAOO,SAASC,EAAOF,CAAAA,CAAAA,CAAqB,CAC1C,OAAOA,CAAAA,CAAI,UAAW,CAAA,UAAA,CAAYG,GAAQ,CACxC,OAAQA,CAAM,EACZ,IAAK,GACH,CAAA,OAAO,OACT,CAAA,IAAK,IACH,OAAO,MAAA,CACT,IAAK,GAAA,CACH,OAAO,MACT,CAAA,IAAK,GACH,CAAA,OAAO,SACT,IAAK,GAAA,CACH,OAAO,QAAA,CACT,QACE,OAAOA,CACX,CACF,CAAC,CACH,CCrDO,IAAMC,EAAaC,CAAAA,CAAAA,EACjBA,EAAO,UAAW,CAAA,SAAA,CAAW,CAACC,CAAAA,CAAOC,IACnC,CAAGA,EAAAA,CAAAA,CAAS,CAAI,CAAA,GAAA,CAAM,EAAE,CAAGD,EAAAA,CAAAA,CAAM,iBAAkB,EAAC,EAC5D,CAaI,CAAA,IAAME,EAAyBC,CAAAA,CAAAA,EAC7BA,CAAY,CAAA,MAAA,CAAO,CAAC,CAAA,CAAE,aAAgBA,CAAAA,CAAAA,CAAY,KAAM,CAAA,CAAC,ECZlE,IAAIC,EAAAA,CAAY,MAAO,CAAA,cAAA,CACnBC,GAAsB,MAAO,CAAA,qBAAA,CAC7BC,EAAe,CAAA,MAAA,CAAO,UAAU,cAChCC,CAAAA,EAAAA,CAAe,MAAO,CAAA,SAAA,CAAU,qBAChCC,EAAkB,CAAA,CAACC,CAAKC,CAAAA,CAAAA,CAAKC,IAAUD,CAAOD,IAAAA,CAAAA,CAAML,EAAUK,CAAAA,CAAAA,CAAKC,EAAK,CAAE,UAAA,CAAY,CAAM,CAAA,CAAA,YAAA,CAAc,GAAM,QAAU,CAAA,CAAA,CAAA,CAAM,KAAAC,CAAAA,CAAM,CAAC,CAAIF,CAAAA,CAAAA,CAAIC,CAAG,CAAA,CAAIC,EACtJC,CAAiB,CAAA,CAACC,CAAGC,CAAAA,CAAAA,GAAM,CAC7B,IAASC,IAAAA,CAAAA,IAAQD,CAAMA,GAAAA,CAAAA,CAAI,EACrBR,CAAAA,CAAAA,EAAAA,CAAa,IAAKQ,CAAAA,CAAAA,CAAGC,CAAI,CAC3BP,EAAAA,EAAAA,CAAgBK,CAAGE,CAAAA,CAAAA,CAAMD,EAAEC,CAAI,CAAC,CACpC,CAAA,GAAIV,GACF,IAASU,IAAAA,CAAAA,IAAQV,EAAoBS,CAAAA,CAAC,CAChCP,CAAAA,EAAAA,CAAa,IAAKO,CAAAA,CAAAA,CAAGC,CAAI,CAC3BP,EAAAA,EAAAA,CAAgBK,CAAGE,CAAAA,CAAAA,CAAMD,EAAEC,CAAI,CAAC,CAEtC,CAAA,OAAOF,CACT,CAGI/B,CAAAA,CAAAA,CAAYC,CAAQA,EAAAA,CAAAA,GAAQ,MAAQ,OAAOA,CAAAA,EAAQ,QACnDC,CAAAA,CAAAA,CAAU,MAAM,OACpB,CAAA,SAASC,EAASF,CAAAA,CAAAA,CAAK,CACrB,OAAO,OAAOA,CAAQ,EAAA,QACxB,CACA,SAASiC,EAAAA,CAAMjC,CAAK,CAAA,CAClB,OAAOkC,CAAU,CAAA,IAAA,CAAKlC,CAAG,CAAA,GAAM,cACjC,CACA,SAASmC,EAAUnC,CAAAA,CAAAA,CAAK,CACtB,OAAOkC,CAAAA,CAAU,IAAKlC,CAAAA,CAAG,IAAM,kBACjC,CACA,SAASoC,EAAAA,CAAUpC,EAAK,CACtB,OAAOkC,CAAU,CAAA,IAAA,CAAKlC,CAAG,CAAM,GAAA,kBACjC,CACA,SAASqC,GAAMrC,CAAK,CAAA,CAClB,OAAOkC,CAAAA,CAAU,KAAKlC,CAAG,CAAA,GAAM,cACjC,CACA,IAAIM,EAAAA,CAAcN,CAAQ,EAAA,OAAOA,GAAQ,UACrCsC,CAAAA,EAAAA,CAAiBtC,CAAQkC,EAAAA,CAAAA,CAAU,KAAKlC,CAAG,CAAA,GAAM,iBACrD,CAAA,SAASuC,GAAevC,CAAK,CAAA,CAC3B,OAAKE,EAAAA,CAASF,CAAG,CAGV,CAAA,CAAC,MAAO,CAAA,KAAA,CAAM,OAAOA,CAAG,CAAC,CAFvB,CAAA,CAAA,CAGX,CACA,IAAIkC,CAAAA,CAAY,MAAO,CAAA,SAAA,CAAU,SAC7BM,EAAiB,CAAA,MAAA,CAAO,SAAU,CAAA,cAAA,CAClCC,EAAS,CAAA,CAACzC,CAAK2B,CAAAA,CAAAA,GAAQa,GAAe,IAAKxC,CAAAA,CAAAA,CAAK2B,CAAG,CAAA,CACnDe,EAAa,CAACd,CAAAA,CAAOe,CAAaf,GAAAA,CAAAA,GAAUe,IAAaf,CAAUA,GAAAA,CAAAA,EAASe,CAAaA,GAAAA,CAAAA,CAAAA,CACzFC,GAAO,QAAS,CAAA,SAAA,CACpB,SAASC,CAAAA,CAAUlB,EAAKmB,CAAS,CAAA,CAC/B,OAAO,KAAA,CAAM,QAAQA,CAAO,CAAA,CAAIA,CAAQ,CAAA,QAAA,CAASnB,CAAG,CAAIrB,CAAAA,EAAAA,CAAWwC,CAAO,CAAA,CAAIA,CAAQnB,CAAAA,CAAG,CAAI,CAAA,CAAA,CAC/F,CACA,SAASoB,CAAAA,CAAKC,CAAQC,CAAAA,GAAAA,CAAAA,CAAM,CAC1B,OAAQ,CAAA,IAAA,CAAK,KAAM,CAAA,OAAA,CAAS,CAAC,CAAiBD,cAAAA,EAAAA,CAAG,CAAE,CAAA,CAAA,CAAE,OAAOC,CAAI,CAAC,EACnE,CAGA,IAAIC,EAAQ,CAAA,EACRC,CAAAA,EAAAA,CAAoB,EACpBC,CAAAA,EAAAA,CAAI,OAAQ,CAAA,OAAA,GACZC,EAAiB,CAAA,CAAA,CAAA,CACrB,SAASC,EAAAA,CAASC,EAAI,CACpB,OAAOA,CAAKH,CAAAA,EAAAA,CAAE,KAAKG,CAAE,CAAA,CAAIH,EAC3B,CACA,SAASI,EAASC,CAAAA,CAAAA,CAAK,CAChBP,EAAAA,CAAM,SAASO,CAAG,CAAA,GACrBP,EAAM,CAAA,IAAA,CAAKO,CAAG,CACdC,CAAAA,EAAAA,EAEJ,EAAA,CACA,SAASA,EAAa,EAAA,CAChBL,EAGJA,GAAAA,EAAAA,CAAiB,GACjBC,EAASK,CAAAA,EAAS,CACpB,EAAA,CACA,SAASC,EAAgBC,CAAAA,CAAAA,CAAI,CAC3BC,EAAAA,CAAQD,CAAIV,CAAAA,EAAiB,EAC/B,CACA,SAASW,EAAQD,CAAAA,CAAAA,CAAIE,CAAa,CAAA,CAC3BA,EAAY,QAASF,CAAAA,CAAE,CAC1BE,GAAAA,CAAAA,CAAY,KAAKF,CAAE,CAAA,CACnBH,EAAW,EAAA,EAEf,CACA,SAASC,EAAAA,EAAY,CACnBN,EAAAA,CAAiB,GACjBW,EAAiB,EAAA,CACjB,IAAIP,CAAAA,CACJ,KAAOA,CAAMP,CAAAA,EAAAA,CAAM,KAAM,EAAA,EACnBO,GACFA,CAAI,GAGV,CACA,SAASO,IAAmB,CAC1B,KAAOb,EAAkB,CAAA,MAAA,CAAS,GAAG,CACnC,IAAMU,CAAKV,CAAAA,EAAAA,CAAkB,OACzBU,CAAAA,CAAAA,EACFA,CAAG,GAEP,CACF,CAGA,IAAII,CAAe,CAAA,IAAA,CACfC,GAAiB,IACjBC,CAAAA,EAAAA,CAA6B,IAAI,OAAA,CACjCC,GAA8B,IAAI,OAAA,CAClCC,CAAiB,CAAA,MAAA,CAAO,gBAAiB,CACzCC,CAAAA,CAAAA,CAAqB,MAAO,CAAA,OAAQ,EACpCC,EAAiB,CAAA,MAAA,CAAO,gBAAiB,CAAA,CACzCC,EAAmB,CAAA,MAAA,CAAO,kBAAmB,CAAA,CAC7CC,GAAmB,MAAO,CAAA,kBAAmB,CAC7CC,CAAAA,CAAAA,CAAwB,OAAO,uBAAwB,CAAA,CACvDC,CAA4B,CAAA,MAAA,CAAO,2BAA4B,CAC/DC,CAAAA,EAAAA,CAAU,CACVC,CAAAA,CAAAA,CAAAA,CAA6B,IAAI,GACrC,CAAA,SAASC,CAAMC,CAAAA,CAAAA,CAAQpD,EAAK,CAC1B,GAAI,CAACsC,CAAAA,EAAgB,CAACC,EAAgB,CAAA,OACtC,IAAIc,CAAAA,CAAUb,GAAW,GAAIY,CAAAA,CAAM,CAC9BC,CAAAA,CAAAA,GACHA,EAA0B,IAAI,GAAA,CAC9Bb,EAAW,CAAA,GAAA,CAAIY,EAAQC,CAAO,CAAA,CAAA,CAEhC,IAAIC,CAAAA,CAAMD,EAAQ,GAAIrD,CAAAA,CAAG,CACpBsD,CAAAA,CAAAA,GACHA,EAAsB,IAAI,GAAA,CAC1BD,CAAQ,CAAA,GAAA,CAAIrD,EAAKsD,CAAG,CAAA,CAAA,CAElBhB,CAAcgB,EAAAA,CAAAA,CAAI,IAAIhB,CAAY,EACxC,CACA,SAASiB,EAAQH,CAAQpD,CAAAA,CAAAA,CAAK,CAC5B,IAAMqD,EAAUb,EAAW,CAAA,GAAA,CAAIY,CAAM,CAAA,CACrC,GAAI,CAACC,CAAS,CAAA,OACd,IAAMC,CAAMD,CAAAA,CAAAA,CAAQ,GAAIrD,CAAAA,CAAG,EACvBsD,CACFA,EAAAA,CAAAA,CAAI,OAASE,CAAAA,CAAAA,EAAW,CACtB,GAAI1C,EAAAA,CAAO0C,CAAQ,CAAA,QAAQ,GAAK,CAACA,CAAAA,CAAO,MAAQ,CAAA,CAC9CF,EAAI,MAAOE,CAAAA,CAAM,CACjB,CAAA,MACF,CACIP,EACFC,CAAAA,CAAAA,CAAW,GAAIM,CAAAA,CAAM,EAErBA,CAAO,GAEX,CAAC,EAEL,CACA,IAAIC,EAAS,CAAA,KAAM,CAMjB,WAAYxD,CAAAA,CAAAA,CAAOyD,CAAU,CAAA,CAAA,CAAA,CAAO,CAGlC,IAAK,CAAA,QAAA,CAAW,CAChB,CAAA,CAAA,IAAA,CAAK,SAAWA,CAChB,CAAA,IAAA,CAAK,MAASzD,CAAAA,EAChB,CAKA,IAAI,KAAA,EAAQ,CAEV,OADAkD,EAAM,IAAMP,CAAAA,EAAc,CACtBxE,CAAAA,CAAAA,CAAS,KAAK,MAAM,CAAA,EAAK,CAAC,IAAA,CAAK,SAC1BuF,CAAY,CAAA,IAAA,CAAK,MAAM,CAAA,CAEzB,IAAK,CAAA,MACd,CAKA,IAAI,MAAMC,CAAU,CAAA,CACdC,CAASD,CAAAA,CAAQ,IACnBA,CAAWA,CAAAA,CAAAA,CAAS,IAAK,EAAA,CAAA,CAEvB7C,EAAW6C,CAAU,CAAA,IAAA,CAAK,MAAM,CAAA,GAClC,KAAK,MAASA,CAAAA,CAAAA,CACdL,CAAQ,CAAA,IAAA,CAAMX,EAAc,CAEhC,EAAA,CAKA,IAAO,EAAA,CACL,OAAO,IAAK,CAAA,MACd,CACF,CAAA,CACA,SAASkB,CAAU7D,CAAAA,CAAAA,CAAO,CACxB,OAAI4D,EAAS5D,CAAK,CAAA,CACTA,CAEF,CAAA,IAAIwD,GAAOxD,CAAK,CACzB,CACA,SAAS8D,GAAc9D,CAAO,CAAA,CAC5B,OAAO,IAAIwD,GAAOxD,CAAO,CAAA,CAAA,CAAI,CAC/B,CACA,SAAS4D,CAAS5D,CAAAA,CAAAA,CAAO,CACvB,OAAO,CAAC,EAAEA,CAAAA,GAAUA,CAAS,EAAA,IAAA,EAAgBA,EAAM,QACrD,CAAA,CAAA,CACA,IAAI+D,EAAAA,CAAW,KAAM,CACnB,WAAA,CAAYpC,CAAI,CAAA,CACd,IAAK,CAAA,EAAA,CAAKA,CAEV,CAAA,IAAA,CAAK,WAAa,CAClB,CAAA,CAAA,IAAMqC,CAAO3B,CAAAA,CAAAA,CACbA,EAAe,IAAK,CAAA,GAAA,CAAI,IAAK,CAAA,IAAI,EACjC,IAAK,CAAA,MAAA,CAAS,IAAK,CAAA,EAAA,GACnBA,CAAe2B,CAAAA,EACjB,CAIA,IAAA,EAAO,CACL,OAAO,IAAA,CAAK,MACd,CAIA,KAAM,CACJ,IAAML,CAAW,CAAA,IAAA,CAAK,IAClB7C,CAAAA,CAAAA,CAAW6C,CAAU,CAAA,IAAA,CAAK,MAAM,CAClC,GAAA,IAAA,CAAK,MAASA,CAAAA,CAAAA,CACdL,EAAQ,IAAMV,CAAAA,EAAgB,CAElC,EAAA,CAIA,IAAI,KAAQ,EAAA,CACV,OAAAM,CAAAA,CAAM,KAAMN,EAAgB,CAAA,CACrB,IAAK,CAAA,MACd,CACF,CACA,CAAA,SAASqB,EAAYtC,CAAAA,CAAAA,CAAI,CACvB,OAAO,IAAIoC,EAASpC,CAAAA,CAAE,CACxB,CACA,SAASuC,EAAWlE,CAAAA,CAAAA,CAAO,CACzB,OAAO,CAAC,EAAEA,CAAAA,EAASA,CAAM,CAAA,UAAA,CAC3B,CACA,SAASmE,GAAgBZ,CAAQa,CAAAA,CAAAA,CAAO,CACtC,OAAIA,IAAU,MACL,CAAA,IAAMb,CAAO,EAAA,CACXa,IAAU,KACZ,CAAA,IAAMpC,EAAgBuB,CAAAA,CAAM,EAE5B,IAAM,CACX7B,EAAS,CAAA,IAAME,GAAS2B,CAAM,CAAC,EACjC,CAEJ,CACA,SAASc,CAAAA,CAAU1C,CAAI2C,CAAAA,CAAAA,CAAU,EAAI,CAAA,CACnC,GAAM,CAAE,MAAAF,CAAQ,CAAA,KAAA,CAAO,OAAAG,CAAAA,CAAAA,CAAS,UAAAC,CAAU,CAAA,CAAIF,CAC9C,CAAA,SAASG,GAAW,CAClB,IAAMT,CAAO3B,CAAAA,CAAAA,CACbA,EAAeoC,CAAS,CAAA,IAAA,CAAOA,CAAWA,CAAAA,CAAAA,CAAS,UACnD9C,CAAG,EAAA,CACH6C,CAAaA,EAAAA,CAAAA,GACbnC,CAAe2B,CAAAA,EACjB,CACA,IAAMU,EAAYP,EAAgBM,CAAAA,CAAAA,CAAUL,CAAK,CAAA,CACjD,OAAAK,CAAS,CAAA,SAAA,CAAYC,CACrBD,CAAAA,CAAAA,CAAS,IAAO,CAAA,CAAA,CAAA,CAChBA,CAAS,CAAA,MAAA,CAAS,GAClBF,CAAWA,EAAAA,CAAAA,EACXE,CAAAA,CAAAA,GACO,IAAM,CACXA,CAAS,CAAA,MAAA,CAAS,GAClBpC,CAAe,CAAA,KACjB,CACF,CACA,SAASsC,EAAaC,CAAAA,CAAAA,CAAe1D,CAAS,CAAA,CAC5C,OAAI,CAAC0D,CAAAA,EAAiB,CAACzG,CAAAA,CAASyG,CAAa,CAEzCzD,EAAAA,CAAAA,CAAK,4DAA8DyD,CAAAA,CAAa,EAE3EA,CAEO,EAAA,MAAA,CAAO,OAAQA,CAAAA,CAAa,CAAE,CAAA,MAAA,CAAO,CAACC,CAAAA,CAAK,CAAC9E,CAAKC,CAAAA,CAAK,CACpE6E,IAAAA,CAAAA,CAAI9E,CAAG,CAAIkB,CAAAA,CAAAA,CAAUlB,CAAKmB,CAAAA,CAAO,GAAK0C,CAAS5D,CAAAA,CAAK,CAAIA,CAAAA,CAAAA,CAAQ6D,EAAU7D,CAAK,CAAA,CACxE6E,CACN,CAAA,CAAA,EAAE,CAEP,CACA,SAASC,EAAAA,CAASC,EAAQ7D,CAAS,CAAA,CACjC,OAAK6D,CAAAA,CACDnB,EAASmB,CAAM,CAAA,CACVA,CAAO,CAAA,IAAA,EAEZ1G,CAAAA,CAAAA,CAAQ0G,CAAM,CAAA,CACTA,EAAO,GAAK/E,CAAAA,CAAAA,EAAU8E,EAAS9E,CAAAA,CAAAA,CAAOkB,CAAO,CAAC,CAAA,CAEnDR,EAAcqE,CAAAA,CAAM,EACf,MAAO,CAAA,OAAA,CAAQA,CAAM,CAAA,CAAE,OAAO,CAACF,CAAAA,CAAK,CAAC9E,CAAAA,CAAKC,CAAK,CAChDiB,IAAAA,CAAAA,CAAUlB,CAAKmB,CAAAA,CAAO,EACxB2D,CAAI9E,CAAAA,CAAG,CAAIC,CAAAA,CAAAA,CAEX6E,EAAI9E,CAAG,CAAA,CAAI6D,CAAS5D,CAAAA,CAAK,EAAIA,CAAM,CAAA,IAAA,EAASgF,CAAAA,CAAAA,CAAWhF,CAAK,CAAIiF,CAAAA,CAAAA,CAAWjF,CAAK,CAAA,CAAIA,EAE/E6E,CACN,CAAA,CAAA,EAAE,CAAA,CAEAE,EAjBa,EAkBtB,CACA,SAASC,EAAWlF,CAAK,CAAA,CACvB,OAAO,CAAC,EAAEA,CAAO,EAAA,OAAOA,CAAQ,EAAA,QAAA,EAAYA,EAAI2C,CAAc,CAAA,CAChE,CACA,SAASiB,EAAYwB,CAAchE,CAAAA,CAAAA,CAAS,CAC1C,OAAOiE,EAASD,CAAAA,CAAAA,CAAc,CAAOhE,CAAAA,CAAAA,CAAO,CAC9C,CACA,SAASkE,EAAgBF,CAAAA,CAAAA,CAAchE,EAAS,CAC9C,OAAOiE,EAASD,CAAAA,CAAAA,CAAc,GAAMhE,CAAO,CAC7C,CACA,SAAS+D,EAAW9B,CAAQ,CAAA,CAI1B,OAHI,CAAChF,EAASgF,CAAM,CAAA,EAGhB,CAAC6B,CAAAA,CAAW7B,CAAM,CACbA,CAAAA,CAAAA,CAEFA,CAAOT,CAAAA,CAAkB,CAClC,CACA,IAAI2C,EAAe,CAAA,CAAC5B,EAASvC,CACpB,IAAA,CACL,GAAIiC,CAAAA,CAAAA,CAAQpD,EAAKuF,CAAU,CAAA,CACzB,GAAIvF,CAAAA,GAAQ0C,EAAgB,OAAO,CAAA,CAAA,CACnC,GAAI1C,CAAAA,GAAQ2C,EAAoB,OAAOS,CAAAA,CACvC,IAAMoC,CAAAA,CAAW,QAAQ,GAAIpC,CAAAA,CAAAA,CAAQpD,CAAKuF,CAAAA,CAAQ,EAC5CtF,CAAQ4D,CAAAA,CAAAA,CAAS2B,CAAQ,CAAA,CAAIA,EAAS,KAAQA,CAAAA,CAAAA,CACpD,OAAItE,CAAAA,CAAUlB,EAAKmB,CAAO,CAAA,CACjBlB,CAETkD,EAAAA,CAAAA,CAAMC,CAAQpD,CAAAA,CAAG,CACb5B,CAAAA,CAAAA,CAAS6B,CAAK,CAAK,EAAA,CAACyD,CACfC,CAAAA,CAAAA,CAAY1D,CAAK,CAEnBA,CAAAA,CAAAA,CACT,CACA,CAAA,GAAA,CAAImD,EAAQpD,CAAKC,CAAAA,CAAAA,CAAOsF,CAAU,CAAA,CAChC,GAAIrE,CAAUlB,CAAAA,CAAAA,CAAKmB,CAAO,CAAA,CACxB,eAAQ,GAAIiC,CAAAA,CAAAA,CAAQpD,CAAKC,CAAAA,CAAAA,CAAOsF,CAAQ,CACjC,CAAA,CAAA,CAAA,CAET,IAAIvE,CAAAA,CAAW,QAAQ,GAAIoC,CAAAA,CAAAA,CAAQpD,CAAKuF,CAAAA,CAAQ,EAC5C1B,CAAS7C,CAAAA,CAAQ,CACnBA,GAAAA,CAAAA,CAAWA,EAAS,KAElB6C,CAAAA,CAAAA,CAAAA,CAAS5D,CAAK,CAAA,GAChBA,EAAQA,CAAM,CAAA,KAAA,CAAA,CAEhB,IAAMF,CAAAA,CAAM,QAAQ,GAAIqD,CAAAA,CAAAA,CAAQpD,CAAKC,CAAAA,CAAAA,CAAOsF,CAAQ,CACpD,CAAA,OAAIxE,CAAWd,CAAAA,CAAAA,CAAOe,CAAQ,CAC5BuC,EAAAA,CAAAA,CAAQH,CAAQpD,CAAAA,CAAG,EAEdD,CACT,CAAA,CAEA,cAAeqD,CAAAA,CAAAA,CAAQpD,EAAK,CAC1B,IAAMgB,CAAW,CAAA,OAAA,CAAQ,GAAIoC,CAAAA,CAAAA,CAAQpD,CAAG,CAAA,CAClCyF,EAAS,OAAQ,CAAA,cAAA,CAAerC,CAAQpD,CAAAA,CAAG,EACjD,OAAIgB,CAAAA,GAAa,KACfuC,CAAAA,EAAAA,CAAAA,CAAQH,EAAQpD,CAAG,CAAA,CAEdyF,CACT,CACF,GAEEC,EAAwBC,CAAAA,EAAAA,EAC5B,CAAA,SAASA,IAA8B,CACrC,IAAMC,CAAoB,CAAA,GAC1B,OAAC,CAAA,UAAA,CAAY,SAAW,CAAA,aAAa,EAAE,OAAS5F,CAAAA,CAAAA,EAAQ,CACtD4F,CAAAA,CAAkB5F,CAAG,CAAA,CAAI,SAAYsB,GAAAA,CAAAA,CAAM,CACzC,IAAMuE,CAAAA,CAAM,IACZ,CAAA,IAAA,IAAS,EAAI,CAAGC,CAAAA,CAAAA,CAAI,IAAK,CAAA,MAAA,CAAQ,EAAIA,CAAG,CAAA,CAAA,EAAA,CACtC3C,CAAM0C,CAAAA,CAAAA,CAAK,GAAG,CAAC,CAAA,CAAE,CAEnB,CAAA,IAAME,EAAMF,CAAI7F,CAAAA,CAAG,CAAE,CAAA,GAAGsB,CAAI,CAC5B,CAAA,OAAIyE,CAAQ,GAAA,CAAA,CAAA,EAAMA,IAAQ,CACjBF,CAAAA,CAAAA,CAAAA,CAAI7F,CAAG,CAAA,CAAE,GAAGsB,CAAI,CAElByE,CAAAA,CACT,EACF,CAAC,CAAA,CACD,CAAC,MAAA,CAAQ,MAAO,OAAS,CAAA,SAAA,CAAW,QAAU,CAAA,MAAA,CAAQ,UAAW,MAAQ,CAAA,YAAY,CAAE,CAAA,OAAA,CACpF/F,GAAQ,CACP4F,CAAAA,CAAkB5F,CAAG,CAAA,CAAI,YAAYsB,CAAM,CAAA,CACzC,IAAMuE,CAAAA,CAAMX,EAAW,IAAI,CAAA,CACrBa,CAAMF,CAAAA,CAAAA,CAAI7F,CAAG,CAAE,CAAA,KAAA,CAAM,IAAMsB,CAAAA,CAAI,EACrC,OAAAiC,CAAAA,CAAQsC,CAAK/C,CAAAA,EAAgB,EACtBiD,CACT,EACF,CACF,CAAA,CACA,CACE,SACA,CAAA,KAAA,CACA,QACA,CAAA,QAAA,CACA,cACA,MACA,CAAA,OAAA,CACA,MACA,CAAA,WAAA,CACA,WACA,eACA,CAAA,SAAA,CACA,MACA,CAAA,QACF,EAAE,OAAS/F,CAAAA,CAAAA,EAAQ,CACjB4F,CAAAA,CAAkB5F,CAAG,CAAI,CAAA,SAAA,GAAYsB,CAAM,CAAA,CACzC,IAAMuE,CAAMX,CAAAA,CAAAA,CAAW,IAAI,CAAA,CAC3B,OAAA/B,CAAAA,CAAM0C,CAAK/C,CAAAA,EAAgB,EACpB+C,CAAI7F,CAAAA,CAAG,CAAE,CAAA,KAAA,CAAM,KAAMsB,CAAI,CAClC,EACF,CAAC,EACMsE,CACT,CACA,IAAII,EAAAA,CAAe,CAACtC,CAASvC,CAAAA,CAAAA,IACpB,CACL,GAAA,CAAIiC,EAAQpD,CAAKuF,CAAAA,CAAAA,CAAU,CACzB,GAAIvF,IAAQ0C,CAAgB,CAAA,OAAO,CACnC,CAAA,CAAA,GAAI1C,IAAQ2C,CAAoB,CAAA,OAAOS,CACvC,CAAA,GAAIsC,GAAsB,cAAe1F,CAAAA,CAAG,CAC1C,CAAA,OAAO,QAAQ,GAAI0F,CAAAA,EAAAA,CAAuB1F,CAAKuF,CAAAA,CAAQ,EAEzD,IAAMtF,CAAAA,CAAQ,OAAQ,CAAA,GAAA,CAAImD,EAAQpD,CAAKuF,CAAAA,CAAQ,CAC/C,CAAA,OAAIrE,EAAUlB,CAAKmB,CAAAA,CAAO,CACjBlB,CAAAA,CAAAA,EAELW,GAAeZ,CAAG,CAAA,EACpBmD,CAAMC,CAAAA,CAAAA,CAAQpD,CAAG,CAEnBmD,CAAAA,CAAAA,CAAMC,CAAQ,CAAA,QAAQ,EAClBhF,CAAS6B,CAAAA,CAAK,CAAK,EAAA,CAACyD,CACf0B,CAAAA,EAAAA,CAASnF,CAAK,CAAA,CAEhBA,EACT,CACA,CAAA,GAAA,CAAImD,CAAQpD,CAAAA,CAAAA,CAAKC,EAAOsF,CAAU,CAAA,CAChC,IAAMvE,CAAAA,CAAW,QAAQ,GAAIoC,CAAAA,CAAAA,CAAQpD,CAAKuF,CAAAA,CAAQ,EAC5CE,CAAS,CAAA,OAAA,CAAQ,GAAIrC,CAAAA,CAAAA,CAAQpD,EAAKC,CAAOsF,CAAAA,CAAQ,CACvD,CAAA,OAAIxE,EAAWd,CAAOe,CAAAA,CAAQ,CACxBJ,GAAAA,EAAAA,CAAeZ,CAAG,CACpBuD,EAAAA,CAAAA,CAAQH,CAAQpD,CAAAA,CAAG,EAEjBA,CAAQ,GAAA,QAAA,EACVuD,CAAQH,CAAAA,CAAAA,CAAQ,QAAQ,CAGrBqC,CAAAA,CAAAA,CACT,CACF,CAAA,CAAA,CAEEQ,GAAqB,CACvB,GAAA,CAAI7C,CAAQpD,CAAAA,CAAAA,CAAK,CACf,OAAIA,CAAAA,GAAQ0C,CAAuB,CAAA,CAAA,CAAA,CAC/B1C,IAAQ2C,CAA2BS,CAAAA,CAAAA,EAAAA,CACnCpD,CAAQ,GAAA,MAAA,CAAO,UAAYA,CAAQ,GAAA,MAAA,GACrCmD,CAAMC,CAAAA,CAAAA,CAAQL,CAAqB,CAE9B,CAAA,OAAA,CAAQ,GACbjC,CAAAA,EAAAA,CAAOoF,GAAkBlG,CAAG,CAAA,EAAKA,CAAOoD,IAAAA,CAAAA,CAAS8C,EAAmB9C,CAAAA,CAAAA,CACpEpD,CACAoD,CAAAA,CACF,EACF,CACF,CAAA,CACI+C,EAAyB,CAAA,CAC3B,IAAI/C,CAAQpD,CAAAA,CAAAA,CAAK,CACf,OAAIA,IAAQ0C,CAAuB,CAAA,CAAA,CAAA,CAC/B1C,CAAQ2C,GAAAA,CAAAA,CAA2BS,EAChC,OAAQ,CAAA,GAAA,CACbtC,EAAOsF,CAAAA,EAAAA,CAAsBpG,CAAG,CAAKA,EAAAA,CAAAA,IAAOoD,CAASgD,CAAAA,EAAAA,CAAuBhD,EAC5EpD,CACAoD,CAAAA,CACF,CACF,CACF,EACI8C,EAAmB,CAAA,CACrB,GAAIlG,CAAAA,CAAAA,CAAK,CACP,IAAMoD,CAAS8B,CAAAA,CAAAA,CAAW,IAAI,CAC9B,CAAA,OAAA/B,CAAMC,CAAAA,CAAAA,CAAQL,CAAqB,CAC5BK,CAAAA,CAAAA,CAAO,GAAIpD,CAAAA,CAAG,CACvB,CACA,CAAA,GAAA,CAAIA,CAAKC,CAAAA,CAAAA,CAAO,CACd,IAAMmD,CAAAA,CAAS8B,CAAW,CAAA,IAAI,EACxBO,CAASrC,CAAAA,CAAAA,CAAO,GAAIpD,CAAAA,CAAAA,CAAKC,CAAK,CACpC,CAAA,OAAAsD,CAAQH,CAAAA,CAAAA,CAAQL,CAAqB,CAC9B0C,CAAAA,CACT,CACA,CAAA,GAAA,CAAIxF,CAAO,CAAA,CACT,IAAMmD,CAAAA,CAAS8B,EAAW,IAAI,CAAA,CACxBO,CAASrC,CAAAA,CAAAA,CAAO,IAAInD,CAAK,CAAA,CAC/B,OAAAsD,CAAAA,CAAQH,EAAQL,CAAqB,CAAA,CAC9B0C,CACT,CAAA,CACA,IAAIzF,CAAK,CAAA,CACP,IAAMoD,CAAAA,CAAS8B,EAAW,IAAI,CAAA,CAC9B,OAAA/B,CAAAA,CAAMC,EAAQL,CAAqB,CAAA,CAC5BK,CAAO,CAAA,GAAA,CAAIpD,CAAG,CACvB,CAAA,CACA,MAAOA,CAAAA,CAAAA,CAAK,CACV,IAAMoD,CAAAA,CAAS8B,CAAW,CAAA,IAAI,EACxBmB,CAASjD,CAAAA,CAAAA,CAAO,GAAIpD,CAAAA,CAAG,EACvByF,CAASrC,CAAAA,CAAAA,CAAO,MAAOpD,CAAAA,CAAG,EAChC,OAAIqG,CAAAA,EACF9C,CAAQH,CAAAA,CAAAA,CAAQL,CAAqB,CAEhC0C,CAAAA,CACT,CACA,CAAA,KAAA,EAAQ,CACN,IAAMrC,CAAAA,CAAS8B,CAAW,CAAA,IAAI,EACxBoB,CAAWlD,CAAAA,CAAAA,CAAO,IAAO,CAAA,CAAA,CACzBqC,EAASrC,CAAO,CAAA,KAAA,EACtB,CAAA,OAAIkD,CACF/C,EAAAA,CAAAA,CAAQH,CAAQL,CAAAA,CAAqB,EAEhC0C,CACT,CAAA,CACA,OAAQc,CAAAA,CAAAA,CAAUC,EAAS,CACzB,IAAMpD,CAAS8B,CAAAA,CAAAA,CAAW,IAAI,CAC9B/B,CAAAA,CAAAA,CAAMC,CAAQL,CAAAA,CAAqB,EACnCK,CAAO,CAAA,OAAA,CAAQ,CAACnD,CAAAA,CAAOD,IAAQ,CAC7BuG,CAAAA,CAAS,IAAKC,CAAAA,CAAAA,CAASvG,EAAOD,CAAKoD,CAAAA,CAAM,EAC3C,CAAC,EACH,CACA,CAAA,IAAI,IAAO,EAAA,CACT,IAAMA,CAAS8B,CAAAA,CAAAA,CAAW,IAAI,CAAA,CAC9B,OAAA/B,CAAMC,CAAAA,CAAAA,CAAQL,CAAqB,CAAA,CAC5BK,EAAO,IAChB,CAAA,CACA,IAAO,EAAA,CACL,IAAMA,CAAS8B,CAAAA,CAAAA,CAAW,IAAI,CAAA,CAC9B,OAAA/B,CAAMC,CAAAA,CAAAA,CAAQL,CAAqB,CAAA,CAC5BK,EAAO,IAAK,EACrB,CACA,CAAA,MAAA,EAAS,CACP,IAAMA,CAAAA,CAAS8B,CAAW,CAAA,IAAI,EAC9B,OAAA/B,CAAAA,CAAMC,CAAQL,CAAAA,CAAqB,CAC5BK,CAAAA,CAAAA,CAAO,MAAO,EACvB,EACA,OAAU,EAAA,CACR,IAAMA,CAAAA,CAAS8B,EAAW,IAAI,CAAA,CAC9B,OAAA/B,CAAAA,CAAMC,EAAQL,CAAqB,CAAA,CAC5BK,CAAO,CAAA,OAAA,EAChB,CACA,CAAA,CAAC,MAAO,CAAA,QAAQ,GAAI,CAClB,IAAMA,CAAS8B,CAAAA,CAAAA,CAAW,IAAI,CAC9B,CAAA,OAAA/B,CAAMC,CAAAA,CAAAA,CAAQL,CAAqB,CAC5BK,CAAAA,CAAAA,CAAO,MAAO,CAAA,QAAQ,GAC/B,CACF,CACIgD,CAAAA,EAAAA,CAAuB,CACzB,GAAIpG,CAAAA,CAAAA,CAAK,CACP,IAAMoD,EAAS8B,CAAW,CAAA,IAAI,CAC9B,CAAA,OAAA/B,EAAMC,CAAQJ,CAAAA,CAAyB,CAChCI,CAAAA,CAAAA,CAAO,IAAIpD,CAAG,CACvB,CACA,CAAA,GAAA,CAAIA,EAAKC,CAAO,CAAA,CACd,IAAMmD,CAAAA,CAAS8B,EAAW,IAAI,CAAA,CACxBO,CAASrC,CAAAA,CAAAA,CAAO,IAAIpD,CAAKC,CAAAA,CAAK,CACpC,CAAA,OAAAsD,CAAQH,CAAAA,CAAAA,CAAQJ,CAAyB,CAAA,CAClCyC,CACT,CACA,CAAA,GAAA,CAAIxF,CAAO,CAAA,CACT,IAAMmD,CAAS8B,CAAAA,CAAAA,CAAW,IAAI,CAAA,CACxBO,EAASrC,CAAO,CAAA,GAAA,CAAInD,CAAK,CAAA,CAC/B,OAAAsD,CAAQH,CAAAA,CAAAA,CAAQJ,CAAyB,CAAA,CAClCyC,CACT,CACA,CAAA,GAAA,CAAIzF,CAAK,CAAA,CACP,IAAMoD,CAAS8B,CAAAA,CAAAA,CAAW,IAAI,CAAA,CAC9B,OAAA/B,CAAMC,CAAAA,CAAAA,CAAQJ,CAAyB,CAAA,CAChCI,CAAO,CAAA,GAAA,CAAIpD,CAAG,CACvB,EACA,MAAOA,CAAAA,CAAAA,CAAK,CACV,IAAMoD,EAAS8B,CAAW,CAAA,IAAI,CACxBO,CAAAA,CAAAA,CAASrC,EAAO,MAAOpD,CAAAA,CAAG,CAChC,CAAA,OAAAuD,EAAQH,CAAQJ,CAAAA,CAAyB,CAClCyC,CAAAA,CACT,CACF,CACA,CAAA,SAASL,EAASD,CAAAA,CAAAA,CAAczB,EAAU,CAAOvC,CAAAA,CAAAA,CAAAA,CAAS,CAIxD,GAHI,CAAC/C,CAAS+G,CAAAA,CAAY,CAGtBF,EAAAA,CAAAA,CAAWE,CAAY,CAAA,CACzB,OAAOA,CAAAA,CAET,GAAI1C,EAAY,CAAA,GAAA,CAAI0C,CAAY,CAAA,CAC9B,OAAO1C,EAAY,CAAA,GAAA,CAAI0C,CAAY,CAAA,CAErC,IAAIsB,CACAnI,CAAAA,CAAAA,CAAQ6G,CAAY,CAAA,EACtBhC,EAAMgC,CAAcrC,CAAAA,EAAgB,CACpC2D,CAAAA,CAAAA,CAAUT,GAAatC,CAASvC,CAAAA,CAAO,CAC9Bb,EAAAA,EAAAA,CAAM6E,CAAY,CAAKzE,EAAAA,EAAAA,CAAMyE,CAAY,CAAA,EAClDhC,EAAMgC,CAAcpC,CAAAA,CAAqB,CACzC0D,CAAAA,CAAAA,CAAUR,IACDxF,EAAU0E,CAAAA,CAAY,CAAK3E,EAAAA,EAAAA,CAAU2E,CAAY,CAC1DhC,EAAAA,CAAAA,CAAMgC,CAAcnC,CAAAA,CAAyB,EAC7CyD,CAAUN,CAAAA,EAAAA,EAEVM,CAAUnB,CAAAA,EAAAA,CAAa5B,EAASvC,CAAO,CAAA,CAEzC,IAAMuF,CAAAA,CAAQ,IAAI,KAAMvB,CAAAA,CAAAA,CAAcsB,CAAO,CAAA,CAC7C,OAAAhE,EAAY,CAAA,GAAA,CAAI0C,CAAcuB,CAAAA,CAAK,EAC5BA,CACT,CACA,SAASC,EAAAA,CAAcC,EAAa,CAClC,GAAI,CAAC3B,CAAAA,CAAW2B,CAAW,CAAA,CAAG,CAE1BxF,CAAAA,CAAK,mDAAmD,CAE1D,CAAA,MACF,CACA,GAAIZ,GAAUoG,CAAW,CAAA,EAAKnG,EAAUmG,CAAAA,CAAW,EAAG,CAElDxF,CAAAA,CAAK,sDAAsD,CAAA,CAE7D,MACF,CACAyF,EAAAA,CAAS,IAAM,CACTvI,EAAQsI,CAAW,CAAA,CACrBA,CAAY,CAAA,MAAA,CAAS,EACZtG,EAAMsG,CAAAA,CAAW,CAAKlG,EAAAA,EAAAA,CAAMkG,CAAW,CAChDA,CAAAA,CAAAA,CAAY,KAAM,EAAA,CACTxI,EAASwI,CAAW,CAAA,EAC7B,MAAO,CAAA,IAAA,CAAKA,CAAW,CAAE,CAAA,OAAA,CAAS5G,CAAQ,EAAA,CACxC,OAAO4G,CAAY5G,CAAAA,CAAG,EACxB,CAAC,EAEL,CAAC,EACH,CACA,SAAS6G,GAASjF,CAAI,CAAA,CACpB,GAAI,CACFqB,GAAU,CACVrB,CAAAA,CAAAA,CAAAA,GACF,CAAA,OAAE,CACAqB,EAAU,CAAA,CAAA,CAAA,CACV6D,EAAS,GACX,CACF,CACA,SAASA,EAAW,EAAA,CACd5D,CAAW,CAAA,IAAA,CAAO,CACpBA,GAAAA,CAAAA,CAAW,QAASM,CAAWA,EAAAA,CAAAA,EAAQ,CAAA,CACvCN,EAAW,KAAM,EAAA,EAErB,CAGA,SAAS6D,GAASC,CAAQ9E,CAAAA,CAAAA,CAAIqC,CAAS,CAAA,CACrC,OAAO0C,EAAQD,CAAAA,CAAAA,CAAQ9E,CAAIqC,CAAAA,CAAO,CACpC,CACA,IAAI2C,EAAwB,CAAA,KAAA,CAAA,CACxBC,EACAC,EAAW,CAAA,CAAA,CAAA,CACf,SAASC,EAAAA,CAAazF,EAAI,CACxBuF,CAAAA,CAAUvF,CACLwF,CAAAA,EAAAA,GACHA,GAAW,CACXzF,CAAAA,CAAAA,EAAAA,CAAS2F,EAAa,CAAA,EAE1B,CACA,SAASA,EAAAA,EAAgB,CACvBH,CAAAA,EAAW,MAAgBA,CAAQ,EAAA,CACnCA,CAAU,CAAA,IAAA,CACVC,GAAW,CACb,EAAA,CACA,SAASH,EAAAA,CAAQD,EAAQ9E,CAAI,CAAA,CAAE,IAAAqF,CAAAA,CAAAA,CAAM,UAAAC,CAAU,CAAA,CAAI,EAAC,CAAG,CACrD,IAAIC,CAAAA,CACEC,CAAgBpJ,CAAAA,CAAAA,CAAQ0I,CAAM,CACpC,CAAA,GAAInD,CAASmD,CAAAA,CAAM,CAAK7C,EAAAA,EAAAA,CAAW6C,CAAM,CAAA,CACvCS,EAAS,IAAMT,CAAAA,CAAO,KACb/B,CAAAA,KAAAA,GAAAA,CAAAA,CAAW+B,CAAM,CAC1BS,CAAAA,CAAAA,CAAS,IAAMvH,CAAAA,CAAe,EAAI8G,CAAAA,CAAM,CAC/BU,CAAAA,KAAAA,GAAAA,CAAAA,CACTD,EAAS,IAAMT,CAAAA,CAAO,GAAKW,CAAAA,CAAAA,EAAMC,GAAcD,CAAC,CAAC,CACxChJ,CAAAA,KAAAA,GAAAA,EAAAA,CAAWqI,CAAM,CAC1BS,CAAAA,CAAAA,CAAST,CAET,CAAA,KAAA,OAAA5F,EAAK,qBAAuB4F,CAAAA,CAAM,CAC3B/F,CAAAA,EAAAA,CAET,GAAIiB,CAAAA,EAAMqF,CAAM,CAAA,CACd,IAAMM,CAAaJ,CAAAA,CAAAA,CACbK,CAAQP,CAAAA,CAAAA,GAAS,GAAO,CAAWA,CAAAA,CAAAA,CAAAA,CAAAA,CACzCE,CAAS,CAAA,IAAMM,EAASF,CAAW,EAAA,CAAGC,CAAK,EAC7C,CACA,IAAI9G,CAAAA,CAAW0G,CAAgB,CAAA,KAAA,CAAM,KAAK,CAAE,MAAA,CAAQV,CAAO,CAAA,MAAO,CAAC,CAAE,CAAA,IAAA,CAAKE,EAAqB,CAAA,CAAIA,GAC/Fc,CAAQ,CAAA,CAAA,CAAA,CACNtD,CAAW,CAAA,IAAM,CACrB,IAAMd,CAAW6D,CAAAA,CAAAA,GACb1G,CAAW6C,CAAAA,CAAAA,CAAU5C,CAAQ,CAAA,GAC3BwG,GAAatF,CACfA,GAAAA,CAAAA,CAAG0B,CAAU5C,CAAAA,CAAQ,EACrBA,CAAW4C,CAAAA,CAAAA,CAAAA,CAEToE,CAAS9F,EAAAA,CAAAA,EACXmF,GAAa,IAAM,CACjBnF,CAAG0B,CAAAA,CAAAA,CAAU5C,CAAQ,CACrBA,CAAAA,CAAAA,CAAW4C,EACb,CAAC,EAEH,CAACoE,CAAAA,GAAUhH,CAAW4C,CAAAA,CAAAA,CAAAA,EAE1B,EACMqE,CAAO3D,CAAAA,CAAAA,CAAUI,CAAU,CAAA,CAAE,MAAO,MAAO,CAAC,CAClD,CAAA,OAAAsD,EAAQ,CACJR,CAAAA,CAAAA,CAAAA,EACF9C,CAAS,EAAA,CAEJuD,CACT,CACA,SAASL,EAAcD,CAAAA,CAAAA,CAAG,CACxB,OAAI9D,CAAAA,CAAS8D,CAAC,CAAA,EAAKxD,GAAWwD,CAAC,CAAA,CAAUA,CAAE,CAAA,KAAA,CACvC1C,EAAW0C,CAAC,CAAA,CAAUzH,CAAe,CAAA,GAAIyH,CAAC,CAAA,CAC1ChJ,EAAWgJ,CAAAA,CAAC,EAAUA,CAAE,EAAA,EAC5BvG,CAAK,CAAA,gBAAA,CAAkBuG,CAAC,CAAA,CACjB1G,EACT,CAAA,CACA,SAAS8G,CAAS9H,CAAAA,CAAAA,CAAO6H,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAUI,EAAM,CAK/C,GAJIJ,CAAS,EAAA,CAAA,EAAK,CAAC1J,CAAS6B,CAAAA,CAAK,CAGjCiI,GAAAA,CAAAA,CAAOA,GAAwB,IAAI,GAAA,CAC/BA,CAAK,CAAA,GAAA,CAAIjI,CAAK,CAChB,CAAA,CAAA,OAAOA,CAIT,CAAA,GAFAiI,EAAK,GAAIjI,CAAAA,CAAK,CACd6H,CAAAA,CAAAA,EAAAA,CACIjE,EAAS5D,CAAK,CAAA,CAChB8H,CAAS9H,CAAAA,CAAAA,CAAM,MAAO6H,CAAOI,CAAAA,CAAI,CACxB5J,CAAAA,KAAAA,GAAAA,CAAAA,CAAQ2B,CAAK,CACtB,CAAA,IAAA,IAAWkI,CAAWlI,IAAAA,CAAAA,CACpB8H,EAASI,CAASL,CAAAA,CAAAA,CAAOI,CAAI,CAAA,CAAA,KAAA,GAEtB5H,GAAML,CAAK,CAAA,EAAKS,EAAMT,CAAAA,CAAK,EACpCA,CAAM,CAAA,OAAA,CAASmI,CAAM,EAAA,CACnBL,EAASK,CAAGN,CAAAA,CAAAA,CAAOI,CAAI,EACzB,CAAC,CACQvH,CAAAA,KAAAA,GAAAA,EAAAA,CAAcV,CAAK,CAAA,CAC5B,QAAWD,CAAOC,IAAAA,CAAAA,CAChB8H,CAAS9H,CAAAA,CAAAA,CAAMD,CAAG,CAAA,CAAG8H,CAAOI,CAAAA,CAAI,EAGpC,OAAOjI,CACT,CAGA,SAASoI,GAAmB9D,CAAS,CAAA,CACnC,GAAM,CAAE,MAAA+D,CAAO,CAAA,OAAA,CAAAC,CAAS,CAAA,OAAA,CAAAC,CAAQ,CAAIjE,CAAAA,CAAAA,CAC9BkE,CAAYvI,CAAAA,CAAAA,CAAe,EAAIoI,CAAAA,CAAAA,EAAS,IAAOA,CAAAA,CAAAA,CAAQ,EAAE,CAAA,CACzDI,CAAgB/E,CAAAA,CAAAA,CAAY2E,GAAS,IAAOA,CAAAA,CAAAA,CAAQ,EAAE,EACtDK,CAAgB,CAAA,EAChBC,CAAAA,CAAAA,CAAkB,EAuBlBC,CAAAA,CAAAA,CAAQ3I,CAAe,CAAA,CAC3B,MAAOwI,CACT,CAAA,CAxBwB,CACtB,MAAA,CAAOI,EAAS,CACd,MAAA,CAAO,MAAOJ,CAAAA,CAAAA,CAAeI,CAAO,CACpCH,CAAAA,CAAAA,CAAc,OAASpC,CAAAA,CAAAA,EAAaA,EAASmC,CAAa,CAAC,CAC3DE,CAAAA,CAAAA,CAAgB,QAASrC,CAAaA,EAAAA,CAAAA,CAASmC,CAAa,CAAC,EAC/D,CACA,CAAA,UAAA,CAAWnC,CAAU,CAAA,CACnBoC,CAAc,CAAA,IAAA,CAAKpC,CAAQ,EAC7B,EACA,YAAaA,CAAAA,CAAAA,CAAU,CACrB,IAAMwC,EAAQJ,CAAc,CAAA,OAAA,CAAQpC,CAAQ,CAAA,CACxCwC,IAAU,CACZJ,CAAAA,EAAAA,CAAAA,CAAc,MAAOI,CAAAA,CAAAA,CAAO,CAAC,EAEjC,CAAA,CACA,SAAUxC,CAAAA,CAAAA,CAAU,CAClBqC,CAAgB,CAAA,IAAA,CAAKrC,CAAQ,EAC/B,EACA,MAAS,EAAA,CACP,MAAO,CAAA,MAAA,CAAOmC,EAAeD,CAAS,EACxC,CACF,CAGkB,CAClB,CAAA,IAAA,IAAWzI,CAAOuI,IAAAA,CAAAA,CAAS,CACzB,IAAMd,CAAAA,CAASc,CAAQvI,CAAAA,CAAG,EACtByH,CACF,EAAA,MAAA,CAAO,cAAeoB,CAAAA,CAAAA,CAAO7I,EAAK,CAChC,GAAA,EAAM,CACJ,OAAOkE,GAAYuD,CAAO,CAAA,IAAA,CAAKiB,CAAeA,CAAAA,CAAa,CAAC,CAAE,CAAA,KAChE,CACA,CAAA,UAAA,CAAY,GACZ,YAAc,CAAA,CAAA,CAChB,CAAC,EAEL,CACA,IAAW1I,IAAAA,CAAAA,IAAOwI,CAAS,CAAA,CACzB,IAAMQ,CAAAA,CAASR,CAAQxI,CAAAA,CAAG,EACtBgJ,CACFH,GAAAA,CAAAA,CAAM7I,CAAG,CAAA,CAAIgJ,EAAO,IAAKN,CAAAA,CAAa,CAE1C,EAAA,CACA,OAAOG,CACT,CACA,SAASI,EAAAA,CAAY1E,EAAS,CAC5B,OAAO,UAAW,CAChB,OAAO8D,EAAmB9D,CAAAA,CAAO,CACnC,CACF,CCzyBA,IAAI7E,EAAAA,CAAY,MAAO,CAAA,cAAA,CACnBC,GAAsB,MAAO,CAAA,qBAAA,CAC7BC,EAAe,CAAA,MAAA,CAAO,UAAU,cAChCC,CAAAA,EAAAA,CAAe,MAAO,CAAA,SAAA,CAAU,qBAChCC,EAAkB,CAAA,CAACC,CAAKC,CAAAA,CAAAA,CAAKC,IAAUD,CAAOD,IAAAA,CAAAA,CAAML,EAAUK,CAAAA,CAAAA,CAAKC,EAAK,CAAE,UAAA,CAAY,CAAM,CAAA,CAAA,YAAA,CAAc,GAAM,QAAU,CAAA,CAAA,CAAA,CAAM,KAAAC,CAAAA,CAAM,CAAC,CAAIF,CAAAA,CAAAA,CAAIC,CAAG,CAAA,CAAIC,EACtJC,EAAiB,CAAA,CAACC,CAAGC,CAAAA,CAAAA,GAAM,CAC7B,IAASC,IAAAA,CAAAA,IAAQD,CAAMA,GAAAA,CAAAA,CAAI,EAAC,CAAA,CACtBR,EAAa,CAAA,IAAA,CAAKQ,EAAGC,CAAI,CAAA,EAC3BP,EAAgBK,CAAAA,CAAAA,CAAGE,EAAMD,CAAEC,CAAAA,CAAI,CAAC,CAAA,CACpC,GAAIV,EACF,CAAA,IAAA,IAASU,CAAQV,IAAAA,EAAAA,CAAoBS,CAAC,CAChCP,CAAAA,EAAAA,CAAa,IAAKO,CAAAA,CAAAA,CAAGC,CAAI,CAC3BP,EAAAA,EAAAA,CAAgBK,CAAGE,CAAAA,CAAAA,CAAMD,EAAEC,CAAI,CAAC,CAEtC,CAAA,OAAOF,CACT,CACI+I,CAAAA,EAAAA,CAAS,MAAMA,CAAO,CACxB,WAAc,EAAA,CACZ,IAAK,CAAA,KAAA,CAAQ,CACX,OAAyB,CAAA,IAAI,GAC7B,CAAA,OAAA,CAAyB,IAAI,GAC/B,EACF,CACA,gBAAA,EAAmB,EAEnB,mBAAA,EAAsB,EAEtB,QAAQC,CAAMjH,CAAAA,CAAAA,CAAI,CAChB,IAAIkH,GACHA,CAAK,CAAA,IAAA,CAAK,KAAMD,CAAAA,CAAI,IAAM,IAAgBC,EAAAA,CAAAA,CAAG,GAAIlH,CAAAA,CAAE,EACtD,CACA,UAAA,CAAWmH,CAAS,CAAA,CAClB,OAAOH,CAAAA,CAAO,OAAQG,CAAAA,CAAO,CAC/B,CACA,UAAA,CAAWA,CAASpJ,CAAAA,CAAAA,CAAO,CACzBiJ,CAAO,CAAA,OAAA,CAAQG,CAAO,CAAA,CAAIpJ,EAC5B,CACA,OAAA,EAAU,CACRiJ,CAAAA,CAAO,IAAM,KACf,CACA,SAAY,EAAA,CACVA,EAAO,GAAM,CAAA,KACf,CACF,CAAA,CACAA,GAAO,GAAM,CAAA,IAAA,CACbA,EAAO,CAAA,OAAA,CAAU,EACjB,CAAA,IAAII,CAAQJ,CAAAA,EAAAA,CACRK,GAAgB,cAAcD,CAAM,CACtC,WAAA,CAAYE,EAAWC,CAAOzJ,CAAAA,CAAAA,CAAK,CACjC,KAAA,GACA,IAAK,CAAA,QAAA,CAAWwJ,CAChB,CAAA,IAAA,CAAK,MAAQC,CACb,CAAA,IAAA,CAAK,GAAMzJ,CAAAA,CAAAA,CACX,KAAK,UAAa,CAAA,EAClB,CAAA,IAAA,CAAK,QAA0B,IAAI,GAAA,CACnC,IAAK,CAAA,OAAA,CAAU,GACf,IAAK,CAAA,QAAA,CAAW,IAChB,CAAA,IAAA,CAAK,QAAU,EAAC,CAChB,IAAK,CAAA,QAAA,CAA2B,IAAI,GAAA,CACpC,IAAK,CAAA,UAAA,CAAa4E,GAChB6E,CACCC,CAAAA,CAAAA,EAAS3K,CAAW2K,CAAAA,CAAAA,CAAM,IAAI,CAAK3K,EAAAA,CAAAA,CAAW2K,CAAM,CAAA,QAAQ,CAC/D,CACA,CAAA,IAAA,CAAK,GAAM,CAAA,IAAA,CAAK,KAAOD,CAAM,CAAA,IAC/B,CACA,IAAI,YAAa,CACf,IAAIL,CAAIO,CAAAA,CAAAA,CACR,QAAQA,CAAMP,CAAAA,CAAAA,CAAAA,CAAK,IAAK,CAAA,QAAA,GAAa,KAAO,KAASA,CAAAA,CAAAA,CAAAA,CAAG,UAAe,GAAA,IAAA,CAAOO,CAAK,CAAA,IACrF,CACA,IAAI,aAAc,CAChB,IAAIP,CAAIO,CAAAA,CAAAA,CACR,QAAQA,CAAMP,CAAAA,CAAAA,CAAAA,CAAK,IAAK,CAAA,QAAA,GAAa,KAAO,KAASA,CAAAA,CAAAA,CAAAA,CAAG,WAAgB,GAAA,IAAA,CAAOO,EAAK,CACtF,CAAA,CACA,WAAYC,CAAAA,CAAAA,CAAM,CAChB,IAAK,CAAA,OAAA,CAAUA,CAAK,CAAA,OAAA,CACpB,KAAK,KAAQA,CAAAA,CAAAA,CAAK,KAClB,CAAA,MAAA,CAAO,OAAO,IAAK,CAAA,UAAA,CAAYA,CAAK,CAAA,UAAU,CAC9C,CAAA,IAAA,CAAK,QAAWA,CAAAA,CAAAA,CAAK,SACrB,IAAK,CAAA,QAAA,CAAWA,CAAK,CAAA,QAAA,CACrB,IAAMH,CAAQ,CAAA,IAAA,CAAK,KACnB,CAAA,IAAA,CAAK,MAAQG,CAAK,CAAA,KAAA,CAClB,IAAK,CAAA,UAAA,CAAWH,CAAK,EACvB,CACA,KAAMI,CAAAA,CAAAA,CAAQC,EAAQ,CACpB,IAAIV,CAAIO,CAAAA,CAAAA,CAAII,EAAIC,CAChB,CAAA,GAAI,CAACrL,CAAAA,CAAW,KAAK,QAAQ,CAAA,CAC3B,MAAM,IAAI,MAAM,6BAA6B,CAAA,CAE/C,GAAI,IAAA,CAAK,YACP,OAAQgL,CAAAA,CAAAA,CAAAA,CAAMP,CAAK,CAAA,IAAA,CAAK,WAAa,IAAO,CAAA,KAAA,CAAA,CAASA,CAAG,CAAA,KAAA,CAAMS,EAAQC,CAAM,CAAA,GAAM,IAAOH,CAAAA,CAAAA,CAAK,EAEhG,CAAA,IAAA,CAAK,OAAQ,EAAA,CACb,KAAK,QAAW,CAAA,IAAA,CAAK,QAAShG,CAAAA,CAAAA,CAAY,KAAK,UAAY,CAAA,CAAC,UAAU,CAAC,CAAC,CACxE,CAAA,IAAA,CAAK,SAAU,EAAA,CACf,IAAK,CAAA,OAAA,CAAU,CACf,CAAA,CAAA,IAAMsG,GAAeD,CAAMD,CAAAA,CAAAA,CAAAA,CAAK,IAAK,CAAA,QAAA,GAAa,KAAO,KAASA,CAAAA,CAAAA,CAAAA,CAAG,KAAMF,CAAAA,CAAAA,CAAQC,CAAM,CAAM,GAAA,IAAA,CAAOE,CAAK,CAAA,GAC3G,OAAK,IAAA,CAAA,KAAA,CAAM,OAAQ,CAAA,OAAA,CAASvD,GAAYA,CAAQ,EAAC,CACjD,CAAA,IAAA,CAAK,WAAW,IAAK,CAAA,KAAK,CACnBwD,CAAAA,CACT,CACA,OAAU,EAAA,CACR,IAAIb,CAAAA,CACJ,KAAK,KAAM,CAAA,OAAA,CAAQ,OAAS3C,CAAAA,CAAAA,EAAYA,GAAS,CAAA,CACjD,MAAO,CAAA,MAAA,CAAO,KAAK,KAAK,CAAA,CAAE,OAASyD,CAAAA,CAAAA,EAAQA,EAAI,KAAM,EAAC,CACrDd,CAAAA,CAAAA,CAAAA,CAAK,KAAK,QAAa,GAAA,IAAA,EAAgBA,CAAG,CAAA,OAAA,GAC3C,IAAK,CAAA,QAAA,CAAW,IAChB,CAAA,IAAA,CAAK,WAAa,EAAC,CACnB,IAAK,CAAA,OAAA,CAAU,GACf,IAAK,CAAA,OAAA,CAAQ,OAASe,CAAAA,CAAAA,EAAYA,CAAQ,EAAC,EAC7C,CACA,aAAaC,CAAUC,CAAAA,CAAAA,CAAqB,CAC1C,IAAIlH,EAAQ,IAAK,CAAA,QAAA,CAAS,GAAIiH,CAAAA,CAAQ,EACtC,OAAKjH,CAAAA,GACHA,CAAQ,CAAA,CAAE,QAAS,IAAM,EACvB,CAAA,CACF,KAAK,QAAS,CAAA,GAAA,CAAIiH,CAAUjH,CAAAA,CAAK,GAE9BkH,CACHlH,EAAAA,CAAAA,CAAM,OAAQ,EAAA,CAETA,CACT,CACA,UAAA,CAAWsG,CAAO,CAAA,CAChB,IAAIL,CAAIO,CAAAA,CAAAA,CAAII,CAAIC,CAAAA,CAAAA,CAChB,OAAW,CAAChK,CAAAA,CAAKK,CAAI,CAAA,GAAK,OAAO,OAAQoJ,CAAAA,CAAK,CAC5C,CAAA,GAAI1K,EAAWiB,CAAK,CAAA,IAAI,CAAOoJ,GAAAA,CAAAA,CAAAA,CAAK,KAAK,QAAa,GAAA,IAAA,EAAgBA,CAAG,CAAA,KAAA,CAAA,CAAQ,CAC/E,IAAMkB,CAAAA,CAAQtK,CAAI,CAAA,KAAA,CAAM,CAAC,CAAE,CAAA,WAAA,EACrBuK,CAAAA,CAAAA,CAAWlK,EACXmK,CAAUC,CAAAA,CAAAA,CAAiB,IAAK,CAAA,QAAA,CAAS,KAAM,CAAA,CAAC,CAAGH,CAAAA,CAAAA,CAAOC,CAAQ,CACxE,CAAA,IAAA,CAAK,OAAQ,CAAA,GAAA,CAAIC,CAAO,EAC1B,CAAA,KAAA,GAAWxK,CAAQ,GAAA,KAAA,CACjByJ,EAAMzJ,CAAG,CAAA,CAAE,KAAS2J,CAAAA,CAAAA,CAAAA,CAAK,KAAK,QAAa,GAAA,IAAA,CAAO,KAASA,CAAAA,CAAAA,CAAAA,CAAG,MAAM,CAAC,CAAA,CAAA,KAAA,GAC5D5K,CAAWiB,CAAAA,CAAAA,CAAK,QAAQ,CACjCyJ,CAAAA,CAAAA,CAAMzJ,CAAG,CAAA,CAAI6D,EAASxD,CAAI,CAAA,CAAIA,CAAK,CAAA,KAAA,CAAQA,CAClCL,CAAAA,KAAAA,GAAAA,CAAAA,GAAQ,UAAY,CAAA,CAC7B,IAAM4D,CAAYoG,CAAAA,CAAAA,CAAAA,CAAAA,CAAMD,CAAK,CAAA,IAAA,CAAK,YAAY/J,CAAG,CAAA,GAAM,IAAOgK,CAAAA,CAAAA,CAAKD,EAAG/J,CAAG,CAAA,CAAI8D,CAAUzD,CAAAA,CAAI,EACrF8C,CAAQ,CAAA,IAAA,CAAK,YAAanD,CAAAA,CAAG,EACnCmD,CAAM,CAAA,OAAA,CAAUmB,CAAU,CAAA,IAAM,CAC9BV,CAAS,CAAA,KAAA,CAAQjF,CAAW0B,CAAAA,CAAI,EAAIA,CAAK,EAAA,CAAIA,EAC/C,CAAC,EACH,CAEF,IAAK,CAAA,KAAA,CAAQoJ,EACf,CACF,EAGA,SAASiB,EAAAA,CAAEC,EAAWlB,CAAOzJ,CAAAA,CAAAA,CAAK,CAChC,OAAIzB,EAASoM,CAAS,CAAA,GAChBC,EAAcD,CAAAA,CAAS,IACzBA,CAAYE,CAAAA,EAAAA,CAAiBF,CAAS,CAAA,CACtClB,EAAQ,CACN,CAAA,CAAGA,CACL,CAAA,CAAA,CAEEkB,IAAc,EAChBlB,GAAAA,CAAAA,CAAQ,CACN,CAAA,CAAGA,CACL,CAEFkB,CAAAA,CAAAA,CAAAA,CAAYG,EAASH,CAAAA,CAAS,GAEzBhM,CAAWgM,CAAAA,CAAS,CAAI,CAAA,IAAIpB,GAAcoB,CAAWlB,CAAAA,CAAAA,CAAOzJ,CAAG,CAAA,CAAI,IAAI+K,EAAaJ,CAAAA,CAAAA,CAAWlB,CAAOzJ,CAAAA,CAAG,CAClH,CACA,SAASgL,EAAYpB,CAAAA,CAAAA,CAAM,CACzB,OAAOA,CAAAA,YAAgBL,EACzB,CACA,SAAS0B,CAAarB,CAAAA,CAAAA,CAAM,CAC1B,OAAOA,aAAgBL,EAAiBK,EAAAA,CAAAA,YAAgBmB,EAC1D,CACA,SAASD,EAASI,CAAAA,CAAAA,CAAM,CACtB,IAAM1B,CAAY,CAAA,QAAA,CAAS,aAAc,CAAA,UAAU,EACnD,OAAAA,CAAAA,CAAU,SAAY2B,CAAAA,EAAAA,CAAcD,CAAI,CACjC1B,CAAAA,CACT,CACA,SAAS4B,GAAS3B,CAAO,CAAA,CACvB,OAAOA,CAAAA,CAAM,QACf,CAGA,IAAI4B,EAAkB,CAAA,sEAAA,CAClBC,GAAW,0wBACf,CAAA,SAASC,EAAWzM,CAAAA,CAAAA,CAAM,CACxB,GAAImM,CAAAA,CAAanM,CAAI,CAAA,EAAKA,aAAgB,IACxC,CAAA,OAAOA,CAET,CAAA,IAAM0M,EAAO5M,CAAQE,CAAAA,CAAI,CAAI,CAAA,EAAA,CAAK,OAAOA,CAAI,CAAA,CAC7C,OAAO,QAAA,CAAS,eAAe0M,CAAI,CACrC,CACA,SAASC,EAAY5B,CAAQ6B,CAAAA,CAAAA,CAAO5B,CAAS,CAAA,IAAA,CAAM,CACjD,IAAM6B,CAAAA,CAAaV,CAAanB,CAAAA,CAAM,EAAIA,CAAO,CAAA,UAAA,CAAaA,CAC1DmB,CAAAA,CAAAA,CAAaS,CAAK,CACpBA,CAAAA,CAAAA,CAAM,KAAM7B,CAAAA,CAAAA,CAAQ8B,CAAU,CACrBA,CAAAA,CAAAA,CACTA,CAAW,CAAA,MAAA,CAAOD,CAAK,CAAA,CAEvB7B,CAAO,CAAA,MAAA,CAAO6B,CAAK,EAEvB,CACA,SAASE,CAAAA,CAAYF,EAAO,CACtBT,CAAAA,CAAaS,CAAK,CAAA,CACpBA,EAAM,OAAQ,EAAA,CAECA,CAAM,CAAA,UAAA,EAEnBA,EAAM,MAAO,GAGnB,CACA,SAASG,GAAahC,CAAQD,CAAAA,CAAAA,CAAM8B,CAAO,CAAA,CACzCD,EAAY5B,CAAQD,CAAAA,CAAAA,CAAM8B,CAAK,CAAA,CAC/BE,EAAYF,CAAK,EACnB,CACA,SAASI,GAAa3D,CAAS4D,CAAAA,CAAAA,CAAM9L,CAAO,CAAA,CAC1C,GAAI8L,CAAS,GAAA,OAAA,CAAS,CAChB,OAAO9L,GAAU,QACnBkI,CAAAA,CAAAA,CAAQ,SAAYlI,CAAAA,CAAAA,CACX,MAAM,OAAQA,CAAAA,CAAK,CAC5BkI,CAAAA,CAAAA,CAAQ,UAAYlI,CAAM,CAAA,IAAA,CAAK,GAAG,CAAA,CACzBA,GAAS,OAAOA,CAAAA,EAAU,QACnCkI,GAAAA,CAAAA,CAAQ,UAAY,MAAO,CAAA,OAAA,CAAQlI,CAAK,CAAA,CAAE,OAAO,CAAC6E,CAAAA,CAAK,CAAC9E,CAAAA,CAAKgM,CAAM,CAAA,GAAMlH,CAAOkH,EAAAA,CAAAA,CAAS,IAAIhM,CAAG,CAAA,CAAA,CAAK,EAAK,CAAA,CAAA,EAAE,EAAE,IAAK,EAAA,CAAA,CAErH,MACF,CACA,GAAI+L,CAAS,GAAA,OAAA,CAAS,CACpB,GAAI,OAAO9L,CAAU,EAAA,QAAA,CACnBkI,CAAQ,CAAA,KAAA,CAAM,QAAUlI,CACfA,CAAAA,KAAAA,GAAAA,CAAAA,EAAS,OAAOA,CAAAA,EAAU,SAAU,CAC7C,IAAMF,CAAME,CAAAA,CAAAA,CACZ,OAAO,IAAKF,CAAAA,CAAG,CAAE,CAAA,OAAA,CAASC,CAAQ,EAAA,CAChCmI,CAAQ,CAAA,KAAA,CAAM,YAAY/I,EAAUY,CAAAA,CAAG,CAAG,CAAA,MAAA,CAAOD,EAAIC,CAAG,CAAC,CAAC,EAC5D,CAAC,EACH,CACA,MACF,CACIpB,EAAQqB,CAAK,CAAA,CACfkI,CAAQ,CAAA,eAAA,CAAgB4D,CAAI,CACnB9L,CAAAA,CAAAA,GAAU,CACnBkI,CAAAA,CAAAA,CAAAA,CAAQ,aAAa4D,CAAM,CAAA,EAAE,CAEzB5D,CAAAA,CAAAA,YAAmB,iBACrBA,CAAQ,CAAA,KAAA,CAAQ,MAAOlI,CAAAA,CAAK,CAE5BkI,CAAAA,CAAAA,CAAQ,YAAa4D,CAAAA,CAAAA,CAAM,OAAO9L,CAAK,CAAC,EAG9C,CACA,SAASgM,EAAQrC,CAAAA,CAAAA,CAAMsC,CAAQ,CAAA,CAC7B,GAAItC,CAAgB,YAAA,gBAAA,CAClB,OAAQA,CAAAA,CAAK,MACX,IAAK,UACH,CAAA,OAAOa,EAAiBb,CAAM,CAAA,QAAA,CAAU,IAAM,CAC5CsC,EAAO,CAAQtC,CAAAA,CAAAA,CAAK,OAAQ,EAC9B,CAAC,CACH,CAAA,IAAK,MACH,CAAA,OAAOa,EAAiBb,CAAM,CAAA,QAAA,CAAU,IAAM,CAC5CsC,EAAOtC,CAAK,CAAA,KAAA,CAAQA,CAAK,CAAA,KAAA,CAAQ,EAAE,EACrC,CAAC,CACH,CAAA,IAAK,OACH,OAAOa,CAAAA,CAAiBb,CAAM,CAAA,QAAA,CAAU,IAAM,CACxCA,CAAAA,CAAK,KACPsC,EAAAA,CAAAA,CAAOtC,EAAK,KAAK,EAErB,CAAC,CAAA,CACH,IAAK,QACH,CAAA,OAAOa,CAAiBb,CAAAA,CAAAA,CAAM,QAAS,IAAM,CAC3C,IAAM3J,CAAAA,CAAQ,MAAO,CAAA,UAAA,CAAW2J,CAAK,CAAA,KAAK,EAC1CsC,CAAO,CAAA,MAAA,CAAO,KAAMjM,CAAAA,CAAK,EAAI,EAAK,CAAA,MAAA,CAAOA,CAAK,CAAC,EACjD,CAAC,CAAA,CACH,IAAK,OAAA,CACH,OAAOwK,CAAiBb,CAAAA,CAAAA,CAAM,QAAU,CAAA,IAAM,CAC5CsC,CAAOtC,CAAAA,CAAAA,CAAK,OAAUA,CAAAA,CAAAA,CAAK,MAAQ,EAAE,EACvC,CAAC,CAAA,CACH,IAAK,MACH,CAAA,OAAOa,CAAiBb,CAAAA,CAAAA,CAAM,QAAS,IAAM,CAC3CsC,CAAOtC,CAAAA,CAAAA,CAAK,KAAK,EACnB,CAAC,CACL,CAEF,GAAIA,CAAgB,YAAA,iBAAA,CAClB,OAAOa,CAAAA,CAAiBb,EAAM,QAAU,CAAA,IAAM,CAC5CsC,CAAAA,CAAOtC,EAAK,KAAK,EACnB,CAAC,CAAA,CAEH,GAAIA,CAAgB,YAAA,mBAAA,CAClB,OAAOa,CAAAA,CAAiBb,EAAM,OAAS,CAAA,IAAM,CAC3CsC,CAAAA,CAAOtC,EAAK,KAAK,EACnB,CAAC,CAEL,CACA,IAAInI,EAAI,CAAA,OAAA,CAAQ,SAChB,CAAA,SAASE,EAASC,CAAAA,CAAAA,CAAI,CACpB,OAAOA,CAAAA,CAAKH,EAAE,CAAA,IAAA,CAAKG,CAAE,CAAIH,CAAAA,EAC3B,CACA,SAASgJ,EAAiBb,CAAMuC,CAAAA,CAAAA,CAAW1F,CAAS,CAAA,CAClD,OAAAmD,CAAK,CAAA,gBAAA,CAAiBuC,CAAW1F,CAAAA,CAAO,EACjC,IAAMmD,CAAAA,CAAK,mBAAoBuC,CAAAA,CAAAA,CAAW1F,CAAO,CAC1D,CACA,SAAS0E,EAAAA,CAAciB,EAAO,CAC5B,IAAMC,CAAqBhB,CAAAA,EAAAA,CAAgB,MAAM,GAAG,CAAA,CAC9CiB,CAAW,CAAA,GACXC,CAAS,CAAA,EACTC,CAAAA,CAAAA,CAAa,4BACfC,CAAY,CAAA,CAAA,CAChB,OAAa,CACX,IAAMnN,CAAQkN,CAAAA,CAAAA,CAAW,IAAKJ,CAAAA,CAAK,EACnC,GAAI,CAAC9M,CAAO,CAAA,MACZ,GAAM,CAACoN,CAAAA,CAAWC,CAAO,CAAA,CAAIrN,EACvBsN,CAAWF,CAAAA,CAAAA,CAAU,CAAC,CAAA,GAAM,GAGlC,CAAA,GAFAH,CAAO,CAAA,IAAA,CAAKH,EAAM,KAAMK,CAAAA,CAAAA,CAAWnN,CAAM,CAAA,KAAK,CAAC,CAC/CmN,CAAAA,CAAAA,CAAYnN,CAAM,CAAA,KAAA,CAAQoN,EAAU,MAChCE,CAAAA,CAAAA,CAAU,CACZ,KAAON,EAAS,MAAS,CAAA,CAAA,EAAKA,CAASA,CAAAA,CAAAA,CAAS,OAAS,CAAC,CAAA,GAAMK,CAAS,EAAA,CACvE,IAAME,CAAcP,CAAAA,CAAAA,CAAS,GAAI,EAAA,CAC7BO,GACFN,CAAO,CAAA,IAAA,CAAK,CAAKM,EAAAA,EAAAA,CAAW,CAAG,CAAA,CAAA,EAEnC,CACIP,CAAAA,CAAS,OAAS,CACpBA,EAAAA,CAAAA,CAAS,GAAI,GAEjB,MAAYD,CAAmB,CAAA,QAAA,CAASM,CAAO,CAAA,EAC7CL,EAAS,IAAKK,CAAAA,CAAO,CAEvBJ,CAAAA,CAAAA,CAAO,KAAKG,CAAS,EACvB,CAEA,IADAH,EAAO,IAAKH,CAAAA,CAAAA,CAAM,KAAMK,CAAAA,CAAS,CAAC,CAC3BH,CAAAA,CAAAA,CAAS,MAAS,CAAA,CAAA,EAAG,CAC1B,IAAMO,CAAAA,CAAcP,CAAS,CAAA,GAAA,EACzBO,CAAAA,CAAAA,EACFN,CAAO,CAAA,IAAA,CAAK,KAAKM,CAAW,CAAA,CAAA,CAAG,EAEnC,CACA,OAAON,CAAO,CAAA,IAAA,CAAK,EAAE,CACvB,CACA,SAAS3B,EAAAA,CAAc+B,CAAS,CAAA,CAE9B,OADqBrB,EAAS,CAAA,KAAA,CAAM,GAAG,CAAA,CACnB,SAASqB,CAAO,CACtC,CACA,SAAS9B,GAAiB8B,CAAS,CAAA,CAEjC,OAD2BtB,EAAAA,CAAgB,MAAM,GAAG,CAAA,CAC7B,QAASsB,CAAAA,CAAO,EAC9B,CAAIA,CAAAA,EAAAA,CAAO,CAEX,EAAA,CAAA,CAAA,CAAA,CAAA,EAAIA,CAAO,CAAMA,GAAAA,EAAAA,CAAO,CAEnC,CAAA,CAAA,CAGA,SAASG,EAAcjD,CAAAA,CAAAA,CAAQkD,CAAaC,CAAAA,CAAAA,CAAclD,EAAQ,CAChE,IAAMrE,CAAyB,CAAA,IAAI,IAC7BwH,CAAW,CAAA,KAAA,CAAM,IAAKF,CAAAA,CAAAA,CAAY,QAAQ,CAAA,CAC1CG,CAAiBD,CAAAA,CAAAA,CAAS,OAChC,GAAIF,CAAAA,CAAY,IAAO,CAAA,CAAA,EAAKC,EAAa,MAAW,GAAA,CAAA,CAAG,CACrD,GAAInD,CAAO,CAAA,UAAA,CAAW,MAAWqD,GAAAA,CAAAA,EAAkBpD,EAAS,CAAI,CAAA,CAAA,CAAA,CAC9DD,CAAO,CAAA,SAAA,CAAY,GACfC,CACF2B,EAAAA,CAAAA,CAAY5B,CAAQC,CAAAA,CAAM,OAEvB,CACL,IAAMqD,CAAQ,CAAA,QAAA,CAAS,aACjBzB,CAAAA,CAAAA,CAAQuB,CAAS,CAAA,CAAC,EAClBG,CAAQnC,CAAAA,CAAAA,CAAaS,CAAK,CAAA,CAAIA,EAAM,UAAaA,CAAAA,CAAAA,CACvDyB,CAAM,CAAA,cAAA,CAAeC,CAAK,CACtBtD,CAAAA,CAAAA,CACFqD,CAAM,CAAA,YAAA,CAAarD,CAAM,CAEzBqD,CAAAA,CAAAA,CAAM,WAAYtD,CAAAA,CAAM,EAE1BsD,CAAM,CAAA,cAAA,GACR,CACA,OAAAF,CAAS,CAAA,OAAA,CAASrD,CAAS,EAAA,CACrBqB,EAAarB,CAAI,CAAA,EACnBA,CAAK,CAAA,OAAA,GAET,CAAC,CAAA,CACMnE,CACT,CACA,IAAM4H,CAAW,CAAA,EACXC,CAAAA,CAAAA,CAAkBC,GAAQP,CAAY,CAAA,CACxCQ,CAAa,CAAA,CAAA,CACjB,OAAS,CAACC,CAAAA,CAAG/B,CAAK,CAAA,GAAKsB,CAAa,CAAA,OAAA,EAAW,CAAA,CAC7C,IAAIU,CAAYT,CAAAA,CAAAA,CAASO,CAAU,CAAA,CAC/BG,EAAUC,CAAOF,CAAAA,CAAAA,CAAWD,CAAC,CAAA,CACjC,KAAOC,CAAa,EAAA,CAACJ,CAAgB,CAAA,GAAA,CAAIK,CAAO,CAC9C/B,EAAAA,CAAAA,CAAY8B,CAAS,CAAA,CACrBX,EAAY,MAAOY,CAAAA,CAAO,CAC1BD,CAAAA,CAAAA,CAAYT,EAAS,EAAEO,CAAU,CACjCG,CAAAA,CAAAA,CAAUC,EAAOF,CAAWD,CAAAA,CAAC,CAE/B,CAAA,IAAMzN,GAAM4N,CAAOlC,CAAAA,CAAAA,CAAO+B,CAAC,CAAA,CACrBI,EAAYd,CAAY,CAAA,GAAA,CAAI/M,EAAG,CAAA,CAIrC,GAHI6N,CACFnC,GAAAA,CAAAA,CAAQoC,EAAMjE,CAAAA,CAAAA,CAAQgE,EAAWnC,CAAK,CAAA,CAAA,CAEpCgC,CACF,CAAA,GAAIA,IAAcG,CAChBL,CAAAA,CAAAA,EAAAA,CAAAA,KACK,CACL,IAAMO,GAAc,QAAS,CAAA,aAAA,CAAc,EAAE,CAAA,CAC7CtC,EAAY5B,CAAQkE,CAAAA,EAAAA,CAAaL,CAAS,CAAA,CAC1CL,EAAS,IAAK,CAAA,CAACU,EAAarC,CAAAA,CAAK,CAAC,EACpC,CAEAD,KAAAA,CAAAA,CAAY5B,EAAQ6B,CAAO5B,CAAAA,CAAM,CAEnCrE,CAAAA,CAAAA,CAAO,IAAIzF,EAAK0L,CAAAA,CAAK,EACvB,CACA,OAAA2B,CAAS,CAAA,OAAA,CAAQ,CAAC,CAACU,EAAarC,CAAK,CAAA,GAAMG,EAAahC,CAAAA,CAAAA,CAAQ6B,EAAOqC,CAAW,CAAC,CACnFhB,CAAAA,CAAAA,CAAY,QAAQ,CAACrB,CAAAA,CAAO1L,CAAQ,GAAA,CAC9B0L,EAAM,WAAe,EAAA,CAACjG,CAAO,CAAA,GAAA,CAAIzF,CAAG,CAAA,EACtC4L,CAAYF,CAAAA,CAAK,EAErB,CAAC,CAAA,CACMjG,CACT,CACA,SAASqI,EAAMjE,CAAAA,CAAAA,CAAQD,CAAMoE,CAAAA,CAAAA,CAAM,CACjC,OAAIpE,CAAAA,GAASoE,CACJpE,CAAAA,CAAAA,CAELqB,EAAarB,CAAI,CAAA,EAAKqB,CAAa+C,CAAAA,CAAI,GAAKpE,CAAK,CAAA,QAAA,GAAaoE,CAAK,CAAA,QAAA,EACrEA,EAAK,WAAYpE,CAAAA,CAAI,CACdoE,CAAAA,CAAAA,EAELpE,aAAgB,IAAQoE,EAAAA,CAAAA,YAAgB,IACtCpE,EAAAA,CAAAA,CAAK,WAAgBoE,GAAAA,CAAAA,CAAK,WAC5BpE,GAAAA,CAAAA,CAAK,YAAcoE,CAAK,CAAA,WAAA,CAAA,CAEnBpE,CAETiC,GAAAA,EAAAA,CAAahC,EAAQmE,CAAMpE,CAAAA,CAAI,CACxBoE,CAAAA,CAAAA,CACT,CACA,SAAST,EAAAA,CAAQN,CAAU,CAAA,CACzB,IAAMxH,CAAyB,CAAA,IAAI,GACnC,CAAA,IAAA,GAAW,CAACgI,CAAG/B,CAAAA,CAAK,CAAKuB,GAAAA,CAAAA,CAAS,SAAW,CAAA,CAC3C,IAAMjN,CAAAA,CAAM4N,EAAOlC,CAAO+B,CAAAA,CAAC,CAC3BhI,CAAAA,CAAAA,CAAO,IAAIzF,CAAK0L,CAAAA,CAAK,EACvB,CACA,OAAOjG,CACT,CACA,SAASmI,CAAAA,CAAOhE,EAAMb,CAAO,CAAA,CAC3B,GAAIkC,CAAAA,CAAarB,CAAI,CAAG,CAAA,CACtB,IAAMqE,CAAAA,CAASrE,EAAK,GACpB,CAAA,GAAyBqE,CAAW,EAAA,IAAA,CAClC,OAAO,MAAOA,CAAAA,CAAM,CAExB,CACA,OAAO,CAAKlF,EAAAA,EAAAA,CAAK,CACnB,CAAA,CAAA,KAGIgC,EAAe,CAAA,MAAMmD,EAAc,CACrC,WAAY1E,CAAAA,CAAAA,CAAWC,CAAOzJ,CAAAA,CAAAA,CAAK,CACjC,IAAK,CAAA,QAAA,CAAWwJ,CAChB,CAAA,IAAA,CAAK,MAAQC,CACb,CAAA,IAAA,CAAK,GAAMzJ,CAAAA,CAAAA,CACX,KAAK,OAA0B,CAAA,IAAI,GACnC,CAAA,IAAA,CAAK,QAAU,CACf,CAAA,CAAA,IAAA,CAAK,KAAQ,CAAA,GACb,IAAK,CAAA,QAAA,CAAW,EAAC,CACjB,KAAK,QAA2B,CAAA,IAAI,GACpC,CAAA,IAAA,CAAK,OAAS,IACd,CAAA,IAAA,CAAK,GAAM,CAAA,IAAA,CAAK,KAAOyJ,CAAM,CAAA,IAC/B,CACA,IAAI,YAAa,CACf,IAAIL,CACJ,CAAA,OAAA,CAAQA,EAAK,IAAK,CAAA,KAAA,CAAM,CAAC,CAAA,GAAM,KAAOA,CAAK,CAAA,IAC7C,CACA,IAAI,aAAc,CAChB,OAAO,IAAK,CAAA,OACd,CACA,gBAAmB,EAAA,EAEnB,mBAAA,EAAsB,EAEtB,KAAA,CAAMS,CAAQC,CAAAA,CAAAA,CAAQ,CACpB,IAAIV,CAAAA,CAEJ,GADA,IAAA,CAAK,MAASS,CAAAA,CAAAA,CACV,IAAK,CAAA,WAAA,CACP,YAAK,KAAM,CAAA,OAAA,CAASD,CAAS6B,EAAAA,CAAAA,CAAY5B,EAAQD,CAAME,CAAAA,CAAM,CAAC,CAAA,CACvD,KAAK,KAEd,CAAA,IAAMqE,CAAY,CAAA,IAAA,CAAK,SAAS,OAAQ,CAAA,SAAA,CAAU,CAAI,CAAA,CAAA,CAChDC,EAAaD,CAAU,CAAA,UAAA,CAC7B,OAAK/E,CAAAA,CAAAA,CAAKgF,GAAc,IAAO,CAAA,KAAA,CAAA,CAASA,CAAW,CAAA,YAAA,GAAiB,MAAgBhF,CAAG,CAAA,IAAA,CAAKgF,CAAY,CAAA,OAAO,IAC7GA,CAAW,CAAA,MAAA,EACXA,CAAAA,CAAAA,EAAc,MAAgBA,CAAW,CAAA,UAAA,CAAW,OAASxE,CAAAA,CAAAA,EAAS,CACpEuE,CAAU,CAAA,MAAA,CAAOvE,CAAI,EACvB,CAAC,CAEH,CAAA,CAAA,IAAA,CAAK,KAAQ,CAAA,KAAA,CAAM,KAAKuE,CAAU,CAAA,UAAU,CAC5C,CAAA,IAAA,CAAK,YAAYtE,CAAQsE,CAAAA,CAAS,CAClC1C,CAAAA,CAAAA,CAAY5B,EAAQsE,CAAWrE,CAAAA,CAAM,CACrC,CAAA,IAAA,CAAK,WAAW,IAAK,CAAA,KAAK,CAC1B,CAAA,IAAA,CAAK,OAAU,CAAA,CAAA,CAAA,CACR,IAAK,CAAA,KACd,CACA,OAAU,EAAA,CACR,IAAK,CAAA,QAAA,CAAS,QAAS3G,CAAU,EAAA,CAC/B,IAAIiG,CAAAA,CAAIO,GACPP,CAAKjG,CAAAA,CAAAA,CAAM,OAAY,GAAA,IAAA,EAAgBiG,EAAG,IAAKjG,CAAAA,CAAK,CACpDwG,CAAAA,CAAAA,CAAAA,CAAKxG,EAAM,SAAc,GAAA,IAAA,EAAgBwG,CAAG,CAAA,OAAA,CAASC,GAAS,CACzDzG,CAAAA,CAAM,MACRyI,CAAAA,CAAAA,CAAYhC,CAAI,CACPA,CAAAA,CAAAA,YAAgBsE,EACzBtE,EAAAA,CAAAA,CAAK,OAAQ,GAEjB,CAAC,EACH,CAAC,CACD,CAAA,IAAA,CAAK,QAAS,CAAA,KAAA,GACd,IAAK,CAAA,OAAA,CAAQ,KAAM,EAAA,CACnB,KAAK,KAAM,CAAA,OAAA,CAASA,CAASgC,EAAAA,CAAAA,CAAYhC,CAAI,CAAC,CAAA,CAC9C,IAAK,CAAA,KAAA,CAAQ,EACb,CAAA,IAAA,CAAK,OAAU,CAAA,CAAA,EACjB,CACA,WAAYC,CAAAA,CAAAA,CAAQwE,CAAM,CAAA,CACxB,IAAItF,CAAQ,CAAA,CAAA,CACZ,IAAK,CAAA,OAAA,CAAQ,GAAI,CAAA,CAAA,CAAGc,CAAM,CAAA,CAC1B,IAAMyE,CAAQ1E,CAAAA,CAAAA,EAAS,CACjBA,CAAAA,CAAK,WAAa,IAAK,CAAA,sBAAA,EACzB,IAAK,CAAA,OAAA,CAAQ,IAAIb,CAASa,EAAAA,CAAAA,CAAI,CAEhC,CAAA,IAAI8B,EAAQ9B,CAAK,CAAA,UAAA,CACjB,KAAO8B,CAAAA,EACL4C,EAAK5C,CAAK,CAAA,CACVA,CAAQA,CAAAA,CAAAA,CAAM,YAElB,CACA4C,CAAAA,CAAAA,CAAKD,CAAI,EACX,CACA,UAAW5E,CAAAA,CAAAA,CAAO,CAChB,IAAA,IAAWzJ,KAAOyJ,CAAO,CAAA,CACvB,IAAMV,CAAAA,CAAQ,OAAO/I,CAAG,CAAA,CAClB4J,CAAO,CAAA,IAAA,CAAK,QAAQ,GAAIb,CAAAA,CAAK,CACnC,CAAA,GAAIa,EAAM,CACR,IAAM3J,CAAQ,CAAA,IAAA,CAAK,MAAMD,CAAG,CAAA,CAC5B,IAAK,CAAA,SAAA,CAAUA,EAAK4J,CAAM3J,CAAAA,CAAAA,CAAO8I,CAAU,GAAA,CAAC,EAC9C,CACF,CACA,IAAK,CAAA,KAAA,CAAQU,EACf,CACA,YAAA,CAAaW,CAAUmE,CAAAA,CAAAA,CAAgBC,CAAQ,CAAA,CAC7C,IAAIpF,CAAAA,CACJ,IAAIjG,CAAQ,CAAA,IAAA,CAAK,QAAS,CAAA,GAAA,CAAIiH,CAAQ,CACtC,CAAA,OAAKjH,CACHA,GAAAA,CAAAA,CAAQ,CAAE,OAAS,CAAA,IAAM,EACvB,EACEoL,CACFpL,GAAAA,CAAAA,CAAM,SAA4B,CAAA,IAAI,KAEpCqL,CACFrL,GAAAA,CAAAA,CAAM,MAAS,CAAA,CAAA,CAAA,CAAA,CAEjB,KAAK,QAAS,CAAA,GAAA,CAAIiH,CAAUjH,CAAAA,CAAK,IAElCiG,CAAKjG,CAAAA,CAAAA,CAAM,OAAY,GAAA,IAAA,EAAgBiG,EAAG,IAAKjG,CAAAA,CAAK,CAC9CA,CAAAA,CACT,CACA,WAAYyG,CAAAA,CAAAA,CAAM,CAChB,IAAA,CAAK,QAAUA,CAAK,CAAA,OAAA,CACpB,IAAK,CAAA,KAAA,CAAQA,EAAK,KAClB,CAAA,IAAA,CAAK,QAAWA,CAAAA,CAAAA,CAAK,SACrB,IAAK,CAAA,OAAA,CAAUA,CAAK,CAAA,OAAA,CACpB,IAAMH,CAAQ,CAAA,IAAA,CAAK,KACnB,CAAA,IAAA,CAAK,MAAQG,CAAK,CAAA,KAAA,CAClB,IAAK,CAAA,UAAA,CAAWH,CAAK,EACvB,CACA,SAAUzJ,CAAAA,CAAAA,CAAK4J,CAAMH,CAAAA,CAAAA,CAAO+E,CAAQ,CAAA,CAClC,QAAWzC,CAAQtC,IAAAA,CAAAA,CACjB,GAAIsC,CAAAA,GAAS,YAActC,CAAM,CAAA,QAAA,CAC/B,GAAKnL,CAAAA,CAAQmL,EAAM,QAAQ,CAAA,CAKzBA,CAAM,CAAA,QAAA,CAAS,OAAO,OAAO,CAAA,CAAE,OAAQ,CAAA,CAACgF,EAAM1F,CAAU,GAAA,CACtD,IAAIK,CAAAA,CACJ,GAAM,CAACsC,CAAAA,CAAOgD,CAAI,CAAA,CAAIpQ,EAAQmQ,CAAI,CAAA,CAAIA,CAAO,CAAA,CAACA,EAAM,IAAI,CAAA,CAClD3E,CAASrL,CAAAA,EAAAA,CAAMiQ,CAAI,CAAI,CAAA,IAAA,CAAA,CAAQtF,CAAK,CAAA,IAAA,CAAK,QAAQ,GAAIsF,CAAAA,CAAI,CAAM,GAAA,IAAA,CAAOtF,EAAK,IAC3EgB,CAAAA,CAAAA,CAAW,CAAGpK,EAAAA,CAAG,IAAI+L,CAAI,CAAA,CAAA,EAAIhD,CAAK,CAAA,CAAA,CAClC5F,EAAQ,IAAK,CAAA,YAAA,CAAaiH,CAAU,CAAA,CAAA,CAAA,CAAMoE,CAAM,CACtDG,CAAAA,EAAAA,CAAWxL,CAAOyG,CAAAA,CAAAA,CAAM8B,EAAO5B,CAAM,EACvC,CAAC,CAAA,CAAA,KAZ2B,CAC5B,IAAMM,CAAW,CAAA,CAAA,EAAGpK,CAAG,CAAI+L,CAAAA,EAAAA,CAAI,CACzB5I,EAAAA,CAAAA,CAAAA,CAAAA,CAAQ,KAAK,YAAaiH,CAAAA,CAAAA,CAAU,CAAMoE,CAAAA,CAAAA,CAAM,EACtDG,EAAWxL,CAAAA,CAAAA,CAAOyG,CAAMH,CAAAA,CAAAA,CAAM,SAAU,IAAI,EAC9C,CAUSsC,KAAAA,GAAAA,CAAAA,GAAS,MAClBtC,CAAMsC,CAAAA,CAAI,CAAE,CAAA,KAAA,CAAQnC,UACX7K,CAAWgN,CAAAA,CAAAA,CAAM,IAAI,CAAA,CAAG,CACjC,IAAMI,CAAAA,CAAYJ,CAAK,CAAA,KAAA,CAAM,CAAC,CAAA,CAAE,iBAAkB,EAAA,CAC5C5I,EAAQ,IAAK,CAAA,YAAA,CAAa,CAAGnD,EAAAA,CAAG,IAAI+L,CAAI,CAAA,CAAE,CAC1CxB,CAAAA,CAAAA,CAAWd,EAAMsC,CAAI,CAAA,CAC3B5I,CAAM,CAAA,OAAA,CAAUsH,EAAiBb,CAAMuC,CAAAA,CAAAA,CAAW5B,CAAQ,EAC5D,SAAW,CAACxL,CAAAA,CAAWgN,CAAM,CAAA,QAAQ,EAAG,CACtC,IAAM5I,CAAQ,CAAA,IAAA,CAAK,aAAa,CAAGnD,EAAAA,CAAG,CAAI+L,CAAAA,EAAAA,CAAI,CAAE,CAAA,CAAA,CAC1C1N,CAAMoL,CAAAA,CAAAA,CAAMsC,CAAI,CAChB6C,CAAAA,CAAAA,CAAe/K,CAASxF,CAAAA,CAAG,EAAIA,CAAMyF,CAAAA,CAAAA,CAAUzF,CAAG,CAAA,CACxDwQ,GAAe1L,CAAOyG,CAAAA,CAAAA,CAAMmC,CAAM6C,CAAAA,CAAAA,CAAa,KAAK,CACpD,CAAA,IAAMpE,CAAUlG,CAAAA,CAAAA,CAAU,IAAM,CAC9BsK,CAAAA,CAAa,KAAQ/K,CAAAA,CAAAA,CAASxF,CAAG,CAAIA,CAAAA,CAAAA,CAAI,KAAQA,CAAAA,CAAAA,CACjDwQ,GAAe1L,CAAOyG,CAAAA,CAAAA,CAAMmC,CAAM6C,CAAAA,CAAAA,CAAa,KAAK,EACtD,CAAC,CACGE,CAAAA,CAAAA,CACEC,EAAY,CAASvP,MAAAA,EAAAA,EAAAA,CAAsBuM,CAAI,CAAC,GAClDtC,CAAMsF,CAAAA,CAAS,CACjBD,GAAAA,CAAAA,CAAc7C,GAAQrC,CAAO3J,CAAAA,CAAAA,EAAU,CACrCwJ,CAAAA,CAAMsF,CAAS,CAAE9O,CAAAA,CAAK,EACxB,CAAC,GAEHkD,CAAM,CAAA,OAAA,CAAU,IAAM,CACpBqH,GAAWA,CAAQ,EAAA,CACnBsE,CAAeA,EAAAA,CAAAA,GACjB,EACF,CAEJ,CACF,EACA,SAASD,EAAAA,CAAe1L,CAAOyG,CAAAA,CAAAA,CAAMmC,EAAMjN,CAAM,CAAA,CAC/C,IAAMqJ,CAAAA,CAAUyB,EACXzB,CAAQ,CAAA,YAAA,GAGTxJ,CAAWG,CAAAA,CAAI,EACjBqE,CAAM,CAAA,OAAA,CAAUmB,CAAU,CAAA,IAAM,CAC9BwH,EAAa3D,CAAAA,CAAAA,CAAS4D,CAAMjN,CAAAA,CAAAA,EAAM,EACpC,CAAC,CAEDgN,CAAAA,EAAAA,CAAa3D,EAAS4D,CAAMjN,CAAAA,CAAI,CAEpC,EAAA,CACA,SAAS6P,EAAWxL,CAAAA,CAAAA,CAAO0G,CAAQ6B,CAAAA,CAAAA,CAAO5B,EAAQ,CAC5CnL,CAAAA,CAAW+M,CAAK,CAAA,CAClBvI,EAAM,OAAUmB,CAAAA,CAAAA,CAAU,IAAM,CAC9B,IAAM0K,CAAYnQ,CAAAA,CAAAA,CAAY6M,CAAM,EAAC,EAAE,GAAIH,CAAAA,EAAU,CACrDpI,CAAAA,CAAAA,CAAM,UAAY2J,EAAcjD,CAAAA,CAAAA,CAAQ1G,CAAM,CAAA,SAAA,CAAW6L,EAAWlF,CAAM,EAC5E,CAAC,CAAA,CAEDjL,EAAY6M,CAAK,CAAA,CAAE,OAAQ,CAAA,CAAC9B,EAAM,CAAM,GAAA,CACtC,IAAMqF,CAAAA,CAAU1D,EAAW3B,CAAAA,CAAI,CAC/BzG,CAAAA,CAAAA,CAAM,UAAU,GAAI,CAAA,MAAA,CAAO,CAAC,CAAA,CAAG8L,CAAO,CACtCxD,CAAAA,CAAAA,CAAY5B,CAAQoF,CAAAA,CAAAA,CAASnF,CAAM,EACrC,CAAC,EAEL,CACA,SAASoF,EAAQhN,CAAAA,CAAAA,CAAI,CACnB,IAAIkH,EACJ+F,CAAwB,CAAA,WAAW,CAClC/F,CAAAA,CAAAA,CAAAA,CAAKE,EAAM,GAAQ,GAAA,IAAA,EAAgBF,CAAG,CAAA,OAAA,CAAQ,UAAWlH,CAAE,EAC9D,CACA,SAASkN,GAAUlN,CAAI,CAAA,CACrB,IAAIkH,CAAAA,CACJ+F,EAAwB,WAAW,CAAA,CAAA,CAClC/F,CAAKE,CAAAA,CAAAA,CAAM,MAAQ,IAAgBF,EAAAA,CAAAA,CAAG,OAAQ,CAAA,SAAA,CAAWlH,CAAE,EAC9D,CACA,SAASiN,CAAAA,CAAwBhG,EAAMnJ,CAAK,CAAA,CACrCsJ,CAAM,CAAA,GAAA,EACT,QAAQ,KACN,CAAA,CAAA,CAAA,EAAIH,CAAI,CAAA,OAAA,EAAU3K,GAASwB,CAAG,CAAA,CAAIA,CAAI,CAAA,QAAA,GAAaA,CAAG,CAAA;AAAA,2DAExD,CAAA,EAEJ,CACA,SAASqP,EAAWrP,CAAAA,CAAAA,CAAKC,CAAO,CAAA,CAC9B,IAAImJ,CAAAA,CACJ+F,CAAwB,CAAA,YAAA,CAAcnP,CAAG,CAAA,CAAA,CACxCoJ,CAAKE,CAAAA,CAAAA,CAAM,GAAQ,GAAA,IAAA,EAAgBF,CAAG,CAAA,UAAA,CAAWpJ,CAAKC,CAAAA,CAAK,EAC9D,CACA,SAASqP,EAAAA,CAAUtP,CAAKuP,CAAAA,CAAAA,CAAc,CACpC,IAAInG,CACJ,CAAA,OAAA+F,CAAwB,CAAA,WAAA,CAAanP,CAAG,CAAA,CAAA,CAAA,CAC/BoJ,CAAKE,CAAAA,CAAAA,CAAM,GAAQ,GAAA,IAAA,CAAO,KAASF,CAAAA,CAAAA,CAAAA,CAAG,UAAWpJ,CAAAA,CAAG,CAAMuP,GAAAA,CACrE,CACA,SAASC,EAAS,EAAA,CAEhB,OADYzL,EAAAA,CAAc,IAAI,CAEhC,CACA,SAAS0L,EAAmBhG,CAAAA,CAAAA,CAAO,CACjC,OAAO,MAAO,CAAA,OAAA,CAAQA,CAAK,CAAA,CAAE,GAAI,CAAA,CAAC,CAACzJ,CAAAA,CAAKC,CAAK,CAAA,GACvCD,CAAQ,GAAA,UAAA,EAAcrB,CAAWsB,CAAAA,CAAK,CAAU,CAAA,EAAA,CAC7C,CAAGD,EAAAA,CAAG,CAAKd,EAAAA,EAAAA,EAAAA,CAAO,MAAOe,CAAAA,CAAK,CAAC,CAAC,CACxC,CAAA,CAAA,CAAA,CAAE,MAAO,CAAA,OAAO,CAAE,CAAA,IAAA,CAAK,GAAG,CAC7B,CACA,SAASyP,EAAejG,CAAAA,CAAAA,CAAO,CAC7B,MAAA,CAAO,IAAKA,CAAAA,CAAK,CAAE,CAAA,OAAA,CAASkG,CAAY,EAAA,CAClChR,CAAW8K,CAAAA,CAAAA,CAAMkG,CAAO,CAAC,CAC3B,EAAA,OAAOlG,CAAMkG,CAAAA,CAAO,CAElB9L,CAAAA,CAAAA,CAAS4F,CAAMkG,CAAAA,CAAO,CAAC,CAAA,GACzBlG,CAAMkG,CAAAA,CAAO,CAAIlG,CAAAA,CAAAA,CAAMkG,CAAO,CAAA,CAAE,KAEpC,EAAA,CAAC,EACH,CACA,SAASC,EAAkBnK,CAAAA,CAAAA,CAAQpF,CAAML,CAAAA,CAAAA,CAAK6P,CAAMC,CAAAA,CAAAA,CAAepB,CAAM,CAAA,CACvE,GAAI7K,CAAAA,CAAS4B,CAAM,CAAA,CACjBoK,CAAK,CAAA,QAAA,EAAYpK,CAAO,CAAA,KAAA,CAAA,KAAA,GACfA,CAAkBsK,YAAAA,EAAAA,CAAY,CACvC,IAAMC,CAAStB,CAAAA,CAAAA,CAAO,MAAOA,CAAAA,CAAI,CAAI,CAAA,CAAA,EAAG1O,CAAG,CAAA,CAAA,CACtC8P,CAAcE,CAAAA,CAAM,CAAGF,GAAAA,CAAAA,CAAcE,CAAM,CAAA,CAAI,EAAC,CAAA,CACrD,IAAMC,CAAAA,CAAcxK,CAAO,CAAA,KAAA,EAC3BqK,CAAAA,CAAAA,CAAcE,CAAM,CAAA,CAAE,IACpBrR,CAAAA,CAAAA,CAAWsR,CAAW,CAAA,CAAIA,CAAY5P,CAAAA,CAAI,CAAIwD,CAAAA,CAAAA,CAASoM,CAAW,CAAA,CAAIA,CAAY,CAAA,KAAA,CAAQA,CAC5F,EACF,CACEJ,KAAAA,CAAAA,CAAK,QAAYlR,EAAAA,CAAAA,CAAW8G,CAAM,CAAA,CAAIA,CAAOpF,CAAAA,CAAI,CAAI,CAAA,MAAA,CAAOoF,CAAM,EAEtE,CACA,IAAIsK,EAAa,CAAA,MAAMG,EAAoB5G,SAAAA,CAAM,CAC/C,WAAA,CAAYE,CAAWC,CAAAA,CAAAA,CAAQ,EAAC,CAAGzJ,CAAK,CAAA,CACtC,KAAM,EAAA,CACN,IAAK,CAAA,QAAA,CAAWwJ,CAChB,CAAA,IAAA,CAAK,KAAQC,CAAAA,CAAAA,CACb,IAAK,CAAA,GAAA,CAAMzJ,CACX,CAAA,IAAA,CAAK,aAAgB,CAAA,EACrB,CAAA,IAAA,CAAK,kBAAqB,CAAA,GAC5B,CAIA,KAAQ,EAAA,CACN,IAAK,CAAA,OAAA,EACL,CAAA,IAAMuM,CAAS,CAAA,IAAA,CAAK,MAAO,EAAA,CAC3B,OAAK,IAAA,CAAA,SAAA,EACEA,CAAAA,CACT,CAIA,aAAA,EAAgB,CACd,IAAM4D,CAAqB,CAAA,KAAA,CAAM,QAAQ,IAAK,CAAA,QAAQ,CAAI,CAAA,IAAA,CAAK,QAAS,CAAA,MAAA,CAAO,CAACrL,CAAAA,CAAK+K,CAAM9G,CAAAA,CAAAA,IACzFjE,CAAIiE,CAAAA,CAAAA,CAAQ,CAAC,CAAA,CAAI,CAAE,QAAA,CAAU8G,CAAK,CAAA,CAC3B/K,CACN,CAAA,CAAA,EAAE,CAAA,CAAI,IAAK,CAAA,QAAA,CACV1G,EAAS+R,CAAAA,CAAkB,CAC7B,EAAA,MAAA,CAAO,OAAQA,CAAAA,CAAkB,CAAE,CAAA,OAAA,CAAQ,CAAC,CAACnQ,CAAK6P,CAAAA,CAAI,CAAM,GAAA,CAC1D,IAAMxP,CAAAA,CAAOH,EAAe,CAAA,EAAI,CAAA,IAAA,CAAK,KAAMF,CAAAA,CAAG,CAAC,CAAA,CAC/C0P,EAAerP,CAAAA,CAAI,CACfA,CAAAA,CAAAA,CAAK,QACPA,EAAAA,CAAAA,CAAK,QAAS,CAAA,OAAA,CAASoO,CAAS,EAAA,CAC9B,GAAM,CAAC/C,CAAOgD,CAAAA,CAAI,CAAIpQ,CAAAA,CAAAA,CAAQmQ,CAAI,CAAA,CAAIA,CAAO,CAAA,CAACA,CAAM,CAAA,IAAI,CACxD,CAAA,GAAI9P,CAAW+M,CAAAA,CAAK,CAAG,CAAA,CACrB,IAAMjG,CAAAA,CAASiG,CAAMrL,CAAAA,CAAI,CACzBuP,CAAAA,EAAAA,CAAkBnK,CAAQpF,CAAAA,CAAAA,CAAML,CAAK6P,CAAAA,CAAAA,CAAM,IAAK,CAAA,aAAA,CAAenB,CAAI,EACrE,CACEmB,KAAAA,CAAAA,CAAK,QAAYhM,EAAAA,CAAAA,CAAS6H,CAAK,CAAA,CAAIA,CAAM,CAAA,KAAA,CAAQ,MAAOA,CAAAA,CAAK,EAEjE,CAAC,CAEH,CAAA,IAAA,CAAK,kBAAmB1L,CAAAA,CAAG,CAAI,CAAA,CAC7B,QAAU6P,CAAAA,CAAAA,CAAK,QACf,CAAA,KAAA,CAAOxP,CACT,EACF,CAAC,EAEL,CAIA,MAAA,EAAS,CACP,GAAI1B,CAAW,CAAA,IAAA,CAAK,QAAQ,CAAA,CAAG,CAC7B,IAAMyR,CAAO,CAAA,IAAA,CAAK,QAAS,CAAA,IAAA,CAAK,KAAK,CAAA,CACrC,OAAOA,CAAAA,YAAgBF,EAAcE,CAAAA,CAAAA,CAAK,KAAM,EAAA,CAAI,MAAOA,CAAAA,CAAI,CACjE,CACA,OAAI,IAAA,CAAK,QAAoBF,YAAAA,EAAAA,CACpB,IAAK,CAAA,QAAA,CAAS,KAAM,EAAA,EAE7B,IAAK,CAAA,aAAA,EACE,CAAA,MAAA,CAAO,OAAQ,CAAA,IAAA,CAAK,kBAAkB,CAAA,CAAE,GAAI,CAAA,CAAC,CAAClQ,CAAAA,CAAK,CAAE,QAAA,CAAUwJ,CAAW,CAAA,KAAA,CAAAC,CAAM,CAAC,CAAM,GAAA,CAC5F,IAAI4G,CAAAA,CAAU7G,CACd,CAAA,OAAIC,CAAS,EAAA,MAAA,CAAO,IAAKA,CAAAA,CAAK,CAAE,CAAA,MAAA,CAAS,CACvC4G,GAAAA,CAAAA,EAAW,CAAIZ,CAAAA,EAAAA,EAAAA,CAAmBhG,CAAK,CAAC,CAEtC,CAAA,CAAA,CAAA,IAAA,CAAK,aAAczJ,CAAAA,CAAG,CACxBqQ,GAAAA,CAAAA,CAAUA,CAAQ,CAAA,OAAA,CAAQ,KAAO,CAAA,IAAA,CAAK,cAAe,CAAA,IAAA,CAAK,aAAcrQ,CAAAA,CAAG,CAAC,CAAC,CAExEqQ,CAAAA,CAAAA,CACT,CAAC,CAAA,CAAE,IAAK,CAAA,EAAE,CACZ,CAAA,CAIA,cAAepD,CAAAA,CAAAA,CAAU,CACvB,OAAOpO,CAAYoO,CAAAA,CAAQ,CAAE,CAAA,GAAA,CAAI,MAAM,CAAA,CAAE,IAAK,CAAA,EAAE,CAClD,CACF,CACA,CAAA,SAASqD,EAAIC,CAAAA,CAAAA,CAAW9G,CAAO,CAAA,CAC7B,OAAO,IAAIsG,EAAWQ,CAAAA,CAAAA,CAAW9G,CAAK,CACxC,CACA,SAAS+G,EAAeD,CAAAA,CAAAA,CAAW9G,CAAO,CAAA,CACxC,OAAO6G,EAAAA,CAAIC,CAAW9G,CAAAA,CAAK,CAAE,CAAA,KAAA,EAC/B,CCvxBI,UACF,GAAA,UAAA,CAAW,iBAAoBtL,CAAAA,EAAAA,CAAAA","file":"essor.esm.js","sourcesContent":["export const essor_version = '0.0.12';\n","import { _toString } from './comm';\n\nexport const isObject = (val: unknown): val is Record<any, any> =>\n val !== null && typeof val === 'object';\nexport function isPromise(val: any): val is Promise<any> {\n return _toString.call(val) === '[object Promise]';\n}\n\nexport const isArray = Array.isArray;\n\nexport function isString(val: unknown): val is string {\n return typeof val === 'string';\n}\nexport function isNull(val: any): val is null {\n return val === null;\n}\nexport function isSymbol(val: unknown): val is symbol {\n return typeof val === 'symbol';\n}\n\nexport function isSet(val: any): val is Set<any> {\n return _toString.call(val) === '[object Set]';\n}\nexport function isWeakMap(val: any): val is WeakMap<any, any> {\n return _toString.call(val) === '[object WeakMap]';\n}\nexport function isWeakSet(val: any): val is WeakSet<any> {\n return _toString.call(val) === '[object WeakSet]';\n}\n\nexport function isMap(val: unknown): val is Map<any, any> {\n return _toString.call(val) === '[object Map]';\n}\nexport function isNil(x: any): x is null | undefined {\n return x === null || x === undefined;\n}\n\nexport const isFunction = (val: unknown): val is Function => typeof val === 'function';\n\nexport function isFalsy(x: any): x is false | null | undefined {\n return x === false || x === null || x === undefined;\n}\n\nexport const isPrimitive = (\n val: unknown,\n): val is string | number | boolean | symbol | null | undefined =>\n ['string', 'number', 'boolean', 'symbol', 'undefined'].includes(typeof val) || isNull(val);\n\nexport function isHTMLElement(obj) {\n if (!obj) return false;\n return obj && typeof obj === 'object' && obj.nodeType === 1 && typeof obj.nodeName === 'string';\n}\n\nexport const isPlainObject = (val: unknown): val is object =>\n _toString.call(val) === '[object Object]';\n\nexport type StringNumber = `${number}`;\nexport function isStringNumber(val: unknown): val is StringNumber {\n if (!isString(val)) {\n return false;\n }\n return !Number.isNaN(Number(val));\n}\n","import { isFunction, isString } from './is';\n\nexport const _toString = Object.prototype.toString;\nexport const extend = Object.assign;\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\nexport const hasOwn = (val: object, key: string | symbol): key is keyof typeof val =>\n hasOwnProperty.call(val, key);\n\nexport function coerceArray<T>(data: T | T[]): T[] {\n return Array.isArray(data) ? (data.flat() as T[]) : [data];\n}\nexport const hasChanged = (value, oldValue) =>\n value !== oldValue && (value === value || oldValue === oldValue);\nexport const noop = Function.prototype as () => void;\n\n/**\n * A function that checks if a string starts with a specific substring.\n * indexOf faster under normal circumstances\n * @see https://www.measurethat.net/Benchmarks/Show/12350/0/startswith-vs-test-vs-match-vs-indexof#latest_results_block\n\n * @param {string} str - The input string to check.\n * @param {string} searchString - The substring to check for at the beginning of the input string.\n * @return {boolean} Returns true if the input string starts with the specified substring, otherwise false.\n */\nexport function startsWith(str, searchString) {\n if (!isString(str)) {\n return false;\n }\n return str.indexOf(searchString) === 0;\n}\n\n/**\n * Escapes special HTML characters in a string.\n * @param str - The string to escape.\n * @returns The escaped string.\n */\nexport function escape(str: string): string {\n return str.replaceAll(/[\"&'<>]/g, char => {\n switch (char) {\n case '&':\n return '&amp;';\n case '<':\n return '&lt;';\n case '>':\n return '&gt;';\n case '\"':\n return '&quot;';\n case \"'\":\n return '&#039;';\n default:\n return char;\n }\n });\n}\n\nexport type ExcludeType = ((key: string | symbol) => boolean) | (string | symbol)[];\n\n/**\n * Checks if a key should be excluded based on the provided exclude criteria.\n * @param key - The key to check.\n * @param exclude - The exclusion criteria.\n * @returns True if the key should be excluded, otherwise false.\n */\nexport function isExclude(key: string | symbol, exclude?: ExcludeType): boolean {\n return Array.isArray(exclude)\n ? exclude.includes(key)\n : isFunction(exclude)\n ? exclude(key)\n : false;\n}\n\n/**\n * Generates a unique random 8 character string ID.\n * The generated IDs only contain alphanumeric characters.\n * @returns A unique random 8 character string ID.\n */\nexport function generateUniqueId() {\n const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n let result = '';\n const charactersLength = characters.length;\n for (let i = 0; i < 8; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n}\n\n/**\n * Checks if the current environment is a browser.\n * @returns True if the current environment is a browser, otherwise false.\n */\nexport function isBrowser() {\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n}\n","export const kebabCase = (string: string): string => {\n return string.replaceAll(/[A-Z]+/g, (match, offset) => {\n return `${offset > 0 ? '-' : ''}${match.toLocaleLowerCase()}`;\n });\n};\n\nexport const camelCase = (str: string): string => {\n const s = str.replaceAll(/[\\s_-]+(.)?/g, (_, c) => (c ? c.toUpperCase() : ''));\n return s[0].toLowerCase() + s.slice(1);\n};\n/**\n * Capitalizes the first letter of a string.\n *\n * @param {string} inputString - The input string to capitalize the first letter.\n * @return {string} The string with the first letter capitalized.\n */\nexport const capitalizeFirstLetter = (inputString: string): string => {\n return inputString.charAt(0).toUpperCase() + inputString.slice(1);\n};\n","/**\n* @estjs/signal v0.0.12\n* (c) 2023-Present jiangxd <jiangxd2016@gmail.com>\n* @license MIT\n**/\nvar __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\n\n// ../shared/dist/shared.js\nvar isObject = (val) => val !== null && typeof val === \"object\";\nvar isArray = Array.isArray;\nfunction isString(val) {\n return typeof val === \"string\";\n}\nfunction isSet(val) {\n return _toString.call(val) === \"[object Set]\";\n}\nfunction isWeakMap(val) {\n return _toString.call(val) === \"[object WeakMap]\";\n}\nfunction isWeakSet(val) {\n return _toString.call(val) === \"[object WeakSet]\";\n}\nfunction isMap(val) {\n return _toString.call(val) === \"[object Map]\";\n}\nvar isFunction = (val) => typeof val === \"function\";\nvar isPlainObject = (val) => _toString.call(val) === \"[object Object]\";\nfunction isStringNumber(val) {\n if (!isString(val)) {\n return false;\n }\n return !Number.isNaN(Number(val));\n}\nvar _toString = Object.prototype.toString;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar hasOwn = (val, key) => hasOwnProperty.call(val, key);\nvar hasChanged = (value, oldValue) => value !== oldValue && (value === value || oldValue === oldValue);\nvar noop = Function.prototype;\nfunction isExclude(key, exclude) {\n return Array.isArray(exclude) ? exclude.includes(key) : isFunction(exclude) ? exclude(key) : false;\n}\nfunction warn(msg, ...args) {\n console.warn.apply(console, [`[Essor warn]: ${msg}`].concat(args));\n}\n\n// src/scheduler.ts\nvar queue = [];\nvar activePreFlushCbs = [];\nvar p = Promise.resolve();\nvar isFlushPending = false;\nfunction nextTick(fn) {\n return fn ? p.then(fn) : p;\n}\nfunction queueJob(job) {\n if (!queue.includes(job)) {\n queue.push(job);\n queueFlush();\n }\n}\nfunction queueFlush() {\n if (isFlushPending) {\n return;\n }\n isFlushPending = true;\n nextTick(flushJobs);\n}\nfunction queuePreFlushCb(cb) {\n queueCb(cb, activePreFlushCbs);\n}\nfunction queueCb(cb, activeQueue) {\n if (!activeQueue.includes(cb)) {\n activeQueue.push(cb);\n queueFlush();\n }\n}\nfunction flushJobs() {\n isFlushPending = false;\n flushPreFlushCbs();\n let job;\n while (job = queue.shift()) {\n if (job) {\n job();\n }\n }\n}\nfunction flushPreFlushCbs() {\n while (activePreFlushCbs.length > 0) {\n const cb = activePreFlushCbs.shift();\n if (cb) {\n cb();\n }\n }\n}\n\n// src/signal.ts\nvar activeEffect = null;\nvar activeComputed = null;\nvar triggerMap = /* @__PURE__ */ new WeakMap();\nvar reactiveMap = /* @__PURE__ */ new WeakMap();\nvar ReactiveSymbol = Symbol(\"ReactiveSymbol\" );\nvar ReactivePeekSymbol = Symbol(\"__raw\" );\nvar SignalValueKey = Symbol(\"SignalValueKey\" );\nvar ComputedValueKey = Symbol(\"ComputedValueKey\" );\nvar reactiveArrayKey = Symbol(\"ReactiveArrayKey\" );\nvar ReactiveCollectionKey = Symbol(\"ReactiveCollectionKey\" );\nvar ReactiveWeakCollectionKey = Symbol(\"ReactiveWeakCollectionKey\" );\nvar inBatch = false;\nvar batchQueue = /* @__PURE__ */ new Set();\nfunction track(target, key) {\n if (!activeEffect && !activeComputed) return;\n let depsMap = triggerMap.get(target);\n if (!depsMap) {\n depsMap = /* @__PURE__ */ new Map();\n triggerMap.set(target, depsMap);\n }\n let dep = depsMap.get(key);\n if (!dep) {\n dep = /* @__PURE__ */ new Set();\n depsMap.set(key, dep);\n }\n if (activeEffect) dep.add(activeEffect);\n}\nfunction trigger(target, key) {\n const depsMap = triggerMap.get(target);\n if (!depsMap) return;\n const dep = depsMap.get(key);\n if (dep) {\n dep.forEach((effect) => {\n if (hasOwn(effect, \"active\") && !effect.active) {\n dep.delete(effect);\n return;\n }\n if (inBatch) {\n batchQueue.add(effect);\n } else {\n effect();\n }\n });\n }\n}\nvar Signal = class {\n /**\n * Creates a new Signal instance.\n * @param {T} value - The initial value of the Signal.\n * @param {boolean} [shallow] - Whether to create a shallow Signal.\n */\n constructor(value, shallow = false) {\n // is should be read\n //@ts-ignore\n this.__signal = true;\n this._shallow = shallow;\n this._value = value;\n }\n /**\n * Gets the current value of the Signal.\n * @returns {T} The current value.\n */\n get value() {\n track(this, SignalValueKey);\n if (isObject(this._value) && !this._shallow) {\n return useReactive(this._value);\n }\n return this._value;\n }\n /**\n * Sets a new value for the Signal.\n * @param {T} newValue - The new value to set.\n */\n set value(newValue) {\n if (isSignal(newValue)) {\n newValue = newValue.peek();\n }\n if (hasChanged(newValue, this._value)) {\n this._value = newValue;\n trigger(this, SignalValueKey);\n }\n }\n /**\n * Returns the current value without triggering reactivity.\n * @returns {T} The current value.\n */\n peek() {\n return this._value;\n }\n};\nfunction useSignal(value) {\n if (isSignal(value)) {\n return value;\n }\n return new Signal(value);\n}\nfunction shallowSignal(value) {\n return new Signal(value, true);\n}\nfunction isSignal(value) {\n return !!(value && (value == null ? void 0 : value.__signal));\n}\nvar Computed = class {\n constructor(fn) {\n this.fn = fn;\n //@ts-ignore\n this.__computed = true;\n const prev = activeEffect;\n activeEffect = this.run.bind(this);\n this._value = this.fn();\n activeEffect = prev;\n }\n /**\n * Get the current computed value without tracking it.\n */\n peek() {\n return this._value;\n }\n /**\n * Run the computed function and update the value if it has changed.\n */\n run() {\n const newValue = this.fn();\n if (hasChanged(newValue, this._value)) {\n this._value = newValue;\n trigger(this, ComputedValueKey);\n }\n }\n /**\n * Get the current computed value and track its usage.\n */\n get value() {\n track(this, ComputedValueKey);\n return this._value;\n }\n};\nfunction useComputed(fn) {\n return new Computed(fn);\n}\nfunction isComputed(value) {\n return !!(value && value.__computed);\n}\nfunction createScheduler(effect, flush) {\n if (flush === \"sync\") {\n return () => effect();\n } else if (flush === \"pre\") {\n return () => queuePreFlushCb(effect);\n } else {\n return () => {\n nextTick(() => queueJob(effect));\n };\n }\n}\nfunction useEffect(fn, options = {}) {\n const { flush = \"pre\", onTrack, onTrigger } = options;\n function effectFn() {\n const prev = activeEffect;\n activeEffect = effectFn.init ? effectFn : effectFn.scheduler;\n fn();\n onTrigger && onTrigger();\n activeEffect = prev;\n }\n const scheduler = createScheduler(effectFn, flush);\n effectFn.scheduler = scheduler;\n effectFn.init = true;\n effectFn.active = true;\n onTrack && onTrack();\n effectFn();\n return () => {\n effectFn.active = false;\n activeEffect = null;\n };\n}\nfunction signalObject(initialValues, exclude) {\n if (!initialValues || !isObject(initialValues)) {\n {\n warn(\"initialValues must be an object,will return initial value!\", initialValues);\n }\n return initialValues;\n }\n const signals = Object.entries(initialValues).reduce((acc, [key, value]) => {\n acc[key] = isExclude(key, exclude) || isSignal(value) ? value : useSignal(value);\n return acc;\n }, {});\n return signals;\n}\nfunction unSignal(signal, exclude) {\n if (!signal) return {};\n if (isSignal(signal)) {\n return signal.peek();\n }\n if (isArray(signal)) {\n return signal.map((value) => unSignal(value, exclude));\n }\n if (isPlainObject(signal)) {\n return Object.entries(signal).reduce((acc, [key, value]) => {\n if (isExclude(key, exclude)) {\n acc[key] = value;\n } else {\n acc[key] = isSignal(value) ? value.peek() : isReactive(value) ? unReactive(value) : value;\n }\n return acc;\n }, {});\n }\n return signal;\n}\nfunction isReactive(obj) {\n return !!(obj && typeof obj === \"object\" && obj[ReactiveSymbol]);\n}\nfunction useReactive(initialValue, exclude) {\n return reactive(initialValue, false, exclude);\n}\nfunction shallowReactive(initialValue, exclude) {\n return reactive(initialValue, true, exclude);\n}\nfunction unReactive(target) {\n if (!isObject(target)) {\n return target;\n }\n if (!isReactive(target)) {\n return target;\n }\n return target[ReactivePeekSymbol];\n}\nvar basicHandler = (shallow, exclude) => {\n return {\n get(target, key, receiver) {\n if (key === ReactiveSymbol) return true;\n if (key === ReactivePeekSymbol) return target;\n const getValue = Reflect.get(target, key, receiver);\n const value = isSignal(getValue) ? getValue.value : getValue;\n if (isExclude(key, exclude)) {\n return value;\n }\n track(target, key);\n if (isObject(value) && !shallow) {\n return useReactive(value);\n }\n return value;\n },\n set(target, key, value, receiver) {\n if (isExclude(key, exclude)) {\n Reflect.set(target, key, value, receiver);\n return true;\n }\n let oldValue = Reflect.get(target, key, receiver);\n if (isSignal(oldValue)) {\n oldValue = oldValue.value;\n }\n if (isSignal(value)) {\n value = value.value;\n }\n const obj = Reflect.set(target, key, value, receiver);\n if (hasChanged(value, oldValue)) {\n trigger(target, key);\n }\n return obj;\n },\n // handle delete\n deleteProperty(target, key) {\n const oldValue = Reflect.get(target, key);\n const result = Reflect.deleteProperty(target, key);\n if (oldValue !== void 0) {\n trigger(target, key);\n }\n return result;\n }\n };\n};\nvar arrayInstrumentations = createArrayInstrumentations();\nfunction createArrayInstrumentations() {\n const instrumentations2 = {};\n [\"includes\", \"indexOf\", \"lastIndexOf\"].forEach((key) => {\n instrumentations2[key] = function(...args) {\n const arr = this;\n for (let i = 0, l = this.length; i < l; i++) {\n track(arr, `${i}`);\n }\n const res = arr[key](...args);\n if (res === -1 || res === false) {\n return arr[key](...args);\n }\n return res;\n };\n });\n [\"push\", \"pop\", \"shift\", \"unshift\", \"splice\", \"sort\", \"reverse\", \"fill\", \"copyWithin\"].forEach(\n (key) => {\n instrumentations2[key] = function(...args) {\n const arr = unReactive(this);\n const res = arr[key].apply(this, args);\n trigger(arr, reactiveArrayKey);\n return res;\n };\n }\n );\n [\n \"forEach\",\n \"map\",\n \"filter\",\n \"reduce\",\n \"reduceRight\",\n \"some\",\n \"every\",\n \"find\",\n \"findIndex\",\n \"findLast\",\n \"findLastIndex\",\n \"entries\",\n \"keys\",\n \"values\"\n ].forEach((key) => {\n instrumentations2[key] = function(...args) {\n const arr = unReactive(this);\n track(arr, reactiveArrayKey);\n return arr[key].apply(this, args);\n };\n });\n return instrumentations2;\n}\nvar ArrayHandler = (shallow, exclude) => {\n return {\n get(target, key, receiver) {\n if (key === ReactiveSymbol) return true;\n if (key === ReactivePeekSymbol) return target;\n if (arrayInstrumentations.hasOwnProperty(key)) {\n return Reflect.get(arrayInstrumentations, key, receiver);\n }\n const value = Reflect.get(target, key, receiver);\n if (isExclude(key, exclude)) {\n return value;\n }\n if (isStringNumber(key)) {\n track(target, key);\n }\n track(target, \"length\");\n if (isObject(value) && !shallow) {\n return reactive(value);\n }\n return value;\n },\n set(target, key, value, receiver) {\n const oldValue = Reflect.get(target, key, receiver);\n const result = Reflect.set(target, key, value, receiver);\n if (hasChanged(value, oldValue)) {\n if (isStringNumber(key)) {\n trigger(target, key);\n }\n if (key === \"length\") {\n trigger(target, \"length\");\n }\n }\n return result;\n }\n };\n};\nvar collectionHandlers = {\n get(target, key) {\n if (key === ReactiveSymbol) return true;\n if (key === ReactivePeekSymbol) return target;\n if (key === Symbol.iterator || key === \"size\") {\n track(target, ReactiveCollectionKey);\n }\n return Reflect.get(\n hasOwn(instrumentations, key) && key in target ? instrumentations : target,\n key,\n target\n );\n }\n};\nvar weakCollectionHandlers = {\n get(target, key) {\n if (key === ReactiveSymbol) return true;\n if (key === ReactivePeekSymbol) return target;\n return Reflect.get(\n hasOwn(weakInstrumentations, key) && key in target ? weakInstrumentations : target,\n key,\n target\n );\n }\n};\nvar instrumentations = {\n get(key) {\n const target = unReactive(this);\n track(target, ReactiveCollectionKey);\n return target.get(key);\n },\n set(key, value) {\n const target = unReactive(this);\n const result = target.set(key, value);\n trigger(target, ReactiveCollectionKey);\n return result;\n },\n add(value) {\n const target = unReactive(this);\n const result = target.add(value);\n trigger(target, ReactiveCollectionKey);\n return result;\n },\n has(key) {\n const target = unReactive(this);\n track(target, ReactiveCollectionKey);\n return target.has(key);\n },\n delete(key) {\n const target = unReactive(this);\n const hadKey = target.has(key);\n const result = target.delete(key);\n if (hadKey) {\n trigger(target, ReactiveCollectionKey);\n }\n return result;\n },\n clear() {\n const target = unReactive(this);\n const hadItems = target.size > 0;\n const result = target.clear();\n if (hadItems) {\n trigger(target, ReactiveCollectionKey);\n }\n return result;\n },\n forEach(callback, thisArg) {\n const target = unReactive(this);\n track(target, ReactiveCollectionKey);\n target.forEach((value, key) => {\n callback.call(thisArg, value, key, target);\n });\n },\n get size() {\n const target = unReactive(this);\n track(target, ReactiveCollectionKey);\n return target.size;\n },\n keys() {\n const target = unReactive(this);\n track(target, ReactiveCollectionKey);\n return target.keys();\n },\n values() {\n const target = unReactive(this);\n track(target, ReactiveCollectionKey);\n return target.values();\n },\n entries() {\n const target = unReactive(this);\n track(target, ReactiveCollectionKey);\n return target.entries();\n },\n [Symbol.iterator]() {\n const target = unReactive(this);\n track(target, ReactiveCollectionKey);\n return target[Symbol.iterator]();\n }\n};\nvar weakInstrumentations = {\n get(key) {\n const target = unReactive(this);\n track(target, ReactiveWeakCollectionKey);\n return target.get(key);\n },\n set(key, value) {\n const target = unReactive(this);\n const result = target.set(key, value);\n trigger(target, ReactiveWeakCollectionKey);\n return result;\n },\n add(value) {\n const target = unReactive(this);\n const result = target.add(value);\n trigger(target, ReactiveWeakCollectionKey);\n return result;\n },\n has(key) {\n const target = unReactive(this);\n track(target, ReactiveWeakCollectionKey);\n return target.has(key);\n },\n delete(key) {\n const target = unReactive(this);\n const result = target.delete(key);\n trigger(target, ReactiveWeakCollectionKey);\n return result;\n }\n};\nfunction reactive(initialValue, shallow = false, exclude) {\n if (!isObject(initialValue)) {\n return initialValue;\n }\n if (isReactive(initialValue)) {\n return initialValue;\n }\n if (reactiveMap.has(initialValue)) {\n return reactiveMap.get(initialValue);\n }\n let handler;\n if (isArray(initialValue)) {\n track(initialValue, reactiveArrayKey);\n handler = ArrayHandler(shallow, exclude);\n } else if (isSet(initialValue) || isMap(initialValue)) {\n track(initialValue, ReactiveCollectionKey);\n handler = collectionHandlers;\n } else if (isWeakSet(initialValue) || isWeakMap(initialValue)) {\n track(initialValue, ReactiveWeakCollectionKey);\n handler = weakCollectionHandlers;\n } else {\n handler = basicHandler(shallow, exclude);\n }\n const proxy = new Proxy(initialValue, handler);\n reactiveMap.set(initialValue, proxy);\n return proxy;\n}\nfunction clearReactive(reactiveObj) {\n if (!isReactive(reactiveObj)) {\n {\n warn(\"clearReactive: argument must be a reactive object\");\n }\n return;\n }\n if (isWeakMap(reactiveObj) || isWeakSet(reactiveObj)) {\n {\n warn(\"clearReactive: WeakMap and WeakSet are not clearable\");\n }\n return;\n }\n useBatch(() => {\n if (isArray(reactiveObj)) {\n reactiveObj.length = 0;\n } else if (isSet(reactiveObj) || isMap(reactiveObj)) {\n reactiveObj.clear();\n } else if (isObject(reactiveObj)) {\n Object.keys(reactiveObj).forEach((key) => {\n delete reactiveObj[key];\n });\n }\n });\n}\nfunction useBatch(fn) {\n try {\n inBatch = true;\n fn();\n } finally {\n inBatch = false;\n runBatch();\n }\n}\nfunction runBatch() {\n if (batchQueue.size > 0) {\n batchQueue.forEach((effect) => effect());\n batchQueue.clear();\n }\n}\n\n// src/watch.ts\nfunction useWatch(source, cb, options) {\n return doWatch(source, cb, options);\n}\nvar INITIAL_WATCHER_VALUE = void 0;\nvar watcher;\nvar flushing = false;\nfunction queueWatcher(fn) {\n watcher = fn;\n if (!flushing) {\n flushing = true;\n nextTick(flushWatchers);\n }\n}\nfunction flushWatchers() {\n watcher == null ? void 0 : watcher();\n watcher = null;\n flushing = false;\n}\nfunction doWatch(source, cb, { deep, immediate } = {}) {\n let getter;\n const isMultiSource = isArray(source);\n if (isSignal(source) || isComputed(source)) {\n getter = () => source.value;\n } else if (isReactive(source)) {\n getter = () => __spreadValues({}, source);\n } else if (isMultiSource) {\n getter = () => source.map((s) => resolveSource(s));\n } else if (isFunction(source)) {\n getter = source;\n } else {\n warn(\"Invalid source type\", source);\n return noop;\n }\n if (cb && deep) {\n const baseGetter = getter;\n const depth = deep === true ? Infinity : deep;\n getter = () => traverse(baseGetter(), depth);\n }\n let oldValue = isMultiSource ? Array.from({ length: source.length }).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE;\n let runCb = false;\n const effectFn = () => {\n const newValue = getter();\n if (hasChanged(newValue, oldValue)) {\n if (immediate && cb) {\n cb(newValue, oldValue);\n oldValue = newValue;\n }\n if (runCb && cb) {\n queueWatcher(() => {\n cb(newValue, oldValue);\n oldValue = newValue;\n });\n }\n !runCb && (oldValue = newValue);\n }\n };\n const stop = useEffect(effectFn, { flush: \"sync\" });\n runCb = true;\n if (immediate) {\n effectFn();\n }\n return stop;\n}\nfunction resolveSource(s) {\n if (isSignal(s) || isComputed(s)) return s.value;\n if (isReactive(s)) return __spreadValues({}, s);\n if (isFunction(s)) return s();\n warn(\"Invalid source\", s);\n return noop;\n}\nfunction traverse(value, depth = Infinity, seen) {\n if (depth <= 0 || !isObject(value)) {\n return value;\n }\n seen = seen || /* @__PURE__ */ new Set();\n if (seen.has(value)) {\n return value;\n }\n seen.add(value);\n depth--;\n if (isSignal(value)) {\n traverse(value.value, depth, seen);\n } else if (isArray(value)) {\n for (const element of value) {\n traverse(element, depth, seen);\n }\n } else if (isSet(value) || isMap(value)) {\n value.forEach((v) => {\n traverse(v, depth, seen);\n });\n } else if (isPlainObject(value)) {\n for (const key in value) {\n traverse(value[key], depth, seen);\n }\n }\n return value;\n}\n\n// src/store.ts\nfunction createOptionsStore(options) {\n const { state, getters, actions } = options;\n const initState = __spreadValues({}, state != null ? state : {});\n const reactiveState = useReactive(state != null ? state : {});\n const subscriptions = [];\n const actionCallbacks = [];\n const default_actions = {\n patch$(payload) {\n Object.assign(reactiveState, payload);\n subscriptions.forEach((callback) => callback(reactiveState));\n actionCallbacks.forEach((callback) => callback(reactiveState));\n },\n subscribe$(callback) {\n subscriptions.push(callback);\n },\n unsubscribe$(callback) {\n const index = subscriptions.indexOf(callback);\n if (index !== -1) {\n subscriptions.splice(index, 1);\n }\n },\n onAction$(callback) {\n actionCallbacks.push(callback);\n },\n reset$() {\n Object.assign(reactiveState, initState);\n }\n };\n const store = __spreadValues({\n state: reactiveState\n }, default_actions);\n for (const key in getters) {\n const getter = getters[key];\n if (getter) {\n Object.defineProperty(store, key, {\n get() {\n return useComputed(getter.bind(reactiveState, reactiveState)).value;\n },\n enumerable: true,\n configurable: true\n });\n }\n }\n for (const key in actions) {\n const action = actions[key];\n if (action) {\n store[key] = action.bind(reactiveState);\n }\n }\n return store;\n}\nfunction createStore(options) {\n return function() {\n return createOptionsStore(options);\n };\n}\n/**\n* @estjs/shared v0.0.12\n* (c) 2023-Present jiangxd <jiangxd2016@gmail.com>\n* @license MIT\n**/\n\nexport { clearReactive, createStore, isComputed, isReactive, isSignal, shallowReactive, shallowSignal, signalObject, unReactive, unSignal, useBatch, useComputed, useEffect, useReactive, useSignal, useWatch };\n","import { startsWith, isFunction, isString, isArray, isNil, capitalizeFirstLetter, coerceArray, isSymbol, isFalsy, kebabCase, isObject, escape } from '@estjs/shared';\nimport { signalObject, useReactive, isSignal, useSignal, useEffect, shallowSignal } from '@estjs/signal';\n\n/**\n* @estjs/template v0.0.12\n* (c) 2023-Present jiangxd <jiangxd2016@gmail.com>\n* @license MIT\n**/\nvar __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar _Hooks = class _Hooks {\n constructor() {\n this.hooks = {\n mounted: /* @__PURE__ */ new Set(),\n destroy: /* @__PURE__ */ new Set()\n };\n }\n addEventListener() {\n }\n removeEventListener() {\n }\n addHook(hook, cb) {\n var _a;\n (_a = this.hooks[hook]) == null ? void 0 : _a.add(cb);\n }\n getContext(context) {\n return _Hooks.context[context];\n }\n setContext(context, value) {\n _Hooks.context[context] = value;\n }\n initRef() {\n _Hooks.ref = this;\n }\n removeRef() {\n _Hooks.ref = null;\n }\n};\n_Hooks.ref = null;\n_Hooks.context = {};\nvar Hooks = _Hooks;\nvar ComponentNode = class extends Hooks {\n constructor(template2, props, key) {\n super();\n this.template = template2;\n this.props = props;\n this.key = key;\n this.proxyProps = {};\n this.emitter = /* @__PURE__ */ new Set();\n this.mounted = false;\n this.rootNode = null;\n this.context = {};\n this.trackMap = /* @__PURE__ */ new Map();\n this.proxyProps = signalObject(\n props,\n (key2) => startsWith(key2, \"on\") || startsWith(key2, \"update\")\n );\n this.key = this.key || props.key;\n }\n get firstChild() {\n var _a, _b;\n return (_b = (_a = this.rootNode) == null ? void 0 : _a.firstChild) != null ? _b : null;\n }\n get isConnected() {\n var _a, _b;\n return (_b = (_a = this.rootNode) == null ? void 0 : _a.isConnected) != null ? _b : false;\n }\n inheritNode(node) {\n this.context = node.context;\n this.hooks = node.hooks;\n Object.assign(this.proxyProps, node.proxyProps);\n this.rootNode = node.rootNode;\n this.trackMap = node.trackMap;\n const props = this.props;\n this.props = node.props;\n this.patchProps(props);\n }\n mount(parent, before) {\n var _a, _b, _c, _d;\n if (!isFunction(this.template)) {\n throw new Error(\"Template must be a function\");\n }\n if (this.isConnected) {\n return (_b = (_a = this.rootNode) == null ? void 0 : _a.mount(parent, before)) != null ? _b : [];\n }\n this.initRef();\n this.rootNode = this.template(useReactive(this.proxyProps, [\"children\"]));\n this.removeRef();\n this.mounted = true;\n const mountedNode = (_d = (_c = this.rootNode) == null ? void 0 : _c.mount(parent, before)) != null ? _d : [];\n this.hooks.mounted.forEach((handler) => handler());\n this.patchProps(this.props);\n return mountedNode;\n }\n unmount() {\n var _a;\n this.hooks.destroy.forEach((handler) => handler());\n Object.values(this.hooks).forEach((set) => set.clear());\n (_a = this.rootNode) == null ? void 0 : _a.unmount();\n this.rootNode = null;\n this.proxyProps = {};\n this.mounted = false;\n this.emitter.forEach((emitter) => emitter());\n }\n getNodeTrack(trackKey, suppressCleanupCall) {\n let track = this.trackMap.get(trackKey);\n if (!track) {\n track = { cleanup: () => {\n } };\n this.trackMap.set(trackKey, track);\n }\n if (!suppressCleanupCall) {\n track.cleanup();\n }\n return track;\n }\n patchProps(props) {\n var _a, _b, _c, _d;\n for (const [key, prop] of Object.entries(props)) {\n if (startsWith(key, \"on\") && ((_a = this.rootNode) == null ? void 0 : _a.nodes)) {\n const event = key.slice(2).toLowerCase();\n const listener = prop;\n const cleanup = addEventListener(this.rootNode.nodes[0], event, listener);\n this.emitter.add(cleanup);\n } else if (key === \"ref\") {\n props[key].value = (_b = this.rootNode) == null ? void 0 : _b.nodes[0];\n } else if (startsWith(key, \"update\")) {\n props[key] = isSignal(prop) ? prop.value : prop;\n } else if (key !== \"children\") {\n const newValue = (_d = (_c = this.proxyProps)[key]) != null ? _d : _c[key] = useSignal(prop);\n const track = this.getNodeTrack(key);\n track.cleanup = useEffect(() => {\n newValue.value = isFunction(prop) ? prop() : prop;\n });\n }\n }\n this.props = props;\n }\n};\n\n// src/template.ts\nfunction h(_template, props, key) {\n if (isString(_template)) {\n if (isHtmlTagName(_template)) {\n _template = convertToHtmlTag(_template);\n props = {\n 1: props\n };\n }\n if (_template === \"\") {\n props = {\n 0: props\n };\n }\n _template = template(_template);\n }\n return isFunction(_template) ? new ComponentNode(_template, props, key) : new TemplateNode(_template, props, key);\n}\nfunction isComponent(node) {\n return node instanceof ComponentNode;\n}\nfunction isJsxElement(node) {\n return node instanceof ComponentNode || node instanceof TemplateNode;\n}\nfunction template(html) {\n const template2 = document.createElement(\"template\");\n template2.innerHTML = closeHtmlTags(html);\n return template2;\n}\nfunction Fragment(props) {\n return props.children;\n}\n\n// src/utils.ts\nvar selfClosingTags = \"area,base,br,col,embed,hr,img,input,link,meta,param,source,track,wbr\";\nvar htmlTags = \"a,abbr,acronym,address,applet,area,article,aside,audio,b,base,basefont,bdi,bdo,bgsound,big,blink,blockquote,body,br,button,canvas,caption,center,cite,code,col,colgroup,command,content,data,datalist,dd,del,details,dfn,dialog,dir,div,dl,dt,em,embed,fieldset,figcaption,figure,font,footer,form,frame,frameset,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,i,iframe,image,img,input,ins,kbd,keygen,label,legend,li,link,listing,main,map,mark,marquee,menu,menuitem,meta,meter,nav,nobr,noframes,noscript,object,ol,optgroup,option,output,p,param,picture,plaintext,pre,progress,q,rb,rp,rt,rtc,ruby,s,samp,script,section,select,shadow,small,source,spacer,span,strike,strong,style,sub,summary,sup,table,tbody,td,template,textarea,tfoot,th,thead,time,title,tr,track,tt,u,ul,var,video,wbr,xmp\";\nfunction coerceNode(data) {\n if (isJsxElement(data) || data instanceof Node) {\n return data;\n }\n const text = isFalsy(data) ? \"\" : String(data);\n return document.createTextNode(text);\n}\nfunction insertChild(parent, child, before = null) {\n const beforeNode = isJsxElement(before) ? before.firstChild : before;\n if (isJsxElement(child)) {\n child.mount(parent, beforeNode);\n } else if (beforeNode) {\n beforeNode.before(child);\n } else {\n parent.append(child);\n }\n}\nfunction removeChild(child) {\n if (isJsxElement(child)) {\n child.unmount();\n } else {\n const parent = child.parentNode;\n if (parent) {\n child.remove();\n }\n }\n}\nfunction replaceChild(parent, node, child) {\n insertChild(parent, node, child);\n removeChild(child);\n}\nfunction setAttribute(element, attr, value) {\n if (attr === \"class\") {\n if (typeof value === \"string\") {\n element.className = value;\n } else if (Array.isArray(value)) {\n element.className = value.join(\" \");\n } else if (value && typeof value === \"object\") {\n element.className = Object.entries(value).reduce((acc, [key, value2]) => acc + (value2 ? ` ${key}` : \"\"), \"\").trim();\n }\n return;\n }\n if (attr === \"style\") {\n if (typeof value === \"string\") {\n element.style.cssText = value;\n } else if (value && typeof value === \"object\") {\n const obj = value;\n Object.keys(obj).forEach((key) => {\n element.style.setProperty(kebabCase(key), String(obj[key]));\n });\n }\n return;\n }\n if (isFalsy(value)) {\n element.removeAttribute(attr);\n } else if (value === true) {\n element.setAttribute(attr, \"\");\n } else {\n if (element instanceof HTMLInputElement) {\n element.value = String(value);\n } else {\n element.setAttribute(attr, String(value));\n }\n }\n}\nfunction binNode(node, setter) {\n if (node instanceof HTMLInputElement) {\n switch (node.type) {\n case \"checkbox\":\n return addEventListener(node, \"change\", () => {\n setter(Boolean(node.checked));\n });\n case \"date\":\n return addEventListener(node, \"change\", () => {\n setter(node.value ? node.value : \"\");\n });\n case \"file\":\n return addEventListener(node, \"change\", () => {\n if (node.files) {\n setter(node.files);\n }\n });\n case \"number\":\n return addEventListener(node, \"input\", () => {\n const value = Number.parseFloat(node.value);\n setter(Number.isNaN(value) ? \"\" : String(value));\n });\n case \"radio\":\n return addEventListener(node, \"change\", () => {\n setter(node.checked ? node.value : \"\");\n });\n case \"text\":\n return addEventListener(node, \"input\", () => {\n setter(node.value);\n });\n }\n }\n if (node instanceof HTMLSelectElement) {\n return addEventListener(node, \"change\", () => {\n setter(node.value);\n });\n }\n if (node instanceof HTMLTextAreaElement) {\n return addEventListener(node, \"input\", () => {\n setter(node.value);\n });\n }\n}\nvar p = Promise.resolve();\nfunction nextTick(fn) {\n return fn ? p.then(fn) : p;\n}\nfunction addEventListener(node, eventName, handler) {\n node.addEventListener(eventName, handler);\n return () => node.removeEventListener(eventName, handler);\n}\nfunction closeHtmlTags(input) {\n const selfClosingTagList = selfClosingTags.split(\",\");\n const tagStack = [];\n const output = [];\n const tagPattern = /<\\/?([\\da-z-]+)([^>]*)>/gi;\n let lastIndex = 0;\n while (true) {\n const match = tagPattern.exec(input);\n if (!match) break;\n const [fullMatch, tagName] = match;\n const isEndTag = fullMatch[1] === \"/\";\n output.push(input.slice(lastIndex, match.index));\n lastIndex = match.index + fullMatch.length;\n if (isEndTag) {\n while (tagStack.length > 0 && tagStack[tagStack.length - 1] !== tagName) {\n const unclosedTag = tagStack.pop();\n if (unclosedTag) {\n output.push(`</${unclosedTag}>`);\n }\n }\n if (tagStack.length > 0) {\n tagStack.pop();\n }\n } else if (!selfClosingTagList.includes(tagName)) {\n tagStack.push(tagName);\n }\n output.push(fullMatch);\n }\n output.push(input.slice(lastIndex));\n while (tagStack.length > 0) {\n const unclosedTag = tagStack.pop();\n if (unclosedTag) {\n output.push(`</${unclosedTag}>`);\n }\n }\n return output.join(\"\");\n}\nfunction isHtmlTagName(tagName) {\n const htmlTagsList = htmlTags.split(\",\");\n return htmlTagsList.includes(tagName);\n}\nfunction convertToHtmlTag(tagName) {\n const selfClosingTagList = selfClosingTags.split(\",\");\n if (selfClosingTagList.includes(tagName)) {\n return `<${tagName}/>`;\n } else {\n return `<${tagName}></${tagName}>`;\n }\n}\n\n// src/patch.ts\nfunction patchChildren(parent, childrenMap, nextChildren, before) {\n const result = /* @__PURE__ */ new Map();\n const children = Array.from(childrenMap.values());\n const childrenLength = children.length;\n if (childrenMap.size > 0 && nextChildren.length === 0) {\n if (parent.childNodes.length === childrenLength + (before ? 1 : 0)) {\n parent.innerHTML = \"\";\n if (before) {\n insertChild(parent, before);\n }\n } else {\n const range = document.createRange();\n const child = children[0];\n const start = isJsxElement(child) ? child.firstChild : child;\n range.setStartBefore(start);\n if (before) {\n range.setEndBefore(before);\n } else {\n range.setEndAfter(parent);\n }\n range.deleteContents();\n }\n children.forEach((node) => {\n if (isJsxElement(node)) {\n node.unmount();\n }\n });\n return result;\n }\n const replaces = [];\n const nextChildrenMap = mapKeys(nextChildren);\n let childIndex = 0;\n for (let [i, child] of nextChildren.entries()) {\n let currChild = children[childIndex];\n let currKey = getKey(currChild, i);\n while (currChild && !nextChildrenMap.has(currKey)) {\n removeChild(currChild);\n childrenMap.delete(currKey);\n currChild = children[++childIndex];\n currKey = getKey(currChild, i);\n }\n const key = getKey(child, i);\n const origChild = childrenMap.get(key);\n if (origChild) {\n child = patch(parent, origChild, child);\n }\n if (currChild) {\n if (currChild === origChild) {\n childIndex++;\n } else {\n const placeholder = document.createComment(\"\");\n insertChild(parent, placeholder, currChild);\n replaces.push([placeholder, child]);\n }\n } else {\n insertChild(parent, child, before);\n }\n result.set(key, child);\n }\n replaces.forEach(([placeholder, child]) => replaceChild(parent, child, placeholder));\n childrenMap.forEach((child, key) => {\n if (child.isConnected && !result.has(key)) {\n removeChild(child);\n }\n });\n return result;\n}\nfunction patch(parent, node, next) {\n if (node === next) {\n return node;\n }\n if (isJsxElement(node) && isJsxElement(next) && node.template === next.template) {\n next.inheritNode(node);\n return next;\n }\n if (node instanceof Text && next instanceof Text) {\n if (node.textContent !== next.textContent) {\n node.textContent = next.textContent;\n }\n return node;\n }\n replaceChild(parent, next, node);\n return next;\n}\nfunction mapKeys(children) {\n const result = /* @__PURE__ */ new Map();\n for (const [i, child] of children.entries()) {\n const key = getKey(child, i);\n result.set(key, child);\n }\n return result;\n}\nfunction getKey(node, index) {\n if (isJsxElement(node)) {\n const jsxKey = node.key;\n if (jsxKey !== void 0 && jsxKey !== null) {\n return String(jsxKey);\n }\n }\n return `_$${index}$`;\n}\n\n// src/template-node.ts\nvar TemplateNode = class _TemplateNode {\n constructor(template2, props, key) {\n this.template = template2;\n this.props = props;\n this.key = key;\n this.treeMap = /* @__PURE__ */ new Map();\n this.mounted = false;\n this.nodes = [];\n this.provides = {};\n this.trackMap = /* @__PURE__ */ new Map();\n this.parent = null;\n this.key = this.key || props.key;\n }\n get firstChild() {\n var _a;\n return (_a = this.nodes[0]) != null ? _a : null;\n }\n get isConnected() {\n return this.mounted;\n }\n addEventListener() {\n }\n removeEventListener() {\n }\n mount(parent, before) {\n var _a;\n this.parent = parent;\n if (this.isConnected) {\n this.nodes.forEach((node) => insertChild(parent, node, before));\n return this.nodes;\n }\n const cloneNode = this.template.content.cloneNode(true);\n const firstChild = cloneNode.firstChild;\n if ((_a = firstChild == null ? void 0 : firstChild.hasAttribute) == null ? void 0 : _a.call(firstChild, \"_svg_\")) {\n firstChild.remove();\n firstChild == null ? void 0 : firstChild.childNodes.forEach((node) => {\n cloneNode.append(node);\n });\n }\n this.nodes = Array.from(cloneNode.childNodes);\n this.mapNodeTree(parent, cloneNode);\n insertChild(parent, cloneNode, before);\n this.patchNodes(this.props);\n this.mounted = true;\n return this.nodes;\n }\n unmount() {\n this.trackMap.forEach((track) => {\n var _a, _b;\n (_a = track.cleanup) == null ? void 0 : _a.call(track);\n (_b = track.lastNodes) == null ? void 0 : _b.forEach((node) => {\n if (track.isRoot) {\n removeChild(node);\n } else if (node instanceof _TemplateNode) {\n node.unmount();\n }\n });\n });\n this.trackMap.clear();\n this.treeMap.clear();\n this.nodes.forEach((node) => removeChild(node));\n this.nodes = [];\n this.mounted = false;\n }\n mapNodeTree(parent, tree) {\n let index = 1;\n this.treeMap.set(0, parent);\n const walk = (node) => {\n if (node.nodeType !== Node.DOCUMENT_FRAGMENT_NODE) {\n this.treeMap.set(index++, node);\n }\n let child = node.firstChild;\n while (child) {\n walk(child);\n child = child.nextSibling;\n }\n };\n walk(tree);\n }\n patchNodes(props) {\n for (const key in props) {\n const index = Number(key);\n const node = this.treeMap.get(index);\n if (node) {\n const value = this.props[key];\n this.patchNode(key, node, value, index === 0);\n }\n }\n this.props = props;\n }\n getNodeTrack(trackKey, trackLastNodes, isRoot) {\n var _a;\n let track = this.trackMap.get(trackKey);\n if (!track) {\n track = { cleanup: () => {\n } };\n if (trackLastNodes) {\n track.lastNodes = /* @__PURE__ */ new Map();\n }\n if (isRoot) {\n track.isRoot = true;\n }\n this.trackMap.set(trackKey, track);\n }\n (_a = track.cleanup) == null ? void 0 : _a.call(track);\n return track;\n }\n inheritNode(node) {\n this.mounted = node.mounted;\n this.nodes = node.nodes;\n this.trackMap = node.trackMap;\n this.treeMap = node.treeMap;\n const props = this.props;\n this.props = node.props;\n this.patchNodes(props);\n }\n patchNode(key, node, props, isRoot) {\n for (const attr in props) {\n if (attr === \"children\" && props.children) {\n if (!isArray(props.children)) {\n const trackKey = `${key}:${attr}:${0}`;\n const track = this.getNodeTrack(trackKey, true, isRoot);\n patchChild(track, node, props.children, null);\n } else {\n props.children.filter(Boolean).forEach((item, index) => {\n var _a;\n const [child, path] = isArray(item) ? item : [item, null];\n const before = isNil(path) ? null : (_a = this.treeMap.get(path)) != null ? _a : null;\n const trackKey = `${key}:${attr}:${index}`;\n const track = this.getNodeTrack(trackKey, true, isRoot);\n patchChild(track, node, child, before);\n });\n }\n } else if (attr === \"ref\") {\n props[attr].value = node;\n } else if (startsWith(attr, \"on\")) {\n const eventName = attr.slice(2).toLocaleLowerCase();\n const track = this.getNodeTrack(`${key}:${attr}`);\n const listener = props[attr];\n track.cleanup = addEventListener(node, eventName, listener);\n } else if (!startsWith(attr, \"update\")) {\n const track = this.getNodeTrack(`${key}:${attr}`);\n const val = props[attr];\n const triggerValue = isSignal(val) ? val : useSignal(val);\n patchAttribute(track, node, attr, triggerValue.value);\n const cleanup = useEffect(() => {\n triggerValue.value = isSignal(val) ? val.value : val;\n patchAttribute(track, node, attr, triggerValue.value);\n });\n let cleanupBind;\n const updateKey = `update${capitalizeFirstLetter(attr)}`;\n if (props[updateKey]) {\n cleanupBind = binNode(node, (value) => {\n props[updateKey](value);\n });\n }\n track.cleanup = () => {\n cleanup && cleanup();\n cleanupBind && cleanupBind();\n };\n }\n }\n }\n};\nfunction patchAttribute(track, node, attr, data) {\n const element = node;\n if (!element.setAttribute) {\n return;\n }\n if (isFunction(data)) {\n track.cleanup = useEffect(() => {\n setAttribute(element, attr, data());\n });\n } else {\n setAttribute(element, attr, data);\n }\n}\nfunction patchChild(track, parent, child, before) {\n if (isFunction(child)) {\n track.cleanup = useEffect(() => {\n const nextNodes = coerceArray(child()).map(coerceNode);\n track.lastNodes = patchChildren(parent, track.lastNodes, nextNodes, before);\n });\n } else {\n coerceArray(child).forEach((node, i) => {\n const newNode = coerceNode(node);\n track.lastNodes.set(String(i), newNode);\n insertChild(parent, newNode, before);\n });\n }\n}\nfunction onMount(cb) {\n var _a;\n throwIfOutsideComponent(\"onMounted\");\n (_a = Hooks.ref) == null ? void 0 : _a.addHook(\"mounted\", cb);\n}\nfunction onDestroy(cb) {\n var _a;\n throwIfOutsideComponent(\"onDestroy\");\n (_a = Hooks.ref) == null ? void 0 : _a.addHook(\"destroy\", cb);\n}\nfunction throwIfOutsideComponent(hook, key) {\n if (!Hooks.ref) {\n console.error(\n `\"${hook}\"(key: ${isSymbol(key) ? key.toString() : key}) can only be called within the component function body\n and cannot be used in asynchronous or deferred calls.`\n );\n }\n}\nfunction useProvide(key, value) {\n var _a;\n throwIfOutsideComponent(\"useProvide\", key);\n (_a = Hooks.ref) == null ? void 0 : _a.setContext(key, value);\n}\nfunction useInject(key, defaultValue) {\n var _a;\n throwIfOutsideComponent(\"useInject\", key);\n return ((_a = Hooks.ref) == null ? void 0 : _a.getContext(key)) || defaultValue;\n}\nfunction useRef() {\n const ref = shallowSignal(null);\n return ref;\n}\nfunction generateAttributes(props) {\n return Object.entries(props).map(([key, value]) => {\n if (key === \"children\" || isFunction(value)) return \"\";\n return `${key}=\"${escape(String(value))}\"`;\n }).filter(Boolean).join(\" \");\n}\nfunction normalizeProps(props) {\n Object.keys(props).forEach((propKey) => {\n if (isFunction(props[propKey])) {\n delete props[propKey];\n }\n if (isSignal(props[propKey])) {\n props[propKey] = props[propKey].value;\n }\n });\n}\nfunction handleChildResult(result, prop, key, tmpl, childNodesMap, path) {\n if (isSignal(result)) {\n tmpl.template += result.value;\n } else if (result instanceof ServerNode) {\n const mapKey = path ? String(path) : `${key}`;\n if (!childNodesMap[mapKey]) childNodesMap[mapKey] = [];\n const childResult = result.mount();\n childNodesMap[mapKey].push(\n isFunction(childResult) ? childResult(prop) : isSignal(childResult) ? childResult.value : childResult\n );\n } else {\n tmpl.template += isFunction(result) ? result(prop) : String(result);\n }\n}\nvar ServerNode = class _ServerNode extends Hooks {\n constructor(template2, props = {}, key) {\n super();\n this.template = template2;\n this.props = props;\n this.key = key;\n this.childNodesMap = {};\n this.processedTemplates = {};\n }\n /**\n * Mount and render the component\n */\n mount() {\n this.initRef();\n const output = this.render();\n this.removeRef();\n return output;\n }\n /**\n * Initialize template entries and props\n */\n initTemplates() {\n const templateCollection = Array.isArray(this.template) ? this.template.reduce((acc, tmpl, index) => {\n acc[index + 1] = { template: tmpl };\n return acc;\n }, {}) : this.template;\n if (isObject(templateCollection)) {\n Object.entries(templateCollection).forEach(([key, tmpl]) => {\n const prop = __spreadValues({}, this.props[key]);\n normalizeProps(prop);\n if (prop.children) {\n prop.children.forEach((item) => {\n const [child, path] = isArray(item) ? item : [item, null];\n if (isFunction(child)) {\n const result = child(prop);\n handleChildResult(result, prop, key, tmpl, this.childNodesMap, path);\n } else {\n tmpl.template += isSignal(child) ? child.value : String(child);\n }\n });\n }\n this.processedTemplates[key] = {\n template: tmpl.template,\n props: prop\n };\n });\n }\n }\n /**\n * Render component and its children into a string\n */\n render() {\n if (isFunction(this.template)) {\n const root = this.template(this.props);\n return root instanceof _ServerNode ? root.mount() : String(root);\n }\n if (this.template instanceof _ServerNode) {\n return this.template.mount();\n }\n this.initTemplates();\n return Object.entries(this.processedTemplates).map(([key, { template: template2, props }]) => {\n let content = template2;\n if (props && Object.keys(props).length > 0) {\n content += ` ${generateAttributes(props)}`;\n }\n if (this.childNodesMap[key]) {\n content = content.replace(\"<!>\", this.renderChildren(this.childNodesMap[key]));\n }\n return content;\n }).join(\"\");\n }\n /**\n * Render child nodes into a string\n */\n renderChildren(children) {\n return coerceArray(children).map(String).join(\"\");\n }\n};\nfunction ssg(component, props) {\n return new ServerNode(component, props);\n}\nfunction renderToString(component, props) {\n return ssg(component, props).mount();\n}\n\nexport { ComponentNode, Fragment, TemplateNode, h, isComponent, isJsxElement, nextTick, onDestroy, onMount, renderToString, ssg, template, useInject, useProvide, useRef };\n","import { essor_version } from './version';\n\nexport * from '@estjs/template';\nexport * from '@estjs/signal';\n\nif (globalThis) {\n globalThis.__essor_version__ = essor_version;\n}\n\nexport { essor_version };\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "essor",
3
- "version": "0.0.11",
3
+ "version": "0.0.12",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "keywords": [],
@@ -53,9 +53,9 @@
53
53
  "unpkg": "dist/essor.esm.js",
54
54
  "jsdelivr": "dist/essor.esm.js",
55
55
  "dependencies": {
56
- "@estjs/shared": "0.0.11",
57
- "@estjs/template": "0.0.11",
58
- "@estjs/signal": "0.0.11"
56
+ "@estjs/signal": "0.0.12",
57
+ "@estjs/shared": "0.0.12",
58
+ "@estjs/template": "0.0.12"
59
59
  },
60
60
  "scripts": {
61
61
  "build": "tsup && cross-env NODE_ENV=production tsup --clean=false --treeshake --sourcemap=false",