@spearwolf/shadow-objects 0.19.0 → 0.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +86 -0
- package/bundle.js +4 -4
- package/package.json +3 -3
- package/src/in-the-dark/Entity.d.ts +1 -0
- package/src/in-the-dark/Entity.d.ts.map +1 -1
- package/src/in-the-dark/Entity.js +4 -0
- package/src/in-the-dark/Entity.js.map +1 -1
- package/src/in-the-dark/Kernel.d.ts.map +1 -1
- package/src/in-the-dark/Kernel.js +15 -1
- package/src/in-the-dark/Kernel.js.map +1 -1
- package/src/types.d.ts +1 -0
- package/src/types.d.ts.map +1 -1
package/README.md
CHANGED
|
@@ -57,6 +57,92 @@ class Foo {
|
|
|
57
57
|
> Sorry, at this point there should be a precise and crisp introduction to the concepts of the framework, but unfortunately this is not currently available.
|
|
58
58
|
> Instead of that, a few insights into the implementation will follow
|
|
59
59
|
|
|
60
|
+
## 📖 Shadow Objects CHEAT SHEET
|
|
61
|
+
|
|
62
|
+
There are two ways to create a _shadow object component_: either as a _function_ or as a _class_:
|
|
63
|
+
|
|
64
|
+
### Create Shadow Object by FUNCTION
|
|
65
|
+
|
|
66
|
+
```js
|
|
67
|
+
import { onDestroy, type ShadowObjectParams, type Entity } from "@spearwolf/shadow-objects/shadow-objects.js";
|
|
68
|
+
|
|
69
|
+
function MyShadowObject(params: ShadowObjectParams) {
|
|
70
|
+
//
|
|
71
|
+
// ... PUT YOUR IMPLEMENTATION HERE ...
|
|
72
|
+
//
|
|
73
|
+
|
|
74
|
+
// Return an object. This step is optional.
|
|
75
|
+
return {
|
|
76
|
+
// All methods here are reactive and correspond to entity events of the same name!
|
|
77
|
+
|
|
78
|
+
[onDestroy](entity: Entity) {
|
|
79
|
+
// Called when the shadow object is destroyed.
|
|
80
|
+
// This is one of the predefined events that a shadow object can receive.
|
|
81
|
+
|
|
82
|
+
// This can happen when the entity is destroyed or the shadow object component
|
|
83
|
+
// is removed from the entity (e.g., by changing the entity token, view properties, and/or routing)
|
|
84
|
+
},
|
|
85
|
+
|
|
86
|
+
fooBar(plah) {
|
|
87
|
+
/* is called when the entity receives a 'fooBar' event */
|
|
88
|
+
},
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Create Shadow Object by CLASS
|
|
94
|
+
|
|
95
|
+
Essentially the same as above, but as a `class`:
|
|
96
|
+
|
|
97
|
+
```js
|
|
98
|
+
import { onDestroy, type ShadowObjectParams, type Entity } from "@spearwolf/shadow-objects/shadow-objects.js";
|
|
99
|
+
|
|
100
|
+
class MyShadowObject {
|
|
101
|
+
constructor(params: ShadowObjectParams) {
|
|
102
|
+
//
|
|
103
|
+
// ... INITIALIZE SHADOW OBJECT ...
|
|
104
|
+
//
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
[onDestroy](entity: Entity) {
|
|
108
|
+
// ...
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
fooBar(plah) {
|
|
112
|
+
// ...
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
### Shadow Object Construction API
|
|
118
|
+
|
|
119
|
+
The parameters that a shadow object receives when it is created contain all the important API methods for exchanging data and events with the _view_ and also with the _shadow entity hierarchy and context_.
|
|
120
|
+
|
|
121
|
+
[The interface `ShadowObjectsParams` is defined here](./src/types.ts)
|
|
122
|
+
|
|
123
|
+
#### Properties
|
|
124
|
+
|
|
125
|
+
__entity__: The shadow entity.
|
|
126
|
+
|
|
127
|
+
#### Methods
|
|
128
|
+
|
|
129
|
+
| Name | Call Signature | Description |
|
|
130
|
+
|------|----------------|-------------|
|
|
131
|
+
| __useProperty__ | `useProperty(name, isEqual?): SignalReader` | Read access to the property value from the view |
|
|
132
|
+
| __useContext__ | `useContext(name, isEqual?): SignalReader` | Get the value for a named context. The context is derived from the shadow entity hierarchy and the shadow object's position within it. |
|
|
133
|
+
| __useParentContext__ | `useParentContext(name, isEqual?): SignalReader` | Unlike the `useContext` method, this method skips the context of the _current_ shadow entity and directly requests the context of the parent entity. This is useful when you want to provide a custom context that depends on the parent context. |
|
|
134
|
+
| __provideContext__ | `provideContext(name, initialValue?, isEqual?): Signal` | Specify a context. This context overrides (if set) the context of the same name from the entity's parent hierarchy. The context applies to the current entity and all child entities. |
|
|
135
|
+
| __provideGlobalContext__ | `provideGlobalContext(name, initialValue?, isEqual?): Signal` | Define a context that applies to _all_ entities, regardless of hierarchy. |
|
|
136
|
+
| __createEffect__ | `createEffect(...): Effect` | see [@spearwolf/signalize#createEffect()](https://github.com/spearwolf/signalize) |
|
|
137
|
+
| __createSignal__ | `createSignal(...): Signal` | see [@spearwolf/signalize#createSignal()](https://github.com/spearwolf/signalize) |
|
|
138
|
+
| __createMemo__ | `createMemo(...): SignalReader` | see [@spearwolf/signalize#createMemo()](https://github.com/spearwolf/signalize) |
|
|
139
|
+
| __on__ | `on(...): UnsubscribeCallback` | see [@spearwolf/eventize#on()](https://github.com/spearwolf/eventize) |
|
|
140
|
+
| __once__ | `once(...): UnsubscribeCallback` | see [@spearwolf/eventize#once()](https://github.com/spearwolf/eventize) |
|
|
141
|
+
| __onDestroy__ | `onDestroy(callback)` | Called when the shadow object is destroyed. |
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
## Documentation
|
|
145
|
+
|
|
60
146
|
TODO ... add documentation here ... !
|
|
61
147
|
|
|
62
148
|
Here is the big class graph overview:
|
package/bundle.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
@file @spearwolf/shadow-objects - a reactive entity-component framework that feels at home in the shadows
|
|
3
3
|
@author Wolfger Schramm <wolfger@spearwolf.de>
|
|
4
|
-
@version 0.
|
|
4
|
+
@version 0.21.0+bundle.20250830
|
|
5
5
|
|
|
6
6
|
Copyright 2025 Wolfger Schramm
|
|
7
7
|
|
|
@@ -18,17 +18,17 @@ See the License for the specific language governing permissions and
|
|
|
18
18
|
limitations under the License.
|
|
19
19
|
|
|
20
20
|
*/
|
|
21
|
-
var st="*",Ye=1,Ce=2,Ee=4,F=Symbol.for("eventize"),$s="[eventize]",It=s=>s===st,Ke=s=>{switch(typeof s){case"string":case"symbol":return!0;default:return!1}},Je=typeof console<"u",Is=Je?console[console.warn?"warn":"log"].bind(console,$s):()=>{},Fs=(s,t,e)=>(Object.defineProperty(s,t,{value:e,configurable:!0}),s),Ws=0,Ze=class{static publish(s){s.sort((t,e)=>t.order-e.order).forEach(t=>t.emit())}events=new Map;eventNames=new Set;add(s){Array.isArray(s)?s.forEach(t=>this.eventNames.add(t)):this.eventNames.add(s)}remove(s){Array.isArray(s)?s.forEach(t=>this.eventNames.delete(t)):this.eventNames.delete(s),this.clear(s)}clear(s){Array.isArray(s)?s.forEach(t=>this.events.delete(t)):this.events.delete(s)}retain(s,t){this.eventNames.has(s)&&this.events.set(s,{args:t,order:Ws++})}isKnown(s){return this.eventNames.has(s)}emit(s,t,e=[]){if(It(s))this.eventNames.forEach(r=>this.emit(r,t,e));else if(this.events.has(s)){let{order:r,args:i}=this.events.get(s);e.push({order:r,emit:()=>t.apply(s,i)})}return e}},ve=(s,t,e,r)=>{if(typeof t=="function"){let i=t.apply(s,e);i!=null&&r?.(i)}},zs=(s,t,e,r)=>ve(t,t.emit,[s].concat(e),r),Us=s=>{switch(typeof s){case"function":return Ye;case"string":case"symbol":return Ce;case"object":return Ee}},Vs=0,Gs=()=>++Vs,Xe=class{id;eventName;isCatchEmAll;priority;listener;listenerObject;listenerType;callAfterApply;isRemoved;refCount;constructor(s,t,e,r=null){this.id=Gs(),this.eventName=s,this.isCatchEmAll=It(s),this.listener=e,this.listenerObject=r,this.priority=t,this.listenerType=Us(e),this.callAfterApply=void 0,this.isRemoved=!1,this.refCount=1}isEqual(s,t=null){if(s===this)return!0;let e=typeof s;return e==="number"&&s===this.id?!0:t===null&&(e==="string"||e==="symbol")?s===st||s===this.eventName:this.listener===s&&this.listenerObject===t}apply(s,t,e){if(this.isRemoved)return;let{listener:r,listenerObject:i}=this;switch(this.listenerType){case Ye:ve(i,r,t,e),this.callAfterApply&&this.callAfterApply();break;case Ce:ve(i,i[r],t,e),this.callAfterApply&&this.callAfterApply();break;case Ee:{let n=r[s];if(this.isCatchEmAll||this.eventName===s){if(typeof n=="function"){let o=n.apply(r,t);o!=null&&e?.(o)}else zs(s,r,t,e);this.callAfterApply&&this.callAfterApply()}break}}}},Bs=(s,t)=>s.priority!==t.priority?t.priority-s.priority:s.id-t.id,qe=s=>s?.slice(0),He=(s,t)=>{let e=s.indexOf(t);e>-1&&s.splice(e,1)},qs=s=>s===Ee||s===Ce,we=(s,t,e)=>{let r=s.findIndex(i=>i.isEqual(t,e));r>-1&&(s[r].isRemoved=!0,s.splice(r,1))},$t=(s,t,e)=>{let r=[];for(let i of s)(t==null&&i.listenerObject===e||i.eventName===t&&i.listener===e)&&r.push(i);for(let i of r)we(s,i,void 0)},be=s=>{s&&(s.forEach(t=>{t.isRemoved=!0}),s.length=0)},Hs=(s,t)=>s.listenerType===t.listenerType?s.priority===t.priority&&s.eventName===t.eventName&&s.listenerObject===t.listenerObject&&s.listener===t.listener:!1,Qs=(s,t)=>{if(qs(s.listenerType))return t.find(e=>Hs(s,e))},Ys=(s,t)=>{let e=Qs(s,t);return e?(e.refCount+=1,e):(t.push(s),t.sort(Bs),s)},Ks=class{namedListeners;catchEmAllListeners;getListenersForEventName=s=>{let t=this.namedListeners.get(s);return t||(t=[],this.namedListeners.set(s,t)),t};constructor(){this.namedListeners=new Map,this.catchEmAllListeners=[]}add(s){return Ys(s,s.isCatchEmAll?this.catchEmAllListeners:this.getListenersForEventName(s.eventName))}remove(s,t,e=!1){t==null&&Array.isArray(s)?s.forEach(r=>this.remove(r,null,e)):s==null||t==null&&It(s)?this.removeAllListeners():t==null&&Ke(s)?be(this.namedListeners.get(s)):s instanceof Xe?s.isRemoved||(s.refCount-=1,s.refCount<1&&(s.isRemoved=!0,this.namedListeners.forEach(r=>He(r,s)),He(this.catchEmAllListeners,s))):e?It(s)?$t(this.catchEmAllListeners,st,s):this.namedListeners.forEach(r=>$t(r,s,t)):(this.namedListeners.forEach(r=>{we(r,s,t),$t(r,void 0,s)}),we(this.catchEmAllListeners,s,t),$t(this.catchEmAllListeners,void 0,s))}removeAllListeners(){this.namedListeners.forEach(s=>be(s)),this.namedListeners.clear(),be(this.catchEmAllListeners)}forEach(s,t){let e=qe(this.catchEmAllListeners),r=qe(this.namedListeners.get(s));if(s===st||!r||r.length===0)e.forEach(t);else if(e.length===0)r.forEach(t);else{let i=r.length,n=e.length,o=0,h=0;for(;o<i||h<n;){if(o<i){let a=r[o];if(h>=n||a.priority>=e[h].priority){t(a),++o;continue}}h<n&&(t(e[h]),++h)}}}getSubscriptionCount(){let s=this.catchEmAllListeners.length;for(let t of this.namedListeners.values())s+=t.length;return s}},rt=s=>!!(s&&s[F]);function wt(s){if(rt(s))return s;let t=new Ks,e=new Ze;return Fs(s,F,{keeper:e,store:t}),s}var it={Max:Number.POSITIVE_INFINITY,AAA:1e9,BB:1e6,C:1e3,Default:0,Low:-1e4,Min:Number.NEGATIVE_INFINITY},Js=(s,t,e,r,i,n,o)=>{let h=s.add(new Xe(e,r,i,n));return t.emit(e,h,o),h},Zs=(s,t,e,r)=>{let i=e.length,n=typeof e[0],o,h,a,c;if(i>=2&&i<=3&&n==="number"?(o=st,[h,a,c]=e):i>=3&&i<=4&&typeof e[1]=="number"?[o,h,a,c]=e:(h=it.Default,n==="string"||n==="symbol"||Array.isArray(e[0])?[o,a,c]=e:(o=st,[a,c]=e)),!a&&Je)throw Is("called with insufficient arguments!",e),"subscribeTo() called with insufficient arguments!";let u=l=>g=>Js(s,t,g,l,a,c,r);return Array.isArray(o)?o.map(l=>Array.isArray(l)?u(l[1])(l[0]):u(h)(l)):u(h)(o)},ts=(s,t,e)=>{let r=[],i=Zs(s,t,e,r);return Ze.publish(r),i},Qe=s=>t=>{t.callAfterApply=()=>{s?.()}},es=(s,t)=>Object.assign(()=>m(s,t),Array.isArray(t)?{listeners:t}:{listener:t}),ss=(s,t,e,r)=>{let{store:i,keeper:n}=s[F];Array.isArray(t)?t.forEach(o=>{i.forEach(o,h=>h.apply(o,e,r)),n.retain(o,e)}):t!==st&&(i.forEach(t,o=>{o.apply(t,e,r)}),n.retain(t,e))},y=(s,...t)=>{let e=wt(s),{store:r,keeper:i}=e[F];return es(e,ts(r,i,t))},C=(s,...t)=>{let e=wt(s),{store:r,keeper:i}=e[F],n=ts(r,i,t),o=es(e,n),h=!1,a=()=>{h||(o(),h=!0)};return Array.isArray(n)?n.forEach(Qe(a)):Qe(a)(n),a},ct=(s,t)=>new Promise(e=>{C(s,t,e)}),m=(s,t,e)=>{if(!rt(s))throw new Error("object is not eventized");let{store:r,keeper:i}=s[F],n=typeof t,o=e!=null&&(n==="string"||n==="symbol");r.remove(t,e,o),Array.isArray(t)?i.remove(t.filter(h=>typeof h=="string")):Ke(t)&&i.remove(t)},d=(s,t,...e)=>{if(!rt(s))throw new Error("object is not eventized");ss(s,t,e)},Xs=(s,t,...e)=>{if(!rt(s))throw new Error("object is not eventized");let r=[];return ss(s,t,e,i=>{r.push(i)}),r=r.map(i=>Array.isArray(i)?Promise.all(i):Promise.resolve(i)),r.length>0?Promise.all(r):Promise.resolve()},W=(s,t)=>{let e=wt(s),{keeper:r}=e[F];r.add(t)},G=(s,t)=>{if(!rt(s))throw new Error("object is not eventized");let{keeper:e}=s[F];e.clear(t)},E=(()=>{let s=(t={})=>wt(t);return s.inject=(t={})=>(t=wt(t),Object.assign(t,{on:(...e)=>y(t,...e),once:(...e)=>C(t,...e),onceAsync:e=>ct(t,e),off:(e,r)=>m(t,e,r),emit:(e,...r)=>d(t,e,...r),emitAsync:(e,...r)=>Xs(t,e,...r),retain:e=>W(t,e),retainClear:e=>G(t,e)}),t),s.is=rt,s})();var Se=s=>rt(s)?s[F]?.store?.getSubscriptionCount()??0:0;var B=E(),j=E(),q=E();var nt=class{static current;#t=new Set;batch(t){this.#t.add(t)}run(){d(q,Array.from(this.#t))}},rs=()=>nt.current;function A(s){let t=nt.current;t?t=void 0:t=nt.current=new nt;try{s()}finally{t&&(nt.current=void 0,t.run())}}var xe=0;function ke(s){xe++;try{s()}finally{xe--}}function Ft(){return xe>0}var T=Symbol.for("signal"),ot=Symbol.for("effect"),Ae=Symbol.for("destroySignal"),Oe=Symbol.for("createEffect"),is=Symbol.for("destroyEffect"),ft="value",Te="mute",Pe="unmute",H="destroy";var Q=new Map,P=class s{#t=new Set;#e=new Set;#s=new Map;#r=new WeakMap;#i=new Map;#n=new Set;#o=new Set;#a;static get(t){if(t!=null)return t instanceof s?t:Q.get(t)}static findOrCreate(t){if(t==null)throw new Error("Cannot create a group with a null object");return new s(t)}static destroy(t){console.warn("SignalGroup.destroy(obj) is deprecated. Use SignalGroup.delete(obj) instead."),s.delete(t)}static delete(t){Q.get(t)?.clear()}static clear(){for(let t of Q.values())t.destroy();Q.clear()}constructor(t){if(t!=null&&t instanceof s)return t;if(t??=this,Q.has(t))return Q.get(t);Q.set(t,this),E(this)}attachGroup(t){if(t===this)throw new Error("Cannot attach a group to itself");return this.#t.add(t),t.#a&&t.#a!==this&&t.#a.#t.delete(t),t.#a=this,t}detachGroup(t){return t!==this&&this.#t.has(t)&&(this.#t.delete(t),t.#a=void 0),t}attachSignal(t){let e=b(t);if(e?.destroyed)throw new Error("Cannot attach a destroyed signal to a group");return e&&this.#e.add(e),t}attachSignalByName(t,e){if(e){this.attachSignal(e);let r=b(e);this.#s.set(t,r),this.#i.has(t)?this.#i.get(t).push(r):this.#i.set(t,[r]),this.#r.has(r)?this.#r.get(r).add(t):this.#r.set(r,new Set([t]))}else this.#s.delete(t);return e}hasSignal(t){return this.#s.has(t)||this.#a?.hasSignal(t)}signal(t){return this.#s.get(t)?.object??this.#a?.signal(t)}detachSignal(t){let e=b(t);if(e&&(this.#e.delete(e),this.#r.has(e))){let r=this.#r.get(e);for(let i of r)if(this.#i.has(i)){let n=this.#i.get(i);n.splice(n.indexOf(e),1),n.length===0?(this.#s.delete(i),this.#i.delete(i)):this.#s.get(i)===e&&this.#s.set(i,n.at(-1))}r.clear(),this.#r.delete(e)}return t}attachEffect(t){return this.#n.add(t),t}runEffects(){for(let t of this.#n)t.run();for(let t of this.#t)t.runEffects()}attachLink(t){if(t?.isDestroyed)throw new Error("Cannot attach a destroyed link to a group");return t&&this.#o.add(t),t}detachLink(t){return t&&this.#o.delete(t),t}destroy(){console.warn("SignalGroup#destroy is deprecated. Use SignalGroup#clear instead."),this.clear()}clear(){d(this,H,this),m(this);for(let t of this.#t)t.destroy();for(let t of this.#n)t.destroy();for(let t of this.#e)S(t);for(let t of this.#o)t.destroy();this.#t.clear(),this.#e.clear(),this.#s.clear(),this.#i.clear(),this.#n.clear(),this.#o.clear(),this.#a?.detachGroup(this),Q.delete(this)}};var Wt=class{[ot];constructor(t){this[ot]=t,C(t,dt.Destroy,()=>{this[ot]=void 0})}run=()=>this[ot]?.run();destroy=()=>{this[ot]?.destroy(),this[ot]=void 0}};var pt=class{#t;#e;constructor(t="id",e=1){this.#t=t,this.#e=e}make(){return Symbol(`${this.#t}${this.#e++}`)}};var Re=[],zt=()=>Re.at(-1),ns=(s,t)=>{Re.push(s);try{return t()}finally{Re.pop()}};var tr=s=>s!=null&&typeof s.then=="function",dt=class s{static idGen=new pt("ef");static Destroy="destroy";static count=0;id;callback;#t;#e=new Set;#s=new Set;parentEffect;childEffects=[];curChildEffectSlot=0;autorun=!0;shouldRun=!0;#r;#i=!1;constructor(t,e){E(this),this.callback=t;let r;e?.attach!=null&&(r=P.findOrCreate(e.attach),r.attachEffect(this)),this.autorun=e?.autorun??!0,this.#r=e?.dependencies?e.dependencies.map(i=>{switch(typeof i){case"string":case"symbol":return r.signal(i);default:return i}}):void 0,this.id=s.idGen.make(),y(q,this.id,"recall",this),++s.count}hasStaticDeps(){return this.#r!=null&&this.#r.length>0}saveSignalsFromDeps(){for(let t of this.#r)this.whenSignalIsRead(b(t).id)}static createEffect(t,e,r){let i=Array.isArray(e)?e:void 0,n=i?r??{dependencies:i}:e;n&&i&&(n.dependencies=i);let o,h=zt();return h!=null?(o=h.getCurrentChildEffect(),o==null&&(o=new s(t,n),h.attachChildEffect(o),d(q,Oe,o)),h.curChildEffectSlot++):(o=new s(t,n),d(q,Oe,o)),o.hasStaticDeps()?o.saveSignalsFromDeps():o.autorun&&o.run(),new Wt(o)}getCurrentChildEffect(){return this.childEffects[this.curChildEffectSlot]}attachChildEffect(t){this.childEffects.push(t),this.parentEffect=this}run=()=>{if(this.#i||!this.shouldRun)return;let t=rs();t?t.batch(this.id):(this.runCleanupCallback(),this.curChildEffectSlot=0,this.shouldRun=!1,this.hasStaticDeps()?this.#t=this.callback():this.#t=ns(this,this.callback))};recall(){this.shouldRun=!0,this.autorun&&this.run()}whenSignalIsRead(t){this.#e.has(t)||(this.#e.add(t),y(B,t,"recall",this),C(j,t,Ae,this))}[Ae](t){!this.#s.has(t)&&this.#e.has(t)&&(this.#s.add(t),m(B,t,this),this.#s.size===this.#e.size&&this.destroy())}runCleanupCallback(){if(this.#t!=null){let t=this.#t;this.#t=void 0,tr(t)?Promise.resolve(t).then(e=>{typeof e=="function"&&e()}):t()}}destroy=()=>{this.#i||(d(this,s.Destroy,this),m(this),d(q,is,this),this.runCleanupCallback(),m(B,this),m(q,this),m(j,this),this.#i=!0,this.#e.clear(),this.#s.clear(),this.childEffects.forEach(t=>{t.destroy()}),this.childEffects.length=0,--s.count)}};var v=(...s)=>dt.createEffect(...s);var Ct=new WeakMap,er=s=>{let t=Ct.get(s);return t||(t={},Ct.set(s,t)),t},O=(s,t)=>Ct.get(s)?.signals?.get(t);var os=(s,t,e)=>{let r=er(s);r.signals??=new Map,r.signals.set(t,e)};function Et(...s){for(let t of s)if(Ct.has(t)){let e=Ct.get(t);if(e.signals){for(let r of e.signals.values())S(r);e.signals.clear(),e.signals=void 0}}}function as(s){let t=b(gt(s)?s:O(...s));t!=null&&!t.muted&&!t.destroyed&&Ut(t.id,t.value,{touch:!0})}function at(s){return gt(s)?b(s)?.value:b(O(...s))?.value}var Vt=class{[T];constructor(t){this[T]=t}get get(){return this[T].reader}get set(){return this[T].writer}get value(){return at(this.get)}set value(t){this.set(t)}onChange(t){let{destroy:e}=v(()=>t(this.value),[this.get]);return e}get muted(){return this[T].muted}set muted(t){this[T].muted=t}touch(){as(this)}destroy(){S(this)}};var sr=new pt("si");function hs(s){Ft()||zt()?.whenSignalIsRead(s)}function Ut(s,t,e){Ft()||d(B,s,t,e)}var gt=s=>s!=null&&s[T]!=null,rr=s=>{let t=e=>(e?v(()=>(s.destroyed||hs(s.id),e(s.value)),[t]):s.destroyed||(s.beforeRead?.(),hs(s.id)),s.value);return Object.defineProperty(t,T,{value:s}),t},Gt=class s{static instanceCount=0;id;lazy;get[T](){return this}compare;beforeRead;muted=!1;destroyed=!1;#t=void 0;get value(){return this.lazy&&(this.#t=this.valueFn(),this.valueFn=void 0,this.lazy=!1),this.#t}set value(t){this.#t=t}valueFn;reader;writer=(t,e)=>{let r=e?.lazy??!1,n=e?.compare??this.compare??((h,a)=>h===a);if((r!==this.lazy||r&&t!==this.valueFn||!r&&!n(t,this.#t))&&(r?(this.#t=void 0,this.valueFn=t,this.lazy=!0):(this.#t=t,this.valueFn=void 0,this.lazy=!1),!this.muted&&!this.destroyed)){Ut(this.id,this.#t);return}(e?.touch??!1)&&Ut(this.id,this.#t,{touch:!0})};object;constructor(t,e){this.id=sr.make(),++s.instanceCount,this.lazy=t,this.lazy?(this.value=void 0,this.valueFn=e):(this.value=e,this.valueFn=void 0),this.reader=rr(this),this.object=new Vt(this)}},b=s=>s?.[T];function f(s=void 0,t){let e;if(gt(s))e=b(s);else{let r=t?.lazy??!1;e=new Gt(r,s),e.beforeRead=t?.beforeRead,e.compare=t?.compare}return t?.attach!=null&&P.findOrCreate(t.attach).attachSignal(e),e.object}var S=(...s)=>{for(let t of s){let e=b(t);e!=null&&!e.destroyed&&(e.destroyed=!0,e.beforeRead=void 0,--Gt.instanceCount,d(j,e.id,e.id))}};function Me(s,t){let e=f(),r=t?.attach!=null?P.findOrCreate(t.attach):void 0;r!=null&&(t?.name?r.attachSignalByName(t.name,e):r.attachSignal(e));let i=v(()=>e.set(s()),{autorun:!1,attach:r}),n=b(e);return n.beforeRead=i.run,C(j,n.id,i.destroy),e.get}var Bt=class{#t=!1;#e;source;lastValue;isDestroyed=!1;constructor(t){E(this),this.source=b(t),this.#e=y(B,this.source.id,(e,r)=>{!this.#t&&!this.isDestroyed&&(r?.touch===!0?this.touch():this.write())}),C(j,this.source.id,()=>this.destroy())}attach(t){let e=P.findOrCreate(t);return e.attachLink(this),C(this,H,()=>{e.detachLink(this)}),e}nextValue(){return new Promise((t,e)=>{let r=[],i=()=>r.forEach(n=>{n()});r.push(C(this,ft,n=>{i(),t(n)}),C(this,H,()=>{i(),e()}))})}async*asyncValues(t){let e=0;for(;!this.isDestroyed;)try{let r=await this.nextValue();if(t&&t(r,e++))break;W(this,ft),yield r}catch{break}G(this,ft)}destroy(){this.isDestroyed||(this.#e?.(),this.#e=void 0,d(this,H,this),G(this,ft),m(this),this.lastValue=void 0,this.isDestroyed=!0,Object.freeze(this))}get isMuted(){return this.#t}mute(){return!this.isDestroyed&&!this.#t&&(this.#t=!0,d(this,Te,this)),this}unmute(){return!this.isDestroyed&&this.#t&&(this.#t=!1,d(this,Pe,this)),this}toggle(){return this.isDestroyed||(this.#t=!this.#t,d(this,this.#t?Te:Pe,this)),this.#t}updateValue(t){if(!this.#t&&!this.isDestroyed){let{value:e}=this.source;t(e),d(this,ft,e),this.lastValue=e}}},qt=class extends Bt{target;constructor(t,e){super(t),this.target=b(e),C(j,this.target.id,()=>this.destroy()),this.touch()}touch(){return this.updateValue(t=>{this.target.writer(t,{touch:!0})}),this}write(){this.updateValue(t=>{this.target.writer(t)})}},Ht=class extends Bt{target;constructor(t,e){super(t),this.target=e,this.touch()}touch(){return this.updateValue(t=>{this.target(t)}),this}write(){this.updateValue(t=>{this.target(t)})}};var Qt=new Map;function N(s,t,e){let r=b(s),i;if(Qt.has(r)){i=Qt.get(r);let c=b(t)??t;if(i.has(c))return i.get(c)}else i=new Map,Qt.set(r,i);let n=b(t),o=n!=null?new qt(s,n):new Ht(s,t),h=e?.attach;h&&o.attach(h);let a=n??t;return i.set(a,o),C(o,H,()=>{i.delete(a),i.size===0&&Qt.delete(r)}),o}var Yt=class s{static fromProps(t,e){let r=new s,i=e?e.map(n=>[n,t[n]]):Object.entries(t);for(let[n,o]of i)r.#t.set(n,f(o));return r}#t=new Map;keys(){return this.#t.keys()}signals(){return this.#t.values()}entries(){return this.#t.entries()}clear(){for(let t of this.#t.values())t.destroy();this.#t.clear()}has(t){return this.#t.has(t)}get(t){if(!this.#t.has(t)){let e=f();return this.#t.set(t,e),e}return this.#t.get(t)}update(t){t.size&&A(()=>{for(let[e,r]of t.entries())this.get(e).set(r)})}updateFromProps(t,e){A(()=>{let r=e?e.map(i=>[i,t[i]]):Object.entries(t);for(let[i,n]of r)this.get(i).set(n)})}};var D;(function(s){s[s.StructuralChanges=1]="StructuralChanges",s[s.ContentUpdates=2]="ContentUpdates",s[s.Removal=3]="Removal"})(D||(D={}));var p;(function(s){s[s.CreateEntities=1]="CreateEntities",s[s.DestroyEntities=2]="DestroyEntities",s[s.SetParent=3]="SetParent",s[s.UpdateOrder=4]="UpdateOrder",s[s.ChangeProperties=5]="ChangeProperties",s[s.ChangeToken=6]="ChangeToken",s[s.SendEvents=7]="SendEvents"})(p||(p={}));var ht=Symbol.for("ShadowEntsGlobalNS"),z="#void",ls="contextLost",us="configure",cs="changeTrail",fs="destroy",ds="loaded",ps="appliedChangeTrail",gs="importedModule",ys="destroyed",yt="messageToView",ms=16e3,bs=16e3,vs=4e3,ws=1e3,Le="shadowObjects";function Cs(s,t){s.indexOf(t)===-1&&s.push(t)}function _e(s,t){let e=s.indexOf(t);e!==-1&&s.splice(e,1),s.push(t)}function Y(s,t){let e=s.indexOf(t);e!==-1&&s.splice(e,1)}var lt=s=>typeof s=="string"?s.trim()||ht:typeof s=="symbol"?s:ht;var St="#root",xt=class{#t;get uuid(){return this.#t}#e=0;constructor(t){this.#t=t}#s=!0;#r=0;#i=0;hasChanges(){return this.#e>0}get isNew(){return this.#s}get isCreated(){return this.#r>0&&this.#r>this.#i}get isDestroyed(){return this.#i>0&&this.#i>=this.#r}#n=z;#o;#a=0;#h;#l;#u;create(t=z,e,r=0){this.#e++,this.#r++,this.#h=t,this.#l=e??St,this.#u=r||void 0}destroy(){this.#i++,this.#e++}clear(){this.#e=0,this.#s=!1,this.#h=void 0,this.#l=void 0,this.#u=void 0,this.#f.clear(),this.#d.length=0,this.#g.length=0,this.#p.clear()}changeToken(t){t===this.#n?this.#h=void 0:(this.#h=t,this.#e++)}setParent(t){t===this.#o?this.#l=void 0:(this.#l=t??St,this.#e++)}changeOrder(t){t===this.#a?this.#u=void 0:(this.#u=t,this.#e++)}#c=new Map;#f=new Map;#d=[];changeProperty(t,e,r){let i=this.#c.get(t);r==null&&e!==i||r!=null&&!r(e,i)?(this.#f.set(t,e),_e(this.#d,t),this.#e++):(this.#f.delete(t),Y(this.#d,t))}removeProperty(t){let e=this.#c.has(t);this.#f.has(t)?(this.#f.delete(t),e||Y(this.#d,t)):e&&(_e(this.#d,t),this.#e++)}#g=[];#p=new Set;createEvent(t,e,r){this.#g.push({type:t,data:e}),r?.forEach(i=>this.#p.add(i)),this.#e++}transferEventsTo(t){this.#g.length>0&&(t.#g.push(...this.#g),this.#g.length=0),this.#p.size>0&&(t.#p=new Set([...t.#p,...this.#p]),this.#p.clear())}buildChangeTrail(t,e){let{isNew:r,isCreated:i,isDestroyed:n}=this;if(!(r&&n))switch(e){case D.StructuralChanges:r?t.push(this.makeCreateEntityChange()):n||(this.#l!==void 0&&!(this.#l===St&&this.#o===void 0)?t.push(this.makeSetParentChange()):this.#u!==void 0&&this.#u!==this.#a&&t.push(this.makeUpdateOrderChange()),this.#h!==void 0&&this.#h!==this.#n&&t.push(this.makeChangeToken()));break;case D.ContentUpdates:!r&&i&&this.#d.length>0&&t.push(this.makeChangePropertyChange()),this.#g.length>0&&t.push(this.makeEvents());break;case D.Removal:n&&t.push(this.makeDestroyEntityChange());break}}makeEvents(){let t={type:p.SendEvents,uuid:this.#t,events:this.#g.slice(0)};return this.#p.size>0&&(t.transferables=Array.from(this.#p)),t}makeCreateEntityChange(){let t={type:p.CreateEntities,uuid:this.#t,token:this.#h};if(this.#n=this.#h,this.#l!==void 0){let e=this.#l===St?void 0:this.#l;this.#o=e,e!==void 0&&(t.parentUuid=e)}return this.#f.size>0&&(t.properties=Array.from(this.#f.entries()).filter(([,e])=>e!==void 0),t.properties.forEach(([e,r])=>this.#c.set(e,r))),this.#u!==void 0&&this.#u!==this.#a&&(t.order=this.#a=this.#u),t}makeDestroyEntityChange(){return{type:p.DestroyEntities,uuid:this.#t}}makeSetParentChange(){this.#o=this.#l===St?void 0:this.#l;let t={type:p.SetParent,uuid:this.#t,parentUuid:this.#o};return this.#u!==void 0&&this.#u!==this.#a&&(t.order=this.#a=this.#u),t}makeUpdateOrderChange(){return this.#a=this.#u??0,{type:p.UpdateOrder,uuid:this.#t,order:this.#a}}makeChangeToken(){return this.#n=this.#h??z,{type:p.ChangeToken,uuid:this.#t,token:this.#n}}makeChangePropertyChange(){let t=this.#d.map(e=>{if(this.#f.has(e)){let r=this.#f.get(e);return this.#c.set(e,r),[e,r]}else return this.#c.delete(e),[e,void 0]});return{type:p.ChangeProperties,uuid:this.#t,properties:t}}};var Es=s=>{if(!(s===void 0||s.length===0))return s.filter(t=>t.length===1||t[1]!==void 0)},je=(s,t)=>{if(s===t||t===void 0)return s;if(s===void 0)return Es(t);for(let[e,r]of t){let i=s.find(([n])=>n===e);i===void 0?s.push([e,r]):i[1]=r}return Es(s)};var Kt=class{#t=new Map;get[Symbol.iterator](){return this.#t.entries.bind(this.#t)}clear(){this.#t.clear()}isEmpty(){return this.#t.size===0}hasComponentState(t){return this.#t.has(t)}getComponentState(t){return this.#t.get(t)}write(t){for(let e of t)if(e.type===p.CreateEntities)this.createEntity(e);else if(this.#t.has(e.uuid))switch(e.type){case p.DestroyEntities:this.destroyEntity(e);break;case p.SetParent:this.setParent(e);break;case p.UpdateOrder:this.updateOrder(e);break;case p.ChangeToken:this.changeToken(e);break;case p.ChangeProperties:this.changeProperties(e);break}}changeProperties({uuid:t,properties:e}){let r=this.getComponentState(t);r.properties=je(r.properties,e)}changeToken({uuid:t,token:e}){this.getComponentState(t).token=e||z}updateOrder({uuid:t,order:e}){this.getComponentState(t).order=e??0}setParent({uuid:t,parentUuid:e,order:r}){let i=this.getComponentState(t);i.parentUuid=e,i.order=r??0}destroyEntity({uuid:t}){this.#t.delete(t)}createEntity({uuid:t,token:e,parentUuid:r,order:i,properties:n}){this.#t.set(t,{token:e||z,parentUuid:r,order:i??0,properties:je(void 0,n)})}};var L=class s{static{this.ReRequestParentRoots="re-request-parent-roots"}static getContextsMap(){return globalThis.__shadowEntsContexts==null&&(globalThis.__shadowEntsContexts=new Map),globalThis.__shadowEntsContexts}static get(t){let e=lt(t),r=s.getContextsMap();return r.has(e)?r.get(e):new s(e)}#t=new Map;#e=[];#s=new Kt;constructor(t=ht){let e=lt(t),r=s.getContextsMap();if(r.has(e))return r.get(e);this.ns=e,r.set(e,this)}addComponent(t){let e;this.#t.has(t.uuid)?(e=this.#t.get(t.uuid),e.component=t,e.children=[]):(e={component:t,children:[],changes:new xt(t.uuid),propIsEqual:void 0},this.#t.set(t.uuid,e)),e.changes.create(t.token,t.parent?.uuid,t.order),t.parent?(this.addToChildren(t.parent,t),e.changes.setParent(t.parent.uuid)):this.#n(t,this.#e),this.#o=void 0}hasComponent(t){return this.#t.has(t.uuid)}hasComponents(){return this.#t.size>0}isRootComponent(t){return this.#e.includes(t.uuid)}destroyComponent(t){if(this.hasComponent(t)){let e=this.#t.get(t.uuid);e.children.slice(0).forEach(r=>this.#t.get(r)?.component.removeFromParent()),e.changes.destroy(),this.#o=void 0}}getChildren(t){return this.#t.get(t.uuid)?.children.map(e=>this.#t.get(e).component)??[]}removeFromParent(t,e){if(this.hasComponent(e)){let r=this.#t.get(t),i=this.#t.get(e.uuid),n=i.children.indexOf(t);n!==-1&&(i.children.splice(n,1),r.changes.setParent(void 0)),this.#n(r.component,this.#e),this.#o=void 0}}moveToRoot(t){let e=this.#t.get(t);e&&(e.changes?.setParent(void 0),this.#n(e.component,this.#e)),this.#o=void 0}changeToken(t,e){this.#t.get(t.uuid)?.changes.changeToken(e)}isChildOf(t,e){return this.hasComponent(e)?this.#t.get(e.uuid).children.includes(t.uuid):!1}addToChildren(t,e){let r=this.#t.get(t.uuid);if(r)this.#n(e,r.children),this.#t.get(e.uuid)?.changes.setParent(t.uuid),Y(this.#e,e.uuid),this.#o=void 0;else throw new Error(`the view component ${t.uuid} cannot have a child added to it because the component do not exist!`)}removeSubTree(t){let e=this.#t.get(t);e&&(e.children.slice(0).forEach(r=>this.removeSubTree(r)),this.destroyComponent(e.component),this.#r(t))}setProperty(t,e,r,i){let n=this.#t.get(t.uuid);return n!=null?(i!=null?(n.propIsEqual??=new Map,n.propIsEqual.set(e,i)):n.propIsEqual?.has(e)&&n.propIsEqual.delete(e),n.changes.changeProperty(e,r,i)):!1}removeProperty(t,e){this.#t.get(t.uuid)?.changes.removeProperty(e)}changeOrder(t){if(t.parent){let e=this.#t.get(t.parent.uuid);Y(e.children,t.uuid),this.#n(t,e.children)}else Y(this.#e,t.uuid),this.#n(t,this.#e);this.#t.get(t.uuid)?.changes.changeOrder(t.order),this.#o=void 0}traverseLevelOrderBFS(){return this.#a().map(t=>t.component)}dispatchShadowObjectsEvent(t,e,r,i){this.#t.get(t.uuid)?.changes.createEvent(e,r,i)}broadcastEvent(t,e=void 0){for(let r of this.traverseLevelOrderBFS())r.dispatchEvent(t,e,!1)}dispatchMessage(t,e,r=void 0,i=!1){this.#t.get(t)?.component.dispatchEvent(e,r,i)}dispatchReRequestParentRoots(){for(let t of this.#e)this.dispatchMessage(t,s.ReRequestParentRoots)}buildChangeTrails(t=!0){let e=[];if(!this.hasComponents())return e;let r=this.#i();for(let i of r)i.buildChangeTrail(e,D.StructuralChanges);for(let i of r)i.buildChangeTrail(e,D.ContentUpdates);for(let i of r)i.buildChangeTrail(e,D.Removal),(i.isDestroyed||i.isNew&&!i.isCreated)&&this.#r(i.uuid),t&&i.clear();return this.#s.write(e),e}reCreateChanges(){if(!this.#s.isEmpty()){this.buildChangeTrails(!1);for(let[t,e]of this.#s){let r=this.#t.get(t);if(r){let i=new xt(t);if(i.create(e.token,e.parentUuid,e.order),e.properties)for(let[n,o]of e.properties)i.changeProperty(n,o,r.propIsEqual?.get(n));r.changes.transferEventsTo(i),r.changes.clear(),r.changes=i}}this.#s.clear(),this.broadcastEvent(ls)}}clear(){if(this.#o=void 0,this.#s.clear(),this.#e.slice(0).forEach(t=>this.removeSubTree(t)),this.#e.length!==0)throw new Error("component-context panic: #rootComponents is not empty!");if(this.#t.size!==0)throw new Error("component-context panic: #components is not empty!")}#r(t){this.#t.has(t)&&(this.#t.delete(t),Y(this.#e,t),this.#o=void 0)}#i(){return this.#a().filter(t=>t.changes.hasChanges()).map(t=>t.changes)}#n(t,e){if(e.length===0){e.push(t.uuid);return}if(e.includes(t.uuid))return;let r=e.length,i=new Array(r);if(i[0]=this.#t.get(e[0]).component,t.order<i[0].order){e.unshift(t.uuid);return}if(r===1){e.push(t.uuid);return}let n=r-1;if(i[n]=this.#t.get(e[n]).component,t.order>=i[n].order){e.push(t.uuid);return}if(r===2){e.splice(1,0,t.uuid);return}for(let o=n-1;o>=1;o--)if(i[o]=this.#t.get(e[o]).component,t.order>=i[o].order){e.splice(o+1,0,t.uuid);return}}#o;#a(){if(this.#o)return this.#o;let t=new Map,e=(r,i)=>{let n=this.#t.get(r);if(n!=null){t.has(i)?t.get(i).push(n):t.set(i,[n]);for(let o of n.children)e(o,i+1)}};return this.#e.forEach(r=>e(r,0)),this.#o=Array.from(t.entries()).sort((r,i)=>r[0]-i[0]).map(([,r])=>r).flat(),this.#o}};function kt(s,t,e,r,i,n){function o(vt){if(vt!==void 0&&typeof vt!="function")throw new TypeError("Function expected");return vt}for(var h=r.kind,a=h==="getter"?"get":h==="setter"?"set":"value",c=!t&&s?r.static?s:s.prototype:null,u=t||(c?Object.getOwnPropertyDescriptor(c,r.name):{}),l,g=!1,w=e.length-1;w>=0;w--){var _={};for(var ut in r)_[ut]=ut==="access"?{}:r[ut];for(var ut in r.access)_.access[ut]=r.access[ut];_.addInitializer=function(vt){if(g)throw new TypeError("Cannot add initializers after decoration has completed");n.push(o(vt||null))};var et=(0,e[w])(h==="accessor"?{get:u.get,set:u.set}:u[a],_);if(h==="accessor"){if(et===void 0)continue;if(et===null||typeof et!="object")throw new TypeError("Object expected");(l=o(et.get))&&(u.get=l),(l=o(et.set))&&(u.set=l),(l=o(et.init))&&i.unshift(l)}else(l=o(et))&&(h==="field"?i.unshift(l):u[a]=l)}c&&Object.defineProperty(c,r.name,u),g=!0}function K(s,t,e){for(var r=arguments.length>2,i=0;i<t.length;i++)e=r?t[i].call(s,e):t[i].call(s);return r?e:void 0}function At(s){return function(t,e){let r=s?.name||e.name,i=!!(s?.readAsValue??!1);return{get(){let n=O(this,r);if(n)return i?n.value:n.get()},set(n){O(this,r)?.set(n)},init(n){let o=f(n,s);return os(this,r,o),P.findOrCreate(this).attachSignalByName(r,o),o.value}}}}var M="ConsoleLogger",R=`${M}Storage`,ir=!!(globalThis.location?.host?.startsWith("localhost")??!1),Tt="localStorage"in globalThis,Jt=Symbol.for(M),Ss=!1,xs=s=>{if(typeof s=="boolean")return s;switch(s.toLowerCase()){case"true":case"yes":case"on":return!0;default:return!1}},De=s=>[Tt?M:void 0,...Array.isArray(s)?s:[s]].filter(Boolean).join(".");function Ne(s,t=void 0,e){let r=De(s),i=Tt?localStorage.getItem(r):globalThis[R]?.[r];return i!=null?t(i):e}function Ot(s,t){Tt?localStorage.setItem(De(s),t):(globalThis[R]==null&&(globalThis[R]={},console.debug(`${M}: Initialize`,{[R]:globalThis[R]})),globalThis[R][De(s)]=t)}var k=class s{static{this.sharedConfig={enable:ir,debug:!1,info:!0,warn:!0,"styles.debug":"color: #111; background: #999; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em","styles.info":"color: #020; background: #8a8; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em","styles.warn":"color: #fa0; background: #a98; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em","styles.error":"color: #ff0; background: #a00; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em"}}static get isEnabled(){return s.sharedConfig.enable}static get isDebug(){return s.sharedConfig.enable&&s.sharedConfig.debug}static{this.sharedStyles={get debug(){return s.sharedConfig["styles.debug"]},set debug(t){s.sharedConfig["styles.debug"]=t},get info(){return s.sharedConfig["styles.info"]},set info(t){s.sharedConfig["styles.info"]=t},get warn(){return s.sharedConfig["styles.warn"]},set warn(t){s.sharedConfig["styles.warn"]=t},get error(){return s.sharedConfig["styles.error"]},set error(t){s.sharedConfig["styles.error"]=t}}}static loadConfig(){Tt?(["enable","debug","info","warn"].forEach(t=>{this.sharedConfig[t]=Ne(t,xs,this.sharedConfig[t])}),["debug","info","warn","error"].forEach(t=>{this.sharedStyles[t]=Ne(["styles",t],void 0,this.sharedStyles[t])}),s.isDebug&&console.debug(`${M}: Load config from localStorage`,s.sharedConfig),globalThis[M]?.[Jt]||(globalThis[M]??={[Jt]:!0,get enable(){return s.sharedConfig.enable},set enable(t){s.sharedConfig.enable=t,Ot("enable",t?"true":"false")},get debug(){return s.sharedConfig.debug},set debug(t){s.sharedConfig.debug=t,Ot("debug",t?"true":"false")},get info(){return s.sharedConfig.info},set info(t){s.sharedConfig.info=t,Ot("info",t?"true":"false")},get warn(){return s.sharedConfig.warn},set warn(t){s.sharedConfig.warn=t,Ot("warn",t?"true":"false")}})):globalThis[R]?.[Jt]||(globalThis[R]={[Jt]:!0,...s.sharedConfig,...globalThis[R]},s.sharedConfig=globalThis[R],s.isDebug&&console.debug(`${M}: Load config from ${R}`,globalThis[R]))}constructor(t){this.enable=!0,this.namespace=(t||"").trim()||M,Ss||(s.loadConfig(),Ss=!0);let e=[this.namespace,"enable"];this.enable=Ne(e,xs,this.enable),Ot(e,Tt?this.enable?"true":"false":this.enable)}get isEnabled(){return this.enable&&s.sharedConfig.enable}get isDebug(){return this.isEnabled&&s.sharedConfig.debug}get isInfo(){return this.isEnabled&&s.sharedConfig.info}get isWarn(){return this.isEnabled&&s.sharedConfig.warn}debug(...t){this.#t("debug",s.sharedStyles.debug,t)}info(...t){this.#t("info",s.sharedStyles.info,t)}warn(...t){this.#t("warn",s.sharedStyles.warn,t)}error(...t){this.#t("error",s.sharedStyles.error,t)}#t(t,e,r){console[t](`%c${this.namespace}`,e,...r)}};var $=(()=>{var s;let t,e=[],r=[],i,n=[],o=[];return class U{static{let a=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;t=[At()],i=[At()],kt(this,null,t,{kind:"accessor",name:"viewReady",static:!1,private:!1,access:{has:c=>"viewReady"in c,get:c=>c.viewReady,set:(c,u)=>{c.viewReady=u}},metadata:a},e,r),kt(this,null,i,{kind:"accessor",name:"proxyReady",static:!1,private:!1,access:{has:c=>"proxyReady"in c,get:c=>c.proxyReady,set:(c,u)=>{c.proxyReady=u}},metadata:a},n,o),a&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:a})}static{this.AfterSync="afterSync"}static{this.ContextLost="contextLost"}static{this.ContextCreated="contextCreated"}static get(a){if(a!=null)return globalThis.__shadowEnvs?.get(a)}#t;#e;#s;#r;#i;#n;#o;get viewReady(){return this.#o}set viewReady(a){this.#o=a}#a;get proxyReady(){return this.#a}set proxyReady(a){this.#a=a}#h;get isDestroyed(){return this.#h}constructor(){this.#s=!1,this.#r=!1,this.#i=!1,this.logger=new k("ShadowEnv"),this.ns$=f(),this.#o=K(this,e,!1),this.#a=(K(this,r),K(this,n,!1)),this.#h=(K(this,o),!1),this.ready=async()=>this.isReady?this:ct(this,U.ContextCreated),this.#l=()=>{this.#s&&this.#u()},W(this,U.ContextCreated),y(this,U.ContextLost,it.AAA,()=>{G(this,U.ContextCreated)}),v(()=>{if(this.viewReady&&this.proxyReady)return this.view.reCreateChanges(),d(this,U.ContextCreated,this),this.#r&&(this.#r=!1,this.#u()),()=>{d(this,U.ContextLost,this)}},[O(this,"viewReady"),O(this,"proxyReady")])}get view(){return this.#t}set view(a){a!==this.#t&&(this.#t&&this.#t.ns&&globalThis.__shadowEnvs&&globalThis.__shadowEnvs.delete(this.#t.ns),this.#t=a??void 0,this.#t&&this.#t.ns&&(globalThis.__shadowEnvs??=new Map,globalThis.__shadowEnvs.has(this.#t.ns)&&globalThis.__shadowEnvs.get(this.#t.ns)!==this&&this.logger.isWarn&&this.logger.warn("overwrite a namespace already in use",this.#t.ns,globalThis.__shadowEnvs.get(this.#t.ns)),globalThis.__shadowEnvs.set(this.#t.ns,this)),this.viewReady=!!a)}get envProxy(){return this.#e}set envProxy(a){if(a!==this.#e){let c=this.#e;this.#e=a??void 0,this.#e&&(this.#e.onMessageToView=this.#c.bind(this)),c&&c.destroy(),this.proxyReady=!1,a?.start().then(()=>{this.proxyReady=!0}).catch(u=>{this.logger.error("failed to start envProxy",u),this.proxyReady=!1})}}get isReady(){return!!(this.#t&&this.#e&&this.proxyReady&&!this.isDestroyed)}sync(){if(!this.isReady){this.#r=!0;return}this.#s||(this.#s=!0,queueMicrotask(this.#l))}syncWait(){return this.#i=!0,this.sync(),this.#n?this.#n:(this.#n=ct(this,U.AfterSync).then(a=>(this.#n=void 0,a)),this.#n)}destroy(){let a=this.#t?.ns;this.envProxy?.destroy(),this.envProxy=void 0,this.view=void 0,a&&globalThis.__shadowEnvs.has(a)&&globalThis.__shadowEnvs.get(a)===this&&globalThis.__shadowEnvs.delete(a),Et(this),m(this),this.#h=!0,Object.freeze(this)}#l;async#u(){if(this.#s=!1,this.isReady){let a=this.view.buildChangeTrails();if(a.length>0)try{let c=this.#i;this.#i=!1,await this.envProxy.applyChangeTrail(a,c)}catch(c){this.logger.error("failed to apply change trail",c)}finally{d(this,U.AfterSync,a)}}}#c(a){this.logger.isDebug&&this.logger.debug("onMessageToView",a.type,a.data),this.view?.dispatchMessage(a.uuid,a.type,a.data,a.traverseChildren)}}})();var x=["00","01","02","03","04","05","06","07","08","09","0a","0b","0c","0d","0e","0f","10","11","12","13","14","15","16","17","18","19","1a","1b","1c","1d","1e","1f","20","21","22","23","24","25","26","27","28","29","2a","2b","2c","2d","2e","2f","30","31","32","33","34","35","36","37","38","39","3a","3b","3c","3d","3e","3f","40","41","42","43","44","45","46","47","48","49","4a","4b","4c","4d","4e","4f","50","51","52","53","54","55","56","57","58","59","5a","5b","5c","5d","5e","5f","60","61","62","63","64","65","66","67","68","69","6a","6b","6c","6d","6e","6f","70","71","72","73","74","75","76","77","78","79","7a","7b","7c","7d","7e","7f","80","81","82","83","84","85","86","87","88","89","8a","8b","8c","8d","8e","8f","90","91","92","93","94","95","96","97","98","99","9a","9b","9c","9d","9e","9f","a0","a1","a2","a3","a4","a5","a6","a7","a8","a9","aa","ab","ac","ad","ae","af","b0","b1","b2","b3","b4","b5","b6","b7","b8","b9","ba","bb","bc","bd","be","bf","c0","c1","c2","c3","c4","c5","c6","c7","c8","c9","ca","cb","cc","cd","ce","cf","d0","d1","d2","d3","d4","d5","d6","d7","d8","d9","da","db","dc","dd","de","df","e0","e1","e2","e3","e4","e5","e6","e7","e8","e9","ea","eb","ec","ed","ee","ef","f0","f1","f2","f3","f4","f5","f6","f7","f8","f9","fa","fb","fc","fd","fe","ff"],nr=()=>{let s=Math.random()*4294967295|0,t=Math.random()*4294967295|0,e=Math.random()*4294967295|0,r=Math.random()*4294967295|0;return(x[s&255]+x[s>>8&255]+x[s>>16&255]+x[s>>24&255]+"-"+x[t&255]+x[t>>8&255]+"-"+x[t>>16&15|64]+x[t>>24&255]+"-"+x[e&63|128]+x[e>>8&255]+"-"+x[e>>16&255]+x[e>>24&255]+x[r&255]+x[r>>8&255]+x[r>>16&255]+x[r>>24&255]).toLowerCase()},ks=()=>globalThis?.crypto?.randomUUID?.()??nr();var Pt=class extends Error{constructor(t){super(t),this.name="ViewComponentError"}},Zt=class s{#t;#e;#s;#r;#i=0;get uuid(){return this.#t}get token(){return this.#e}set token(t){t??=z,t!==this.#e&&(this.#e=t,this.#s?.changeToken(this,t))}get parent(){return this.#r}set parent(t){if(t){if(t.#s!==this.#s)throw new Pt("cannot set parent from different context");t.addChild(this)}else this.removeFromParent()}get context(){return this.#s}set context(t){this.#s!=t&&(this.#s&&this.destroy(),this.#s=t,t&&t.addComponent(this))}get order(){return this.#i}set order(t){let e=this.#i;this.#i=t??0,e!==this.#i&&this.#s.changeOrder(this)}constructor(t,e){E(this),e instanceof s&&(e={parent:e}),this.#t=e?.uuid??ks(),this.#e=t,this.#i=e?.order??0,this.#r=e?.parent;let r=e?.context??L.get();if(this.#r&&this.#r.#s!==r)throw new Pt("cannot set parent from different context");this.context=r}isChildOf(t){return this.#r===t}removeFromParent(){this.#r?(this.#s?.removeFromParent(this.uuid,this.#r),this.#r=void 0):this.#s?.moveToRoot(this.uuid)}addChild(t){if(t.#s!==this.#s)throw new Pt("cannot add a child from another context");t.isChildOf(this)||(t.removeFromParent(),t.#r=this,this.#s.addToChildren(this,t))}setProperty(t,e,r){this.#s.setProperty(this,t,e,r)}removeProperty(t){this.#s.removeProperty(this,t)}dispatchShadowObjectsEvent(t,e,r){this.#s.dispatchShadowObjectsEvent(this,t,e,r)}dispatchEvent(t,e,r){if(d(this,t,e),r)for(let i of this.#s.getChildren(this))i.dispatchEvent(t,e,r)}destroy(){this.removeFromParent(),this.#s?.destroyComponent(this),this.#s=void 0}};var Xt="shaeRequestEntParent",te="shaeReRequestEntParent",As="shae-worker",ee="shae-ent",Os="shae-prop",J="token",Z="ns",se="local",Ts="no-autostart",re="no-structured-clone",I="auto-sync",ie="src",ne="name",oe="value",ae="type",he="no-trim";var Rt=new Set(["on","true","yes","local","1"]);var Ps=s=>lt(s.getAttribute(Z)),Mt=(s,t)=>{if(s.hasAttribute(t)){let e=s.getAttribute(t)?.trim()?.toLowerCase()||"1";return Rt.has(e)}return!1};var Rs=(s,t)=>{t.set(Ps(s))},$e=new Set,Ie=!1,or=s=>{$e.add(s),Ie||(Ie=!0,queueMicrotask(()=>{Ie=!1;for(let t of $e)$.get(t)?.sync();$e.clear()}))},X=class extends HTMLElement{static{this.observedAttributes=[Z]}get ns(){return this.ns$.value}set ns(t){typeof t=="symbol"?this.ns$.set(t):this.ns$.set(lt(t))}constructor(){super(),this.isShaeElement=!0,this.ns$=f(ht),this.ns$.onChange(t=>{typeof t=="string"&&t.length>0?this.getAttribute(Z)!==t&&this.setAttribute(Z,t):this.removeAttribute(Z)}),Rs(this,this.ns$)}attributeChangedCallback(t){t===Z&&Rs(this,this.ns$)}syncShadowObjects(){or(this.ns)}};var le=class extends X{static{this.observedAttributes=[...X.observedAttributes,J]}get componentContext(){return this.componentContext$.value}get viewComponent(){return this.viewComponent$.value}get uuid(){return this.viewComponent?.uuid}get token(){return this.token$.value}set token(t){this.token$.set(t)}#t;constructor(){super(),this.isShaeEntElement=!0,this.componentContext$=f(),this.viewComponent$=f(),this.token$=f(),this.#n=!0,this.#f=()=>{let t=this.findShadowRootHost();t!=null&&this.dispatchEvent(new CustomEvent(te,{bubbles:!0,composed:!0,detail:{requester:this,shadowRootHost:t}}))},this.#d=t=>{let e=t.detail?.requester;if(e===this||!e?.isShaeEntElement||e.ns!==this.ns)return;t.detail?.shadowRootHost&&this.#l()},this.#g=t=>{let e=t.detail?.requester;e!==this&&e?.isShaeEntElement&&e.ns===this.ns&&(t.stopPropagation(),e.#c(this))},this.ns$.onChange(t=>{this.componentContext$.set(L.get(t)),this.isConnected&&this.#l()}),this.#p(),this.token$.onChange(t=>{t==null?this.removeAttribute(J):this.getAttribute(J)!==t&&this.setAttribute(J,t)}),v(()=>{let t=this.viewComponent$.get();if(t){let e=y(t,L.ReRequestParentRoots,()=>this.#h()),r=t.context?.ns;return()=>{e(),t.destroy(),r&&r!==this.ns?$.get(r)?.sync():this.syncShadowObjects()}}}),this.token$.onChange(t=>{let e=this.viewComponent$.value;e&&(e.token=t,this.syncShadowObjects())})}#e;#s(){this.#e?.();let t=this.componentContext$.onChange(e=>{let r=this.token$.value,i=this.viewComponent$.value;i?i.context=e:e&&(i=new Zt(r,{context:e}),this.viewComponent$.set(i)),this.syncShadowObjects()});this.#e=()=>{t()}}#r(){this.#e?.(),this.#e=void 0}#i;#n;findShadowRootHost(){if(this.#n){this.#n=!1;let t=this;for(;t;){if(t.parentElement==null){let e=t.parentNode;e&&(this.#i=e.host);break}t=t.parentElement}}return this.#i}getParentNodeForObserver(){let t=this.parentNode;return t||(t.host??t)}connectedCallback(){this.#n=!0,this.addEventListener("slotchange",this.#f,{capture:!1,passive:!1}),this.addEventListener(Xt,this.#g,{capture:!1,passive:!1}),this.#s(),ke(()=>this.#p()),this.componentContext==null&&this.componentContext$.set(L.get(this.ns)),this.#l(),this.componentContext?.dispatchReRequestParentRoots(),this.#o(),this.syncShadowObjects()}#o(){this.#a();let t=this.getParentNodeForObserver();t&&(this.#t=new MutationObserver((e,r)=>{for(let{target:i,removedNodes:n}of e)if(i===t){for(let o of n)if(o===this){this.#a(),this.onParentChanged(this.getParentNodeForObserver(),t);break}}}),this.#t.observe(t,{childList:!0,subtree:!1,attributes:!1}))}onParentChanged(t,e){this.#c(void 0),this.#l()}#a(){this.#t?.disconnect(),this.#t=void 0}attributeChangedCallback(t){super.attributeChangedCallback(t),t===J&&this.#p()}disconnectedCallback(){this.#n=!0,this.#a(),this.removeEventListener("slotchange",this.#f,{capture:!1}),this.removeEventListener(Xt,this.#g,{capture:!1}),this.#c(void 0),this.componentContext$.set(void 0),this.syncShadowObjects(),this.#r()}#h(){this.isConnected&&(this.#c(void 0),this.#l())}#l(){this.dispatchEvent(new CustomEvent(Xt,{bubbles:!0,composed:!0,detail:{requester:this}}))}#u;#c(t){if(this.entParentNode!==t)if(this.entParentNode&&this.entParentNode.removeEventListener(te,this.#d,{capture:!1}),this.entParentNode=t,this.entParentNode&&this.entParentNode.addEventListener(te,this.#d,{capture:!1,passive:!1}),this.#u?.(),this.#u=void 0,t){let e=v(()=>{let r=this.viewComponent$.get();if(r){let i=t.viewComponent$.get();r.parent=i&&i.context===r.context?i:void 0,r.parent==null&&queueMicrotask(()=>{this.#l()}),this.syncShadowObjects()}});this.#u=()=>e.destroy()}else{let e=this.viewComponent;e.parent&&(e.parent=void 0,this.syncShadowObjects())}}#f;#d;#g;#p(){if(this.hasAttribute(J)){let t=this.getAttribute(J)?.trim()||void 0;this.token$.set(t)}}};customElements.define(ee,le);var ar=s=>{let t=s.parentElement;for(;t;){if(t.isShaeEntElement)return t;t=t.parentElement}},hr=new Set(["string","text","number","bigint","float","int","integer","hex","hexadecimal","oct","octal","bin","binary","bool","boolean","[]","text[]","string[]","number[]","float[]","int[]","integer[]","hex[]","hexadecimal[]","oct[]","octal[]","bin[]","binary[]","bool[]","boolean[]","int8array","uint8array","uint8clampedarray","int16array","uint16array","int32array","uint32array","float32array","float64array","bigint64array","biguint64array","json"]),ue=class extends HTMLElement{static{this.observedAttributes=[ne,oe,ae,he]}get name(){return this.name$.value}get value(){return this.valueOut$.value}set value(t){this.valueIn$.set(t)}get shouldTrim(){return this.shouldTrim$.value}get entNode(){return this.entNode$.value}set entNode(t){this.entNode$.set(t)}get viewComponent(){return this.viewComponent$.value}constructor(){super(),this.isShaeEntElement=!0,this.entNode$=f(),this.viewComponent$=f(),this.name$=f(),this.valueIn$=f(),this.valueOut$=f(),this.type$=f(),this.shouldTrim$=f(!0),this.logger=new k("ShaePropElement"),this.#t=()=>{this.entNode$.set(ar(this))},this.#e=()=>{queueMicrotask(()=>{this.isConnected||this.entNode$.set(void 0)})},this.#s=()=>{this.name$.set(this.getAttribute(ne)?.trim()??void 0)},this.#r=()=>{this.valueIn$.set(this.getAttribute(oe))},this.#i=()=>{let t=this.getAttribute(ae)?.trim().toLowerCase();t&&!hr.has(t)&&(this.logger.isWarn&&this.logger.warn(`[${this.name}] unknown type "${t}"`,{shaeProp:this}),t=void 0),this.type$.set(t)},this.#n=()=>{this.shouldTrim$.set(!Mt(this,he))},this.entNode$.onChange(t=>{if(t){let e=N(t.viewComponent$,this.viewComponent$);return()=>{e.destroy()}}else this.viewComponent$.set(void 0)}),v(()=>{let t=this.viewComponent$.get();if(t){let e=this.name$.get();if(e){let r=this.valueOut$.get();this.logger.isDebug&&this.logger.debug(`[${this.name}] view-component set-property`,e,r,t.uuid,{viewComponent:t,shaeProp:this}),t.setProperty(e,r),this.isConnected&&this.entNode?.syncShadowObjects()}}}),v(()=>{let t=this.type$.get(),e=this.shouldTrim$.get(),r=this.valueIn$.get();if(e&&typeof r=="string"&&(r=r.trim()),r=r||void 0,r!=null&&typeof r=="string"&&t)switch(t){case"string":case"text":break;case"number":r=Number(r);break;case"bigint":r=BigInt(r);break;case"float":r=parseFloat(r);break;case"int":case"integer":r=parseInt(r,10);break;case"hex":case"hexadecimal":r=parseInt(r,16);break;case"oct":case"octal":r=parseInt(r,8);break;case"bin":case"binary":r=parseInt(r,2);break;case"bool":case"boolean":r=Rt.has(r.toLowerCase());break;case"[]":case"text[]":case"string[]":r=r.split(/\W+/);break;case"number[]":r=r.split(/\s+/).map(i=>Number(i));break;case"float[]":r=r.split(/\s+/).map(i=>parseFloat(i));break;case"int[]":case"integer[]":r=r.split(/\s+/).map(i=>parseInt(i));break;case"hex[]":case"hexadecimal[]":r=r.split(/\W+/).map(i=>parseInt(i,16));break;case"oct[]":case"octal[]":r=r.split(/\W+/).map(i=>parseInt(i,8));break;case"bin[]":case"binary[]":r=r.split(/\W+/).map(i=>parseInt(i,2));break;case"bool[]":case"boolean[]":r=r.split(/\W+/).map(i=>Rt.has(i.toLowerCase()));break;case"int8array":r=new Int8Array(r.split(/\W+/).map(i=>Number(i)));break;case"uint8array":r=new Uint8Array(r.split(/\W+/).map(i=>Number(i)));break;case"uint8clampedarray":r=new Uint8ClampedArray(r.split(/\W+/).map(i=>Number(i)));break;case"int16array":r=new Int16Array(r.split(/\W+/).map(i=>Number(i)));break;case"uint16array":r=new Uint16Array(r.split(/\W+/).map(i=>Number(i)));break;case"int32array":r=new Int32Array(r.split(/\W+/).map(i=>Number(i)));break;case"uint32array":r=new Uint32Array(r.split(/\W+/).map(i=>Number(i)));break;case"float32array":r=new Float32Array(r.split(/\s+/).map(i=>Number(i)));break;case"float64array":r=new Float64Array(r.split(/\s+/).map(i=>Number(i)));break;case"bigint64array":r=new BigInt64Array(r.split(/\W+/).map(i=>BigInt(i)));break;case"biguint64array":r=new BigUint64Array(r.split(/\W+/).map(i=>BigInt(i)));break;case"json":r=JSON.parse(r);break;default:this.logger.isWarn&&this.logger.warn(`[${this.name}] unknown type "${t}"`,{value:r,shaeProp:this})}this.valueOut$.set(r)}),A(()=>{this.#s(),this.#r(),this.#i(),this.#n()})}connectedCallback(){A(()=>{this.#t(),this.#s(),this.#r(),this.#i(),this.#n()})}attributeChangedCallback(t){switch(t){case ne:this.#s();break;case oe:this.#r();break;case ae:this.#i();break;case he:this.#n();break}}disconnectedCallback(){this.#e()}#t;#e;#s;#r;#i;#n};customElements.whenDefined(ee).then(()=>customElements.define(Os,ue));var ce,Fe=null,mt=class{static{this.OnFrame=Symbol("onFrame")}#t=0;#e=0;constructor(){if(Fe)return Fe;E(this),Fe=this}start(t){if(t!=null)return Se(this)===0&&this.#r(),y(this,ce.OnFrame,t),this.#e++,()=>{this.stop(t)}}stop(t){m(this,ce.OnFrame,t),Se(this)===0&&this.#i()}#s=t=>{d(this,ce.OnFrame,t),this.#r()};#r(){this.#t=requestAnimationFrame(this.#s)}#i(){cancelAnimationFrame(this.#t),this.#t=0}};ce=mt;var bt="value",Lt=(()=>{let s,t=[],e=[];return class{static{let i=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;s=[At({name:bt})],kt(this,null,s,{kind:"accessor",name:"value",static:!1,private:!1,access:{has:n=>"value"in n,get:n=>n.value,set:(n,o)=>{n.value=o}},metadata:i},t,e),i&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:i})}static{this.Value=bt}#t;#e;#s;get value(){return this.#s}set value(i){this.#s=i}constructor(i){this.#t=[],this.#s=K(this,t,void 0),this.value$=K(this,e),W(this,bt),this.value$=O(this,bt),this.value$.onChange(n=>d(this,bt,n)),i&&this.add(...i)}add(...i){return this.#t.push(...i),this.#i(),this.#r(i)}unshift(...i){return this.#t.unshift(...i),this.#i(),this.#r(i)}remove(...i){this.#r(i)()}clear(){this.#t.length=0,this.#i()}dispose(){this.clear(),this.#e?.destroy(),this.#e=void 0,G(this,bt),m(this),this.value$.destroy(),Et(this)}#r(i){return()=>{for(let n of i){let o=this.#t.indexOf(n);o!==-1&&this.#t.splice(o,1)}this.#i()}}#i(){this.#e?.destroy(),this.#t.length===0?(this.#e=void 0,this.value=void 0):(this.#e=v(()=>{let i;for(let n of this.#t){let o=at(n);if(o!=null){i=o;break}}this.value=i},this.#t),this.#e.run())}}})();var We="onCreate",tt="onDestroy",Ms="onParentChanged",Ls="onViewEvent";var ze=new Map,Ue=!1,lr=(s,t)=>{ze.set(s,t),Ue||(Ue=!0,queueMicrotask(()=>{Ue=!1;let e=Array.from(ze.entries());ze.clear();for(let[r,i]of e)r.set(i)}))},fe=class{#t;#e;#s=new Yt;#r=new Map;#i=new Map;#n;#o;#a=new Set;#h=[];#l=0;get kernel(){return this.#t}get uuid(){return this.#e}get order(){return this.#l}set order(t){this.#l!==t&&(this.#l=t,this.#n&&this.parent.resortChildren())}get parentUuid(){return this.#n||void 0}set parentUuid(t){this.#n!==t&&(this.removeFromParent(),this.#n=t||void 0,this.#o=t?this.#t.getEntity(t):void 0,this.#o&&this.#o.addChild(this))}get parent(){return!this.#o&&this.#n&&(this.#o=this.#t.getEntity(this.#n)),this.#o}set parent(t){this.parentUuid=t?.uuid}get hasParent(){return!!this.#n}get children(){return this.#h}constructor(t,e){this.#t=t,this.#e=e,C(this,tt,it.Min,this)}traverse(t){t(this);for(let e of this.#h)e.traverse(t)}onDestroy(){this.#s.clear(),m(this);for(let t of this.#i.values())t.cleanup(),t.signal.destroy();this.#i.clear();for(let t of this.#r.values())t.context.set(void 0),t.unsubscribePathValue(),t.unsubscribeFromParent?.(),t.valuePath.dispose(),t.inherited.destroy(),t.provide.destroy(),t.context.destroy();this.#n=void 0,this.#o=void 0,this.#a.clear(),this.#h.length=0}addChild(t){if(this.#h.length===0){this.#a.add(t.uuid),this.#h.push(t);return}if(this.#a.has(t.uuid))throw new Error(`child with uuid: ${t.uuid} already exists! parentUuid: ${this.uuid}`);this.#a.add(t.uuid),this.#h.push(t),this.resortChildren();for(let[,e]of t.#r)t.#d(e)}resortChildren(){this.#h.sort((t,e)=>t.order-e.order)}removeChild(t){this.#a.has(t.uuid)&&(this.#a.delete(t.uuid),this.#h.splice(this.#h.indexOf(t),1))}removeFromParent(){if(this.#o){this.#o.removeChild(this),this.#o=void 0,this.#n=void 0;for(let[,t]of this.#r)t.unsubscribeFromParent&&(t.unsubscribeFromParent(),t.unsubscribeFromParent=void 0)}}reSubscribeToParentContexts(){for(let[,t]of this.#r)this.#d(t)}dispatchMessageToView(t,e,r,i=!1){this.#t.dispatchMessageToView({uuid:this.#e,type:t,data:e,transferables:r,traverseChildren:i})}dispatchViewEvents(t){for(let{type:e,data:r}of t)d(this,Ls,e,r)}dispatchViewEvent(t,e){this.dispatchViewEvents([{type:t,data:e}])}#u(t){return this.#s.get(t)}getPropertyReader(t){return this.#u(t).get}getPropertyWriter(t){return this.#u(t).set}setProperties(t){this.clearTruthyPropsCache(),A(()=>{for(let[e,r]of t)this.setProperty(e,r)})}setProperty(t,e){this.getPropertyWriter(t)(e)}getProperty(t){return at(this.getPropertyReader(t))}propKeys(){return Array.from(this.#s.keys())}propEntries(){return Array.from(this.#s.entries()).map(([t,e])=>[t,e.value])}#c;clearTruthyPropsCache(){this.#c=void 0}truthyProps(){if(this.#c)return this.#c.size?this.#c:void 0;let t=new Set;for(let[e,r]of this.#s.entries())if(typeof e=="string"){let i=r.value;i!=null&&i!==!1&&i!==""&&t.add(e)}return this.#c=t,t.size?t:void 0}hasContext(t){return this.#r.has(t)}useContext(t){return this.#f(t).context.get}provideContext(t){return this.#f(t).provide}provideGlobalContext(t){if(this.#i.has(t))return this.#i.get(t).signal;let e=this.#t.findOrCreateRootContext(t),r=f(),i=e.add(r);return this.#i.set(t,{cleanup:i,signal:r}),r}#f(t){if(this.#r.has(t))return this.#r.get(t);let e=f(),r=f(),i=f(),n=new Lt([r,e]),o=y(n,Lt.Value,a=>{lr(i,a)}),h={name:t,inherited:e,provide:r,context:i,valuePath:n,unsubscribePathValue:o};return this.#r.set(t,h),this.#d(h),h}#d(t){if(t.unsubscribeFromParent?.(),t.unsubscribeFromParent=void 0,this.parent){let e=this.parent.#f(t.name),r=N(e.context,t.inherited);t.unsubscribeFromParent=r.destroy.bind(r)}else{let e=this.#t.findOrCreateRootContext(t.name),r=N(e.value$,t.inherited);t.unsubscribeFromParent=r.destroy.bind(r)}}};var _s=s=>{let t=s.split("@").map(e=>e.trim());if(t.length===2&&t[1])return t[0]?{key:`${t[0]}@${t[1]}`,prop:t[1],token:t[0]}:{key:t[1],prop:t[1]}},de=(s,t)=>{for(let e of t)s.add(e)},ur=(s,t)=>{if(s!=null)for(let e of s.constructors)t.add(e)},_t=class{static get(t){return t??cr}#t=new Map;#e=new Map;#s=new Map;define(t,e){this.#t.has(t)?Cs(this.#t.get(t).constructors,e):this.#t.set(t,{token:t,constructors:[e]})}appendRoute(t,e){let r=_s(t);r?this.#s.has(r.key)?de(this.#s.get(r.key).routes,e):this.#s.set(r.key,{routes:new Set(e),token:r.token}):this.#e.has(t)?de(this.#e.get(t),e):this.#e.set(t,new Set(e))}clearRoute(t){let e=_s(t);e?this.#s.delete(e.key):this.#e.delete(t)}findTokensByRoute(t,e){let r=new Set([t]),i=this.#e.has(t)?[...this.#e.get(t)]:[];for(;i.length;){let n=i.shift();r.has(n)||(r.add(n),this.#e.has(n)&&i.push(...Array.from(this.#e.get(n)).filter(o=>!r.has(o))))}if(e){for(let o of e)this.#s.has(o)&&de(r,this.#s.get(o).routes);let n;do{n=r.size;for(let o of new Set(r))for(let h of e){let a=`${o}@${h}`;this.#s.has(a)&&de(r,this.#s.get(a).routes)}}while(n!==r.size)}return r}findConstructors(t,e){let r=this.findTokensByRoute(t,e),i=new Set;for(let n of r)ur(this.#t.get(n),i);return i.size>0?Array.from(i):void 0}hasToken(t){return this.#t.has(t)}hasRoute(t){return this.#e.has(t)}clear(){this.#t.clear(),this.#e.clear()}},cr=new _t;var V;(function(s){s[s.CreateAndDestroy=0]="CreateAndDestroy",s[s.JustCreate=1]="JustCreate",s[s.DestroyOnly=2]="DestroyOnly"})(V||(V={}));var js=s=>s.displayName||s.name,pe=class{#t;#e;#s;#r;#i;#n;constructor(t){this.logger=new k("Kernel"),this.#t=new Map,this.#e=new Set,this.#i=!0,this.#n=new Map,E(this),this.registry=_t.get(t)}getEntity(t){let e=this.#t.get(t)?.entity;if(!e)throw new Error(`entity with uuid "${t}" not found!`);return e}hasEntity(t){return this.#t.has(t)}traverseLevelOrderBFS(t=!1){if(this.#i){let e=new Map,r=(i,n)=>{let o=this.getEntity(i);e.has(n)?e.get(n).push(o):e.set(n,[o]);for(let h of o.children)r(h.uuid,n+1)};this.#e.forEach(i=>r(i,0)),this.#s=Array.from(e.entries()).sort((i,n)=>i[0]-n[0]).map(([,i])=>i).flat(),this.#r=this.#s.slice().reverse(),this.#i=!1}return t?this.#r:this.#s}getEntityGraph(){return Array.from(this.#e).map(t=>this.getEntityGraphNode(t))}getEntityGraphNode(t){if(!this.#t.has(t))return;let{token:e,entity:r}=this.#t.get(t);return{token:e,entity:r,props:Object.fromEntries(r.propEntries()),children:r.children.map(i=>this.getEntityGraphNode(i.uuid))}}upgradeEntities(){let t=new Map;for(let e of this.traverseLevelOrderBFS(!0))t.set(e.uuid,this.updateShadowObjects(e.uuid,V.DestroyOnly));for(let e of this.traverseLevelOrderBFS(!1))this.updateShadowObjects(e.uuid,V.JustCreate,t.get(e.uuid));t.clear()}run(t){this.logger.isDebug&&this.logger.debug("sync",t),A(()=>{for(let e of t.changeTrail)this.parse(e)})}parse(t){switch(t.type){case p.CreateEntities:this.createEntity(t.uuid,t.token,t.parentUuid,t.order,t.properties),this.#i=!0;break;case p.DestroyEntities:this.destroyEntity(t.uuid),this.#i=!0;break;case p.SetParent:this.setParent(t.uuid,t.parentUuid,t.order),this.#i=!0;break;case p.UpdateOrder:this.updateOrder(t.uuid,t.order),this.#i=!0;break;case p.ChangeProperties:this.changeProperties(t.uuid,t.properties);break;case p.ChangeToken:this.changeToken(t.uuid,t.token);break;case p.SendEvents:this.dispatchEventsToEntity(t.uuid,t.events);break}}createEntity(t,e,r,i=0,n){let o=new fe(this,t);o.order=i;let h={token:e,entity:o,usedConstructors:new Map};this.#t.set(t,h),r&&(o.parentUuid=r),o.hasParent||this.#e.add(t),n&&o.setProperties(n),this.createShadowObjects(t)}destroyEntity(t){if(!this.#t.has(t))return;let{entity:e,usedConstructors:r}=this.#t.get(t);e.removeFromParent(),d(e,tt,this),r.clear(),this.#t.delete(e.uuid),this.#e.delete(e.uuid)}setParent(t,e,r=0){let i=this.getEntity(t);i.parentUuid===e&&i.order===r||(i.removeFromParent(),i.order=r,i.parentUuid=e,i.hasParent?this.#e.delete(t):this.#e.add(t),i.reSubscribeToParentContexts(),queueMicrotask(()=>{this.logger.isDebug&&this.logger.debug("entity.onParentChanged",{uuid:t,parentUuid:e,order:r,entity:i}),d(i,Ms,i)}))}updateOrder(t,e){this.getEntity(t).order=e}dispatchEventsToEntity(t,e){this.getEntity(t)?.dispatchViewEvents(e)}changeProperties(t,e){this.getEntity(t).setProperties(e),this.updateShadowObjects(t)}changeToken(t,e){if(!this.#t.has(t))return;let r=this.#t.get(t);r.token!==e&&(r.token=e,this.updateShadowObjects(t))}dispatchMessageToView(t){queueMicrotask(()=>{d(this,yt,t)})}updateShadowObjects(t,e=V.CreateAndDestroy,r){let i=this.#t.get(t);r??=new Set(this.registry.findConstructors(i.token,i.entity.truthyProps()));let n=e===V.CreateAndDestroy||e===V.DestroyOnly,o=e===V.CreateAndDestroy||e===V.JustCreate;if(n){for(let[h,a]of i.usedConstructors)if(!r.has(h)){i.usedConstructors.delete(h);for(let c of a)this.destroyShadowObject(c,i.entity)}}if(o)for(let h of r)i.usedConstructors.has(h)||this.constructShadowObject(h,i);return r}constructShadowObject(t,e){let r=new Set,i=new Set,n=new Map,o=new Map,h=new Map,a=new Map,c=E(new t({entity:e.entity,provideContext(u,l,g){let w=o.get(u);if(w==null){w=f(l,g?{compare:g}:void 0);let _=N(w,e.entity.provideContext(u));i.add(_.destroy.bind(_)),o.set(u,w)}return w},provideGlobalContext(u,l,g){let w=h.get(u);if(w==null){w=f(l,g?{compare:g}:void 0);let _=N(w,e.entity.provideGlobalContext(u));i.add(_.destroy.bind(_)),h.set(u,w)}return w},useContext(u,l){let g=n.get(u);if(g===void 0){g=f(void 0,l?{compare:l}:void 0).get,n.set(u,g);let w=N(e.entity.useContext(u),g);i.add(w.destroy.bind(w))}return g},useProperty(u,l){let g=a.get(u);if(g===void 0){g=f(void 0,l?{compare:l}:void 0).get,a.set(u,g);let w=N(e.entity.getPropertyReader(u),g);i.add(w.destroy.bind(w))}return g},createEffect(...u){let l=v(...u);return i.add(l.destroy),l},createSignal(...u){let l=f(...u);return i.add(()=>{S(l)}),l},createMemo(...u){let l=Me(...u);return i.add(()=>{S(l)}),l},on(...u){let l=y(...u);return i.add(l),l},once(...u){let l=C(...u);return i.add(l),l},onDestroy(u){r.add(u)}}));return this.logger.isInfo&&this.logger.info("create shadow-object",js(t),{shadowObject:c,entity:e.entity}),C(e.entity,tt,it.Low,()=>{this.logger.isInfo&&this.logger.info("destroy shadow-object",js(t),{shadowObject:c,entity:e.entity});for(let l of r)l();for(let l of i)l();for(let l of n.values())S(l);for(let l of a.values())S(l);for(let l of o.values())S(l);for(let l of h.values())S(l);r.clear(),i.clear(),n.clear(),a.clear(),o.clear(),h.clear();let u=e.usedConstructors.get(t);u&&(u.delete(c),u.size===0&&e.usedConstructors.delete(t))}),e.usedConstructors.has(t)?e.usedConstructors.get(t).add(c):e.usedConstructors.set(t,new Set([c])),this.attachShadowObject(c,e.entity),c}createShadowObjects(t){let e=this.#t.get(t);this.registry.findConstructors(e.token,e.entity.truthyProps())?.forEach(r=>{this.constructShadowObject(r,e)})}findShadowObjects(t){if(!this.#t.has(t))return[];let{usedConstructors:e}=this.#t.get(t);return Array.from(new Set(Array.from(e.values()).map(r=>Array.from(r)).flat()))}attachShadowObject(t,e){y(e,t),typeof t[We]=="function"&&t[We](e)}destroyShadowObject(t,e){typeof t[tt]=="function"&&t[tt](e),d(t,tt,e),m(e,t)}findOrCreateRootContext(t){let e=this.#n.get(t);return e||(e=new Lt,this.#n.set(t,e)),e}destroy(){for(let t of this.#n.values())t.dispose();this.#n.clear();for(let t of this.traverseLevelOrderBFS().reverse())this.destroyEntity(t.uuid)}};async function Ve(s,t,e,r=!0){if(e.has(t)){console.warn("importModule: skipping already imported module",t);return}else e.add(t);t.extends&&await Promise.all(t.extends.map(n=>Ve(s,n,e,!1)));let{registry:i}=s;if(t.define)for(let[n,o]of Object.entries(t.define))i.define(n,o);if(t.routes)for(let[n,o]of Object.entries(t.routes))i.appendRoute(n,o);await(t.initialize?.({define:(n,o)=>i.define(n,o),kernel:s,registry:i})??Promise.resolve()),r&&s.upgradeEntities()}var ge=s=>(typeof s=="string"&&(s=new URL(s,globalThis.location.href)),s.toString());function Ns(s){return s.map(t=>{if(t.transferables&&t.transferables.length>0){let{transferables:e,...r}=t;return structuredClone(r,{transfer:e})}else return structuredClone(t)})}var ye=class{#t;get registry(){return this.kernel.registry}constructor(t){this.#t=new Set,this.isLocalEnv=!0,this.disableStructuredClone=!1,this.kernel=new pe(t),y(this.kernel,yt,e=>{if(this.onMessageToView!=null){let{type:r,uuid:i,traverseChildren:n}=e,o=structuredClone(e.data,{transfer:e.transferables});this.onMessageToView({type:r,uuid:i,data:o,traverseChildren:n})}})}start(){return Promise.resolve()}applyChangeTrail(t,e){let r={changeTrail:this.disableStructuredClone?t:Ns(t)},i;try{this.kernel.run(r),i=Promise.resolve()}catch(n){i=Promise.reject(n)}return i}async importScript(t){let e=await import(ge(t));e[Le]&&await this.importModule(e[Le])}async importModule(t){return Ve(this.kernel,t,this.#t)}destroy(){this.kernel.destroy(),this.registry.clear(),this.#t.clear()}};function Ge(s){let t=new Blob([s],{type:"text/javascript"}),e=URL.createObjectURL(t),r=new Worker(e);return URL.revokeObjectURL(e),r}function Be(){return Ge('var xs=Object.defineProperty;var te=Object.getOwnPropertySymbols;var Fe=Object.prototype.hasOwnProperty,ze=Object.prototype.propertyIsEnumerable;var Ns=(t,e)=>(e=Symbol[t])?e:Symbol.for("Symbol."+t),Ve=t=>{throw TypeError(t)};var de=(t,e,s)=>e in t?xs(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,ce=(t,e)=>{for(var s in e||(e={}))Fe.call(e,s)&&de(t,s,e[s]);if(te)for(var s of te(e))ze.call(e,s)&&de(t,s,e[s]);return t};var $e=(t,e)=>{var s={};for(var i in t)Fe.call(t,i)&&e.indexOf(i)<0&&(s[i]=t[i]);if(t!=null&&te)for(var i of te(t))e.indexOf(i)<0&&ze.call(t,i)&&(s[i]=t[i]);return s};var c=(t,e,s)=>de(t,typeof e!="symbol"?e+"":e,s),fe=(t,e,s)=>e.has(t)||Ve("Cannot "+s);var r=(t,e,s)=>(fe(t,e,"read from private field"),s?s.call(t):e.get(t)),f=(t,e,s)=>e.has(t)?Ve("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,s),g=(t,e,s,i)=>(fe(t,e,"write to private field"),i?i.call(t,s):e.set(t,s),s),m=(t,e,s)=>(fe(t,e,"access private method"),s);var Ie=(t,e,s,i)=>({set _(a){g(t,e,a,s)},get _(){return r(t,e,i)}});var ge=function(t,e){this[0]=t,this[1]=e},Ge=(t,e,s)=>{var i=(n,h,p,l)=>{try{var d=s[n](h),u=(h=d.value)instanceof ge,v=d.done;Promise.resolve(u?h[0]:h).then(b=>u?i(n==="return"?n:"next",h[1]?{done:b.done,value:b.value}:b,p,l):p({value:b,done:v})).catch(b=>i("throw",b,p,l))}catch(b){l(b)}},a=n=>o[n]=h=>new Promise((p,l)=>i(n,h,p,l)),o={};return s=s.apply(t,e),o[Ns("asyncIterator")]=()=>o,a("next"),a("throw"),a("return"),o};var Ue;(function(t){t[t.StructuralChanges=1]="StructuralChanges",t[t.ContentUpdates=2]="ContentUpdates",t[t.Removal=3]="Removal"})(Ue||(Ue={}));var K;(function(t){t[t.CreateEntities=1]="CreateEntities",t[t.DestroyEntities=2]="DestroyEntities",t[t.SetParent=3]="SetParent",t[t.UpdateOrder=4]="UpdateOrder",t[t.ChangeProperties=5]="ChangeProperties",t[t.ChangeToken=6]="ChangeToken",t[t.SendEvents=7]="SendEvents"})(K||(K={}));var $i=Symbol.for("ShadowEntsGlobalNS"),Fs="configure",zs="changeTrail",Vs="destroy",$s="loaded",Be="appliedChangeTrail",pe="importedModule",Is="destroyed",Ee="messageToView",ye="shadowObjects",N="ConsoleLogger",j=`${N}Storage`,rs,as,ns,Gs=!!((ns=(as=(rs=globalThis.location)==null?void 0:rs.host)==null?void 0:as.startsWith("localhost"))!=null&&ns),Bt="localStorage"in globalThis,ee=Symbol.for(N),We=!1,qe=t=>{if(typeof t=="boolean")return t;switch(t.toLowerCase()){case"true":case"yes":case"on":return!0;default:return!1}},Se=t=>[Bt?N:void 0,...Array.isArray(t)?t:[t]].filter(Boolean).join(".");function ve(t,e=void 0,s){var o;let i=Se(t),a=Bt?localStorage.getItem(i):(o=globalThis[j])==null?void 0:o[i];return a!=null?e(a):s}function Ft(t,e){Bt?localStorage.setItem(Se(t),e):(globalThis[j]==null&&(globalThis[j]={},console.debug(`${N}: Initialize`,{[j]:globalThis[j]})),globalThis[j][Se(t)]=e)}var ft,Vt,y,Us=(y=class{constructor(e){f(this,ft);this.enable=!0,this.namespace=(e||"").trim()||N,We||(y.loadConfig(),We=!0);let s=[this.namespace,"enable"];this.enable=ve(s,qe,this.enable),Ft(s,Bt?this.enable?"true":"false":this.enable)}static get isEnabled(){return y.sharedConfig.enable}static get isDebug(){return y.sharedConfig.enable&&y.sharedConfig.debug}static loadConfig(){var e,s,i;Bt?(["enable","debug","info","warn"].forEach(a=>{this.sharedConfig[a]=ve(a,qe,this.sharedConfig[a])}),["debug","info","warn","error"].forEach(a=>{this.sharedStyles[a]=ve(["styles",a],void 0,this.sharedStyles[a])}),y.isDebug&&console.debug(`${N}: Load config from localStorage`,y.sharedConfig),(e=globalThis[N])!=null&&e[ee]||((s=globalThis[N])!=null||(globalThis[N]={[ee]:!0,get enable(){return y.sharedConfig.enable},set enable(a){y.sharedConfig.enable=a,Ft("enable",a?"true":"false")},get debug(){return y.sharedConfig.debug},set debug(a){y.sharedConfig.debug=a,Ft("debug",a?"true":"false")},get info(){return y.sharedConfig.info},set info(a){y.sharedConfig.info=a,Ft("info",a?"true":"false")},get warn(){return y.sharedConfig.warn},set warn(a){y.sharedConfig.warn=a,Ft("warn",a?"true":"false")}}))):(i=globalThis[j])!=null&&i[ee]||(globalThis[j]=ce(ce({[ee]:!0},y.sharedConfig),globalThis[j]),y.sharedConfig=globalThis[j],y.isDebug&&console.debug(`${N}: Load config from ${j}`,globalThis[j]))}get isEnabled(){return this.enable&&y.sharedConfig.enable}get isDebug(){return this.isEnabled&&y.sharedConfig.debug}get isInfo(){return this.isEnabled&&y.sharedConfig.info}get isWarn(){return this.isEnabled&&y.sharedConfig.warn}debug(...e){m(this,ft,Vt).call(this,"debug",y.sharedStyles.debug,e)}info(...e){m(this,ft,Vt).call(this,"info",y.sharedStyles.info,e)}warn(...e){m(this,ft,Vt).call(this,"warn",y.sharedStyles.warn,e)}error(...e){m(this,ft,Vt).call(this,"error",y.sharedStyles.error,e)}},ft=new WeakSet,Vt=function(e,s,i){console[e](`%c${this.namespace}`,s,...i)},y.sharedConfig={enable:Gs,debug:!1,info:!0,warn:!0,"styles.debug":"color: #111; background: #999; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em","styles.info":"color: #020; background: #8a8; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em","styles.warn":"color: #fa0; background: #a98; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em","styles.error":"color: #ff0; background: #a00; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em"},y.sharedStyles={get debug(){return y.sharedConfig["styles.debug"]},set debug(e){y.sharedConfig["styles.debug"]=e},get info(){return y.sharedConfig["styles.info"]},set info(e){y.sharedConfig["styles.info"]=e},get warn(){return y.sharedConfig["styles.warn"]},set warn(e){y.sharedConfig["styles.warn"]=e},get error(){return y.sharedConfig["styles.error"]},set error(e){y.sharedConfig["styles.error"]=e}},y),wt="*",ps=1,Te=2,De=4,ut=Symbol.for("eventize"),Bs="[eventize]",he=t=>t===wt,ys=t=>{switch(typeof t){case"string":case"symbol":return!0;default:return!1}},vs=typeof console<"u",Ws=vs?console[console.warn?"warn":"log"].bind(console,Bs):()=>{},qs=(t,e,s)=>(Object.defineProperty(t,e,{value:s,configurable:!0}),t),Js=0,bs=class{constructor(){c(this,"events",new Map);c(this,"eventNames",new Set)}static publish(t){t.sort((e,s)=>e.order-s.order).forEach(e=>e.emit())}add(t){Array.isArray(t)?t.forEach(e=>this.eventNames.add(e)):this.eventNames.add(t)}remove(t){Array.isArray(t)?t.forEach(e=>this.eventNames.delete(e)):this.eventNames.delete(t),this.clear(t)}clear(t){Array.isArray(t)?t.forEach(e=>this.events.delete(e)):this.events.delete(t)}retain(t,e){this.eventNames.has(t)&&this.events.set(t,{args:e,order:Js++})}isKnown(t){return this.eventNames.has(t)}emit(t,e,s=[]){if(he(t))this.eventNames.forEach(i=>this.emit(i,e,s));else if(this.events.has(t)){let{order:i,args:a}=this.events.get(t);s.push({order:i,emit:()=>e.apply(t,a)})}return s}},ke=(t,e,s,i)=>{if(typeof e=="function"){let a=e.apply(t,s);a!=null&&(i==null||i(a))}},Ks=(t,e,s,i)=>ke(e,e.emit,[t].concat(s),i),Ys=t=>{switch(typeof t){case"function":return ps;case"string":case"symbol":return Te;case"object":return De}},Hs=0,Xs=()=>++Hs,ms=class{constructor(t,e,s,i=null){c(this,"id");c(this,"eventName");c(this,"isCatchEmAll");c(this,"priority");c(this,"listener");c(this,"listenerObject");c(this,"listenerType");c(this,"callAfterApply");c(this,"isRemoved");c(this,"refCount");this.id=Xs(),this.eventName=t,this.isCatchEmAll=he(t),this.listener=s,this.listenerObject=i,this.priority=e,this.listenerType=Ys(s),this.callAfterApply=void 0,this.isRemoved=!1,this.refCount=1}isEqual(t,e=null){if(t===this)return!0;let s=typeof t;return s==="number"&&t===this.id?!0:e===null&&(s==="string"||s==="symbol")?t===wt||t===this.eventName:this.listener===t&&this.listenerObject===e}apply(t,e,s){if(this.isRemoved)return;let{listener:i,listenerObject:a}=this;switch(this.listenerType){case ps:ke(a,i,e,s),this.callAfterApply&&this.callAfterApply();break;case Te:ke(a,a[i],e,s),this.callAfterApply&&this.callAfterApply();break;case De:{let o=i[t];if(this.isCatchEmAll||this.eventName===t){if(typeof o=="function"){let n=o.apply(i,e);n!=null&&(s==null||s(n))}else Ks(t,i,e,s);this.callAfterApply&&this.callAfterApply()}break}}}},Qs=(t,e)=>t.priority!==e.priority?e.priority-t.priority:t.id-e.id,Je=t=>t==null?void 0:t.slice(0),Ke=(t,e)=>{let s=t.indexOf(e);s>-1&&t.splice(s,1)},Zs=t=>t===De||t===Te,Ae=(t,e,s)=>{let i=t.findIndex(a=>a.isEqual(e,s));i>-1&&(t[i].isRemoved=!0,t.splice(i,1))},se=(t,e,s)=>{let i=[];for(let a of t)(e==null&&a.listenerObject===s||a.eventName===e&&a.listener===s)&&i.push(a);for(let a of i)Ae(t,a,void 0)},be=t=>{t&&(t.forEach(e=>{e.isRemoved=!0}),t.length=0)},_s=(t,e)=>t.listenerType===e.listenerType?t.priority===e.priority&&t.eventName===e.eventName&&t.listenerObject===e.listenerObject&&t.listener===e.listener:!1,ti=(t,e)=>{if(Zs(t.listenerType))return e.find(s=>_s(t,s))},ei=(t,e)=>{let s=ti(t,e);return s?(s.refCount+=1,s):(e.push(t),e.sort(Qs),t)},si=class{constructor(){c(this,"namedListeners");c(this,"catchEmAllListeners");c(this,"getListenersForEventName",t=>{let e=this.namedListeners.get(t);return e||(e=[],this.namedListeners.set(t,e)),e});this.namedListeners=new Map,this.catchEmAllListeners=[]}add(t){return ei(t,t.isCatchEmAll?this.catchEmAllListeners:this.getListenersForEventName(t.eventName))}remove(t,e,s=!1){e==null&&Array.isArray(t)?t.forEach(i=>this.remove(i,null,s)):t==null||e==null&&he(t)?this.removeAllListeners():e==null&&ys(t)?be(this.namedListeners.get(t)):t instanceof ms?t.isRemoved||(t.refCount-=1,t.refCount<1&&(t.isRemoved=!0,this.namedListeners.forEach(i=>Ke(i,t)),Ke(this.catchEmAllListeners,t))):s?he(t)?se(this.catchEmAllListeners,wt,t):this.namedListeners.forEach(i=>se(i,t,e)):(this.namedListeners.forEach(i=>{Ae(i,t,e),se(i,void 0,t)}),Ae(this.catchEmAllListeners,t,e),se(this.catchEmAllListeners,void 0,t))}removeAllListeners(){this.namedListeners.forEach(t=>be(t)),this.namedListeners.clear(),be(this.catchEmAllListeners)}forEach(t,e){let s=Je(this.catchEmAllListeners),i=Je(this.namedListeners.get(t));if(t===wt||!i||i.length===0)s.forEach(e);else if(s.length===0)i.forEach(e);else{let a=i.length,o=s.length,n=0,h=0;for(;n<a||h<o;){if(n<a){let p=i[n];if(h>=o||p.priority>=s[h].priority){e(p),++n;continue}}h<o&&(e(s[h]),++h)}}}getSubscriptionCount(){let t=this.catchEmAllListeners.length;for(let e of this.namedListeners.values())t+=e.length;return t}},xt=t=>!!(t&&t[ut]);function Wt(t){if(xt(t))return t;let e=new si,s=new bs;return qs(t,ut,{keeper:s,store:e}),t}var Le={Max:Number.POSITIVE_INFINITY,AAA:1e9,BB:1e6,C:1e3,Default:0,Low:-1e4,Min:Number.NEGATIVE_INFINITY},ii=(t,e,s,i,a,o,n)=>{let h=t.add(new ms(s,i,a,o));return e.emit(s,h,n),h},ri=(t,e,s,i)=>{let a=s.length,o=typeof s[0],n,h,p,l;if(a>=2&&a<=3&&o==="number"?(n=wt,[h,p,l]=s):a>=3&&a<=4&&typeof s[1]=="number"?[n,h,p,l]=s:(h=Le.Default,o==="string"||o==="symbol"||Array.isArray(s[0])?[n,p,l]=s:(n=wt,[p,l]=s)),!p&&vs)throw Ws("called with insufficient arguments!",s),"subscribeTo() called with insufficient arguments!";let d=u=>v=>ii(t,e,v,u,p,l,i);return Array.isArray(n)?n.map(u=>Array.isArray(u)?d(u[1])(u[0]):d(h)(u)):d(h)(n)},ws=(t,e,s)=>{let i=[],a=ri(t,e,s,i);return bs.publish(i),a},Ye=t=>e=>{e.callAfterApply=()=>{t==null||t()}},Cs=(t,e)=>Object.assign(()=>T(t,e),Array.isArray(e)?{listeners:e}:{listener:e}),Es=(t,e,s,i)=>{let{store:a,keeper:o}=t[ut];Array.isArray(e)?e.forEach(n=>{a.forEach(n,h=>h.apply(n,s,i)),o.retain(n,s)}):e!==wt&&(a.forEach(e,n=>{n.apply(e,s,i)}),o.retain(e,s))},ot=(t,...e)=>{let s=Wt(t),{store:i,keeper:a}=s[ut];return Cs(s,ws(i,a,e))},A=(t,...e)=>{let s=Wt(t),{store:i,keeper:a}=s[ut],o=ws(i,a,e),n=Cs(s,o),h=!1,p=()=>{h||(n(),h=!0)};return Array.isArray(o)?o.forEach(Ye(p)):Ye(p)(o),p},ai=(t,e)=>new Promise(s=>{A(t,e,s)}),T=(t,e,s)=>{if(!xt(t))throw new Error("object is not eventized");let{store:i,keeper:a}=t[ut],o=typeof e,n=s!=null&&(o==="string"||o==="symbol");i.remove(e,s,n),Array.isArray(e)?a.remove(e.filter(h=>typeof h=="string")):ys(e)&&a.remove(e)},w=(t,e,...s)=>{if(!xt(t))throw new Error("object is not eventized");Es(t,e,s)},ni=(t,e,...s)=>{if(!xt(t))throw new Error("object is not eventized");let i=[];return Es(t,e,s,a=>{i.push(a)}),i=i.map(a=>Array.isArray(a)?Promise.all(a):Promise.resolve(a)),i.length>0?Promise.all(i):Promise.resolve()},Re=(t,e)=>{let s=Wt(t),{keeper:i}=s[ut];i.add(e)},le=(t,e)=>{if(!xt(t))throw new Error("object is not eventized");let{keeper:s}=t[ut];s.clear(e)},ht=(()=>{let t=(e={})=>Wt(e);return t.inject=(e={})=>(e=Wt(e),Object.assign(e,{on:(...s)=>ot(e,...s),once:(...s)=>A(e,...s),onceAsync:s=>ai(e,s),off:(s,i)=>T(e,s,i),emit:(s,...i)=>w(e,s,...i),emitAsync:(s,...i)=>ni(e,s,...i),retain:s=>Re(e,s),retainClear:s=>le(e,s)}),e),t.is=xt,t})(),Gt=ht(),Rt=ht(),kt=ht(),Ce,Kt,$t=(Ce=class{constructor(){f(this,Kt,new Set)}batch(t){r(this,Kt).add(t)}run(){w(kt,Array.from(r(this,Kt)))}},Kt=new WeakMap,c(Ce,"current"),Ce),oi=()=>$t.current;function ue(t){let e=$t.current;e?e=void 0:e=$t.current=new $t;try{t()}finally{e&&($t.current=void 0,e.run())}}var hi=0;function Ss(){return hi>0}var J=Symbol.for("signal"),Et=Symbol.for("effect"),He=Symbol.for("destroySignal"),Xe=Symbol.for("createEffect"),li=Symbol.for("destroyEffect"),zt="value",Qe="mute",Ze="unmute",Ut="destroy",tt=new Map,G,gt,F,X,U,pt,yt,z,_,Zt=(_=class{constructor(e){f(this,G,new Set);f(this,gt,new Set);f(this,F,new Map);f(this,X,new WeakMap);f(this,U,new Map);f(this,pt,new Set);f(this,yt,new Set);f(this,z);if(e!=null&&e instanceof _)return e;if(e!=null||(e=this),tt.has(e))return tt.get(e);tt.set(e,this),ht(this)}static get(e){if(e!=null)return e instanceof _?e:tt.get(e)}static findOrCreate(e){if(e==null)throw new Error("Cannot create a group with a null object");return new _(e)}static destroy(e){console.warn("SignalGroup.destroy(obj) is deprecated. Use SignalGroup.delete(obj) instead."),_.delete(e)}static delete(e){var s;(s=tt.get(e))==null||s.clear()}static clear(){for(let e of tt.values())e.destroy();tt.clear()}attachGroup(e){if(e===this)throw new Error("Cannot attach a group to itself");return r(this,G).add(e),r(e,z)&&r(e,z)!==this&&r(r(e,z),G).delete(e),g(e,z,this),e}detachGroup(e){return e!==this&&r(this,G).has(e)&&(r(this,G).delete(e),g(e,z,void 0)),e}attachSignal(e){let s=E(e);if(s!=null&&s.destroyed)throw new Error("Cannot attach a destroyed signal to a group");return s&&r(this,gt).add(s),e}attachSignalByName(e,s){if(s){this.attachSignal(s);let i=E(s);r(this,F).set(e,i),r(this,U).has(e)?r(this,U).get(e).push(i):r(this,U).set(e,[i]),r(this,X).has(i)?r(this,X).get(i).add(e):r(this,X).set(i,new Set([e]))}else r(this,F).delete(e);return s}hasSignal(e){var s;return r(this,F).has(e)||((s=r(this,z))==null?void 0:s.hasSignal(e))}signal(e){var s,i,a;return(a=(s=r(this,F).get(e))==null?void 0:s.object)!=null?a:(i=r(this,z))==null?void 0:i.signal(e)}detachSignal(e){let s=E(e);if(s&&(r(this,gt).delete(s),r(this,X).has(s))){let i=r(this,X).get(s);for(let a of i)if(r(this,U).has(a)){let o=r(this,U).get(a);o.splice(o.indexOf(s),1),o.length===0?(r(this,F).delete(a),r(this,U).delete(a)):r(this,F).get(a)===s&&r(this,F).set(a,o.at(-1))}i.clear(),r(this,X).delete(s)}return e}attachEffect(e){return r(this,pt).add(e),e}runEffects(){for(let e of r(this,pt))e.run();for(let e of r(this,G))e.runEffects()}attachLink(e){if(e!=null&&e.isDestroyed)throw new Error("Cannot attach a destroyed link to a group");return e&&r(this,yt).add(e),e}detachLink(e){return e&&r(this,yt).delete(e),e}destroy(){console.warn("SignalGroup#destroy is deprecated. Use SignalGroup#clear instead."),this.clear()}clear(){var e;w(this,Ut,this),T(this);for(let s of r(this,G))s.destroy();for(let s of r(this,pt))s.destroy();for(let s of r(this,gt))H(s);for(let s of r(this,yt))s.destroy();r(this,G).clear(),r(this,gt).clear(),r(this,F).clear(),r(this,U).clear(),r(this,pt).clear(),r(this,yt).clear(),(e=r(this,z))==null||e.detachGroup(this),tt.delete(this)}},G=new WeakMap,gt=new WeakMap,F=new WeakMap,X=new WeakMap,U=new WeakMap,pt=new WeakMap,yt=new WeakMap,z=new WeakMap,_),os,ui=(os=Et,class{constructor(t){c(this,os);c(this,"run",()=>{var t;return(t=this[Et])==null?void 0:t.run()});c(this,"destroy",()=>{var t;(t=this[Et])==null||t.destroy(),this[Et]=void 0});this[Et]=t,A(t,Os.Destroy,()=>{this[Et]=void 0})}}),Yt,Ht,hs,ks=(hs=class{constructor(t="id",e=1){f(this,Yt);f(this,Ht);g(this,Yt,t),g(this,Ht,e)}make(){return Symbol(`${r(this,Yt)}${Ie(this,Ht)._++}`)}},Yt=new WeakMap,Ht=new WeakMap,hs),Oe=[],As=()=>Oe.at(-1),di=(t,e)=>{Oe.push(t);try{return e()}finally{Oe.pop()}},ci=t=>t!=null&&typeof t.then=="function",k,et,st,vt,bt,Pt,Os=(k=class{constructor(e,s){c(this,"id");c(this,"callback");f(this,et);f(this,st,new Set);f(this,vt,new Set);c(this,"parentEffect");c(this,"childEffects",[]);c(this,"curChildEffectSlot",0);c(this,"autorun",!0);c(this,"shouldRun",!0);f(this,bt);f(this,Pt,!1);c(this,"run",()=>{if(r(this,Pt)||!this.shouldRun)return;let e=oi();e?e.batch(this.id):(this.runCleanupCallback(),this.curChildEffectSlot=0,this.shouldRun=!1,this.hasStaticDeps()?g(this,et,this.callback()):g(this,et,di(this,this.callback)))});c(this,"destroy",()=>{r(this,Pt)||(w(this,k.Destroy,this),T(this),w(kt,li,this),this.runCleanupCallback(),T(Gt,this),T(kt,this),T(Rt,this),g(this,Pt,!0),r(this,st).clear(),r(this,vt).clear(),this.childEffects.forEach(e=>{e.destroy()}),this.childEffects.length=0,--k.count)});var a;ht(this),this.callback=e;let i;(s==null?void 0:s.attach)!=null&&(i=Zt.findOrCreate(s.attach),i.attachEffect(this)),this.autorun=(a=s==null?void 0:s.autorun)!=null?a:!0,g(this,bt,s!=null&&s.dependencies?s.dependencies.map(o=>{switch(typeof o){case"string":case"symbol":return i.signal(o);default:return o}}):void 0),this.id=k.idGen.make(),ot(kt,this.id,"recall",this),++k.count}hasStaticDeps(){return r(this,bt)!=null&&r(this,bt).length>0}saveSignalsFromDeps(){for(let e of r(this,bt))this.whenSignalIsRead(E(e).id)}static createEffect(e,s,i){let a=Array.isArray(s)?s:void 0,o=a?i!=null?i:{dependencies:a}:s;o&&a&&(o.dependencies=a);let n,h=As();return h!=null?(n=h.getCurrentChildEffect(),n==null&&(n=new k(e,o),h.attachChildEffect(n),w(kt,Xe,n)),h.curChildEffectSlot++):(n=new k(e,o),w(kt,Xe,n)),n.hasStaticDeps()?n.saveSignalsFromDeps():n.autorun&&n.run(),new ui(n)}getCurrentChildEffect(){return this.childEffects[this.curChildEffectSlot]}attachChildEffect(e){this.childEffects.push(e),this.parentEffect=this}recall(){this.shouldRun=!0,this.autorun&&this.run()}whenSignalIsRead(e){r(this,st).has(e)||(r(this,st).add(e),ot(Gt,e,"recall",this),A(Rt,e,He,this))}[He](e){!r(this,vt).has(e)&&r(this,st).has(e)&&(r(this,vt).add(e),T(Gt,e,this),r(this,vt).size===r(this,st).size&&this.destroy())}runCleanupCallback(){if(r(this,et)!=null){let e=r(this,et);g(this,et,void 0),ci(e)?Promise.resolve(e).then(s=>{typeof s=="function"&&s()}):e()}}},et=new WeakMap,st=new WeakMap,vt=new WeakMap,bt=new WeakMap,Pt=new WeakMap,c(k,"idGen",new ks("ef")),c(k,"Destroy","destroy"),c(k,"count",0),k),_t=(...t)=>Os.createEffect(...t),qt=new WeakMap,fi=t=>{let e=qt.get(t);return e||(e={},qt.set(t,e)),e},Jt=(t,e)=>{var s,i;return(i=(s=qt.get(t))==null?void 0:s.signals)==null?void 0:i.get(e)},gi=(t,e,s)=>{var a;let i=fi(t);(a=i.signals)!=null||(i.signals=new Map),i.signals.set(e,s)};function pi(...t){for(let e of t)if(qt.has(e)){let s=qt.get(e);if(s.signals){for(let i of s.signals.values())H(i);s.signals.clear(),s.signals=void 0}}}function yi(t){let e=E(Ne(t)?t:Jt(...t));e!=null&&!e.muted&&!e.destroyed&&Pe(e.id,e.value,{touch:!0})}function xe(t){var e,s;return Ne(t)?(e=E(t))==null?void 0:e.value:(s=E(Jt(...t)))==null?void 0:s.value}var ls,vi=(ls=J,class{constructor(t){c(this,ls);this[J]=t}get get(){return this[J].reader}get set(){return this[J].writer}get value(){return xe(this.get)}set value(t){this.set(t)}onChange(t){let{destroy:e}=_t(()=>t(this.value),[this.get]);return e}get muted(){return this[J].muted}set muted(t){this[J].muted=t}touch(){yi(this)}destroy(){H(this)}}),bi=new ks("si");function _e(t){var e;Ss()||((e=As())==null||e.whenSignalIsRead(t))}function Pe(t,e,s){Ss()||w(Gt,t,e,s)}var Ne=t=>t!=null&&t[J]!=null,mi=t=>{let e=s=>{var i;return s?_t(()=>(t.destroyed||_e(t.id),s(t.value)),[e]):t.destroyed||((i=t.beforeRead)==null||i.call(t),_e(t.id)),t.value};return Object.defineProperty(e,J,{value:t}),e},mt,V,Ps=(mt=class{constructor(e,s){c(this,"id");c(this,"lazy");c(this,"compare");c(this,"beforeRead");c(this,"muted",!1);c(this,"destroyed",!1);f(this,V);c(this,"valueFn");c(this,"reader");c(this,"writer",(e,s)=>{var o,n,h,p;let i=(o=s==null?void 0:s.lazy)!=null?o:!1,a=(h=(n=s==null?void 0:s.compare)!=null?n:this.compare)!=null?h:(l,d)=>l===d;if((i!==this.lazy||i&&e!==this.valueFn||!i&&!a(e,r(this,V)))&&(i?(g(this,V,void 0),this.valueFn=e,this.lazy=!0):(g(this,V,e),this.valueFn=void 0,this.lazy=!1),!this.muted&&!this.destroyed)){Pe(this.id,r(this,V));return}(p=s==null?void 0:s.touch)!=null&&p&&Pe(this.id,r(this,V),{touch:!0})});c(this,"object");this.id=bi.make(),++mt.instanceCount,this.lazy=e,this.lazy?(this.value=void 0,this.valueFn=s):(this.value=s,this.valueFn=void 0),this.reader=mi(this),this.object=new vi(this)}get[J](){return this}get value(){return this.lazy&&(g(this,V,this.valueFn()),this.valueFn=void 0,this.lazy=!1),r(this,V)}set value(e){g(this,V,e)}},V=new WeakMap,c(mt,"instanceCount",0),mt),E=t=>t==null?void 0:t[J];function D(t=void 0,e){var i;let s;if(Ne(t))s=E(t);else{let a=(i=e==null?void 0:e.lazy)!=null?i:!1;s=new Ps(a,t),s.beforeRead=e==null?void 0:e.beforeRead,s.compare=e==null?void 0:e.compare}return(e==null?void 0:e.attach)!=null&&Zt.findOrCreate(e.attach).attachSignal(s),s.object}var H=(...t)=>{for(let e of t){let s=E(e);s!=null&&!s.destroyed&&(s.destroyed=!0,s.beforeRead=void 0,--Ps.instanceCount,w(Rt,s.id,s.id))}};function wi(t,e){let s=D(),i=(e==null?void 0:e.attach)!=null?Zt.findOrCreate(e.attach):void 0;i!=null&&(e!=null&&e.name?i.attachSignalByName(e.name,s):i.attachSignal(s));let a=_t(()=>s.set(t()),{autorun:!1,attach:i}),o=E(s);return o.beforeRead=a.run,A(Rt,o.id,a.destroy),s.get}var S,Mt,us,Ms=(us=class{constructor(t){f(this,S,!1);f(this,Mt);c(this,"source");c(this,"lastValue");c(this,"isDestroyed",!1);ht(this),this.source=E(t),g(this,Mt,ot(Gt,this.source.id,(e,s)=>{!r(this,S)&&!this.isDestroyed&&((s==null?void 0:s.touch)===!0?this.touch():this.write())})),A(Rt,this.source.id,()=>this.destroy())}attach(t){let e=Zt.findOrCreate(t);return e.attachLink(this),A(this,Ut,()=>{e.detachLink(this)}),e}nextValue(){return new Promise((t,e)=>{let s=[],i=()=>s.forEach(a=>{a()});s.push(A(this,zt,a=>{i(),t(a)}),A(this,Ut,()=>{i(),e()}))})}asyncValues(t){return Ge(this,null,function*(){let e=0;for(;!this.isDestroyed;)try{let s=yield new ge(this.nextValue());if(t&&t(s,e++))break;Re(this,zt),yield s}catch(s){break}le(this,zt)})}destroy(){var t;this.isDestroyed||((t=r(this,Mt))==null||t.call(this),g(this,Mt,void 0),w(this,Ut,this),le(this,zt),T(this),this.lastValue=void 0,this.isDestroyed=!0,Object.freeze(this))}get isMuted(){return r(this,S)}mute(){return!this.isDestroyed&&!r(this,S)&&(g(this,S,!0),w(this,Qe,this)),this}unmute(){return!this.isDestroyed&&r(this,S)&&(g(this,S,!1),w(this,Ze,this)),this}toggle(){return this.isDestroyed||(g(this,S,!r(this,S)),w(this,r(this,S)?Qe:Ze,this)),r(this,S)}updateValue(t){if(!r(this,S)&&!this.isDestroyed){let{value:e}=this.source;t(e),w(this,zt,e),this.lastValue=e}}},S=new WeakMap,Mt=new WeakMap,us),Ci=class extends Ms{constructor(e,s){super(e);c(this,"target");this.target=E(s),A(Rt,this.target.id,()=>this.destroy()),this.touch()}touch(){return this.updateValue(e=>{this.target.writer(e,{touch:!0})}),this}write(){this.updateValue(e=>{this.target.writer(e)})}},Ei=class extends Ms{constructor(e,s){super(e);c(this,"target");this.target=s,this.touch()}touch(){return this.updateValue(e=>{this.target(e)}),this}write(){this.updateValue(e=>{this.target(e)})}},ie=new Map;function Ot(t,e,s){var l;let i=E(t),a;if(ie.has(i)){a=ie.get(i);let d=(l=E(e))!=null?l:e;if(a.has(d))return a.get(d)}else a=new Map,ie.set(i,a);let o=E(e),n=o!=null?new Ci(t,o):new Ei(t,e),h=s==null?void 0:s.attach;h&&n.attach(h);let p=o!=null?o:e;return a.set(p,n),A(n,Ut,()=>{a.delete(p),a.size===0&&ie.delete(i)}),n}var O,jt,Si=(jt=class{constructor(){f(this,O,new Map)}static fromProps(e,s){let i=new jt,a=s?s.map(o=>[o,e[o]]):Object.entries(e);for(let[o,n]of a)r(i,O).set(o,D(n));return i}keys(){return r(this,O).keys()}signals(){return r(this,O).values()}entries(){return r(this,O).entries()}clear(){for(let e of r(this,O).values())e.destroy();r(this,O).clear()}has(e){return r(this,O).has(e)}get(e){if(!r(this,O).has(e)){let s=D();return r(this,O).set(e,s),s}return r(this,O).get(e)}update(e){e.size&&ue(()=>{for(let[s,i]of e.entries())this.get(s).set(i)})}updateFromProps(e,s){ue(()=>{let i=s?s.map(a=>[a,e[a]]):Object.entries(e);for(let[a,o]of i)this.get(a).set(o)})}},O=new WeakMap,jt);function ki(t,e,s,i,a,o){function n(Nt){if(Nt!==void 0&&typeof Nt!="function")throw new TypeError("Function expected");return Nt}for(var h=i.kind,p=h==="getter"?"get":h==="setter"?"set":"value",l=!e&&t?i.static?t:t.prototype:null,d=e||(l?Object.getOwnPropertyDescriptor(l,i.name):{}),u,v=!1,b=s.length-1;b>=0;b--){var dt={};for(var Ct in i)dt[Ct]=Ct==="access"?{}:i[Ct];for(var Ct in i.access)dt.access[Ct]=i.access[Ct];dt.addInitializer=function(Nt){if(v)throw new TypeError("Cannot add initializers after decoration has completed");o.push(n(Nt||null))};var ct=(0,s[b])(h==="accessor"?{get:d.get,set:d.set}:d[p],dt);if(h==="accessor"){if(ct===void 0)continue;if(ct===null||typeof ct!="object")throw new TypeError("Object expected");(u=n(ct.get))&&(d.get=u),(u=n(ct.set))&&(d.set=u),(u=n(ct.init))&&a.unshift(u)}else(u=n(ct))&&(h==="field"?a.unshift(u):d[p]=u)}l&&Object.defineProperty(l,i.name,d),v=!0}function ts(t,e,s){for(var i=arguments.length>2,a=0;a<e.length;a++)s=i?e[a].call(t,s):e[a].call(t);return i?s:void 0}function Ai(t){return function(e,s){var o;let i=(t==null?void 0:t.name)||s.name,a=!!((o=t==null?void 0:t.readAsValue)!=null&&o);return{get(){let n=Jt(this,i);if(n)return a?n.value:n.get()},set(n){var h;(h=Jt(this,i))==null||h.set(n)},init(n){let h=D(n,t);return gi(this,i,h),Zt.findOrCreate(this).attachSignalByName(i,h),h.value}}}}var St="value",Me=(()=>{var i,a,o,n,ae,It,l;let t,e=[],s=[];return l=class{constructor(u){f(this,n);f(this,i);f(this,a);f(this,o);g(this,i,[]),g(this,o,ts(this,e,void 0)),this.value$=ts(this,s),Re(this,St),this.value$=Jt(this,St),this.value$.onChange(v=>w(this,St,v)),u&&this.add(...u)}get value(){return r(this,o)}set value(u){g(this,o,u)}add(...u){return r(this,i).push(...u),m(this,n,It).call(this),m(this,n,ae).call(this,u)}unshift(...u){return r(this,i).unshift(...u),m(this,n,It).call(this),m(this,n,ae).call(this,u)}remove(...u){m(this,n,ae).call(this,u)()}clear(){r(this,i).length=0,m(this,n,It).call(this)}dispose(){var u;this.clear(),(u=r(this,a))==null||u.destroy(),g(this,a,void 0),le(this,St),T(this),this.value$.destroy(),pi(this)}},i=new WeakMap,a=new WeakMap,o=new WeakMap,n=new WeakSet,ae=function(u){return()=>{for(let v of u){let b=r(this,i).indexOf(v);b!==-1&&r(this,i).splice(b,1)}m(this,n,It).call(this)}},It=function(){var u;(u=r(this,a))==null||u.destroy(),r(this,i).length===0?(g(this,a,void 0),this.value=void 0):(g(this,a,_t(()=>{let v;for(let b of r(this,i)){let dt=xe(b);if(dt!=null){v=dt;break}}this.value=v},r(this,i))),r(this,a).run())},(()=>{let u=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;t=[Ai({name:St})],ki(l,null,t,{kind:"accessor",name:"value",static:!1,private:!1,access:{has:v=>"value"in v,get:v=>v.value,set:(v,b)=>{v.value=b}},metadata:u},e,s),u&&Object.defineProperty(l,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:u})})(),l.Value=St,l})(),es="onCreate",At="onDestroy",Oi="onParentChanged",Pi="onViewEvent",me=new Map,we=!1,Mi=(t,e)=>{me.set(t,e),we||(we=!0,queueMicrotask(()=>{we=!1;let s=Array.from(me.entries());me.clear();for(let[i,a]of s)i.set(a)}))},B,Tt,it,$,rt,R,P,Q,x,Dt,L,je,at,ne,oe,ds,ji=(ds=class{constructor(t,e){f(this,L);f(this,B);f(this,Tt);f(this,it,new Si);f(this,$,new Map);f(this,rt,new Map);f(this,R);f(this,P);f(this,Q,new Set);f(this,x,[]);f(this,Dt,0);f(this,at);g(this,B,t),g(this,Tt,e),A(this,At,Le.Min,this)}get kernel(){return r(this,B)}get uuid(){return r(this,Tt)}get order(){return r(this,Dt)}set order(t){r(this,Dt)!==t&&(g(this,Dt,t),r(this,R)&&this.parent.resortChildren())}get parentUuid(){return r(this,R)||void 0}set parentUuid(t){r(this,R)!==t&&(this.removeFromParent(),g(this,R,t||void 0),g(this,P,t?r(this,B).getEntity(t):void 0),r(this,P)&&r(this,P).addChild(this))}get parent(){return!r(this,P)&&r(this,R)&&g(this,P,r(this,B).getEntity(r(this,R))),r(this,P)}set parent(t){this.parentUuid=t==null?void 0:t.uuid}get hasParent(){return!!r(this,R)}get children(){return r(this,x)}traverse(t){t(this);for(let e of r(this,x))e.traverse(t)}onDestroy(){var t;r(this,it).clear(),T(this);for(let e of r(this,rt).values())e.cleanup(),e.signal.destroy();r(this,rt).clear();for(let e of r(this,$).values())e.context.set(void 0),e.unsubscribePathValue(),(t=e.unsubscribeFromParent)==null||t.call(e),e.valuePath.dispose(),e.inherited.destroy(),e.provide.destroy(),e.context.destroy();g(this,R,void 0),g(this,P,void 0),r(this,Q).clear(),r(this,x).length=0}addChild(t){var e;if(r(this,x).length===0){r(this,Q).add(t.uuid),r(this,x).push(t);return}if(r(this,Q).has(t.uuid))throw new Error(`child with uuid: ${t.uuid} already exists! parentUuid: ${this.uuid}`);r(this,Q).add(t.uuid),r(this,x).push(t),this.resortChildren();for(let[,s]of r(t,$))m(e=t,L,oe).call(e,s)}resortChildren(){r(this,x).sort((t,e)=>t.order-e.order)}removeChild(t){r(this,Q).has(t.uuid)&&(r(this,Q).delete(t.uuid),r(this,x).splice(r(this,x).indexOf(t),1))}removeFromParent(){if(r(this,P)){r(this,P).removeChild(this),g(this,P,void 0),g(this,R,void 0);for(let[,t]of r(this,$))t.unsubscribeFromParent&&(t.unsubscribeFromParent(),t.unsubscribeFromParent=void 0)}}reSubscribeToParentContexts(){for(let[,t]of r(this,$))m(this,L,oe).call(this,t)}dispatchMessageToView(t,e,s,i=!1){r(this,B).dispatchMessageToView({uuid:r(this,Tt),type:t,data:e,transferables:s,traverseChildren:i})}dispatchViewEvents(t){for(let{type:e,data:s}of t)w(this,Pi,e,s)}dispatchViewEvent(t,e){this.dispatchViewEvents([{type:t,data:e}])}getPropertyReader(t){return m(this,L,je).call(this,t).get}getPropertyWriter(t){return m(this,L,je).call(this,t).set}setProperties(t){this.clearTruthyPropsCache(),ue(()=>{for(let[e,s]of t)this.setProperty(e,s)})}setProperty(t,e){this.getPropertyWriter(t)(e)}getProperty(t){return xe(this.getPropertyReader(t))}propKeys(){return Array.from(r(this,it).keys())}propEntries(){return Array.from(r(this,it).entries()).map(([t,e])=>[t,e.value])}clearTruthyPropsCache(){g(this,at,void 0)}truthyProps(){if(r(this,at))return r(this,at).size?r(this,at):void 0;let t=new Set;for(let[e,s]of r(this,it).entries())if(typeof e=="string"){let i=s.value;i!=null&&i!==!1&&i!==""&&t.add(e)}return g(this,at,t),t.size?t:void 0}hasContext(t){return r(this,$).has(t)}useContext(t){return m(this,L,ne).call(this,t).context.get}provideContext(t){return m(this,L,ne).call(this,t).provide}provideGlobalContext(t){if(r(this,rt).has(t))return r(this,rt).get(t).signal;let e=r(this,B).findOrCreateRootContext(t),s=D(),i=e.add(s);return r(this,rt).set(t,{cleanup:i,signal:s}),s}},B=new WeakMap,Tt=new WeakMap,it=new WeakMap,$=new WeakMap,rt=new WeakMap,R=new WeakMap,P=new WeakMap,Q=new WeakMap,x=new WeakMap,Dt=new WeakMap,L=new WeakSet,je=function(t){return r(this,it).get(t)},at=new WeakMap,ne=function(t){if(r(this,$).has(t))return r(this,$).get(t);let e=D(),s=D(),i=D(),a=new Me([s,e]),o=ot(a,Me.Value,h=>{Mi(i,h)}),n={name:t,inherited:e,provide:s,context:i,valuePath:a,unsubscribePathValue:o};return r(this,$).set(t,n),m(this,L,oe).call(this,n),n},oe=function(t){var e,s;if((e=t.unsubscribeFromParent)==null||e.call(t),t.unsubscribeFromParent=void 0,this.parent){let i=m(s=this.parent,L,ne).call(s,t.name),a=Ot(i.context,t.inherited);t.unsubscribeFromParent=a.destroy.bind(a)}else{let i=r(this,B).findOrCreateRootContext(t.name),a=Ot(i.value$,t.inherited);t.unsubscribeFromParent=a.destroy.bind(a)}},ds);function Ti(t,e){t.indexOf(e)===-1&&t.push(e)}var ss=t=>{let e=t.split("@").map(s=>s.trim());if(e.length===2&&e[1])return e[0]?{key:`${e[0]}@${e[1]}`,prop:e[1],token:e[0]}:{key:e[1],prop:e[1]}},re=(t,e)=>{for(let s of e)t.add(s)},Di=(t,e)=>{if(t!=null)for(let s of t.constructors)e.add(s)},Z,M,I,cs,js=(cs=class{constructor(){f(this,Z,new Map);f(this,M,new Map);f(this,I,new Map)}static get(t){return t!=null?t:Li}define(t,e){r(this,Z).has(t)?Ti(r(this,Z).get(t).constructors,e):r(this,Z).set(t,{token:t,constructors:[e]})}appendRoute(t,e){let s=ss(t);s?r(this,I).has(s.key)?re(r(this,I).get(s.key).routes,e):r(this,I).set(s.key,{routes:new Set(e),token:s.token}):r(this,M).has(t)?re(r(this,M).get(t),e):r(this,M).set(t,new Set(e))}clearRoute(t){let e=ss(t);e?r(this,I).delete(e.key):r(this,M).delete(t)}findTokensByRoute(t,e){let s=new Set([t]),i=r(this,M).has(t)?[...r(this,M).get(t)]:[];for(;i.length;){let a=i.shift();s.has(a)||(s.add(a),r(this,M).has(a)&&i.push(...Array.from(r(this,M).get(a)).filter(o=>!s.has(o))))}if(e){for(let o of e)r(this,I).has(o)&&re(s,r(this,I).get(o).routes);let a;do{a=s.size;for(let o of new Set(s))for(let n of e){let h=`${o}@${n}`;r(this,I).has(h)&&re(s,r(this,I).get(h).routes)}}while(a!==s.size)}return s}findConstructors(t,e){let s=this.findTokensByRoute(t,e),i=new Set;for(let a of s)Di(r(this,Z).get(a),i);return i.size>0?Array.from(i):void 0}hasToken(t){return r(this,Z).has(t)}hasRoute(t){return r(this,M).has(t)}clear(){r(this,Z).clear(),r(this,M).clear()}},Z=new WeakMap,M=new WeakMap,I=new WeakMap,cs),Li=new js,Y;(function(t){t[t.CreateAndDestroy=0]="CreateAndDestroy",t[t.JustCreate=1]="JustCreate",t[t.DestroyOnly=2]="DestroyOnly"})(Y||(Y={}));var is=t=>t.displayName||t.name,C,W,Lt,Xt,q,nt,fs,Ri=(fs=class{constructor(t){f(this,C);f(this,W);f(this,Lt);f(this,Xt);f(this,q);f(this,nt);this.logger=new Us("Kernel"),g(this,C,new Map),g(this,W,new Set),g(this,q,!0),g(this,nt,new Map),ht(this),this.registry=js.get(t)}getEntity(t){var s;let e=(s=r(this,C).get(t))==null?void 0:s.entity;if(!e)throw new Error(`entity with uuid "${t}" not found!`);return e}hasEntity(t){return r(this,C).has(t)}traverseLevelOrderBFS(t=!1){if(r(this,q)){let e=new Map,s=(i,a)=>{let o=this.getEntity(i);e.has(a)?e.get(a).push(o):e.set(a,[o]);for(let n of o.children)s(n.uuid,a+1)};r(this,W).forEach(i=>s(i,0)),g(this,Lt,Array.from(e.entries()).sort((i,a)=>i[0]-a[0]).map(([,i])=>i).flat()),g(this,Xt,r(this,Lt).slice().reverse()),g(this,q,!1)}return t?r(this,Xt):r(this,Lt)}getEntityGraph(){return Array.from(r(this,W)).map(t=>this.getEntityGraphNode(t))}getEntityGraphNode(t){if(!r(this,C).has(t))return;let{token:e,entity:s}=r(this,C).get(t);return{token:e,entity:s,props:Object.fromEntries(s.propEntries()),children:s.children.map(i=>this.getEntityGraphNode(i.uuid))}}upgradeEntities(){let t=new Map;for(let e of this.traverseLevelOrderBFS(!0))t.set(e.uuid,this.updateShadowObjects(e.uuid,Y.DestroyOnly));for(let e of this.traverseLevelOrderBFS(!1))this.updateShadowObjects(e.uuid,Y.JustCreate,t.get(e.uuid));t.clear()}run(t){this.logger.isDebug&&this.logger.debug("sync",t),ue(()=>{for(let e of t.changeTrail)this.parse(e)})}parse(t){switch(t.type){case K.CreateEntities:this.createEntity(t.uuid,t.token,t.parentUuid,t.order,t.properties),g(this,q,!0);break;case K.DestroyEntities:this.destroyEntity(t.uuid),g(this,q,!0);break;case K.SetParent:this.setParent(t.uuid,t.parentUuid,t.order),g(this,q,!0);break;case K.UpdateOrder:this.updateOrder(t.uuid,t.order),g(this,q,!0);break;case K.ChangeProperties:this.changeProperties(t.uuid,t.properties);break;case K.ChangeToken:this.changeToken(t.uuid,t.token);break;case K.SendEvents:this.dispatchEventsToEntity(t.uuid,t.events);break}}createEntity(t,e,s,i=0,a){let o=new ji(this,t);o.order=i;let n={token:e,entity:o,usedConstructors:new Map};r(this,C).set(t,n),s&&(o.parentUuid=s),o.hasParent||r(this,W).add(t),a&&o.setProperties(a),this.createShadowObjects(t)}destroyEntity(t){if(!r(this,C).has(t))return;let{entity:e,usedConstructors:s}=r(this,C).get(t);e.removeFromParent(),w(e,At,this),s.clear(),r(this,C).delete(e.uuid),r(this,W).delete(e.uuid)}setParent(t,e,s=0){let i=this.getEntity(t);i.parentUuid===e&&i.order===s||(i.removeFromParent(),i.order=s,i.parentUuid=e,i.hasParent?r(this,W).delete(t):r(this,W).add(t),i.reSubscribeToParentContexts(),queueMicrotask(()=>{this.logger.isDebug&&this.logger.debug("entity.onParentChanged",{uuid:t,parentUuid:e,order:s,entity:i}),w(i,Oi,i)}))}updateOrder(t,e){this.getEntity(t).order=e}dispatchEventsToEntity(t,e){var s;(s=this.getEntity(t))==null||s.dispatchViewEvents(e)}changeProperties(t,e){this.getEntity(t).setProperties(e),this.updateShadowObjects(t)}changeToken(t,e){if(!r(this,C).has(t))return;let s=r(this,C).get(t);s.token!==e&&(s.token=e,this.updateShadowObjects(t))}dispatchMessageToView(t){queueMicrotask(()=>{w(this,Ee,t)})}updateShadowObjects(t,e=Y.CreateAndDestroy,s){let i=r(this,C).get(t);s!=null||(s=new Set(this.registry.findConstructors(i.token,i.entity.truthyProps())));let a=e===Y.CreateAndDestroy||e===Y.DestroyOnly,o=e===Y.CreateAndDestroy||e===Y.JustCreate;if(a){for(let[n,h]of i.usedConstructors)if(!s.has(n)){i.usedConstructors.delete(n);for(let p of h)this.destroyShadowObject(p,i.entity)}}if(o)for(let n of s)i.usedConstructors.has(n)||this.constructShadowObject(n,i);return s}constructShadowObject(t,e){let s=new Set,i=new Set,a=new Map,o=new Map,n=new Map,h=new Map,p=ht(new t({entity:e.entity,provideContext(l,d,u){let v=o.get(l);if(v==null){v=D(d,u?{compare:u}:void 0);let b=Ot(v,e.entity.provideContext(l));i.add(b.destroy.bind(b)),o.set(l,v)}return v},provideGlobalContext(l,d,u){let v=n.get(l);if(v==null){v=D(d,u?{compare:u}:void 0);let b=Ot(v,e.entity.provideGlobalContext(l));i.add(b.destroy.bind(b)),n.set(l,v)}return v},useContext(l,d){let u=a.get(l);if(u===void 0){u=D(void 0,d?{compare:d}:void 0).get,a.set(l,u);let v=Ot(e.entity.useContext(l),u);i.add(v.destroy.bind(v))}return u},useProperty(l,d){let u=h.get(l);if(u===void 0){u=D(void 0,d?{compare:d}:void 0).get,h.set(l,u);let v=Ot(e.entity.getPropertyReader(l),u);i.add(v.destroy.bind(v))}return u},createEffect(...l){let d=_t(...l);return i.add(d.destroy),d},createSignal(...l){let d=D(...l);return i.add(()=>{H(d)}),d},createMemo(...l){let d=wi(...l);return i.add(()=>{H(d)}),d},on(...l){let d=ot(...l);return i.add(d),d},once(...l){let d=A(...l);return i.add(d),d},onDestroy(l){s.add(l)}}));return this.logger.isInfo&&this.logger.info("create shadow-object",is(t),{shadowObject:p,entity:e.entity}),A(e.entity,At,Le.Low,()=>{this.logger.isInfo&&this.logger.info("destroy shadow-object",is(t),{shadowObject:p,entity:e.entity});for(let d of s)d();for(let d of i)d();for(let d of a.values())H(d);for(let d of h.values())H(d);for(let d of o.values())H(d);for(let d of n.values())H(d);s.clear(),i.clear(),a.clear(),h.clear(),o.clear(),n.clear();let l=e.usedConstructors.get(t);l&&(l.delete(p),l.size===0&&e.usedConstructors.delete(t))}),e.usedConstructors.has(t)?e.usedConstructors.get(t).add(p):e.usedConstructors.set(t,new Set([p])),this.attachShadowObject(p,e.entity),p}createShadowObjects(t){var s;let e=r(this,C).get(t);(s=this.registry.findConstructors(e.token,e.entity.truthyProps()))==null||s.forEach(i=>{this.constructShadowObject(i,e)})}findShadowObjects(t){if(!r(this,C).has(t))return[];let{usedConstructors:e}=r(this,C).get(t);return Array.from(new Set(Array.from(e.values()).map(s=>Array.from(s)).flat()))}attachShadowObject(t,e){ot(e,t),typeof t[es]=="function"&&t[es](e)}destroyShadowObject(t,e){typeof t[At]=="function"&&t[At](e),w(t,At,e),T(e,t)}findOrCreateRootContext(t){let e=r(this,nt).get(t);return e||(e=new Me,r(this,nt).set(t,e)),e}destroy(){for(let t of r(this,nt).values())t.dispose();r(this,nt).clear();for(let t of this.traverseLevelOrderBFS().reverse())this.destroyEntity(t.uuid)}},C=new WeakMap,W=new WeakMap,Lt=new WeakMap,Xt=new WeakMap,q=new WeakMap,nt=new WeakMap,fs);async function Ts(t,e,s,i=!0){var o,n;if(s.has(e)){console.warn("importModule: skipping already imported module",e);return}else s.add(e);e.extends&&await Promise.all(e.extends.map(h=>Ts(t,h,s,!1)));let{registry:a}=t;if(e.define)for(let[h,p]of Object.entries(e.define))a.define(h,p);if(e.routes)for(let[h,p]of Object.entries(e.routes))a.appendRoute(h,p);await((n=(o=e.initialize)==null?void 0:o.call(e,{define:(h,p)=>a.define(h,p),kernel:t,registry:a}))!=null?n:Promise.resolve()),i&&t.upgradeEntities()}var xi=t=>(typeof t=="string"&&(t=new URL(t,globalThis.location.href)),t.toString()),Qt,lt,Ds,Ls,Rs,gs,Ni=(gs=class{constructor(t){f(this,lt);f(this,Qt,new Set);var e,s;this.kernel=(e=t==null?void 0:t.kernel)!=null?e:new Ri,this.postMessage=(s=t==null?void 0:t.postMessage)!=null?s:self.postMessage.bind(self),ot(this.kernel,Ee,"onMessageToView",this)}route(t){var e;switch(t.data.type){case Fs:m(this,lt,Ds).call(this,t.data);break;case zs:m(this,lt,Ls).call(this,t.data);break;case Vs:m(this,lt,Rs).call(this,t.data);break;default:console.warn("[MessageRouter] unknown message",(e=t.data.type)!=null?e:t.data)}}onMessageToView(t){let i=t,{transferables:e}=i,s=$e(i,["transferables"]);this.postMessage({type:Ee,data:s},{transfer:e})}},Qt=new WeakMap,lt=new WeakSet,Ds=async function(t){try{let e=await import(xi(t.importModule));e[ye]?(await Ts(this.kernel,e[ye],r(this,Qt)),this.postMessage({type:pe,url:t.importModule})):this.postMessage({type:pe,url:t.importModule,error:`module has no "${ye}" export`})}catch(e){console.error("[MessageRouter] failed to import module",e),this.postMessage({type:pe,url:t.importModule,error:`${e}`})}},Ls=function(t){try{this.kernel.run(t)}catch(e){console.error("[MessageRouter] failed to apply change trail",e),this.postMessage({type:Be,serial:t.serial,error:e.toString()})}t.serial&&this.postMessage({type:Be,serial:t.serial})},Rs=function(t){console.debug("[MessageRouter] on destroy",t),T(this.kernel,this),r(this,Qt).clear(),this.postMessage({type:Is})},gs),Fi=class{constructor(){this.onmessage=t=>{var e;t.data.type===N?globalThis[j]=t.data.config:((e=this.router)!=null||(this.router=new Ni),this.router.route(t))}}start(){self.addEventListener("message",this.onmessage),self.postMessage({type:$s})}};console.debug("@spearwolf/shadow-objects/WorkerRuntime: hello!");var zi=new Fi;zi.start();\n/*! Bundled license information:\n\n@spearwolf/eventize/lib/index.mjs:\n (*!\n =============================================================================\n @spearwolf/eventize 4.0.1+build.20240804\n \u2014 https://github.com/spearwolf/eventize.git\n =============================================================================\n \n Copyright 2015-2024 Wolfger Schramm\n \n Licensed under the Apache License, Version 2.0 (the "License");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an "AS IS" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n *)\n*/\n')}var Ds=()=>new Be;var jt=(s,t,e=1e3,r)=>new Promise((i,n)=>{let o,h,a=()=>{clearTimeout(o),s.removeEventListener("message",h)};e!==0&&e!==1/0&&(o=setTimeout(()=>{a(),n(new Error(`Timeout waiting for message of type: ${t}`))},e)),h=c=>{if(c.data.type===t)try{(!r||r(c.data))&&(a(),i())}catch(u){a(),n(u.toString())}},s.addEventListener("message",h)});var fr=s=>{let t;if(s!=null&&Array.isArray(s))for(let e of s)e.transferables&&(t?t=[...t,...e.transferables]:t=e.transferables,delete e.transferables);return t},me=class s{static{this.WorkerLoaded="workerLoaded"}#t;#e;#s;get isDestroyed(){return this.#e}get workerLoaded(){return ct(this,s.WorkerLoaded)}constructor(){this.#e=!1,this.#s=0,this.logger=new k("RemoteWorkerEnv"),W(this,s.WorkerLoaded)}async start(){if(this.#t)return this.logger.isWarn&&this.logger.warn("already started"),this.workerLoaded.then(()=>{if(this.isDestroyed)throw"worker was destroyed"});let t=this.#t=Ds();this.configureConsoleLogger(t);try{if(await jt(t,ds,ms),this.isDestroyed)throw"worker was destroyed";t.addEventListener("message",this.onMessageFromWorker.bind(this)),queueMicrotask(()=>{d(this,s.WorkerLoaded,this)})}catch(e){throw this.logger.error("failed to start",e),this.#t=void 0,e}}applyChangeTrail(t,e){let r=fr(t),i={type:cs,changeTrail:t},n=++this.#s;return e&&(i.serial=n),this.#t.postMessage(i,r),e?jt(this.#t,ps,vs,o=>{if(o.error)throw o.error;return o.serial===n}):Promise.resolve()}importScript(t){return t=ge(t),this.#t.postMessage({type:us,importModule:t}),jt(this.#t,gs,bs,e=>{if(e.error)throw e.error;return e.url===t})}destroy(){if(!this.#t)return;let t=this.#t;this.#t=void 0,this.#e=!0,t.postMessage({type:fs}),jt(t,ys,ws).finally(()=>{t.terminate()})}onMessageFromWorker(t){t.data?.type===yt?this.onMessageToView?.(t.data.data):this.logger.isDebug&&this.logger.debug("message from worker",t)}configureConsoleLogger(t){let e=`${M}.RemoteWorkerEnv.workerConfig`,r=JSON.parse(localStorage.getItem(e)??"{}");this.logger.isInfo&&this.logger.info("load console-logger worker config",{localStorageKey:e,workerConfig:r}),t.postMessage({type:M,config:{...k.sharedConfig,enable:this.logger.isEnabled,...r,...k.isEnabled?{}:{enable:!1}}})}};var Nt,Dt=class extends X{static{this.observedAttributes=[...X.observedAttributes,se,ie,re]}static{this.DefaultAutoSync="frame"}#t;#e;#s;#r;#i;constructor(){super(),this.isShaeWorkerElement=!0,this.shadowEnv=new $,this.logger=new k("ShaeWorkerElement"),this.autostart=!0,this.isConnected$=f(!1),this.autoSync$=f(Nt.DefaultAutoSync),this.src$=f(""),this.#t=!1,this.#e=!1,this.ns$.onChange(t=>{this.shadowEnv.view=L.get(t)}),y(this.shadowEnv,$.ContextCreated,()=>{this.#i?.run(),this.dispatchEvent(new CustomEvent($.ContextCreated.toLowerCase(),{bubbles:!1,detail:{shadowEnv:this.shadowEnv}}))}),y(this.shadowEnv,$.ContextLost,()=>{this.dispatchEvent(new CustomEvent($.ContextLost.toLowerCase(),{bubbles:!1,detail:{shadowEnv:this.shadowEnv}}))}),this.autoSync$.onChange(t=>{let e=this.hasAttribute(I),r=e?this.getAttribute(I):void 0;t===Nt.DefaultAutoSync?e&&r!==t&&this.setAttribute(I,t):r!==t&&this.setAttribute(I,t)}),this.#a(),this.#n()}#n(){this.#i=v(()=>{let t=this.src$.get();t&&this.importScript(t)},{autorun:!1})}get shouldAutostart(){return this.autostart&&!Mt(this,Ts)}get autoSync(){return this.autoSync$.value}set autoSync(t){typeof t!="string"&&(t=t?Nt.DefaultAutoSync:"no"),this.autoSync$.set(`${t}`.trim().toLowerCase())}get frameLoop(){return this.#s??=new mt,this.#s}[mt.OnFrame](){this.syncShadowObjects()}async importScript(t){if(!t)throw new Error("src is blank");let e=await this.shadowEnv.ready();return this.logger.isInfo&&this.logger.info("shadowEnv importScript:",t,{shadowEnv:e}),await e.envProxy.importScript(t),this}connectedCallback(){A(()=>{this.hasAttribute(I)&&this.autoSync$.set(this.getAttribute(I)),this.isConnected$.set(!0)}),this.shouldAutostart&&this.start()}disconnectedCallback(){this.isConnected$.set(!1),this.#o()}attributeChangedCallback(t){if(super.attributeChangedCallback(t),t===se&&this.shadowEnv.envProxy!=null)throw new Error('Changing the "local" attribute after the shadowEnv has been created is not supported.');if(t===re&&this.#h(),t===I&&(this.autoSync=this.hasAttribute(I)?this.getAttribute(I):!0),t===ie){let e=(this.getAttribute(ie)||"").trim();this.src$.set(e),this.shadowEnv.isReady&&this.#i?.run()}}start(){if(!this.#e){if(this.#t=!1,this.shadowEnv.view??=L.get(this.ns),this.shadowEnv.envProxy==null){let t=Mt(this,se)?new ye:new me;this.shadowEnv.envProxy=t,this.#h()}this.#e=!0}return this.shadowEnv.ready()}destroy(){this.#r?.destroy(),this.#i?.destroy(),S(this.isConnected$,this.autoSync$,this.src$),this.shadowEnv.envProxy=void 0,this.shadowEnv.destroy()}#o(){this.#t||(this.#t=!0,queueMicrotask(()=>{this.#t&&this.destroy()}))}#a(){this.#r=v(()=>{if(this.isConnected$.get()){let t=(this.autoSync$.get()||Nt.DefaultAutoSync).trim().toLowerCase(),e;if(["true","yes","on","frame","auto-sync"].includes(t))return this.logger.isDebug&&this.logger.debug("auto-sync",t,this),this.frameLoop.start(this),()=>{this.frameLoop.stop(this)};if(t.toLowerCase().endsWith("fps")){let r=parseInt(t,10);r>0?e=Math.floor(1e3/r):this.logger.isWarn&&this.logger.warn(`invalid auto-sync value: ${t}`)}else e=parseInt(t,10),isNaN(e)&&(e=void 0,["false","no","off"].includes(t)||this.logger.error(`invalid auto-sync value: ${t}`));if(e!==void 0&&e>0){this.logger.isDebug&&this.logger.debug("auto-sync interval (ms)",e,this);let r=setInterval(()=>{this.syncShadowObjects()},e);return()=>{clearInterval(r)}}else this.logger.isDebug&&this.logger.debug("auto-sync off",this)}},[this.autoSync$,this.isConnected$])}#h(){let t=this.shadowEnv.envProxy;t?.isLocalEnv&&(t.disableStructuredClone=this.hasAttribute(re))}};Nt=Dt;customElements.define(As,Dt);globalThis.SHADOW_ENTS_BUNDLE_LOADED=!0;
|
|
21
|
+
var rt="*",Je=1,Se=2,xe=4,W=Symbol.for("eventize"),Fs="[eventize]",Ft=s=>s===rt,Xe=s=>{switch(typeof s){case"string":case"symbol":return!0;default:return!1}},Ze=typeof console<"u",Ws=Ze?console[console.warn?"warn":"log"].bind(console,Fs):()=>{},zs=(s,t,e)=>(Object.defineProperty(s,t,{value:e,configurable:!0}),s),Us=0,ts=class{static publish(s){s.sort((t,e)=>t.order-e.order).forEach(t=>t.emit())}events=new Map;eventNames=new Set;add(s){Array.isArray(s)?s.forEach(t=>this.eventNames.add(t)):this.eventNames.add(s)}remove(s){Array.isArray(s)?s.forEach(t=>this.eventNames.delete(t)):this.eventNames.delete(s),this.clear(s)}clear(s){Array.isArray(s)?s.forEach(t=>this.events.delete(t)):this.events.delete(s)}retain(s,t){this.eventNames.has(s)&&this.events.set(s,{args:t,order:Us++})}isKnown(s){return this.eventNames.has(s)}emit(s,t,e=[]){if(Ft(s))this.eventNames.forEach(r=>this.emit(r,t,e));else if(this.events.has(s)){let{order:r,args:i}=this.events.get(s);e.push({order:r,emit:()=>t.apply(s,i)})}return e}},Ce=(s,t,e,r)=>{if(typeof t=="function"){let i=t.apply(s,e);i!=null&&r?.(i)}},Vs=(s,t,e,r)=>Ce(t,t.emit,[s].concat(e),r),Gs=s=>{switch(typeof s){case"function":return Je;case"string":case"symbol":return Se;case"object":return xe}},Bs=0,qs=()=>++Bs,es=class{id;eventName;isCatchEmAll;priority;listener;listenerObject;listenerType;callAfterApply;isRemoved;refCount;constructor(s,t,e,r=null){this.id=qs(),this.eventName=s,this.isCatchEmAll=Ft(s),this.listener=e,this.listenerObject=r,this.priority=t,this.listenerType=Gs(e),this.callAfterApply=void 0,this.isRemoved=!1,this.refCount=1}isEqual(s,t=null){if(s===this)return!0;let e=typeof s;return e==="number"&&s===this.id?!0:t===null&&(e==="string"||e==="symbol")?s===rt||s===this.eventName:this.listener===s&&this.listenerObject===t}apply(s,t,e){if(this.isRemoved)return;let{listener:r,listenerObject:i}=this;switch(this.listenerType){case Je:Ce(i,r,t,e),this.callAfterApply&&this.callAfterApply();break;case Se:Ce(i,i[r],t,e),this.callAfterApply&&this.callAfterApply();break;case xe:{let n=r[s];if(this.isCatchEmAll||this.eventName===s){if(typeof n=="function"){let o=n.apply(r,t);o!=null&&e?.(o)}else Vs(s,r,t,e);this.callAfterApply&&this.callAfterApply()}break}}}},Hs=(s,t)=>s.priority!==t.priority?t.priority-s.priority:s.id-t.id,Qe=s=>s?.slice(0),Ye=(s,t)=>{let e=s.indexOf(t);e>-1&&s.splice(e,1)},Qs=s=>s===xe||s===Se,Ee=(s,t,e)=>{let r=s.findIndex(i=>i.isEqual(t,e));r>-1&&(s[r].isRemoved=!0,s.splice(r,1))},It=(s,t,e)=>{let r=[];for(let i of s)(t==null&&i.listenerObject===e||i.eventName===t&&i.listener===e)&&r.push(i);for(let i of r)Ee(s,i,void 0)},we=s=>{s&&(s.forEach(t=>{t.isRemoved=!0}),s.length=0)},Ys=(s,t)=>s.listenerType===t.listenerType?s.priority===t.priority&&s.eventName===t.eventName&&s.listenerObject===t.listenerObject&&s.listener===t.listener:!1,Ks=(s,t)=>{if(Qs(s.listenerType))return t.find(e=>Ys(s,e))},Js=(s,t)=>{let e=Ks(s,t);return e?(e.refCount+=1,e):(t.push(s),t.sort(Hs),s)},Xs=class{namedListeners;catchEmAllListeners;getListenersForEventName=s=>{let t=this.namedListeners.get(s);return t||(t=[],this.namedListeners.set(s,t)),t};constructor(){this.namedListeners=new Map,this.catchEmAllListeners=[]}add(s){return Js(s,s.isCatchEmAll?this.catchEmAllListeners:this.getListenersForEventName(s.eventName))}remove(s,t,e=!1){t==null&&Array.isArray(s)?s.forEach(r=>this.remove(r,null,e)):s==null||t==null&&Ft(s)?this.removeAllListeners():t==null&&Xe(s)?we(this.namedListeners.get(s)):s instanceof es?s.isRemoved||(s.refCount-=1,s.refCount<1&&(s.isRemoved=!0,this.namedListeners.forEach(r=>Ye(r,s)),Ye(this.catchEmAllListeners,s))):e?Ft(s)&&typeof s=="object"?It(this.catchEmAllListeners,rt,s):this.namedListeners.forEach(r=>It(r,s,t)):(this.namedListeners.forEach(r=>{Ee(r,s,t),typeof s=="object"&&It(r,void 0,s)}),Ee(this.catchEmAllListeners,s,t),typeof s=="object"&&It(this.catchEmAllListeners,void 0,s))}removeAllListeners(){this.namedListeners.forEach(s=>we(s)),this.namedListeners.clear(),we(this.catchEmAllListeners)}forEach(s,t){let e=Qe(this.catchEmAllListeners),r=Qe(this.namedListeners.get(s));if(s===rt||!r||r.length===0)e.forEach(t);else if(e.length===0)r.forEach(t);else{let i=r.length,n=e.length,o=0,h=0;for(;o<i||h<n;){if(o<i){let a=r[o];if(h>=n||a.priority>=e[h].priority){t(a),++o;continue}}h<n&&(t(e[h]),++h)}}}getSubscriptionCount(){let s=this.catchEmAllListeners.length;for(let t of this.namedListeners.values())s+=t.length;return s}},it=s=>!!(s&&s[W]);function Ct(s){if(it(s))return s;let t=new Xs,e=new ts;return zs(s,W,{keeper:e,store:t}),s}var z={Max:Number.POSITIVE_INFINITY,AAA:1e9,BB:1e6,C:1e3,Default:0,Low:-1e4,Min:Number.NEGATIVE_INFINITY},Zs=(s,t,e,r,i,n,o)=>{let h=s.add(new es(e,r,i,n));return t.emit(e,h,o),h},tr=(s,t,e,r)=>{let i=e.length,n=typeof e[0],o,h,a,c;if(i>=2&&i<=3&&n==="number"?(o=rt,[h,a,c]=e):i>=3&&i<=4&&typeof e[1]=="number"?[o,h,a,c]=e:(h=z.Default,n==="string"||n==="symbol"||Array.isArray(e[0])?[o,a,c]=e:(o=rt,[a,c]=e)),!a&&Ze)throw Ws("called with insufficient arguments!",e),"subscribeTo() called with insufficient arguments!";let p=l=>u=>Zs(s,t,u,l,a,c,r);return Array.isArray(o)?o.map(l=>Array.isArray(l)?p(l[1])(l[0]):p(h)(l)):p(h)(o)},ss=(s,t,e)=>{let r=[],i=tr(s,t,e,r);return ts.publish(r),i},Ke=s=>t=>{t.callAfterApply=()=>{s?.()}},rs=(s,t)=>Object.assign(()=>E(s,t),Array.isArray(t)?{listeners:t}:{listener:t}),is=(s,t,e,r)=>{let{store:i,keeper:n}=s[W];Array.isArray(t)?t.forEach(o=>{i.forEach(o,h=>h.apply(o,e,r)),n.retain(o,e)}):t!==rt&&(i.forEach(t,o=>{o.apply(t,e,r)}),n.retain(t,e))},m=(s,...t)=>{let e=Ct(s),{store:r,keeper:i}=e[W];return rs(e,ss(r,i,t))},C=(s,...t)=>{let e=Ct(s),{store:r,keeper:i}=e[W],n=ss(r,i,t),o=rs(e,n),h=!1,a=()=>{h||(o(),h=!0)};return Array.isArray(n)?n.forEach(Ke(a)):Ke(a)(n),a},ft=(s,t)=>new Promise(e=>{C(s,t,e)}),E=(s,t,e)=>{if(!it(s))throw new Error("object is not eventized");let{store:r,keeper:i}=s[W],n=typeof t,o=e!=null&&(n==="string"||n==="symbol");r.remove(t,e,o),Array.isArray(t)?i.remove(t.filter(h=>typeof h=="string")):Xe(t)&&i.remove(t)},d=(s,t,...e)=>{if(!it(s))throw new Error("object is not eventized");is(s,t,e)},er=(s,t,...e)=>{if(!it(s))throw new Error("object is not eventized");let r=[];return is(s,t,e,i=>{r.push(i)}),r=r.map(i=>Array.isArray(i)?Promise.all(i):Promise.resolve(i)),r.length>0?Promise.all(r):Promise.resolve()},U=(s,t)=>{let e=Ct(s),{keeper:r}=e[W];r.add(t)},H=(s,t)=>{if(!it(s))throw new Error("object is not eventized");let{keeper:e}=s[W];e.clear(t)},S=(()=>{let s=(t={})=>Ct(t);return s.inject=(t={})=>(t=Ct(t),Object.assign(t,{on:(...e)=>m(t,...e),once:(...e)=>C(t,...e),onceAsync:e=>ft(t,e),off:(e,r)=>E(t,e,r),emit:(e,...r)=>d(t,e,...r),emitAsync:(e,...r)=>er(t,e,...r),retain:e=>U(t,e),retainClear:e=>H(t,e)}),t),s.is=it,s})();var ke=s=>it(s)?s[W]?.store?.getSubscriptionCount()??0:0;var R=Symbol.for("signal"),nt=Symbol.for("effect"),Ae=Symbol.for("destroySignal"),Oe=Symbol.for("createEffect"),ns=Symbol.for("destroyEffect"),dt="value",Te="mute",Pe="unmute",Q="destroy",ot=Symbol.for("recall");var at=S(),D=S(),V=S(),Wt=S();var ht=class{static current;delayedEffects=[];batch(t,e){let r=this.delayedEffects.length;for(let i=0;i<r;i++){let[n,o]=this.delayedEffects[i];if(!(n>e))if(n===e){o.add(t);return}else{this.delayedEffects.splice(i,0,[e,new Set([t])]);return}}this.delayedEffects.push([e,new Set([t])])}run(){let t=new Set,e=[m(V,(i,n)=>{n===ot&&t.add(i)}),m(Wt,i=>{t.add(i)})],r=this.delayedEffects.flatMap(([,i])=>Array.from(i));for(let i of r)t.has(i)||d(V,i,i,ot);e.forEach(i=>{i()})}},os=()=>ht.current;function O(s){let t=ht.current;t?t=void 0:t=ht.current=new ht;try{s()}finally{t&&(ht.current=void 0,t.run())}}var Re=0;function Me(s){Re++;try{s()}finally{Re--}}function zt(){return Re>0}var Ut=class{[nt];constructor(t){this[nt]=t,C(t,pt.Destroy,()=>{this[nt]=void 0})}run=()=>this[nt]?.run();destroy=()=>{this[nt]?.destroy(),this[nt]=void 0}};var Y=new Map,M=class s{#t=new Set;#e=new Set;#s=new Map;#i=new WeakMap;#r=new Map;#n=new Set;#o=new Set;#a;static get(t){if(t!=null)return t instanceof s?t:Y.get(t)}static findOrCreate(t){if(t==null)throw new Error("Cannot create a group with a null object");return new s(t)}static destroy(t){console.warn("SignalGroup.destroy(obj) is deprecated. Use SignalGroup.delete(obj) instead."),s.delete(t)}static delete(t){Y.get(t)?.clear()}static clear(){for(let t of Y.values())t.destroy();Y.clear()}constructor(t){if(t!=null&&t instanceof s)return t;if(t??=this,Y.has(t))return Y.get(t);Y.set(t,this),S(this)}attachGroup(t){if(t===this)throw new Error("Cannot attach a group to itself");return this.#t.add(t),t.#a&&t.#a!==this&&t.#a.#t.delete(t),t.#a=this,t}detachGroup(t){return t!==this&&this.#t.has(t)&&(this.#t.delete(t),t.#a=void 0),t}attachSignal(t){let e=v(t);if(e?.destroyed)throw new Error("Cannot attach a destroyed signal to a group");return e&&this.#e.add(e),t}attachSignalByName(t,e){if(e){this.attachSignal(e);let r=v(e);this.#s.set(t,r),this.#r.has(t)?this.#r.get(t).push(r):this.#r.set(t,[r]),this.#i.has(r)?this.#i.get(r).add(t):this.#i.set(r,new Set([t]))}else this.#s.delete(t);return e}hasSignal(t){return this.#s.has(t)||this.#a?.hasSignal(t)}signal(t){return this.#s.get(t)?.object??this.#a?.signal(t)}detachSignal(t){let e=v(t);if(e&&(this.#e.delete(e),this.#i.has(e))){let r=this.#i.get(e);for(let i of r)if(this.#r.has(i)){let n=this.#r.get(i);n.splice(n.indexOf(e),1),n.length===0?(this.#s.delete(i),this.#r.delete(i)):this.#s.get(i)===e&&this.#s.set(i,n.at(-1))}r.clear(),this.#i.delete(e)}return t}attachEffect(t){return this.#n.add(t),t}runEffects(){for(let t of this.#n)t.run();for(let t of this.#t)t.runEffects()}attachLink(t){if(t?.isDestroyed)throw new Error("Cannot attach a destroyed link to a group");return t&&this.#o.add(t),t}detachLink(t){return t&&this.#o.delete(t),t}destroy(){console.warn("SignalGroup#destroy is deprecated. Use SignalGroup#clear instead."),this.clear()}clear(){d(this,Q,this),E(this);for(let t of this.#t)t.destroy();for(let t of this.#n)t.destroy();for(let t of this.#e)x(t);for(let t of this.#o)t.destroy();this.#t.clear(),this.#e.clear(),this.#s.clear(),this.#r.clear(),this.#n.clear(),this.#o.clear(),this.#a?.detachGroup(this),Y.delete(this)}};var gt=class{#t;#e;constructor(t="id",e=1){this.#t=t,this.#e=e}make(){return Symbol(`${this.#t}${this.#e++}`)}};var Le=[],Vt=()=>Le.at(-1),as=(s,t)=>{Le.push(s);try{return t()}finally{Le.pop()}};var sr=s=>s!=null&&typeof s.then=="function",pt=class s{static idGen=new gt("ef");static Destroy="destroy";static count=0;id;callback;#t;#e=new Set;#s=new Set;#i=new Map;#r=new Set;parentEffect;childEffects=[];curChildEffectSlot=0;autorun=!0;shouldRun=!0;priority;#n;#o=!1;constructor(t,e){S(this),this.callback=t;let r;e?.attach!=null&&(r=M.findOrCreate(e.attach),r.attachEffect(this)),this.autorun=e?.autorun??!0,this.#n=e?.dependencies?e.dependencies.map(i=>{switch(typeof i){case"string":case"symbol":return r.signal(i);default:return i}}):void 0,this.id=s.idGen.make(),this.priority=e?.priority??0,m(V,this.id,ot,this),++s.count}hasStaticDeps(){return this.#n!=null&&this.#n.length>0}saveSignalsFromDeps(){for(let t of this.#n)this.whenSignalIsRead(v(t).id)}static createEffect(t,e,r){let i=Array.isArray(e)?e:void 0,n=i?r??{dependencies:i}:e;n&&i&&(n.dependencies=i);let o,h=Vt();return h!=null?(o=h.getCurrentChildEffect(),o==null&&(o=new s(t,n),h.attachChildEffect(o),d(V,Oe,o)),h.curChildEffectSlot++):(o=new s(t,n),d(V,Oe,o)),o.hasStaticDeps()?o.saveSignalsFromDeps():o.autorun&&o.run(),new Ut(o)}getCurrentChildEffect(){return this.childEffects[this.curChildEffectSlot]}attachChildEffect(t){this.childEffects.push(t),this.parentEffect=this}run=()=>{if(this.#o||!this.shouldRun)return;let t=os();t?t.batch(this.id,this.priority):(this.runCleanupCallback(),this.curChildEffectSlot=0,this.shouldRun=!1,d(Wt,this.id,this.id),this.hasStaticDeps()?this.#t=this.callback():(this.#s=new Set(this.#e),this.#t=as(this,this.callback),this.cleanupLostSignals(),this.#r.clear()))};[ot](){this.shouldRun=!0,this.autorun&&this.run()}whenSignalIsRead(t){this.#s.delete(t),this.#e.has(t)||(this.#e.add(t),this.#i.set(t,[m(at,t,this.priority,ot,this),C(D,t,Ae,this)]))}[Ae](t){!this.#r.has(t)&&this.#e.has(t)&&(this.#r.add(t),this.unsubscribeSignal(t),this.#r.size===this.#e.size&&this.destroy())}cleanupLostSignals(){for(let t of this.#s)this.unsubscribeSignal(t),this.#e.delete(t)}unsubscribeSignal(t){this.#i.has(t)&&(this.#i.get(t).forEach(e=>{e()}),this.#i.delete(t))}runCleanupCallback(){if(this.#t!=null){let t=this.#t;this.#t=void 0,sr(t)?Promise.resolve(t).then(e=>{typeof e=="function"&&e()}):t()}}destroy=()=>{this.#o||(d(this,s.Destroy,this),E(this),d(V,ns,this),this.runCleanupCallback(),E(at,this),E(V,this),E(D,this),this.#o=!0,this.#e.clear(),this.#s.clear(),this.#i.clear(),this.#r.clear(),this.childEffects.forEach(t=>{t.destroy()}),this.childEffects.length=0,--s.count)}};var w=(...s)=>pt.createEffect(...s);var Et=new WeakMap,rr=s=>{let t=Et.get(s);return t||(t={},Et.set(s,t)),t},T=(s,t)=>Et.get(s)?.signals?.get(t);var hs=(s,t,e)=>{let r=rr(s);r.signals??=new Map,r.signals.set(t,e)};function St(...s){for(let t of s)if(Et.has(t)){let e=Et.get(t);if(e.signals){for(let r of e.signals.values())x(r);e.signals.clear(),e.signals=void 0}}}function ls(s){let t=v(yt(s)?s:T(...s));t!=null&&!t.muted&&!t.destroyed&&Gt(t.id,t.value,{touch:!0})}function lt(s){return yt(s)?v(s)?.value:v(T(...s))?.value}var Bt=class{[R];constructor(t){this[R]=t}get get(){return this[R].reader}get set(){return this[R].writer}get value(){return lt(this.get)}set value(t){this.set(t)}onChange(t){let{destroy:e}=w(()=>t(this.value),[this.get]);return e}get muted(){return this[R].muted}set muted(t){this[R].muted=t}touch(){ls(this)}destroy(){x(this)}};var ir=new gt("si");function us(s){zt()||Vt()?.whenSignalIsRead(s)}function Gt(s,t,e){zt()||d(at,s,t,e)}var yt=s=>s!=null&&s[R]!=null,nr=s=>{let t=e=>(e?w(()=>(s.destroyed||us(s.id),e(s.value)),[t]):s.destroyed||(s.beforeRead?.(),us(s.id)),s.value);return Object.defineProperty(t,R,{value:s}),t},qt=class s{static instanceCount=0;id;lazy;get[R](){return this}compare;beforeRead;muted=!1;destroyed=!1;#t=void 0;get value(){return this.lazy&&(this.#t=this.valueFn(),this.valueFn=void 0,this.lazy=!1),this.#t}set value(t){this.#t=t}valueFn;reader;writer=(t,e)=>{let r=e?.lazy??!1,n=e?.compare??this.compare??((h,a)=>h===a);if((r!==this.lazy||r&&t!==this.valueFn||!r&&!n(t,this.#t))&&(r?(this.#t=void 0,this.valueFn=t,this.lazy=!0):(this.#t=t,this.valueFn=void 0,this.lazy=!1),!this.muted&&!this.destroyed)){Gt(this.id,this.#t);return}(e?.touch??!1)&&Gt(this.id,this.#t,{touch:!0})};object;constructor(t,e){this.id=ir.make(),++s.instanceCount,this.lazy=t,this.lazy?(this.value=void 0,this.valueFn=e):(this.value=e,this.valueFn=void 0),this.reader=nr(this),this.object=new Bt(this)}},v=s=>s?.[R];function f(s=void 0,t){let e;if(yt(s))e=v(s);else{let r=t?.lazy??!1;e=new qt(r,s),e.beforeRead=t?.beforeRead,e.compare=t?.compare}return t?.attach!=null&&M.findOrCreate(t.attach).attachSignal(e),e.object}var x=(...s)=>{for(let t of s){let e=v(t);e!=null&&!e.destroyed&&(e.destroyed=!0,e.beforeRead=void 0,--qt.instanceCount,d(D,e.id,e.id))}};function je(s,t){let e=f(),r=t?.attach!=null?M.findOrCreate(t.attach):void 0;r!=null&&(t?.name?r.attachSignalByName(t.name,e):r.attachSignal(e));let i=w(()=>e.set(s()),{autorun:!(t?.lazy??!1),priority:t?.priority??z.C,attach:r}),n=v(e);return n.beforeRead=i.run,C(D,n.id,i.destroy),e.get}var Ht=class{#t=!1;#e;source;lastValue;isDestroyed=!1;constructor(t){S(this),this.source=v(t),this.#e=m(at,this.source.id,(e,r)=>{!this.#t&&!this.isDestroyed&&(r?.touch===!0?this.touch():this.write())}),C(D,this.source.id,()=>this.destroy())}attach(t){let e=M.findOrCreate(t);return e.attachLink(this),C(this,Q,()=>{e.detachLink(this)}),e}nextValue(){return new Promise((t,e)=>{let r=[],i=()=>r.forEach(n=>{n()});r.push(C(this,dt,n=>{i(),t(n)}),C(this,Q,()=>{i(),e()}))})}async*asyncValues(t){let e=0;for(;!this.isDestroyed;)try{let r=await this.nextValue();if(t&&t(r,e++))break;U(this,dt),yield r}catch{break}H(this,dt)}destroy(){this.isDestroyed||(this.#e?.(),this.#e=void 0,d(this,Q,this),H(this,dt),E(this),this.lastValue=void 0,this.isDestroyed=!0,Object.freeze(this))}get isMuted(){return this.#t}mute(){return!this.isDestroyed&&!this.#t&&(this.#t=!0,d(this,Te,this)),this}unmute(){return!this.isDestroyed&&this.#t&&(this.#t=!1,d(this,Pe,this)),this}toggle(){return this.isDestroyed||(this.#t=!this.#t,d(this,this.#t?Te:Pe,this)),this.#t}updateValue(t){if(!this.#t&&!this.isDestroyed){let{value:e}=this.source;t(e),d(this,dt,e),this.lastValue=e}}},Qt=class extends Ht{target;constructor(t,e){super(t),this.target=v(e),C(D,this.target.id,()=>this.destroy()),this.touch()}touch(){return this.updateValue(t=>{this.target.writer(t,{touch:!0})}),this}write(){this.updateValue(t=>{this.target.writer(t)})}},Yt=class extends Ht{target;constructor(t,e){super(t),this.target=e,this.touch()}touch(){return this.updateValue(t=>{this.target(t)}),this}write(){this.updateValue(t=>{this.target(t)})}};var Kt=new Map;function _(s,t,e){let r=v(s),i;if(Kt.has(r)){i=Kt.get(r);let c=v(t)??t;if(i.has(c))return i.get(c)}else i=new Map,Kt.set(r,i);let n=v(t),o=n!=null?new Qt(s,n):new Yt(s,t),h=e?.attach;h&&o.attach(h);let a=n??t;return i.set(a,o),C(o,Q,()=>{i.delete(a),i.size===0&&Kt.delete(r)}),o}var Jt=class s{static fromProps(t,e){let r=new s,i=e?e.map(n=>[n,t[n]]):Object.entries(t);for(let[n,o]of i)r.#t.set(n,f(o));return r}#t=new Map;keys(){return this.#t.keys()}signals(){return this.#t.values()}entries(){return this.#t.entries()}clear(){for(let t of this.#t.values())t.destroy();this.#t.clear()}has(t){return this.#t.has(t)}get(t){if(!this.#t.has(t)){let e=f();return this.#t.set(t,e),e}return this.#t.get(t)}update(t){t.size&&O(()=>{for(let[e,r]of t.entries())this.get(e).set(r)})}updateFromProps(t,e){O(()=>{let r=e?e.map(i=>[i,t[i]]):Object.entries(t);for(let[i,n]of r)this.get(i).set(n)})}};var $;(function(s){s[s.StructuralChanges=1]="StructuralChanges",s[s.ContentUpdates=2]="ContentUpdates",s[s.Removal=3]="Removal"})($||($={}));var b;(function(s){s[s.CreateEntities=1]="CreateEntities",s[s.DestroyEntities=2]="DestroyEntities",s[s.SetParent=3]="SetParent",s[s.UpdateOrder=4]="UpdateOrder",s[s.ChangeProperties=5]="ChangeProperties",s[s.ChangeToken=6]="ChangeToken",s[s.SendEvents=7]="SendEvents"})(b||(b={}));var ut=Symbol.for("ShadowEntsGlobalNS"),G="#void",cs="contextLost",fs="configure",ds="changeTrail",ps="destroy",gs="loaded",ys="appliedChangeTrail",ms="importedModule",bs="destroyed",mt="messageToView",vs=16e3,ws=16e3,Cs=4e3,Es=1e3,_e="shadowObjects";function Ss(s,t){s.indexOf(t)===-1&&s.push(t)}function Ne(s,t){let e=s.indexOf(t);e!==-1&&s.splice(e,1),s.push(t)}function K(s,t){let e=s.indexOf(t);e!==-1&&s.splice(e,1)}var ct=s=>typeof s=="string"?s.trim()||ut:typeof s=="symbol"?s:ut;var xt="#root",kt=class{#t;get uuid(){return this.#t}#e=0;constructor(t){this.#t=t}#s=!0;#i=0;#r=0;hasChanges(){return this.#e>0}get isNew(){return this.#s}get isCreated(){return this.#i>0&&this.#i>this.#r}get isDestroyed(){return this.#r>0&&this.#r>=this.#i}#n=G;#o;#a=0;#h;#l;#u;create(t=G,e,r=0){this.#e++,this.#i++,this.#h=t,this.#l=e??xt,this.#u=r||void 0}destroy(){this.#r++,this.#e++}clear(){this.#e=0,this.#s=!1,this.#h=void 0,this.#l=void 0,this.#u=void 0,this.#f.clear(),this.#d.length=0,this.#g.length=0,this.#p.clear()}changeToken(t){t===this.#n?this.#h=void 0:(this.#h=t,this.#e++)}setParent(t){t===this.#o?this.#l=void 0:(this.#l=t??xt,this.#e++)}changeOrder(t){t===this.#a?this.#u=void 0:(this.#u=t,this.#e++)}#c=new Map;#f=new Map;#d=[];changeProperty(t,e,r){let i=this.#c.get(t);r==null&&e!==i||r!=null&&!r(e,i)?(this.#f.set(t,e),Ne(this.#d,t),this.#e++):(this.#f.delete(t),K(this.#d,t))}removeProperty(t){let e=this.#c.has(t);this.#f.has(t)?(this.#f.delete(t),e||K(this.#d,t)):e&&(Ne(this.#d,t),this.#e++)}#g=[];#p=new Set;createEvent(t,e,r){this.#g.push({type:t,data:e}),r?.forEach(i=>this.#p.add(i)),this.#e++}transferEventsTo(t){this.#g.length>0&&(t.#g.push(...this.#g),this.#g.length=0),this.#p.size>0&&(t.#p=new Set([...t.#p,...this.#p]),this.#p.clear())}buildChangeTrail(t,e){let{isNew:r,isCreated:i,isDestroyed:n}=this;if(!(r&&n))switch(e){case $.StructuralChanges:r?t.push(this.makeCreateEntityChange()):n||(this.#l!==void 0&&!(this.#l===xt&&this.#o===void 0)?t.push(this.makeSetParentChange()):this.#u!==void 0&&this.#u!==this.#a&&t.push(this.makeUpdateOrderChange()),this.#h!==void 0&&this.#h!==this.#n&&t.push(this.makeChangeToken()));break;case $.ContentUpdates:!r&&i&&this.#d.length>0&&t.push(this.makeChangePropertyChange()),this.#g.length>0&&t.push(this.makeEvents());break;case $.Removal:n&&t.push(this.makeDestroyEntityChange());break}}makeEvents(){let t={type:b.SendEvents,uuid:this.#t,events:this.#g.slice(0)};return this.#p.size>0&&(t.transferables=Array.from(this.#p)),t}makeCreateEntityChange(){let t={type:b.CreateEntities,uuid:this.#t,token:this.#h};if(this.#n=this.#h,this.#l!==void 0){let e=this.#l===xt?void 0:this.#l;this.#o=e,e!==void 0&&(t.parentUuid=e)}return this.#f.size>0&&(t.properties=Array.from(this.#f.entries()).filter(([,e])=>e!==void 0),t.properties.forEach(([e,r])=>this.#c.set(e,r))),this.#u!==void 0&&this.#u!==this.#a&&(t.order=this.#a=this.#u),t}makeDestroyEntityChange(){return{type:b.DestroyEntities,uuid:this.#t}}makeSetParentChange(){this.#o=this.#l===xt?void 0:this.#l;let t={type:b.SetParent,uuid:this.#t,parentUuid:this.#o};return this.#u!==void 0&&this.#u!==this.#a&&(t.order=this.#a=this.#u),t}makeUpdateOrderChange(){return this.#a=this.#u??0,{type:b.UpdateOrder,uuid:this.#t,order:this.#a}}makeChangeToken(){return this.#n=this.#h??G,{type:b.ChangeToken,uuid:this.#t,token:this.#n}}makeChangePropertyChange(){let t=this.#d.map(e=>{if(this.#f.has(e)){let r=this.#f.get(e);return this.#c.set(e,r),[e,r]}else return this.#c.delete(e),[e,void 0]});return{type:b.ChangeProperties,uuid:this.#t,properties:t}}};var xs=s=>{if(!(s===void 0||s.length===0))return s.filter(t=>t.length===1||t[1]!==void 0)},De=(s,t)=>{if(s===t||t===void 0)return s;if(s===void 0)return xs(t);for(let[e,r]of t){let i=s.find(([n])=>n===e);i===void 0?s.push([e,r]):i[1]=r}return xs(s)};var Xt=class{#t=new Map;get[Symbol.iterator](){return this.#t.entries.bind(this.#t)}clear(){this.#t.clear()}isEmpty(){return this.#t.size===0}hasComponentState(t){return this.#t.has(t)}getComponentState(t){return this.#t.get(t)}write(t){for(let e of t)if(e.type===b.CreateEntities)this.createEntity(e);else if(this.#t.has(e.uuid))switch(e.type){case b.DestroyEntities:this.destroyEntity(e);break;case b.SetParent:this.setParent(e);break;case b.UpdateOrder:this.updateOrder(e);break;case b.ChangeToken:this.changeToken(e);break;case b.ChangeProperties:this.changeProperties(e);break}}changeProperties({uuid:t,properties:e}){let r=this.getComponentState(t);r.properties=De(r.properties,e)}changeToken({uuid:t,token:e}){this.getComponentState(t).token=e||G}updateOrder({uuid:t,order:e}){this.getComponentState(t).order=e??0}setParent({uuid:t,parentUuid:e,order:r}){let i=this.getComponentState(t);i.parentUuid=e,i.order=r??0}destroyEntity({uuid:t}){this.#t.delete(t)}createEntity({uuid:t,token:e,parentUuid:r,order:i,properties:n}){this.#t.set(t,{token:e||G,parentUuid:r,order:i??0,properties:De(void 0,n)})}};var N=class s{static{this.ReRequestParentRoots="re-request-parent-roots"}static getContextsMap(){return globalThis.__shadowEntsContexts==null&&(globalThis.__shadowEntsContexts=new Map),globalThis.__shadowEntsContexts}static get(t){let e=ct(t),r=s.getContextsMap();return r.has(e)?r.get(e):new s(e)}#t=new Map;#e=[];#s=new Xt;constructor(t=ut){let e=ct(t),r=s.getContextsMap();if(r.has(e))return r.get(e);this.ns=e,r.set(e,this)}addComponent(t){let e;this.#t.has(t.uuid)?(e=this.#t.get(t.uuid),e.component=t,e.children=[]):(e={component:t,children:[],changes:new kt(t.uuid),propIsEqual:void 0},this.#t.set(t.uuid,e)),e.changes.create(t.token,t.parent?.uuid,t.order),t.parent?(this.addToChildren(t.parent,t),e.changes.setParent(t.parent.uuid)):this.#n(t,this.#e),this.#o=void 0}hasComponent(t){return this.#t.has(t.uuid)}hasComponents(){return this.#t.size>0}isRootComponent(t){return this.#e.includes(t.uuid)}destroyComponent(t){if(this.hasComponent(t)){let e=this.#t.get(t.uuid);e.children.slice(0).forEach(r=>this.#t.get(r)?.component.removeFromParent()),e.changes.destroy(),this.#o=void 0}}getChildren(t){return this.#t.get(t.uuid)?.children.map(e=>this.#t.get(e).component)??[]}removeFromParent(t,e){if(this.hasComponent(e)){let r=this.#t.get(t),i=this.#t.get(e.uuid),n=i.children.indexOf(t);n!==-1&&(i.children.splice(n,1),r.changes.setParent(void 0)),this.#n(r.component,this.#e),this.#o=void 0}}moveToRoot(t){let e=this.#t.get(t);e&&(e.changes?.setParent(void 0),this.#n(e.component,this.#e)),this.#o=void 0}changeToken(t,e){this.#t.get(t.uuid)?.changes.changeToken(e)}isChildOf(t,e){return this.hasComponent(e)?this.#t.get(e.uuid).children.includes(t.uuid):!1}addToChildren(t,e){let r=this.#t.get(t.uuid);if(r)this.#n(e,r.children),this.#t.get(e.uuid)?.changes.setParent(t.uuid),K(this.#e,e.uuid),this.#o=void 0;else throw new Error(`the view component ${t.uuid} cannot have a child added to it because the component do not exist!`)}removeSubTree(t){let e=this.#t.get(t);e&&(e.children.slice(0).forEach(r=>this.removeSubTree(r)),this.destroyComponent(e.component),this.#i(t))}setProperty(t,e,r,i){let n=this.#t.get(t.uuid);return n!=null?(i!=null?(n.propIsEqual??=new Map,n.propIsEqual.set(e,i)):n.propIsEqual?.has(e)&&n.propIsEqual.delete(e),n.changes.changeProperty(e,r,i)):!1}removeProperty(t,e){this.#t.get(t.uuid)?.changes.removeProperty(e)}changeOrder(t){if(t.parent){let e=this.#t.get(t.parent.uuid);K(e.children,t.uuid),this.#n(t,e.children)}else K(this.#e,t.uuid),this.#n(t,this.#e);this.#t.get(t.uuid)?.changes.changeOrder(t.order),this.#o=void 0}traverseLevelOrderBFS(){return this.#a().map(t=>t.component)}dispatchShadowObjectsEvent(t,e,r,i){this.#t.get(t.uuid)?.changes.createEvent(e,r,i)}broadcastEvent(t,e=void 0){for(let r of this.traverseLevelOrderBFS())r.dispatchEvent(t,e,!1)}dispatchMessage(t,e,r=void 0,i=!1){this.#t.get(t)?.component.dispatchEvent(e,r,i)}dispatchReRequestParentRoots(){for(let t of this.#e)this.dispatchMessage(t,s.ReRequestParentRoots)}buildChangeTrails(t=!0){let e=[];if(!this.hasComponents())return e;let r=this.#r();for(let i of r)i.buildChangeTrail(e,$.StructuralChanges);for(let i of r)i.buildChangeTrail(e,$.ContentUpdates);for(let i of r)i.buildChangeTrail(e,$.Removal),(i.isDestroyed||i.isNew&&!i.isCreated)&&this.#i(i.uuid),t&&i.clear();return this.#s.write(e),e}reCreateChanges(){if(!this.#s.isEmpty()){this.buildChangeTrails(!1);for(let[t,e]of this.#s){let r=this.#t.get(t);if(r){let i=new kt(t);if(i.create(e.token,e.parentUuid,e.order),e.properties)for(let[n,o]of e.properties)i.changeProperty(n,o,r.propIsEqual?.get(n));r.changes.transferEventsTo(i),r.changes.clear(),r.changes=i}}this.#s.clear(),this.broadcastEvent(cs)}}clear(){if(this.#o=void 0,this.#s.clear(),this.#e.slice(0).forEach(t=>this.removeSubTree(t)),this.#e.length!==0)throw new Error("component-context panic: #rootComponents is not empty!");if(this.#t.size!==0)throw new Error("component-context panic: #components is not empty!")}#i(t){this.#t.has(t)&&(this.#t.delete(t),K(this.#e,t),this.#o=void 0)}#r(){return this.#a().filter(t=>t.changes.hasChanges()).map(t=>t.changes)}#n(t,e){if(e.length===0){e.push(t.uuid);return}if(e.includes(t.uuid))return;let r=e.length,i=new Array(r);if(i[0]=this.#t.get(e[0]).component,t.order<i[0].order){e.unshift(t.uuid);return}if(r===1){e.push(t.uuid);return}let n=r-1;if(i[n]=this.#t.get(e[n]).component,t.order>=i[n].order){e.push(t.uuid);return}if(r===2){e.splice(1,0,t.uuid);return}for(let o=n-1;o>=1;o--)if(i[o]=this.#t.get(e[o]).component,t.order>=i[o].order){e.splice(o+1,0,t.uuid);return}}#o;#a(){if(this.#o)return this.#o;let t=new Map,e=(r,i)=>{let n=this.#t.get(r);if(n!=null){t.has(i)?t.get(i).push(n):t.set(i,[n]);for(let o of n.children)e(o,i+1)}};return this.#e.forEach(r=>e(r,0)),this.#o=Array.from(t.entries()).sort((r,i)=>r[0]-i[0]).map(([,r])=>r).flat(),this.#o}};function At(s,t,e,r,i,n){function o(wt){if(wt!==void 0&&typeof wt!="function")throw new TypeError("Function expected");return wt}for(var h=r.kind,a=h==="getter"?"get":h==="setter"?"set":"value",c=!t&&s?r.static?s:s.prototype:null,p=t||(c?Object.getOwnPropertyDescriptor(c,r.name):{}),l,u=!1,g=e.length-1;g>=0;g--){var y={};for(var P in r)y[P]=P==="access"?{}:r[P];for(var P in r.access)y.access[P]=r.access[P];y.addInitializer=function(wt){if(u)throw new TypeError("Cannot add initializers after decoration has completed");n.push(o(wt||null))};var st=(0,e[g])(h==="accessor"?{get:p.get,set:p.set}:p[a],y);if(h==="accessor"){if(st===void 0)continue;if(st===null||typeof st!="object")throw new TypeError("Object expected");(l=o(st.get))&&(p.get=l),(l=o(st.set))&&(p.set=l),(l=o(st.init))&&i.unshift(l)}else(l=o(st))&&(h==="field"?i.unshift(l):p[a]=l)}c&&Object.defineProperty(c,r.name,p),u=!0}function J(s,t,e){for(var r=arguments.length>2,i=0;i<t.length;i++)e=r?t[i].call(s,e):t[i].call(s);return r?e:void 0}function Ot(s){return function(t,e){let r=s?.name||e.name,i=!!(s?.readAsValue??!1);return{get(){let n=T(this,r);if(n)return i?n.value:n.get()},set(n){T(this,r)?.set(n)},init(n){let o=f(n,s);return hs(this,r,o),M.findOrCreate(this).attachSignalByName(r,o),o.value}}}}var j="ConsoleLogger",L=`${j}Storage`,or=!!(globalThis.location?.host?.startsWith("localhost")??!1),Pt="localStorage"in globalThis,Zt=Symbol.for(j),ks=!1,As=s=>{if(typeof s=="boolean")return s;switch(s.toLowerCase()){case"true":case"yes":case"on":return!0;default:return!1}},Ie=s=>[Pt?j:void 0,...Array.isArray(s)?s:[s]].filter(Boolean).join(".");function $e(s,t=void 0,e){let r=Ie(s),i=Pt?localStorage.getItem(r):globalThis[L]?.[r];return i!=null?t(i):e}function Tt(s,t){Pt?localStorage.setItem(Ie(s),t):(globalThis[L]==null&&(globalThis[L]={},console.debug(`${j}: Initialize`,{[L]:globalThis[L]})),globalThis[L][Ie(s)]=t)}var A=class s{static{this.sharedConfig={enable:or,debug:!1,info:!0,warn:!0,"styles.debug":"color: #111; background: #999; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em","styles.info":"color: #020; background: #8a8; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em","styles.warn":"color: #fa0; background: #a98; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em","styles.error":"color: #ff0; background: #a00; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em"}}static get isEnabled(){return s.sharedConfig.enable}static get isDebug(){return s.sharedConfig.enable&&s.sharedConfig.debug}static{this.sharedStyles={get debug(){return s.sharedConfig["styles.debug"]},set debug(t){s.sharedConfig["styles.debug"]=t},get info(){return s.sharedConfig["styles.info"]},set info(t){s.sharedConfig["styles.info"]=t},get warn(){return s.sharedConfig["styles.warn"]},set warn(t){s.sharedConfig["styles.warn"]=t},get error(){return s.sharedConfig["styles.error"]},set error(t){s.sharedConfig["styles.error"]=t}}}static loadConfig(){Pt?(["enable","debug","info","warn"].forEach(t=>{this.sharedConfig[t]=$e(t,As,this.sharedConfig[t])}),["debug","info","warn","error"].forEach(t=>{this.sharedStyles[t]=$e(["styles",t],void 0,this.sharedStyles[t])}),s.isDebug&&console.debug(`${j}: Load config from localStorage`,s.sharedConfig),globalThis[j]?.[Zt]||(globalThis[j]??={[Zt]:!0,get enable(){return s.sharedConfig.enable},set enable(t){s.sharedConfig.enable=t,Tt("enable",t?"true":"false")},get debug(){return s.sharedConfig.debug},set debug(t){s.sharedConfig.debug=t,Tt("debug",t?"true":"false")},get info(){return s.sharedConfig.info},set info(t){s.sharedConfig.info=t,Tt("info",t?"true":"false")},get warn(){return s.sharedConfig.warn},set warn(t){s.sharedConfig.warn=t,Tt("warn",t?"true":"false")}})):globalThis[L]?.[Zt]||(globalThis[L]={[Zt]:!0,...s.sharedConfig,...globalThis[L]},s.sharedConfig=globalThis[L],s.isDebug&&console.debug(`${j}: Load config from ${L}`,globalThis[L]))}constructor(t){this.enable=!0,this.namespace=(t||"").trim()||j,ks||(s.loadConfig(),ks=!0);let e=[this.namespace,"enable"];this.enable=$e(e,As,this.enable),Tt(e,Pt?this.enable?"true":"false":this.enable)}get isEnabled(){return this.enable&&s.sharedConfig.enable}get isDebug(){return this.isEnabled&&s.sharedConfig.debug}get isInfo(){return this.isEnabled&&s.sharedConfig.info}get isWarn(){return this.isEnabled&&s.sharedConfig.warn}debug(...t){this.#t("debug",s.sharedStyles.debug,t)}info(...t){this.#t("info",s.sharedStyles.info,t)}warn(...t){this.#t("warn",s.sharedStyles.warn,t)}error(...t){this.#t("error",s.sharedStyles.error,t)}#t(t,e,r){console[t](`%c${this.namespace}`,e,...r)}};var I=(()=>{var s;let t,e=[],r=[],i,n=[],o=[];return class B{static{let a=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;t=[Ot()],i=[Ot()],At(this,null,t,{kind:"accessor",name:"viewReady",static:!1,private:!1,access:{has:c=>"viewReady"in c,get:c=>c.viewReady,set:(c,p)=>{c.viewReady=p}},metadata:a},e,r),At(this,null,i,{kind:"accessor",name:"proxyReady",static:!1,private:!1,access:{has:c=>"proxyReady"in c,get:c=>c.proxyReady,set:(c,p)=>{c.proxyReady=p}},metadata:a},n,o),a&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:a})}static{this.AfterSync="afterSync"}static{this.ContextLost="contextLost"}static{this.ContextCreated="contextCreated"}static get(a){if(a!=null)return globalThis.__shadowEnvs?.get(a)}#t;#e;#s;#i;#r;#n;#o;get viewReady(){return this.#o}set viewReady(a){this.#o=a}#a;get proxyReady(){return this.#a}set proxyReady(a){this.#a=a}#h;get isDestroyed(){return this.#h}constructor(){this.#s=!1,this.#i=!1,this.#r=!1,this.logger=new A("ShadowEnv"),this.ns$=f(),this.#o=J(this,e,!1),this.#a=(J(this,r),J(this,n,!1)),this.#h=(J(this,o),!1),this.ready=async()=>this.isReady?this:ft(this,B.ContextCreated),this.#l=()=>{this.#s&&this.#u()},U(this,B.ContextCreated),m(this,B.ContextLost,z.AAA,()=>{H(this,B.ContextCreated)}),w(()=>{if(this.viewReady&&this.proxyReady)return this.view.reCreateChanges(),d(this,B.ContextCreated,this),this.#i&&(this.#i=!1,this.#u()),()=>{d(this,B.ContextLost,this)}},[T(this,"viewReady"),T(this,"proxyReady")])}get view(){return this.#t}set view(a){a!==this.#t&&(this.#t&&this.#t.ns&&globalThis.__shadowEnvs&&globalThis.__shadowEnvs.delete(this.#t.ns),this.#t=a??void 0,this.#t&&this.#t.ns&&(globalThis.__shadowEnvs??=new Map,globalThis.__shadowEnvs.has(this.#t.ns)&&globalThis.__shadowEnvs.get(this.#t.ns)!==this&&this.logger.isWarn&&this.logger.warn("overwrite a namespace already in use",this.#t.ns,globalThis.__shadowEnvs.get(this.#t.ns)),globalThis.__shadowEnvs.set(this.#t.ns,this)),this.viewReady=!!a)}get envProxy(){return this.#e}set envProxy(a){if(a!==this.#e){let c=this.#e;this.#e=a??void 0,this.#e&&(this.#e.onMessageToView=this.#c.bind(this)),c&&c.destroy(),this.proxyReady=!1,a?.start().then(()=>{this.proxyReady=!0}).catch(p=>{this.logger.error("failed to start envProxy",p),this.proxyReady=!1})}}get isReady(){return!!(this.#t&&this.#e&&this.proxyReady&&!this.isDestroyed)}sync(){if(!this.isReady){this.#i=!0;return}this.#s||(this.#s=!0,queueMicrotask(this.#l))}syncWait(){return this.#r=!0,this.sync(),this.#n?this.#n:(this.#n=ft(this,B.AfterSync).then(a=>(this.#n=void 0,a)),this.#n)}destroy(){let a=this.#t?.ns;this.envProxy?.destroy(),this.envProxy=void 0,this.view=void 0,a&&globalThis.__shadowEnvs.has(a)&&globalThis.__shadowEnvs.get(a)===this&&globalThis.__shadowEnvs.delete(a),St(this),E(this),this.#h=!0,Object.freeze(this)}#l;async#u(){if(this.#s=!1,this.isReady){let a=this.view.buildChangeTrails();if(a.length>0)try{let c=this.#r;this.#r=!1,await this.envProxy.applyChangeTrail(a,c)}catch(c){this.logger.error("failed to apply change trail",c)}finally{d(this,B.AfterSync,a)}}}#c(a){this.logger.isDebug&&this.logger.debug("onMessageToView",a.type,a.data),this.view?.dispatchMessage(a.uuid,a.type,a.data,a.traverseChildren)}}})();var k=["00","01","02","03","04","05","06","07","08","09","0a","0b","0c","0d","0e","0f","10","11","12","13","14","15","16","17","18","19","1a","1b","1c","1d","1e","1f","20","21","22","23","24","25","26","27","28","29","2a","2b","2c","2d","2e","2f","30","31","32","33","34","35","36","37","38","39","3a","3b","3c","3d","3e","3f","40","41","42","43","44","45","46","47","48","49","4a","4b","4c","4d","4e","4f","50","51","52","53","54","55","56","57","58","59","5a","5b","5c","5d","5e","5f","60","61","62","63","64","65","66","67","68","69","6a","6b","6c","6d","6e","6f","70","71","72","73","74","75","76","77","78","79","7a","7b","7c","7d","7e","7f","80","81","82","83","84","85","86","87","88","89","8a","8b","8c","8d","8e","8f","90","91","92","93","94","95","96","97","98","99","9a","9b","9c","9d","9e","9f","a0","a1","a2","a3","a4","a5","a6","a7","a8","a9","aa","ab","ac","ad","ae","af","b0","b1","b2","b3","b4","b5","b6","b7","b8","b9","ba","bb","bc","bd","be","bf","c0","c1","c2","c3","c4","c5","c6","c7","c8","c9","ca","cb","cc","cd","ce","cf","d0","d1","d2","d3","d4","d5","d6","d7","d8","d9","da","db","dc","dd","de","df","e0","e1","e2","e3","e4","e5","e6","e7","e8","e9","ea","eb","ec","ed","ee","ef","f0","f1","f2","f3","f4","f5","f6","f7","f8","f9","fa","fb","fc","fd","fe","ff"],ar=()=>{let s=Math.random()*4294967295|0,t=Math.random()*4294967295|0,e=Math.random()*4294967295|0,r=Math.random()*4294967295|0;return(k[s&255]+k[s>>8&255]+k[s>>16&255]+k[s>>24&255]+"-"+k[t&255]+k[t>>8&255]+"-"+k[t>>16&15|64]+k[t>>24&255]+"-"+k[e&63|128]+k[e>>8&255]+"-"+k[e>>16&255]+k[e>>24&255]+k[r&255]+k[r>>8&255]+k[r>>16&255]+k[r>>24&255]).toLowerCase()},Os=()=>globalThis?.crypto?.randomUUID?.()??ar();var Rt=class extends Error{constructor(t){super(t),this.name="ViewComponentError"}},te=class s{#t;#e;#s;#i;#r=0;get uuid(){return this.#t}get token(){return this.#e}set token(t){t??=G,t!==this.#e&&(this.#e=t,this.#s?.changeToken(this,t))}get parent(){return this.#i}set parent(t){if(t){if(t.#s!==this.#s)throw new Rt("cannot set parent from different context");t.addChild(this)}else this.removeFromParent()}get context(){return this.#s}set context(t){this.#s!=t&&(this.#s&&this.destroy(),this.#s=t,t&&t.addComponent(this))}get order(){return this.#r}set order(t){let e=this.#r;this.#r=t??0,e!==this.#r&&this.#s.changeOrder(this)}constructor(t,e){S(this),e instanceof s&&(e={parent:e}),this.#t=e?.uuid??Os(),this.#e=t,this.#r=e?.order??0,this.#i=e?.parent;let r=e?.context??N.get();if(this.#i&&this.#i.#s!==r)throw new Rt("cannot set parent from different context");this.context=r}isChildOf(t){return this.#i===t}removeFromParent(){this.#i?(this.#s?.removeFromParent(this.uuid,this.#i),this.#i=void 0):this.#s?.moveToRoot(this.uuid)}addChild(t){if(t.#s!==this.#s)throw new Rt("cannot add a child from another context");t.isChildOf(this)||(t.removeFromParent(),t.#i=this,this.#s.addToChildren(this,t))}setProperty(t,e,r){this.#s.setProperty(this,t,e,r)}removeProperty(t){this.#s.removeProperty(this,t)}dispatchShadowObjectsEvent(t,e,r){this.#s.dispatchShadowObjectsEvent(this,t,e,r)}dispatchEvent(t,e,r){if(d(this,t,e),r)for(let i of this.#s.getChildren(this))i.dispatchEvent(t,e,r)}destroy(){this.removeFromParent(),this.#s?.destroyComponent(this),this.#s=void 0}};var ee="shaeRequestEntParent",se="shaeReRequestEntParent",Ts="shae-worker",re="shae-ent",Ps="shae-prop",X="token",Z="ns",ie="local",Rs="no-autostart",ne="no-structured-clone",F="auto-sync",oe="src",ae="name",he="value",le="type",ue="no-trim";var Mt=new Set(["on","true","yes","local","1"]);var Ms=s=>ct(s.getAttribute(Z)),Lt=(s,t)=>{if(s.hasAttribute(t)){let e=s.getAttribute(t)?.trim()?.toLowerCase()||"1";return Mt.has(e)}return!1};var Ls=(s,t)=>{t.set(Ms(s))},Fe=new Set,We=!1,hr=s=>{Fe.add(s),We||(We=!0,queueMicrotask(()=>{We=!1;for(let t of Fe)I.get(t)?.sync();Fe.clear()}))},tt=class extends HTMLElement{static{this.observedAttributes=[Z]}get ns(){return this.ns$.value}set ns(t){typeof t=="symbol"?this.ns$.set(t):this.ns$.set(ct(t))}constructor(){super(),this.isShaeElement=!0,this.ns$=f(ut),this.ns$.onChange(t=>{typeof t=="string"&&t.length>0?this.getAttribute(Z)!==t&&this.setAttribute(Z,t):this.removeAttribute(Z)}),Ls(this,this.ns$)}attributeChangedCallback(t){t===Z&&Ls(this,this.ns$)}syncShadowObjects(){hr(this.ns)}};var ce=class extends tt{static{this.observedAttributes=[...tt.observedAttributes,X]}get componentContext(){return this.componentContext$.value}get viewComponent(){return this.viewComponent$.value}get uuid(){return this.viewComponent?.uuid}get token(){return this.token$.value}set token(t){this.token$.set(t)}#t;constructor(){super(),this.isShaeEntElement=!0,this.componentContext$=f(),this.viewComponent$=f(),this.token$=f(),this.#n=!0,this.#f=()=>{let t=this.findShadowRootHost();t!=null&&this.dispatchEvent(new CustomEvent(se,{bubbles:!0,composed:!0,detail:{requester:this,shadowRootHost:t}}))},this.#d=t=>{let e=t.detail?.requester;if(e===this||!e?.isShaeEntElement||e.ns!==this.ns)return;t.detail?.shadowRootHost&&this.#l()},this.#g=t=>{let e=t.detail?.requester;e!==this&&e?.isShaeEntElement&&e.ns===this.ns&&(t.stopPropagation(),e.#c(this))},this.ns$.onChange(t=>{this.componentContext$.set(N.get(t)),this.isConnected&&this.#l()}),this.#p(),this.token$.onChange(t=>{t==null?this.removeAttribute(X):this.getAttribute(X)!==t&&this.setAttribute(X,t)}),w(()=>{let t=this.viewComponent$.get();if(t){let e=m(t,N.ReRequestParentRoots,()=>this.#h()),r=t.context?.ns;return()=>{e(),t.destroy(),r&&r!==this.ns?I.get(r)?.sync():this.syncShadowObjects()}}}),this.token$.onChange(t=>{let e=this.viewComponent$.value;e&&(e.token=t,this.syncShadowObjects())})}#e;#s(){this.#e?.();let t=this.componentContext$.onChange(e=>{let r=this.token$.value,i=this.viewComponent$.value;i?i.context=e:e&&(i=new te(r,{context:e}),this.viewComponent$.set(i)),this.syncShadowObjects()});this.#e=()=>{t()}}#i(){this.#e?.(),this.#e=void 0}#r;#n;findShadowRootHost(){if(this.#n){this.#n=!1;let t=this;for(;t;){if(t.parentElement==null){let e=t.parentNode;e&&(this.#r=e.host);break}t=t.parentElement}}return this.#r}getParentNodeForObserver(){let t=this.parentNode;return t||(t.host??t)}connectedCallback(){this.#n=!0,this.addEventListener("slotchange",this.#f,{capture:!1,passive:!1}),this.addEventListener(ee,this.#g,{capture:!1,passive:!1}),this.#s(),Me(()=>this.#p()),this.componentContext==null&&this.componentContext$.set(N.get(this.ns)),this.#l(),this.componentContext?.dispatchReRequestParentRoots(),this.#o(),this.syncShadowObjects()}#o(){this.#a();let t=this.getParentNodeForObserver();t&&(this.#t=new MutationObserver((e,r)=>{for(let{target:i,removedNodes:n}of e)if(i===t){for(let o of n)if(o===this){this.#a(),this.onParentChanged(this.getParentNodeForObserver(),t);break}}}),this.#t.observe(t,{childList:!0,subtree:!1,attributes:!1}))}onParentChanged(t,e){this.#c(void 0),this.#l()}#a(){this.#t?.disconnect(),this.#t=void 0}attributeChangedCallback(t){super.attributeChangedCallback(t),t===X&&this.#p()}disconnectedCallback(){this.#n=!0,this.#a(),this.removeEventListener("slotchange",this.#f,{capture:!1}),this.removeEventListener(ee,this.#g,{capture:!1}),this.#c(void 0),this.componentContext$.set(void 0),this.syncShadowObjects(),this.#i()}#h(){this.isConnected&&(this.#c(void 0),this.#l())}#l(){this.dispatchEvent(new CustomEvent(ee,{bubbles:!0,composed:!0,detail:{requester:this}}))}#u;#c(t){if(this.entParentNode!==t)if(this.entParentNode&&this.entParentNode.removeEventListener(se,this.#d,{capture:!1}),this.entParentNode=t,this.entParentNode&&this.entParentNode.addEventListener(se,this.#d,{capture:!1,passive:!1}),this.#u?.(),this.#u=void 0,t){let e=w(()=>{let r=this.viewComponent$.get();if(r){let i=t.viewComponent$.get();r.parent=i&&i.context===r.context?i:void 0,r.parent==null&&queueMicrotask(()=>{this.#l()}),this.syncShadowObjects()}});this.#u=()=>e.destroy()}else{let e=this.viewComponent;e.parent&&(e.parent=void 0,this.syncShadowObjects())}}#f;#d;#g;#p(){if(this.hasAttribute(X)){let t=this.getAttribute(X)?.trim()||void 0;this.token$.set(t)}}};customElements.define(re,ce);var lr=s=>{let t=s.parentElement;for(;t;){if(t.isShaeEntElement)return t;t=t.parentElement}},ur=new Set(["string","text","number","bigint","float","int","integer","hex","hexadecimal","oct","octal","bin","binary","bool","boolean","[]","text[]","string[]","number[]","float[]","int[]","integer[]","hex[]","hexadecimal[]","oct[]","octal[]","bin[]","binary[]","bool[]","boolean[]","int8array","uint8array","uint8clampedarray","int16array","uint16array","int32array","uint32array","float32array","float64array","bigint64array","biguint64array","json"]),fe=class extends HTMLElement{static{this.observedAttributes=[ae,he,le,ue]}get name(){return this.name$.value}get value(){return this.valueOut$.value}set value(t){this.valueIn$.set(t)}get shouldTrim(){return this.shouldTrim$.value}get entNode(){return this.entNode$.value}set entNode(t){this.entNode$.set(t)}get viewComponent(){return this.viewComponent$.value}constructor(){super(),this.isShaeEntElement=!0,this.entNode$=f(),this.viewComponent$=f(),this.name$=f(),this.valueIn$=f(),this.valueOut$=f(),this.type$=f(),this.shouldTrim$=f(!0),this.logger=new A("ShaePropElement"),this.#t=()=>{this.entNode$.set(lr(this))},this.#e=()=>{queueMicrotask(()=>{this.isConnected||this.entNode$.set(void 0)})},this.#s=()=>{this.name$.set(this.getAttribute(ae)?.trim()??void 0)},this.#i=()=>{this.valueIn$.set(this.getAttribute(he))},this.#r=()=>{let t=this.getAttribute(le)?.trim().toLowerCase();t&&!ur.has(t)&&(this.logger.isWarn&&this.logger.warn(`[${this.name}] unknown type "${t}"`,{shaeProp:this}),t=void 0),this.type$.set(t)},this.#n=()=>{this.shouldTrim$.set(!Lt(this,ue))},this.entNode$.onChange(t=>{if(t){let e=_(t.viewComponent$,this.viewComponent$);return()=>{e.destroy()}}else this.viewComponent$.set(void 0)}),w(()=>{let t=this.viewComponent$.get();if(t){let e=this.name$.get();if(e){let r=this.valueOut$.get();this.logger.isDebug&&this.logger.debug(`[${this.name}] view-component set-property`,e,r,t.uuid,{viewComponent:t,shaeProp:this}),t.setProperty(e,r),this.isConnected&&this.entNode?.syncShadowObjects()}}}),w(()=>{let t=this.type$.get(),e=this.shouldTrim$.get(),r=this.valueIn$.get();if(e&&typeof r=="string"&&(r=r.trim()),r=r||void 0,r!=null&&typeof r=="string"&&t)switch(t){case"string":case"text":break;case"number":r=Number(r);break;case"bigint":r=BigInt(r);break;case"float":r=parseFloat(r);break;case"int":case"integer":r=parseInt(r,10);break;case"hex":case"hexadecimal":r=parseInt(r,16);break;case"oct":case"octal":r=parseInt(r,8);break;case"bin":case"binary":r=parseInt(r,2);break;case"bool":case"boolean":r=Mt.has(r.toLowerCase());break;case"[]":case"text[]":case"string[]":r=r.split(/\W+/);break;case"number[]":r=r.split(/\s+/).map(i=>Number(i));break;case"float[]":r=r.split(/\s+/).map(i=>parseFloat(i));break;case"int[]":case"integer[]":r=r.split(/\s+/).map(i=>parseInt(i));break;case"hex[]":case"hexadecimal[]":r=r.split(/\W+/).map(i=>parseInt(i,16));break;case"oct[]":case"octal[]":r=r.split(/\W+/).map(i=>parseInt(i,8));break;case"bin[]":case"binary[]":r=r.split(/\W+/).map(i=>parseInt(i,2));break;case"bool[]":case"boolean[]":r=r.split(/\W+/).map(i=>Mt.has(i.toLowerCase()));break;case"int8array":r=new Int8Array(r.split(/\W+/).map(i=>Number(i)));break;case"uint8array":r=new Uint8Array(r.split(/\W+/).map(i=>Number(i)));break;case"uint8clampedarray":r=new Uint8ClampedArray(r.split(/\W+/).map(i=>Number(i)));break;case"int16array":r=new Int16Array(r.split(/\W+/).map(i=>Number(i)));break;case"uint16array":r=new Uint16Array(r.split(/\W+/).map(i=>Number(i)));break;case"int32array":r=new Int32Array(r.split(/\W+/).map(i=>Number(i)));break;case"uint32array":r=new Uint32Array(r.split(/\W+/).map(i=>Number(i)));break;case"float32array":r=new Float32Array(r.split(/\s+/).map(i=>Number(i)));break;case"float64array":r=new Float64Array(r.split(/\s+/).map(i=>Number(i)));break;case"bigint64array":r=new BigInt64Array(r.split(/\W+/).map(i=>BigInt(i)));break;case"biguint64array":r=new BigUint64Array(r.split(/\W+/).map(i=>BigInt(i)));break;case"json":r=JSON.parse(r);break;default:this.logger.isWarn&&this.logger.warn(`[${this.name}] unknown type "${t}"`,{value:r,shaeProp:this})}this.valueOut$.set(r)}),O(()=>{this.#s(),this.#i(),this.#r(),this.#n()})}connectedCallback(){O(()=>{this.#t(),this.#s(),this.#i(),this.#r(),this.#n()})}attributeChangedCallback(t){switch(t){case ae:this.#s();break;case he:this.#i();break;case le:this.#r();break;case ue:this.#n();break}}disconnectedCallback(){this.#e()}#t;#e;#s;#i;#r;#n};customElements.whenDefined(re).then(()=>customElements.define(Ps,fe));var de,ze=null,bt=class{static{this.OnFrame=Symbol("onFrame")}#t=0;#e=0;constructor(){if(ze)return ze;S(this),ze=this}start(t){if(t!=null)return ke(this)===0&&this.#i(),m(this,de.OnFrame,t),this.#e++,()=>{this.stop(t)}}stop(t){E(this,de.OnFrame,t),ke(this)===0&&this.#r()}#s=t=>{d(this,de.OnFrame,t),this.#i()};#i(){this.#t=requestAnimationFrame(this.#s)}#r(){cancelAnimationFrame(this.#t),this.#t=0}};de=bt;var vt="value",jt=(()=>{let s,t=[],e=[];return class{static{let i=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;s=[Ot({name:vt})],At(this,null,s,{kind:"accessor",name:"value",static:!1,private:!1,access:{has:n=>"value"in n,get:n=>n.value,set:(n,o)=>{n.value=o}},metadata:i},t,e),i&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:i})}static{this.Value=vt}#t;#e;#s;get value(){return this.#s}set value(i){this.#s=i}constructor(i){this.#t=[],this.#s=J(this,t,void 0),this.value$=J(this,e),U(this,vt),this.value$=T(this,vt),this.value$.onChange(n=>d(this,vt,n)),i&&this.add(...i)}add(...i){return this.#t.push(...i),this.#r(),this.#i(i)}unshift(...i){return this.#t.unshift(...i),this.#r(),this.#i(i)}remove(...i){this.#i(i)()}clear(){this.#t.length=0,this.#r()}dispose(){this.clear(),this.#e?.destroy(),this.#e=void 0,H(this,vt),E(this),this.value$.destroy(),St(this)}#i(i){return()=>{for(let n of i){let o=this.#t.indexOf(n);o!==-1&&this.#t.splice(o,1)}this.#r()}}#r(){this.#e?.destroy(),this.#t.length===0?(this.#e=void 0,this.value=void 0):(this.#e=w(()=>{let i;for(let n of this.#t){let o=lt(n);if(o!=null){i=o;break}}this.value=i},this.#t),this.#e.run())}}})();var Ue="onCreate",et="onDestroy",js="onParentChanged",_s="onViewEvent";var Ve=new Map,Ge=!1,cr=(s,t)=>{Ve.set(s,t),Ge||(Ge=!0,queueMicrotask(()=>{Ge=!1;let e=Array.from(Ve.entries());Ve.clear();for(let[r,i]of e)r.set(i)}))},pe=class{#t;#e;#s=new Jt;#i=new Map;#r=new Map;#n;#o;#a=new Set;#h=[];#l=0;get kernel(){return this.#t}get uuid(){return this.#e}get order(){return this.#l}set order(t){this.#l!==t&&(this.#l=t,this.#n&&this.parent.resortChildren())}get parentUuid(){return this.#n||void 0}set parentUuid(t){this.#n!==t&&(this.removeFromParent(),this.#n=t||void 0,this.#o=t?this.#t.getEntity(t):void 0,this.#o&&this.#o.addChild(this))}get parent(){return!this.#o&&this.#n&&(this.#o=this.#t.getEntity(this.#n)),this.#o}set parent(t){this.parentUuid=t?.uuid}get hasParent(){return!!this.#n}get children(){return this.#h}constructor(t,e){this.#t=t,this.#e=e,C(this,et,z.Min,this)}traverse(t){t(this);for(let e of this.#h)e.traverse(t)}onDestroy(){this.#s.clear(),E(this);for(let t of this.#r.values())t.cleanup(),t.signal.destroy();this.#r.clear();for(let t of this.#i.values())t.context.set(void 0),t.unsubscribePathValue(),t.unsubscribeFromParent?.(),t.valuePath.dispose(),t.inherited.destroy(),t.provide.destroy(),t.context.destroy();this.#n=void 0,this.#o=void 0,this.#a.clear(),this.#h.length=0}addChild(t){if(this.#h.length===0){this.#a.add(t.uuid),this.#h.push(t);return}if(this.#a.has(t.uuid))throw new Error(`child with uuid: ${t.uuid} already exists! parentUuid: ${this.uuid}`);this.#a.add(t.uuid),this.#h.push(t),this.resortChildren();for(let[,e]of t.#i)t.#d(e)}resortChildren(){this.#h.sort((t,e)=>t.order-e.order)}removeChild(t){this.#a.has(t.uuid)&&(this.#a.delete(t.uuid),this.#h.splice(this.#h.indexOf(t),1))}removeFromParent(){if(this.#o){this.#o.removeChild(this),this.#o=void 0,this.#n=void 0;for(let[,t]of this.#i)t.unsubscribeFromParent&&(t.unsubscribeFromParent(),t.unsubscribeFromParent=void 0)}}reSubscribeToParentContexts(){for(let[,t]of this.#i)this.#d(t)}dispatchMessageToView(t,e,r,i=!1){this.#t.dispatchMessageToView({uuid:this.#e,type:t,data:e,transferables:r,traverseChildren:i})}dispatchViewEvents(t){for(let{type:e,data:r}of t)d(this,_s,e,r)}dispatchViewEvent(t,e){this.dispatchViewEvents([{type:t,data:e}])}#u(t){return this.#s.get(t)}getPropertyReader(t){return this.#u(t).get}getPropertyWriter(t){return this.#u(t).set}setProperties(t){this.clearTruthyPropsCache(),O(()=>{for(let[e,r]of t)this.setProperty(e,r)})}setProperty(t,e){this.getPropertyWriter(t)(e)}getProperty(t){return lt(this.getPropertyReader(t))}propKeys(){return Array.from(this.#s.keys())}propEntries(){return Array.from(this.#s.entries()).map(([t,e])=>[t,e.value])}#c;clearTruthyPropsCache(){this.#c=void 0}truthyProps(){if(this.#c)return this.#c.size?this.#c:void 0;let t=new Set;for(let[e,r]of this.#s.entries())if(typeof e=="string"){let i=r.value;i!=null&&i!==!1&&i!==""&&t.add(e)}return this.#c=t,t.size?t:void 0}hasContext(t){return this.#i.has(t)}useContext(t){return this.#f(t).context.get}useParentContext(t){return this.#f(t).inherited.get}provideContext(t){return this.#f(t).provide}provideGlobalContext(t){if(this.#r.has(t))return this.#r.get(t).signal;let e=this.#t.findOrCreateRootContext(t),r=f(),i=e.add(r);return this.#r.set(t,{cleanup:i,signal:r}),r}#f(t){if(this.#i.has(t))return this.#i.get(t);let e=f(),r=f(),i=f(),n=new jt([r,e]),o=m(n,jt.Value,a=>{cr(i,a)}),h={name:t,inherited:e,provide:r,context:i,valuePath:n,unsubscribePathValue:o};return this.#i.set(t,h),this.#d(h),h}#d(t){if(t.unsubscribeFromParent?.(),t.unsubscribeFromParent=void 0,this.parent){let e=this.parent.#f(t.name),r=_(e.context,t.inherited);t.unsubscribeFromParent=r.destroy.bind(r)}else{let e=this.#t.findOrCreateRootContext(t.name),r=_(e.value$,t.inherited);t.unsubscribeFromParent=r.destroy.bind(r)}}};var Ns=s=>{let t=s.split("@").map(e=>e.trim());if(t.length===2&&t[1])return t[0]?{key:`${t[0]}@${t[1]}`,prop:t[1],token:t[0]}:{key:t[1],prop:t[1]}},ge=(s,t)=>{for(let e of t)s.add(e)},fr=(s,t)=>{if(s!=null)for(let e of s.constructors)t.add(e)},_t=class{static get(t){return t??dr}#t=new Map;#e=new Map;#s=new Map;define(t,e){this.#t.has(t)?Ss(this.#t.get(t).constructors,e):this.#t.set(t,{token:t,constructors:[e]})}appendRoute(t,e){let r=Ns(t);r?this.#s.has(r.key)?ge(this.#s.get(r.key).routes,e):this.#s.set(r.key,{routes:new Set(e),token:r.token}):this.#e.has(t)?ge(this.#e.get(t),e):this.#e.set(t,new Set(e))}clearRoute(t){let e=Ns(t);e?this.#s.delete(e.key):this.#e.delete(t)}findTokensByRoute(t,e){let r=new Set([t]),i=this.#e.has(t)?[...this.#e.get(t)]:[];for(;i.length;){let n=i.shift();r.has(n)||(r.add(n),this.#e.has(n)&&i.push(...Array.from(this.#e.get(n)).filter(o=>!r.has(o))))}if(e){for(let o of e)this.#s.has(o)&&ge(r,this.#s.get(o).routes);let n;do{n=r.size;for(let o of new Set(r))for(let h of e){let a=`${o}@${h}`;this.#s.has(a)&&ge(r,this.#s.get(a).routes)}}while(n!==r.size)}return r}findConstructors(t,e){let r=this.findTokensByRoute(t,e),i=new Set;for(let n of r)fr(this.#t.get(n),i);return i.size>0?Array.from(i):void 0}hasToken(t){return this.#t.has(t)}hasRoute(t){return this.#e.has(t)}clear(){this.#t.clear(),this.#e.clear()}},dr=new _t;var q;(function(s){s[s.CreateAndDestroy=0]="CreateAndDestroy",s[s.JustCreate=1]="JustCreate",s[s.DestroyOnly=2]="DestroyOnly"})(q||(q={}));var Ds=s=>s.displayName||s.name,ye=class{#t;#e;#s;#i;#r;#n;constructor(t){this.logger=new A("Kernel"),this.#t=new Map,this.#e=new Set,this.#r=!0,this.#n=new Map,S(this),this.registry=_t.get(t)}getEntity(t){let e=this.#t.get(t)?.entity;if(!e)throw new Error(`entity with uuid "${t}" not found!`);return e}hasEntity(t){return this.#t.has(t)}traverseLevelOrderBFS(t=!1){if(this.#r){let e=new Map,r=(i,n)=>{let o=this.getEntity(i);e.has(n)?e.get(n).push(o):e.set(n,[o]);for(let h of o.children)r(h.uuid,n+1)};this.#e.forEach(i=>r(i,0)),this.#s=Array.from(e.entries()).sort((i,n)=>i[0]-n[0]).map(([,i])=>i).flat(),this.#i=this.#s.slice().reverse(),this.#r=!1}return t?this.#i:this.#s}getEntityGraph(){return Array.from(this.#e).map(t=>this.getEntityGraphNode(t))}getEntityGraphNode(t){if(!this.#t.has(t))return;let{token:e,entity:r}=this.#t.get(t);return{token:e,entity:r,props:Object.fromEntries(r.propEntries()),children:r.children.map(i=>this.getEntityGraphNode(i.uuid))}}upgradeEntities(){let t=new Map;for(let e of this.traverseLevelOrderBFS(!0))t.set(e.uuid,this.updateShadowObjects(e.uuid,q.DestroyOnly));for(let e of this.traverseLevelOrderBFS(!1))this.updateShadowObjects(e.uuid,q.JustCreate,t.get(e.uuid));t.clear()}run(t){this.logger.isDebug&&this.logger.debug("sync",t),O(()=>{for(let e of t.changeTrail)this.parse(e)})}parse(t){switch(t.type){case b.CreateEntities:this.createEntity(t.uuid,t.token,t.parentUuid,t.order,t.properties),this.#r=!0;break;case b.DestroyEntities:this.destroyEntity(t.uuid),this.#r=!0;break;case b.SetParent:this.setParent(t.uuid,t.parentUuid,t.order),this.#r=!0;break;case b.UpdateOrder:this.updateOrder(t.uuid,t.order),this.#r=!0;break;case b.ChangeProperties:this.changeProperties(t.uuid,t.properties);break;case b.ChangeToken:this.changeToken(t.uuid,t.token);break;case b.SendEvents:this.dispatchEventsToEntity(t.uuid,t.events);break}}createEntity(t,e,r,i=0,n){let o=new pe(this,t);o.order=i;let h={token:e,entity:o,usedConstructors:new Map};this.#t.set(t,h),r&&(o.parentUuid=r),o.hasParent||this.#e.add(t),n&&o.setProperties(n),this.createShadowObjects(t)}destroyEntity(t){if(!this.#t.has(t))return;let{entity:e,usedConstructors:r}=this.#t.get(t);e.removeFromParent(),d(e,et,this),r.clear(),this.#t.delete(e.uuid),this.#e.delete(e.uuid)}setParent(t,e,r=0){let i=this.getEntity(t);i.parentUuid===e&&i.order===r||(i.removeFromParent(),i.order=r,i.parentUuid=e,i.hasParent?this.#e.delete(t):this.#e.add(t),i.reSubscribeToParentContexts(),queueMicrotask(()=>{this.logger.isDebug&&this.logger.debug("entity.onParentChanged",{uuid:t,parentUuid:e,order:r,entity:i}),d(i,js,i)}))}updateOrder(t,e){this.getEntity(t).order=e}dispatchEventsToEntity(t,e){this.getEntity(t)?.dispatchViewEvents(e)}changeProperties(t,e){this.getEntity(t).setProperties(e),this.updateShadowObjects(t)}changeToken(t,e){if(!this.#t.has(t))return;let r=this.#t.get(t);r.token!==e&&(r.token=e,this.updateShadowObjects(t))}dispatchMessageToView(t){queueMicrotask(()=>{d(this,mt,t)})}updateShadowObjects(t,e=q.CreateAndDestroy,r){let i=this.#t.get(t);r??=new Set(this.registry.findConstructors(i.token,i.entity.truthyProps()));let n=e===q.CreateAndDestroy||e===q.DestroyOnly,o=e===q.CreateAndDestroy||e===q.JustCreate;if(n){for(let[h,a]of i.usedConstructors)if(!r.has(h)){i.usedConstructors.delete(h);for(let c of a)this.destroyShadowObject(c,i.entity)}}if(o)for(let h of r)i.usedConstructors.has(h)||this.constructShadowObject(h,i);return r}constructShadowObject(t,e){let r=new Set,i=new Set,n=new Map,o=new Map,h=new Map,a=new Map,c=new Map,p=S(new t({entity:e.entity,provideContext(l,u,g){let y=h.get(l);if(y==null){y=f(u,g?{compare:g}:void 0);let P=_(y,e.entity.provideContext(l));i.add(P.destroy.bind(P)),h.set(l,y)}return y},provideGlobalContext(l,u,g){let y=a.get(l);if(y==null){y=f(u,g?{compare:g}:void 0);let P=_(y,e.entity.provideGlobalContext(l));i.add(P.destroy.bind(P)),a.set(l,y)}return y},useContext(l,u){let g=n.get(l);if(g===void 0){g=f(void 0,u?{compare:u}:void 0).get,n.set(l,g);let y=_(e.entity.useContext(l),g);i.add(y.destroy.bind(y))}return g},useParentContext(l,u){let g=o.get(l);if(g===void 0){g=f(void 0,u?{compare:u}:void 0).get,o.set(l,g);let y=_(e.entity.useParentContext(l),g);i.add(y.destroy.bind(y))}return g},useProperty(l,u){let g=c.get(l);if(g===void 0){g=f(void 0,u?{compare:u}:void 0).get,c.set(l,g);let y=_(e.entity.getPropertyReader(l),g);i.add(y.destroy.bind(y))}return g},createEffect(...l){let u=w(...l);return i.add(u.destroy),u},createSignal(...l){let u=f(...l);return i.add(()=>{x(u)}),u},createMemo(...l){let u=je(...l);return i.add(()=>{x(u)}),u},on(...l){let u=m(...l);return i.add(u),u},once(...l){let u=C(...l);return i.add(u),u},onDestroy(l){r.add(l)}}));return this.logger.isInfo&&this.logger.info("create shadow-object",Ds(t),{shadowObject:p,entity:e.entity}),C(e.entity,et,z.Low,()=>{this.logger.isInfo&&this.logger.info("destroy shadow-object",Ds(t),{shadowObject:p,entity:e.entity});for(let u of r)u();for(let u of i)u();for(let u of n.values())x(u);for(let u of o.values())x(u);for(let u of c.values())x(u);for(let u of h.values())x(u);for(let u of a.values())x(u);r.clear(),i.clear(),n.clear(),o.clear(),c.clear(),h.clear(),a.clear();let l=e.usedConstructors.get(t);l&&(l.delete(p),l.size===0&&e.usedConstructors.delete(t))}),e.usedConstructors.has(t)?e.usedConstructors.get(t).add(p):e.usedConstructors.set(t,new Set([p])),this.attachShadowObject(p,e.entity),p}createShadowObjects(t){let e=this.#t.get(t);this.registry.findConstructors(e.token,e.entity.truthyProps())?.forEach(r=>{this.constructShadowObject(r,e)})}findShadowObjects(t){if(!this.#t.has(t))return[];let{usedConstructors:e}=this.#t.get(t);return Array.from(new Set(Array.from(e.values()).map(r=>Array.from(r)).flat()))}attachShadowObject(t,e){m(e,t),typeof t[Ue]=="function"&&t[Ue](e)}destroyShadowObject(t,e){typeof t[et]=="function"&&t[et](e),d(t,et,e),E(e,t)}findOrCreateRootContext(t){let e=this.#n.get(t);return e||(e=new jt,this.#n.set(t,e)),e}destroy(){for(let t of this.#n.values())t.dispose();this.#n.clear();for(let t of this.traverseLevelOrderBFS().reverse())this.destroyEntity(t.uuid)}};async function Be(s,t,e,r=!0){if(e.has(t)){console.warn("importModule: skipping already imported module",t);return}else e.add(t);t.extends&&await Promise.all(t.extends.map(n=>Be(s,n,e,!1)));let{registry:i}=s;if(t.define)for(let[n,o]of Object.entries(t.define))i.define(n,o);if(t.routes)for(let[n,o]of Object.entries(t.routes))i.appendRoute(n,o);await(t.initialize?.({define:(n,o)=>i.define(n,o),kernel:s,registry:i})??Promise.resolve()),r&&s.upgradeEntities()}var me=s=>(typeof s=="string"&&(s=new URL(s,globalThis.location.href)),s.toString());function $s(s){return s.map(t=>{if(t.transferables&&t.transferables.length>0){let{transferables:e,...r}=t;return structuredClone(r,{transfer:e})}else return structuredClone(t)})}var be=class{#t;get registry(){return this.kernel.registry}constructor(t){this.#t=new Set,this.isLocalEnv=!0,this.disableStructuredClone=!1,this.kernel=new ye(t),m(this.kernel,mt,e=>{if(this.onMessageToView!=null){let{type:r,uuid:i,traverseChildren:n}=e,o=structuredClone(e.data,{transfer:e.transferables});this.onMessageToView({type:r,uuid:i,data:o,traverseChildren:n})}})}start(){return Promise.resolve()}applyChangeTrail(t,e){let r={changeTrail:this.disableStructuredClone?t:$s(t)},i;try{this.kernel.run(r),i=Promise.resolve()}catch(n){i=Promise.reject(n)}return i}async importScript(t){let e=await import(me(t));e[_e]&&await this.importModule(e[_e])}async importModule(t){return Be(this.kernel,t,this.#t)}destroy(){this.kernel.destroy(),this.registry.clear(),this.#t.clear()}};function qe(s){let t=new Blob([s],{type:"text/javascript"}),e=URL.createObjectURL(t),r=new Worker(e);return URL.revokeObjectURL(e),r}function He(){return qe('var Fs=Object.defineProperty;var se=Object.getOwnPropertySymbols;var Ve=Object.prototype.hasOwnProperty,$e=Object.prototype.propertyIsEnumerable;var Vs=(e,t)=>(t=Symbol[e])?t:Symbol.for("Symbol."+e),Ie=e=>{throw TypeError(e)};var ge=(e,t,s)=>t in e?Fs(e,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[t]=s,ye=(e,t)=>{for(var s in t||(t={}))Ve.call(t,s)&&ge(e,s,t[s]);if(se)for(var s of se(t))$e.call(t,s)&&ge(e,s,t[s]);return e};var Ge=(e,t)=>{var s={};for(var i in e)Ve.call(e,i)&&t.indexOf(i)<0&&(s[i]=e[i]);if(e!=null&&se)for(var i of se(e))t.indexOf(i)<0&&$e.call(e,i)&&(s[i]=e[i]);return s};var u=(e,t,s)=>ge(e,typeof t!="symbol"?t+"":t,s),pe=(e,t,s)=>t.has(e)||Ie("Cannot "+s);var r=(e,t,s)=>(pe(e,t,"read from private field"),s?s.call(e):t.get(e)),c=(e,t,s)=>t.has(e)?Ie("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,s),f=(e,t,s,i)=>(pe(e,t,"write to private field"),i?i.call(e,s):t.set(e,s),s),m=(e,t,s)=>(pe(e,t,"access private method"),s);var Ue=(e,t,s,i)=>({set _(a){f(e,t,a,s)},get _(){return r(e,t,i)}});var ve=function(e,t){this[0]=e,this[1]=t},Be=(e,t,s)=>{var i=(n,l,y,b)=>{try{var d=s[n](l),h=(l=d.value)instanceof ve,g=d.done;Promise.resolve(h?l[0]:l).then(p=>h?i(n==="return"?n:"next",l[1]?{done:p.done,value:p.value}:p,y,b):y({value:p,done:g})).catch(p=>i("throw",p,y,b))}catch(p){b(p)}},a=n=>o[n]=l=>new Promise((y,b)=>i(n,l,y,b)),o={};return s=s.apply(e,t),o[Vs("asyncIterator")]=()=>o,a("next"),a("throw"),a("return"),o};var We;(function(e){e[e.StructuralChanges=1]="StructuralChanges",e[e.ContentUpdates=2]="ContentUpdates",e[e.Removal=3]="Removal"})(We||(We={}));var X;(function(e){e[e.CreateEntities=1]="CreateEntities",e[e.DestroyEntities=2]="DestroyEntities",e[e.SetParent=3]="SetParent",e[e.UpdateOrder=4]="UpdateOrder",e[e.ChangeProperties=5]="ChangeProperties",e[e.ChangeToken=6]="ChangeToken",e[e.SendEvents=7]="SendEvents"})(X||(X={}));var Ui=Symbol.for("ShadowEntsGlobalNS"),$s="configure",Is="changeTrail",Gs="destroy",Us="loaded",qe="appliedChangeTrail",be="importedModule",Bs="destroyed",Ae="messageToView",me="shadowObjects",N="ConsoleLogger",D=`${N}Storage`,ns,os,hs,Ws=!!((hs=(os=(ns=globalThis.location)==null?void 0:ns.host)==null?void 0:os.startsWith("localhost"))!=null&&hs),Jt="localStorage"in globalThis,ie=Symbol.for(N),Je=!1,Ke=e=>{if(typeof e=="boolean")return e;switch(e.toLowerCase()){case"true":case"yes":case"on":return!0;default:return!1}},Oe=e=>[Jt?N:void 0,...Array.isArray(e)?e:[e]].filter(Boolean).join(".");function we(e,t=void 0,s){var o;let i=Oe(e),a=Jt?localStorage.getItem(i):(o=globalThis[D])==null?void 0:o[i];return a!=null?t(a):s}function Vt(e,t){Jt?localStorage.setItem(Oe(e),t):(globalThis[D]==null&&(globalThis[D]={},console.debug(`${N}: Initialize`,{[D]:globalThis[D]})),globalThis[D][Oe(e)]=t)}var vt,It,v,qs=(v=class{constructor(t){c(this,vt);this.enable=!0,this.namespace=(t||"").trim()||N,Je||(v.loadConfig(),Je=!0);let s=[this.namespace,"enable"];this.enable=we(s,Ke,this.enable),Vt(s,Jt?this.enable?"true":"false":this.enable)}static get isEnabled(){return v.sharedConfig.enable}static get isDebug(){return v.sharedConfig.enable&&v.sharedConfig.debug}static loadConfig(){var t,s,i;Jt?(["enable","debug","info","warn"].forEach(a=>{this.sharedConfig[a]=we(a,Ke,this.sharedConfig[a])}),["debug","info","warn","error"].forEach(a=>{this.sharedStyles[a]=we(["styles",a],void 0,this.sharedStyles[a])}),v.isDebug&&console.debug(`${N}: Load config from localStorage`,v.sharedConfig),(t=globalThis[N])!=null&&t[ie]||((s=globalThis[N])!=null||(globalThis[N]={[ie]:!0,get enable(){return v.sharedConfig.enable},set enable(a){v.sharedConfig.enable=a,Vt("enable",a?"true":"false")},get debug(){return v.sharedConfig.debug},set debug(a){v.sharedConfig.debug=a,Vt("debug",a?"true":"false")},get info(){return v.sharedConfig.info},set info(a){v.sharedConfig.info=a,Vt("info",a?"true":"false")},get warn(){return v.sharedConfig.warn},set warn(a){v.sharedConfig.warn=a,Vt("warn",a?"true":"false")}}))):(i=globalThis[D])!=null&&i[ie]||(globalThis[D]=ye(ye({[ie]:!0},v.sharedConfig),globalThis[D]),v.sharedConfig=globalThis[D],v.isDebug&&console.debug(`${N}: Load config from ${D}`,globalThis[D]))}get isEnabled(){return this.enable&&v.sharedConfig.enable}get isDebug(){return this.isEnabled&&v.sharedConfig.debug}get isInfo(){return this.isEnabled&&v.sharedConfig.info}get isWarn(){return this.isEnabled&&v.sharedConfig.warn}debug(...t){m(this,vt,It).call(this,"debug",v.sharedStyles.debug,t)}info(...t){m(this,vt,It).call(this,"info",v.sharedStyles.info,t)}warn(...t){m(this,vt,It).call(this,"warn",v.sharedStyles.warn,t)}error(...t){m(this,vt,It).call(this,"error",v.sharedStyles.error,t)}},vt=new WeakSet,It=function(t,s,i){console[t](`%c${this.namespace}`,s,...i)},v.sharedConfig={enable:Ws,debug:!1,info:!0,warn:!0,"styles.debug":"color: #111; background: #999; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em","styles.info":"color: #020; background: #8a8; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em","styles.warn":"color: #fa0; background: #a98; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em","styles.error":"color: #ff0; background: #a00; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em"},v.sharedStyles={get debug(){return v.sharedConfig["styles.debug"]},set debug(t){v.sharedConfig["styles.debug"]=t},get info(){return v.sharedConfig["styles.info"]},set info(t){v.sharedConfig["styles.info"]=t},get warn(){return v.sharedConfig["styles.warn"]},set warn(t){v.sharedConfig["styles.warn"]=t},get error(){return v.sharedConfig["styles.error"]},set error(t){v.sharedConfig["styles.error"]=t}},v),kt="*",vs=1,xe=2,Re=4,ft=Symbol.for("eventize"),Js="[eventize]",le=e=>e===kt,bs=e=>{switch(typeof e){case"string":case"symbol":return!0;default:return!1}},ms=typeof console<"u",Ks=ms?console[console.warn?"warn":"log"].bind(console,Js):()=>{},Ys=(e,t,s)=>(Object.defineProperty(e,t,{value:s,configurable:!0}),e),Hs=0,ws=class{constructor(){u(this,"events",new Map);u(this,"eventNames",new Set)}static publish(e){e.sort((t,s)=>t.order-s.order).forEach(t=>t.emit())}add(e){Array.isArray(e)?e.forEach(t=>this.eventNames.add(t)):this.eventNames.add(e)}remove(e){Array.isArray(e)?e.forEach(t=>this.eventNames.delete(t)):this.eventNames.delete(e),this.clear(e)}clear(e){Array.isArray(e)?e.forEach(t=>this.events.delete(t)):this.events.delete(e)}retain(e,t){this.eventNames.has(e)&&this.events.set(e,{args:t,order:Hs++})}isKnown(e){return this.eventNames.has(e)}emit(e,t,s=[]){if(le(e))this.eventNames.forEach(i=>this.emit(i,t,s));else if(this.events.has(e)){let{order:i,args:a}=this.events.get(e);s.push({order:i,emit:()=>t.apply(e,a)})}return s}},Pe=(e,t,s,i)=>{if(typeof t=="function"){let a=t.apply(e,s);a!=null&&(i==null||i(a))}},Qs=(e,t,s,i)=>Pe(t,t.emit,[e].concat(s),i),Xs=e=>{switch(typeof e){case"function":return vs;case"string":case"symbol":return xe;case"object":return Re}},Zs=0,_s=()=>++Zs,Cs=class{constructor(e,t,s,i=null){u(this,"id");u(this,"eventName");u(this,"isCatchEmAll");u(this,"priority");u(this,"listener");u(this,"listenerObject");u(this,"listenerType");u(this,"callAfterApply");u(this,"isRemoved");u(this,"refCount");this.id=_s(),this.eventName=e,this.isCatchEmAll=le(e),this.listener=s,this.listenerObject=i,this.priority=t,this.listenerType=Xs(s),this.callAfterApply=void 0,this.isRemoved=!1,this.refCount=1}isEqual(e,t=null){if(e===this)return!0;let s=typeof e;return s==="number"&&e===this.id?!0:t===null&&(s==="string"||s==="symbol")?e===kt||e===this.eventName:this.listener===e&&this.listenerObject===t}apply(e,t,s){if(this.isRemoved)return;let{listener:i,listenerObject:a}=this;switch(this.listenerType){case vs:Pe(a,i,t,s),this.callAfterApply&&this.callAfterApply();break;case xe:Pe(a,a[i],t,s),this.callAfterApply&&this.callAfterApply();break;case Re:{let o=i[e];if(this.isCatchEmAll||this.eventName===e){if(typeof o=="function"){let n=o.apply(i,t);n!=null&&(s==null||s(n))}else Qs(e,i,t,s);this.callAfterApply&&this.callAfterApply()}break}}}},ti=(e,t)=>e.priority!==t.priority?t.priority-e.priority:e.id-t.id,Ye=e=>e==null?void 0:e.slice(0),He=(e,t)=>{let s=e.indexOf(t);s>-1&&e.splice(s,1)},ei=e=>e===Re||e===xe,Me=(e,t,s)=>{let i=e.findIndex(a=>a.isEqual(t,s));i>-1&&(e[i].isRemoved=!0,e.splice(i,1))},re=(e,t,s)=>{let i=[];for(let a of e)(t==null&&a.listenerObject===s||a.eventName===t&&a.listener===s)&&i.push(a);for(let a of i)Me(e,a,void 0)},Ce=e=>{e&&(e.forEach(t=>{t.isRemoved=!0}),e.length=0)},si=(e,t)=>e.listenerType===t.listenerType?e.priority===t.priority&&e.eventName===t.eventName&&e.listenerObject===t.listenerObject&&e.listener===t.listener:!1,ii=(e,t)=>{if(ei(e.listenerType))return t.find(s=>si(e,s))},ri=(e,t)=>{let s=ii(e,t);return s?(s.refCount+=1,s):(t.push(e),t.sort(ti),e)},ai=class{constructor(){u(this,"namedListeners");u(this,"catchEmAllListeners");u(this,"getListenersForEventName",e=>{let t=this.namedListeners.get(e);return t||(t=[],this.namedListeners.set(e,t)),t});this.namedListeners=new Map,this.catchEmAllListeners=[]}add(e){return ri(e,e.isCatchEmAll?this.catchEmAllListeners:this.getListenersForEventName(e.eventName))}remove(e,t,s=!1){t==null&&Array.isArray(e)?e.forEach(i=>this.remove(i,null,s)):e==null||t==null&&le(e)?this.removeAllListeners():t==null&&bs(e)?Ce(this.namedListeners.get(e)):e instanceof Cs?e.isRemoved||(e.refCount-=1,e.refCount<1&&(e.isRemoved=!0,this.namedListeners.forEach(i=>He(i,e)),He(this.catchEmAllListeners,e))):s?le(e)&&typeof e=="object"?re(this.catchEmAllListeners,kt,e):this.namedListeners.forEach(i=>re(i,e,t)):(this.namedListeners.forEach(i=>{Me(i,e,t),typeof e=="object"&&re(i,void 0,e)}),Me(this.catchEmAllListeners,e,t),typeof e=="object"&&re(this.catchEmAllListeners,void 0,e))}removeAllListeners(){this.namedListeners.forEach(e=>Ce(e)),this.namedListeners.clear(),Ce(this.catchEmAllListeners)}forEach(e,t){let s=Ye(this.catchEmAllListeners),i=Ye(this.namedListeners.get(e));if(e===kt||!i||i.length===0)s.forEach(t);else if(s.length===0)i.forEach(t);else{let a=i.length,o=s.length,n=0,l=0;for(;n<a||l<o;){if(n<a){let y=i[n];if(l>=o||y.priority>=s[l].priority){t(y),++n;continue}}l<o&&(t(s[l]),++l)}}}getSubscriptionCount(){let e=this.catchEmAllListeners.length;for(let t of this.namedListeners.values())e+=t.length;return e}},zt=e=>!!(e&&e[ft]);function Kt(e){if(zt(e))return e;let t=new ai,s=new ws;return Ys(e,ft,{keeper:s,store:t}),e}var fe={Max:Number.POSITIVE_INFINITY,AAA:1e9,BB:1e6,C:1e3,Default:0,Low:-1e4,Min:Number.NEGATIVE_INFINITY},ni=(e,t,s,i,a,o,n)=>{let l=e.add(new Cs(s,i,a,o));return t.emit(s,l,n),l},oi=(e,t,s,i)=>{let a=s.length,o=typeof s[0],n,l,y,b;if(a>=2&&a<=3&&o==="number"?(n=kt,[l,y,b]=s):a>=3&&a<=4&&typeof s[1]=="number"?[n,l,y,b]=s:(l=fe.Default,o==="string"||o==="symbol"||Array.isArray(s[0])?[n,y,b]=s:(n=kt,[y,b]=s)),!y&&ms)throw Ks("called with insufficient arguments!",s),"subscribeTo() called with insufficient arguments!";let d=h=>g=>ni(e,t,g,h,y,b,i);return Array.isArray(n)?n.map(h=>Array.isArray(h)?d(h[1])(h[0]):d(l)(h)):d(l)(n)},Es=(e,t,s)=>{let i=[],a=oi(e,t,s,i);return ws.publish(i),a},Qe=e=>t=>{t.callAfterApply=()=>{e==null||e()}},Ss=(e,t)=>Object.assign(()=>z(e,t),Array.isArray(t)?{listeners:t}:{listener:t}),ks=(e,t,s,i)=>{let{store:a,keeper:o}=e[ft];Array.isArray(t)?t.forEach(n=>{a.forEach(n,l=>l.apply(n,s,i)),o.retain(n,s)}):t!==kt&&(a.forEach(t,n=>{n.apply(t,s,i)}),o.retain(t,s))},Q=(e,...t)=>{let s=Kt(e),{store:i,keeper:a}=s[ft];return Ss(s,Es(i,a,t))},O=(e,...t)=>{let s=Kt(e),{store:i,keeper:a}=s[ft],o=Es(i,a,t),n=Ss(s,o),l=!1,y=()=>{l||(n(),l=!0)};return Array.isArray(o)?o.forEach(Qe(y)):Qe(y)(o),y},hi=(e,t)=>new Promise(s=>{O(e,t,s)}),z=(e,t,s)=>{if(!zt(e))throw new Error("object is not eventized");let{store:i,keeper:a}=e[ft],o=typeof t,n=s!=null&&(o==="string"||o==="symbol");i.remove(t,s,n),Array.isArray(t)?a.remove(t.filter(l=>typeof l=="string")):bs(t)&&a.remove(t)},w=(e,t,...s)=>{if(!zt(e))throw new Error("object is not eventized");ks(e,t,s)},li=(e,t,...s)=>{if(!zt(e))throw new Error("object is not eventized");let i=[];return ks(e,t,s,a=>{i.push(a)}),i=i.map(a=>Array.isArray(a)?Promise.all(a):Promise.resolve(a)),i.length>0?Promise.all(i):Promise.resolve()},Ne=(e,t)=>{let s=Kt(e),{keeper:i}=s[ft];i.add(t)},de=(e,t)=>{if(!zt(e))throw new Error("object is not eventized");let{keeper:s}=e[ft];s.clear(t)},it=(()=>{let e=(t={})=>Kt(t);return e.inject=(t={})=>(t=Kt(t),Object.assign(t,{on:(...s)=>Q(t,...s),once:(...s)=>O(t,...s),onceAsync:s=>hi(t,s),off:(s,i)=>z(t,s,i),emit:(s,...i)=>w(t,s,...i),emitAsync:(s,...i)=>li(t,s,...i),retain:s=>Ne(t,s),retainClear:s=>de(t,s)}),t),e.is=zt,e})(),H=Symbol.for("signal"),Ot=Symbol.for("effect"),Xe=Symbol.for("destroySignal"),Ze=Symbol.for("createEffect"),di=Symbol.for("destroyEffect"),$t="value",_e="mute",ts="unmute",Wt="destroy",qt=Symbol.for("recall"),ue=it(),Nt=it(),yt=it(),As=it(),ke,Gt=(ke=class{constructor(){u(this,"delayedEffects",[])}batch(e,t){let s=this.delayedEffects.length;for(let i=0;i<s;i++){let[a,o]=this.delayedEffects[i];if(!(a>t))if(a===t){o.add(e);return}else{this.delayedEffects.splice(i,0,[t,new Set([e])]);return}}this.delayedEffects.push([t,new Set([e])])}run(){let e=new Set,t=[Q(yt,(i,a)=>{a===qt&&e.add(i)}),Q(As,i=>{e.add(i)})],s=this.delayedEffects.flatMap(([,i])=>Array.from(i));for(let i of s)e.has(i)||w(yt,i,i,qt);t.forEach(i=>{i()})}},u(ke,"current"),ke),ui=()=>Gt.current;function ce(e){let t=Gt.current;t?t=void 0:t=Gt.current=new Gt;try{e()}finally{t&&(Gt.current=void 0,t.run())}}var ci=0;function Os(){return ci>0}var ls,fi=(ls=Ot,class{constructor(e){u(this,ls);u(this,"run",()=>{var e;return(e=this[Ot])==null?void 0:e.run()});u(this,"destroy",()=>{var e;(e=this[Ot])==null||e.destroy(),this[Ot]=void 0});this[Ot]=e,O(e,js.Destroy,()=>{this[Ot]=void 0})}}),rt=new Map,B,bt,F,_,W,mt,wt,V,st,te=(st=class{constructor(t){c(this,B,new Set);c(this,bt,new Set);c(this,F,new Map);c(this,_,new WeakMap);c(this,W,new Map);c(this,mt,new Set);c(this,wt,new Set);c(this,V);if(t!=null&&t instanceof st)return t;if(t!=null||(t=this),rt.has(t))return rt.get(t);rt.set(t,this),it(this)}static get(t){if(t!=null)return t instanceof st?t:rt.get(t)}static findOrCreate(t){if(t==null)throw new Error("Cannot create a group with a null object");return new st(t)}static destroy(t){console.warn("SignalGroup.destroy(obj) is deprecated. Use SignalGroup.delete(obj) instead."),st.delete(t)}static delete(t){var s;(s=rt.get(t))==null||s.clear()}static clear(){for(let t of rt.values())t.destroy();rt.clear()}attachGroup(t){if(t===this)throw new Error("Cannot attach a group to itself");return r(this,B).add(t),r(t,V)&&r(t,V)!==this&&r(r(t,V),B).delete(t),f(t,V,this),t}detachGroup(t){return t!==this&&r(this,B).has(t)&&(r(this,B).delete(t),f(t,V,void 0)),t}attachSignal(t){let s=E(t);if(s!=null&&s.destroyed)throw new Error("Cannot attach a destroyed signal to a group");return s&&r(this,bt).add(s),t}attachSignalByName(t,s){if(s){this.attachSignal(s);let i=E(s);r(this,F).set(t,i),r(this,W).has(t)?r(this,W).get(t).push(i):r(this,W).set(t,[i]),r(this,_).has(i)?r(this,_).get(i).add(t):r(this,_).set(i,new Set([t]))}else r(this,F).delete(t);return s}hasSignal(t){var s;return r(this,F).has(t)||((s=r(this,V))==null?void 0:s.hasSignal(t))}signal(t){var s,i,a;return(a=(s=r(this,F).get(t))==null?void 0:s.object)!=null?a:(i=r(this,V))==null?void 0:i.signal(t)}detachSignal(t){let s=E(t);if(s&&(r(this,bt).delete(s),r(this,_).has(s))){let i=r(this,_).get(s);for(let a of i)if(r(this,W).has(a)){let o=r(this,W).get(a);o.splice(o.indexOf(s),1),o.length===0?(r(this,F).delete(a),r(this,W).delete(a)):r(this,F).get(a)===s&&r(this,F).set(a,o.at(-1))}i.clear(),r(this,_).delete(s)}return t}attachEffect(t){return r(this,mt).add(t),t}runEffects(){for(let t of r(this,mt))t.run();for(let t of r(this,B))t.runEffects()}attachLink(t){if(t!=null&&t.isDestroyed)throw new Error("Cannot attach a destroyed link to a group");return t&&r(this,wt).add(t),t}detachLink(t){return t&&r(this,wt).delete(t),t}destroy(){console.warn("SignalGroup#destroy is deprecated. Use SignalGroup#clear instead."),this.clear()}clear(){var t;w(this,Wt,this),z(this);for(let s of r(this,B))s.destroy();for(let s of r(this,mt))s.destroy();for(let s of r(this,bt))U(s);for(let s of r(this,wt))s.destroy();r(this,B).clear(),r(this,bt).clear(),r(this,F).clear(),r(this,W).clear(),r(this,mt).clear(),r(this,wt).clear(),(t=r(this,V))==null||t.detachGroup(this),rt.delete(this)}},B=new WeakMap,bt=new WeakMap,F=new WeakMap,_=new WeakMap,W=new WeakMap,mt=new WeakMap,wt=new WeakMap,V=new WeakMap,st),Qt,Xt,ds,Ps=(ds=class{constructor(e="id",t=1){c(this,Qt);c(this,Xt);f(this,Qt,e),f(this,Xt,t)}make(){return Symbol(`${r(this,Qt)}${Ue(this,Xt)._++}`)}},Qt=new WeakMap,Xt=new WeakMap,ds),je=[],Ms=()=>je.at(-1),gi=(e,t)=>{je.push(e);try{return t()}finally{je.pop()}},yi=e=>e!=null&&typeof e.then=="function",A,at,q,Ct,nt,ot,Et,jt,js=(A=class{constructor(t,s){u(this,"id");u(this,"callback");c(this,at);c(this,q,new Set);c(this,Ct,new Set);c(this,nt,new Map);c(this,ot,new Set);u(this,"parentEffect");u(this,"childEffects",[]);u(this,"curChildEffectSlot",0);u(this,"autorun",!0);u(this,"shouldRun",!0);u(this,"priority");c(this,Et);c(this,jt,!1);u(this,"run",()=>{if(r(this,jt)||!this.shouldRun)return;let t=ui();t?t.batch(this.id,this.priority):(this.runCleanupCallback(),this.curChildEffectSlot=0,this.shouldRun=!1,w(As,this.id,this.id),this.hasStaticDeps()?f(this,at,this.callback()):(f(this,Ct,new Set(r(this,q))),f(this,at,gi(this,this.callback)),this.cleanupLostSignals(),r(this,ot).clear()))});u(this,"destroy",()=>{r(this,jt)||(w(this,A.Destroy,this),z(this),w(yt,di,this),this.runCleanupCallback(),z(ue,this),z(yt,this),z(Nt,this),f(this,jt,!0),r(this,q).clear(),r(this,Ct).clear(),r(this,nt).clear(),r(this,ot).clear(),this.childEffects.forEach(t=>{t.destroy()}),this.childEffects.length=0,--A.count)});var a,o;it(this),this.callback=t;let i;(s==null?void 0:s.attach)!=null&&(i=te.findOrCreate(s.attach),i.attachEffect(this)),this.autorun=(a=s==null?void 0:s.autorun)!=null?a:!0,f(this,Et,s!=null&&s.dependencies?s.dependencies.map(n=>{switch(typeof n){case"string":case"symbol":return i.signal(n);default:return n}}):void 0),this.id=A.idGen.make(),this.priority=(o=s==null?void 0:s.priority)!=null?o:0,Q(yt,this.id,qt,this),++A.count}hasStaticDeps(){return r(this,Et)!=null&&r(this,Et).length>0}saveSignalsFromDeps(){for(let t of r(this,Et))this.whenSignalIsRead(E(t).id)}static createEffect(t,s,i){let a=Array.isArray(s)?s:void 0,o=a?i!=null?i:{dependencies:a}:s;o&&a&&(o.dependencies=a);let n,l=Ms();return l!=null?(n=l.getCurrentChildEffect(),n==null&&(n=new A(t,o),l.attachChildEffect(n),w(yt,Ze,n)),l.curChildEffectSlot++):(n=new A(t,o),w(yt,Ze,n)),n.hasStaticDeps()?n.saveSignalsFromDeps():n.autorun&&n.run(),new fi(n)}getCurrentChildEffect(){return this.childEffects[this.curChildEffectSlot]}attachChildEffect(t){this.childEffects.push(t),this.parentEffect=this}[qt](){this.shouldRun=!0,this.autorun&&this.run()}whenSignalIsRead(t){r(this,Ct).delete(t),r(this,q).has(t)||(r(this,q).add(t),r(this,nt).set(t,[Q(ue,t,this.priority,qt,this),O(Nt,t,Xe,this)]))}[Xe](t){!r(this,ot).has(t)&&r(this,q).has(t)&&(r(this,ot).add(t),this.unsubscribeSignal(t),r(this,ot).size===r(this,q).size&&this.destroy())}cleanupLostSignals(){for(let t of r(this,Ct))this.unsubscribeSignal(t),r(this,q).delete(t)}unsubscribeSignal(t){r(this,nt).has(t)&&(r(this,nt).get(t).forEach(s=>{s()}),r(this,nt).delete(t))}runCleanupCallback(){if(r(this,at)!=null){let t=r(this,at);f(this,at,void 0),yi(t)?Promise.resolve(t).then(s=>{typeof s=="function"&&s()}):t()}}},at=new WeakMap,q=new WeakMap,Ct=new WeakMap,nt=new WeakMap,ot=new WeakMap,Et=new WeakMap,jt=new WeakMap,u(A,"idGen",new Ps("ef")),u(A,"Destroy","destroy"),u(A,"count",0),A),ee=(...e)=>js.createEffect(...e),Yt=new WeakMap,pi=e=>{let t=Yt.get(e);return t||(t={},Yt.set(e,t)),t},Ht=(e,t)=>{var s,i;return(i=(s=Yt.get(e))==null?void 0:s.signals)==null?void 0:i.get(t)},vi=(e,t,s)=>{var a;let i=pi(e);(a=i.signals)!=null||(i.signals=new Map),i.signals.set(t,s)};function bi(...e){for(let t of e)if(Yt.has(t)){let s=Yt.get(t);if(s.signals){for(let i of s.signals.values())U(i);s.signals.clear(),s.signals=void 0}}}function mi(e){let t=E(Fe(e)?e:Ht(...e));t!=null&&!t.muted&&!t.destroyed&&Te(t.id,t.value,{touch:!0})}function ze(e){var t,s;return Fe(e)?(t=E(e))==null?void 0:t.value:(s=E(Ht(...e)))==null?void 0:s.value}var us,wi=(us=H,class{constructor(e){u(this,us);this[H]=e}get get(){return this[H].reader}get set(){return this[H].writer}get value(){return ze(this.get)}set value(e){this.set(e)}onChange(e){let{destroy:t}=ee(()=>e(this.value),[this.get]);return t}get muted(){return this[H].muted}set muted(e){this[H].muted=e}touch(){mi(this)}destroy(){U(this)}}),Ci=new Ps("si");function es(e){var t;Os()||((t=Ms())==null||t.whenSignalIsRead(e))}function Te(e,t,s){Os()||w(ue,e,t,s)}var Fe=e=>e!=null&&e[H]!=null,Ei=e=>{let t=s=>{var i;return s?ee(()=>(e.destroyed||es(e.id),s(e.value)),[t]):e.destroyed||((i=e.beforeRead)==null||i.call(e),es(e.id)),e.value};return Object.defineProperty(t,H,{value:e}),t},St,$,Ts=(St=class{constructor(t,s){u(this,"id");u(this,"lazy");u(this,"compare");u(this,"beforeRead");u(this,"muted",!1);u(this,"destroyed",!1);c(this,$);u(this,"valueFn");u(this,"reader");u(this,"writer",(t,s)=>{var o,n,l,y;let i=(o=s==null?void 0:s.lazy)!=null?o:!1,a=(l=(n=s==null?void 0:s.compare)!=null?n:this.compare)!=null?l:((b,d)=>b===d);if((i!==this.lazy||i&&t!==this.valueFn||!i&&!a(t,r(this,$)))&&(i?(f(this,$,void 0),this.valueFn=t,this.lazy=!0):(f(this,$,t),this.valueFn=void 0,this.lazy=!1),!this.muted&&!this.destroyed)){Te(this.id,r(this,$));return}(y=s==null?void 0:s.touch)!=null&&y&&Te(this.id,r(this,$),{touch:!0})});u(this,"object");this.id=Ci.make(),++St.instanceCount,this.lazy=t,this.lazy?(this.value=void 0,this.valueFn=s):(this.value=s,this.valueFn=void 0),this.reader=Ei(this),this.object=new wi(this)}get[H](){return this}get value(){return this.lazy&&(f(this,$,this.valueFn()),this.valueFn=void 0,this.lazy=!1),r(this,$)}set value(t){f(this,$,t)}},$=new WeakMap,u(St,"instanceCount",0),St),E=e=>e==null?void 0:e[H];function k(e=void 0,t){var i;let s;if(Fe(e))s=E(e);else{let a=(i=t==null?void 0:t.lazy)!=null?i:!1;s=new Ts(a,e),s.beforeRead=t==null?void 0:t.beforeRead,s.compare=t==null?void 0:t.compare}return(t==null?void 0:t.attach)!=null&&te.findOrCreate(t.attach).attachSignal(s),s.object}var U=(...e)=>{for(let t of e){let s=E(t);s!=null&&!s.destroyed&&(s.destroyed=!0,s.beforeRead=void 0,--Ts.instanceCount,w(Nt,s.id,s.id))}};function Si(e,t){var n,l;let s=k(),i=(t==null?void 0:t.attach)!=null?te.findOrCreate(t.attach):void 0;i!=null&&(t!=null&&t.name?i.attachSignalByName(t.name,s):i.attachSignal(s));let a=ee(()=>s.set(e()),{autorun:!((n=t==null?void 0:t.lazy)!=null&&n),priority:(l=t==null?void 0:t.priority)!=null?l:fe.C,attach:i}),o=E(s);return o.beforeRead=a.run,O(Nt,o.id,a.destroy),s.get}var S,Tt,cs,Ls=(cs=class{constructor(e){c(this,S,!1);c(this,Tt);u(this,"source");u(this,"lastValue");u(this,"isDestroyed",!1);it(this),this.source=E(e),f(this,Tt,Q(ue,this.source.id,(t,s)=>{!r(this,S)&&!this.isDestroyed&&((s==null?void 0:s.touch)===!0?this.touch():this.write())})),O(Nt,this.source.id,()=>this.destroy())}attach(e){let t=te.findOrCreate(e);return t.attachLink(this),O(this,Wt,()=>{t.detachLink(this)}),t}nextValue(){return new Promise((e,t)=>{let s=[],i=()=>s.forEach(a=>{a()});s.push(O(this,$t,a=>{i(),e(a)}),O(this,Wt,()=>{i(),t()}))})}asyncValues(e){return Be(this,null,function*(){let t=0;for(;!this.isDestroyed;)try{let s=yield new ve(this.nextValue());if(e&&e(s,t++))break;Ne(this,$t),yield s}catch(s){break}de(this,$t)})}destroy(){var e;this.isDestroyed||((e=r(this,Tt))==null||e.call(this),f(this,Tt,void 0),w(this,Wt,this),de(this,$t),z(this),this.lastValue=void 0,this.isDestroyed=!0,Object.freeze(this))}get isMuted(){return r(this,S)}mute(){return!this.isDestroyed&&!r(this,S)&&(f(this,S,!0),w(this,_e,this)),this}unmute(){return!this.isDestroyed&&r(this,S)&&(f(this,S,!1),w(this,ts,this)),this}toggle(){return this.isDestroyed||(f(this,S,!r(this,S)),w(this,r(this,S)?_e:ts,this)),r(this,S)}updateValue(e){if(!r(this,S)&&!this.isDestroyed){let{value:t}=this.source;e(t),w(this,$t,t),this.lastValue=t}}},S=new WeakMap,Tt=new WeakMap,cs),ki=class extends Ls{constructor(t,s){super(t);u(this,"target");this.target=E(s),O(Nt,this.target.id,()=>this.destroy()),this.touch()}touch(){return this.updateValue(t=>{this.target.writer(t,{touch:!0})}),this}write(){this.updateValue(t=>{this.target.writer(t)})}},Ai=class extends Ls{constructor(t,s){super(t);u(this,"target");this.target=s,this.touch()}touch(){return this.updateValue(t=>{this.target(t)}),this}write(){this.updateValue(t=>{this.target(t)})}},ae=new Map;function pt(e,t,s){var b;let i=E(e),a;if(ae.has(i)){a=ae.get(i);let d=(b=E(t))!=null?b:t;if(a.has(d))return a.get(d)}else a=new Map,ae.set(i,a);let o=E(t),n=o!=null?new ki(e,o):new Ai(e,t),l=s==null?void 0:s.attach;l&&n.attach(l);let y=o!=null?o:t;return a.set(y,n),O(n,Wt,()=>{a.delete(y),a.size===0&&ae.delete(i)}),n}var j,Lt,Oi=(Lt=class{constructor(){c(this,j,new Map)}static fromProps(t,s){let i=new Lt,a=s?s.map(o=>[o,t[o]]):Object.entries(t);for(let[o,n]of a)r(i,j).set(o,k(n));return i}keys(){return r(this,j).keys()}signals(){return r(this,j).values()}entries(){return r(this,j).entries()}clear(){for(let t of r(this,j).values())t.destroy();r(this,j).clear()}has(t){return r(this,j).has(t)}get(t){if(!r(this,j).has(t)){let s=k();return r(this,j).set(t,s),s}return r(this,j).get(t)}update(t){t.size&&ce(()=>{for(let[s,i]of t.entries())this.get(s).set(i)})}updateFromProps(t,s){ce(()=>{let i=s?s.map(a=>[a,t[a]]):Object.entries(t);for(let[a,o]of i)this.get(a).set(o)})}},j=new WeakMap,Lt);function Pi(e,t,s,i,a,o){function n(Ft){if(Ft!==void 0&&typeof Ft!="function")throw new TypeError("Function expected");return Ft}for(var l=i.kind,y=l==="getter"?"get":l==="setter"?"set":"value",b=!t&&e?i.static?e:e.prototype:null,d=t||(b?Object.getOwnPropertyDescriptor(b,i.name):{}),h,g=!1,p=s.length-1;p>=0;p--){var M={};for(var At in i)M[At]=At==="access"?{}:i[At];for(var At in i.access)M.access[At]=i.access[At];M.addInitializer=function(Ft){if(g)throw new TypeError("Cannot add initializers after decoration has completed");o.push(n(Ft||null))};var gt=(0,s[p])(l==="accessor"?{get:d.get,set:d.set}:d[y],M);if(l==="accessor"){if(gt===void 0)continue;if(gt===null||typeof gt!="object")throw new TypeError("Object expected");(h=n(gt.get))&&(d.get=h),(h=n(gt.set))&&(d.set=h),(h=n(gt.init))&&a.unshift(h)}else(h=n(gt))&&(l==="field"?a.unshift(h):d[y]=h)}b&&Object.defineProperty(b,i.name,d),g=!0}function ss(e,t,s){for(var i=arguments.length>2,a=0;a<t.length;a++)s=i?t[a].call(e,s):t[a].call(e);return i?s:void 0}function Mi(e){return function(t,s){var o;let i=(e==null?void 0:e.name)||s.name,a=!!((o=e==null?void 0:e.readAsValue)!=null&&o);return{get(){let n=Ht(this,i);if(n)return a?n.value:n.get()},set(n){var l;(l=Ht(this,i))==null||l.set(n)},init(n){let l=k(n,e);return vi(this,i,l),te.findOrCreate(this).attachSignalByName(i,l),l.value}}}}var Pt="value",Le=(()=>{var i,a,o,n,oe,Ut,b;let e,t=[],s=[];return b=class{constructor(h){c(this,n);c(this,i);c(this,a);c(this,o);f(this,i,[]),f(this,o,ss(this,t,void 0)),this.value$=ss(this,s),Ne(this,Pt),this.value$=Ht(this,Pt),this.value$.onChange(g=>w(this,Pt,g)),h&&this.add(...h)}get value(){return r(this,o)}set value(h){f(this,o,h)}add(...h){return r(this,i).push(...h),m(this,n,Ut).call(this),m(this,n,oe).call(this,h)}unshift(...h){return r(this,i).unshift(...h),m(this,n,Ut).call(this),m(this,n,oe).call(this,h)}remove(...h){m(this,n,oe).call(this,h)()}clear(){r(this,i).length=0,m(this,n,Ut).call(this)}dispose(){var h;this.clear(),(h=r(this,a))==null||h.destroy(),f(this,a,void 0),de(this,Pt),z(this),this.value$.destroy(),bi(this)}},i=new WeakMap,a=new WeakMap,o=new WeakMap,n=new WeakSet,oe=function(h){return()=>{for(let g of h){let p=r(this,i).indexOf(g);p!==-1&&r(this,i).splice(p,1)}m(this,n,Ut).call(this)}},Ut=function(){var h;(h=r(this,a))==null||h.destroy(),r(this,i).length===0?(f(this,a,void 0),this.value=void 0):(f(this,a,ee(()=>{let g;for(let p of r(this,i)){let M=ze(p);if(M!=null){g=M;break}}this.value=g},r(this,i))),r(this,a).run())},(()=>{let h=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;e=[Mi({name:Pt})],Pi(b,null,e,{kind:"accessor",name:"value",static:!1,private:!1,access:{has:g=>"value"in g,get:g=>g.value,set:(g,p)=>{g.value=p}},metadata:h},t,s),h&&Object.defineProperty(b,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:h})})(),b.Value=Pt,b})(),is="onCreate",Mt="onDestroy",ji="onParentChanged",Ti="onViewEvent",Ee=new Map,Se=!1,Li=(e,t)=>{Ee.set(e,t),Se||(Se=!0,queueMicrotask(()=>{Se=!1;let s=Array.from(Ee.entries());Ee.clear();for(let[i,a]of s)i.set(a)}))},J,Dt,ht,I,lt,x,T,tt,R,xt,P,De,dt,Bt,he,fs,Di=(fs=class{constructor(e,t){c(this,P);c(this,J);c(this,Dt);c(this,ht,new Oi);c(this,I,new Map);c(this,lt,new Map);c(this,x);c(this,T);c(this,tt,new Set);c(this,R,[]);c(this,xt,0);c(this,dt);f(this,J,e),f(this,Dt,t),O(this,Mt,fe.Min,this)}get kernel(){return r(this,J)}get uuid(){return r(this,Dt)}get order(){return r(this,xt)}set order(e){r(this,xt)!==e&&(f(this,xt,e),r(this,x)&&this.parent.resortChildren())}get parentUuid(){return r(this,x)||void 0}set parentUuid(e){r(this,x)!==e&&(this.removeFromParent(),f(this,x,e||void 0),f(this,T,e?r(this,J).getEntity(e):void 0),r(this,T)&&r(this,T).addChild(this))}get parent(){return!r(this,T)&&r(this,x)&&f(this,T,r(this,J).getEntity(r(this,x))),r(this,T)}set parent(e){this.parentUuid=e==null?void 0:e.uuid}get hasParent(){return!!r(this,x)}get children(){return r(this,R)}traverse(e){e(this);for(let t of r(this,R))t.traverse(e)}onDestroy(){var e;r(this,ht).clear(),z(this);for(let t of r(this,lt).values())t.cleanup(),t.signal.destroy();r(this,lt).clear();for(let t of r(this,I).values())t.context.set(void 0),t.unsubscribePathValue(),(e=t.unsubscribeFromParent)==null||e.call(t),t.valuePath.dispose(),t.inherited.destroy(),t.provide.destroy(),t.context.destroy();f(this,x,void 0),f(this,T,void 0),r(this,tt).clear(),r(this,R).length=0}addChild(e){var t;if(r(this,R).length===0){r(this,tt).add(e.uuid),r(this,R).push(e);return}if(r(this,tt).has(e.uuid))throw new Error(`child with uuid: ${e.uuid} already exists! parentUuid: ${this.uuid}`);r(this,tt).add(e.uuid),r(this,R).push(e),this.resortChildren();for(let[,s]of r(e,I))m(t=e,P,he).call(t,s)}resortChildren(){r(this,R).sort((e,t)=>e.order-t.order)}removeChild(e){r(this,tt).has(e.uuid)&&(r(this,tt).delete(e.uuid),r(this,R).splice(r(this,R).indexOf(e),1))}removeFromParent(){if(r(this,T)){r(this,T).removeChild(this),f(this,T,void 0),f(this,x,void 0);for(let[,e]of r(this,I))e.unsubscribeFromParent&&(e.unsubscribeFromParent(),e.unsubscribeFromParent=void 0)}}reSubscribeToParentContexts(){for(let[,e]of r(this,I))m(this,P,he).call(this,e)}dispatchMessageToView(e,t,s,i=!1){r(this,J).dispatchMessageToView({uuid:r(this,Dt),type:e,data:t,transferables:s,traverseChildren:i})}dispatchViewEvents(e){for(let{type:t,data:s}of e)w(this,Ti,t,s)}dispatchViewEvent(e,t){this.dispatchViewEvents([{type:e,data:t}])}getPropertyReader(e){return m(this,P,De).call(this,e).get}getPropertyWriter(e){return m(this,P,De).call(this,e).set}setProperties(e){this.clearTruthyPropsCache(),ce(()=>{for(let[t,s]of e)this.setProperty(t,s)})}setProperty(e,t){this.getPropertyWriter(e)(t)}getProperty(e){return ze(this.getPropertyReader(e))}propKeys(){return Array.from(r(this,ht).keys())}propEntries(){return Array.from(r(this,ht).entries()).map(([e,t])=>[e,t.value])}clearTruthyPropsCache(){f(this,dt,void 0)}truthyProps(){if(r(this,dt))return r(this,dt).size?r(this,dt):void 0;let e=new Set;for(let[t,s]of r(this,ht).entries())if(typeof t=="string"){let i=s.value;i!=null&&i!==!1&&i!==""&&e.add(t)}return f(this,dt,e),e.size?e:void 0}hasContext(e){return r(this,I).has(e)}useContext(e){return m(this,P,Bt).call(this,e).context.get}useParentContext(e){return m(this,P,Bt).call(this,e).inherited.get}provideContext(e){return m(this,P,Bt).call(this,e).provide}provideGlobalContext(e){if(r(this,lt).has(e))return r(this,lt).get(e).signal;let t=r(this,J).findOrCreateRootContext(e),s=k(),i=t.add(s);return r(this,lt).set(e,{cleanup:i,signal:s}),s}},J=new WeakMap,Dt=new WeakMap,ht=new WeakMap,I=new WeakMap,lt=new WeakMap,x=new WeakMap,T=new WeakMap,tt=new WeakMap,R=new WeakMap,xt=new WeakMap,P=new WeakSet,De=function(e){return r(this,ht).get(e)},dt=new WeakMap,Bt=function(e){if(r(this,I).has(e))return r(this,I).get(e);let t=k(),s=k(),i=k(),a=new Le([s,t]),o=Q(a,Le.Value,l=>{Li(i,l)}),n={name:e,inherited:t,provide:s,context:i,valuePath:a,unsubscribePathValue:o};return r(this,I).set(e,n),m(this,P,he).call(this,n),n},he=function(e){var t,s;if((t=e.unsubscribeFromParent)==null||t.call(e),e.unsubscribeFromParent=void 0,this.parent){let i=m(s=this.parent,P,Bt).call(s,e.name),a=pt(i.context,e.inherited);e.unsubscribeFromParent=a.destroy.bind(a)}else{let i=r(this,J).findOrCreateRootContext(e.name),a=pt(i.value$,e.inherited);e.unsubscribeFromParent=a.destroy.bind(a)}},fs);function xi(e,t){e.indexOf(t)===-1&&e.push(t)}var rs=e=>{let t=e.split("@").map(s=>s.trim());if(t.length===2&&t[1])return t[0]?{key:`${t[0]}@${t[1]}`,prop:t[1],token:t[0]}:{key:t[1],prop:t[1]}},ne=(e,t)=>{for(let s of t)e.add(s)},Ri=(e,t)=>{if(e!=null)for(let s of e.constructors)t.add(s)},et,L,G,gs,Ds=(gs=class{constructor(){c(this,et,new Map);c(this,L,new Map);c(this,G,new Map)}static get(e){return e!=null?e:Ni}define(e,t){r(this,et).has(e)?xi(r(this,et).get(e).constructors,t):r(this,et).set(e,{token:e,constructors:[t]})}appendRoute(e,t){let s=rs(e);s?r(this,G).has(s.key)?ne(r(this,G).get(s.key).routes,t):r(this,G).set(s.key,{routes:new Set(t),token:s.token}):r(this,L).has(e)?ne(r(this,L).get(e),t):r(this,L).set(e,new Set(t))}clearRoute(e){let t=rs(e);t?r(this,G).delete(t.key):r(this,L).delete(e)}findTokensByRoute(e,t){let s=new Set([e]),i=r(this,L).has(e)?[...r(this,L).get(e)]:[];for(;i.length;){let a=i.shift();s.has(a)||(s.add(a),r(this,L).has(a)&&i.push(...Array.from(r(this,L).get(a)).filter(o=>!s.has(o))))}if(t){for(let o of t)r(this,G).has(o)&&ne(s,r(this,G).get(o).routes);let a;do{a=s.size;for(let o of new Set(s))for(let n of t){let l=`${o}@${n}`;r(this,G).has(l)&&ne(s,r(this,G).get(l).routes)}}while(a!==s.size)}return s}findConstructors(e,t){let s=this.findTokensByRoute(e,t),i=new Set;for(let a of s)Ri(r(this,et).get(a),i);return i.size>0?Array.from(i):void 0}hasToken(e){return r(this,et).has(e)}hasRoute(e){return r(this,L).has(e)}clear(){r(this,et).clear(),r(this,L).clear()}},et=new WeakMap,L=new WeakMap,G=new WeakMap,gs),Ni=new Ds,Z;(function(e){e[e.CreateAndDestroy=0]="CreateAndDestroy",e[e.JustCreate=1]="JustCreate",e[e.DestroyOnly=2]="DestroyOnly"})(Z||(Z={}));var as=e=>e.displayName||e.name,C,K,Rt,Zt,Y,ut,ys,zi=(ys=class{constructor(e){c(this,C);c(this,K);c(this,Rt);c(this,Zt);c(this,Y);c(this,ut);this.logger=new qs("Kernel"),f(this,C,new Map),f(this,K,new Set),f(this,Y,!0),f(this,ut,new Map),it(this),this.registry=Ds.get(e)}getEntity(e){var s;let t=(s=r(this,C).get(e))==null?void 0:s.entity;if(!t)throw new Error(`entity with uuid "${e}" not found!`);return t}hasEntity(e){return r(this,C).has(e)}traverseLevelOrderBFS(e=!1){if(r(this,Y)){let t=new Map,s=(i,a)=>{let o=this.getEntity(i);t.has(a)?t.get(a).push(o):t.set(a,[o]);for(let n of o.children)s(n.uuid,a+1)};r(this,K).forEach(i=>s(i,0)),f(this,Rt,Array.from(t.entries()).sort((i,a)=>i[0]-a[0]).map(([,i])=>i).flat()),f(this,Zt,r(this,Rt).slice().reverse()),f(this,Y,!1)}return e?r(this,Zt):r(this,Rt)}getEntityGraph(){return Array.from(r(this,K)).map(e=>this.getEntityGraphNode(e))}getEntityGraphNode(e){if(!r(this,C).has(e))return;let{token:t,entity:s}=r(this,C).get(e);return{token:t,entity:s,props:Object.fromEntries(s.propEntries()),children:s.children.map(i=>this.getEntityGraphNode(i.uuid))}}upgradeEntities(){let e=new Map;for(let t of this.traverseLevelOrderBFS(!0))e.set(t.uuid,this.updateShadowObjects(t.uuid,Z.DestroyOnly));for(let t of this.traverseLevelOrderBFS(!1))this.updateShadowObjects(t.uuid,Z.JustCreate,e.get(t.uuid));e.clear()}run(e){this.logger.isDebug&&this.logger.debug("sync",e),ce(()=>{for(let t of e.changeTrail)this.parse(t)})}parse(e){switch(e.type){case X.CreateEntities:this.createEntity(e.uuid,e.token,e.parentUuid,e.order,e.properties),f(this,Y,!0);break;case X.DestroyEntities:this.destroyEntity(e.uuid),f(this,Y,!0);break;case X.SetParent:this.setParent(e.uuid,e.parentUuid,e.order),f(this,Y,!0);break;case X.UpdateOrder:this.updateOrder(e.uuid,e.order),f(this,Y,!0);break;case X.ChangeProperties:this.changeProperties(e.uuid,e.properties);break;case X.ChangeToken:this.changeToken(e.uuid,e.token);break;case X.SendEvents:this.dispatchEventsToEntity(e.uuid,e.events);break}}createEntity(e,t,s,i=0,a){let o=new Di(this,e);o.order=i;let n={token:t,entity:o,usedConstructors:new Map};r(this,C).set(e,n),s&&(o.parentUuid=s),o.hasParent||r(this,K).add(e),a&&o.setProperties(a),this.createShadowObjects(e)}destroyEntity(e){if(!r(this,C).has(e))return;let{entity:t,usedConstructors:s}=r(this,C).get(e);t.removeFromParent(),w(t,Mt,this),s.clear(),r(this,C).delete(t.uuid),r(this,K).delete(t.uuid)}setParent(e,t,s=0){let i=this.getEntity(e);i.parentUuid===t&&i.order===s||(i.removeFromParent(),i.order=s,i.parentUuid=t,i.hasParent?r(this,K).delete(e):r(this,K).add(e),i.reSubscribeToParentContexts(),queueMicrotask(()=>{this.logger.isDebug&&this.logger.debug("entity.onParentChanged",{uuid:e,parentUuid:t,order:s,entity:i}),w(i,ji,i)}))}updateOrder(e,t){this.getEntity(e).order=t}dispatchEventsToEntity(e,t){var s;(s=this.getEntity(e))==null||s.dispatchViewEvents(t)}changeProperties(e,t){this.getEntity(e).setProperties(t),this.updateShadowObjects(e)}changeToken(e,t){if(!r(this,C).has(e))return;let s=r(this,C).get(e);s.token!==t&&(s.token=t,this.updateShadowObjects(e))}dispatchMessageToView(e){queueMicrotask(()=>{w(this,Ae,e)})}updateShadowObjects(e,t=Z.CreateAndDestroy,s){let i=r(this,C).get(e);s!=null||(s=new Set(this.registry.findConstructors(i.token,i.entity.truthyProps())));let a=t===Z.CreateAndDestroy||t===Z.DestroyOnly,o=t===Z.CreateAndDestroy||t===Z.JustCreate;if(a){for(let[n,l]of i.usedConstructors)if(!s.has(n)){i.usedConstructors.delete(n);for(let y of l)this.destroyShadowObject(y,i.entity)}}if(o)for(let n of s)i.usedConstructors.has(n)||this.constructShadowObject(n,i);return s}constructShadowObject(e,t){let s=new Set,i=new Set,a=new Map,o=new Map,n=new Map,l=new Map,y=new Map,b=it(new e({entity:t.entity,provideContext(d,h,g){let p=n.get(d);if(p==null){p=k(h,g?{compare:g}:void 0);let M=pt(p,t.entity.provideContext(d));i.add(M.destroy.bind(M)),n.set(d,p)}return p},provideGlobalContext(d,h,g){let p=l.get(d);if(p==null){p=k(h,g?{compare:g}:void 0);let M=pt(p,t.entity.provideGlobalContext(d));i.add(M.destroy.bind(M)),l.set(d,p)}return p},useContext(d,h){let g=a.get(d);if(g===void 0){g=k(void 0,h?{compare:h}:void 0).get,a.set(d,g);let p=pt(t.entity.useContext(d),g);i.add(p.destroy.bind(p))}return g},useParentContext(d,h){let g=o.get(d);if(g===void 0){g=k(void 0,h?{compare:h}:void 0).get,o.set(d,g);let p=pt(t.entity.useParentContext(d),g);i.add(p.destroy.bind(p))}return g},useProperty(d,h){let g=y.get(d);if(g===void 0){g=k(void 0,h?{compare:h}:void 0).get,y.set(d,g);let p=pt(t.entity.getPropertyReader(d),g);i.add(p.destroy.bind(p))}return g},createEffect(...d){let h=ee(...d);return i.add(h.destroy),h},createSignal(...d){let h=k(...d);return i.add(()=>{U(h)}),h},createMemo(...d){let h=Si(...d);return i.add(()=>{U(h)}),h},on(...d){let h=Q(...d);return i.add(h),h},once(...d){let h=O(...d);return i.add(h),h},onDestroy(d){s.add(d)}}));return this.logger.isInfo&&this.logger.info("create shadow-object",as(e),{shadowObject:b,entity:t.entity}),O(t.entity,Mt,fe.Low,()=>{this.logger.isInfo&&this.logger.info("destroy shadow-object",as(e),{shadowObject:b,entity:t.entity});for(let h of s)h();for(let h of i)h();for(let h of a.values())U(h);for(let h of o.values())U(h);for(let h of y.values())U(h);for(let h of n.values())U(h);for(let h of l.values())U(h);s.clear(),i.clear(),a.clear(),o.clear(),y.clear(),n.clear(),l.clear();let d=t.usedConstructors.get(e);d&&(d.delete(b),d.size===0&&t.usedConstructors.delete(e))}),t.usedConstructors.has(e)?t.usedConstructors.get(e).add(b):t.usedConstructors.set(e,new Set([b])),this.attachShadowObject(b,t.entity),b}createShadowObjects(e){var s;let t=r(this,C).get(e);(s=this.registry.findConstructors(t.token,t.entity.truthyProps()))==null||s.forEach(i=>{this.constructShadowObject(i,t)})}findShadowObjects(e){if(!r(this,C).has(e))return[];let{usedConstructors:t}=r(this,C).get(e);return Array.from(new Set(Array.from(t.values()).map(s=>Array.from(s)).flat()))}attachShadowObject(e,t){Q(t,e),typeof e[is]=="function"&&e[is](t)}destroyShadowObject(e,t){typeof e[Mt]=="function"&&e[Mt](t),w(e,Mt,t),z(t,e)}findOrCreateRootContext(e){let t=r(this,ut).get(e);return t||(t=new Le,r(this,ut).set(e,t)),t}destroy(){for(let e of r(this,ut).values())e.dispose();r(this,ut).clear();for(let e of this.traverseLevelOrderBFS().reverse())this.destroyEntity(e.uuid)}},C=new WeakMap,K=new WeakMap,Rt=new WeakMap,Zt=new WeakMap,Y=new WeakMap,ut=new WeakMap,ys);async function xs(e,t,s,i=!0){var o,n;if(s.has(t)){console.warn("importModule: skipping already imported module",t);return}else s.add(t);t.extends&&await Promise.all(t.extends.map(l=>xs(e,l,s,!1)));let{registry:a}=e;if(t.define)for(let[l,y]of Object.entries(t.define))a.define(l,y);if(t.routes)for(let[l,y]of Object.entries(t.routes))a.appendRoute(l,y);await((n=(o=t.initialize)==null?void 0:o.call(t,{define:(l,y)=>a.define(l,y),kernel:e,registry:a}))!=null?n:Promise.resolve()),i&&e.upgradeEntities()}var Fi=e=>(typeof e=="string"&&(e=new URL(e,globalThis.location.href)),e.toString()),_t,ct,Rs,Ns,zs,ps,Vi=(ps=class{constructor(e){c(this,ct);c(this,_t,new Set);var t,s;this.kernel=(t=e==null?void 0:e.kernel)!=null?t:new zi,this.postMessage=(s=e==null?void 0:e.postMessage)!=null?s:self.postMessage.bind(self),Q(this.kernel,Ae,"onMessageToView",this)}route(e){var t;switch(e.data.type){case $s:m(this,ct,Rs).call(this,e.data);break;case Is:m(this,ct,Ns).call(this,e.data);break;case Gs:m(this,ct,zs).call(this,e.data);break;default:console.warn("[MessageRouter] unknown message",(t=e.data.type)!=null?t:e.data)}}onMessageToView(e){let i=e,{transferables:t}=i,s=Ge(i,["transferables"]);this.postMessage({type:Ae,data:s},{transfer:t})}},_t=new WeakMap,ct=new WeakSet,Rs=async function(e){try{let t=await import(Fi(e.importModule));t[me]?(await xs(this.kernel,t[me],r(this,_t)),this.postMessage({type:be,url:e.importModule})):this.postMessage({type:be,url:e.importModule,error:`module has no "${me}" export`})}catch(t){console.error("[MessageRouter] failed to import module",t),this.postMessage({type:be,url:e.importModule,error:`${t}`})}},Ns=function(e){try{this.kernel.run(e)}catch(t){console.error("[MessageRouter] failed to apply change trail",t),this.postMessage({type:qe,serial:e.serial,error:t.toString()})}e.serial&&this.postMessage({type:qe,serial:e.serial})},zs=function(e){console.debug("[MessageRouter] on destroy",e),z(this.kernel,this),r(this,_t).clear(),this.postMessage({type:Bs})},ps),$i=class{constructor(){this.onmessage=e=>{var t;e.data.type===N?globalThis[D]=e.data.config:((t=this.router)!=null||(this.router=new Vi),this.router.route(e))}}start(){self.addEventListener("message",this.onmessage),self.postMessage({type:Us})}};console.debug("@spearwolf/shadow-objects/WorkerRuntime: hello!");var Ii=new $i;Ii.start();\n/*! Bundled license information:\n\n@spearwolf/eventize/lib/index.mjs:\n (*!\n =============================================================================\n @spearwolf/eventize 4.0.2+build.20250807\n \u2014 https://github.com/spearwolf/eventize.git\n =============================================================================\n \n Copyright 2015-2025 Wolfger Schramm\n \n Licensed under the Apache License, Version 2.0 (the "License");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an "AS IS" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n *)\n*/\n')}var Is=()=>new He;var Nt=(s,t,e=1e3,r)=>new Promise((i,n)=>{let o,h,a=()=>{clearTimeout(o),s.removeEventListener("message",h)};e!==0&&e!==1/0&&(o=setTimeout(()=>{a(),n(new Error(`Timeout waiting for message of type: ${t}`))},e)),h=c=>{if(c.data.type===t)try{(!r||r(c.data))&&(a(),i())}catch(p){a(),n(p.toString())}},s.addEventListener("message",h)});var pr=s=>{let t;if(s!=null&&Array.isArray(s))for(let e of s)e.transferables&&(t?t=[...t,...e.transferables]:t=e.transferables,delete e.transferables);return t},ve=class s{static{this.WorkerLoaded="workerLoaded"}#t;#e;#s;get isDestroyed(){return this.#e}get workerLoaded(){return ft(this,s.WorkerLoaded)}constructor(){this.#e=!1,this.#s=0,this.logger=new A("RemoteWorkerEnv"),U(this,s.WorkerLoaded)}async start(){if(this.#t)return this.logger.isWarn&&this.logger.warn("already started"),this.workerLoaded.then(()=>{if(this.isDestroyed)throw"worker was destroyed"});let t=this.#t=Is();this.configureConsoleLogger(t);try{if(await Nt(t,gs,vs),this.isDestroyed)throw"worker was destroyed";t.addEventListener("message",this.onMessageFromWorker.bind(this)),queueMicrotask(()=>{d(this,s.WorkerLoaded,this)})}catch(e){throw this.logger.error("failed to start",e),this.#t=void 0,e}}applyChangeTrail(t,e){let r=pr(t),i={type:ds,changeTrail:t},n=++this.#s;return e&&(i.serial=n),this.#t.postMessage(i,r),e?Nt(this.#t,ys,Cs,o=>{if(o.error)throw o.error;return o.serial===n}):Promise.resolve()}importScript(t){return t=me(t),this.#t.postMessage({type:fs,importModule:t}),Nt(this.#t,ms,ws,e=>{if(e.error)throw e.error;return e.url===t})}destroy(){if(!this.#t)return;let t=this.#t;this.#t=void 0,this.#e=!0,t.postMessage({type:ps}),Nt(t,bs,Es).finally(()=>{t.terminate()})}onMessageFromWorker(t){t.data?.type===mt?this.onMessageToView?.(t.data.data):this.logger.isDebug&&this.logger.debug("message from worker",t)}configureConsoleLogger(t){let e=`${j}.RemoteWorkerEnv.workerConfig`,r=JSON.parse(localStorage.getItem(e)??"{}");this.logger.isInfo&&this.logger.info("load console-logger worker config",{localStorageKey:e,workerConfig:r}),t.postMessage({type:j,config:{...A.sharedConfig,enable:this.logger.isEnabled,...r,...A.isEnabled?{}:{enable:!1}}})}};var Dt,$t=class extends tt{static{this.observedAttributes=[...tt.observedAttributes,ie,oe,ne]}static{this.DefaultAutoSync="frame"}#t;#e;#s;#i;#r;constructor(){super(),this.isShaeWorkerElement=!0,this.shadowEnv=new I,this.logger=new A("ShaeWorkerElement"),this.autostart=!0,this.isConnected$=f(!1),this.autoSync$=f(Dt.DefaultAutoSync),this.src$=f(""),this.#t=!1,this.#e=!1,this.ns$.onChange(t=>{this.shadowEnv.view=N.get(t)}),m(this.shadowEnv,I.ContextCreated,()=>{this.#r?.run(),this.dispatchEvent(new CustomEvent(I.ContextCreated.toLowerCase(),{bubbles:!1,detail:{shadowEnv:this.shadowEnv}}))}),m(this.shadowEnv,I.ContextLost,()=>{this.dispatchEvent(new CustomEvent(I.ContextLost.toLowerCase(),{bubbles:!1,detail:{shadowEnv:this.shadowEnv}}))}),this.autoSync$.onChange(t=>{let e=this.hasAttribute(F),r=e?this.getAttribute(F):void 0;t===Dt.DefaultAutoSync?e&&r!==t&&this.setAttribute(F,t):r!==t&&this.setAttribute(F,t)}),this.#a(),this.#n()}#n(){this.#r=w(()=>{let t=this.src$.get();t&&this.importScript(t)},{autorun:!1})}get shouldAutostart(){return this.autostart&&!Lt(this,Rs)}get autoSync(){return this.autoSync$.value}set autoSync(t){typeof t!="string"&&(t=t?Dt.DefaultAutoSync:"no"),this.autoSync$.set(`${t}`.trim().toLowerCase())}get frameLoop(){return this.#s??=new bt,this.#s}[bt.OnFrame](){this.syncShadowObjects()}async importScript(t){if(!t)throw new Error("src is blank");let e=await this.shadowEnv.ready();return this.logger.isInfo&&this.logger.info("shadowEnv importScript:",t,{shadowEnv:e}),await e.envProxy.importScript(t),this}connectedCallback(){O(()=>{this.hasAttribute(F)&&this.autoSync$.set(this.getAttribute(F)),this.isConnected$.set(!0)}),this.shouldAutostart&&this.start()}disconnectedCallback(){this.isConnected$.set(!1),this.#o()}attributeChangedCallback(t){if(super.attributeChangedCallback(t),t===ie&&this.shadowEnv.envProxy!=null)throw new Error('Changing the "local" attribute after the shadowEnv has been created is not supported.');if(t===ne&&this.#h(),t===F&&(this.autoSync=this.hasAttribute(F)?this.getAttribute(F):!0),t===oe){let e=(this.getAttribute(oe)||"").trim();this.src$.set(e),this.shadowEnv.isReady&&this.#r?.run()}}start(){if(!this.#e){if(this.#t=!1,this.shadowEnv.view??=N.get(this.ns),this.shadowEnv.envProxy==null){let t=Lt(this,ie)?new be:new ve;this.shadowEnv.envProxy=t,this.#h()}this.#e=!0}return this.shadowEnv.ready()}destroy(){this.#i?.destroy(),this.#r?.destroy(),x(this.isConnected$,this.autoSync$,this.src$),this.shadowEnv.envProxy=void 0,this.shadowEnv.destroy()}#o(){this.#t||(this.#t=!0,queueMicrotask(()=>{this.#t&&this.destroy()}))}#a(){this.#i=w(()=>{if(this.isConnected$.get()){let t=(this.autoSync$.get()||Dt.DefaultAutoSync).trim().toLowerCase(),e;if(["true","yes","on","frame","auto-sync"].includes(t))return this.logger.isDebug&&this.logger.debug("auto-sync",t,this),this.frameLoop.start(this),()=>{this.frameLoop.stop(this)};if(t.toLowerCase().endsWith("fps")){let r=parseInt(t,10);r>0?e=Math.floor(1e3/r):this.logger.isWarn&&this.logger.warn(`invalid auto-sync value: ${t}`)}else e=parseInt(t,10),isNaN(e)&&(e=void 0,["false","no","off"].includes(t)||this.logger.error(`invalid auto-sync value: ${t}`));if(e!==void 0&&e>0){this.logger.isDebug&&this.logger.debug("auto-sync interval (ms)",e,this);let r=setInterval(()=>{this.syncShadowObjects()},e);return()=>{clearInterval(r)}}else this.logger.isDebug&&this.logger.debug("auto-sync off",this)}},[this.autoSync$,this.isConnected$])}#h(){let t=this.shadowEnv.envProxy;t?.isLocalEnv&&(t.disableStructuredClone=this.hasAttribute(ne))}};Dt=$t;customElements.define(Ts,$t);globalThis.SHADOW_ENTS_BUNDLE_LOADED=!0;
|
|
22
22
|
/*! Bundled license information:
|
|
23
23
|
|
|
24
24
|
@spearwolf/eventize/lib/index.mjs:
|
|
25
25
|
(*!
|
|
26
26
|
=============================================================================
|
|
27
|
-
@spearwolf/eventize 4.0.
|
|
27
|
+
@spearwolf/eventize 4.0.2+build.20250807
|
|
28
28
|
— https://github.com/spearwolf/eventize.git
|
|
29
29
|
=============================================================================
|
|
30
30
|
|
|
31
|
-
Copyright 2015-
|
|
31
|
+
Copyright 2015-2025 Wolfger Schramm
|
|
32
32
|
|
|
33
33
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
34
34
|
you may not use this file except in compliance with the License.
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@spearwolf/shadow-objects",
|
|
3
3
|
"description": "a reactive entity-component framework that feels at home in the shadows",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.21.0",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Wolfger Schramm",
|
|
7
7
|
"email": "wolfger@spearwolf.de",
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
"src/shae-worker.js"
|
|
62
62
|
],
|
|
63
63
|
"dependencies": {
|
|
64
|
-
"@spearwolf/eventize": "^4.0.
|
|
65
|
-
"@spearwolf/signalize": "^0.
|
|
64
|
+
"@spearwolf/eventize": "^4.0.2",
|
|
65
|
+
"@spearwolf/signalize": "^0.24.0"
|
|
66
66
|
}
|
|
67
67
|
}
|
|
@@ -43,6 +43,7 @@ export declare class Entity {
|
|
|
43
43
|
truthyProps(): Set<string> | undefined;
|
|
44
44
|
hasContext(name: ContextNameType): boolean;
|
|
45
45
|
useContext<T = unknown>(name: ContextNameType): SignalReader<T>;
|
|
46
|
+
useParentContext<T = unknown>(name: ContextNameType): SignalReader<T>;
|
|
46
47
|
provideContext<T = unknown>(name: ContextNameType): Signal<T>;
|
|
47
48
|
provideGlobalContext<T = unknown>(name: ContextNameType): Signal<T>;
|
|
48
49
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Entity.d.ts","sourceRoot":"","sources":["../../../src/in-the-dark/Entity.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,MAAM,EAGN,KAAK,YAAY,EACjB,KAAK,YAAY,EAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AACjD,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAInC,KAAK,eAAe,GAAG,MAAM,GAAG,MAAM,CAAC;AA+BvC;;;;;;GAMG;AACH,qBAAa,MAAM;;IAiBjB,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAOtB;IAED,IAAI,UAAU,IAAI,MAAM,GAAG,SAAS,CAEnC;IAED,IAAI,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,EAW5C;IAED,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,CAK/B;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAEpC;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,QAAQ,IAAI,SAAS,MAAM,EAAE,CAEhC;gBAEW,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAMxC,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI;IAO3C,SAAS;IA2BT,QAAQ,CAAC,KAAK,EAAE,MAAM;IA0BtB,cAAc;IAId,WAAW,CAAC,KAAK,EAAE,MAAM;IAQzB,gBAAgB;IAoBhB,2BAA2B;IAM3B,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,YAAY,EAAE,EAAE,gBAAgB,UAAQ;IAI5G,kBAAkB,CAAC,MAAM,EAAE,eAAe,EAAE;IAM5C,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO;IAQ7C,iBAAiB,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC;IAI5D,iBAAiB,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC;IAI5D,aAAa,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;IAS7C,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;IAIvC,WAAW,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC;IAIxC,QAAQ,IAAI,MAAM,EAAE;IAIpB,WAAW,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;IAMlC,qBAAqB;IAIrB,WAAW,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,SAAS;IAiBtC,UAAU,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO;IAM1C,UAAU,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,eAAe,GAAG,YAAY,CAAC,CAAC,CAAC;IAM/D,cAAc,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,eAAe,GAAG,MAAM,CAAC,CAAC,CAAC;IAI7D,oBAAoB,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,eAAe,GAAG,MAAM,CAAC,CAAC,CAAC;CA+CpE"}
|
|
1
|
+
{"version":3,"file":"Entity.d.ts","sourceRoot":"","sources":["../../../src/in-the-dark/Entity.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,MAAM,EAGN,KAAK,YAAY,EACjB,KAAK,YAAY,EAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AACjD,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAInC,KAAK,eAAe,GAAG,MAAM,GAAG,MAAM,CAAC;AA+BvC;;;;;;GAMG;AACH,qBAAa,MAAM;;IAiBjB,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAOtB;IAED,IAAI,UAAU,IAAI,MAAM,GAAG,SAAS,CAEnC;IAED,IAAI,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,EAW5C;IAED,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,CAK/B;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAEpC;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,QAAQ,IAAI,SAAS,MAAM,EAAE,CAEhC;gBAEW,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAMxC,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI;IAO3C,SAAS;IA2BT,QAAQ,CAAC,KAAK,EAAE,MAAM;IA0BtB,cAAc;IAId,WAAW,CAAC,KAAK,EAAE,MAAM;IAQzB,gBAAgB;IAoBhB,2BAA2B;IAM3B,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,YAAY,EAAE,EAAE,gBAAgB,UAAQ;IAI5G,kBAAkB,CAAC,MAAM,EAAE,eAAe,EAAE;IAM5C,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO;IAQ7C,iBAAiB,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC;IAI5D,iBAAiB,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC;IAI5D,aAAa,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;IAS7C,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;IAIvC,WAAW,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC;IAIxC,QAAQ,IAAI,MAAM,EAAE;IAIpB,WAAW,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;IAMlC,qBAAqB;IAIrB,WAAW,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,SAAS;IAiBtC,UAAU,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO;IAM1C,UAAU,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,eAAe,GAAG,YAAY,CAAC,CAAC,CAAC;IAM/D,gBAAgB,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,eAAe,GAAG,YAAY,CAAC,CAAC,CAAC;IAMrE,cAAc,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,eAAe,GAAG,MAAM,CAAC,CAAC,CAAC;IAI7D,oBAAoB,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,eAAe,GAAG,MAAM,CAAC,CAAC,CAAC;CA+CpE"}
|
|
@@ -232,6 +232,10 @@ export class Entity {
|
|
|
232
232
|
useContext(name) {
|
|
233
233
|
return this.#findOrCreateContext(name).context.get;
|
|
234
234
|
}
|
|
235
|
+
// TODO(test) write tests for useParentContext()
|
|
236
|
+
useParentContext(name) {
|
|
237
|
+
return this.#findOrCreateContext(name).inherited.get;
|
|
238
|
+
}
|
|
235
239
|
// TODO(test) write tests for provideContext()
|
|
236
240
|
provideContext(name) {
|
|
237
241
|
return this.#findOrCreateContext(name).provide;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Entity.js","sourceRoot":"","sources":["../../../src/in-the-dark/Entity.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Entity.js","sourceRoot":"","sources":["../../../src/in-the-dark/Entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Kernel.d.ts","sourceRoot":"","sources":["../../../src/in-the-dark/Kernel.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAuB,eAAe,EAA2B,gBAAgB,EAAE,SAAS,EAAC,MAAM,aAAa,CAAC;AAC7H,OAAO,EAAC,aAAa,EAAC,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAEnC,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AACvC,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAE7C,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAE5B;AAQD,UAAU,eAAe;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC7B;AAUD;;;;;;GAMG;AACH,qBAAa,MAAM;;IACjB,QAAQ,EAAE,QAAQ,CAAC;IAEnB,QAAQ,CAAC,MAAM,gBAA+B;gBAWlC,QAAQ,CAAC,EAAE,QAAQ;IAK/B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAQ/B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIhC;;OAEG;IACH,qBAAqB,CAAC,OAAO,UAAQ,GAAG,MAAM,EAAE;IAgChD,cAAc,IAAI,eAAe,EAAE;IAInC,OAAO,CAAC,kBAAkB;IAY1B,eAAe,IAAI,IAAI;IAcvB,GAAG,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAW3B,OAAO,CAAC,KAAK;IAoCb,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,KAAK,SAAI,EAAE,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,IAAI;IAwBjH,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAcjC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,KAAK,SAAI,GAAG,IAAI;IA0B7D,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAI9C,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI;IAIrE,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,IAAI;IAKrE,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAY9C,qBAAqB,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAMxD;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAqC3B,OAAO,CAAC,qBAAqB;
|
|
1
|
+
{"version":3,"file":"Kernel.d.ts","sourceRoot":"","sources":["../../../src/in-the-dark/Kernel.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAuB,eAAe,EAA2B,gBAAgB,EAAE,SAAS,EAAC,MAAM,aAAa,CAAC;AAC7H,OAAO,EAAC,aAAa,EAAC,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAEnC,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AACvC,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAE7C,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAE5B;AAQD,UAAU,eAAe;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC7B;AAUD;;;;;;GAMG;AACH,qBAAa,MAAM;;IACjB,QAAQ,EAAE,QAAQ,CAAC;IAEnB,QAAQ,CAAC,MAAM,gBAA+B;gBAWlC,QAAQ,CAAC,EAAE,QAAQ;IAK/B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAQ/B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIhC;;OAEG;IACH,qBAAqB,CAAC,OAAO,UAAQ,GAAG,MAAM,EAAE;IAgChD,cAAc,IAAI,eAAe,EAAE;IAInC,OAAO,CAAC,kBAAkB;IAY1B,eAAe,IAAI,IAAI;IAcvB,GAAG,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAW3B,OAAO,CAAC,KAAK;IAoCb,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,KAAK,SAAI,EAAE,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,IAAI;IAwBjH,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAcjC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,KAAK,SAAI,GAAG,IAAI;IA0B7D,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAI9C,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI;IAIrE,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,IAAI;IAKrE,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAY9C,qBAAqB,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAMxD;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAqC3B,OAAO,CAAC,qBAAqB;IA0L7B,OAAO,CAAC,mBAAmB;IAQ3B,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAcnD,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,mBAAmB;IAU3B,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,WAAW;IAS3D,OAAO,IAAI,IAAI;CAUhB"}
|
|
@@ -244,6 +244,7 @@ export class Kernel {
|
|
|
244
244
|
const unsubscribePrimary = new Set();
|
|
245
245
|
const unsubscribeSecondary = new Set();
|
|
246
246
|
const contextReaders = new Map();
|
|
247
|
+
const contextParentReaders = new Map();
|
|
247
248
|
const contextProviders = new Map();
|
|
248
249
|
const contextRootProviders = new Map();
|
|
249
250
|
const propertyReaders = new Map();
|
|
@@ -269,7 +270,6 @@ export class Kernel {
|
|
|
269
270
|
}
|
|
270
271
|
return ctxProvider;
|
|
271
272
|
},
|
|
272
|
-
// TODO useContext(.. {skipSelf: true}) - to get context from parent entity and skip the current entity
|
|
273
273
|
useContext(name, compare) {
|
|
274
274
|
let ctxReader = contextReaders.get(name);
|
|
275
275
|
if (ctxReader === undefined) {
|
|
@@ -280,6 +280,16 @@ export class Kernel {
|
|
|
280
280
|
}
|
|
281
281
|
return ctxReader;
|
|
282
282
|
},
|
|
283
|
+
useParentContext(name, compare) {
|
|
284
|
+
let ctxReader = contextParentReaders.get(name);
|
|
285
|
+
if (ctxReader === undefined) {
|
|
286
|
+
ctxReader = createSignal(undefined, compare ? { compare } : undefined).get;
|
|
287
|
+
contextParentReaders.set(name, ctxReader);
|
|
288
|
+
const con = link(entry.entity.useParentContext(name), ctxReader);
|
|
289
|
+
unsubscribeSecondary.add(con.destroy.bind(con));
|
|
290
|
+
}
|
|
291
|
+
return ctxReader;
|
|
292
|
+
},
|
|
283
293
|
useProperty(name, compare) {
|
|
284
294
|
let propReader = propertyReaders.get(name);
|
|
285
295
|
if (propReader === undefined) {
|
|
@@ -341,6 +351,9 @@ export class Kernel {
|
|
|
341
351
|
for (const sig of contextReaders.values()) {
|
|
342
352
|
destroySignal(sig);
|
|
343
353
|
}
|
|
354
|
+
for (const sig of contextParentReaders.values()) {
|
|
355
|
+
destroySignal(sig);
|
|
356
|
+
}
|
|
344
357
|
for (const sig of propertyReaders.values()) {
|
|
345
358
|
destroySignal(sig);
|
|
346
359
|
}
|
|
@@ -353,6 +366,7 @@ export class Kernel {
|
|
|
353
366
|
unsubscribePrimary.clear();
|
|
354
367
|
unsubscribeSecondary.clear();
|
|
355
368
|
contextReaders.clear();
|
|
369
|
+
contextParentReaders.clear();
|
|
356
370
|
propertyReaders.clear();
|
|
357
371
|
contextProviders.clear();
|
|
358
372
|
contextRootProviders.clear();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Kernel.js","sourceRoot":"","sources":["../../../src/in-the-dark/Kernel.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Kernel.js","sourceRoot":"","sources":["../../../src/in-the-dark/Kernel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAC,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EACL,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,aAAa,EACb,IAAI,EACJ,MAAM,GAGP,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAC,mBAAmB,EAAE,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAEnE,OAAO,EAAC,aAAa,EAAC,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AACnC,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAgC,MAAM,aAAa,CAAC;AAChG,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AACvC,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAwB7C,IAAK,kBAIJ;AAJD,WAAK,kBAAkB;IACrB,mFAAoB,CAAA;IACpB,uEAAU,CAAA;IACV,yEAAW,CAAA;AACb,CAAC,EAJI,kBAAkB,KAAlB,kBAAkB,QAItB;AAED,MAAM,cAAc,GAAG,CAAC,WAAoC,EAAE,EAAE,CAAC,WAAW,CAAC,WAAW,IAAI,WAAW,CAAC,IAAI,CAAC;AAE7G;;;;;;GAMG;AACH,MAAM,OAAO,MAAM;IAKjB,SAAS,CAAuC;IAChD,aAAa,CAA0B;IAEvC,YAAY,CAAY;IACxB,oBAAoB,CAAY;IAChC,sBAAsB,CAAQ;IAE9B,aAAa,CAAgD;IAE7D,YAAY,QAAmB;QAXtB,WAAM,GAAG,IAAI,aAAa,CAAC,QAAQ,CAAC,CAAC;QAE9C,cAAS,GAA6B,IAAI,GAAG,EAAE,CAAC;QAChD,kBAAa,GAAgB,IAAI,GAAG,EAAE,CAAC;QAIvC,2BAAsB,GAAG,IAAI,CAAC;QAE9B,kBAAa,GAAsC,IAAI,GAAG,EAAE,CAAC;QAG3D,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,SAAS,CAAC,IAAY;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAChD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,qBAAqB,IAAI,cAAc,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,SAAS,CAAC,IAAY;QACpB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,qBAAqB,CAAC,OAAO,GAAG,KAAK;QACnC,IAAI,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAChC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAoB,CAAC;YAExC,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,EAAE;gBAC/C,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBAE/B,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;oBACnB,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACzB,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACtB,CAAC;gBAED,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;oBAC/B,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;gBAClC,CAAC;YACH,CAAC,CAAC;YAEF,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAExD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;iBAC1C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC;iBAC/B,IAAI,EAAE,CAAC;YAEV,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC;YAChE,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC;QACtC,CAAC;QAED,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;IACjE,CAAC;IAED,cAAc;QACZ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAE,CAAC,CAAC;IACtF,CAAC;IAEO,kBAAkB,CAAC,IAAY;QACrC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO,SAAS,CAAC;QAEhD,MAAM,EAAC,KAAK,EAAE,MAAM,EAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjD,OAAO;YACL,KAAK;YACL,MAAM;YACN,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC/C,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SAC9E,CAAC;IACJ,CAAC;IAED,eAAe;QACb,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAwC,CAAC;QAE3E,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC;YACtD,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC;QAC7G,CAAC;QAED,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,CAAC;YACvD,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,EAAE,kBAAkB,CAAC,UAAU,EAAE,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5G,CAAC;QAED,kBAAkB,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;IAED,GAAG,CAAC,KAAgB;QAClB,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACnC,CAAC;QACD,KAAK,CAAC,GAAG,EAAE;YACT,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;gBACtC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,KAA2B;QACvC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,mBAAmB,CAAC,cAAc;gBACrC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;gBAC5F,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;gBACnC,MAAM;YAER,KAAK,mBAAmB,CAAC,eAAe;gBACtC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC/B,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;gBACnC,MAAM;YAER,KAAK,mBAAmB,CAAC,SAAS;gBAChC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC1D,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;gBACnC,MAAM;YAER,KAAK,mBAAmB,CAAC,WAAW;gBAClC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC1C,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;gBACnC,MAAM;YAER,KAAK,mBAAmB,CAAC,gBAAgB;gBACvC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;gBACpD,MAAM;YAER,KAAK,mBAAmB,CAAC,WAAW;gBAClC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC1C,MAAM;YAER,KAAK,mBAAmB,CAAC,UAAU;gBACjC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;gBACtD,MAAM;QACV,CAAC;IACH,CAAC;IAED,YAAY,CAAC,IAAY,EAAE,KAAa,EAAE,UAAmB,EAAE,KAAK,GAAG,CAAC,EAAE,UAAgC;QACxG,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAEjC,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC;QAEhB,MAAM,KAAK,GAAgB,EAAC,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,gBAAgB,EAAE,IAAI,GAAG,EAAE,EAAC,CAAC;QAE3E,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAEhC,IAAI,UAAU,EAAE,CAAC;YACf,CAAC,CAAC,UAAU,GAAG,UAAU,CAAC;QAC5B,CAAC;QAED,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YACf,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAC9B,CAAC;QAED,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,aAAa,CAAC,IAAY;QACxB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO;QAEtC,MAAM,EAAC,MAAM,EAAE,gBAAgB,EAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAE5D,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC1B,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QAE9B,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAEzB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,SAAS,CAAC,IAAY,EAAE,UAAmB,EAAE,KAAK,GAAG,CAAC;QACpD,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAE/B,IAAI,CAAC,CAAC,UAAU,KAAK,UAAU,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK;YAAE,OAAO;QAE7D,CAAC,CAAC,gBAAgB,EAAE,CAAC;QAErB,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC;QAChB,CAAC,CAAC,UAAU,GAAG,UAAU,CAAC;QAE1B,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;YAChB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QAED,CAAC,CAAC,2BAA2B,EAAE,CAAC;QAEhC,cAAc,CAAC,GAAG,EAAE;YAClB,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACxB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,EAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAC,CAAC,CAAC;YACpF,CAAC;YACD,IAAI,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,WAAW,CAAC,IAAY,EAAE,KAAa;QACrC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC;IACrC,CAAC;IAED,sBAAsB,CAAC,IAAY,EAAE,MAAyB;QAC5D,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACnD,CAAC;IAED,gBAAgB,CAAC,IAAY,EAAE,UAA+B;QAC5D,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAC/C,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,WAAW,CAAC,IAAY,EAAE,KAAa;QACrC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO;QAEtC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAEvC,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK;YAAE,OAAO;QAElC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QAEpB,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,qBAAqB,CAAC,OAA2B;QAC/C,cAAc,CAAC,GAAG,EAAE;YAClB,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,mBAAmB,CACzB,IAAY,EACZ,MAAM,GAAG,kBAAkB,CAAC,gBAAgB,EAC5C,gBAA+C;QAE/C,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvC,gBAAgB,KAAK,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAEtG,MAAM,aAAa,GAAG,MAAM,KAAK,kBAAkB,CAAC,gBAAgB,IAAI,MAAM,KAAK,kBAAkB,CAAC,WAAW,CAAC;QAClH,MAAM,YAAY,GAAG,MAAM,KAAK,kBAAkB,CAAC,gBAAgB,IAAI,MAAM,KAAK,kBAAkB,CAAC,UAAU,CAAC;QAEhH,2EAA2E;QAC3E,EAAE;QACF,IAAI,aAAa,EAAE,CAAC;YAClB,KAAK,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;gBAClE,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;oBACvC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;oBAC3C,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;wBAChC,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;oBAC9C,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,yFAAyF;QACzF,EAAE;QACF,IAAI,YAAY,EAAE,CAAC;YACjB,KAAK,MAAM,WAAW,IAAI,gBAAgB,EAAE,CAAC;gBAC3C,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC7C,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAEO,qBAAqB,CAAC,WAAoC,EAAE,KAAkB;QACpF,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAa,CAAC;QAChD,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAa,CAAC;QAElD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAsC,CAAC;QACrE,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAsC,CAAC;QAC3E,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAgC,CAAC;QACjE,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAgC,CAAC;QAErE,MAAM,eAAe,GAAG,IAAI,GAAG,EAA6B,CAAC;QAE7D,MAAM,YAAY,GAAG,QAAQ,CAC3B,IAAI,WAAW,CAAC;YACd,MAAM,EAAE,KAAK,CAAC,MAAM;YAEpB,cAAc,CAAc,IAAqB,EAAE,YAAgB,EAAE,OAAwB;gBAC3F,IAAI,WAAW,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAE7C,IAAI,WAAW,IAAI,IAAI,EAAE,CAAC;oBACxB,WAAW,GAAG,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,EAAC,OAAO,EAAE,OAAO,EAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;oBAEnF,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;oBAChE,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC9C,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;gBAC1C,CAAC;gBAED,OAAO,WAAW,CAAC;YACrB,CAAC;YAED,oBAAoB,CAAc,IAAqB,EAAE,YAAgB,EAAE,OAAwB;gBACjG,IAAI,WAAW,GAAG,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAEjD,IAAI,WAAW,IAAI,IAAI,EAAE,CAAC;oBACxB,WAAW,GAAG,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,EAAC,OAAO,EAAE,OAAO,EAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;oBAEnF,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;oBACtE,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC9C,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;gBAC9C,CAAC;gBAED,OAAO,WAAW,CAAC;YACrB,CAAC;YAED,UAAU,CAAC,IAAqB,EAAE,OAA0B;gBAC1D,IAAI,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACzC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;oBAC5B,SAAS,GAAG,YAAY,CAAM,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,EAAC,OAAO,EAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC;oBAC9E,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;oBACpC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;oBAC3D,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAClD,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,gBAAgB,CAAC,IAAqB,EAAE,OAA0B;gBAChE,IAAI,SAAS,GAAG,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC/C,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;oBAC5B,SAAS,GAAG,YAAY,CAAM,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,EAAC,OAAO,EAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC;oBAC9E,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;oBAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;oBACjE,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAClD,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,WAAW,CAAU,IAAY,EAAE,OAAwB;gBACzD,IAAI,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC3C,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC7B,UAAU,GAAG,YAAY,CAAM,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,EAAC,OAAO,EAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC;oBAC/E,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;oBACtC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,CAAC;oBACnE,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAClD,CAAC;gBACD,OAAO,UAAU,CAAC;YACpB,CAAC;YAED,YAAY,CAAC,GAAG,IAAqC;gBACnD,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC;gBACrC,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACzC,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,YAAY,CAAc,GAAG,IAAwC;gBACnE,MAAM,GAAG,GAAG,YAAY,CAAI,GAAG,IAAI,CAAC,CAAC;gBACrC,oBAAoB,CAAC,GAAG,CAAC,GAAG,EAAE;oBAC5B,aAAa,CAAC,GAAG,CAAC,CAAC;gBACrB,CAAC,CAAC,CAAC;gBACH,OAAO,GAAG,CAAC;YACb,CAAC;YAED,UAAU,CAAc,GAAG,IAAsC;gBAC/D,MAAM,GAAG,GAAG,UAAU,CAAI,GAAG,IAAI,CAAC,CAAC;gBACnC,oBAAoB,CAAC,GAAG,CAAC,GAAG,EAAE;oBAC5B,aAAa,CAAC,GAAG,CAAC,CAAC;gBACrB,CAAC,CAAC,CAAC;gBACH,OAAO,GAAG,CAAC;YACb,CAAC;YAED,EAAE,CAAC,GAAG,IAA2B;gBAC/B,aAAa;gBACb,MAAM,KAAK,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;gBAC1B,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAChC,OAAO,KAAK,CAAC;YACf,CAAC;YAED,IAAI,CAAC,GAAG,IAA6B;gBACnC,aAAa;gBACb,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;gBAC5B,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAChC,OAAO,KAAK,CAAC;YACf,CAAC;YAED,SAAS,CAAC,QAAmB;gBAC3B,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACnC,CAAC;SACF,CAAC,CACH,CAAC;QAEF,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE,cAAc,CAAC,WAAW,CAAC,EAAE,EAAC,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAC,CAAC,CAAC;QAC9G,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE;YAC/C,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE,cAAc,CAAC,WAAW,CAAC,EAAE,EAAC,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAC,CAAC,CAAC;YAC/G,CAAC;YAED,KAAK,MAAM,QAAQ,IAAI,kBAAkB,EAAE,CAAC;gBAC1C,QAAQ,EAAE,CAAC;YACb,CAAC;YAED,KAAK,MAAM,QAAQ,IAAI,oBAAoB,EAAE,CAAC;gBAC5C,QAAQ,EAAE,CAAC;YACb,CAAC;YAED,KAAK,MAAM,GAAG,IAAI,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC1C,aAAa,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC;YAED,KAAK,MAAM,GAAG,IAAI,oBAAoB,CAAC,MAAM,EAAE,EAAE,CAAC;gBAChD,aAAa,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC;YAED,KAAK,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC3C,aAAa,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC;YAED,KAAK,MAAM,GAAG,IAAI,gBAAgB,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC5C,aAAa,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC;YAED,KAAK,MAAM,GAAG,IAAI,oBAAoB,CAAC,MAAM,EAAE,EAAE,CAAC;gBAChD,aAAa,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC;YAED,kBAAkB,CAAC,KAAK,EAAE,CAAC;YAC3B,oBAAoB,CAAC,KAAK,EAAE,CAAC;YAC7B,cAAc,CAAC,KAAK,EAAE,CAAC;YACvB,oBAAoB,CAAC,KAAK,EAAE,CAAC;YAC7B,eAAe,CAAC,KAAK,EAAE,CAAC;YACxB,gBAAgB,CAAC,KAAK,EAAE,CAAC;YACzB,oBAAoB,CAAC,KAAK,EAAE,CAAC;YAE7B,MAAM,kBAAkB,GAAG,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YACnE,IAAI,kBAAkB,EAAE,CAAC;gBACvB,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBACxC,IAAI,kBAAkB,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;oBAClC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBAC7C,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,gFAAgF;QAChF,gBAAgB;QAChB,EAAE;QACF,IAAI,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YAC5C,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAEpD,OAAO,YAAY,CAAC;IACtB,CAAC;IAEO,mBAAmB,CAAC,IAAY;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAEvC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;YAC/F,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,iBAAiB,CAAC,IAAY;QAC5B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO,EAAE,CAAC;QAEzC,MAAM,EAAC,gBAAgB,EAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAEpD,OAAO,KAAK,CAAC,IAAI,CACf,IAAI,GAAG,CACL,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC;aAClC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC/B,IAAI,EAAE,CACV,CACF,CAAC;IACJ,CAAC;IAEO,kBAAkB,CAAC,YAAoB,EAAE,MAAc;QAC7D,kHAAkH;QAClH,EAAE;QACF,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAEzB,wFAAwF;QACxF,EAAE;QACF,IAAI,OAAQ,YAAyB,CAAC,QAAQ,CAAC,KAAK,UAAU,EAAE,CAAC;YAC9D,YAAyB,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAEO,mBAAmB,CAAC,YAAoB,EAAE,MAAc;QAC9D,IAAI,OAAQ,YAA0B,CAAC,SAAS,CAAC,KAAK,UAAU,EAAE,CAAC;YAChE,YAA0B,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,YAAY,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAEtC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAC5B,CAAC;IAED,uBAAuB,CAAC,IAAqB;QAC3C,IAAI,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,GAAG,GAAG,IAAI,WAAW,EAAE,CAAC;YACxB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,OAAO;QACL,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC;YAC9C,GAAG,CAAC,OAAO,EAAE,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAE3B,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC;YAC5D,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;CACF"}
|
package/src/types.d.ts
CHANGED
|
@@ -69,6 +69,7 @@ export interface ShadowObjectParams {
|
|
|
69
69
|
provideContext<T = unknown>(name: string | symbol, initialValue?: T, isEqual?: CompareFunc<T>): Signal<T>;
|
|
70
70
|
provideGlobalContext<T = unknown>(name: string | symbol, initialValue?: T, isEqual?: CompareFunc<T>): Signal<T>;
|
|
71
71
|
useContext<T = any>(name: string | symbol, isEqual?: CompareFunc<T>): SignalReader<T>;
|
|
72
|
+
useParentContext<T = any>(name: string | symbol, isEqual?: CompareFunc<T>): SignalReader<T>;
|
|
72
73
|
useProperty<T = any>(name: string, isEqual?: CompareFunc<T>): SignalReader<T>;
|
|
73
74
|
createEffect(...args: Parameters<typeof createEffect>): ReturnType<typeof createEffect>;
|
|
74
75
|
createSignal<T = unknown>(...args: Parameters<typeof createSignal<T>>): ReturnType<typeof createSignal<T>>;
|
package/src/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|