mutts 1.0.5 → 1.0.7
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.
- package/README.md +2 -1
- package/dist/browser.d.ts +2 -0
- package/dist/browser.esm.js +70 -0
- package/dist/browser.esm.js.map +1 -0
- package/dist/browser.js +161 -0
- package/dist/browser.js.map +1 -0
- package/dist/chunks/{index-Cvxdw6Ax.js → index-BFYK02LG.js} +5377 -4059
- package/dist/chunks/index-BFYK02LG.js.map +1 -0
- package/dist/chunks/{index-qiWwozOc.esm.js → index-CNR6QRUl.esm.js} +5247 -3963
- package/dist/chunks/index-CNR6QRUl.esm.js.map +1 -0
- package/dist/mutts.umd.js +1 -1
- package/dist/mutts.umd.js.map +1 -1
- package/dist/mutts.umd.min.js +1 -1
- package/dist/mutts.umd.min.js.map +1 -1
- package/dist/node.d.ts +2 -0
- package/dist/node.esm.js +45 -0
- package/dist/node.esm.js.map +1 -0
- package/dist/node.js +136 -0
- package/dist/node.js.map +1 -0
- package/docs/ai/api-reference.md +0 -2
- package/docs/ai/manual.md +14 -95
- package/docs/reactive/advanced.md +7 -111
- package/docs/reactive/collections.md +0 -125
- package/docs/reactive/core.md +27 -24
- package/docs/reactive/debugging.md +168 -0
- package/docs/reactive/project.md +1 -1
- package/docs/reactive/scan.md +78 -0
- package/docs/reactive.md +8 -6
- package/docs/std-decorators.md +1 -0
- package/docs/zone.md +88 -0
- package/package.json +47 -65
- package/src/async/browser.ts +87 -0
- package/src/async/index.ts +8 -0
- package/src/async/node.ts +46 -0
- package/src/decorator.ts +15 -9
- package/src/destroyable.ts +4 -4
- package/src/index.ts +54 -0
- package/src/indexable.ts +42 -0
- package/src/mixins.ts +2 -2
- package/src/reactive/array.ts +149 -141
- package/src/reactive/buffer.ts +168 -0
- package/src/reactive/change.ts +3 -3
- package/src/reactive/debug.ts +1 -1
- package/src/reactive/deep-touch.ts +1 -1
- package/src/reactive/deep-watch.ts +1 -1
- package/src/reactive/effect-context.ts +15 -91
- package/src/reactive/effects.ts +138 -170
- package/src/reactive/index.ts +10 -13
- package/src/reactive/interface.ts +20 -33
- package/src/reactive/map.ts +48 -61
- package/src/reactive/memoize.ts +87 -31
- package/src/reactive/project.ts +43 -22
- package/src/reactive/proxy.ts +18 -43
- package/src/reactive/record.ts +3 -3
- package/src/reactive/register.ts +5 -7
- package/src/reactive/registry.ts +59 -0
- package/src/reactive/set.ts +42 -56
- package/src/reactive/tracking.ts +5 -62
- package/src/reactive/types.ts +79 -19
- package/src/std-decorators.ts +9 -9
- package/src/utils.ts +203 -19
- package/src/zone.ts +127 -0
- package/dist/chunks/_tslib-BgjropY9.js +0 -81
- package/dist/chunks/_tslib-BgjropY9.js.map +0 -1
- package/dist/chunks/_tslib-Mzh1rNsX.esm.js +0 -75
- package/dist/chunks/_tslib-Mzh1rNsX.esm.js.map +0 -1
- package/dist/chunks/decorator-DLvrD0UF.js +0 -265
- package/dist/chunks/decorator-DLvrD0UF.js.map +0 -1
- package/dist/chunks/decorator-DqiszP7i.esm.js +0 -253
- package/dist/chunks/decorator-DqiszP7i.esm.js.map +0 -1
- package/dist/chunks/index-Cvxdw6Ax.js.map +0 -1
- package/dist/chunks/index-qiWwozOc.esm.js.map +0 -1
- package/dist/decorator.d.ts +0 -107
- package/dist/decorator.esm.js +0 -2
- package/dist/decorator.esm.js.map +0 -1
- package/dist/decorator.js +0 -11
- package/dist/decorator.js.map +0 -1
- package/dist/destroyable.d.ts +0 -90
- package/dist/destroyable.esm.js +0 -109
- package/dist/destroyable.esm.js.map +0 -1
- package/dist/destroyable.js +0 -116
- package/dist/destroyable.js.map +0 -1
- package/dist/eventful.d.ts +0 -20
- package/dist/eventful.esm.js +0 -66
- package/dist/eventful.esm.js.map +0 -1
- package/dist/eventful.js +0 -68
- package/dist/eventful.js.map +0 -1
- package/dist/index.d.ts +0 -19
- package/dist/index.esm.js +0 -8
- package/dist/index.esm.js.map +0 -1
- package/dist/index.js +0 -95
- package/dist/index.js.map +0 -1
- package/dist/indexable.d.ts +0 -243
- package/dist/indexable.esm.js +0 -285
- package/dist/indexable.esm.js.map +0 -1
- package/dist/indexable.js +0 -291
- package/dist/indexable.js.map +0 -1
- package/dist/promiseChain.d.ts +0 -21
- package/dist/promiseChain.esm.js +0 -78
- package/dist/promiseChain.esm.js.map +0 -1
- package/dist/promiseChain.js +0 -80
- package/dist/promiseChain.js.map +0 -1
- package/dist/reactive.d.ts +0 -885
- package/dist/reactive.esm.js +0 -5
- package/dist/reactive.esm.js.map +0 -1
- package/dist/reactive.js +0 -59
- package/dist/reactive.js.map +0 -1
- package/dist/std-decorators.d.ts +0 -52
- package/dist/std-decorators.esm.js +0 -196
- package/dist/std-decorators.esm.js.map +0 -1
- package/dist/std-decorators.js +0 -204
- package/dist/std-decorators.js.map +0 -1
- package/src/reactive/mapped.ts +0 -129
- package/src/reactive/zone.ts +0 -208
package/dist/mutts.umd.min.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).Mutts={})}(this,function(t){"use strict";const e=new Set([Object,Array,Date,Function,Set,Map,WeakMap,WeakSet,Promise,Error,TypeError,ReferenceError,SyntaxError,RangeError,URIError,EvalError,Reflect,Proxy,RegExp,String,Number,Boolean]);function n(t){return t&&"function"==typeof t&&(e.has(t)||t.toString?.().startsWith("class "))}function r(t,e){return Object.defineProperties(t,{name:{value:e}})}function o(t,e,n){return"undefined"!=typeof Node&&t instanceof Node?t[e]:Reflect.get(t,e,n)}function s(t,e,n,r){return"undefined"!=typeof Node&&t instanceof Node?(t[e]=n,!0):t instanceof Object||Reflect.has(t,e)?Reflect.set(t,e,n,r):(Object.defineProperty(t,e,{value:n,configurable:!0,writable:!0,enumerable:!0}),!0)}function i(t,e){const n=Object.getOwnPropertyDescriptor(t,e);return!(!n?.get&&!n?.set)}class c extends Error{constructor(t){super(t),this.name="DecoratorException"}}function a(t){return function(e,r,o,...s){if(void 0===r){if(n(e)){if(!("class"in t))throw new Error("Decorator cannot be applied to a class");return t.class(e)}}else if("object"==typeof e&&["string","symbol"].includes(typeof r)){if(!o)throw new Error("Decorator cannot be applied to a field");if("object"==typeof o&&"configurable"in o){if("get"in o||"set"in o){if(!("getter"in t)&&!("setter"in t))throw new Error("Decorator cannot be applied to a getter or setter");if("getter"in t){const e=t.getter(o.get,r);e&&(o.get=e)}if("setter"in t){const e=t.setter(o.set,r);e&&(o.set=e)}return o}if("function"==typeof o.value){if(!("method"in t))throw new Error("Decorator cannot be applied to a method");const e=t.method(o.value,r);return e&&(o.value=e),o}}}if(!("default"in t))throw new Error("Decorator do not have a default implementation");return t.default.call(this,e,r,o,...s)}}function f(t){return function(e,n,...r){if(!n?.kind||"string"!=typeof n.kind){if(!("default"in t))throw new Error("Decorator do not have a default implementation");return t.default.call(this,e,n,...r)}switch(n.kind){case"class":if(!("class"in t))throw new Error("Decorator cannot be applied to a class");return t.class(e);case"field":throw new Error("Decorator cannot be applied to a field");case"getter":if(!("getter"in t))throw new Error("Decorator cannot be applied to a getter");return t.getter(e,n.name);case"setter":if(!("setter"in t))throw new Error("Decorator cannot be applied to a setter");return t.setter(e,n.name);case"method":if(!("method"in t))throw new Error("Decorator cannot be applied to a method");return t.method(e,n.name);case"accessor":{if(!("getter"in t)&&!("setter"in t))throw new Error("Decorator cannot be applied to a getter or setter");const r={};if("getter"in t){const o=t.getter(e.get,n.name);o&&(r.get=o)}if("setter"in t){const o=t.setter(e.set,n.name);o&&(r.set=o)}return r}}}}const l=t=>{const e=f(t),n=a(t);return(t,r,...o)=>{const s=function(t,e){return"object"==typeof e&&null!==e&&"string"==typeof e.kind?"modern":"legacy"}(0,r,o[0]);return"modern"===s?e(t,r,...o):n(t,r,...o)}},u=new FinalizationRegistry(t=>t()),h=Symbol("destructor"),d=Symbol("allocated");class p extends Error{static throw(t){return()=>{throw new p(t)}}constructor(t){super(`Object is destroyed. ${t}`),this.name="DestroyedAccessError"}}const g={[Symbol.toStringTag]:"MutTs Destroyable",get:p.throw("Cannot access destroyed object"),set:p.throw("Cannot access destroyed object")};const y=l({setter:(t,e)=>function(n){return this[d][e]=n,t.call(this,n)}});function m(t,e,n,r){if("a"===n&&!r)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof e?t!==e||!r:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===n?r:"a"===n?r.call(t):r?r.value:e.get(t)}function b(t,e,n,r,o){if("m"===r)throw new TypeError("Private method is not writable");if("a"===r&&!o)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof e?t!==e||!o:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===r?o.call(t,n):o?o.value=n:e.set(t,n),n}var w,v;"function"==typeof SuppressedError&&SuppressedError;w=new WeakMap,v=new WeakMap;const S=Symbol("getAt"),j=Symbol("setAt");function k(t,e){t&&"function"!=typeof t&&(e=t,t=void 0),t||(t=class{}),e||(e={get(t){if("function"!=typeof this[S])throw new Error("Indexable class must have an [getAt] method");return this[S](t)},set(t,e){if("function"!=typeof this[j])throw new Error("Indexable class has read-only numeric index access");this[j](t,e)}});class n extends t{}return Object.setPrototypeOf(n.prototype,new Proxy(t.prototype,{[Symbol.toStringTag]:"MutTs Indexable",get(t,n,r){if(n in t){const e=Object.getOwnPropertyDescriptor(t,n)?.get;return e?e.call(r):t[n]}if("string"==typeof n){if("length"===n&&e.getLength)return e.getLength.call(r);const t=Number(n);if(!Number.isNaN(t))return e.get.call(r,t)}},set(t,n,r,o){if(n in t){const e=Object.getOwnPropertyDescriptor(t,n)?.set;return e?e.call(o,r):t[n]=r,!0}if("string"==typeof n){if("length"===n&&e.setLength)return e.setLength.call(o,r),!0;const t=Number(n);if(!Number.isNaN(t)){if(!e.set)throw new Error("Indexable class has read-only numeric index access");return e.set.call(o,t,r),!0}}return Object.defineProperty(o,n,{value:r,writable:!0,enumerable:!0,configurable:!0}),!0}})),n}const O=Symbol("forwardArray");class E{get[O](){throw new Error("ArrayReadForward is not implemented")}get length(){return this[O].length}[Symbol.iterator](){return this[O][Symbol.iterator]()}map(t,e){return this[O].map(t,e)}filter(t,e){return this[O].filter(t,e)}reduce(t,e){return void 0!==e?this[O].reduce(t,e):this[O].reduce(t)}reduceRight(t,e){return void 0!==e?this[O].reduceRight(t,e):this[O].reduceRight(t)}forEach(t,e){this[O].forEach(t,e)}find(t,e){return this[O].find(t,e)}findIndex(t,e){return this[O].findIndex(t,e)}findLast(t,e){return this[O].findLast(t,e)}findLastIndex(t,e){return this[O].findLastIndex(t,e)}includes(t,e){return this[O].includes(t,e)}indexOf(t,e){return this[O].indexOf(t,e)}lastIndexOf(t,e){return this[O].lastIndexOf(t,e)}slice(t,e){return this[O].slice(t,e)}concat(...t){return this[O].concat(...t)}every(t,e){return this[O].every(t,e)}some(t,e){return this[O].some(t,e)}join(t){return this[O].join(t)}keys(){return this[O].keys()}values(){return this[O].values()}entries(){return this[O].entries()}toString(){return this[O].toString()}toLocaleString(t,e){return this[O].toLocaleString(t,e)}at(t){return this[O].at(t)}flat(t){return this[O].flat(t)}flatMap(t,e){return this[O].flatMap(t,e)}toReversed(){return this[O].toReversed?.()??[...this[O]].reverse()}toSorted(t){return this[O].toSorted?.(t)??[...this[O]].sort(t)}toSpliced(t,e,...n){return void 0===e?this[O].toSpliced(t):this[O].toSpliced(t,e,...n)}with(t,e){return this[O].with(t,e)}get[Symbol.unscopables](){return this[O][Symbol.unscopables]}}var x,M;class P{constructor(t){if(this.uuids=new WeakMap,this.refs={},this[x]="IterableWeakMap",this.registry=new FinalizationRegistry(t=>{delete this.refs[t]}),t)for(const[e,n]of t)this.set(e,n)}createIterator(t){const{refs:e}=this;return function*(){for(const n of Object.keys(e)){const[r,o]=e[n],s=r.deref();s?yield t(s,o):delete e[n]}}()}clear(){for(const t of Object.keys(this.refs)){const e=this.refs[t][0].deref();e&&this.registry.unregister(e)}this.uuids=new WeakMap,this.refs={}}delete(t){const e=this.uuids.get(t);return!!e&&(delete this.refs[e],this.uuids.delete(t),this.registry.unregister(t),!0)}forEach(t,e){for(const[n,r]of this)t.call(e??this,r,n,e??this)}get(t){const e=this.uuids.get(t);if(e)return this.refs[e][1]}has(t){return this.uuids.has(t)}set(t,e){let n=this.uuids.get(t);return n?this.refs[n][1]=e:(n=crypto.randomUUID(),this.uuids.set(t,n),this.refs[n]=[new WeakRef(t),e],this.registry.register(t,n,t)),this}get size(){return[...this].length}entries(){return this.createIterator((t,e)=>[t,e])}keys(){return this.createIterator((t,e)=>t)}values(){return this.createIterator((t,e)=>e)}[Symbol.iterator](){return this.entries()}}x=Symbol.toStringTag;class A{constructor(t){if(this.uuids=new WeakMap,this.refs={},this[M]="IterableWeakSet",this.registry=new FinalizationRegistry(t=>{delete this.refs[t]}),t)for(const e of t)this.add(e)}createIterator(t){const{refs:e}=this;return function*(){for(const n of Object.keys(e)){const r=e[n].deref();r?yield t(r):delete e[n]}}()}clear(){for(const t of Object.keys(this.refs)){const e=this.refs[t].deref();e&&this.registry.unregister(e)}this.uuids=new WeakMap,this.refs={}}add(t){let e=this.uuids.get(t);return e||(e=crypto.randomUUID(),this.uuids.set(t,e),this.refs[e]=new WeakRef(t),this.registry.register(t,e,t)),this}delete(t){const e=this.uuids.get(t);return!!e&&(delete this.refs[e],this.uuids.delete(t),this.registry.unregister(t),!0)}forEach(t,e){for(const n of this)t.call(e??this,n,n,e??this)}has(t){return this.uuids.has(t)}get size(){return[...this].length}entries(){return this.createIterator(t=>[t,t])}keys(){return this.createIterator(t=>t)}values(){return this.createIterator(t=>t)}[Symbol.iterator](){return this.keys()}union(t){const e={[Symbol.iterator]:()=>t.keys()},n=this;return new Set(function*(){yield*n;for(const t of e)n.has(t)||(yield t)}())}intersection(t){const e=this;return new Set(function*(){for(const n of e)t.has(n)&&(yield n)}())}difference(t){const e=this;return new Set(function*(){for(const n of e)t.has(n)||(yield n)}())}symmetricDifference(t){const e={[Symbol.iterator]:()=>t.keys()},n=this;return new Set(function*(){for(const e of n)t.has(e)||(yield e);for(const t of e)n.has(t)||(yield t)}())}isSubsetOf(t){for(const e of this)if(!t.has(e))return!1;return!0}isSupersetOf(t){const e={[Symbol.iterator]:()=>t.keys()};for(const t of e)if(!this.has(t))return!1;return!0}isDisjointFrom(t){for(const e of this)if(t.has(e))return!1;return!0}}function R(t,e){const r=new WeakMap,s=t(Object);return r.set(Object,s),new Proxy(s,{apply(s,i,c){if(0===c.length)throw new Error("Mixin requires a base class");const a=c[0];if("function"!=typeof a)throw new Error("Mixin requires a constructor function");if(!(n(a)||a&&"function"==typeof a&&a.prototype))throw new Error("Mixin requires a valid constructor");const f=r.get(a);if(f)return f;let l=a;if(e){const t=class extends a{},n=a.prototype,r=new Proxy(n,{get(t,n,r){const s=o(t,n,r);return"function"!=typeof s||"string"!=typeof n||["constructor","toString","valueOf"].includes(n)?s:function(...t){const n=e(this);return s.apply(n,t)}}});Object.setPrototypeOf(t.prototype,r),l=t}const u=t(l);return r.set(a,u),u}})}M=Symbol.toStringTag;const D=Symbol("native-reactive"),W=Symbol("non-reactive"),T=Symbol("unreactive-properties"),$=Symbol("prototype-forwarding"),C=Symbol("all-props"),z=Symbol("projection-info"),I=Symbol("root-function");var K;!function(t){t.CycleDetected="CYCLE_DETECTED",t.MaxDepthExceeded="MAX_DEPTH_EXCEEDED",t.MaxReactionExceeded="MAX_REACTION_EXCEEDED",t.WriteInComputed="WRITE_IN_COMPUTED",t.TrackingError="TRACKING_ERROR"}(K||(K={}));class N extends Error{constructor(t,e){super(t),this.debugInfo=e,this.name="ReactiveError"}}const q={enter:t=>{},leave:t=>{},chain:(t,e)=>{},beginChain:t=>{},endChain:()=>{},garbageCollected:t=>{},touched:(t,e,n,r)=>{},skipRunningEffect:(t,e)=>{},maxEffectChain:100,maxTriggerPerBatch:10,maxEffectReaction:"throw",cycleHandling:"throw",maxDeepWatchDepth:100,instanceMembers:!0,ignoreAccessors:!0,recursiveTouching:!0,asyncMode:"cancel",warn:(...t)=>{},introspection:{enableHistory:!1,historySize:50},zones:{setTimeout:!0,setInterval:!0,requestAnimationFrame:!0,queueMicrotask:!0}},F=[];function L(){return F.slice()}function V(t){const e=nt(t),n=F.indexOf(e);if(-1!==n)return F.slice(0,n+1).reverse();for(let t=0;t<F.length;t++){let n=F[t];const r=new WeakSet,o=[];for(;n&&!r.has(n);){r.add(n);const s=nt(n);if(o.push(s),s===e){const n=o.reverse();n[0]!==e&&n.unshift(e);const r=F.slice(0,t+1).reverse();return n.length>0&&r.length>0&&r.shift(),[...n,...r]}n=tt.get(n)}}return!1}function U(t,e){const n=F.slice();H(t);try{return e()}finally{H(n)}}function _(){return F[0]}function B(t,e){if(nt(t)===nt(_()))return e();F.unshift(t);try{return e()}finally{if(F.shift()!==t)throw new N("[reactive] Effect stack mismatch")}}function H(t){F.length=0,F.push(...t)}const G=new WeakMap,X=new WeakMap;function Z(t){let e=t;for(;e&&"object"==typeof e&&null!==e&&X.has(e);)e=X.get(e);return e}const Y=new WeakMap,J=new WeakMap,Q=new WeakMap,tt=new WeakMap;function et(t,e){return Object.defineProperty(t,I,{value:nt(e),writable:!1})}function nt(t){return t?.[I]||t}const rt=new WeakSet;let ot=!1;function st(){const t=_();return t?rt.has(nt(t)):ot}function it(t){const e=_();if(!e)return void(ot=t);const n=nt(e);t?rt.add(n):rt.delete(n)}function ct(t,e=C){t=Z(t);const n=_();!n||st()||"symbol"==typeof e&&e!==C||function(t,e,n){let r=J.get(t);r||(r=new Map,J.set(t,r));let o=r.get(e);o||(o=new Set,r.set(e,o));o.add(n);const s=Y.get(n);s?s.add(t):Y.set(n,new Set([t]))}(t,e,n)}const at=Symbol("external-source");let ft=!1;const lt=new Set,ut=new Set,ht=new WeakMap,dt=new WeakMap;let pt=0,gt=0;const yt=new Map;function mt(t){let e=ht.get(t);if(!e){const n=nt(t);e=n?.name?.trim()||"effect_"+ ++pt,ht.set(t,e)}return e}function bt(t){let e=dt.get(t);if(!e){const n=t?.constructor?.name;e=`${n&&"Object"!==n?n:"object"}_${++gt}`,dt.set(t,e)}return e}function wt(t){if(!t||lt.has(t))return;lt.add(t);const e=Y.get(t);if(e)for(const t of e)vt(t)}function vt(t){ut.has(t)||function(t){ut.add(t),bt(t)}(t)}function St(t,e,n,r,o,s){const i=function(t){let e=yt.get(t);return e||(e=new Map,yt.set(t,e)),e}(t);let c=i.get(e);c||(c=new Map,i.set(e,c));let a=c.get(n);return a||(a={label:n,object:r,prop:o,evolution:s,count:0,lastTriggered:Date.now()},c.set(n,a)),a}function jt(t,e){ht.set(t,e)}function kt(t,e){dt.set(t,e),ut.add(t)}function Ot(t){t&&ft&&wt(t)}function Et(t){ft&&vt(t)}function xt(t,e,n,r,o){if(q.introspection.enableHistory&&function(t,e,n,r,o){const s={id:++Dt,timestamp:Date.now(),source:t?mt(t):"External",target:mt(e),objectName:bt(n),prop:String(r),type:o.type};Rt.push(s),Rt.length>q.introspection.historySize&&Rt.shift()}(t,e,n,r,o),!ft)return;wt(e),t&&wt(t);const s=function(t,e){const n=bt(t);return e===C?`${n}.*`:"symbol"==typeof e?`${n}.${e.description??e.toString()}`:`${n}.${String(e)}`}(n,r),i=St(t??at,e,s,n,r,o);i.count+=1,i.lastTriggered=Date.now(),vt(n)}function Mt(t,e=5){const n=[];let r=t;for(let t=0;t<e;t++){let t,e="";t:for(const[n,o]of yt)for(const[s,i]of o)if(s===r){let r=0;for(const o of i.values())o.lastTriggered>r&&(r=o.lastTriggered,e=o.label,t=n===at?void 0:n);if(t||e)break t}if(!t){if(e){n.push(`External -> (${e}) -> ${mt(r)}`);break}break}n.push(`${mt(t)} -> (${e}) -> ${mt(r)}`),r=t}return n.reverse()}function Pt(){const t=[],e=[],n=new Map,r=new Set(lt);!function(t){const e=Array.from(t);for(let n=0;n<e.length;n++){const r=e[n],o=tt.get(r);o&&!t.has(o)&&(t.add(o),e.push(o))}}(r);const{nodes:o,nodeByEffect:s}=function(t){const e=[],n=new Map,r=Array.from(t);for(const t of r){const r=mt(t),o={id:`effect_${e.length}`,label:r,type:"effect",depth:0,debugName:r};e.push(o),n.set(t,o)}const o=new Map,s=t=>{if(!t)return 0;const e=o.get(t);if(void 0!==e)return e;const n=tt.get(t),r=s(n)+(n?1:0);return o.set(t,r),r};for(const[t,e]of n){e.depth=s(t);const r=tt.get(t);if(r){const t=n.get(r);t&&(e.parentId=t.id)}}return{nodes:e,nodeByEffect:n}}(r);for(const e of o)t.push(e);for(const[t,e]of s)n.set(t,e.id);for(const e of ut){const r=`object_${t.length}`;t.push({id:r,label:bt(e),type:"state",debugName:dt.get(e)}),n.set(e,r)}if(yt.has(at)){const e="effect_external";t.push({id:e,label:"External",type:"external",depth:0}),n.set(at,e)}for(const t of r){const r=n.get(t);if(!r)continue;const o=Y.get(t);if(o)for(const t of o){const o=n.get(t);o&&e.push({id:`${r}->${o}`,source:r,target:o,type:"dependency",label:"depends"})}}for(const[t,r]of yt)for(const[o,s]of r){const r=n.get(o);if(!r)continue;const i=n.get(t);if(i)for(const t of s.values())e.push({id:`${i}->${r}:${t.label}`,source:i,target:r,type:"cause",label:t.count>1?`${t.label} (${t.count})`:t.label,count:t.count})}return{nodes:t,edges:e,meta:{generatedAt:Date.now(),devtoolsEnabled:ft}}}function At(){return ft}const Rt=[];let Dt=0;let Wt=!1;const Tt=Object.getOwnPropertyDescriptor(Promise.prototype,"then")?.value||Promise.prototype.then,$t=Object.getOwnPropertyDescriptor(Promise.prototype,"catch")?.value||Promise.prototype.catch,Ct=Object.getOwnPropertyDescriptor(Promise.prototype,"finally")?.value||Promise.prototype.finally,zt=globalThis.setTimeout,It=globalThis.setInterval,Kt=void 0!==globalThis.requestAnimationFrame?globalThis.requestAnimationFrame:void 0,Nt=void 0!==globalThis.queueMicrotask?globalThis.queueMicrotask:void 0;let qt,Ft;function Lt(){Promise.prototype.then=function(t,e){const n=L();return Tt.call(this,Vt(t,n),Vt(e,n))},Promise.prototype.catch=function(t){const e=L();return $t.call(this,Vt(t,e))},Promise.prototype.finally=function(t){const e=L();return Ct.call(this,Vt(t,e))};const t=(t,e,...n)=>{const r=q.zones.setTimeout?L():void 0;return zt.apply(globalThis,[Vt(t,r),e,...n])};Object.assign(t,zt),globalThis.setTimeout=t;const e=(t,e,...n)=>{const r=q.zones.setInterval?L():void 0;return It.apply(globalThis,[Vt(t,r),e,...n])};Object.assign(e,It),globalThis.setInterval=e,Kt&&(globalThis.requestAnimationFrame=t=>{const e=q.zones.requestAnimationFrame?L():void 0;return Kt.call(globalThis,Vt(t,e))}),Nt&&(globalThis.queueMicrotask=t=>{const e=q.zones.queueMicrotask?L():void 0;Nt.call(globalThis,Vt(t,e))})}function Vt(t,e){if(t)return e&&e.length||qt?(...n)=>{const r=()=>e?.length?U(e,()=>t(...n)):t(...n);return qt?qt(r,"immediate"):r()}:t}function Ut(t){const e=new Map;for(let n=0;n<t.length;n++){const r=t[n];if(e.has(r))return t.slice(e.get(r));e.set(r,n)}return null}function _t(t,e=20){const n=t.map(t=>t.name||"<anonymous>");if(n.length<=e)return n.join(" → ");const r=n.slice(0,5),o=n.slice(-10);return`${r.join(" → ")} ... (${n.length-15} more) ... ${o.join(" → ")}`}const Bt=new Array(100);function Ht(t,e,n,r){const o=nt(t);if(!Ft)return;let s=Ft.get(o);s||(s=new Map,Ft.set(o,s));let i=s.get(e);i||(i=new Map,s.set(e,i));const c=(i.get(r)??0)+1;if(i.set(r,c),Bt.unshift({effect:t,obj:e,evolution:n,prop:r}),Bt.pop(),c>=q.maxTriggerPerBatch){const t=o?.name||"anonymous",e=`Aggressive trigger detected: effect "${t}" triggered ${c} times in the batch by the same cause.`;if("throw"===q.maxEffectReaction)throw new N(e,{code:K.MaxReactionExceeded,count:c,effect:t});q.warn(`[reactive] ${e}`)}}const Gt=new WeakMap,Xt=new WeakSet,Zt=new WeakMap,Yt=new WeakMap,Jt=new WeakMap,Qt=new WeakMap,te=new WeakMap;function ee(t,e){let n=t.get(e);return n||(n=new A,t.set(e,n)),n}function ne(t,e,n){if(t===e)return!0;if(t===n)return!1;const r=new Set,o=[t];for(r.add(t),r.add(n);o.length>0;){const t=o.shift(),n=Zt.get(t);if(n)for(const t of n){if(t===e)return!0;r.has(t)||(r.add(t),o.push(t))}}return!1}let re;function oe(t){return re?.all.has(nt(t))}const se=new Set;function ie(t,e,n=new Set,r=[]){if(t===e)return[...r,e];if(n.has(t))return[];n.add(t);const o=[...r,t],s=Zt.get(t);if(s)for(const t of s){const r=ie(t,e,n,o);if(r.length>0)return r}return[]}function ce(t,e){const n=ie(e,t);return n.length>0?[t,...n]:[]}function ae(t,e,n){if(!re)return;const r=nt(t);if(re.all.set(r,t),e&&!n){const n=nt(e);if(function(t,e){if(t===e)return!1;const n=Qt.get(e);return!!n?.has(t)}(n,r)){const e=ce(n,r),o=e.length>0?`Cycle detected: ${e.map(t=>t.name||t.toString()).join(" → ")}`:`Cycle detected: ${n.name||n.toString()} → ${r.name||r.toString()} (and back)`,s=q.cycleHandling;if("strict"===s){re.all.delete(r);const n=Mt(t),s=te.get(r);throw new N(`[reactive] Strict Cycle Prevention: ${o}`,{code:K.CycleDetected,cycle:e.map(t=>t.name||t.toString()),details:o,causalChain:n,creationStack:s})}switch(s){case"throw":{re.all.delete(r);const n=Mt(t),s=te.get(r);throw new N(`[reactive] ${o}`,{code:K.CycleDetected,cycle:e.map(t=>t.name||t.toString()),details:o,causalChain:n,creationStack:s})}case"warn":return q.warn(`[reactive] ${o}`),void re.all.delete(r);case"break":return void re.all.delete(r)}}!function(t,e){const n=Zt.get(t);if(n?.has(e))return;if(n)n.add(e);else{const n=new A;n.add(e),Zt.set(t,n)}let r=Yt.get(e);if(r||(r=new A,Yt.set(e,r)),r.add(t),t===e)return;const o=ee(Qt,t),s=ee(Jt,e);o.add(e),s.add(t);const i=Jt.get(t);if(i)for(const t of i)t!==e&&(ee(Qt,t).add(e),s.add(t));const c=Qt.get(e);if(c)for(const e of c)e!==t&&(ee(Jt,e).add(t),o.add(e));if(i&&c)for(const t of i){const e=ee(Qt,t);for(const n of c)t!==n&&(e.add(n),ee(Jt,n).add(t))}}(n,r)}}function fe(t){re?se.add(t):t()}const le=fe;function ue(t,e,n,r,o){if(n.has(t)){const e=r.indexOf(t);return r.slice(e).concat([t])}if(e.has(t))return[];e.add(t),n.add(t),r.push(t);const s=Zt.get(t);if(s)for(const t of s)if(o.all.has(t)){const s=ue(t,e,n,r,o);if(s.length>0)return s}return r.pop(),n.delete(t),[]}function he(t){let e=null,n=null;for(const[t,r]of re.all){if(0===(re.inDegrees.get(t)??0)){e=r,n=t;break}}if(!e){if(re.all.size>0){let t=function(t){const e=new Set,n=new Set,r=[];for(const[o]of t.all){if(e.has(o))continue;const s=ue(o,e,n,r,t);if(s.length>0)return s}return[]}(re);if(0===t.length)for(const[e]of re.all){const n=Qt.get(e);if(n){for(const r of n)if(r!==e&&re.all.has(r)){const n=Qt.get(r);if(n?.has(e)){t=[e,r,e];break}}if(t.length>0)break}}const e=t.length>0?`Cycle detected: ${t.map(t=>t.name||"<anonymous>").join(" → ")}`:"Cycle detected in effect batch - all effects have dependencies that prevent execution";switch(q.cycleHandling){case"throw":throw new N(`[reactive] ${e}`);case"warn":{q.warn(`[reactive] ${e}`);const t=re.all.values().next().value;if(t){const e=nt(t);return re.all.delete(e),re.inDegrees.delete(e),t()}break}case"break":{const t=re.all.values().next().value;if(t){const e=nt(t);return re.all.delete(e),re.inDegrees.delete(e),t()}break}}}return null}t.push(nt(e));const r=e();return re.all.delete(n),re.inDegrees.delete(n),function(t,e){const n=Qt.get(e);if(n)for(const e of n)if(t.all.has(e)){const n=t.inDegrees.get(e)??0;n>0&&t.inDegrees.set(e,n-1)}}(re,n),r}function de(t,e){Array.isArray(t)||(t=[t]);const n=t.map(nt);if(re){q?.chain(n,nt(_()));const r=_();for(let n=0;n<t.length;n++)ae(t[n],r,"immediate"===e);if(e){const e={};for(let n=0;n<t.length;n++)try{const r=t[n]();void 0===r||"value"in e||(e.value=r)}finally{const e=nt(t[n]);re.all.delete(e)}return e.value}}else{if(Ft)throw new Error("Batch already in progress");Ft=new Map,q.beginChain(n),re={all:new Map,inDegrees:new Map};const r=_();for(let n=0;n<t.length;n++)ae(t[n],r,"immediate"===e);const o=[];if(function(t){const e=_(),n=e?nt(e):null;t.inDegrees.clear();for(const[e]of t.all){let r=0;const o=Jt.get(e);if(o)for(const s of o)t.all.has(s)&&s!==n&&s!==e&&r++;t.inDegrees.set(e,r)}}(re),e){const e={};try{for(let n=0;n<t.length;n++)try{const r=t[n]();void 0===r||"value"in e||(e.value=r)}finally{const e=nt(t[n]);re.all.delete(e)}for(;re.all.size>0;){if(o.length>q.maxEffectChain){const t=Ut(o),e=_t(o),n=t?`Max effect chain reached (cycle detected: ${_t(t)})`:`Max effect chain reached (trace: ${e})`,r=(re?Array.from(re.all.keys()):[]).map(t=>t.name||"<anonymous>"),s={code:K.MaxDepthExceeded,effectuatedRoots:o,cycle:t,trace:e,maxEffectChain:q.maxEffectChain,queued:r.slice(0,50),queuedCount:r.length,causalChain:o.length>0?Mt(re.all.get(o[o.length-1])):[]};switch(q.maxEffectReaction){case"throw":case"debug":throw new N(`[reactive] ${n}`,s);case"warn":q.warn(`[reactive] ${n} (queued: ${r.slice(0,10).join(", ")}${r.length>10?", …":""})`)}}if(!re||0===re.all.size)break;const t=he(o);void 0===t||"value"in e||(e.value=t)}const n=Array.from(se);se.clear();for(const t of n)t();return e.value}finally{Ft=void 0,re=void 0,q.endChain()}}else{const t={};try{for(;re.all.size>0||se.size>0;){for(;re.all.size>0;){if(o.length>q.maxEffectChain){const t=Ut(o),e=_t(o),n=t?`Max effect chain reached (cycle detected: ${_t(t)})`:`Max effect chain reached (trace: ${e})`,r=(re?Array.from(re.all.keys()):[]).map(t=>t.name||"<anonymous>"),s={code:K.MaxDepthExceeded,effectuatedRoots:o,cycle:t,trace:e,maxEffectChain:q.maxEffectChain,queued:r.slice(0,50),queuedCount:r.length,causalChain:o.length>0?Mt(re.all.get(o[o.length-1])):[]};switch(q.maxEffectReaction){case"throw":case"debug":throw new N(`[reactive] ${n}`,s);case"warn":q.warn(`[reactive] ${n} (queued: ${r.slice(0,10).join(", ")}${r.length>10?", …":""})`)}}const e=he(o);if(0===re.all.size)break;void 0===e||"value"in t||(t.value=e)}if(se.size>0){const t=Array.from(se);se.clear();for(const e of t)e()}}return t.value}finally{Ft=void 0,re=void 0,q.endChain()}}}}const pe=l({method:t=>function(...e){return de(et(()=>t.apply(this,e),t),"immediate")},default:t=>function(...e){return de(et(()=>t.apply(this,e),t),"immediate")}}),ge=new FinalizationRegistry(t=>t());function ye(t,e){!function(t){t&&(qt=t),!Wt&&q.asyncMode&&(Lt(),Wt=!0)}(de);const n=e?.asyncMode??q.asyncMode??"cancel";if(q.introspection.enableHistory){const e=(new Error).stack;if(e){const n=e.split("\n").slice(2).join("\n");te.set(nt(t),n)}}let r=null;const o=L(),s=et(t=>B(u,t),t),i=t=>U(o,t);let c=!1,a=!1,f=null,l=null;function u(){if(r){const t=r;r=null,B(void 0,()=>t())}if(f)if("cancel"===n&&l)l(),l=null,f=null;else if("ignore"===n)return;if(c)return;let e,o;q.enter(nt(t));try{if(o=B(u,()=>t({tracked:s,ascend:i,reaction:a})),o&&"function"!=typeof o&&("object"!=typeof o||!("then"in o)))throw new N(`[reactive] Effect returned a non-function value: ${o}`);if(o&&"object"==typeof o&&"function"==typeof o.then){const t=o;let e=null;const n=new Promise((t,n)=>{e=n}),r=new N("[reactive] Effect canceled due to dependency change");f=Promise.race([t,n]),l=()=>{e&&e(r)}}else e=o}finally{a=!0,q.leave(t)}r=()=>{r=null,e?.();const t=Y.get(u);if(t){for(const e of t){const t=J.get(e);if(t){for(const[e,n]of t.entries())n.delete(u),0===n.size&&t.delete(e);0===t.size&&J.delete(e)}}Y.delete(u)}const n=Q.get(u);if(n){for(const t of n)t();Q.delete(u)}}}et(u,t),e?.opaque&&Xt.add(u),At()&&Ot(u),de(u,"immediate");const h=o[0];tt.set(u,h);const d=()=>{c||(c=!0,l&&(l(),l=null,f=null),r?.(),function(t){const e=nt(t),n=Jt.get(e),r=Qt.get(e),o=Zt.get(e);if(o){for(const t of o){const n=Yt.get(t);n?.delete(e)}Zt.delete(e)}const s=Yt.get(e);if(s){for(const t of s){const n=Zt.get(t);n?.delete(e)}Yt.delete(e)}if(n)for(const t of n){const n=Qt.get(t);if(n&&(n.delete(e),r))for(const o of r)ne(t,o,e)||n.delete(o)}if(r)for(const t of r){const r=Jt.get(t);if(r&&(r.delete(e),n))for(const o of n)ne(o,t,e)||r.delete(o)}if(n&&r)for(const t of n){const n=Qt.get(t);if(n)for(const o of r)if(!ne(t,o,e)){n.delete(o);const e=Jt.get(o);e?.delete(t)}}Jt.delete(e),Qt.delete(e)}(u),ge.unregister(d))};if(!h){const e=()=>d();return ge.register(e,()=>{d(),q.garbageCollected(t)},d),e}let p=Q.get(h);p||(p=new Set,Q.set(h,p));const g=()=>{p.delete(g),0===p.size&&Q.delete(h),d()};return p.add(g),g}function me(t){const e=st();it(!0);try{return t()}finally{it(e)}}function be(t){let e;return B(void 0,()=>{e=t()}),e}const we=new WeakMap,ve=new WeakSet,Se=new WeakMap,je=new WeakMap;function ke(t,e,n){let r=we.get(t);r||(r=new Set,we.set(t,r)),r.add({parent:e,prop:n})}function Oe(t,e,n){const r=we.get(t);if(r){for(const t of r)if(t.parent===e&&t.prop===n){r.delete(t);break}0===r.size&&we.delete(t)}}function Ee(t){return!!ve.has(t)||Me(t)}function xe(t,e){const n=we.get(t);if(n)for(const{parent:t}of n){const e=Se.get(t);if(e)for(const t of e)de(t);xe(t)}}function Me(t){const e=we.get(t);if(!e)return!1;for(const{parent:t}of e){if(ve.has(t))return!0;if(Me(t))return!0}return!1}const Pe=new WeakMap;function Ae(t,e){const n={},r=Re(t=Z(t));r&&Object.assign(r,{evolution:e,next:n}),Pe.set(t,n)}function Re(t){t=Z(t);let e=Pe.get(t);return e||(e={},Pe.set(t,e)),e}function De(t,e,n,r,...o){const s=_();for(const i of o)for(const o of i){const i=r.get(o);if(i)for(const r of i){const i=V(r);if(i){q.skipRunningEffect(r,i);continue}n.has(r)||(n.add(r),oe(r)||Ht(r,t,e,o));const c=Gt.get(r);if(xt(s,r,t,o,e),c){for(const n of c)n(t,e,o);c.delete(r)}}}}function We(t,e,n){Te(t,e,[n])}function Te(t,e,n){Ae(t=Z(t),e);const r=J.get(t);if(r){const o=new Set;n?De(t,e,o,r,[C],n):De(t,e,o,r,r.keys()),q.touched(t,e,n,o),de(Array.from(o))}ve.has(t)&&xe(t)}const $e=new WeakSet,Ce=new Set,ze=Symbol("absent");function Ie(...t){for(const e of t)e&&(e.prototype[W]=!0);return t[0]}function Ke(t){if(null===t||"object"!=typeof t)return!0;if($e.has(t))return!0;if(t[W])return!0;for(const e of Ce)if(e(t))return!0;return!1}function Ne(t,e){t.prototype[D]=e,Ie(e)}function qe(t){return function(t){return"object"==typeof t&&null!==t}(t)}function Fe(t){if(qe(t)){if(Array.isArray(t))return Array.prototype;try{return t.constructor}catch{return}}}function Le(t,e){return t!==e&&(!(!qe(t)||!qe(e))&&(!Ke(t)&&!Ke(e)&&Fe(t)===Fe(e)))}function Ve(t,e,n,r,o){const s={type:o?"set":"add",prop:e};if(q.recursiveTouching&&void 0!==n&&Le(n,r)){const o={obj:Z(t),prop:e};!function(t){if(!t.length)return;const e=new Set,n=t[0]?.origin;let r;if(n){r=new Set;const t=J.get(n.obj);if(t){const e=new Set;De(n.obj,{type:"set",prop:n.prop},e,t,[C],[n.prop]);for(const t of e)r.add(t)}if(0===r.size)return}for(const{target:o,evolution:s,prop:i}of t){if(!qe(o))continue;const t=Z(o);Ae(t,s);const c=J.get(t);let a;const f=[i];if(c){if(a=new Set,De(t,s,a,c,[C],f),n&&r){const t=new Set;for(const e of a)(r.has(e)||Be(e,r))&&t.add(e);a=t}for(const t of a)e.add(t)}q.touched(t,s,f,a),ve.has(t)&&xe(t)}e.size&&de([...e])}(_e(n,r,new WeakMap,[],o)),function(t,e,n){t=Z(t);const r=J.get(t);if(!r)return;const o=r.get(n);if(!o)return;const s=new Set,i=_();for(const r of o){if(!Xt.has(r))continue;const o=V(r);if(o){q.skipRunningEffect(r,o);continue}s.add(r),Ht(r,t,e,n);const c=Gt.get(r);if(xt(i,r,t,n,e),c){for(const r of c)r(t,e,n);c.delete(r)}}s.size>0&&(q.touched(t,e,[n],s),de(Array.from(s)))}(t,s,e)}else We(t,s,e)}function Ue(t){const e=new Set(Reflect.ownKeys(t));let n=Object.getPrototypeOf(t);for(;n&&!Object.hasOwn(n,"constructor");){for(const t of Reflect.ownKeys(n))e.add(t);n=Object.getPrototypeOf(n)}return e}function _e(t,e,n=new WeakMap,r=[],o){return Le(t,e)&&qe(t)&&qe(e)?function(t,e,n){let r=t.get(e);return r||(r=new WeakSet,t.set(e,r)),!!r.has(n)||(r.add(n),!1)}(n,t,e)?r:Array.isArray(t)&&Array.isArray(e)?(function(t,e,n,r,o){const s=[],i=t.length,c=e.length,a=Math.max(i,c);for(let n=0;n<a;n++){const r=n<i,a=n<c;if(r&&!a){s.push({target:t,evolution:{type:"del",prop:n},prop:n,origin:o});continue}if(!r&&a){s.push({target:t,evolution:{type:"add",prop:n},prop:n,origin:o});continue}if(!r||!a)continue;const f=Z(t[n]),l=Z(e[n]);Object.is(f,l)||s.push({target:t,evolution:{type:"set",prop:n},prop:n,origin:o})}i!==c&&s.push({target:t,evolution:{type:"set",prop:"length"},prop:"length",origin:o});r.push(...s)}(t,e,0,r,o),r):(function(t,e,n,r,o){const s=Ue(t),i=Ue(e),c=[];for(const e of s)i.has(e)||c.push({target:t,evolution:{type:"del",prop:e},prop:e,origin:o});for(const e of i)s.has(e)||c.push({target:t,evolution:{type:"add",prop:e},prop:e,origin:o});for(const a of i){if(!s.has(a))continue;const i=Z(t[a]),f=Z(e[a]);Le(i,f)?_e(i,f,n,r,o):Object.is(i,f)||c.push({target:t,evolution:{type:"set",prop:a},prop:a,origin:o})}r.push(...c)}(t,e,n,r,o),r):r}function Be(t,e){let n=t;const r=new WeakSet;for(;n&&!r.has(n);){if(r.add(n),e.has(n))return!0;n=tt.get(n)}return!1}Ie(Date,RegExp,Error,Promise,Function),"undefined"!=typeof window&&(!function(...t){for(const e of t){try{Object.defineProperty(e,W,{value:!0,writable:!1,enumerable:!1,configurable:!1})}catch{}W in e||$e.add(e)}t[0]}(window,document),Ie(Node,Element,HTMLElement,EventTarget));const He=[],Ge={[Symbol.toStringTag]:"MutTs Reactive",get(t,e,n){if(e===W)return!1;const r=Z(t);if(r[T]?.has(e)||"symbol"==typeof e)return o(t,e,n);$ in t&&t[$]instanceof Array&&"string"==typeof e&&("length"===e||!Number.isNaN(Number(e)))&&ct(t,"length"===e?"length":Number(e));const s=Reflect.has(n,e),c=s&&Object.hasOwn(n,e),a=s&&!c,f=q.ignoreAccessors&&c&&(i(n,e)||i(r,e));if(s&&(q.instanceMembers&&a&&t instanceof Object||f)||ct(t,e),a&&(!q.instanceMembers||!(t instanceof Object))){let n=Ye(Object.getPrototypeOf(t));for(;n&&n!==Object.prototype&&(ct(n,e),!Object.hasOwn(n,e));){let t=Ye(Object.getPrototypeOf(n));t===n&&(t=Ye(Object.getPrototypeOf(Z(n)))),n=t}}const l=o(t,e,n);if("object"==typeof l&&null!==l){const n=Ye(l);return Ee(t)&&ke(n,t,e),n}return l},set(t,e,n,r){const o=Z(t),i=Z(r);if(o[T]?.has(e)||o!==i)return s(t,e,n,r);const c=$ in t&&t[$]instanceof Array&&(!Number.isNaN(Number(e))||"length"===e),a=Z(n);if(c)return t[e]=a,!0;let f=ze;if(Reflect.has(i,e)){const t=Object.getOwnPropertyDescriptor(i,e),n=Object.getOwnPropertyDescriptor(o,e),r=t||n;f=r?.get&&!r?.set?B(void 0,()=>Reflect.get(o,e,i)):Reflect.get(o,e,i)}if(ve.has(t)&&("object"==typeof f&&null!==f&&Oe(f,t,e),"object"==typeof a&&null!==a)){ke(Ye(a),t,e)}return f!==a&&s(t,e,a,r)&&Ve(t,e,f,a,f!==ze),!0},has(t,e){if(He.includes(t))throw new N(`[reactive] Circular dependency detected in 'has' check for property '${String(e)}'`,{code:K.CycleDetected,cycle:[]});He.push(t),ct(t,e);const n=Reflect.has(t,e);return He.pop(),n},deleteProperty(t,e){if(!Object.hasOwn(t,e))return!1;const n=t[e];return ve.has(t)&&"object"==typeof n&&null!==n&&Oe(n,t,e),delete t[e],We(t,{type:"del",prop:e},e),ve.has(t)&&xe(t),!0},getPrototypeOf:t=>$ in t?t[$]:Object.getPrototypeOf(t),setPrototypeOf:(t,e)=>!($ in t)&&(Object.setPrototypeOf(t,e),!0),ownKeys:t=>(ct(t,C),Reflect.ownKeys(t))},Xe=new WeakSet,Ze=R(t=>class extends t{constructor(...t){return super(...t),Xe.has(new.target)?Je(this):this}});function Ye(t){if(!t||"object"!=typeof t)return t;const e=t;if(Ke(e))return e;if(X.has(e))return e;const n=function(t){return G.get(t)}(e);if(void 0!==n)return n;const r=!(D in e)||e instanceof e[D]?e:new e[D](e);r!==e&&function(t,e){X.set(t,e)}(r,e);const o=new Proxy(r,Ge);return function(t,e){G.set(t,e),X.set(e,t)}(e,o),o}const Je=l({class(t){if(t.prototype instanceof Ze)return Xe.add(t),t;class e extends t{constructor(...n){return super(...n),new.target===e||Xe.has(new.target)||q.warn(`${t.name} has been inherited by ${this.constructor.name} that is not reactive.\n@reactive decorator must be applied to the leaf class OR classes have to extend ReactiveBase.`),Je(this)}}return Object.defineProperty(e,"name",{value:`Reactive<${t.name}>`}),e},get:t=>Ye(t),default:Ye});function Qe(t,e,{immediate:n=!1}={}){if(null==t)return;if("object"!=typeof t)throw new Error("Target of deep watching must be an object");const r=et(()=>e(t),e);return ye(()=>{ve.add(t);let o=je.get(r);o||(o=new Set,je.set(r,o)),o.add(t);const s=new WeakSet;return function t(e,n=0){var r;if(!(!e||s.has(e)||(r=e,"object"!=typeof r||null===r)||n>q.maxDeepWatchDepth||Ke(e))){s.add(e),ve.add(e),o.add(e);for(const r in Z(e))if(Object.hasOwn(e,r)){const o=e[r];t("object"==typeof o&&null!==o?Je(o):o,n+1)}if(Array.isArray(e)||e instanceof Array){const r=e.length;for(let o=0;o<r;o++){const r=e[o];t("object"==typeof r&&null!==r?Je(r):r,n+1)}}else if(e instanceof Set)for(const r of e){t("object"==typeof r&&null!==r?Je(r):r,n+1)}else if(e instanceof Map)for(const[r,o]of e){t("object"==typeof o&&null!==o?Je(o):o,n+1)}}}(t),n&&e(t),n=!0,()=>{const t=je.get(r);if(t){for(const e of t){const t=Se.get(e);t?(t.delete(r),0===t.size&&(Se.delete(e),ve.delete(e))):ve.delete(e)}je.delete(r)}}})}const tn=Symbol("cleanup"),en=Symbol("unset-yet");const nn=l({class(t){Ie(t)},default:function(t,...e){return"object"==typeof t?function(t){if(Ke(t=Z(t)))return t;try{Object.defineProperty(t,W,{value:!0,writable:!1,enumerable:!1,configurable:!0})}catch{}return W in t||$e.add(t),t}(t):n=>{n.prototype[T]=new Set(n.prototype[T]||[]),n.prototype[T].add(t);for(const t of e)n.prototype[T].add(t);return n}}});function rn(t,e){return Object.defineProperty(t,tn,{value:e,writable:!1,enumerable:!1,configurable:!0})}function*on(t){let e=t.next();for(;!e.done;)yield Je(e.value),e=t.next()}function*sn(t){let e=t.next();for(;!e.done;){const[n,r]=e.value;yield[Je(n),Je(r)],e=t.next()}}const cn=Symbol("native"),an=Array.isArray;Array.isArray=t=>an(t)||t&&"object"==typeof t&&$ in t&&Array.isArray(t[$]);class fn{at(t){const e=t<0?this[cn].length+t:t;if(ct(this,e),!(e<0||e>=this[cn].length))return Je(this[cn][e])}toReversed(){return ct(this),Je(this[cn].toReversed())}toSorted(t){return ct(this),Je(this[cn].toSorted(t))}toSpliced(t,e,...n){return ct(this),void 0===e?this[cn].toSpliced(t):this[cn].toSpliced(t,e,...n)}with(t,e){return ct(this),Je(this[cn].with(t,e))}entries(){return ct(this),sn(this[cn].entries())}keys(){return ct(this,"length"),this[cn].keys()}values(){return ct(this),on(this[cn].values())}[Symbol.iterator](){ct(this);const t=this[cn][Symbol.iterator]();return{next(){const e=t.next();return e.done?e:{value:Je(e.value),done:!1}}}}indexOf(t,e){ct(this);const n=Z(t),r=this[cn].indexOf(n,e);return-1!==r?r:this[cn].indexOf(t,e)}lastIndexOf(t,e){ct(this);const n=Z(t),r=this[cn].lastIndexOf(n,e);return-1!==r?r:this[cn].lastIndexOf(t,e)}includes(t,e){ct(this);const n=Z(t);return this[cn].includes(n,e)||this[cn].includes(t,e)}find(t,e){if(ct(this),"function"==typeof t){const n=t;return Je(this[cn].find((t,r,o)=>n.call(e,Je(t),r,o),e))}const n="number"==typeof e?e:void 0,r=this[cn].indexOf(t,n);if(-1!==r)return Je(this[cn][r])}findIndex(t,e){if(ct(this),"function"==typeof t){const n=t;return this[cn].findIndex((t,r,o)=>n.call(e,Je(t),r,o),e)}const n="number"==typeof e?e:void 0;return this[cn].indexOf(t,n)}flat(){return ct(this),Je(this[cn].flat())}flatMap(t,e){return ct(this),Je(this[cn].flatMap(t,e))}filter(t,e){return ct(this),Je(this[cn].filter((e,n,r)=>t(Je(e),n,r),e))}map(t,e){return ct(this),Je(this[cn].map((e,n,r)=>t(Je(e),n,r),e))}reduce(t,e){ct(this);const n=void 0===e?this[cn].reduce(t):this[cn].reduce(t,e);return Je(n)}reduceRight(t,e){ct(this);const n=void 0!==e?this[cn].reduceRight(t,e):this[cn].reduceRight(t);return Je(n)}slice(t,e){for(const n of un(t||0,e||this[cn].length-1))ct(this,n);return void 0===t?this[cn].slice():void 0===e?this[cn].slice(t):this[cn].slice(t,e)}concat(...t){return ct(this),Je(this[cn].concat(...t))}join(t){return ct(this),this[cn].join(t)}forEach(t,e){ct(this),this[cn].forEach((n,r,o)=>{t.call(e,Je(n),r,o)})}every(t,e){return ct(this),this[cn].every((n,r,o)=>t.call(e,Je(n),r,o),e)}some(t,e){return ct(this),this[cn].some((n,r,o)=>t.call(e,Je(n),r,o),e)}}function*ln(t,{length:e=!0}={}){e&&(yield"length"),yield t}function*un(t,e,{length:n=!1}={}){const r=Math.min(t,e),o=Math.max(t,e);n&&(yield"length");for(let t=r;t<=o;t++)yield t}class hn extends(k(fn,{get(t){return ct(this,t),Je(this[cn][t])},set(t,e){const n=t>=this[cn].length;this[cn][t]=e,Te(this,{type:"set",prop:t},ln(t,{length:n}))},getLength(){return ct(this,"length"),this[cn].length},setLength(t){const e=this[cn].length;try{this[cn].length=t}finally{Te(this,{type:"set",prop:"length"},un(e,t,{length:!0}))}}})){constructor(t){super(),Object.defineProperties(this,{[cn]:{value:t},[$]:{value:t}})}push(...t){const e=this[cn].length;try{return this[cn].push(...t)}finally{Te(this,{type:"bunch",method:"push"},un(e,e+t.length-1,{length:!0}))}}pop(){if(0!==this[cn].length)try{return Je(this[cn].pop())}finally{Te(this,{type:"bunch",method:"pop"},ln(this[cn].length))}}shift(){if(0!==this[cn].length)try{return Je(this[cn].shift())}finally{Te(this,{type:"bunch",method:"shift"},un(0,this[cn].length+1,{length:!0}))}}unshift(...t){try{return this[cn].unshift(...t)}finally{Te(this,{type:"bunch",method:"unshift"},un(0,this[cn].length-t.length,{length:!0}))}}splice(t,e,...n){const r=this[cn].length;void 0===e&&(e=r-t);try{return Je(void 0===e?this[cn].splice(t):this[cn].splice(t,e,...n))}finally{Te(this,{type:"bunch",method:"splice"},e===n.length?un(t,t+e):un(t,r+Math.max(n.length-e,0),{length:!0}))}}reverse(){try{return this[cn].reverse()}finally{Te(this,{type:"bunch",method:"reverse"},un(0,this[cn].length-1))}}sort(t){t=t||((t,e)=>t.toString().localeCompare(e.toString()));try{return this[cn].sort((e,n)=>t(Je(e),Je(n)))}finally{Te(this,{type:"bunch",method:"sort"},un(0,this[cn].length-1))}}fill(t,e,n){try{return void 0===e?this[cn].fill(t):void 0===n?this[cn].fill(t,e):this[cn].fill(t,e,n)}finally{Te(this,{type:"bunch",method:"fill"},un(0,this[cn].length-1))}}copyWithin(t,e,n){try{return void 0===n?this[cn].copyWithin(t,e):this[cn].copyWithin(t,e,n)}finally{Te(this,{type:"bunch",method:"copyWithin"},un(0,this[cn].length-1))}}}class dn extends Error{}class pn extends(k(fn,{get(t){return ct(this,t),Je(this[cn][t])},set(t,e){throw new dn(`Setting index ${t} on a read-only array`)},getLength(){return ct(this,"length"),this[cn].length},setLength(t){throw new dn(`Setting length to ${t} on a read-only array`)}})){constructor(t){super(),Object.defineProperties(this,{[cn]:{value:t},[$]:{value:t}})}push(...t){throw new dn("Pushing items to a read-only array")}pop(){throw new dn("Popping from a read-only array")}shift(){throw new dn("Shifting from a read-only array")}unshift(...t){throw new dn("Unshifting items to a read-only array")}splice(t,e,...n){throw new dn("Splice from a read-only array")}reverse(){throw new dn("Reversing a read-only array")}sort(t){throw new dn("Sorting a read-only array")}fill(t,e,n){throw new dn("Filling a read-only array")}copyWithin(t,e,n){throw new dn("Copying within a read-only array")}}const gn=Je(pn);const yn=new WeakMap;function mn(t,e){t.branches??(t.branches=new WeakMap);let n=t.branches.get(e);return n||(n={},t.branches.set(e,n)),n}function bn(t){const e=nt(t),n=yn.get(e);if(n)return n;const r={},o=et((...n)=>{const o=n;if(o.some(t=>!(t&&["object","symbol","function"].includes(typeof t))))throw new Error("memoize expects non-null object arguments");let s=r;for(const t of o)s=mn(s,t);return ct(s,"memoize"),"result"in s||(s.cleanup=be(()=>ye(et(()=>(s.result=t(...o),()=>{delete s.result,We(s,{type:"invalidate",prop:o},"memoize")}),e),{opaque:!0}))),s.result},t);return yn.set(e,o),yn.set(o,o),o}const wn=l({getter(t,e){const n=bn(et(r(e=>t.call(e),`${String(this.constructor.name)}.${String(e)}`),t));return function(){return n(this)}},method(t,e){const n=bn(et(r((e,...n)=>t.call(e,...n),`${String(this.constructor.name)}.${String(e)}`),t));return function(...t){return n(this,...t)}},default:bn});let vn=(()=>{var t,e,n,r,o,s,i,c,a;let f,l,u=[nn],h=[],d=function(){class t extends(k(E,{get(t){return this[S](t)},set(t,e){this[j](t,e)},getLength(){return this.length},setLength(t){this.length=t}})){toArray(){return Array.from(this)}}return t}();var p,g,y;return l=class extends d{get[(e=new WeakMap,n=new WeakMap,r=new WeakMap,o=new WeakMap,s=new WeakMap,i=new WeakMap,c=new WeakMap,t=new WeakSet,O)](){return this.toArray()}constructor(a,f){let l;if(super(),t.add(this),e.set(this,void 0),n.set(this,void 0),r.set(this,void 0),o.set(this,new Map),s.set(this,new Map),i.set(this,new Set),c.set(this,void 0),ye(({ascend:t})=>{l=t}),b(this,c,l,"f"),"function"!=typeof a)throw new Error("Register requires a key function");b(this,e,a,"f"),b(this,n,Je([]),"f"),b(this,r,Je(new Map),"f"),Object.defineProperties(this,{[$]:{value:m(this,n,"f")}}),f&&this.push(...f)}ensureKey(n){let r=m(this,s,"f").get(n);if(r)return r.key;if(r={key:void 0},m(this,s,"f").set(n,r),m(this,c,"f").call(this,()=>{const o=ye(({reaction:o})=>{const s=m(this,e,"f").call(this,n);this.assertValidKey(s);const i=r.key;o&&void 0!==i&&!Object.is(s,i)&&m(this,t,"m",a).call(this,n,i,s),r.key=s});r.stop=o,m(this,i,"f").add(o)}),void 0===r.key)throw new Error("Register key function must return a property key");return r.key}assertValidKey(t){const e=typeof t;if("string"!==e&&"number"!==e&&"symbol"!==e)throw new Error("Register key function must return a property key")}setKeyValue(t,e){const n=m(this,r,"f").get(t);void 0!==n&&n!==e&&this.cleanupValue(n),m(this,r,"f").set(t,e)}cleanupValue(t){const e=m(this,s,"f").get(t);if(!e)return;const n=e.stop;n&&(e.stop=void 0,m(this,i,"f").delete(n),n()),m(this,s,"f").delete(t)}disposeKeyEffects(){for(const t of Array.from(m(this,s,"f").keys()))this.cleanupValue(t);m(this,i,"f").clear()}incrementUsage(t){const e=m(this,o,"f").get(t)??0;m(this,o,"f").set(t,e+1)}decrementUsage(t){const e=m(this,o,"f").get(t);if(e)if(e<=1){const e=m(this,r,"f").get(t);m(this,o,"f").delete(t),m(this,r,"f").delete(t),void 0!==e&&this.cleanupValue(e)}else m(this,o,"f").set(t,e-1)}normalizeIndex(t,e=!1){const n=this.length;let r=t;if(r<0&&(r=Math.max(n+r,0)),r>n){if(!e)throw new RangeError("Index out of bounds");r=n}if(!e&&r===n)throw new RangeError("Index out of bounds");return r}assignAt(t,e,r){const o=m(this,n,"f")[t];void 0!==o&&Object.is(o,e)||(void 0!==o&&this.decrementUsage(o),m(this,n,"f")[t]=e,this.incrementUsage(e)),this.setKeyValue(e,r)}insertKeyValue(t,e,r){m(this,n,"f").splice(t,0,e),this.incrementUsage(e),this.setKeyValue(e,r)}rebuildFrom(t){this.disposeKeyEffects(),m(this,n,"f").splice(0,m(this,n,"f").length),m(this,o,"f").clear(),m(this,r,"f").clear();for(const e of t){const t=this.ensureKey(e);m(this,n,"f").push(t),this.incrementUsage(t),m(this,r,"f").set(t,e)}}get length(){return m(this,n,"f").length}[(a=function(t,e,i){if(Object.is(e,i))return;const c=m(this,r,"f").get(i);if(void 0!==c&&c!==t)throw new Error(`Register key collision for key ${String(i)}`);const a=m(this,o,"f").get(e);if(!a)return;const f=m(this,o,"f").get(i)??0;this.setKeyValue(i,t);for(let t=0;t<m(this,n,"f").length;t++)Object.is(m(this,n,"f")[t],e)&&(m(this,n,"f")[t]=i);m(this,o,"f").set(i,f+a),m(this,o,"f").delete(e),m(this,r,"f").delete(e);const l=m(this,s,"f").get(t);l&&(l.key=i)},S)](t){const e=m(this,n,"f")[t];return void 0===e?void 0:m(this,r,"f").get(e)}[j](t,e){const n=this.ensureKey(e);if(t===this.length)return void this.insertKeyValue(t,n,e);const r=this.normalizeIndex(t);this.assignAt(r,n,e)}push(...t){for(const e of t){const t=this.ensureKey(e);this.insertKeyValue(this.length,t,e)}return this.length}pop(){if(this.length)return this.removeAt(this.length-1)}shift(){if(this.length)return this.removeAt(0)}unshift(...t){let e=0;for(const n of t){const t=this.ensureKey(n);this.insertKeyValue(e++,t,n)}return this.length}splice(t,e,...o){const s=this.normalizeIndex(t,!0),i=this.length-s,c=Math.min(void 0===e?i:Math.max(e,0),i),a=[];for(const t of o)a.push(this.ensureKey(t));const f=m(this,n,"f").splice(s,c,...a),l=[];for(const t of f){if(void 0===t)continue;const e=m(this,r,"f").get(t);this.decrementUsage(t),l.push(e)}for(let t=0;t<a.length;t++){const e=a[t],n=o[t];this.incrementUsage(e),this.setKeyValue(e,n)}return l}clear(){m(this,n,"f").length=0,m(this,o,"f").clear(),m(this,r,"f").clear(),this.disposeKeyEffects()}get(t){return m(this,r,"f").get(t)}set(t,e){m(this,r,"f").has(t)&&this.setKeyValue(t,e)}remove(t){let e=this.indexOfKey(t);for(;-1!==e;)this.removeAt(e),e=this.indexOfKey(t)}removeAt(t){const[e]=m(this,n,"f").splice(t,1);if(void 0===e)return;const o=m(this,r,"f").get(e);return this.decrementUsage(e),o}keep(t){const e=new Map;for(const[o,s]of m(this,n,"f").entries()){if(e.has(s)){e.get(s)||this.removeAt(o);continue}const n=t(m(this,r,"f").get(s));e.set(s,n),n||this.removeAt(o)}}hasKey(t){return m(this,o,"f").has(t)}indexOfKey(t){return m(this,n,"f").indexOf(t)}mapKeys(){return m(this,r,"f").keys()}update(...t){for(const e of t){const t=this.ensureKey(e);m(this,r,"f").has(t)&&this.setKeyValue(t,e)}}upsert(t,...e){for(const n of e){const e=this.ensureKey(n);m(this,r,"f").has(e)?this.setKeyValue(e,n):t(n)}}entries(){const t=this;return function*(){for(let e=0;e<m(t,n,"f").length;e++){const o=m(t,r,"f").get(m(t,n,"f")[e]);void 0!==o&&(yield[e,o])}}()}[Symbol.iterator](){const t=this;return function*(){for(const e of m(t,n,"f")){const n=m(t,r,"f").get(e);void 0!==n&&(yield n)}}()}toString(){return`[Register length=${this.length}]`}at(t){const e=t<0?this.length+t:t;if(!(e<0||e>=this.length))return this[S](e)}reverse(){return m(this,n,"f").reverse(),this}sort(t){const e=t?(e,n)=>t(m(this,r,"f").get(e),m(this,r,"f").get(n)):void 0;return m(this,n,"f").sort(e),this}fill(t,e=0,n=this.length){const r=this.toArray();return r.fill(t,e,n),this.rebuildFrom(r),this}copyWithin(t,e,n){const r=this.toArray();return r.copyWithin(t,e,n),this.rebuildFrom(r),this}},p=l,"symbol"==typeof(g="RegisterClass")&&(g=g.description?"[".concat(g.description,"]"):""),Object.defineProperty(p,"name",{configurable:!0,value:y?"".concat(y," ",g):g}),(()=>{const t="function"==typeof Symbol&&Symbol.metadata?Object.create(d[Symbol.metadata]??null):void 0;!function(t,e,n,r,o,s){function i(t){if(void 0!==t&&"function"!=typeof t)throw new TypeError("Function expected");return t}for(var c,a=r.kind,f="getter"===a?"get":"setter"===a?"set":"value",l=!e&&t?r.static?t:t.prototype:null,u=e||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),h=!1,d=n.length-1;d>=0;d--){var p={};for(var g in r)p[g]="access"===g?{}:r[g];for(var g in r.access)p.access[g]=r.access[g];p.addInitializer=function(t){if(h)throw new TypeError("Cannot add initializers after decoration has completed");s.push(i(t||null))};var y=(0,n[d])("accessor"===a?{get:u.get,set:u.set}:u[f],p);if("accessor"===a){if(void 0===y)continue;if(null===y||"object"!=typeof y)throw new TypeError("Object expected");(c=i(y.get))&&(u.get=c),(c=i(y.set))&&(u.set=c),(c=i(y.init))&&o.unshift(c)}else(c=i(y))&&("field"===a?o.unshift(c):u[f]=c)}l&&Object.defineProperty(l,r.name,u),h=!0}(null,f={value:l},u,{kind:"class",name:l.name,metadata:t},null,h),l=f.value,t&&Object.defineProperty(l,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:t}),function(t,e,n){for(var r=arguments.length>2,o=0;o<e.length;o++)n=r?e[o].call(t,n):e[o].call(t)}(l,h)})(),l})();const Sn=vn;const jn=new WeakMap;function kn(){const t=_();return t?jn.get(t):void 0}function On(t){Object.defineProperty(t,"value",{get:t.get,set:t.set,configurable:!0,enumerable:!0})}function En(t,e,n,r){return r&&Object.defineProperty(t,z,{value:r,writable:!1,enumerable:!1,configurable:!0}),rn(t,()=>{n();for(const t of e.values())t?.();e.clear()})}function xn(t,e){const n=Je(t),r=Je([]),i=new Map;function c(t){const e=i.get(t);e&&(i.delete(t),e(),Reflect.deleteProperty(r,t))}const a=kn(),f=a?a.depth+1:0,l=ye(function({ascend:t}){const l=n.length;!function(t){s(r,"length",t,r)}(l);const u=Array.from(i.keys());for(let c=0;c<l;c++)i.has(c)||t(()=>{const t=c,l=ye(function(){const i=me(()=>r[t]),c={key:t,source:n,get:()=>o(n,t,n),set:e=>s(n,t,e,n),old:i};On(c);const a=e(c,r);r[t]=a});jt(l,`project[${f}]:${t}`),jn.set(l,{source:n,key:t,target:r,depth:f,parent:a}),i.set(c,l)});for(const t of u)t>=l&&c(t)});return En(r,i,()=>l(),{source:n,target:r,apply:e,depth:f,parent:a})}function Mn(t,e){const n=Je(t),r=new Map,o=Je(r),s=new Map;function i(t){const e=s.get(t);e&&(e(),s.delete(t),o.delete(t))}const c=kn(),a=c?c.depth+1:0,f=ye(function({ascend:t}){const r=new Set;for(const t of n.mapKeys())r.add(t);for(const i of r)s.has(i)||t(()=>{const t=ye(function(){const t=me(()=>o.get(i)),r={key:i,source:n,get:()=>n.get(i),set:t=>(n.set(i,t),!0),old:t};On(r);const s=e(r,o);o.set(i,s)});jt(t,`project[${a}]:${String(i)}`),jn.set(t,{source:n,key:i,target:o,depth:a,parent:c}),s.set(i,t)});for(const t of Array.from(s.keys()))r.has(t)||i(t)});return En(o,s,()=>f(),{source:n,target:o,apply:e,depth:a,parent:c})}function Pn(t,e){const n=Je(t),r=Je({}),i=new Map;function c(t){const e=i.get(t);e&&(e(),i.delete(t),Reflect.deleteProperty(r,t))}const a=kn(),f=a?a.depth+1:0,l=ye(function({ascend:t}){const l=new Set;for(const t in n)l.add(t);const u=Reflect.ownKeys(n);for(const t of u)l.add(t);for(const c of l)i.has(c)||t(()=>{const t=ye(function(){const t=c,i=me(()=>r[c]),a={key:t,source:n,get:()=>o(n,t,n),set:e=>s(n,t,e,n),old:i};On(a);const f=e(a,r);r[t]=f});jt(t,`project[${f}]:${String(c)}`),jn.set(t,{source:n,key:c,target:r,depth:f,parent:a}),i.set(c,t)});for(const t of Array.from(i.keys()))l.has(t)||c(t)});return En(r,i,()=>l(),{source:n,target:r,apply:e,depth:f,parent:a})}function An(t,e){const n=Je(t),r=new Map,o=Je(r),s=new Map;function i(t){const e=s.get(t);e&&(e(),s.delete(t),o.delete(t))}const c=kn(),a=c?c.depth+1:0,f=ye(function({ascend:t}){const r=new Set;for(const t of n.keys())r.add(t);for(const i of r)s.has(i)||t(()=>{const t=ye(function(){const t=me(()=>o.get(i)),r={key:i,source:n,get:()=>n.get(i),set:t=>(n.set(i,t),!0),old:t};On(r);const s=e(r,o);o.set(i,s)});jt(t,`project[${a}]:${String(i)}`),jn.set(t,{source:n,key:i,target:o,depth:a,parent:c}),s.set(i,t)});for(const t of Array.from(s.keys()))r.has(t)||i(t)});return En(o,s,()=>f(),{source:n,target:o,apply:e,depth:a,parent:c})}const Rn=Object.assign(function(t,e){if(Array.isArray(t))return xn(t,e);if(t instanceof Map)return An(t,e);if(t instanceof Sn)return Mn(t,e);if(t&&(t.constructor===Object||void 0===t.constructor))return Pn(t,e);throw new Error("Unsupported source type")},{array:xn,register:Mn,record:Pn,map:An});const Dn=Symbol("native");class Wn{constructor(t){Object.defineProperties(this,{[Dn]:{value:t},[$]:{value:t},content:{value:Symbol("MapContent")},[Symbol.toStringTag]:{value:"ReactiveMap"}})}get size(){return ct(this,"size"),this[Dn].size}clear(){const t=this[Dn].size>0;if(this[Dn].clear(),t){const t={type:"bunch",method:"clear"};We(this,t,"size"),Te(this.content,t)}}entries(){return ct(this.content),sn(this[Dn].entries())}forEach(t,e){ct(this.content),this[Dn].forEach(t,e)}keys(){return ct(this.content),this[Dn].keys()}values(){return ct(this.content),on(this[Dn].values())}[Symbol.iterator](){ct(this.content);const t=this[Dn][Symbol.iterator]();return{next(){const e=t.next();return e.done?e:{value:[e.value[0],Je(e.value[1])],done:!1}}}}delete(t){const e=this[Dn].has(t),n=this[Dn].delete(t);if(e){const e={type:"del",prop:t};We(this.content,e,t),We(this,e,"size")}return n}get(t){return ct(this.content,t),Je(this[Dn].get(t))}has(t){return ct(this.content,t),this[Dn].has(t)}set(t,e){const n=this[Dn].has(t),r=this[Dn].get(t),o=Je(e);if(this[Dn].set(t,o),!n||r!==o){Ve(this.content,t,r,o,n);We(this,{type:n?"set":"add",prop:t},"size")}return this}}const Tn=Symbol("native");class $n{constructor(t){Object.defineProperties(this,{[Tn]:{value:t},[$]:{value:t},content:{value:Symbol("SetContent")},[Symbol.toStringTag]:{value:"ReactiveSet"}})}get size(){return ct(this,"size"),this[Tn].size}add(t){const e=this[Tn].has(t),n=Je(t);if(this[Tn].add(n),!e){const t={type:"add",prop:n};We(this.content,t,n),We(this,t,"size")}return this}clear(){const t=this[Tn].size>0;if(this[Tn].clear(),t){const t={type:"bunch",method:"clear"};We(this,t,"size"),Te(this.content,t)}}delete(t){const e=this[Tn].has(t),n=this[Tn].delete(t);if(e){const e={type:"del",prop:t};We(this.content,e,t),We(this,e,"size")}return n}has(t){return ct(this.content,t),this[Tn].has(t)}entries(){return ct(this.content),sn(this[Tn].entries())}forEach(t,e){ct(this.content),this[Tn].forEach(t,e)}keys(){return ct(this.content),on(this[Tn].keys())}values(){return ct(this.content),on(this[Tn].values())}[Symbol.iterator](){ct(this.content);const t=this[Tn][Symbol.iterator]();return{next(){const e=t.next();return e.done?e:{value:Je(e.value),done:!1}}}}}Ne(WeakMap,class{constructor(t){Object.defineProperties(this,{[Dn]:{value:t},[$]:{value:t},content:{value:Symbol("WeakMapContent")},[Symbol.toStringTag]:{value:"ReactiveWeakMap"}})}delete(t){const e=this[Dn].has(t),n=this[Dn].delete(t);return e&&We(this.content,{type:"del",prop:t},t),n}get(t){return ct(this.content,t),Je(this[Dn].get(t))}has(t){return ct(this.content,t),this[Dn].has(t)}set(t,e){const n=this[Dn].has(t),r=this[Dn].get(t),o=Je(e);return this[Dn].set(t,o),n&&r===o||Ve(this.content,t,r,o,n),this}}),Ne(Map,Wn),Ne(WeakSet,class{constructor(t){Object.defineProperties(this,{[Tn]:{value:t},[$]:{value:t},content:{value:Symbol("WeakSetContent")},[Symbol.toStringTag]:{value:"ReactiveWeakSet"}})}add(t){const e=this[Tn].has(t);return this[Tn].add(t),e||We(this.content,{type:"add",prop:t},t),this}delete(t){const e=this[Tn].has(t),n=this[Tn].delete(t);return e&&We(this.content,{type:"del",prop:t},t),n}has(t){return ct(this.content,t),this[Tn].has(t)}}),Ne(Set,$n),Ne(Array,hn);const Cn={objectToProxy:G,proxyToObject:X,effectToReactiveObjects:Y,watchers:J,objectParents:we,objectsWithDeepWatchers:ve,deepWatchers:Se,effectToDeepWatchedObjects:je,nonReactiveObjects:$e},zn=[],In=l({getter:(t,e)=>function(){const n=zn.findIndex(t=>t.object===this&&t.prop===e);if(n>-1)throw new Error(`Circular dependency detected: ${zn.slice(n).map(t=>`${t.object.constructor.name}.${String(t.prop)}`).join(" -> ")} -> again`);zn.push({object:this,prop:e});try{const n=t.call(this);return Kn(this,e,n),n}finally{zn.pop()}}});function Kn(t,e,n){Object.defineProperty(t,e,{value:n})}const Nn=Object.assign(l({method:(t,e)=>function(...n){return Nn.warn(this,e),t.apply(this,n)},getter:(t,e)=>function(){return Nn.warn(this,e),t.call(this)},setter:(t,e)=>function(n){return Nn.warn(this,e),t.call(this,n)},class:t=>class extends t{constructor(...t){super(...t),Nn.warn(this,"constructor")}},default:t=>l({method:(e,n)=>function(...r){return Nn.warn(this,n,t),e.apply(this,r)},getter:(e,n)=>function(){return Nn.warn(this,n,t),e.call(this)},setter:(e,n)=>function(r){return Nn.warn(this,n,t),e.call(this,r)},class:e=>class extends e{constructor(...e){super(...e),Nn.warn(this,"constructor",t)}}})}),{warn:(t,e,n)=>{}});t.ArrayReadForward=E,t.DecoratorError=c,t.Destroyable=function(t,e){var n;return t&&"function"!=typeof t&&(e=t,t=void 0),t||(t=class{}),n=class extends t{static destroy(t){const e=n.destructors.get(t);if(!e)return!1;u.unregister(t),n.destructors.delete(t),Object.setPrototypeOf(t,new Proxy({},g));for(const e of Object.getOwnPropertyNames(t))delete t[e];return e(),!0}static isDestroyable(t){return n.destructors.has(t)}constructor(...t){super(...t);const r={};this[d]=r;const o=e?.destructor??this[h];if(!o)throw new p("Destructor is not defined");function s(){o(r)}n.destructors.set(this,s),u.register(this,s,this)}},n.destructors=new WeakMap,n},t.DestructionError=p,t.Eventful=class{constructor(){w.set(this,new Map),v.set(this,[])}hook(t){return m(this,v,"f").includes(t)||m(this,v,"f").push(t),()=>{m(this,v,"f").splice(m(this,v,"f").indexOf(t),1)}}on(t,e){if("object"==typeof t)for(const e of Object.keys(t))this.on(e,t[e]);else if(void 0!==e){let n=m(this,w,"f").get(t);n||(n=[],m(this,w,"f").set(t,n)),n.push(e)}return()=>this.off(t,e)}off(t,e){if("object"==typeof t)for(const e of Object.keys(t))this.off(e,t[e]);else if(null!=e){const n=m(this,w,"f").get(t);n&&m(this,w,"f").set(t,n.filter(t=>t!==e))}else m(this,w,"f").delete(t)}emit(t,...e){const n=m(this,w,"f").get(t);if(n)for(const t of n)t.apply(this,e);for(const n of m(this,v,"f"))n.call(this,t,...e)}},t.Indexable=k,t.IterableWeakMap=P,t.IterableWeakSet=A,t.ReactiveBase=Ze,t.ReactiveError=N,t.ReadOnlyError=dn,t.ReflectGet=o,t.ReflectSet=s,t.Register=Sn,t.addBatchCleanup=fe,t.allocated=y,t.allocatedValues=d,t.arrayEquals=function(t,e){if(t===e)return!0;if(!Array.isArray(t)||!Array.isArray(e))return!1;if(t.length!==e.length)return!1;for(let n=0;n<t.length;n++)if(t[n]!==e[n])return!1;return!0},t.atomic=pe,t.batch=de,t.biDi=function(t,e,n){"function"!=typeof e&&(n=e.set,e=e.get);const r=nt(t);return ye(et(()=>{t(e())},r)),pe(t=>{n(t),re?.all.has(r)&&re.all.delete(r)})},t.buildReactivityGraph=Pt,t.cache=Kn,t.cached=In,t.callOnGC=function(t){let e=!1;const n=()=>{e||(e=!0,t())};return u.register(n,t,t),n},t.cleanedBy=rn,t.cleanup=tn,t.debounce=function(t){return l({method(e,n){let r=null;return function(...n){r&&clearTimeout(r),r=setTimeout(()=>{e.apply(this,n),r=null},t)}}})},t.decorator=l,t.deepWatch=Qe,t.defer=le,t.deprecated=Nn,t.derived=function(t){const e={value:void 0};return rn(e,me(()=>ye(et(function(n){e.value=t(n)},t))))},t.describe=function(t){return(...e)=>n=>class extends n{constructor(...n){super(...n);for(const n of e)Object.defineProperty(this,n,{...Object.getOwnPropertyDescriptor(this,n),...t})}}},t.destructor=h,t.effect=ye,t.enableDevTools=function(){"undefined"!=typeof window&&(ft||(ft=!0,window.__MUTTS_DEVTOOLS__={getGraph:Pt,setEffectName:jt,setObjectName:kt,registerEffect:Ot,registerObject:Et}))},t.forwardArray=O,t.getActivationLog=function(){return Bt},t.getActiveEffect=_,t.getActiveProjection=kn,t.getAt=S,t.getState=Re,t.immutables=Ce,t.isCached=function(t,e){return!!Object.getOwnPropertyDescriptor(t,e)},t.isConstructor=n,t.isDevtoolsEnabled=At,t.isNonReactive=Ke,t.isOwnAccessor=i,t.isReactive=function(t){return X.has(t)},t.isZoneEnabled=function(){return Wt},t.legacyDecorator=a,t.mapped=function(t,e,n){const r=[],o=new gn(r),s=[];function i(n){return ye(function(){r[n]=e(t[n],n,o),We(o,{type:"set",prop:n},n)})}const c=ye(function({ascend:e}){const c=t.length,a=me(()=>r.length);if(n?.(c,a),We(o,{type:"set",prop:"length"},"length"),c<a){const t=s.splice(c);for(const e of t)e();r.length=c}else c>a&&e(function(){for(let t=a;t<c;t++)s.push(i(t))})});return rn(o,()=>{for(const t of s)t();s.length=0,c()})},t.memoize=wn,t.mixin=R,t.modernDecorator=f,t.organize=function(t,e,n){return Object.defineProperty(t,e,{get:n.get,set:n.set,configurable:!0,enumerable:!0}),We(t,{type:"set",prop:e},e),()=>delete t[e]},t.organized=function(t,e,n={}){const r=Je(t),i=Je(n),c=new Map;function a(t){const e=c.get(t);e&&(c.delete(t),e())}const f=ye(function({ascend:t}){const n=new Set;for(const t in r)n.add(t);for(const a of n)c.has(a)||t(()=>{const t=ye(function(){const t=a,n={key:t,get:()=>o(r,t,r),set:e=>s(r,t,e,r)};return Object.defineProperty(n,"value",{get:n.get,set:n.set,configurable:!0,enumerable:!0}),e(n,i)});c.set(a,t)});for(const t of Array.from(c.keys()))n.has(t)||a(t)});return rn(i,()=>{f();for(const t of Array.from(c.keys()))a(t)})},t.profileInfo=Cn,t.project=Rn,t.reactive=Je,t.reactiveOptions=q,t.reduced=function(t,e){const n=[],r=new gn(n),o=ye(function(){const o={};n.length=0;for(const r of t)n.push(...e(r,o));Te(r,{type:"invalidate",prop:"reduced"})});return rn(r,o)},t.register=function(t,e){return new vn(t,e)},t.registerEffectForDebug=Ot,t.registerNativeReactivity=Ne,t.registerObjectForDebug=Et,t.renamed=r,t.root=be,t.setAt=j,t.setEffectName=jt,t.setObjectName=kt,t.setZoneEnabled=function(t){t&&!Wt?(Lt(),Wt=!0):!t&&Wt&&(Promise.prototype.then=Tt,Promise.prototype.catch=$t,Promise.prototype.finally=Ct,globalThis.setTimeout=zt,globalThis.setInterval=It,Kt&&(globalThis.requestAnimationFrame=Kt),Nt&&(globalThis.queueMicrotask=Nt),Wt=!1)},t.throttle=function(t){return l({method(e,n){let r=0,o=null;return function(...n){const s=Date.now();if(s-r>=t)return o&&(clearTimeout(o),o=null),r=s,e.apply(this,n);if(!o){const i=t-(s-r),c=[...n];o=setTimeout(()=>{r=Date.now(),e.apply(this,c),o=null},i)}}}})},t.touched=Te,t.touched1=We,t.trackEffect=function(t){const e=_();if(!e)throw new Error("Not in an effect");Gt.has(e)?Gt.get(e).add(t):Gt.set(e,new Set([t]))},t.unreactive=nn,t.untracked=me,t.unwrap=Z,t.watch=function(t,e,n={}){return"function"==typeof t?function(t,e,{immediate:n=!1,deep:r=!1}={}){const o=_();let s,i=en;const c=ye(et(function(c){const a=t(c);i!==a&&B(o,et(()=>{i===en?n&&e(a):e(a,i),i=a,r&&(s&&s(),s=Qe(a,et(t=>e(t,t),e)))},e))},t));return()=>{c(),s&&s()}}(t,e,n):"object"==typeof t&&null!==t?function(t,e,{immediate:n=!1,deep:r=!1}={}){const o=_();return r?Qe(t,e,{immediate:n}):ye(et(function(){ct(t),n&&B(o,()=>e(t)),n=!0},e))}(t,e,n):(()=>{throw new Error("watch: value must be a function or an object")})()},t.zip=function(...t){if(!t.length)return[];const e=Math.min(...t.map(t=>t.length)),n=[];for(let r=0;r<e;r++){const e=t.map(t=>t[r]);n.push(e)}return n}});
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Mutts={})}(this,function(e){"use strict";const t={addHook(e){throw"One must import the library from the server or the client side"}};const n=new Set([Object,Array,Date,Function,Set,Map,WeakMap,WeakSet,Promise,Error,TypeError,ReferenceError,SyntaxError,RangeError,URIError,EvalError,Reflect,Proxy,RegExp,String,Number,Boolean]);function r(e){return e&&"function"==typeof e&&(n.has(e)||e.toString?.().startsWith("class "))}function o(e,t){return Object.defineProperties(e,{name:{value:t}})}const s={get:(e,t,n)=>"undefined"!=typeof Node&&e instanceof Node?e[t]:Reflect.get(e,t,n),set:(e,t,n,r)=>"undefined"!=typeof Node&&e instanceof Node?(e[t]=n,!0):e instanceof Object||Reflect.has(e,t)?Reflect.set(e,t,n,r):(Object.defineProperty(e,t,{value:n,configurable:!0,writable:!0,enumerable:!0}),!0)};function i(e,t){const n=Object.getOwnPropertyDescriptor(e,t);return!(!n?.get&&!n?.set)}function c(e,t,n=new Map){if(e===t)return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return e===t;if(Object.getPrototypeOf(e)!==Object.getPrototypeOf(t))return!1;let r=n.get(e);if(r?.has(t))return!0;if(r||(r=new Set,n.set(e,r)),r.add(t),Array.isArray(e)){if(!Array.isArray(t))return!1;if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(!c(e[r],t[r],n))return!1;return!0}if(e instanceof Date){const n=t instanceof Date&&e.getTime()===t.getTime();return n}if(e instanceof RegExp){const n=t instanceof RegExp&&e.toString()===t.toString();return n}if(e instanceof Set){if(!(t instanceof Set)||e.size!==t.size)return!1;for(const r of e){let e=!1;for(const o of t)if(c(r,o,n)){e=!0;break}if(!e)return!1}return!0}if(e instanceof Map){if(!(t instanceof Map)||e.size!==t.size)return!1;for(const[r,o]of e)if(t.has(r)){if(!c(o,t.get(r),n))return!1}else{let e=!1;for(const[s,i]of t)if(c(r,s,n)&&c(o,i,n)){e=!0;break}if(!e)return!1}return!0}const o=Object.keys(e),s=Object.keys(t);if(o.length!==s.length)return!1;for(const r of o){if(!Object.hasOwn(t,r))return!1;if(!c(e[r],t[r],n))return!1}return!0}const a=new WeakMap;function f(e){return a.has(e)||a.set(e,Object.seal(Object.create(null,{contentOf:{value:e,writable:!1,configurable:!1}}))),a.get(e)}function l(e,t){return Object.defineProperties(e,{[Symbol.toStringTag]:{value:t,writable:!1,configurable:!1},toString:{value:()=>t,writable:!1,configurable:!1}}),e}function u(e,t){return Object.defineProperty(t,"name",{value:t.name?`${t.name}::${e}`:e,writable:!1,configurable:!1}),t}class h extends Error{constructor(e){super(e),this.name="DecoratorException"}}function d(e){return function(t,n,o,...s){if(void 0===n){if(r(t)){if(!("class"in e))throw new Error("Decorator cannot be applied to a class");return e.class(t)}}else if("object"==typeof t&&["string","symbol"].includes(typeof n)){if(!o)throw new Error("Decorator cannot be applied to a field");if("object"==typeof o&&"configurable"in o){if("get"in o||"set"in o){if(!("getter"in e)&&!("setter"in e))throw new Error("Decorator cannot be applied to a getter or setter");if("getter"in e){const r=e.getter(o.get,t,n);r&&(o.get=r)}if("setter"in e){const r=e.setter(o.set,t,n);r&&(o.set=r)}return o}if("function"==typeof o.value){if(!("method"in e))throw new Error("Decorator cannot be applied to a method");const r=e.method(o.value,t,n);return r&&(o.value=r),o}}}if(!("default"in e))throw new Error("Decorator do not have a default implementation");return e.default.call(this,t,n,o,...s)}}function p(e){return function(t,n,...r){if(!n?.kind||"string"!=typeof n.kind){if(!("default"in e))throw new Error("Decorator do not have a default implementation");return e.default.call(this,t,n,...r)}switch(n.kind){case"class":if(!("class"in e))throw new Error("Decorator cannot be applied to a class");return e.class(t);case"field":throw new Error("Decorator cannot be applied to a field");case"getter":if(!("getter"in e))throw new Error("Decorator cannot be applied to a getter");return e.getter(t,t,n.name);case"setter":if(!("setter"in e))throw new Error("Decorator cannot be applied to a setter");return e.setter(t,t,n.name);case"method":if(!("method"in e))throw new Error("Decorator cannot be applied to a method");return e.method(t,t,n.name);case"accessor":{if(!("getter"in e)&&!("setter"in e))throw new Error("Decorator cannot be applied to a getter or setter");const r={};if("getter"in e){const o=e.getter(t.get,t,n.name);o&&(r.get=o)}if("setter"in e){const o=e.setter(t.set,t,n.name);o&&(r.set=o)}return r}}}}const g=e=>{const t=p(e),n=d(e);return(e,r,...o)=>{const s=function(e,t){return"object"==typeof t&&null!==t&&"string"==typeof t.kind?"modern":"legacy"}(0,r,o[0]);return"modern"===s?t(e,r,...o):n(e,r,...o)}},y=new FinalizationRegistry(e=>e()),m=Symbol("destructor"),b=Symbol("allocated");class w extends Error{static throw(e){return()=>{throw new w(e)}}constructor(e){super(`Object is destroyed. ${e}`),this.name="DestroyedAccessError"}}const v={[Symbol.toStringTag]:"MutTs Destroyable",get:w.throw("Cannot access destroyed object"),set:w.throw("Cannot access destroyed object")};const S=g({setter:(e,t,n)=>function(t){return this[b][n]=t,e.call(this,t)}});function k(e,t,n,r,o,s){function i(e){if(void 0!==e&&"function"!=typeof e)throw new TypeError("Function expected");return e}for(var c,a=r.kind,f="getter"===a?"get":"setter"===a?"set":"value",l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),h=!1,d=n.length-1;d>=0;d--){var p={};for(var g in r)p[g]="access"===g?{}:r[g];for(var g in r.access)p.access[g]=r.access[g];p.addInitializer=function(e){if(h)throw new TypeError("Cannot add initializers after decoration has completed");s.push(i(e||null))};var y=(0,n[d])("accessor"===a?{get:u.get,set:u.set}:u[f],p);if("accessor"===a){if(void 0===y)continue;if(null===y||"object"!=typeof y)throw new TypeError("Object expected");(c=i(y.get))&&(u.get=c),(c=i(y.set))&&(u.set=c),(c=i(y.init))&&o.unshift(c)}else(c=i(y))&&("field"===a?o.unshift(c):u[f]=c)}l&&Object.defineProperty(l,r.name,u),h=!0}function j(e,t,n){for(var r=arguments.length>2,o=0;o<t.length;o++)n=r?t[o].call(e,n):t[o].call(e);return r?n:void 0}function O(e,t,n,r){if("a"===n&&!r)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!r:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===n?r:"a"===n?r.call(e):r?r.value:t.get(e)}function E(e,t,n,r,o){if("m"===r)throw new TypeError("Private method is not writable");if("a"===r&&!o)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===r?o.call(e,n):o?o.value=n:t.set(e,n),n}var M,x;"function"==typeof SuppressedError&&SuppressedError;M=new WeakMap,x=new WeakMap;const R=Symbol("getAt"),D=Symbol("setAt");function T(e,t){e&&"function"!=typeof e&&(t=e,e=void 0),e||(e=class{}),t||(t={get(e){if("function"!=typeof this[R])throw new Error("Indexable class must have an [getAt] method");return this[R](e)},set(e,t){if("function"!=typeof this[D])throw new Error("Indexable class has read-only numeric index access");this[D](e,t)}});class n extends e{}return Object.setPrototypeOf(n.prototype,new Proxy(e.prototype,{[Symbol.toStringTag]:"MutTs Indexable",get(e,n,r){if(n in e){const t=Object.getOwnPropertyDescriptor(e,n)?.get;return t?t.call(r):e[n]}if("string"==typeof n){if("length"===n&&t.getLength)return t.getLength.call(r);const e=Number(n);if(!Number.isNaN(e))return t.get.call(r,e)}},set(e,n,r,o){if(n in e){const t=Object.getOwnPropertyDescriptor(e,n)?.set;return t?t.call(o,r):e[n]=r,!0}if("string"==typeof n){if("length"===n&&t.setLength)return t.setLength.call(o,r),!0;const e=Number(n);if(!Number.isNaN(e)){if(!t.set)throw new Error("Indexable class has read-only numeric index access");return t.set.call(o,e,r),!0}}return Object.defineProperty(o,n,{value:r,writable:!0,enumerable:!0,configurable:!0}),!0},has(e,n){if(n in e)return!0;if("string"==typeof n){if("length"===n&&t.getLength)return!0;const e=Number(n);if(!Number.isNaN(e))return!0}return!1},ownKeys(e){const n=Reflect.ownKeys(e);if(t.getLength){n.push("length");const e=t.getLength.call(this);for(let t=0;t<e;t++)n.push(String(t))}return n},getOwnPropertyDescriptor(e,n){if(n in e)return Object.getOwnPropertyDescriptor(e,n);if("string"==typeof n){if("length"===n&&t.getLength)return{enumerable:!1,configurable:!0,get:()=>t.getLength.call(this)};const e=Number(n);if(!Number.isNaN(e))return{enumerable:!0,configurable:!0,get:()=>t.get.call(this,e),set:t.set?n=>t.set.call(this,e,n):void 0}}}})),n}const A=Symbol("forwardArray");class P{get[A](){throw new Error("ArrayReadForward is not implemented")}get length(){return this[A].length}[Symbol.iterator](){return this[A][Symbol.iterator]()}map(e,t){return this[A].map(e,t)}filter(e,t){return this[A].filter(e,t)}reduce(e,t){return void 0!==t?this[A].reduce(e,t):this[A].reduce(e)}reduceRight(e,t){return void 0!==t?this[A].reduceRight(e,t):this[A].reduceRight(e)}forEach(e,t){this[A].forEach(e,t)}find(e,t){return this[A].find(e,t)}findIndex(e,t){return this[A].findIndex(e,t)}findLast(e,t){return this[A].findLast(e,t)}findLastIndex(e,t){return this[A].findLastIndex(e,t)}includes(e,t){return this[A].includes(e,t)}indexOf(e,t){return this[A].indexOf(e,t)}lastIndexOf(e,t){return this[A].lastIndexOf(e,t)}slice(e,t){return this[A].slice(e,t)}concat(...e){return this[A].concat(...e)}every(e,t){return this[A].every(e,t)}some(e,t){return this[A].some(e,t)}join(e){return this[A].join(e)}keys(){return this[A].keys()}values(){return this[A].values()}entries(){return this[A].entries()}toString(){return this[A].toString()}toLocaleString(e,t){return this[A].toLocaleString(e,t)}at(e){return this[A].at(e)}flat(e){return this[A].flat(e)}flatMap(e,t){return this[A].flatMap(e,t)}toReversed(){return this[A].toReversed?.()??[...this[A]].reverse()}toSorted(e){return this[A].toSorted?.(e)??[...this[A]].sort(e)}toSpliced(e,t,...n){return void 0===t?this[A].toSpliced(e):this[A].toSpliced(e,t,...n)}with(e,t){return this[A].with(e,t)}get[Symbol.unscopables](){return this[A][Symbol.unscopables]}}var W,$;class I{constructor(e){if(this.uuids=new WeakMap,this.refs={},this[W]="IterableWeakMap",this.registry=new FinalizationRegistry(e=>{delete this.refs[e]}),e)for(const[t,n]of e)this.set(t,n)}createIterator(e){const{refs:t}=this;return function*(){for(const n of Object.keys(t)){const[r,o]=t[n],s=r.deref();s?yield e(s,o):delete t[n]}}()}clear(){for(const e of Object.keys(this.refs)){const t=this.refs[e][0].deref();t&&this.registry.unregister(t)}this.uuids=new WeakMap,this.refs={}}delete(e){const t=this.uuids.get(e);return!!t&&(delete this.refs[t],this.uuids.delete(e),this.registry.unregister(e),!0)}forEach(e,t){for(const[n,r]of this)e.call(t??this,r,n,t??this)}get(e){const t=this.uuids.get(e);if(t)return this.refs[t][1]}has(e){return this.uuids.has(e)}set(e,t){let n=this.uuids.get(e);return n?this.refs[n][1]=t:(n=crypto.randomUUID(),this.uuids.set(e,n),this.refs[n]=[new WeakRef(e),t],this.registry.register(e,n,e)),this}get size(){return[...this].length}entries(){return this.createIterator((e,t)=>[e,t])}keys(){return this.createIterator((e,t)=>e)}values(){return this.createIterator((e,t)=>t)}[Symbol.iterator](){return this.entries()}}W=Symbol.toStringTag;class z{constructor(e){if(this.uuids=new WeakMap,this.refs={},this[$]="IterableWeakSet",this.registry=new FinalizationRegistry(e=>{delete this.refs[e]}),e)for(const t of e)this.add(t)}createIterator(e){const{refs:t}=this;return function*(){for(const n of Object.keys(t)){const r=t[n].deref();r?yield e(r):delete t[n]}}()}clear(){for(const e of Object.keys(this.refs)){const t=this.refs[e].deref();t&&this.registry.unregister(t)}this.uuids=new WeakMap,this.refs={}}add(e){let t=this.uuids.get(e);return t||(t=crypto.randomUUID(),this.uuids.set(e,t),this.refs[t]=new WeakRef(e),this.registry.register(e,t,e)),this}delete(e){const t=this.uuids.get(e);return!!t&&(delete this.refs[t],this.uuids.delete(e),this.registry.unregister(e),!0)}forEach(e,t){for(const n of this)e.call(t??this,n,n,t??this)}has(e){return this.uuids.has(e)}get size(){return[...this].length}entries(){return this.createIterator(e=>[e,e])}keys(){return this.createIterator(e=>e)}values(){return this.createIterator(e=>e)}[Symbol.iterator](){return this.keys()}union(e){const t={[Symbol.iterator]:()=>e.keys()},n=this;return new Set(function*(){yield*n;for(const e of t)n.has(e)||(yield e)}())}intersection(e){const t=this;return new Set(function*(){for(const n of t)e.has(n)&&(yield n)}())}difference(e){const t=this;return new Set(function*(){for(const n of t)e.has(n)||(yield n)}())}symmetricDifference(e){const t={[Symbol.iterator]:()=>e.keys()},n=this;return new Set(function*(){for(const t of n)e.has(t)||(yield t);for(const e of t)n.has(e)||(yield e)}())}isSubsetOf(e){for(const t of this)if(!e.has(t))return!1;return!0}isSupersetOf(e){const t={[Symbol.iterator]:()=>e.keys()};for(const e of t)if(!this.has(e))return!1;return!0}isDisjointFrom(e){for(const t of this)if(e.has(t))return!1;return!0}}function C(e,t){const n=new WeakMap,o=e(Object);return n.set(Object,o),new Proxy(o,{apply(o,i,c){if(0===c.length)throw new Error("Mixin requires a base class");const a=c[0];if("function"!=typeof a)throw new Error("Mixin requires a constructor function");if(!(r(a)||a&&"function"==typeof a&&a.prototype))throw new Error("Mixin requires a valid constructor");const f=n.get(a);if(f)return f;let l=a;if(t){const e=class extends a{},n=a.prototype,r=new Proxy(n,{get(e,n,r){const o=s.get(e,n,r);return"function"!=typeof o||"string"!=typeof n||["constructor","toString","valueOf"].includes(n)?o:function(...e){const n=t(this);return o.apply(n,e)}}});Object.setPrototypeOf(e.prototype,r),l=e}const u=e(l);return n.set(a,u),u}})}$=Symbol.toStringTag;const N=(e,t)=>(...n)=>t[e](...n),K=new WeakMap,_=new WeakMap;function V(e,t){_.set(t,e),K.set(e,t)}const L={[Symbol.toStringTag]:"MutTs PromiseChain function",get:(e,t)=>t===Symbol.toStringTag?"PromiseProxy":"string"==typeof t&&["then","catch","finally"].includes(t)?e[t]:B(e.then(e=>e[t]))},F=e=>({then:N("then",e),catch:N("catch",e),finally:N("finally",e)}),q={[Symbol.toStringTag]:"MutTs PromiseChain object",get(e,t,n){const r=Object.getOwnPropertyDescriptor(e,t)?.get,o=r?r.call(n):e[t];return"function"==typeof e?o:B(o)},apply:(e,t,n)=>B(e.apply(t,n))};function H(e){const t=new Proxy(e,q);return V(e,t),t}function U(e){return e&&["function","object"].includes(typeof e)}function B(e){if(!U(e))return e;if(K.has(e))return K.get(e);if(!(e instanceof Promise))return H(e);e=e.then(e=>U(e)?H(e):e);const t=Object.assign(function(...t){return B(e.then(e=>this?.then?this.then(n=>e.apply(n,t)):e.apply(this,t)))},F(e)),n=new Proxy(t,L);return V(e,n),n}const Z=Symbol("native-reactive"),G=Symbol("non-reactive"),X=Symbol("unreactive-properties"),J=Symbol("all-props"),Y=Symbol("projection-info"),Q=Symbol("stopped"),ee=Symbol("cleanup"),te=Symbol("root-function");var ne;e.ReactiveErrorCode=void 0,(ne=e.ReactiveErrorCode||(e.ReactiveErrorCode={})).CycleDetected="CYCLE_DETECTED",ne.MaxDepthExceeded="MAX_DEPTH_EXCEEDED",ne.MaxReactionExceeded="MAX_REACTION_EXCEEDED",ne.WriteInComputed="WRITE_IN_COMPUTED",ne.TrackingError="TRACKING_ERROR",ne.BrokenEffects="BROKEN_EFFECTS";class re extends Error{constructor(e,t){super(e),this.debugInfo=t,this.name="ReactiveError"}get code(){return this.debugInfo?.code}get cause(){return this.debugInfo?.cause}}const oe={enter:e=>{},leave:e=>{},chain:(e,t)=>{},beginChain:e=>{},endChain:()=>{},garbageCollected:e=>{},touched:(e,t,n,r)=>{},skipRunningEffect:e=>{},maxEffectChain:100,maxTriggerPerBatch:10,maxEffectReaction:"throw",onMemoizationDiscrepancy:void 0,cycleHandling:"none",isVerificationRun:!1,maxDeepWatchDepth:100,instanceMembers:!0,ignoreAccessors:!0,recursiveTouching:!0,asyncMode:"cancel",warn:(...e)=>{},introspection:{enableHistory:!1,historySize:50},zones:{setTimeout:!0,setInterval:!0,requestAnimationFrame:!0,queueMicrotask:!0}},se=new WeakMap,ie=new WeakMap,ce=new WeakMap,ae=new WeakMap,fe=new WeakMap;function le(e,t){const n=fe.get(t),r=n?.deref();if(r&&r!==e){const n=t.name||"anonymous",o=r.name||"anonymous",s=e.name||"anonymous";throw new Error(`[reactive] Abusive Shared Root detected: Root '${n}' is already identifying function '${o}'. Cannot reuse it for '${s}'. Shared roots cause lost updates and broken identity logic.`)}return fe.set(t,new WeakRef(e)),Object.defineProperty(e,te,{value:ue(t),writable:!1})}function ue(e){for(;e&&te in e;)e=e[te];return e}const he=Symbol("external-source");let de=!1;const pe=new Set,ge=new Set,ye=new WeakMap,me=new WeakMap;let be=0,we=0;const ve=new Map;function Se(e){let t=ye.get(e);if(!t){const n=ue(e);t=n?.name?.trim()||"effect_"+ ++be,ye.set(e,t)}return t}function ke(e){let t=me.get(e);if(!t){const n=e?.constructor?.name;t=`${n&&"Object"!==n?n:"object"}_${++we}`,me.set(e,t)}return t}function je(e){if(!e||pe.has(e))return;pe.add(e);const t=se.get(e);if(t)for(const e of t)Oe(e)}function Oe(e){ge.has(e)||function(e){ge.add(e),ke(e)}(e)}function Ee(e,t,n,r,o,s){const i=function(e){let t=ve.get(e);return t||(t=new Map,ve.set(e,t)),t}(e);let c=i.get(t);c||(c=new Map,i.set(t,c));let a=c.get(n);return a||(a={label:n,object:r,prop:o,evolution:s,count:0,lastTriggered:Date.now()},c.set(n,a)),a}function Me(e,t){ye.set(e,t)}function xe(e,t){me.set(e,t),ge.add(e)}function Re(e){e&&de&&je(e)}function De(e){de&&Oe(e)}function Te(e,t,n,r,o){if(oe.introspection.enableHistory&&function(e,t,n,r,o){const s={id:++Ie,timestamp:Date.now(),source:e?Se(e):"External",target:Se(t),objectName:ke(n),prop:String(r),type:o.type};$e.push(s),$e.length>oe.introspection.historySize&&$e.shift()}(e,t,n,r,o),!de)return;je(t),e&&je(e);const s=function(e,t){const n=ke(e);return t===J?`${n}.*`:"symbol"==typeof t?`${n}.${t.description??t.toString()}`:`${n}.${String(t)}`}(n,r),i=Ee(e??he,t,s,n,r,o);i.count+=1,i.lastTriggered=Date.now(),Oe(n)}function Ae(e,t=5){const n=[];let r=e;for(let e=0;e<t;e++){let e,t="";e:for(const[n,o]of ve)for(const[s,i]of o)if(s===r){let r=0;for(const o of i.values())o.lastTriggered>r&&(r=o.lastTriggered,t=o.label,e=n===he?void 0:n);if(e||t)break e}if(!e){if(t){n.push(`External -> (${t}) -> ${Se(r)}`);break}break}n.push(`${Se(e)} -> (${t}) -> ${Se(r)}`),r=e}return n.reverse()}function Pe(){const e=[],t=[],n=new Map,r=new Set(pe);!function(e){const t=Array.from(e);for(let n=0;n<t.length;n++){const r=t[n],o=ae.get(r);o&&!e.has(o)&&(e.add(o),t.push(o))}}(r);const{nodes:o,nodeByEffect:s}=function(e){const t=[],n=new Map,r=Array.from(e);for(const e of r){const r=Se(e),o={id:`effect_${t.length}`,label:r,type:"effect",depth:0,debugName:r};t.push(o),n.set(e,o)}const o=new Map,s=e=>{if(!e)return 0;const t=o.get(e);if(void 0!==t)return t;const n=ae.get(e),r=s(n)+(n?1:0);return o.set(e,r),r};for(const[e,t]of n){t.depth=s(e);const r=ae.get(e);if(r){const e=n.get(r);e&&(t.parentId=e.id)}}return{nodes:t,nodeByEffect:n}}(r);for(const t of o)e.push(t);for(const[e,t]of s)n.set(e,t.id);for(const t of ge){const r=`object_${e.length}`;e.push({id:r,label:ke(t),type:"state",debugName:me.get(t)}),n.set(t,r)}if(ve.has(he)){const t="effect_external";e.push({id:t,label:"External",type:"external",depth:0}),n.set(he,t)}for(const e of r){const r=n.get(e);if(!r)continue;const o=se.get(e);if(o)for(const e of o){const o=n.get(e);o&&t.push({id:`${r}->${o}`,source:r,target:o,type:"dependency",label:"depends"})}}for(const[e,r]of ve)for(const[o,s]of r){const r=n.get(o);if(!r)continue;const i=n.get(e);if(i)for(const e of s.values())t.push({id:`${i}->${r}:${e.label}`,source:i,target:r,type:"cause",label:e.count>1?`${e.label} (${e.count})`:e.label,count:e.count})}return{nodes:e,edges:t,meta:{generatedAt:Date.now(),devtoolsEnabled:de}}}function We(){return de}const $e=[];let Ie=0;var ze;class Ce{enter(e){const t=this.active;return this.active=e,t}leave(e){this.active=e}with(e,t){const n=this.enter(e);try{return t()}finally{this.leave(n)}}root(e){let t=this.enter();try{return e()}finally{this.leave(t)}}get zoned(){const e=this.active;return u(`${this}@${e}`,t=>this.with(e,t))}}class Ne extends Ce{}class Ke extends Ce{has(e){return this.history.has(e)}some(e){for(const t of this.history)if(e(t))return!0;return!1}constructor(e=new Ne){super(),this.controlled=e,this.history=new Set;const t=this;this.present=Object.create(e,Object.getOwnPropertyDescriptors({get active(){return e.active},set active(t){e.active=t},enter(n){if(n&&t.history.has(n))throw new Error("ZoneHistory: re-entering historical zone");return void 0!==n&&t.history.add(n),{added:n,entered:e.enter(n)}},leave:n=>(void 0!==n.added&&t.history.delete(n.added),e.leave(n.entered))}))}get active(){return{present:this.controlled.active,history:new Set(this.history)}}set active(e){this.history=this.history&&new Set(this.history),this.controlled.active=e?.present}}class _e extends Ce{constructor(...e){super(),ze.set(this,new Set);for(const t of e)O(this,ze,"f").add(t)}get active(){const e=new Map;for(const t of O(this,ze,"f"))void 0!==t.active&&e.set(t,t.active);return e}set active(e){for(const t of O(this,ze,"f"))t.active=e?.get(t)}enter(e){const t=new Map;for(const n of O(this,ze,"f")){const r=e?.get(n);t.set(n,n.enter(r))}return t}leave(e){for(const t of O(this,ze,"f"))t.leave(e.get(t))}add(e){O(this,ze,"f").add(e)}delete(e){O(this,ze,"f").delete(e)}clear(){O(this,ze,"f").clear()}}ze=new WeakMap;const Ve=l(new _e,"async");t.addHook(()=>{const e=Ve.active;return()=>{const t=Ve.active;return Ve.active=e,()=>Ve.active=t}});const Le=l(new Ke,"effectHistory");l(Le.present,"effectHistory.present"),Ve.add(Le);const Fe=l(new _e(Le.present),"effectAggregator");function qe(e){const t=ue(e);return Le.some(e=>ue(e)===t)}function He(){return Le.present.active}const Ue=new WeakMap,Be=new WeakMap;function Ze(e){let t=e;for(;t&&"object"==typeof t&&null!==t&&Be.has(t);)t=Be.get(t);return t}function Ge(e){const t=new Map;for(let n=0;n<e.length;n++){const r=e[n];if(t.has(r))return e.slice(t.get(r));t.set(r,n)}return null}function Xe(e,t=20){const n=e.map(e=>e.name||"<anonymous>");if(n.length<=t)return n.join(" → ");const r=n.slice(0,5),o=n.slice(-10);return`${r.join(" → ")} ... (${n.length-15} more) ... ${o.join(" → ")}`}let Je;const Ye=new Array(100);function Qe(t,n,r,o){const s=ue(t);if(!Je)return;let i=Je.get(s);i||(i=new Map,Je.set(s,i));let c=i.get(n);c||(c=new Map,i.set(n,c));const a=(c.get(o)??0)+1;if(c.set(o,a),Ye.unshift({effect:t,obj:n,evolution:r,prop:o}),Ye.pop(),a>=oe.maxTriggerPerBatch){const t=s?.name||"anonymous",n=`Aggressive trigger detected: effect "${t}" triggered ${a} times in the batch by the same cause.`;if("throw"===oe.maxEffectReaction)throw new re(n,{code:e.ReactiveErrorCode.MaxReactionExceeded,count:a,effect:t});oe.warn(`[reactive] ${n}`)}}const et=new WeakMap,tt=new WeakSet,nt=new WeakMap,rt=new WeakMap,ot=new WeakMap,st=new WeakMap,it=new WeakMap;function ct(e,t){let n=e.get(t);return n||(n=new z,e.set(t,n)),n}function at(e,t,n){if(e===t)return!0;if(e===n)return!1;const r=new Set,o=[e];for(r.add(e),r.add(n);o.length>0;){const e=o.shift(),n=nt.get(e);if(n)for(const e of n){if(e===t)return!0;r.has(e)||(r.add(e),o.push(e))}}return!1}let ft;function lt(e){return ft?.all.has(ue(e))}const ut=new Set;function ht(e,t,n=new Set,r=[]){if(e===t)return[...r,t];if(n.has(e))return[];n.add(e);const o=[...r,e],s=nt.get(e);if(s)for(const e of s){const r=ht(e,t,n,o);if(r.length>0)return r}return[]}function dt(e,t){const n=ht(t,e);return n.length>0?[e,...n]:[]}function pt(t,n,r){if(t[ee]?.(),t[Q])return;if(!ft)return;const o=ue(t);if("none"===oe.cycleHandling&&ft.all.has(o)&&ft.all.delete(o),ft.all.set(o,t),n&&!r&&"none"!==oe.cycleHandling){const r=ue(n);if(function(e,t){if(e===t)return!1;const n=st.get(t);return!!n?.has(e)}(r,o)){const n=dt(r,o),s=n.length>0?`Cycle detected: ${n.map(e=>e.name||e.toString()).join(" → ")}`:`Cycle detected: ${r.name||r.toString()} → ${o.name||o.toString()} (and back)`,i=oe.cycleHandling;if("strict"===i){ft.all.delete(o);const r=Ae(t),i=it.get(o);throw new re(`[reactive] Strict Cycle Prevention: ${s}`,{code:e.ReactiveErrorCode.CycleDetected,cycle:n.map(e=>e.name||e.toString()),details:s,causalChain:r,creationStack:i})}switch(i){case"throw":{ft.all.delete(o);const r=Ae(t),i=it.get(o);throw new re(`[reactive] ${s}`,{code:e.ReactiveErrorCode.CycleDetected,cycle:n.map(e=>e.name||e.toString()),details:s,causalChain:r,creationStack:i})}case"warn":return oe.warn(`[reactive] ${s}`),void ft.all.delete(o);case"break":return void ft.all.delete(o)}}!function(e,t){if("none"===oe.cycleHandling)return;const n=nt.get(e);if(n?.has(t))return;if(n)n.add(t);else{const n=new z;n.add(t),nt.set(e,n)}let r=rt.get(t);if(r||(r=new z,rt.set(t,r)),r.add(e),e===t)return;const o=ct(st,e),s=ct(ot,t);o.add(t),s.add(e);const i=ot.get(e);if(i)for(const e of i)e!==t&&(ct(st,e).add(t),s.add(e));const c=st.get(t);if(c)for(const t of c)t!==e&&(ct(ot,t).add(e),o.add(t));if(i&&c)for(const e of i){const t=ct(st,e);for(const n of c)e!==n&&(t.add(n),ct(ot,n).add(e))}}(r,o)}}function gt(e){ft?ut.add(e):e()}const yt=gt;function mt(e,t,n,r,o){if(n.has(e)){const t=r.indexOf(e);return r.slice(t).concat([e])}if(t.has(e))return[];t.add(e),n.add(e),r.push(e);const s=nt.get(e);if(s)for(const e of s)if(o.all.has(e)){const s=mt(e,t,n,r,o);if(s.length>0)return s}return r.pop(),n.delete(e),[]}function bt(e){let t=null,n=null;if("none"===oe.cycleHandling){const e=ft.all.entries().next().value;e&&([n,t]=e)}else for(const[e,r]of ft.all){if(0===(ft.inDegrees.get(e)??0)){t=r,n=e;break}}if(!t){if(ft.all.size>0){let e=function(e){const t=new Set,n=new Set,r=[];for(const[o]of e.all){if(t.has(o))continue;const s=mt(o,t,n,r,e);if(s.length>0)return s}return[]}(ft);if(0===e.length)for(const[t]of ft.all){const n=st.get(t);if(n){for(const r of n)if(r!==t&&ft.all.has(r)){const n=st.get(r);if(n?.has(t)){e=[t,r,t];break}}if(e.length>0)break}}const t=e.length>0?`Cycle detected: ${e.map(e=>e.name||"<anonymous>").join(" → ")}`:"Cycle detected in effect batch - all effects have dependencies that prevent execution";switch(oe.cycleHandling){case"throw":throw new re(`[reactive] ${t}`);case"warn":{oe.warn(`[reactive] ${t}`);const e=ft.all.values().next().value;if(e){const t=ue(e);return ft.all.delete(t),ft.inDegrees.delete(t),e()}break}case"break":{const e=ft.all.values().next().value;if(e){const t=ue(e);return ft.all.delete(t),ft.inDegrees.delete(t),e()}break}}}return null}e.push(ue(t));const r=t();return ft.all.delete(n),ft.inDegrees.delete(n),function(e,t){const n=st.get(t);if(n)for(const t of n)if(e.all.has(t)){const n=e.inDegrees.get(t)??0;n>0&&e.inDegrees.set(t,n-1)}}(ft,n),r}function wt(t,n){Array.isArray(t)||(t=[t]);const r=t.map(ue);if(ft){oe?.chain(r,ue(He()));const e=He();for(let r=0;r<t.length;r++)pt(t[r],e,"immediate"===n);if(n){const e={};for(let n=0;n<t.length;n++)try{const r=t[n]();void 0===r||"value"in e||(e.value=r)}finally{const e=ue(t[n]);ft.all.delete(e)}return e.value}}else{if(Je)throw new Error("Batch already in progress");Je=new Map,oe.beginChain(r),ft={all:new Map,inDegrees:new Map};const o=He(),s=[],i={};try{if(n)for(let e=0;e<t.length;e++)try{const n=t[e]();void 0===n||"value"in i||(i.value=n)}finally{ft.all.delete(ue(t[e]))}else{for(let e=0;e<t.length;e++)pt(t[e],o,!1);!function(e){if("none"===oe.cycleHandling)return;const t=He(),n=t?ue(t):null;e.inDegrees.clear();for(const[t]of e.all){let r=0;const o=ot.get(t);if(o)for(const s of o)e.all.has(s)&&s!==n&&s!==t&&r++;e.inDegrees.set(t,r)}}(ft)}for(;ft.all.size>0||ut.size>0;)if(ft.all.size>0){if(s.length>oe.maxEffectChain){const t=Ge(s),n=Xe(s),r=t?`Max effect chain reached (cycle detected: ${Xe(t)})`:`Max effect chain reached (trace: ${n})`,o=(ft?Array.from(ft.all.keys()):[]).map(e=>e.name||"<anonymous>"),i={code:e.ReactiveErrorCode.MaxDepthExceeded,effectuatedRoots:s,cycle:t,trace:n,maxEffectChain:oe.maxEffectChain,queued:o.slice(0,50),queuedCount:o.length,causalChain:s.length>0?Ae(ft.all.get(s[s.length-1])):[]};switch(oe.maxEffectReaction){case"throw":case"debug":throw new re(`[reactive] ${r}`,i);case"warn":oe.warn(`[reactive] ${r} (queued: ${o.slice(0,10).join(", ")}${o.length>10?", …":""})`)}}const t=bt(s);void 0===t||"value"in i||(i.value=t)}else{const e=Array.from(ut);ut.clear();for(const t of e)t()}return i.value}catch(t){throw t instanceof re?t:new re("Effects are broken",{code:e.ReactiveErrorCode.BrokenEffects,cause:t})}finally{Je=void 0,ft=void 0,oe.endChain()}}}const vt=g({method:e=>function(...t){const n=()=>e.apply(this,t);return Object.defineProperty(n,"name",{value:`atomic(${e.name})`}),wt(n,"immediate")},default:e=>function(...t){const n=()=>e.apply(this,t);return Object.defineProperty(n,"name",{value:`atomic(${e.name})`}),wt(n,"immediate")}}),St=new FinalizationRegistry(e=>e());function kt(e,t){const n=t?.asyncMode??oe.asyncMode??"cancel";if(oe.introspection.enableHistory){const t=(new Error).stack;if(t){const n=t.split("\n").slice(2).join("\n");it.set(ue(e),n)}}let r=null;const o=Le.present.with(u,()=>Fe.zoned),s=Le.zoned;let i=Le.present.active,c=!1,a=!1,f=null,l=null;function u(){if(r){const e=r;r=null,jt(()=>e())}if(f)if("cancel"===n&&l)l(),l=null,f=null;else if("ignore"===n)return;if(c)return;let t,i;oe.enter(ue(e));try{if(i=o(()=>e({tracked:o,ascend:s,reaction:a})),i&&"function"!=typeof i&&("object"!=typeof i||!("then"in i)))throw new re(`[reactive] Effect returned a non-function value: ${i}`);if(i&&"object"==typeof i&&"function"==typeof i.then){const e=i;let t=null;const n=new Promise((e,n)=>{t=n}),r=new re("[reactive] Effect canceled due to dependency change");f=Promise.race([e,n]),l=()=>{t&&t(r)}}else t=i}finally{a=!0,oe.leave(e)}r=()=>{r=null,t?.();const e=se.get(u);if(e){for(const t of e){const e=ie.get(t);if(e){for(const[t,n]of e.entries())n.delete(u),0===n.size&&e.delete(t);0===e.size&&ie.delete(t)}}se.delete(u)}const n=ce.get(u);if(n){for(const e of n)e();ce.delete(u)}}}function h(e){return Object.defineProperties(e,{[Q]:{get:()=>c},[ee]:{value:()=>{if(r){const e=r;r=null,jt(()=>e())}}}})}le(u,e),h(u),t?.opaque&&tt.add(u),We()&&Re(u),wt(u,"immediate"),ae.set(u,i);const d=()=>{c||(c=!0,l&&(l(),l=null,f=null),r?.(),function(e){if("none"===oe.cycleHandling)return;const t=ue(e),n=ot.get(t),r=st.get(t),o=nt.get(t);if(o){for(const e of o){const n=rt.get(e);n?.delete(t)}nt.delete(t)}const s=rt.get(t);if(s){for(const e of s){const n=nt.get(e);n?.delete(t)}rt.delete(t)}if(n)for(const e of n){const n=st.get(e);if(n&&(n.delete(t),r))for(const o of r)at(e,o,t)||n.delete(o)}if(r)for(const e of r){const r=ot.get(e);if(r&&(r.delete(t),n))for(const o of n)at(o,e,t)||r.delete(o)}if(n&&r)for(const e of n){const n=st.get(e);if(n)for(const o of r)if(!at(e,o,t)){n.delete(o);const t=ot.get(o);t?.delete(e)}}ot.delete(t),st.delete(t)}(u),St.unregister(d))};if(!i){const t=h(()=>d());return St.register(t,()=>{d(),oe.garbageCollected(e)},d),t}let p=ce.get(i);p||(p=new Set,ce.set(i,p));const g=h(()=>{p.delete(g),0===p.size&&ce.delete(i),d()});return p.add(g),g}function jt(e){return Le.present.root(e)}function Ot(e){return Le.root(e)}const Et=new WeakMap,Mt=new WeakSet,xt=new WeakMap,Rt=new WeakMap;function Dt(e,t,n){let r=Et.get(e);r||(r=new Set,Et.set(e,r)),r.add({parent:t,prop:n})}function Tt(e,t,n){const r=Et.get(e);if(r){for(const e of r)if(e.parent===t&&e.prop===n){r.delete(e);break}0===r.size&&Et.delete(e)}}function At(e){return!!Mt.has(e)||Wt(e)}function Pt(e,t){const n=Et.get(e);if(n)for(const{parent:e}of n){const t=xt.get(e);if(t)for(const e of t)wt(e);Pt(e)}}function Wt(e){const t=Et.get(e);if(!t)return!1;for(const{parent:e}of t){if(Mt.has(e))return!0;if(Wt(e))return!0}return!1}const $t=new WeakMap;function It(e,t){const n={},r=zt(e=Ze(e));r&&Object.assign(r,{evolution:t,next:n}),$t.set(e,n)}function zt(e){e=Ze(e);let t=$t.get(e);return t||(t={},$t.set(e,t)),t}function Ct(e,t,n,r,...o){const s=He();for(const i of o)for(const o of i){const i=r.get(o);if(i)for(const r of i){if(qe(r)){oe.skipRunningEffect(r);continue}n.has(r)||(n.add(r),lt(r)||Qe(r,e,t,o));const i=et.get(r);if(Te(s,r,e,o,t),i){for(const n of i)n(e,t,o);i.delete(r)}}}}function Nt(e,t,n){Kt(e,t,[n])}function Kt(e,t,n){It(e=Ze(e),t);const r=ie.get(e);if(r){const o=new Set;n?Ct(e,t,o,r,[J],n):Ct(e,t,o,r,r.keys()),oe.touched(e,t,n,o),wt(Array.from(o))}Mt.has(e)&&Pt(e)}const _t=new WeakSet,Vt=new Set,Lt=Symbol("absent");function Ft(...e){for(const t of e)t&&(t.prototype[G]=!0);return e[0]}function qt(e){if(null===e||"object"!=typeof e)return!0;if(_t.has(e))return!0;if(e[G])return!0;for(const t of Vt)if(t(e))return!0;return!1}function Ht(e){return function(e){return"object"==typeof e&&null!==e}(e)}function Ut(e){if(Ht(e)){if(Array.isArray(e))return Array.prototype;try{return e.constructor}catch{return}}}function Bt(e,t){return e!==t&&(!(!Ht(e)||!Ht(t))&&(!qt(e)&&!qt(t)&&Ut(e)===Ut(t)))}function Zt(e,t,n,r,o){const s={type:o?"set":"add",prop:t};if(oe.recursiveTouching&&void 0!==n&&Bt(n,r)){const o={obj:Ze(e),prop:t};!function(e){if(!e.length)return;const t=new Set,n=e[0]?.origin;let r;if(n){r=new Set;const e=ie.get(n.obj);if(e){const t=new Set;Ct(n.obj,{type:"set",prop:n.prop},t,e,[J],[n.prop]);for(const e of t)r.add(e)}if(0===r.size)return}for(const{target:o,evolution:s,prop:i}of e){if(!Ht(o))continue;const e=Ze(o);It(e,s);const c=ie.get(e);let a;const f=[i];if(c){if(a=new Set,Ct(e,s,a,c,[J],f),n&&r){const e=new Set;for(const t of a)(r.has(t)||Jt(t,r))&&e.add(t);a=e}for(const e of a)t.add(e)}oe.touched(e,s,f,a),Mt.has(e)&&Pt(e)}t.size&&wt([...t])}(Xt(n,r,new WeakMap,[],o)),function(e,t,n){e=Ze(e);const r=ie.get(e);if(!r)return;const o=r.get(n);if(!o)return;const s=new Set,i=He();for(const r of o){if(!tt.has(r))continue;if(qe(r)){oe.skipRunningEffect(r);continue}s.add(r),Qe(r,e,t,n);const o=et.get(r);if(Te(i,r,e,n,t),o){for(const r of o)r(e,t,n);o.delete(r)}}s.size>0&&(oe.touched(e,t,[n],s),wt(Array.from(s)))}(e,s,t)}else Nt(e,s,t)}function Gt(e){const t=new Set(Reflect.ownKeys(e));let n=Object.getPrototypeOf(e);for(;n&&!Object.hasOwn(n,"constructor");){for(const e of Reflect.ownKeys(n))t.add(e);n=Object.getPrototypeOf(n)}return t}function Xt(e,t,n=new WeakMap,r=[],o){return Bt(e,t)&&Ht(e)&&Ht(t)?function(e,t,n){let r=e.get(t);return r||(r=new WeakSet,e.set(t,r)),!!r.has(n)||(r.add(n),!1)}(n,e,t)?r:Array.isArray(e)&&Array.isArray(t)?(function(e,t,n,r,o){const s=[],i=e.length,c=t.length,a=Math.max(i,c);for(let n=0;n<a;n++){const r=n<i,a=n<c;if(r&&!a){s.push({target:e,evolution:{type:"del",prop:n},prop:n,origin:o});continue}if(!r&&a){s.push({target:e,evolution:{type:"add",prop:n},prop:n,origin:o});continue}if(!r||!a)continue;const f=Ze(e[n]),l=Ze(t[n]);Object.is(f,l)||s.push({target:e,evolution:{type:"set",prop:n},prop:n,origin:o})}i!==c&&s.push({target:e,evolution:{type:"set",prop:"length"},prop:"length",origin:o});r.push(...s)}(e,t,0,r,o),r):(function(e,t,n,r,o){const s=Gt(e),i=Gt(t),c=[];for(const t of s)i.has(t)||c.push({target:e,evolution:{type:"del",prop:t},prop:t,origin:o});for(const t of i)s.has(t)||c.push({target:e,evolution:{type:"add",prop:t},prop:t,origin:o});for(const a of i){if(!s.has(a))continue;const i=Ze(e[a]),f=Ze(t[a]);Bt(i,f)?Xt(i,f,n,r,o):Object.is(i,f)||c.push({target:e,evolution:{type:"set",prop:a},prop:a,origin:o})}r.push(...c)}(e,t,n,r,o),r):r}function Jt(e,t){let n=e;const r=new WeakSet;for(;n&&!r.has(n);){if(r.add(n),t.has(n))return!0;n=ae.get(n)}return!1}function Yt(e,t=J){e=Ze(e);const n=He();if(!n||"symbol"==typeof t&&t!==J)return;let r=ie.get(e);r||(r=new Map,ie.set(e,r));let o=r.get(t);o||(o=new Set,r.set(t,o)),o.add(n);const s=se.get(n);s?s.add(e):se.set(n,new Set([e]))}Ft(Date,RegExp,Error,Promise,Function),"undefined"!=typeof window&&(!function(...e){for(const t of e){try{Object.defineProperty(t,G,{value:!0,writable:!1,enumerable:!1,configurable:!1})}catch{}G in t||_t.add(t)}e[0]}(window,document),Ft(Node,Element,HTMLElement,EventTarget));const Qt=new WeakMap,en=[],tn={[Symbol.toStringTag]:"MutTs Reactive",get(e,t,n){if(e&&"object"==typeof e&&!Object.hasOwn(e,t)){const n=Qt.get(e.constructor);if(n&&t in n){const r=Object.getOwnPropertyDescriptor(n,t);return r.get?r.get.call(e):(...t)=>r.value.apply(e,t)}}if(t===G)return!1;const r=Ze(e);if(r[X]?.has(t)||"symbol"==typeof t)return s.get(e,t,n);const o=Reflect.has(n,t),c=o&&Object.hasOwn(n,t),a=o&&!c,f=oe.ignoreAccessors&&c&&(i(n,t)||i(r,t));if(o&&(oe.instanceMembers&&a&&e instanceof Object||f)||Yt(e,t),a&&(!oe.instanceMembers||!(e instanceof Object))){let n=on(Object.getPrototypeOf(e));for(;n&&n!==Object.prototype&&(Yt(n,t),!Object.hasOwn(n,t));){let e=on(Object.getPrototypeOf(n));e===n&&(e=on(Object.getPrototypeOf(Ze(n)))),n=e}}const l=s.get(e,t,n);if("object"==typeof l&&null!==l){const n=on(l);return At(e)&&Dt(n,e,t),n}return l},set(e,t,n,r){const o=Ze(e),i=Ze(r);if(o[X]?.has(t)||o!==i)return s.set(e,t,n,r);const c=Ze(n);let a=Lt;if(Reflect.has(i,t)){Object.getOwnPropertyDescriptor(i,t),Object.getOwnPropertyDescriptor(o,t);a=jt(()=>Reflect.get(o,t,r))}if(Mt.has(e)&&("object"==typeof a&&null!==a&&Tt(a,e,t),"object"==typeof c&&null!==c)){Dt(on(c),e,t)}return a!==c&&s.set(e,t,c,r)&&Zt(e,t,a,c,a!==Lt),!0},has(t,n){if(en.includes(t))throw new re(`[reactive] Circular dependency detected in 'has' check for property '${String(n)}'`,{code:e.ReactiveErrorCode.CycleDetected,cycle:[]});en.push(t),Yt(t,n);const r=Reflect.has(t,n);return en.pop(),r},deleteProperty(e,t){if(!Object.hasOwn(e,t))return!1;const n=e[t];return Mt.has(e)&&"object"==typeof n&&null!==n&&Tt(n,e,t),delete e[t],Nt(e,{type:"del",prop:t},t),Mt.has(e)&&Pt(e),!0},ownKeys:e=>(Yt(e,J),Reflect.ownKeys(e))},nn=new WeakSet,rn=C(e=>class extends e{constructor(...e){return super(...e),nn.has(new.target)?sn(this):this}});function on(e){if(!e||"object"!=typeof e)return e;const t=e;if(qt(t))return t;if(Be.has(t))return t;const n=function(e){return Ue.get(e)}(t);if(void 0!==n)return n;const r=!(Z in t)||t instanceof t[Z]?t:new t[Z](t);r!==t&&function(e,t){Be.set(e,t)}(r,t);const o=new Proxy(r,tn);return function(e,t){Ue.set(e,t),Be.set(t,e)}(t,o),o}const sn=g({class(e){if(e.prototype instanceof rn)return nn.add(e),e;class t extends e{constructor(...n){return super(...n),new.target===t||nn.has(new.target)||oe.warn(`${e.name} has been inherited by ${this.constructor.name} that is not reactive.\n@reactive decorator must be applied to the leaf class OR classes have to extend ReactiveBase.`),sn(this)}}return Object.defineProperty(t,"name",{value:`Reactive<${e.name}>`}),t},get:e=>on(e),default:on});function cn(e,t,{immediate:n=!1}={}){if(null==e)return;if("object"!=typeof e)throw new Error("Target of deep watching must be an object");const r=le(()=>t(e),t);return kt(()=>{Mt.add(e);let o=Rt.get(r);o||(o=new Set,Rt.set(r,o)),o.add(e);const s=new WeakSet;return function e(t,n=0){var r;if(!(!t||s.has(t)||(r=t,"object"!=typeof r||null===r)||n>oe.maxDeepWatchDepth||qt(t))){s.add(t),Mt.add(t),o.add(t);for(const r in Ze(t))if(Object.hasOwn(t,r)){const o=t[r];e("object"==typeof o&&null!==o?sn(o):o,n+1)}if(Array.isArray(t)||t instanceof Array){const r=t.length;for(let o=0;o<r;o++){const r=t[o];e("object"==typeof r&&null!==r?sn(r):r,n+1)}}else if(t instanceof Set)for(const r of t){e("object"==typeof r&&null!==r?sn(r):r,n+1)}else if(t instanceof Map)for(const[r,o]of t){e("object"==typeof o&&null!==o?sn(o):o,n+1)}}}(e),n&&t(e),n=!0,()=>{const e=Rt.get(r);if(e){for(const t of e){const e=xt.get(t);e?(e.delete(r),0===e.size&&(xt.delete(t),Mt.delete(t))):Mt.delete(t)}Rt.delete(r)}}})}const an=Symbol("cleanup"),fn=Symbol("unset-yet");const ln=g({class(e){Ft(e)},default:function(e,...t){return"object"==typeof e?function(e){if(qt(e=Ze(e)))return e;try{Object.defineProperty(e,G,{value:!0,writable:!1,enumerable:!1,configurable:!0})}catch{}return G in e||_t.add(e),e}(e):n=>{n.prototype[X]=new Set(n.prototype[X]||[]),n.prototype[X].add(e);for(const e of t)n.prototype[X].add(e);return n}}});function un(e,t){return Object.defineProperty(e,an,{value:t,writable:!1,enumerable:!1,configurable:!0})}const hn=new WeakMap,dn=new WeakMap;function pn(e,t){e.branches??(e.branches=new WeakMap);let n=e.branches.get(t);return n||(n={},e.branches.set(t,n)),n}function gn(e){const t=ue(e),n=hn.get(t);if(n)return n;const r={},o=le((...t)=>{const n=t;if(n.some(e=>!(e&&["object","symbol","function"].includes(typeof e))))throw new Error("memoize expects non-null object arguments");let o=r;for(const e of n)o=pn(o,e);if(Yt(o,"memoize"),"result"in o){if(oe.onMemoizationDiscrepancy){const t=oe.isVerificationRun;oe.isVerificationRun=!0;try{const t=jt(()=>e(...n));c(o.result,t)||oe.onMemoizationDiscrepancy(o.result,t,e,n,"calculation")}finally{oe.isVerificationRun=t}}return o.result}if(o.cleanup=Ot(()=>kt(()=>(o.result=e(...n),()=>{delete o.result,Nt(o,{type:"invalidate",prop:n},"memoize"),o.cleanup&&(o.cleanup(),o.cleanup=void 0)}),{opaque:!0})),oe.onMemoizationDiscrepancy){const t=oe.isVerificationRun;oe.isVerificationRun=!0;try{const t=jt(()=>e(...n));c(o.result,t)||oe.onMemoizationDiscrepancy(o.result,t,e,n,"comparison")}finally{oe.isVerificationRun=t}}return o.result},e);return hn.set(t,o),hn.set(o,o),o}const yn=g({getter:(e,t,n)=>function(){let r=dn.get(e);r||(r=le(o(t=>e.call(t),`${String(t?.constructor?.name??t?.name??"Object")}.${String(n)}`),{method:e,propertyKey:n,...e[te]?{[te]:e[te]}:{}}),dn.set(e,r));return gn(r)(this)},method:(e,t,n)=>function(...r){let s=dn.get(e);s||(s=le(o((t,...n)=>e.call(t,...n),`${String(t?.constructor?.name??t?.name??"Object")}.${String(n)}`),{method:e,propertyKey:n,...e[te]?{[te]:e[te]}:{}}),dn.set(e,s));return gn(s)(this,...r)},default:gn});function*mn(e){let t=e.next();for(;!t.done;)yield sn(t.value),t=e.next()}function*bn(e){let t=e.next();for(;!t.done;){const[n,r]=t.value;yield[sn(n),sn(r)],t=e.next()}}let wn=(()=>{var e,t,n,r,o,s,i,c,a;let f,l,u=[ln],h=[],d=function(){class e extends(T(P,{get(e){return this[R](e)},set(e,t){this[D](e,t)},getLength(){return this.length},setLength(e){this.length=e}})){toArray(){return Array.from(this)}}return e}();var p,g,y;return l=class extends d{get[(t=new WeakMap,n=new WeakMap,r=new WeakMap,o=new WeakMap,s=new WeakMap,i=new WeakMap,c=new WeakMap,e=new WeakSet,A)](){return this.toArray()}constructor(a,f){let l;if(super(),e.add(this),t.set(this,void 0),n.set(this,void 0),r.set(this,void 0),o.set(this,new Map),s.set(this,new Map),i.set(this,new Set),c.set(this,void 0),kt(({ascend:e})=>{l=e}),E(this,c,l,"f"),"function"!=typeof a)throw new Error("Register requires a key function");E(this,t,a,"f"),E(this,n,sn([]),"f"),E(this,r,sn(new Map),"f"),f&&this.push(...f)}ensureKey(n){let r=O(this,s,"f").get(n);if(r)return r.key;if(r={key:void 0},O(this,s,"f").set(n,r),O(this,c,"f").call(this,()=>{const o=kt(({reaction:o})=>{const s=O(this,t,"f").call(this,n);this.assertValidKey(s);const i=r.key;o&&void 0!==i&&!Object.is(s,i)&&O(this,e,"m",a).call(this,n,i,s),r.key=s});r.stop=o,O(this,i,"f").add(o)}),void 0===r.key)throw new Error("Register key function must return a property key");return r.key}assertValidKey(e){const t=typeof e;if("string"!==t&&"number"!==t&&"symbol"!==t)throw new Error("Register key function must return a property key")}setKeyValue(e,t){const n=O(this,r,"f").get(e);void 0!==n&&n!==t&&this.cleanupValue(n),O(this,r,"f").set(e,t)}cleanupValue(e){const t=O(this,s,"f").get(e);if(!t)return;const n=t.stop;n&&(t.stop=void 0,O(this,i,"f").delete(n),n()),O(this,s,"f").delete(e)}disposeKeyEffects(){for(const e of Array.from(O(this,s,"f").keys()))this.cleanupValue(e);O(this,i,"f").clear()}incrementUsage(e){const t=O(this,o,"f").get(e)??0;O(this,o,"f").set(e,t+1)}decrementUsage(e){const t=O(this,o,"f").get(e);if(t)if(t<=1){const t=O(this,r,"f").get(e);O(this,o,"f").delete(e),O(this,r,"f").delete(e),void 0!==t&&this.cleanupValue(t)}else O(this,o,"f").set(e,t-1)}normalizeIndex(e,t=!1){const n=this.length;let r=e;if(r<0&&(r=Math.max(n+r,0)),r>n){if(!t)throw new RangeError("Index out of bounds");r=n}if(!t&&r===n)throw new RangeError("Index out of bounds");return r}assignAt(e,t,r){const o=O(this,n,"f")[e];void 0!==o&&Object.is(o,t)||(void 0!==o&&this.decrementUsage(o),O(this,n,"f")[e]=t,this.incrementUsage(t)),this.setKeyValue(t,r)}insertKeyValue(e,t,r){O(this,n,"f").splice(e,0,t),this.incrementUsage(t),this.setKeyValue(t,r)}rebuildFrom(e){this.disposeKeyEffects(),O(this,n,"f").splice(0,O(this,n,"f").length),O(this,o,"f").clear(),O(this,r,"f").clear();for(const t of e){const e=this.ensureKey(t);O(this,n,"f").push(e),this.incrementUsage(e),O(this,r,"f").set(e,t)}}get length(){return O(this,n,"f").length}[(a=function(e,t,i){if(Object.is(t,i))return;const c=O(this,r,"f").get(i);if(void 0!==c&&c!==e)throw new Error(`Register key collision for key ${String(i)}`);const a=O(this,o,"f").get(t);if(!a)return;const f=O(this,o,"f").get(i)??0;this.setKeyValue(i,e);for(let e=0;e<O(this,n,"f").length;e++)Object.is(O(this,n,"f")[e],t)&&(O(this,n,"f")[e]=i);O(this,o,"f").set(i,f+a),O(this,o,"f").delete(t),O(this,r,"f").delete(t);const l=O(this,s,"f").get(e);l&&(l.key=i)},R)](e){const t=O(this,n,"f")[e];return void 0===t?void 0:O(this,r,"f").get(t)}[D](e,t){const n=this.ensureKey(t);if(e===this.length)return void this.insertKeyValue(e,n,t);const r=this.normalizeIndex(e);this.assignAt(r,n,t)}push(...e){for(const t of e){const e=this.ensureKey(t);this.insertKeyValue(this.length,e,t)}return this.length}pop(){if(this.length)return this.removeAt(this.length-1)}shift(){if(this.length)return this.removeAt(0)}unshift(...e){let t=0;for(const n of e){const e=this.ensureKey(n);this.insertKeyValue(t++,e,n)}return this.length}splice(e,t,...o){const s=this.normalizeIndex(e,!0),i=this.length-s,c=Math.min(void 0===t?i:Math.max(t,0),i),a=[];for(const e of o)a.push(this.ensureKey(e));const f=O(this,n,"f").splice(s,c,...a),l=[];for(const e of f){if(void 0===e)continue;const t=O(this,r,"f").get(e);this.decrementUsage(e),l.push(t)}for(let e=0;e<a.length;e++){const t=a[e],n=o[e];this.incrementUsage(t),this.setKeyValue(t,n)}return l}clear(){O(this,n,"f").length=0,O(this,o,"f").clear(),O(this,r,"f").clear(),this.disposeKeyEffects()}get(e){return O(this,r,"f").get(e)}set(e,t){O(this,r,"f").has(e)&&this.setKeyValue(e,t)}remove(e){let t=this.indexOfKey(e);for(;-1!==t;)this.removeAt(t),t=this.indexOfKey(e)}removeAt(e){const[t]=O(this,n,"f").splice(e,1);if(void 0===t)return;const o=O(this,r,"f").get(t);return this.decrementUsage(t),o}keep(e){const t=new Map;for(const[o,s]of O(this,n,"f").entries()){if(t.has(s)){t.get(s)||this.removeAt(o);continue}const n=e(O(this,r,"f").get(s));t.set(s,n),n||this.removeAt(o)}}hasKey(e){return O(this,o,"f").has(e)}indexOfKey(e){return O(this,n,"f").indexOf(e)}mapKeys(){return O(this,r,"f").keys()}update(...e){for(const t of e){const e=this.ensureKey(t);O(this,r,"f").has(e)&&this.setKeyValue(e,t)}}upsert(e,...t){for(const n of t){const t=this.ensureKey(n);O(this,r,"f").has(t)?this.setKeyValue(t,n):e(n)}}entries(){const e=this;return function*(){for(let t=0;t<O(e,n,"f").length;t++){const o=O(e,r,"f").get(O(e,n,"f")[t]);void 0!==o&&(yield[t,o])}}()}[Symbol.iterator](){const e=this;return function*(){for(const t of O(e,n,"f")){const n=O(e,r,"f").get(t);void 0!==n&&(yield n)}}()}toString(){return`[Register length=${this.length}]`}at(e){const t=e<0?this.length+e:e;if(!(t<0||t>=this.length))return this[R](t)}reverse(){return O(this,n,"f").reverse(),this}sort(e){const t=e?(t,n)=>e(O(this,r,"f").get(t),O(this,r,"f").get(n)):void 0;return O(this,n,"f").sort(t),this}fill(e,t=0,n=this.length){const r=this.toArray();return r.fill(e,t,n),this.rebuildFrom(r),this}copyWithin(e,t,n){const r=this.toArray();return r.copyWithin(e,t,n),this.rebuildFrom(r),this}},p=l,"symbol"==typeof(g="RegisterClass")&&(g=g.description?"[".concat(g.description,"]"):""),Object.defineProperty(p,"name",{configurable:!0,value:y?"".concat(y," ",g):g}),(()=>{const e="function"==typeof Symbol&&Symbol.metadata?Object.create(d[Symbol.metadata]??null):void 0;k(null,f={value:l},u,{kind:"class",name:l.name,metadata:e},null,h),l=f.value,e&&Object.defineProperty(l,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:e}),j(l,h)})(),l})();const vn=wn;const Sn=new WeakMap;function kn(){const e=He();return e?Sn.get(e):void 0}function jn(e){Object.defineProperty(e,"value",{get:e.get,set:e.set,configurable:!0,enumerable:!0})}function On(e,t,n,r){return r&&Object.defineProperty(e,Y,{value:r,writable:!1,enumerable:!1,configurable:!0}),un(e,()=>{n();for(const e of t.values())e?.();t.clear()})}function En(e,t){e=sn(e);const n=sn([]),r=new Map;function o(e){const t=r.get(e);t&&(r.delete(e),t(),Reflect.deleteProperty(n,e))}const i=kn(),c=i?i.depth+1:0,a=kt(function({ascend:a}){const f=e.length;!function(e){s.set(n,"length",e,n)}(f);const l=Array.from(r.keys());for(let o=0;o<f;o++)r.has(o)||a(()=>{const a=o,f=kt(function(){const r=jt(()=>n[a]),o={key:a,source:e,get:()=>s.get(e,a,e),set:t=>s.set(e,a,t,e),old:r};jn(o);const i=t(o,n);n[a]=i});Me(f,`project[${c}]:${a}`),Sn.set(f,{source:e,key:a,target:n,depth:c,parent:i}),r.set(o,f)});for(const e of l)e>=f&&o(e)});return On(n,r,()=>a(),{source:e,target:n,apply:t,depth:c,parent:i})}function Mn(e,t){const n=sn(e),r=new Map,o=sn(r),s=new Map;function i(e){const t=s.get(e);t&&(t(),s.delete(e),o.delete(e))}const c=kn(),a=c?c.depth+1:0,f=kt(function({ascend:e}){const r=new Set;for(const e of n.mapKeys())r.add(e);for(const i of r)s.has(i)||e(()=>{const e=kt(function(){const e=jt(()=>o.get(i)),r={key:i,source:n,get:()=>n.get(i),set:e=>(n.set(i,e),!0),old:e};jn(r);const s=t(r,o);o.set(i,s)});Me(e,`project[${a}]:${String(i)}`),Sn.set(e,{source:n,key:i,target:o,depth:a,parent:c}),s.set(i,e)});for(const e of Array.from(s.keys()))r.has(e)||i(e)});return On(o,s,()=>f(),{source:n,target:o,apply:t,depth:a,parent:c})}function xn(e,t){const n=sn(e),r=sn({}),o=new Map;function i(e){const t=o.get(e);t&&(t(),o.delete(e),Reflect.deleteProperty(r,e))}const c=kn(),a=c?c.depth+1:0,f=kt(function({ascend:e}){const f=new Set;for(const e in n)f.add(e);const l=Reflect.ownKeys(n);for(const e of l)f.add(e);for(const i of f)o.has(i)||e(()=>{const e=kt(function(){const e=i,o=jt(()=>r[i]),c={key:e,source:n,get:()=>s.get(n,e,n),set:t=>s.set(n,e,t,n),old:o};jn(c);const a=t(c,r);r[e]=a});Me(e,`project[${a}]:${String(i)}`),Sn.set(e,{source:n,key:i,target:r,depth:a,parent:c}),o.set(i,e)});for(const e of Array.from(o.keys()))f.has(e)||i(e)});return On(r,o,()=>f(),{source:n,target:r,apply:t,depth:a,parent:c})}function Rn(e,t){const n=sn(e),r=new Map,o=sn(r),s=new Map;function i(e){const t=s.get(e);t&&(t(),s.delete(e),o.delete(e))}const c=kn(),a=c?c.depth+1:0,f=kt(function({ascend:e}){const r=new Set;for(const e of n.keys())r.add(e);for(const i of r)s.has(i)||e(()=>{const e=kt(function(){const e=jt(()=>o.get(i)),r={key:i,source:n,get:()=>n.get(i),set:e=>(n.set(i,e),!0),old:e};jn(r);const s=t(r,o);o.set(i,s)});Me(e,`project[${a}]:${String(i)}`),Sn.set(e,{source:n,key:i,target:o,depth:a,parent:c}),s.set(i,e)});for(const e of Array.from(s.keys()))r.has(e)||i(e)});return On(o,s,()=>f(),{source:n,target:o,apply:t,depth:a,parent:c})}const Dn=Object.assign(function(e,t){if(Array.isArray(e))return En(e,t);if(e instanceof Map)return Rn(e,t);if(e instanceof vn)return Mn(e,t);if(e&&(e.constructor===Object||void 0===e.constructor))return xn(e,t);throw new Error("Unsupported source type")},{array:En,register:Mn,record:xn,map:Rn});function*Tn(e,{length:t=!0}={}){t&&(yield"length"),yield e}function*An(e,t,{length:n=!1}={}){const r=Math.min(e,t),o=Math.max(e,t);n&&(yield"length");for(let e=r;e<=o;e++)yield e}class Pn extends Array{get(e){return Yt(this,e),sn(this[e])}set(e,t){const n=e>=this.length;this[e]=t,Kt(this,{type:"set",prop:e},Tn(e,{length:n}))}getLength(){return Yt(this,"length"),this.length}setLength(e){const t=this.length;try{this.length=e}finally{Kt(this,{type:"set",prop:"length"},An(t,e,{length:!0}))}}}const Wn={get:s.get,set:s.set};Object.assign(s,{get(e,t,n){if(e instanceof Array&&"string"==typeof t){if("length"===t)return Pn.prototype.getLength.call(e);const n=parseInt(t);if(!Number.isNaN(n))return Pn.prototype.get.call(e,n)}return Wn.get(e,t,n)},set(e,t,n,r){if(e instanceof Array&&"string"==typeof t){if("length"===t)return Pn.prototype.setLength.call(e,n);const r=parseInt(t);if(!Number.isNaN(r))return Pn.prototype.set.call(e,r,n)}return Wn.set(e,t,n,r)}});class $n extends Array{toJSON(){return this}get[Symbol.toStringTag](){return"ReactiveArray"}at(e){const t=e<0?this.length+e:e;if(Yt(this,t),!(t<0||t>=this.length))return sn(this[t])}toReversed(){return Yt(this),sn(this.toReversed())}toSorted(e){return Yt(this),sn(this.toSorted(e))}toSpliced(e,t,...n){return Yt(this),void 0===t?this.toSpliced(e):this.toSpliced(e,t,...n)}with(e,t){return Yt(this),sn(this.with(e,t))}entries(){return Yt(this),bn(this.entries())}keys(){return Yt(this,"length"),this.keys()}values(){return Yt(this),mn(this.values())}[Symbol.iterator](){Yt(this);const e=this[Symbol.iterator]();return{next(){const t=e.next();return t.done?t:{value:sn(t.value),done:!1}},[Symbol.iterator](){return this},[Symbol.dispose](){}}}indexOf(e,t){Yt(this);const n=Ze(e),r=this.indexOf(n,t);return-1!==r?r:this.indexOf(e,t)}lastIndexOf(e,t){Yt(this);const n=Ze(e),r=this.lastIndexOf(n,t);return-1!==r?r:this.lastIndexOf(e,t)}includes(e,t){Yt(this);const n=Ze(e);return this.includes(n,t)||this.includes(e,t)}find(e,t){if(Yt(this),"function"==typeof e){const n=e;return sn(this.find((e,r,o)=>n.call(t,sn(e),r,o),t))}const n="number"==typeof t?t:void 0,r=this.indexOf(e,n);if(-1!==r)return sn(this[r])}findIndex(e,t){if(Yt(this),"function"==typeof e){const n=e;return this.findIndex((e,r,o)=>n.call(t,sn(e),r,o),t)}const n="number"==typeof t?t:void 0;return this.indexOf(e,n)}flat(e){return Yt(this),sn(void 0===e?this.flat():this.flat(e))}flatMap(e,t){return Yt(this),sn(this.flatMap((n,r,o)=>e.call(t,sn(n),r,o),t))}filter(e,t){return Yt(this),sn(this.filter((t,n,r)=>e(sn(t),n,r),t))}map(e,t){return Yt(this),sn(this.map((t,n,r)=>e(sn(t),n,r),t))}reduce(e,t){Yt(this);const n=void 0===t?this.reduce(e):this.reduce(e,t);return sn(n)}reduceRight(e,t){Yt(this);const n=void 0!==t?this.reduceRight(e,t):this.reduceRight(e);return sn(n)}slice(e,t){for(const n of An(e||0,t||this.length-1))Yt(this,n);return void 0===e?this.slice():void 0===t?this.slice(e):this.slice(e,t)}concat(...e){return Yt(this),sn(this.concat(...e))}join(e){return Yt(this),this.join(e)}forEach(e,t){Yt(this),this.forEach((n,r,o)=>{e.call(t,sn(n),r,o)})}every(e,t){return Yt(this),this.every((n,r,o)=>e.call(t,sn(n),r,o),t)}some(e,t){return Yt(this),this.some((n,r,o)=>e.call(t,sn(n),r,o),t)}push(...e){const t=this.length;try{return this.push(...e)}finally{Kt(this,{type:"bunch",method:"push"},An(t,t+e.length-1,{length:!0}))}}pop(){if(0!==this.length)try{return sn(this.pop())}finally{Kt(this,{type:"bunch",method:"pop"},Tn(this.length))}}shift(){if(0!==this.length)try{return sn(this.shift())}finally{Kt(this,{type:"bunch",method:"shift"},An(0,this.length+1,{length:!0}))}}unshift(...e){try{return this.unshift(...e)}finally{Kt(this,{type:"bunch",method:"unshift"},An(0,this.length-e.length,{length:!0}))}}splice(e,t,...n){const r=this.length;void 0===t&&(t=r-e);try{return sn(void 0===t?this.splice(e):this.splice(e,t,...n))}finally{Kt(this,{type:"bunch",method:"splice"},t===n.length?An(e,e+t):An(e,r+Math.max(n.length-t,0),{length:!0}))}}reverse(){try{return this.reverse()}finally{Kt(this,{type:"bunch",method:"reverse"},An(0,this.length-1))}}sort(e){e=e||((e,t)=>e.toString().localeCompare(t.toString()));try{return this.sort((t,n)=>e(sn(t),sn(n)))}finally{Kt(this,{type:"bunch",method:"sort"},An(0,this.length-1))}}fill(e,t,n){try{return void 0===t?this.fill(e):void 0===n?this.fill(e,t):this.fill(e,t,n)}finally{Kt(this,{type:"bunch",method:"fill"},An(0,this.length-1))}}copyWithin(e,t,n){try{return void 0===n?this.copyWithin(e,t):this.copyWithin(e,t,n)}finally{Kt(this,{type:"bunch",method:"copyWithin"},An(0,this.length-1))}}}class In extends WeakMap{get[Symbol.toStringTag](){return"ReactiveWeakMap"}delete(e){const t=this.has(e),n=this.delete(e);return t&&Nt(f(this),{type:"del",prop:e},e),n}get(e){return Yt(f(this),e),sn(this.get(e))}has(e){return Yt(f(this),e),this.has(e)}set(e,t){const n=this.has(e),r=this.get(e),o=sn(t);return this.set(e,o),n&&r===o||Zt(f(this),e,r,o,n),this}}class zn extends Map{get[Symbol.toStringTag](){return"ReactiveMap"}get size(){return Yt(this,"size"),this.size}clear(){const e=this.size>0;if(this.clear(),e){const e={type:"bunch",method:"clear"};Nt(this,e,"size"),Kt(f(this),e)}}entries(){return Yt(f(this)),bn(this.entries())}forEach(e,t){Yt(f(this)),this.forEach(e,t)}keys(){return Yt(f(this)),this.keys()}values(){return Yt(f(this)),mn(this.values())}[Symbol.iterator](){Yt(f(this));const e=this[Symbol.iterator]();return{next(){const t=e.next();return t.done?t:{value:[t.value[0],sn(t.value[1])],done:!1}},[Symbol.iterator](){return this},[Symbol.dispose](){}}}delete(e){const t=this.has(e),n=this.delete(e);if(t){const t={type:"del",prop:e};Nt(f(this),t,e),Nt(this,t,"size")}return n}get(e){return Yt(f(this),e),sn(this.get(e))}has(e){return Yt(f(this),e),this.has(e)}set(e,t){const n=this.has(e),r=this.get(e),o=sn(t);if(this.set(e,o),!n||r!==o){Zt(f(this),e,r,o,n);Nt(this,{type:n?"set":"add",prop:e},"size")}return this}}class Cn extends WeakSet{get[Symbol.toStringTag](){return"ReactiveWeakSet"}add(e){const t=this.has(e);return this.add(e),t||Nt(f(this),{type:"add",prop:e},e),this}delete(e){const t=this.has(e),n=this.delete(e);return t&&Nt(f(this),{type:"del",prop:e},e),n}has(e){return Yt(f(this),e),this.has(e)}}class Nn extends Set{get[Symbol.toStringTag](){return"ReactiveSet"}get size(){return Yt(this,"size"),this.size}add(e){const t=this.has(e),n=sn(e);if(this.add(n),!t){const e={type:"add",prop:n};Nt(f(this),e,n),Nt(this,e,"size")}return this}clear(){const e=this.size>0;if(this.clear(),e){const e={type:"bunch",method:"clear"};Nt(this,e,"size"),Kt(f(this),e)}}delete(e){const t=this.has(e),n=this.delete(e);if(t){const t={type:"del",prop:e};Nt(f(this),t,e),Nt(this,t,"size")}return n}has(e){return Yt(f(this),e),this.has(e)}entries(){return Yt(f(this)),bn(this.entries())}forEach(e,t){Yt(f(this)),this.forEach(e,t)}keys(){return Yt(f(this)),mn(this.keys())}values(){return Yt(f(this)),mn(this.values())}[Symbol.iterator](){Yt(f(this));const e=this[Symbol.iterator]();return{next(){const t=e.next();return t.done?t:{value:sn(t.value),done:!1}},[Symbol.iterator](){return this},[Symbol.dispose](){}}}}Qt.set(Array,$n.prototype),Qt.set(Set,Nn.prototype),Qt.set(WeakSet,Cn.prototype),Qt.set(Map,zn.prototype),Qt.set(WeakMap,In.prototype);const Kn={objectToProxy:Ue,proxyToObject:Be,effectToReactiveObjects:se,watchers:ie,objectParents:Et,objectsWithDeepWatchers:Mt,deepWatchers:xt,effectToDeepWatchedObjects:Rt,nonReactiveObjects:_t},_n=[],Vn=g({getter:(e,t,n)=>function(){const t=_n.findIndex(e=>e.object===this&&e.prop===n);if(t>-1)throw new Error(`Circular dependency detected: ${_n.slice(t).map(e=>`${e.object.constructor.name}.${String(e.prop)}`).join(" -> ")} -> again`);_n.push({object:this,prop:n});try{const t=e.call(this);return Ln(this,n,t),t}finally{_n.pop()}}});function Ln(e,t,n){Object.defineProperty(e,t,{value:n})}const Fn=Object.assign(g({method:(e,t,n)=>function(...t){return Fn.warn(this,n),e.apply(this,t)},getter:(e,t,n)=>function(){return Fn.warn(this,n),e.call(this)},setter:(e,t,n)=>function(t){return Fn.warn(this,n),e.call(this,t)},class:e=>class extends e{constructor(...e){super(...e),Fn.warn(this,"constructor")}},default:e=>g({method:(t,n,r)=>function(...n){return Fn.warn(this,r,e),t.apply(this,n)},getter:(t,n,r)=>function(){return Fn.warn(this,r,e),t.call(this)},setter:(t,n,r)=>function(n){return Fn.warn(this,r,e),t.call(this,n)},class:t=>class extends t{constructor(...t){super(...t),Fn.warn(this,"constructor",e)}}})}),{warn:(e,t,n)=>{}});var qn={version:"1.0.7"};const{version:Hn}=qn,Un="__MUTTS_INSTANCE__",Bn="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global&&global;if(Bn){let e="mutts/index";const t=eval;try{if("undefined"!=typeof __filename)e=__filename;else{const n=t("import.meta");n&&n.url&&(e=n.url)}}catch(e){}const n={version:Hn,source:e,timestamp:Date.now()};if(Bn[Un]){const e=Bn[Un];throw new Error(`[Mutts] Multiple instances detected!\nExisting instance: ${JSON.stringify(e,null,2)}\nNew instance: ${JSON.stringify(n,null,2)}\nThis usually happens when 'mutts' is both installed as a dependency and bundled, or when different versions are loaded. Please check your build configuration (aliases, externals) to ensure a single source of truth.`)}Bn[Un]=n}const Zn=new Set;function Gn(e){if("function"!=typeof e)return e;const t=new Set;for(const e of Zn)t.add(e());return function(...n){const r=new Set;for(const e of t)r.add(e());try{return e.apply(this,n)}finally{for(const e of r)e()}}}t.addHook=function(e){return Zn.add(e),()=>{Zn.delete(e)}};const Xn={then:Promise.prototype.then,catch:Promise.prototype.catch,finally:Promise.prototype.finally,setTimeout:globalThis.setTimeout,setInterval:globalThis.setInterval,setImmediate:globalThis.setImmediate,requestAnimationFrame:globalThis.requestAnimationFrame,queueMicrotask:globalThis.queueMicrotask};Promise.prototype.then=function(e,t){return Xn.then.call(this,Gn(e),Gn(t))},Promise.prototype.catch=function(e){return Xn.catch.call(this,Gn(e))},Promise.prototype.finally=function(e){return Xn.finally.call(this,Gn(e))},globalThis.setTimeout=(e,...t)=>Xn.setTimeout.call(globalThis,Gn(e),...t),globalThis.setInterval=(e,...t)=>Xn.setInterval.call(globalThis,Gn(e),...t),Xn.setImmediate&&(globalThis.setImmediate=(e,...t)=>Xn.setImmediate.call(globalThis,Gn(e),...t)),Xn.requestAnimationFrame&&(globalThis.requestAnimationFrame=e=>Xn.requestAnimationFrame.call(globalThis,Gn(e))),Xn.queueMicrotask&&(globalThis.queueMicrotask=e=>{Xn.queueMicrotask.call(globalThis,Gn(e))}),e.AZone=Ce,e.ArrayReadForward=P,e.DecoratorError=h,e.Destroyable=function(e,t){var n;return e&&"function"!=typeof e&&(t=e,e=void 0),e||(e=class{}),n=class extends e{static destroy(e){const t=n.destructors.get(e);if(!t)return!1;y.unregister(e[b]),n.destructors.delete(e),Object.setPrototypeOf(e,new Proxy({},v));for(const t of Object.getOwnPropertyNames(e))delete e[t];return t(),!0}static isDestroyable(e){return n.destructors.has(e)}constructor(...e){super(...e);const r={};this[b]=r;const o=t?.destructor??this[m];if(!o)throw new w("Destructor is not defined");function s(){o(r)}n.destructors.set(this,s),y.register(this,s,r)}},n.destructors=new WeakMap,n},e.DestructionError=w,e.Eventful=class{constructor(){M.set(this,new Map),x.set(this,[])}hook(e){return O(this,x,"f").includes(e)||O(this,x,"f").push(e),()=>{O(this,x,"f").splice(O(this,x,"f").indexOf(e),1)}}on(e,t){if("object"==typeof e)for(const t of Object.keys(e))this.on(t,e[t]);else if(void 0!==t){let n=O(this,M,"f").get(e);n||(n=[],O(this,M,"f").set(e,n)),n.push(t)}return()=>this.off(e,t)}off(e,t){if("object"==typeof e)for(const t of Object.keys(e))this.off(t,e[t]);else if(null!=t){const n=O(this,M,"f").get(e);n&&O(this,M,"f").set(e,n.filter(e=>e!==t))}else O(this,M,"f").delete(e)}emit(e,...t){const n=O(this,M,"f").get(e);if(n)for(const e of n)e.apply(this,t);for(const n of O(this,x,"f"))n.call(this,e,...t)}},e.FoolProof=s,e.Indexable=T,e.IterableWeakMap=I,e.IterableWeakSet=z,e.ReactiveBase=rn,e.ReactiveError=re,e.Register=vn,e.Zone=Ne,e.ZoneAggregator=_e,e.ZoneHistory=Ke,e.addBatchCleanup=gt,e.allocated=S,e.allocatedValues=b,e.arrayEquals=function(e,t){if(e===t)return!0;if(!Array.isArray(e)||!Array.isArray(t))return!1;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0},e.asyncZone=Ve,e.atomic=vt,e.biDi=function(e,t,n){"function"!=typeof t&&(n=t.set,t=t.get);let r=Symbol();return kt(le(()=>{const n=t();Ze(n)!==r&&e(n)},e)),n?vt(e=>{r=Ze(e),n(e)}):()=>{}},e.buildReactivityGraph=Pe,e.cache=Ln,e.cached=Vn,e.callOnGC=function(e){let t=!1;const n=()=>{t||(t=!0,e())};return y.register(n,e,e),n},e.chainPromise=B,e.cleanedBy=un,e.cleanup=an,e.contentRef=f,e.debounce=function(e){return g({method(t,n,r){let o=null;return function(...n){o&&clearTimeout(o),o=setTimeout(()=>{t.apply(this,n),o=null},e)}}})},e.decorator=g,e.deepCompare=c,e.deepWatch=cn,e.defer=yt,e.deprecated=Fn,e.derived=function(e){const t={value:void 0};return un(t,jt(()=>kt(function(n){t.value=e(n)})))},e.describe=function(e){return(...t)=>n=>class extends n{constructor(...n){super(...n);for(const n of t)Object.defineProperty(this,n,{...Object.getOwnPropertyDescriptor(this,n),...e})}}},e.destructor=m,e.effect=kt,e.enableDevTools=function(){"undefined"!=typeof window&&(de||(de=!0,window.__MUTTS_DEVTOOLS__={getGraph:Pe,setEffectName:Me,setObjectName:xe,registerEffect:Re,registerObject:De}))},e.forwardArray=A,e.getActivationLog=function(){return Ye},e.getActiveProjection=kn,e.getAt=R,e.getState=zt,e.immutables=Vt,e.isCached=function(e,t){return!!Object.getOwnPropertyDescriptor(e,t)},e.isConstructor=r,e.isDevtoolsEnabled=We,e.isNonReactive=qt,e.isOwnAccessor=i,e.isReactive=function(e){return Be.has(e)},e.legacyDecorator=d,e.memoize=yn,e.mixin=C,e.modernDecorator=p,e.named=u,e.organize=function(e,t,n){return Object.defineProperty(e,t,{get:n.get,set:n.set,configurable:!0,enumerable:!0}),Nt(e,{type:"set",prop:t},t),()=>delete e[t]},e.organized=function(e,t,n={}){const r=sn(e),o=sn(n),i=new Map;function c(e){const t=i.get(e);t&&(i.delete(e),t())}const a=kt(function({ascend:e}){const n=new Set;for(const e in r)n.add(e);for(const c of n)i.has(c)||e(()=>{const e=kt(function(){const e=c,n={key:e,get:()=>s.get(r,e,r),set:t=>s.set(r,e,t,r)};return Object.defineProperty(n,"value",{get:n.get,set:n.set,configurable:!0,enumerable:!0}),t(n,o)});i.set(c,e)});for(const e of Array.from(i.keys()))n.has(e)||c(e)});return un(o,()=>{a();for(const e of Array.from(i.keys()))c(e)})},e.profileInfo=Kn,e.project=Dn,e.reactive=sn,e.reactiveOptions=oe,e.register=function(e,t){return new wn(e,t)},e.registerEffectForDebug=Re,e.registerNativeReactivity=function(e,t){e.prototype[Z]=t,Ft(t)},e.registerObjectForDebug=De,e.renamed=o,e.root=Ot,e.scan=function(e,t,n){const r=sn(e),o=sn([]),i=new Map,c=sn([]),a=new WeakMap;let f=(()=>{var e;let r,o=[];return e=class{constructor(e,t){this.val=(j(this,o),e),this.prev=t}get acc(){const e=this.prev?this.prev.acc:n;return t(e,this.val)}},(()=>{const t="function"==typeof Symbol&&Symbol.metadata?Object.create(null):void 0;r=[yn],k(e,null,r,{kind:"getter",name:"acc",static:!1,private:!1,access:{has:e=>"acc"in e,get:e=>e.acc},metadata:t},null,o),t&&Object.defineProperty(e,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:t})})(),e})();function l(e){const t=i.get(e);t&&(t(),i.delete(e),jt(()=>{Reflect.deleteProperty(c,e),Reflect.deleteProperty(o,e)}))}const u=kt(function({ascend:e}){const t=r.length,n=new Map;let u;for(let l=0;l<t;l++){const t=s.get(r,l,r);if(!t||"object"!=typeof t&&"function"!=typeof t&&"symbol"!=typeof t)throw new Error("scan: items must be objects (WeakKey) for intermediate caching");const h=n.get(t)??0;n.set(t,h+1);let d=a.get(t);d||(d=[],a.set(t,d));let p=d[h];p?jt(()=>p.prev)!==u&&(p.prev=u):(p=sn(new f(t,u)),d[h]=p),c[l]!==p&&(c[l]=p),i.has(l)||e(()=>{const e=l,t=kt(function(){const t=c[e];if(t){const n=t.acc;jt(()=>{o[e]=n})}});i.set(e,t)}),u=p}for(const e of Array.from(i.keys()))e>=t&&l(e);jt(()=>{o.length!==t&&s.set(o,"length",t,o)})});return un(o,()=>{u();for(const e of i.values())e();i.clear()})},e.setAt=D,e.setEffectName=Me,e.setObjectName=xe,e.tag=l,e.throttle=function(e){return g({method(t,n,r){let o=0,s=null;return function(...n){const r=Date.now();if(r-o>=e)return s&&(clearTimeout(s),s=null),o=r,t.apply(this,n);if(!s){const i=e-(r-o),c=[...n];s=setTimeout(()=>{o=Date.now(),t.apply(this,c),s=null},i)}}}})},e.touched=Kt,e.touched1=Nt,e.trackEffect=function(e){const t=He();if(!t)throw new Error("Not in an effect");et.has(t)?et.get(t).add(e):et.set(t,new Set([e]))},e.unreactive=ln,e.untracked=jt,e.unwrap=Ze,e.watch=function(e,t,n={}){return"function"==typeof e?function(e,t,{immediate:n=!1,deep:r=!1}={}){let o,s=fn;const i=kt(le(function(i){const c=e(i);s!==c&&(s===fn?n&&t(c):t(c,s)),s=c,r&&(o&&o(),o=cn(c,e=>t(e,e)))},e));return()=>{i(),o&&o()}}(e,t,n):"object"==typeof e&&null!==e?function(e,t,{immediate:n=!1,deep:r=!1}={}){return r?cn(e,t,{immediate:n}):kt(function(){Yt(e),n&&t(e),n=!0})}(e,t,n):(()=>{throw new Error("watch: value must be a function or an object")})()},e.zip=function(...e){if(!e.length)return[];const t=Math.min(...e.map(e=>e.length)),n=[];for(let r=0;r<t;r++){const t=e.map(e=>e[r]);n.push(t)}return n}});
|
|
2
2
|
//# sourceMappingURL=mutts.umd.min.js.map
|