xote 6.1.0 → 6.1.2
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 +28 -10
- package/dist/xote.cjs +10 -10
- package/dist/xote.mjs +1276 -1093
- package/dist/xote.umd.js +9 -9
- package/package.json +2 -2
- package/src/Computed.res.mjs +6 -0
- package/src/Node.res +18 -2
- package/src/Node.res.mjs +22 -5
- package/src/Router.res +4 -4
- package/src/Router.res.mjs +2 -2
- package/src/Signal.res.mjs +6 -0
- package/src/XoteJSX.res +6 -257
- package/src/XoteJSX.res.mjs +2 -2
package/README.md
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
# [
|
|
1
|
+
# [xote](https://brnrdog.github.io/xote/)
|
|
2
2
|

|
|
3
3
|

|
|
4
4
|

|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
xote is a lightweight [ReScript](https://rescript-lang.org/) library that combines fine-grained reactivity and a declarative component system for building user interfaces for the web.
|
|
7
7
|
|
|
8
8
|
## Getting Started
|
|
9
9
|
|
|
@@ -13,7 +13,7 @@ Xote is a lightweight [ReScript](https://rescript-lang.org/) library that combin
|
|
|
13
13
|
npm install xote
|
|
14
14
|
```
|
|
15
15
|
|
|
16
|
-
Then, add it to your ReScript project's `rescript.json`. You'll need to declare `xote` as a dependency
|
|
16
|
+
Then, add it to your ReScript project's `rescript.json`. You'll need to declare `xote` as a dependency and configure JSX to use Xote's transform:
|
|
17
17
|
|
|
18
18
|
```json
|
|
19
19
|
{
|
|
@@ -26,13 +26,11 @@ Then, add it to your ReScript project's `rescript.json`. You'll need to declare
|
|
|
26
26
|
}
|
|
27
27
|
```
|
|
28
28
|
|
|
29
|
-
|
|
29
|
+
The compiler flag `-open Xote` is optional, it makes the Xote moduels available unqualified inside your source files.
|
|
30
30
|
|
|
31
31
|
### Quick Example
|
|
32
32
|
|
|
33
33
|
```rescript
|
|
34
|
-
open Xote
|
|
35
|
-
|
|
36
34
|
module App = {
|
|
37
35
|
@jsx.component
|
|
38
36
|
let make = () => {
|
|
@@ -46,7 +44,7 @@ module App = {
|
|
|
46
44
|
Effect.run(() => {
|
|
47
45
|
Console.log2("Count is ", Signal.get(count))
|
|
48
46
|
|
|
49
|
-
None
|
|
47
|
+
None // Optional clean up function
|
|
50
48
|
})
|
|
51
49
|
|
|
52
50
|
// Build the UI with JSX
|
|
@@ -69,6 +67,26 @@ module App = {
|
|
|
69
67
|
Node.mountById(<App />, "app")
|
|
70
68
|
```
|
|
71
69
|
|
|
70
|
+
Since in ReScript each file is its own module, you can define a reusable component by exporting a `make` function from that file. The file name becomes the component name: `Counter.res` gives you `<Counter />`.
|
|
71
|
+
|
|
72
|
+
The `@jsx.component` attribute instructs the compiler to derive a props type from the function's labeled arguments, enabling JSX usage without boilerplate.
|
|
73
|
+
|
|
74
|
+
Here's an example of a reusable component with properties:
|
|
75
|
+
|
|
76
|
+
```res
|
|
77
|
+
// Greeting.res
|
|
78
|
+
@jsx.component
|
|
79
|
+
let make = (~name: string, ~greeting: string="Hello") => {
|
|
80
|
+
<p>
|
|
81
|
+
{Node.text(greeting ++ ", " ++ name ++ "!")}
|
|
82
|
+
</p>
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
// Usage from another file:
|
|
86
|
+
<Greeting name="World" /> // <p>Hello, World!</p>
|
|
87
|
+
<Greeting name="Universe" greeting="Hey" /> // <p>Hey, Universe!</p>
|
|
88
|
+
```
|
|
89
|
+
|
|
72
90
|
## Core Concepts
|
|
73
91
|
|
|
74
92
|
Xote focuses on clarity, control, and performance. The goal is to offer precise, fine-grained updates and predictable behavior with a minimal set of abstractions, while leveraging the robust type system from ReScript.
|
|
@@ -87,11 +105,11 @@ All reactive primitives feature automatic dependency tracking. No manual subscri
|
|
|
87
105
|
|
|
88
106
|
On top of the reactive primitives with signals, Xote provides a declarative component system:
|
|
89
107
|
|
|
90
|
-
- **JSX Support**: Build user interface using JSX
|
|
108
|
+
- **JSX Support**: Build user interface using JSX in a declarative and familiar manner
|
|
91
109
|
- **Reactive DOM Nodes**: Fine-grained reactivity that updates DOM nodes directly, no virtual DOM required
|
|
92
|
-
- **Built-in Router**: Client-side routing with pattern matching and reactive location state
|
|
110
|
+
- **Built-in Router**: Client-side routing with pattern matching and a reactive location state
|
|
93
111
|
- **Automatic Cleanup**: Effect disposal and memory management built into the component lifecycle
|
|
94
|
-
- **Server-side Rendering**: pre-render your pages on the server with full hydration
|
|
112
|
+
- **Server-side Rendering**: pre-render your pages on the server with full hydration (experimental)
|
|
95
113
|
|
|
96
114
|
Check the [website](https://brnrdog.github.io/xote/) for more comprehensive documentations about Xote and Signals.
|
|
97
115
|
|
package/dist/xote.cjs
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});let We={contents:0};function Re(){return We.contents=We.contents+1|0,We.contents}function St(){return{first:void 0,last:void 0,version:0,compute:void 0,firstDep:void 0,lastDep:void 0,flags:0,level:0}}function xn(e){return{first:void 0,last:void 0,version:0,compute:e,firstDep:void 0,lastDep:void 0,flags:1,level:0}}function $n(e,t,n,r,l){return{id:e,kind:t,run:n,firstDep:void 0,lastDep:void 0,flags:1,level:0,name:r,backingSubs:l}}function _t(e){e.flags=e.flags&-2}function An(e){return(e.flags&2)!==0}function kn(e){e.flags=e.flags|2}function Dn(e){e.flags=e.flags&-3}function bt(e){return(e.flags&1)!==0}function On(e){e.flags=e.flags|1}function Xe(e){e.flags=e.flags&-2}function Cn(e){e.flags=e.flags&-3}function Ge(e){return e.compute!==void 0}function st(e,t){return{subs:e,observer:t,nextDep:void 0,prevDep:void 0,nextSub:void 0,prevSub:void 0}}function Pe(e,t){t.prevSub=e.last,t.nextSub=void 0;let n=e.last;n!==void 0?n.nextSub=t:e.first=t,e.last=t}function ft(e,t){t.prevDep=e.lastDep,t.nextDep=void 0;let n=e.lastDep;n!==void 0?n.nextDep=t:e.firstDep=t,e.lastDep=t}function Et(e){let t=e.subs,n=e.prevSub;n!==void 0?n.nextSub=e.nextSub:t.first=e.nextSub;let r=e.nextSub;r!==void 0?r.prevSub=e.prevSub:t.last=e.prevSub,e.prevSub=void 0,e.nextSub=void 0}function wt(e){let t=e.firstDep;for(;t!==void 0;){let n=t;if(n!==void 0){let r=n.nextDep;Et(n),t=r}}e.firstDep=void 0,e.lastDep=void 0}function qe(e){let t=e.firstDep;for(;t!==void 0;){let n=t;if(n!==void 0){let r=n.nextDep;Et(n),t=r}}e.firstDep=void 0,e.lastDep=void 0}function ht(e,t){t.prevDep=e.lastDep,t.nextDep=void 0;let n=e.lastDep;n!==void 0?n.nextDep=t:e.firstDep=t,e.lastDep=t}let C={contents:void 0},B={contents:void 0},ee=[],ue=[],re={contents:!1},Oe=[],mt=(function(e){e.length=0});function jn(e){if(!An(e)){kn(e),ee.push(e);return}}function Pn(e,t){if(e.firstDep===void 0){let i={subs:t,observer:e,nextDep:void 0,prevDep:void 0,nextSub:void 0,prevSub:void 0};return ht(e,i),Pe(t,i)}let n=!1,r=e.firstDep;for(;r!==void 0&&!n;){let i=r;i!==void 0&&(i.subs===t?n=!0:r=i.nextDep)}if(n)return;let l={subs:t,observer:e,nextDep:void 0,prevDep:void 0,nextSub:void 0,prevSub:void 0};ht(e,l),Pe(t,l)}function Mn(e,t){if(e.firstDep===void 0){let i=st(t,e);return ft(e,i),Pe(t,i)}let n=!1,r=e.firstDep;for(;r!==void 0&&!n;){let i=r;i!==void 0&&(i.subs===t?n=!0:r=i.nextDep)}if(n)return;let l=st(t,e);ft(e,l),Pe(t,l)}function Rn(e){let t=C.contents;if(t!==void 0)return Pn(t,e);let n=B.contents;if(n!==void 0)return Mn(n,e)}function Gn(e,t){return e.level-t.level|0}function Ln(e,t){return e.level-t.level|0}function Tt(e){let t=0,n=e.firstDep;for(;n!==void 0;){let r=n;r!==void 0&&(Ge(r.subs)&&r.subs.level>t&&(t=r.subs.level),n=r.nextDep)}return t+1|0}function vt(e){let t=0,n=e.firstDep;for(;n!==void 0;){let r=n;r!==void 0&&(Ge(r.subs)&&r.subs.level>t&&(t=r.subs.level),n=r.nextDep)}return t+1|0}function Fn(e){let t=e.level;qe(e),Cn(e);let n=C.contents;C.contents=e;try{let r=e.compute;r!==void 0&&r(),Xe(e),C.contents=n}catch(r){throw C.contents=n,r}if(t===0){e.level=Tt(e);return}}function Nn(e){let t=e.level;wt(e),Dn(e);let n=B.contents;B.contents=e;try{e.run(),_t(e),B.contents=n}catch(r){throw B.contents=n,r}if(t===0){e.level=vt(e);return}}function xt(){re.contents=!0;try{for(;ee.length!==0||ue.length!==0;){if(ue.length!==0){ue.sort(Ln);let e=ue.slice();mt(ue),e.forEach(Fn)}if(ee.length!==0){ee.sort(Gn);let e=ee.slice();mt(ee),e.forEach(Nn)}}re.contents=!1;return}catch(e){throw re.contents=!1,e}}function zn(e){for(Oe.push(e);Oe.length!==0;){let t=Oe.pop();if(t!==void 0){let n=t.first;for(;n!==void 0;){let r=n;if(r!==void 0){let l=r.observer;Ge(l)?bt(l)||(On(l),Oe.push(l)):jn(r.observer),n=r.nextSub}}}}if((ee.length!==0||ue.length!==0)&&!re.contents)return xt()}function $t(e){if(!(Ge(e)&&bt(e)))return;let t=e.level;qe(e);let n=C.contents;C.contents=e;try{let r=e.compute;r!==void 0&&r(),Xe(e),C.contents=n}catch(r){throw C.contents=n,r}if(t===0){e.level=Tt(e);return}}function Bn(e){let t=re.contents;re.contents=!0;try{let n=e();return t||(re.contents=!1,(ee.length!==0||ue.length!==0)&&xt()),n}catch(n){throw t||(re.contents=!1),n}}function In(e){let t=C.contents,n=B.contents;C.contents=void 0,B.contents=void 0;try{let r=e();return C.contents=t,B.contents=n,r}catch(r){throw C.contents=t,B.contents=n,r}}function At(e,t){let n=Re(),r={contents:void 0},i=$n(n,"Effect",()=>{let y=r.contents;y!==void 0&&y(),r.contents=e()},t,void 0),u=B.contents;B.contents=i;try{i.run(),_t(i),B.contents=u}catch(y){throw B.contents=u,y}i.level=vt(i);let o={contents:!1};return{dispose:()=>{if(o.contents)return;o.contents=!0;let y=r.contents;y!==void 0&&y(),wt(i)}}}function Wn(e,t){At(e,t)}let G=At,Kn=Wn;const Vn=Object.freeze(Object.defineProperty({__proto__:null,run:Kn,runWithDisposer:G},Symbol.toStringTag,{value:"Module"}));function oe(e){return e===void 0?{BS_PRIVATE_NESTED_SOME_NONE:0}:e!==null&&e.BS_PRIVATE_NESTED_SOME_NONE!==void 0?{BS_PRIVATE_NESTED_SOME_NONE:e.BS_PRIVATE_NESTED_SOME_NONE+1|0}:e}function Ue(e){if(e!=null)return oe(e)}function h(e){if(e===null||e.BS_PRIVATE_NESTED_SOME_NONE===void 0)return e;let t=e.BS_PRIVATE_NESTED_SOME_NONE;if(t!==0)return{BS_PRIVATE_NESTED_SOME_NONE:t-1|0}}function Hn(e,t){if(e!==void 0)return oe(t(h(e)))}function J(e,t){return e!==void 0?h(e):t}function Ye(e){return e!==void 0}function Xn(e,t,n){return{id:Re(),value:e,equals:J(n,(l,i)=>l===i),name:t,subs:St()}}function qn(e,t){return{id:Re(),value:e,equals:(r,l)=>!1,name:t,subs:St()}}function Un(e){return $t(e.subs),Rn(e.subs),e.value}function Yn(e){return $t(e.subs),e.value}function kt(e,t){let n;try{n=!e.equals(e.value,t)}catch{n=!0}if(n)return e.value=t,e.subs.version=e.subs.version+1|0,zn(e.subs)}function Jn(e,t){kt(e,t(e.value))}let Qn=Bn,Zn=In,Je=Xn,er=qn,k=Un,H=Yn,ae=kt,tr=Jn,nr=Qn,rr=Zn;const ir=Object.freeze(Object.defineProperty({__proto__:null,batch:nr,get:k,make:Je,makeForComputed:er,peek:H,set:ae,untrack:rr,update:tr},Symbol.toStringTag,{value:"Module"}));function Qe(e,t){delete e[t]}function lr(e,t){let n=Re(),r={contents:void 0},i=xn(()=>{r.contents.value=e()}),u=C.contents;C.contents=i;let o=e();C.contents=u;let c={id:n,value:o,equals:(y,O)=>!1,name:t,subs:i};return r.contents=c,Xe(i),c}function ur(e){qe(e.subs)}let Q=lr,Dt=ur;const or=Object.freeze(Object.defineProperty({__proto__:null,dispose:Dt,make:Q},Symbol.toStringTag,{value:"Module"}));let Ot="http://www.w3.org/2000/svg",Ct=["svg","path","circle","ellipse","line","polygon","polyline","rect","g","defs","clipPath","mask","pattern","marker","symbol","use","text","tspan","image","foreignObject","linearGradient","radialGradient","stop","filter","feBlend","feColorMatrix","feComposite","feFlood","feGaussianBlur","feMerge","feMergeNode","feOffset","animate","animateTransform","desc","title","metadata"],Le={};Ct.forEach(e=>{Le[e]=!0});function ar(e){return Ye(Le[e])}function be(e,t,n){switch(t){case"checked":e.checked=n==="true";return;case"disabled":e.disabled=n==="true";return;case"aria-expanded":case"aria-hidden":case"aria-selected":case"autofocus":case"contenteditable":case"draggable":case"hidden":case"multiple":case"readonly":case"required":case"spellcheck":break;case"value":e.value=n;return;default:e.setAttribute(t,n);return}n==="true"?e.setAttribute(t,""):e.removeAttribute(t)}let we={setAttrOrProp:be},Ce={contents:void 0};function dr(){return{disposers:[],computeds:[]}}function me(e,t){let n=Ce.contents;Ce.contents=e;let r=t();return Ce.contents=n,r}function pe(e,t){e.disposers.push(t)}function jt(e){e.disposers.forEach(t=>t.dispose()),e.computeds.forEach(Dt)}function ge(e,t){e.__xote_owner__=t}function Pt(e){return Ue(e.__xote_owner__)}let s={currentOwner:Ce,createOwner:dr,runWithOwner:me,addDisposer:pe,disposeOwner:jt,setOwner:ge,getOwner:Pt};function Mt(e,t){return[e,{TAG:"Static",_0:t}]}function Rt(e,t){return[e,{TAG:"SignalValue",_0:t}]}function Gt(e,t){return[e,{TAG:"Compute",_0:t}]}let cr={$$static:Mt,signal:Rt,computed:Gt};function Ee(e){let t=Pt(e);t!==void 0&&jt(t),Array.from(e.childNodes||[]).forEach(Ee)}function Y(e){switch(e.TAG){case"Element":let t=e.children,n=e.events,r=e.attrs,l=e.tag,i=Ye(Le[l])?document.createElementNS(Ot,l):document.createElement(l),u={disposers:[],computeds:[]};return ge(i,u),me(u,()=>{r.forEach(a=>{let m=a[1],$=a[0];switch(m.TAG){case"Static":return be(i,$,m._0);case"SignalValue":let D=m._0;be(i,$,H(D));let R=G(()=>{be(i,$,k(D))},void 0);return pe(u,R);case"Compute":let p=m._0,_=G(()=>{be(i,$,p())},void 0);return pe(u,_)}}),n.forEach(a=>{i.addEventListener(a[0],a[1])}),t.forEach(a=>{let m=Y(a);i.appendChild(m)})}),i;case"Text":return document.createTextNode(e._0);case"SignalText":let o=e._0,c=document.createTextNode(H(o)),y={disposers:[],computeds:[]};return ge(c,y),me(y,()=>{let a=G(()=>{c.textContent=k(o)},void 0);pe(y,a)}),c;case"Fragment":let O=document.createDocumentFragment();return e._0.forEach(a=>{let m=Y(a);O.appendChild(m)}),O;case"SignalFragment":let F=e._0,N={disposers:[],computeds:[]},j=document.createElement("div");return j.setAttribute("style","display: contents"),ge(j,N),me(N,()=>{let a=G(()=>{let m=k(F);Array.from(j.childNodes||[]).forEach(Ee),j.innerHTML="",m.forEach(D=>{let R=Y(D);j.appendChild(R)})},void 0);pe(N,a)}),j;case"LazyComponent":let A={disposers:[],computeds:[]},X=me(A,e._0),W=Y(X);return ge(W,A),W;case"KeyedList":let K=e.renderItem,P=e.keyFn,q=e.signal,fe={disposers:[],computeds:[]},x=document.createComment(" keyed-list-start "),b=document.createComment(" keyed-list-end ");ge(x,fe);let f={},E=()=>{let a=b.parentNode;if(a==null)return;let m=k(q),$={};m.forEach(g=>{$[P(g)]=g});let D=[];Object.keys(f).forEach(g=>{if($[g]===void 0){D.push(g);return}}),D.forEach(g=>{let v=f[g];if(v!==void 0){Ee(v.element),v.element.remove(),Qe(f,g);return}});let R=[],p={};m.forEach(g=>{let v=P(g),he=f[v];if(he!==void 0){if(he.item!==g){p[v]=!0;let De=K(g),vn=Y(De),ct={key:v,item:g,element:vn};R.push(ct),f[v]=ct;return}R.push(he);return}let Ae=K(g),Ie=Y(Ae),ke={key:v,item:g,element:Ie};R.push(ke),f[v]=ke});let _={contents:x.nextSibling};R.forEach(g=>{let v=_.contents;if(v==null){a.insertBefore(g.element,b);return}if(v===b){a.insertBefore(g.element,b);return}if(v===g.element){_.contents=v.nextSibling;return}J(p[g.key],!1)?(Ee(v),a.replaceChild(g.element,v),_.contents=g.element.nextSibling):(a.insertBefore(g.element,v),_.contents=g.element.nextSibling)})},T=document.createDocumentFragment();return T.appendChild(x),H(q).forEach(a=>{let m=P(a),$=K(a),D=Y($),R={key:m,item:a,element:D};f[m]=R,T.appendChild(D)}),T.appendChild(b),me(fe,()=>{let a=G(()=>{E()},void 0);pe(fe,a)}),T}}let te={disposeElement:Ee,render:Y};function Lt(e){return{TAG:"Text",_0:e}}function sr(e){return{TAG:"SignalText",_0:Q(e,void 0)}}function fr(e){return{TAG:"SignalText",_0:Q(()=>e().toString(),void 0)}}function hr(e){return{TAG:"SignalText",_0:Q(()=>e().toString(),void 0)}}function mr(e){return{TAG:"Text",_0:e.toString()}}function pr(e){return{TAG:"Text",_0:e.toString()}}function Ze(e){return{TAG:"Fragment",_0:e}}function et(e){return{TAG:"SignalFragment",_0:e}}function gr(e,t){return{TAG:"SignalFragment",_0:Q(()=>k(e).map(t),void 0)}}function yr(e,t,n){return{TAG:"KeyedList",signal:e,keyFn:t,renderItem:n}}function V(e,t,n,r,l){let i=t!==void 0?t:[].map(c=>c),u=n!==void 0?n:[].map(c=>c),o=r!==void 0?r:[].map(c=>c);return{TAG:"Element",tag:e,attrs:i,events:u,children:o}}function Sr(){return{TAG:"Text",_0:""}}function Ft(e,t){let n=Y(e);t.appendChild(n)}function _r(e,t){let n=document.getElementById(t);if(n==null){console.error("Container element not found: "+t);return}else return Ft(e,n)}let br=Le,U=Mt,de=Rt,Fe=Gt;const Er=Object.freeze(Object.defineProperty({__proto__:null,$$null:Sr,Attributes:cr,DOM:we,Reactivity:s,Render:te,attr:U,computedAttr:Fe,element:V,float:pr,fragment:Ze,int:mr,isSvgTag:ar,keyedList:yr,list:gr,mount:Ft,mountById:_r,signalAttr:de,signalFloat:hr,signalFragment:et,signalInt:fr,signalText:sr,svgNamespace:Ot,svgTagSet:br,svgTags:Ct,text:Lt},Symbol.toStringTag,{value:"Module"}));function wr(e,t,n,r){return V("div",e,t,n)}function Tr(e,t,n,r){return V("span",e,t,n)}function vr(e,t,n,r){return V("button",e,t,n)}function xr(e,t,n){return V("input",e,t,void 0)}function $r(e,t,n,r){return V("h1",e,t,n)}function Ar(e,t,n,r){return V("h2",e,t,n)}function kr(e,t,n,r){return V("h3",e,t,n)}function Dr(e,t,n,r){return V("p",e,t,n)}function Or(e,t,n,r){return V("ul",e,t,n)}function Cr(e,t,n,r){return V("li",e,t,n)}function tt(e,t,n,r){return V("a",e,t,n)}const jr=Object.freeze(Object.defineProperty({__proto__:null,a:tt,button:vr,div:wr,h1:$r,h2:Ar,h3:kr,input:xr,li:Cr,p:Dr,span:Tr,ul:Or},Symbol.toStringTag,{value:"Module"}));function Nt(e,t){return{TAG:"LazyComponent",_0:()=>e(t)}}function zt(e,t,n,r){return{TAG:"LazyComponent",_0:()=>e(t)}}function Pr(e){let t=e.children;return t!==void 0?t:Ze([])}let Mr=Ze;function Rr(){return Lt("")}function nt(e){return e&&typeof e=="object"&&"TAG"in e&&(e.TAG==="Static"||e.TAG==="Reactive")}function S(e,t){return nt(t)?t.TAG==="Reactive"?de(e,t._0):U(e,t._0):typeof t=="function"?Fe(e,t):typeof t=="object"?de(e,t):U(e,t)}function L(e,t){if(nt(t)){if(t.TAG!=="Reactive")return U(e,t._0?"true":"false");let r=t._0,l=Q(()=>k(r)?"true":"false",void 0);return de(e,l)}if(typeof t=="function")return Fe(e,()=>t()?"true":"false");if(typeof t!="object")return U(e,t?"true":"false");let n=Q(()=>k(t)?"true":"false",void 0);return de(e,n)}function d(e,t,n,r){if(t!==void 0){e.push(r(n,h(t)));return}}function ye(e,t,n){if(t!==void 0){e.push(U(n,t.toString()));return}}function Bt(e){let t=[];d(t,e.id,"id",S),d(t,e.class,"class",S),d(t,e.style,"style",S),d(t,e.title,"title",S),d(t,e.type,"type",S),d(t,e.name,"name",S),d(t,e.value,"value",S),d(t,e.placeholder,"placeholder",S),d(t,e.disabled,"disabled",L),d(t,e.checked,"checked",L),d(t,e.required,"required",L),d(t,e.readOnly,"readonly",L),ye(t,e.maxLength,"maxlength"),ye(t,e.minLength,"minlength"),d(t,e.min,"min",S),d(t,e.max,"max",S),d(t,e.step,"step",S),d(t,e.pattern,"pattern",S),d(t,e.autoComplete,"autocomplete",S),d(t,e.multiple,"multiple",L),d(t,e.accept,"accept",S),ye(t,e.rows,"rows"),ye(t,e.cols,"cols"),d(t,e.autofocus,"autofocus",L),d(t,e.action,"action",S),d(t,e.method,"method",S),d(t,e.for,"for",S),d(t,e.href,"href",S),d(t,e.target,"target",S),d(t,e.src,"src",S),d(t,e.alt,"alt",S),d(t,e.width,"width",S),d(t,e.height,"height",S),d(t,e.draggable,"draggable",L),d(t,e.hidden,"hidden",L),d(t,e.contentEditable,"contenteditable",L),d(t,e.spellcheck,"spellcheck",L),d(t,e.role,"role",S),ye(t,e.tabIndex,"tabindex"),d(t,e["aria-label"],"aria-label",S),d(t,e["aria-hidden"],"aria-hidden",L),d(t,e["aria-expanded"],"aria-expanded",L),d(t,e["aria-selected"],"aria-selected",L);let n=e.data;return n!==void 0&&Object.entries(n).forEach(([r,l])=>{t.push(S("data-"+r,l))}),t}function w(e,t,n){if(t!==void 0){e.push([n,h(t)]);return}}function It(e){let t=[];return w(t,e.onClick,"click"),w(t,e.onInput,"input"),w(t,e.onChange,"change"),w(t,e.onSubmit,"submit"),w(t,e.onFocus,"focus"),w(t,e.onBlur,"blur"),w(t,e.onKeyDown,"keydown"),w(t,e.onKeyUp,"keyup"),w(t,e.onMouseEnter,"mouseenter"),w(t,e.onMouseLeave,"mouseleave"),w(t,e.onMouseDown,"mousedown"),w(t,e.onMouseMove,"mousemove"),w(t,e.onMouseUp,"mouseup"),w(t,e.onContextMenu,"contextmenu"),w(t,e.onDrag,"drag"),w(t,e.onDragStart,"dragstart"),w(t,e.onDragEnd,"dragend"),w(t,e.onDragOver,"dragover"),w(t,e.onDragEnter,"dragenter"),w(t,e.onDragLeave,"dragleave"),w(t,e.onDrop,"drop"),t}function Wt(e){let t=e.children;return t!==void 0?t.TAG==="Fragment"?t._0:[t]:[]}function rt(e,t){return{TAG:"Element",tag:e,attrs:Bt(t),events:It(t),children:Wt(t)}}let pt=rt;function gt(e,t,n,r){return rt(e,t)}let Gr={isReactiveProp:nt,convertAttrValue:S,convertBoolAttrValue:L,addAttr:d,addIntAttr:ye,propsToAttrs:Bt,addEvent:w,propsToEvents:It,getChildren:Wt,createElement:rt,jsx:pt,jsxs:pt,jsxKeyed:gt,jsxsKeyed:gt},Lr,Fr=Nt,Nr=zt;const zr=Object.freeze(Object.defineProperty({__proto__:null,$$null:Rr,Elements:Gr,ReactiveProp:Lr,array:Mr,jsx:Nt,jsxFragment:Pr,jsxKeyed:zt,jsxs:Fr,jsxsKeyed:Nr},Symbol.toStringTag,{value:"Module"}));function Br(e){return e.TAG==="Reactive"?k(e._0):e._0}function Ir(e){return{TAG:"Static",_0:e}}function Wr(e){return{TAG:"Reactive",_0:e}}const Kr=Object.freeze(Object.defineProperty({__proto__:null,$$static:Ir,get:Br,reactive:Wr},Symbol.toStringTag,{value:"Module"}));function Kt(e,t){let n=e.length,r=new Array(n),l=0;for(let i=0;i<n;++i){let u=e[i],o=t(u);o!==void 0&&(r[l]=h(o),l=l+1|0)}return r.length=l,r}function Vr(e,t){let n=0;for(;;){let r=n;if(r===e.length)return;let l=t(e[r]);if(l!==void 0)return l;n=r+1|0}}function Vt(e){return Kt(e.split("/"),t=>{if(t!=="")return t.startsWith(":")?{TAG:"Param",_0:t.slice(1)}:{TAG:"Static",_0:t}})}function Ht(e,t){let n=t.split("/").filter(i=>i!=="");if(e.length!==n.length)return"NoMatch";let r={};return e.every((i,u)=>{let o=n[u];return i.TAG==="Static"?o===i._0:(r[i._0]=o,!0)})?{TAG:"Match",_0:r}:"NoMatch"}function it(e,t){return Ht(Vt(e),t)}const Hr=Object.freeze(Object.defineProperty({__proto__:null,match:it,matchPath:Ht,parsePattern:Vt},Symbol.toStringTag,{value:"Module"}));function Xr(){return Symbol.for("xote.router.state")}function I(){let e=globalThis[Symbol.for("xote.router.state")];if(e!==void 0)return e;let t={location:Je({pathname:"/",search:"",hash:""},void 0,void 0),basePath:{contents:"/"},initialized:!1,popStateHandler:void 0};return globalThis[Symbol.for("xote.router.state")]=t,t}function qr(){return I().location}function Ur(){return I().basePath}function ce(e){if(!I().initialized){console.warn("[Xote Router] "+e+" called before Router.init(). Make sure to call Router.init() at your app entry point. This may cause incorrect routing behavior.");return}}function lt(e){if(e===""||e==="/")return"/";let t=e.startsWith("/")?e:"/"+e;return t.endsWith("/")?t.slice(0,t.length-1|0):t}function Xt(e){let t=I().basePath.contents;return t==="/"?e:e===t?"/":e.startsWith(t+"/")?e.slice(t.length):e}function ve(e){let t=I().basePath.contents;return t==="/"?e:e==="/"?t:t+e}function qt(){let e=window.scrollX||window.pageXOffset||0,t=window.scrollY||window.pageYOffset||0;return[e,t]}function Ne(e,t){window.scrollTo(e,t)}function Ut(e,t){return{scrollX:e,scrollY:t}}function ut(){return{}}function Yt(e){let t=e&&e.scrollX,n=e&&e.scrollY;if(t!=null&&n!=null)return[t,n]}function Jt(){let e=qt(),t=Ut(e[0],e[1]),n=window.location.href;window.history.replaceState(t,"",n)}function Ve(){let e=window.location.pathname;return{pathname:Xt(e),search:window.location.search,hash:window.location.hash}}function Yr(e,t){let n=e!==void 0?e:"/",r=I(),l=lt(n);if(r.basePath.contents=l,ae(r.location,Ve()),r.initialized)return;let i=u=>{ae(I().location,Ve());let o=window["history.state"];if(o==null)return;let c=Yt(o);if(c!==void 0)return Ne(c[0],c[1])};r.popStateHandler=i,window.addEventListener("popstate",i),r.initialized=!0}function Jr(e,t,n,r,l){let i=e!==void 0?e:"/",u=t!==void 0?t:"/",o=n!==void 0?n:"",c=r!==void 0?r:"",y=I(),O=lt(i);y.basePath.contents=O,ae(y.location,{pathname:u,search:o,hash:c}),y.initialized=!0}function ot(e,t,n,r){let l=t!==void 0?t:"",i=n!==void 0?n:"";ce("Router.push()"),Jt();let u={pathname:e,search:l,hash:i},c=ve(e)+l+i;window.history.pushState(ut(),"",c),ae(I().location,u),Ne(0,0)}function Qr(e,t,n,r){let l=t!==void 0?t:"",i=n!==void 0?n:"";ce("Router.replace()");let u={pathname:e,search:l,hash:i},c=ve(e)+l+i;window.history.replaceState(ut(),"",c),ae(I().location,u),Ne(0,0)}function Zr(e,t){return ce("Router.route()"),et(Q(()=>{let n=k(I().location),r=it(e,n.pathname);return typeof r!="object"?[]:[t(r._0)]},void 0))}function ei(e){return ce("Router.routes()"),et(Q(()=>{let t=k(I().location),n=Vr(e,r=>{let l=it(r.pattern,t.pathname);if(typeof l=="object")return r.render(l._0)});return n!==void 0?[n]:[]},void 0))}function ti(e,t,n,r){let l=t!==void 0?t:[],i=n!==void 0?n:[];ce("Router.link()");let u=o=>{o.preventDefault(),ot(e,void 0,void 0)};return tt(l.concat([U("href",ve(e))]),[["click",u]],i)}function Qt(e){return e&&typeof e=="object"&&"TAG"in e&&(e.TAG==="Static"||e.TAG==="Reactive")}function Se(e,t){return Qt(t)?t.TAG==="Reactive"?de(e,t._0):U(e,t._0):typeof t=="function"?Fe(e,t):typeof t=="object"?de(e,t):U(e,t)}function Zt(e){let t=[],n=e.class;n!==void 0&&t.push(Se("class",h(n)));let r=e.id;r!==void 0&&t.push(Se("id",h(r)));let l=e.style;l!==void 0&&t.push(Se("style",h(l)));let i=e.target;i!==void 0&&t.push(Se("target",h(i)));let u=e["aria-label"];return u!==void 0&&t.push(Se("aria-label",h(u))),t}function en(e){let t=e.children;return t!==void 0?t.TAG==="Fragment"?t._0:[t]:[]}function je(e){ce("Router.Link");let t=n=>{n.preventDefault(),ot(e.to,void 0,void 0);let r=e.onClick;if(r!==void 0)return r(n)};return tt(Zt(e).concat([U("href",ve(e.to))]),[["click",t]],en(e))}function yt(e,t,n){return je(e)}let ni={ReactiveProp:void 0,isReactiveProp:Qt,convertAttrValue:Se,propsToAttrs:Zt,getChildren:en,make:je,jsx:je,jsxs:je,jsxKeyed:yt,jsxsKeyed:yt},ri;const ii=Object.freeze(Object.defineProperty({__proto__:null,Link:ni,Route:ri,addBasePath:ve,basePath:Ur,emptyHistoryState:ut,getCurrentLocation:Ve,getGlobalState:I,getScrollFromState:Yt,getScrollPosition:qt,getSymbolKey:Xr,init:Yr,initSSR:Jr,link:ti,location:qr,makeHistoryState:Ut,normalizeBasePath:lt,push:ot,replace:Qr,route:Zr,routes:ei,saveScrollPosition:Jt,scrollTo:Ne,stripBasePath:Xt,warnIfNotInitialized:ce},Symbol.toStringTag,{value:"Module"}));function ie(e){return e.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll('"',""").replaceAll("'","'")}let at=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"];function li(e){return at.includes(e)}let tn={escape:ie,voidElements:at,isVoidElement:li},nn="<!--$-->",rn="<!--/$-->",ln="<!--#-->",un="<!--/#-->",on="<!--kl-->",an="<!--/kl-->";function dn(e){return"<!--k:"+e+"-->"}let cn="<!--/k-->",sn="<!--lc-->",fn="<!--/lc-->",ui={signalTextStart:nn,signalTextEnd:rn,signalFragmentStart:ln,signalFragmentEnd:un,keyedListStart:on,keyedListEnd:an,keyedItemStart:dn,keyedItemEnd:cn,lazyComponentStart:sn,lazyComponentEnd:fn};function hn(e){let t=e[1],n=e[0],r;switch(t.TAG){case"Static":r=t._0;break;case"SignalValue":r=H(t._0);break;case"Compute":r=t._0();break}switch(n){case"aria-expanded":case"aria-hidden":case"aria-selected":case"autofocus":case"checked":case"contenteditable":case"disabled":case"draggable":case"hidden":case"multiple":case"readonly":case"required":case"spellcheck":break;default:return n+'="'+ie(r)+'"'}return r==="true"?n:""}function mn(e){let t=e.map(hn).filter(n=>n!=="");return t.length!==0?" "+t.join(" "):""}let oi={renderAttr:hn,renderAttrs:mn};function ne(e){switch(e.TAG){case"Element":let t=e.tag,n=mn(e.attrs);if(at.includes(t))return"<"+t+n+" />";let r=e.children.map(ne).join("");return"<"+t+n+">"+r+"</"+t+">";case"Text":return ie(e._0);case"SignalText":let l=H(e._0);return nn+ie(l)+rn;case"Fragment":return e._0.map(ne).join("");case"SignalFragment":let u=H(e._0).map(ne).join("");return ln+u+un;case"LazyComponent":let o=e._0();return sn+ne(o)+fn;case"KeyedList":let c=e.renderItem,y=e.keyFn,F=H(e.signal).map(N=>{let j=y(N),A=ne(c(N));return dn(j)+A+cn}).join("");return on+F+an}}function pn(e,t){return ne(e())}function ai(e,t,n){let r=t!==void 0?t:"root",l=e(),i=ne(l);return"<!--xote-root:"+r+"-->"+i+"<!--/xote-root-->"}function gn(e){return"<script"+(e!==void 0?' nonce="'+ie(e)+'"':"")+">window.__XOTE_HYDRATED__=false;<\/script>"}function di(e,t,n,r,l,i,u){let o=e!==void 0?e:"",c=t!==void 0?t:"",y=n!==void 0?n:[],O=r!==void 0?r:[],F=l!==void 0?l:"",N=pn(u),j=gn(i),A=O.map(W=>'<link rel="stylesheet" href="'+ie(W)+'" />').join(`
|
|
2
|
-
`),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});let Ze={contents:0};function je(){return Ze.contents=Ze.contents+1|0,Ze.contents}let Te={contents:0},xe={contents:0};function $t(){return{first:void 0,last:void 0,computedSubscriberCount:0,version:0,compute:void 0,firstDep:void 0,lastDep:void 0,flags:0,level:0,deferEffectsUntilRecompute:!1,lastGlobalVersion:0}}function At(e,t){return{first:void 0,last:void 0,computedSubscriberCount:0,version:0,compute:e,firstDep:void 0,lastDep:void 0,flags:1,level:0,deferEffectsUntilRecompute:t!==void 0?t:!1,lastGlobalVersion:0}}function Nn(e,t,n,r,l){return{id:e,kind:t,run:n,firstDep:void 0,lastDep:void 0,flags:1,level:0,name:r,backingSubs:l}}function Ot(e){e.flags=e.flags&-2}function Bn(e){return(e.flags&2)!==0}function zn(e){e.flags=e.flags|2}function In(e){e.flags=e.flags&-3}function Ct(e){return(e.flags&1)!==0}function Pt(e){e.flags=e.flags|1}function Ke(e){e.flags=e.flags&-2}function Wn(e){return(e.flags&2)!==0}function Kn(e){e.flags=e.flags|2}function Hn(e){e.flags=e.flags&-3}function ae(e){return e.compute!==void 0}function ze(e,t){return{subs:e,observer:t,nextDep:void 0,prevDep:void 0,nextSub:void 0,prevSub:void 0,lastTrackedVersion:0}}function Ie(e,t){t.prevSub=e.last,t.nextSub=void 0;let n=e.last;if(n!==void 0?n.nextSub=t:e.first=t,e.last=t,t.observer.compute!==void 0){e.computedSubscriberCount=e.computedSubscriberCount+1|0;return}}function _t(e,t){t.prevDep=e.lastDep,t.nextDep=void 0;let n=e.lastDep;n!==void 0?n.nextDep=t:e.firstDep=t,e.lastDep=t}function He(e){let t=e.subs,n=e.prevSub;n!==void 0?n.nextSub=e.nextSub:t.first=e.nextSub;let r=e.nextSub;if(r!==void 0?r.prevSub=e.prevSub:t.last=e.prevSub,e.prevSub=void 0,e.nextSub=void 0,e.observer.compute!==void 0&&t.computedSubscriberCount>0){t.computedSubscriberCount=t.computedSubscriberCount-1|0;return}}function qn(e,t){let n=t.prevDep;n!==void 0?n.nextDep=t.nextDep:e.firstDep=t.nextDep;let r=t.nextDep;r!==void 0?r.prevDep=t.prevDep:e.lastDep=t.prevDep,t.prevDep=void 0,t.nextDep=void 0}function Xn(e,t){let n=t.prevDep;n!==void 0?n.nextDep=t.nextDep:e.firstDep=t.nextDep;let r=t.nextDep;r!==void 0?r.prevDep=t.prevDep:e.lastDep=t.prevDep,t.prevDep=void 0,t.nextDep=void 0}function Un(e){let t=e.firstDep;for(;t!==void 0;){let n=t;if(n!==void 0){let r=n.nextDep;He(n),t=r}}e.firstDep=void 0,e.lastDep=void 0}function Yn(e){let t=e.firstDep;for(;t!==void 0;){let n=t;if(n!==void 0){let r=n.nextDep;He(n),t=r}}e.firstDep=void 0,e.lastDep=void 0}function vt(e,t){t.prevDep=e.lastDep,t.nextDep=void 0;let n=e.lastDep;n!==void 0?n.nextDep=t:e.firstDep=t,e.lastDep=t}let G={contents:void 0},I={contents:void 0},z={contents:0},N={contents:void 0},B={contents:void 0},U=[],Y=[],ue={contents:!1},$e={contents:!1},Ae={contents:!1},Et={contents:0},Tt={contents:0},De=[],Jn=(function(e){e.length=0}),wt=(function(e,t){if(!(t<=0)){if(t>=e.length){e.length=0;return}e.copyWithin(0,t),e.length=e.length-t}});function tt(e){if(Bn(e))return;zn(e),U.length===0?$e.contents=!1:e.level<Et.contents&&($e.contents=!0),U.push(e),Et.contents=e.level}function Qn(e){if(Wn(e))return;Kn(e),Y.length===0?Ae.contents=!1:e.level<Tt.contents&&(Ae.contents=!0),Y.push(e),Tt.contents=e.level}function Zn(e,t){if(e.firstDep===void 0){let u=ze(t,e);u.lastTrackedVersion=z.contents,vt(e,u),Ie(t,u),N.contents=u;return}let n=z.contents,r=!1,l=N.contents;if(l!==void 0)if(l.subs===t&&l.observer===e)l.lastTrackedVersion=n,r=!0;else{let u=l.nextDep;u!==void 0&&u.subs===t&&u.observer===e&&(u.lastTrackedVersion=n,N.contents=u,r=!0)}if(!r){let u=t.last;u!==void 0&&u.lastTrackedVersion===n&&u.observer===e&&(u.lastTrackedVersion=n,N.contents=u,r=!0)}if(r)return;let i=!1,o,s=e.firstDep;for(;s!==void 0&&!i;){let u=s;u!==void 0&&(u.subs===t?(u.lastTrackedVersion=n,o=u,i=!0):s=u.nextDep)}if(i){N.contents=o;return}let d=ze(t,e);d.lastTrackedVersion=n,vt(e,d),Ie(t,d),N.contents=d}function er(e,t){if(e.firstDep===void 0){let u=ze(t,e);u.lastTrackedVersion=z.contents,_t(e,u),Ie(t,u),B.contents=u;return}let n=z.contents,r=!1,l=B.contents;if(l!==void 0)if(l.subs===t&&l.observer===e)l.lastTrackedVersion=n,r=!0;else{let u=l.nextDep;u!==void 0&&u.subs===t&&u.observer===e&&(u.lastTrackedVersion=n,B.contents=u,r=!0)}if(!r){let u=t.last;u!==void 0&&u.lastTrackedVersion===n&&u.observer===e&&(u.lastTrackedVersion=n,B.contents=u,r=!0)}if(r)return;let i=!1,o,s=e.firstDep;for(;s!==void 0&&!i;){let u=s;u!==void 0&&(u.subs===t?(u.lastTrackedVersion=n,o=u,i=!0):s=u.nextDep)}if(i){B.contents=o;return}let d=ze(t,e);d.lastTrackedVersion=n,_t(e,d),Ie(t,d),B.contents=d}function tr(e){let t=G.contents;if(t!==void 0)return Zn(t,e);let n=I.contents;if(n!==void 0)return er(n,e)}function nr(e,t){return e.level-t.level|0}function rr(e,t){return e.level-t.level|0}function jt(e){let t=0,n=e.firstDep;for(;n!==void 0;){let r=n;r!==void 0&&(ae(r.subs)&&r.subs.level>t&&(t=r.subs.level),n=r.nextDep)}return t+1|0}function Rt(e){let t=0,n=e.firstDep;for(;n!==void 0;){let r=n;r!==void 0&&(ae(r.subs)&&r.subs.level>t&&(t=r.subs.level),n=r.nextDep)}return t+1|0}function Mt(e,t){let n=z.contents,r=e.version;Te.contents=Te.contents+1|0,z.contents=Te.contents,t&&Hn(e);let l=G.contents,i=N.contents;G.contents=e,N.contents=e.firstDep;try{let o=e.compute;o!==void 0&&o();let s=e.firstDep;for(;s!==void 0;){let d=s;if(d!==void 0){let u=d.nextDep;d.lastTrackedVersion!==z.contents&&(He(d),Xn(e,d)),s=u}}if(Ke(e),e.lastGlobalVersion=xe.contents,e.first!==void 0&&e.version!==r){let d=e.first;for(;d!==void 0;){let u=d;if(u!==void 0){let S=u.observer;if(ae(S))Pt(S);else{let D=I.contents;D!==void 0&&D===u.observer||tt(u.observer)}d=u.nextSub}}}G.contents=l,N.contents=i,z.contents=n;return}catch(o){throw G.contents=l,N.contents=i,z.contents=n,o}}function lr(e){let t=e.level;if(Mt(e,!0),t===0){e.level=jt(e);return}}function ir(e){let t=e.level,n=z.contents;Te.contents=Te.contents+1|0,z.contents=Te.contents,In(e);let r=I.contents,l=B.contents;I.contents=e,B.contents=e.firstDep;try{e.run();let i=e.firstDep;for(;i!==void 0;){let o=i;if(o!==void 0){let s=o.nextDep;o.lastTrackedVersion!==z.contents&&(He(o),qn(e,o)),i=s}}Ot(e),I.contents=r,B.contents=l,z.contents=n}catch(i){throw I.contents=r,B.contents=l,z.contents=n,i}if(t===0){e.level=Rt(e);return}}function Vt(){ue.contents=!0;try{for(;U.length!==0||Y.length!==0;){if(Y.length!==0){let e=Y.length;e>1&&Ae.contents&&(Y.sort(rr),Ae.contents=!1);let t=0;for(;t<e;){let n=Y[t];n!==void 0&&lr(n),t=t+1|0}wt(Y,e),Y.length===0&&(Ae.contents=!1)}if(U.length!==0){let e=U.length;e>1&&$e.contents&&(U.sort(nr),$e.contents=!1);let t=0;for(;t<e;){let n=U[t];n!==void 0&&ir(n),t=t+1|0}wt(U,e),U.length===0&&($e.contents=!1)}}ue.contents=!1;return}catch(e){throw ue.contents=!1,e}}function ur(e){if(e.first!==void 0)if(!ae(e)&&e.computedSubscriberCount===0){let t=e.first;for(;t!==void 0;){let n=t;n!==void 0&&(tt(n.observer),t=n.nextSub)}}else{De.push(e);let t=0;for(;t<De.length;){let n=De[t];if(t=t+1|0,n!==void 0){let r=n.first;for(;r!==void 0;){let l=r;if(l!==void 0){let i=l.observer;ae(i)?Ct(i)||(Pt(i),De.push(i)):ae(n)&&n.deferEffectsUntilRecompute?Qn(n):tt(l.observer),r=l.nextSub}}}}Jn(De)}if((U.length!==0||Y.length!==0)&&!ue.contents)return Vt()}function Lt(e){if(!ae(e)||!Ct(e))return;if(e.lastGlobalVersion===xe.contents)return Ke(e);let t=e.level;if(Mt(e,!1),t===0){e.level=jt(e);return}}function or(e){let t=ue.contents;ue.contents=!0;try{let n=e();return t||(ue.contents=!1,(U.length!==0||Y.length!==0)&&Vt()),n}catch(n){throw t||(ue.contents=!1),n}}function sr(e){let t=G.contents,n=I.contents,r=N.contents,l=B.contents;G.contents=void 0,I.contents=void 0,N.contents=void 0,B.contents=void 0;try{let i=e();return G.contents=t,I.contents=n,N.contents=r,B.contents=l,i}catch(i){throw G.contents=t,I.contents=n,N.contents=r,B.contents=l,i}}function Gt(e,t){let n=je(),r={contents:void 0},i=Nn(n,"Effect",()=>{let u=r.contents;u!==void 0&&u(),r.contents=e()},t,void 0),o=I.contents;I.contents=i;try{i.run(),Ot(i),I.contents=o}catch(u){throw I.contents=o,u}i.level=Rt(i);let s={contents:!1};return{dispose:()=>{if(s.contents)return;s.contents=!0;let u=r.contents;u!==void 0&&u(),Un(i)}}}function dr(e,t){Gt(e,t)}let L=Gt,ar=dr;const cr=Object.freeze(Object.defineProperty({__proto__:null,run:ar,runWithDisposer:L},Symbol.toStringTag,{value:"Module"}));function Ft(e,t){return e===t}function Nt(e,t){return!1}function fr(e,t,n){return{id:je(),value:e,equals:n!==void 0?n:Ft,name:t,subs:$t()}}function hr(e,t){return{id:je(),value:e,equals:Nt,name:t,subs:$t()}}function pr(e){return Lt(e.subs),tr(e.subs),e.value}function mr(e){return Lt(e.subs),e.value}function Bt(e,t){let n;try{n=!e.equals(e.value,t)}catch{n=!0}if(n)return e.value=t,e.subs.version=e.subs.version+1|0,xe.contents=xe.contents+1|0,ur(e.subs)}function gr(e,t){Bt(e,t(e.value))}let yr=or,Sr=sr,br=Ft,_r=Nt,lt=fr,vr=hr,j=pr,J=mr,ce=Bt,Er=gr,Tr=yr,wr=Sr;const xr=Object.freeze(Object.defineProperty({__proto__:null,batch:Tr,defaultEquals:br,get:j,make:lt,makeForComputed:vr,neverEquals:_r,peek:J,set:ce,untrack:wr,update:Er},Symbol.toStringTag,{value:"Module"}));function it(e,t){delete e[t]}function zt(e,t){let n=je(),r=(S,D)=>!1,l={contents:void 0},o=At(()=>{let S=l.contents,D=e();S.value=D,S.subs.version=S.subs.version+1|0},!1),s=G.contents;G.contents=o;let d=e();G.contents=s;let u={id:n,value:d,equals:r,name:t,subs:o};return l.contents=u,o.lastGlobalVersion=xe.contents,Ke(o),u}function It(e,t,n){let r=je(),l={contents:void 0},o=At(()=>{let S=l.contents,D=S.value,R=e(),O;try{O=!S.equals(D,R)}catch{O=!0}if(O){S.value=R,S.subs.version=S.subs.version+1|0;return}},!0),s=G.contents;G.contents=o;let d=e();G.contents=s;let u={id:r,value:d,equals:t,name:n,subs:o};return l.contents=u,o.lastGlobalVersion=xe.contents,Ke(o),u}function Dr(e,t,n){return n!==void 0?It(e,n,t):zt(e,t)}function kr(e){Yn(e.subs)}let $r=zt,Ar=It,ne=Dr,Wt=kr;const Or=Object.freeze(Object.defineProperty({__proto__:null,dispose:Wt,make:ne,makeWithEquals:Ar,makeWithoutEquals:$r},Symbol.toStringTag,{value:"Module"}));function fe(e){return e===void 0?{BS_PRIVATE_NESTED_SOME_NONE:0}:e!==null&&e.BS_PRIVATE_NESTED_SOME_NONE!==void 0?{BS_PRIVATE_NESTED_SOME_NONE:e.BS_PRIVATE_NESTED_SOME_NONE+1|0}:e}function ut(e){if(e!=null)return fe(e)}function y(e){if(e===null||e.BS_PRIVATE_NESTED_SOME_NONE===void 0)return e;let t=e.BS_PRIVATE_NESTED_SOME_NONE;if(t!==0)return{BS_PRIVATE_NESTED_SOME_NONE:t-1|0}}function Cr(e,t){if(e!==void 0)return fe(t(y(e)))}function oe(e,t){return e!==void 0?y(e):t}function ot(e){return e!==void 0}let Kt="http://www.w3.org/2000/svg",Ht=["svg","path","circle","ellipse","line","polygon","polyline","rect","g","defs","clipPath","mask","pattern","marker","symbol","use","text","tspan","image","foreignObject","linearGradient","radialGradient","stop","filter","feBlend","feColorMatrix","feComposite","feFlood","feGaussianBlur","feMerge","feMergeNode","feOffset","animate","animateTransform","desc","title","metadata"],qe={};Ht.forEach(e=>{qe[e]=!0});function Pr(e){return ot(qe[e])}function ke(e,t,n){switch(t){case"checked":e.checked=n==="true";return;case"disabled":e.disabled=n==="true";return;case"aria-expanded":case"aria-hidden":case"aria-selected":case"autofocus":case"contenteditable":case"draggable":case"hidden":case"multiple":case"readonly":case"required":case"spellcheck":break;case"value":e.value=n;return;default:e.setAttribute(t,n);return}n==="true"?e.setAttribute(t,""):e.removeAttribute(t)}let Ce={setAttrOrProp:ke},Ne={contents:void 0};function jr(){return{disposers:[],computeds:[]}}function Se(e,t){let n=Ne.contents;Ne.contents=e;let r=t();return Ne.contents=n,r}function be(e,t){e.disposers.push(t)}function qt(e){e.disposers.forEach(t=>t.dispose()),e.computeds.forEach(Wt)}function _e(e,t){e.__xote_owner__=t}function Xt(e){return ut(e.__xote_owner__)}let c={currentOwner:Ne,createOwner:jr,runWithOwner:Se,addDisposer:be,disposeOwner:qt,setOwner:_e,getOwner:Xt};function Ut(e,t){return[e,{TAG:"Static",_0:t}]}function Yt(e,t){return[e,{TAG:"SignalValue",_0:t}]}function Jt(e,t){return[e,{TAG:"Compute",_0:t}]}let Rr={$$static:Ut,signal:Yt,computed:Jt};function Oe(e){let t=Xt(e);t!==void 0&&qt(t),Array.from(e.childNodes||[]).forEach(Oe)}function te(e){switch(e.TAG){case"Element":let t=e.children,n=e.events,r=e.attrs,l=e.tag,i=ot(qe[l])?document.createElementNS(Kt,l):document.createElement(l),o={disposers:[],computeds:[]};return _e(i,o),Se(o,()=>{let h=m=>l==="select"?m[0]==="value":!1,T=m=>{let $=m[1],P=m[0];switch($.TAG){case"Static":return ke(i,P,$._0);case"SignalValue":let g=$._0;ke(i,P,J(g));let _=L(()=>{ke(i,P,j(g))},void 0);return be(o,_);case"Compute":let p=$._0,w=L(()=>{ke(i,P,p())},void 0);return be(o,w)}};r.forEach(m=>{if(!h(m))return T(m)}),n.forEach(m=>{i.addEventListener(m[0],m[1])}),t.forEach(m=>{let $=te(m);i.appendChild($)}),r.forEach(m=>{if(h(m))return T(m)})}),i;case"Text":return document.createTextNode(e._0);case"SignalText":let s=e._0,d=document.createTextNode(J(s)),u={disposers:[],computeds:[]};return _e(d,u),Se(u,()=>{let h=L(()=>{d.textContent=j(s)},void 0);be(u,h)}),d;case"Fragment":let S=document.createDocumentFragment();return e._0.forEach(h=>{let T=te(h);S.appendChild(T)}),S;case"SignalFragment":let D=e._0,R={disposers:[],computeds:[]},O=document.createElement("div");return O.setAttribute("style","display: contents"),_e(O,R),Se(R,()=>{let h=L(()=>{let T=j(D);Array.from(O.childNodes||[]).forEach(Oe),O.innerHTML="",T.forEach($=>{let P=te($);O.appendChild(P)})},void 0);be(R,h)}),O;case"LazyComponent":let C={disposers:[],computeds:[]},Q=Se(C,e._0),H=te(Q);return _e(H,C),H;case"KeyedList":let q=e.renderItem,M=e.keyFn,Z=e.signal,ge={disposers:[],computeds:[]},A=document.createComment(" keyed-list-start "),v=document.createComment(" keyed-list-end ");_e(A,ge);let f={},E=()=>{let h=v.parentNode;if(h==null)return;let T=j(Z),m={};T.forEach(p=>{m[M(p)]=p});let $=[];Object.keys(f).forEach(p=>{if(m[p]===void 0){$.push(p);return}}),$.forEach(p=>{let w=f[p];if(w!==void 0){Oe(w.element),w.element.remove(),it(f,p);return}});let P=[],g={};T.forEach(p=>{let w=M(p),ye=f[w];if(ye!==void 0){if(ye.item!==p){g[w]=!0;let Fe=q(p),Fn=te(Fe),bt={key:w,item:p,element:Fn};P.push(bt),f[w]=bt;return}P.push(ye);return}let Le=q(p),Qe=te(Le),Ge={key:w,item:p,element:Qe};P.push(Ge),f[w]=Ge});let _={contents:A.nextSibling};P.forEach(p=>{let w=_.contents;if(w==null){h.insertBefore(p.element,v);return}if(w===v){h.insertBefore(p.element,v);return}if(w===p.element){_.contents=w.nextSibling;return}oe(g[p.key],!1)?(Oe(w),h.replaceChild(p.element,w),_.contents=p.element.nextSibling):(h.insertBefore(p.element,w),_.contents=p.element.nextSibling)})},k=document.createDocumentFragment();return k.appendChild(A),J(Z).forEach(h=>{let T=M(h),m=q(h),$=te(m),P={key:T,item:h,element:$};f[T]=P,k.appendChild($)}),k.appendChild(v),Se(ge,()=>{let h=L(()=>{E()},void 0);be(ge,h)}),k}}let le={disposeElement:Oe,render:te};function Qt(e){return{TAG:"Text",_0:e}}function Mr(e){return{TAG:"SignalText",_0:ne(e,void 0,void 0)}}function Vr(e){return{TAG:"SignalText",_0:ne(()=>e().toString(),void 0,void 0)}}function Lr(e){return{TAG:"SignalText",_0:ne(()=>e().toString(),void 0,void 0)}}function Gr(e){return{TAG:"Text",_0:e.toString()}}function Fr(e){return{TAG:"Text",_0:e.toString()}}function st(e){return{TAG:"Fragment",_0:e}}function dt(e){return{TAG:"SignalFragment",_0:e}}function Nr(e,t){return{TAG:"SignalFragment",_0:ne(()=>j(e).map(t),void 0,void 0)}}function Br(e,t,n){return{TAG:"KeyedList",signal:e,keyFn:t,renderItem:n}}function X(e,t,n,r,l){let i=t!==void 0?t:[].map(d=>d),o=n!==void 0?n:[].map(d=>d),s=r!==void 0?r:[].map(d=>d);return{TAG:"Element",tag:e,attrs:i,events:o,children:s}}function zr(){return{TAG:"Text",_0:""}}function Zt(e,t){let n=te(e);t.appendChild(n)}function Ir(e,t){let n=document.getElementById(t);if(n==null){console.error("Container element not found: "+t);return}else return Zt(e,n)}let Wr=qe,ee=Ut,he=Yt,Xe=Jt;const Kr=Object.freeze(Object.defineProperty({__proto__:null,$$null:zr,Attributes:Rr,DOM:Ce,Reactivity:c,Render:le,attr:ee,computedAttr:Xe,element:X,float:Fr,fragment:st,int:Gr,isSvgTag:Pr,keyedList:Br,list:Nr,mount:Zt,mountById:Ir,signalAttr:he,signalFloat:Lr,signalFragment:dt,signalInt:Vr,signalText:Mr,svgNamespace:Kt,svgTagSet:Wr,svgTags:Ht,text:Qt},Symbol.toStringTag,{value:"Module"}));function Hr(e,t,n,r){return X("div",e,t,n)}function qr(e,t,n,r){return X("span",e,t,n)}function Xr(e,t,n,r){return X("button",e,t,n)}function Ur(e,t,n){return X("input",e,t,void 0)}function Yr(e,t,n,r){return X("h1",e,t,n)}function Jr(e,t,n,r){return X("h2",e,t,n)}function Qr(e,t,n,r){return X("h3",e,t,n)}function Zr(e,t,n,r){return X("p",e,t,n)}function el(e,t,n,r){return X("ul",e,t,n)}function tl(e,t,n,r){return X("li",e,t,n)}function at(e,t,n,r){return X("a",e,t,n)}const nl=Object.freeze(Object.defineProperty({__proto__:null,a:at,button:Xr,div:Hr,h1:Yr,h2:Jr,h3:Qr,input:Ur,li:tl,p:Zr,span:qr,ul:el},Symbol.toStringTag,{value:"Module"}));function en(e,t){return{TAG:"LazyComponent",_0:()=>e(t)}}function tn(e,t,n,r){return{TAG:"LazyComponent",_0:()=>e(t)}}function rl(e){let t=e.children;return t!==void 0?t:st([])}let ll=st;function il(){return Qt("")}function ct(e){return e&&typeof e=="object"&&"TAG"in e&&(e.TAG==="Static"||e.TAG==="Reactive")}function b(e,t){return ct(t)?t.TAG==="Reactive"?he(e,t._0):ee(e,t._0):typeof t=="function"?Xe(e,t):typeof t=="object"?he(e,t):ee(e,t)}function F(e,t){if(ct(t)){if(t.TAG!=="Reactive")return ee(e,t._0?"true":"false");let r=t._0,l=ne(()=>j(r)?"true":"false",void 0,void 0);return he(e,l)}if(typeof t=="function")return Xe(e,()=>t()?"true":"false");if(typeof t!="object")return ee(e,t?"true":"false");let n=ne(()=>j(t)?"true":"false",void 0,void 0);return he(e,n)}function a(e,t,n,r){if(t!==void 0){e.push(r(n,y(t)));return}}function ve(e,t,n){if(t!==void 0){e.push(ee(n,t.toString()));return}}function nn(e){let t=[];a(t,e.id,"id",b),a(t,e.class,"class",b),a(t,e.style,"style",b),a(t,e.title,"title",b),a(t,e.type,"type",b),a(t,e.name,"name",b),a(t,e.value,"value",b),a(t,e.placeholder,"placeholder",b),a(t,e.disabled,"disabled",F),a(t,e.checked,"checked",F),a(t,e.required,"required",F),a(t,e.readOnly,"readonly",F),ve(t,e.maxLength,"maxlength"),ve(t,e.minLength,"minlength"),a(t,e.min,"min",b),a(t,e.max,"max",b),a(t,e.step,"step",b),a(t,e.pattern,"pattern",b),a(t,e.autoComplete,"autocomplete",b),a(t,e.multiple,"multiple",F),a(t,e.accept,"accept",b),ve(t,e.rows,"rows"),ve(t,e.cols,"cols"),a(t,e.autofocus,"autofocus",F),a(t,e.action,"action",b),a(t,e.method,"method",b),a(t,e.for,"for",b),a(t,e.href,"href",b),a(t,e.target,"target",b),a(t,e.src,"src",b),a(t,e.alt,"alt",b),a(t,e.width,"width",b),a(t,e.height,"height",b),a(t,e.draggable,"draggable",F),a(t,e.hidden,"hidden",F),a(t,e.contentEditable,"contenteditable",F),a(t,e.spellcheck,"spellcheck",F),a(t,e.role,"role",b),ve(t,e.tabIndex,"tabindex"),a(t,e["aria-label"],"aria-label",b),a(t,e["aria-hidden"],"aria-hidden",F),a(t,e["aria-expanded"],"aria-expanded",F),a(t,e["aria-selected"],"aria-selected",F);let n=e.data;return n!==void 0&&Object.entries(n).forEach(([r,l])=>{t.push(b("data-"+r,l))}),t}function x(e,t,n){if(t!==void 0){e.push([n,y(t)]);return}}function rn(e){let t=[];return x(t,e.onClick,"click"),x(t,e.onInput,"input"),x(t,e.onChange,"change"),x(t,e.onSubmit,"submit"),x(t,e.onFocus,"focus"),x(t,e.onBlur,"blur"),x(t,e.onKeyDown,"keydown"),x(t,e.onKeyUp,"keyup"),x(t,e.onMouseEnter,"mouseenter"),x(t,e.onMouseLeave,"mouseleave"),x(t,e.onMouseDown,"mousedown"),x(t,e.onMouseMove,"mousemove"),x(t,e.onMouseUp,"mouseup"),x(t,e.onContextMenu,"contextmenu"),x(t,e.onDrag,"drag"),x(t,e.onDragStart,"dragstart"),x(t,e.onDragEnd,"dragend"),x(t,e.onDragOver,"dragover"),x(t,e.onDragEnter,"dragenter"),x(t,e.onDragLeave,"dragleave"),x(t,e.onDrop,"drop"),t}function ln(e){let t=e.children;return t!==void 0?t.TAG==="Fragment"?t._0:[t]:[]}function ft(e,t){return{TAG:"Element",tag:e,attrs:nn(t),events:rn(t),children:ln(t)}}let xt=ft;function Dt(e,t,n,r){return ft(e,t)}let ul={isReactiveProp:ct,convertAttrValue:b,convertBoolAttrValue:F,addAttr:a,addIntAttr:ve,propsToAttrs:nn,addEvent:x,propsToEvents:rn,getChildren:ln,createElement:ft,jsx:xt,jsxs:xt,jsxKeyed:Dt,jsxsKeyed:Dt},ol,sl=en,dl=tn;const al=Object.freeze(Object.defineProperty({__proto__:null,$$null:il,Elements:ul,ReactiveProp:ol,array:ll,jsx:en,jsxFragment:rl,jsxKeyed:tn,jsxs:sl,jsxsKeyed:dl},Symbol.toStringTag,{value:"Module"}));function cl(e){return e.TAG==="Reactive"?j(e._0):e._0}function fl(e){return{TAG:"Static",_0:e}}function hl(e){return{TAG:"Reactive",_0:e}}const pl=Object.freeze(Object.defineProperty({__proto__:null,$$static:fl,get:cl,reactive:hl},Symbol.toStringTag,{value:"Module"}));function un(e,t){let n=e.length,r=new Array(n),l=0;for(let i=0;i<n;++i){let o=e[i],s=t(o);s!==void 0&&(r[l]=y(s),l=l+1|0)}return r.length=l,r}function ml(e,t){let n=0;for(;;){let r=n;if(r===e.length)return;let l=t(e[r]);if(l!==void 0)return l;n=r+1|0}}function on(e){return un(e.split("/"),t=>{if(t!=="")return t.startsWith(":")?{TAG:"Param",_0:t.slice(1)}:{TAG:"Static",_0:t}})}function sn(e,t){let n=t.split("/").filter(i=>i!=="");if(e.length!==n.length)return"NoMatch";let r={};return e.every((i,o)=>{let s=n[o];return i.TAG==="Static"?s===i._0:(r[i._0]=s,!0)})?{TAG:"Match",_0:r}:"NoMatch"}function ht(e,t){return sn(on(e),t)}const gl=Object.freeze(Object.defineProperty({__proto__:null,match:ht,matchPath:sn,parsePattern:on},Symbol.toStringTag,{value:"Module"}));function yl(){return Symbol.for("xote.router.state")}function K(){let e=globalThis[Symbol.for("xote.router.state")];if(e!==void 0)return e;let t={location:lt({pathname:"/",search:"",hash:""},void 0,void 0),basePath:{contents:"/"},initialized:!1,popStateHandler:void 0};return globalThis[Symbol.for("xote.router.state")]=t,t}function Sl(){return K().location}function bl(){return K().basePath}function pe(e){if(!K().initialized){console.warn("[Xote Router] "+e+" called before Router.init(). Make sure to call Router.init() at your app entry point. This may cause incorrect routing behavior.");return}}function pt(e){if(e===""||e==="/")return"/";let t=e.startsWith("/")?e:"/"+e;return t.endsWith("/")?t.slice(0,t.length-1|0):t}function dn(e){let t=K().basePath.contents;return t==="/"?e:e===t?"/":e.startsWith(t+"/")?e.slice(t.length):e}function Re(e){let t=K().basePath.contents;return t==="/"?e:e==="/"?t:t+e}function an(){let e=window.scrollX||window.pageXOffset||0,t=window.scrollY||window.pageYOffset||0;return[e,t]}function Ue(e,t){window.scrollTo(e,t)}function cn(e,t){return{scrollX:e,scrollY:t}}function mt(){return{}}function fn(e){let t=e&&e.scrollX,n=e&&e.scrollY;if(t!=null&&n!=null)return[t,n]}function hn(){let e=an(),t=cn(e[0],e[1]),n=window.location.href;window.history.replaceState(t,"",n)}function nt(){let e=window.location.pathname;return{pathname:dn(e),search:window.location.search,hash:window.location.hash}}function _l(e,t){let n=e!==void 0?e:"/",r=K(),l=pt(n);if(r.basePath.contents=l,ce(r.location,nt()),r.initialized)return;let i=o=>{ce(K().location,nt());let s=window["history.state"];if(s==null)return;let d=fn(s);if(d!==void 0)return Ue(d[0],d[1])};r.popStateHandler=i,window.addEventListener("popstate",i),r.initialized=!0}function vl(e,t,n,r,l){let i=e!==void 0?e:"/",o=t!==void 0?t:"/",s=n!==void 0?n:"",d=r!==void 0?r:"",u=K(),S=pt(i);u.basePath.contents=S,ce(u.location,{pathname:o,search:s,hash:d}),u.initialized=!0}function gt(e,t,n,r){let l=t!==void 0?t:"",i=n!==void 0?n:"";pe("Router.push()"),hn();let o={pathname:e,search:l,hash:i},d=Re(e)+l+i;window.history.pushState(mt(),"",d),ce(K().location,o),Ue(0,0)}function El(e,t,n,r){let l=t!==void 0?t:"",i=n!==void 0?n:"";pe("Router.replace()");let o={pathname:e,search:l,hash:i},d=Re(e)+l+i;window.history.replaceState(mt(),"",d),ce(K().location,o),Ue(0,0)}function Tl(e,t){return pe("Router.route()"),dt(ne(()=>{let n=j(K().location),r=ht(e,n.pathname);return typeof r!="object"?[]:[t(r._0)]},void 0,void 0))}function wl(e){return pe("Router.routes()"),dt(ne(()=>{let t=j(K().location),n=ml(e,r=>{let l=ht(r.pattern,t.pathname);if(typeof l=="object")return r.render(l._0)});return n!==void 0?[n]:[]},void 0,void 0))}function xl(e,t,n,r){let l=t!==void 0?t:[],i=n!==void 0?n:[];pe("Router.link()");let o=s=>{s.preventDefault(),gt(e,void 0,void 0)};return at(l.concat([ee("href",Re(e))]),[["click",o]],i)}function pn(e){return e&&typeof e=="object"&&"TAG"in e&&(e.TAG==="Static"||e.TAG==="Reactive")}function Ee(e,t){return pn(t)?t.TAG==="Reactive"?he(e,t._0):ee(e,t._0):typeof t=="function"?Xe(e,t):typeof t=="object"?he(e,t):ee(e,t)}function mn(e){let t=[],n=e.class;n!==void 0&&t.push(Ee("class",y(n)));let r=e.id;r!==void 0&&t.push(Ee("id",y(r)));let l=e.style;l!==void 0&&t.push(Ee("style",y(l)));let i=e.target;i!==void 0&&t.push(Ee("target",y(i)));let o=e["aria-label"];return o!==void 0&&t.push(Ee("aria-label",y(o))),t}function gn(e){let t=e.children;return t!==void 0?t.TAG==="Fragment"?t._0:[t]:[]}function Be(e){pe("Router.Link");let t=n=>{n.preventDefault(),gt(e.to,void 0,void 0);let r=e.onClick;if(r!==void 0)return r(n)};return at(mn(e).concat([ee("href",Re(e.to))]),[["click",t]],gn(e))}function kt(e,t,n){return Be(e)}let Dl={ReactiveProp:void 0,isReactiveProp:pn,convertAttrValue:Ee,propsToAttrs:mn,getChildren:gn,make:Be,jsx:Be,jsxs:Be,jsxKeyed:kt,jsxsKeyed:kt},kl;const $l=Object.freeze(Object.defineProperty({__proto__:null,Link:Dl,Route:kl,addBasePath:Re,basePath:bl,emptyHistoryState:mt,getCurrentLocation:nt,getGlobalState:K,getScrollFromState:fn,getScrollPosition:an,getSymbolKey:yl,init:_l,initSSR:vl,link:xl,location:Sl,makeHistoryState:cn,normalizeBasePath:pt,push:gt,replace:El,route:Tl,routes:wl,saveScrollPosition:hn,scrollTo:Ue,stripBasePath:dn,warnIfNotInitialized:pe},Symbol.toStringTag,{value:"Module"}));function se(e){return e.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll('"',""").replaceAll("'","'")}let yt=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"];function Al(e){return yt.includes(e)}let yn={escape:se,voidElements:yt,isVoidElement:Al},Sn="<!--$-->",bn="<!--/$-->",_n="<!--#-->",vn="<!--/#-->",En="<!--kl-->",Tn="<!--/kl-->";function wn(e){return"<!--k:"+e+"-->"}let xn="<!--/k-->",Dn="<!--lc-->",kn="<!--/lc-->",Ol={signalTextStart:Sn,signalTextEnd:bn,signalFragmentStart:_n,signalFragmentEnd:vn,keyedListStart:En,keyedListEnd:Tn,keyedItemStart:wn,keyedItemEnd:xn,lazyComponentStart:Dn,lazyComponentEnd:kn};function $n(e){let t=e[1],n=e[0],r;switch(t.TAG){case"Static":r=t._0;break;case"SignalValue":r=J(t._0);break;case"Compute":r=t._0();break}switch(n){case"aria-expanded":case"aria-hidden":case"aria-selected":case"autofocus":case"checked":case"contenteditable":case"disabled":case"draggable":case"hidden":case"multiple":case"readonly":case"required":case"spellcheck":break;default:return n+'="'+se(r)+'"'}return r==="true"?n:""}function An(e){let t=e.map($n).filter(n=>n!=="");return t.length!==0?" "+t.join(" "):""}let Cl={renderAttr:$n,renderAttrs:An};function ie(e){switch(e.TAG){case"Element":let t=e.tag,n=An(e.attrs);if(yt.includes(t))return"<"+t+n+" />";let r=e.children.map(ie).join("");return"<"+t+n+">"+r+"</"+t+">";case"Text":return se(e._0);case"SignalText":let l=J(e._0);return Sn+se(l)+bn;case"Fragment":return e._0.map(ie).join("");case"SignalFragment":let o=J(e._0).map(ie).join("");return _n+o+vn;case"LazyComponent":let s=e._0();return Dn+ie(s)+kn;case"KeyedList":let d=e.renderItem,u=e.keyFn,D=J(e.signal).map(R=>{let O=u(R),C=ie(d(R));return wn(O)+C+xn}).join("");return En+D+Tn}}function On(e,t){return ie(e())}function Pl(e,t,n){let r=t!==void 0?t:"root",l=e(),i=ie(l);return"<!--xote-root:"+r+"-->"+i+"<!--/xote-root-->"}function Cn(e){return"<script"+(e!==void 0?' nonce="'+se(e)+'"':"")+">window.__XOTE_HYDRATED__=false;<\/script>"}function jl(e,t,n,r,l,i,o){let s=e!==void 0?e:"",d=t!==void 0?t:"",u=n!==void 0?n:[],S=r!==void 0?r:[],D=l!==void 0?l:"",R=On(o),O=Cn(i),C=S.map(H=>'<link rel="stylesheet" href="'+se(H)+'" />').join(`
|
|
2
|
+
`),Q=u.map(H=>{let q=i!==void 0?' nonce="'+se(i)+'"':"";return'<script type="module" src="'+se(H)+'"'+q+"><\/script>"}).join(`
|
|
3
3
|
`);return`<!DOCTYPE html>
|
|
4
4
|
<html>
|
|
5
5
|
<head>
|
|
6
6
|
<meta charset="UTF-8" />
|
|
7
7
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
8
|
-
`+
|
|
9
|
-
`+
|
|
8
|
+
`+C+`
|
|
9
|
+
`+s+`
|
|
10
10
|
</head>
|
|
11
|
-
<body`+(
|
|
12
|
-
<div id="root">`+
|
|
13
|
-
`+
|
|
14
|
-
`+
|
|
15
|
-
`+
|
|
11
|
+
<body`+(d!==""?" "+d:"")+`>
|
|
12
|
+
<div id="root">`+R+`</div>
|
|
13
|
+
`+D+`
|
|
14
|
+
`+O+`
|
|
15
|
+
`+Q+`
|
|
16
16
|
</body>
|
|
17
|
-
</html>`}const
|
|
17
|
+
</html>`}const Rl=Object.freeze(Object.defineProperty({__proto__:null,Attributes:Cl,Html:yn,Markers:Ol,generateHydrationScript:Cn,renderDocument:jl,renderNodeToString:ie,renderToString:On,renderToStringWithRoot:Pl},Symbol.toStringTag,{value:"Module"}));let Me=typeof document>"u",Ye=!Me;function Ml(e){if(Me)return fe(e())}function Vl(e){if(Ye)return fe(e())}function Pn(e,t){return Me?e():t()}const Ll=Object.freeze(Object.defineProperty({__proto__:null,isClient:Ye,isServer:Me,match:Pn,onClient:Vl,onServer:Ml},Symbol.toStringTag,{value:"Module"}));function Gl(e){if(typeof e=="boolean")return e}function Fl(e){if(e===null)return null}function Nl(e){if(typeof e=="string")return e}function Bl(e){if(typeof e=="number")return e}function zl(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}function Il(e){if(Array.isArray(e))return e}let me={bool:Gl,$$null:Fl,string:Nl,float:Bl,object:zl,array:Il};function Wl(e){return e}function Kl(e){let t=me.float(e);if(t!==void 0)return t|0}let Hl={encode:Wl,decode:Kl};function ql(e){return e}function Xl(e){return me.float(e)}let Ul={encode:ql,decode:Xl};function Yl(e){return e}function Jl(e){return me.string(e)}let Ql={encode:Yl,decode:Jl};function Zl(e){return e}function ei(e){return me.bool(e)}let ti={encode:Zl,decode:ei};function ni(e){return{encode:t=>t.map(e.encode),decode:t=>{let n=me.array(t);if(n===void 0)return;let r=un(n,e.decode);if(r.length===n.length)return r}}}function ri(e){return{encode:t=>t!==void 0?e.encode(y(t)):null,decode:t=>ot(me.$$null(t))?fe(void 0):Cr(e.decode(t),n=>fe(n))}}function li(e,t){return{encode:n=>[e.encode(n[0]),t.encode(n[1])],decode:n=>{let r=Array.isArray(n)?n:void 0;if(r===void 0||r.length!==2)return;let l=r[0],i=r[1],o=e.decode(l),s=t.decode(i);if(o!==void 0&&s!==void 0)return[y(o),y(s)]}}}function ii(e,t,n){return{encode:r=>[e.encode(r[0]),t.encode(r[1]),n.encode(r[2])],decode:r=>{let l=Array.isArray(r)?r:void 0;if(l===void 0||l.length!==3)return;let i=l[0],o=l[1],s=l[2],d=e.decode(i),u=t.decode(o),S=n.decode(s);if(d!==void 0&&u!==void 0&&S!==void 0)return[y(d),y(u),y(S)]}}}function ui(e){return{encode:t=>{let n={};return Object.entries(t).forEach(r=>{n[r[0]]=e.encode(r[1])}),n},decode:t=>{let n=me.object(t);if(n===void 0)return;let r={},l={contents:!0};if(Object.entries(n).forEach(i=>{let o=e.decode(i[1]);o!==void 0?r[i[0]]=y(o):l.contents=!1}),l.contents)return r}}}function oi(e,t){return{encode:e,decode:t}}let si={int:Hl,float:Ul,string:Ql,bool:ti,array:ni,option:ri,tuple2:li,tuple3:ii,dict:ui,make:oi},Pe={};function jn(e,t,n){if(Me){Pe[e]=n.encode(J(t));return}}function di(){Object.keys(Pe).forEach(e=>{it(Pe,e)})}function Rn(e){return e.replaceAll("<\/script>","<\\/script>").replaceAll("<!--","<\\!--")}function ai(e){let t=oe(JSON.stringify(Pe),"{}"),n=Rn(t);return"<script"+(e!==void 0?' nonce="'+yn.escape(e)+'"':"")+">window.__XOTE_STATE__="+n+";<\/script>"}function Mn(){return Ye?window.__XOTE_STATE__||{}:{}}function Vn(e,t,n){if(!Ye)return;let l=Mn()[e];if(l===void 0)return;let i=n.decode(l);if(i!==void 0)return ce(t,y(i))}function Ln(e,t,n){Pn(()=>jn(e,t,n),()=>Vn(e,t,n))}function ci(e,t,n){let r=lt(t,void 0,void 0);return Ln(e,r,n),r}const fi=Object.freeze(Object.defineProperty({__proto__:null,Codec:si,clear:di,escapeForScript:Rn,generateScript:ai,getClientState:Mn,make:ci,register:jn,registry:Pe,restore:Vn,sync:Ln},Symbol.toStringTag,{value:"Module"}));let et={};function hi(e){let t=et[e];if(t!==void 0){let n=t+1|0;return et[e]=n,e+("/"+n)}return et[e]=1,e}function pi(e){return Array.from(e.childNodes||[])}function Ve(e,t){if(e.nodeType!==8)return!1;let n=e.nodeValue;return n==null?!1:n===t}function Je(e,t){if(e.nodeType!==8)return!1;let n=e.nodeValue;return n==null?!1:n.startsWith(t)}function St(e){if(e.nodeType!==8)return;let t=e.nodeValue;if(t!=null&&t.startsWith("k:"))return t.slice(2)}function we(e){return{current:ut(e.firstChild),parent:e}}function mi(e){return e.current}function W(e){let t=e.current;return t!==void 0&&(e.current=ut(y(t).nextSibling)),t}function re(e,t){return(()=>{for(;;){let r=e.current;if(r===void 0)return;let l=y(r);if(Ve(l,t))return W(e),fe(l);W(e)}})()}function We(e,t){let n=[];return(()=>{for(;;){let l=e.current;if(l===void 0)return;let i=y(l);if(Ve(i,t)){W(e);return}n.push(i),W(e)}})(),n}let gi={elementNode:1,textNode:3,commentNode:8,getChildNodes:pi,isMarker:Ve,isMarkerPrefix:Je,extractKey:St,make:we,peek:mi,next:W,skipUntilMarker:re,collectUntilMarker:We},yi=hi("Hydration-Xote.HydrationMismatch");function rt(e){console.warn("[Xote Hydration] "+e)}function Si(e,t){for(;;){let n=e;switch(n.TAG){case"Element":let r=n.children,l=n.events,i=n.attrs,o=c.createOwner();return c.setOwner(t,o),c.runWithOwner(o,()=>{i.forEach(v=>{let f=v[1],E=v[0];switch(f.TAG){case"Static":return;case"SignalValue":let k=f._0,V=L(()=>{Ce.setAttrOrProp(t,E,j(k))},void 0);return c.addDisposer(o,V);case"Compute":let h=f._0,T=L(()=>{Ce.setAttrOrProp(t,E,h())},void 0);return c.addDisposer(o,T)}}),l.forEach(v=>{t.addEventListener(v[0],v[1])});let A=we(t);r.forEach(v=>de(v,A))});case"Text":return;case"SignalText":let s=n._0,d=c.createOwner();return c.setOwner(t,d),c.runWithOwner(d,()=>{let A=L(()=>{t.textContent=j(s)},void 0);c.addDisposer(d,A)});case"Fragment":let u=we(t);n._0.forEach(A=>de(A,u));return;case"SignalFragment":let S=n._0,D=c.createOwner();return c.setOwner(t,D),c.runWithOwner(D,()=>{let A=L(()=>{let v=j(S);Array.from(t.childNodes||[]).forEach(E=>c.disposeOwner(oe(c.getOwner(E),c.createOwner()))),t.innerHTML="",v.forEach(E=>{let k=le.render(E);t.appendChild(k)})},void 0);c.addDisposer(D,A)});case"LazyComponent":let R=c.createOwner(),O=c.runWithOwner(R,n._0);c.setOwner(t,R),e=O;continue;case"KeyedList":let C=n.renderItem,Q=n.keyFn,H=n.signal,q=c.createOwner();c.setOwner(t,q);let M={},Z=we(t);return re(Z,"kl"),(()=>{for(;;){let A=Z.current;if(A===void 0)return;let v=y(A);if(!Je(v,"k:"))if(Ve(v,"/kl")){W(Z);return}else return;let f=oe(St(v),"");W(Z);let k=We(Z,"/k").find(V=>V.nodeType===1);if(k!==void 0){let V=J(H),h=oe(V.find(T=>Q(T)===f),{});M[f]={key:f,item:h,element:y(k)}}}})(),c.runWithOwner(q,()=>{let A=document.createComment(" keyed-list-start "),v=document.createComment(" keyed-list-end "),f=t.firstChild;f==null?t.appendChild(A):t.insertBefore(A,f),t.appendChild(v);let E=()=>{let V=j(H),h={};V.forEach(g=>{h[Q(g)]=g});let T=[];Object.keys(M).forEach(g=>{if(h[g]===void 0){T.push(g);return}}),T.forEach(g=>{let _=M[g];if(_!==void 0){le.disposeElement(_.element),_.element.remove(),it(M,g);return}});let m=[],$={};V.forEach(g=>{let _=Q(g),p=M[_];if(p!==void 0){if(p.item!==g){$[_]=!0;let Qe=C(g),Ge=le.render(Qe),Fe={key:_,item:g,element:Ge};m.push(Fe),M[_]=Fe;return}m.push(p);return}let w=C(g),ye=le.render(w),Le={key:_,item:g,element:ye};m.push(Le),M[_]=Le});let P={contents:A.nextSibling};m.forEach(g=>{let _=P.contents;if(_==null){t.insertBefore(g.element,v);return}if(_===v){t.insertBefore(g.element,v);return}if(_===g.element){P.contents=_.nextSibling;return}oe($[g.key],!1)?(le.disposeElement(_),t.replaceChild(g.element,_),P.contents=g.element.nextSibling):(t.insertBefore(g.element,_),P.contents=g.element.nextSibling)})},k=L(()=>{E()},void 0);c.addDisposer(q,k)})}}}function de(e,t){switch(e.TAG){case"Element":let n=e.children,r=e.events,l=e.attrs,i=W(t);if(i===void 0)return rt("Missing DOM element for Element node");let o=y(i),s=c.createOwner();return c.setOwner(o,s),c.runWithOwner(s,()=>{l.forEach(E=>{let k=E[1],V=E[0];switch(k.TAG){case"Static":return;case"SignalValue":let h=k._0,T=L(()=>{Ce.setAttrOrProp(o,V,j(h))},void 0);return c.addDisposer(s,T);case"Compute":let m=k._0,$=L(()=>{Ce.setAttrOrProp(o,V,m())},void 0);return c.addDisposer(s,$)}}),r.forEach(E=>{o.addEventListener(E[0],E[1])});let f=we(o);n.forEach(E=>de(E,f))});case"Text":W(t);return;case"SignalText":let d=e._0;re(t,"$");let u=W(t);if(u===void 0)return rt("Missing text node for SignalText");let S=y(u),D=c.createOwner();c.setOwner(S,D),c.runWithOwner(D,()=>{let f=L(()=>{S.textContent=j(d)},void 0);c.addDisposer(D,f)}),re(t,"/$");return;case"Fragment":e._0.forEach(f=>de(f,t));return;case"SignalFragment":let R=e._0;re(t,"#");let O=We(t,"/#"),C=document.createElement("div");C.setAttribute("style","display: contents");let Q=O[0],H=Q!==void 0?Q.parentNode:void 0;O.forEach(f=>{C.appendChild(f)});let q=t.current;if(H!==void 0){let f=y(H);q!==void 0?f.insertBefore(C,y(q)):f.appendChild(C)}let M=c.createOwner();return c.setOwner(C,M),c.runWithOwner(M,()=>{let f=L(()=>{let E=j(R);Array.from(C.childNodes||[]).forEach(le.disposeElement),C.innerHTML="",E.forEach(V=>{let h=le.render(V);C.appendChild(h)})},void 0);c.addDisposer(M,f)});case"LazyComponent":re(t,"lc");let Z=e._0();de(Z,t),re(t,"/lc");return;case"KeyedList":let ge=e.keyFn,A=e.signal;return re(t,"kl"),(()=>{for(;;){let f=t.current;if(f===void 0)return;let E=y(f);if(!Je(E,"k:"))if(Ve(E,"/kl")){W(t);return}else return;let k=oe(St(E),"");W(t);let h=We(t,"/k").find(T=>T.nodeType===1);if(h!==void 0){let T=J(A),m=oe(T.find($=>ge($)===k),{});y(h)}}})()}}function Gn(e,t,n){let r=n!==void 0?n:{},l=e(),i=we(t),o=i.current;o!==void 0&&Je(y(o),"xote-root:")&&W(i),de(l,i),window.__XOTE_HYDRATED__=!0;let s=r.onHydrated;if(s!==void 0)return s()}function bi(e,t,n){let r=n!==void 0?n:{},l=document.getElementById(t);if(l==null){console.error("[Xote Hydration] Container element not found: "+t);return}else return Gn(e,l,r)}let _i,vi;const Ei=Object.freeze(Object.defineProperty({__proto__:null,DOM:_i,DOMWalker:gi,HydrationMismatch:yi,Reactivity:vi,hydrate:Gn,hydrateById:bi,hydrateNode:Si,hydrateNodeWithWalker:de,logHydrationWarning:rt},Symbol.toStringTag,{value:"Module"}));exports.Computed=Or;exports.Effect=cr;exports.Html=nl;exports.Hydration=Ei;exports.Node=Kr;exports.ReactiveProp=pl;exports.Route=gl;exports.Router=$l;exports.SSR=Rl;exports.SSRContext=Ll;exports.SSRState=fi;exports.Signal=xr;exports.XoteJSX=al;
|