xote 6.0.1 → 6.1.1

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/dist/xote.umd.js CHANGED
@@ -1,17 +1,17 @@
1
- (function(A,oe){typeof exports=="object"&&typeof module<"u"?oe(exports):typeof define=="function"&&define.amd?define(["exports"],oe):(A=typeof globalThis<"u"?globalThis:A||self,oe(A.xote={}))})(this,(function(A){"use strict";let oe={contents:0};function Oe(){return oe.contents=oe.contents+1|0,oe.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 $n(e){return{first:void 0,last:void 0,version:0,compute:e,firstDep:void 0,lastDep:void 0,flags:1,level:0}}function An(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 ft(e){e.flags=e.flags&-2}function xn(e){return(e.flags&2)!==0}function kn(e){e.flags=e.flags|2}function On(e){e.flags=e.flags&-3}function ht(e){return(e.flags&1)!==0}function Dn(e){e.flags=e.flags|1}function We(e){e.flags=e.flags&-2}function Cn(e){e.flags=e.flags&-3}function De(e){return e.compute!==void 0}function mt(e,t){return{subs:e,observer:t,nextDep:void 0,prevDep:void 0,nextSub:void 0,prevSub:void 0}}function Ce(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 pt(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 gt(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 yt(e){let t=e.firstDep;for(;t!==void 0;){let n=t;if(n!==void 0){let r=n.nextDep;gt(n),t=r}}e.firstDep=void 0,e.lastDep=void 0}function Ve(e){let t=e.firstDep;for(;t!==void 0;){let n=t;if(n!==void 0){let r=n.nextDep;gt(n),t=r}}e.firstDep=void 0,e.lastDep=void 0}function St(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 D={contents:void 0},F={contents:void 0},ee=[],de=[],te={contents:!1},je=[],_t=(function(e){e.length=0});function jn(e){if(!xn(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 St(e,i),Ce(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};St(e,l),Ce(t,l)}function Mn(e,t){if(e.firstDep===void 0){let i=mt(t,e);return pt(e,i),Ce(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=mt(t,e);pt(e,l),Ce(t,l)}function Rn(e){let t=D.contents;if(t!==void 0)return Pn(t,e);let n=F.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 bt(e){let t=0,n=e.firstDep;for(;n!==void 0;){let r=n;r!==void 0&&(De(r.subs)&&r.subs.level>t&&(t=r.subs.level),n=r.nextDep)}return t+1|0}function Et(e){let t=0,n=e.firstDep;for(;n!==void 0;){let r=n;r!==void 0&&(De(r.subs)&&r.subs.level>t&&(t=r.subs.level),n=r.nextDep)}return t+1|0}function Fn(e){let t=e.level;Ve(e),Cn(e);let n=D.contents;D.contents=e;try{let r=e.compute;r!==void 0&&r(),We(e),D.contents=n}catch(r){throw D.contents=n,r}if(t===0){e.level=bt(e);return}}function Nn(e){let t=e.level;yt(e),On(e);let n=F.contents;F.contents=e;try{e.run(),ft(e),F.contents=n}catch(r){throw F.contents=n,r}if(t===0){e.level=Et(e);return}}function wt(){te.contents=!0;try{for(;ee.length!==0||de.length!==0;){if(de.length!==0){de.sort(Ln);let e=de.slice();_t(de),e.forEach(Fn)}if(ee.length!==0){ee.sort(Gn);let e=ee.slice();_t(ee),e.forEach(Nn)}}te.contents=!1;return}catch(e){throw te.contents=!1,e}}function zn(e){for(je.push(e);je.length!==0;){let t=je.pop();if(t!==void 0){let n=t.first;for(;n!==void 0;){let r=n;if(r!==void 0){let l=r.observer;De(l)?ht(l)||(Dn(l),je.push(l)):jn(r.observer),n=r.nextSub}}}}if((ee.length!==0||de.length!==0)&&!te.contents)return wt()}function Tt(e){if(!(De(e)&&ht(e)))return;let t=e.level;Ve(e);let n=D.contents;D.contents=e;try{let r=e.compute;r!==void 0&&r(),We(e),D.contents=n}catch(r){throw D.contents=n,r}if(t===0){e.level=bt(e);return}}function Bn(e){let t=te.contents;te.contents=!0;try{let n=e();return t||(te.contents=!1,(ee.length!==0||de.length!==0)&&wt()),n}catch(n){throw t||(te.contents=!1),n}}function In(e){let t=D.contents,n=F.contents;D.contents=void 0,F.contents=void 0;try{let r=e();return D.contents=t,F.contents=n,r}catch(r){throw D.contents=t,F.contents=n,r}}function vt(e,t){let n=Oe(),r={contents:void 0},i=An(n,"Effect",()=>{let y=r.contents;y!==void 0&&y(),r.contents=e()},t,void 0),u=F.contents;F.contents=i;try{i.run(),ft(i),F.contents=u}catch(y){throw F.contents=u,y}i.level=Et(i);let o={contents:!1};return{dispose:()=>{if(o.contents)return;o.contents=!0;let y=r.contents;y!==void 0&&y(),yt(i)}}}function Kn(e,t){vt(e,t)}let j=vt;const Wn=Object.freeze(Object.defineProperty({__proto__:null,run:Kn,runWithDisposer:j},Symbol.toStringTag,{value:"Module"}));function ae(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 He(e){if(e!=null)return ae(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 Vn(e,t){if(e!==void 0)return ae(t(h(e)))}function Y(e,t){return e!==void 0?h(e):t}function Xe(e){return e!==void 0}function Hn(e,t,n){return{id:Oe(),value:e,equals:Y(n,(l,i)=>l===i),name:t,subs:st()}}function Xn(e,t){return{id:Oe(),value:e,equals:(r,l)=>!1,name:t,subs:st()}}function qn(e){return Tt(e.subs),Rn(e.subs),e.value}function Un(e){return Tt(e.subs),e.value}function $t(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 Yn(e,t){$t(e,t(e.value))}let Jn=Bn,Qn=In,qe=Hn,Zn=Xn,x=qn,H=Un,ce=$t;const er=Object.freeze(Object.defineProperty({__proto__:null,batch:Jn,get:x,make:qe,makeForComputed:Zn,peek:H,set:ce,untrack:Qn,update:Yn},Symbol.toStringTag,{value:"Module"}));function Ue(e,t){delete e[t]}function tr(e,t){let n=Oe(),r={contents:void 0},i=$n(()=>{r.contents.value=e()}),u=D.contents;D.contents=i;let o=e();D.contents=u;let c={id:n,value:o,equals:(y,C)=>!1,name:t,subs:i};return r.contents=c,We(i),c}function nr(e){Ve(e.subs)}let J=tr,At=nr;const rr=Object.freeze(Object.defineProperty({__proto__:null,dispose:At,make:J},Symbol.toStringTag,{value:"Module"}));let xt="http://www.w3.org/2000/svg",kt=["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"],Pe={};kt.forEach(e=>{Pe[e]=!0});function ir(e){return Xe(Pe[e])}function we(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"multiple":case"readonly":case"required":break;case"value":e.value=n;return;default:e.setAttribute(t,n);return}n==="true"?e.setAttribute(t,""):e.removeAttribute(t)}let Te={setAttrOrProp:we},Me={contents:void 0};function lr(){return{disposers:[],computeds:[]}}function me(e,t){let n=Me.contents;Me.contents=e;let r=t();return Me.contents=n,r}function pe(e,t){e.disposers.push(t)}function Ot(e){e.disposers.forEach(t=>t.dispose()),e.computeds.forEach(At)}function ge(e,t){e.__xote_owner__=t}function Dt(e){return He(e.__xote_owner__)}let a={currentOwner:Me,createOwner:lr,runWithOwner:me,addDisposer:pe,disposeOwner:Ot,setOwner:ge,getOwner:Dt};function Ct(e,t){return[e,{TAG:"Static",_0:t}]}function jt(e,t){return[e,{TAG:"SignalValue",_0:t}]}function Pt(e,t){return[e,{TAG:"Compute",_0:t}]}let ur={$$static:Ct,signal:jt,computed:Pt};function ve(e){let t=Dt(e);t!==void 0&&Ot(t),Array.from(e.childNodes||[]).forEach(ve)}function Q(e){switch(e.TAG){case"Element":let t=e.children,n=e.events,r=e.attrs,l=e.tag,i=Xe(Pe[l])?document.createElementNS(xt,l):document.createElement(l),u={disposers:[],computeds:[]};return ge(i,u),me(u,()=>{r.forEach(d=>{let m=d[1],$=d[0];switch(m.TAG){case"Static":return we(i,$,m._0);case"SignalValue":let O=m._0;we(i,$,H(O));let L=j(()=>{we(i,$,x(O))},void 0);return pe(u,L);case"Compute":let p=m._0,S=j(()=>{we(i,$,p())},void 0);return pe(u,S)}}),n.forEach(d=>{i.addEventListener(d[0],d[1])}),t.forEach(d=>{let m=Q(d);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 d=j(()=>{c.textContent=x(o)},void 0);pe(y,d)}),c;case"Fragment":let C=document.createDocumentFragment();return e._0.forEach(d=>{let m=Q(d);C.appendChild(m)}),C;case"SignalFragment":let B=e._0,I={disposers:[],computeds:[]},M=document.createElement("div");return M.setAttribute("style","display: contents"),ge(M,I),me(I,()=>{let d=j(()=>{let m=x(B);Array.from(M.childNodes||[]).forEach(ve),M.innerHTML="",m.forEach(O=>{let L=Q(O);M.appendChild(L)})},void 0);pe(I,d)}),M;case"LazyComponent":let k={disposers:[],computeds:[]},q=me(k,e._0),W=Q(q);return ge(W,k),W;case"KeyedList":let V=e.renderItem,R=e.keyFn,U=e.signal,be={disposers:[],computeds:[]},v=document.createComment(" keyed-list-start "),_=document.createComment(" keyed-list-end ");ge(v,be);let s={},b=()=>{let d=_.parentNode;if(d==null)return;let m=x(U),$={};m.forEach(g=>{$[R(g)]=g});let O=[];Object.keys(s).forEach(g=>{if($[g]===void 0){O.push(g);return}}),O.forEach(g=>{let T=s[g];if(T!==void 0){ve(T.element),T.element.remove(),Ue(s,g);return}});let L=[],p={};m.forEach(g=>{let T=R(g),Ee=s[T];if(Ee!==void 0){if(Ee.item!==g){p[T]=!0;let Ke=V(g),Bi=Q(Ke),vn={key:T,item:g,element:Bi};L.push(vn),s[T]=vn;return}L.push(Ee);return}let Be=V(g),ct=Q(Be),Ie={key:T,item:g,element:ct};L.push(Ie),s[T]=Ie});let S={contents:v.nextSibling};L.forEach(g=>{let T=S.contents;if(T==null){d.insertBefore(g.element,_);return}if(T===_){d.insertBefore(g.element,_);return}if(T===g.element){S.contents=T.nextSibling;return}Y(p[g.key],!1)?(ve(T),d.replaceChild(g.element,T),S.contents=g.element.nextSibling):(d.insertBefore(g.element,T),S.contents=g.element.nextSibling)})},w=document.createDocumentFragment();return w.appendChild(v),H(U).forEach(d=>{let m=R(d),$=V(d),O=Q($),L={key:m,item:d,element:O};s[m]=L,w.appendChild(O)}),w.appendChild(_),me(be,()=>{let d=j(()=>{b()},void 0);pe(be,d)}),w}}let ne={disposeElement:ve,render:Q};function Mt(e){return{TAG:"Text",_0:e}}function or(e){return{TAG:"SignalText",_0:J(e,void 0)}}function dr(e){return{TAG:"SignalText",_0:J(()=>e().toString(),void 0)}}function ar(e){return{TAG:"SignalText",_0:J(()=>e().toString(),void 0)}}function cr(e){return{TAG:"Text",_0:e.toString()}}function sr(e){return{TAG:"Text",_0:e.toString()}}function Ye(e){return{TAG:"Fragment",_0:e}}function Je(e){return{TAG:"SignalFragment",_0:e}}function fr(e,t){return{TAG:"SignalFragment",_0:J(()=>x(e).map(t),void 0)}}function hr(e,t,n){return{TAG:"KeyedList",signal:e,keyFn:t,renderItem:n}}function K(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 mr(){return{TAG:"Text",_0:""}}function Rt(e,t){let n=Q(e);t.appendChild(n)}function pr(e,t){let n=document.getElementById(t);if(n==null){console.error("Container element not found: "+t);return}else return Rt(e,n)}let gr=Pe,X=Ct,se=jt,Re=Pt;const yr=Object.freeze(Object.defineProperty({__proto__:null,$$null:mr,Attributes:ur,DOM:Te,Reactivity:a,Render:ne,attr:X,computedAttr:Re,element:K,float:sr,fragment:Ye,int:cr,isSvgTag:ir,keyedList:hr,list:fr,mount:Rt,mountById:pr,signalAttr:se,signalFloat:ar,signalFragment:Je,signalInt:dr,signalText:or,svgNamespace:xt,svgTagSet:gr,svgTags:kt,text:Mt},Symbol.toStringTag,{value:"Module"}));function Sr(e,t,n,r){return K("div",e,t,n)}function _r(e,t,n,r){return K("span",e,t,n)}function br(e,t,n,r){return K("button",e,t,n)}function Er(e,t,n){return K("input",e,t,void 0)}function wr(e,t,n,r){return K("h1",e,t,n)}function Tr(e,t,n,r){return K("h2",e,t,n)}function vr(e,t,n,r){return K("h3",e,t,n)}function $r(e,t,n,r){return K("p",e,t,n)}function Ar(e,t,n,r){return K("ul",e,t,n)}function xr(e,t,n,r){return K("li",e,t,n)}function Qe(e,t,n,r){return K("a",e,t,n)}const kr=Object.freeze(Object.defineProperty({__proto__:null,a:Qe,button:br,div:Sr,h1:wr,h2:Tr,h3:vr,input:Er,li:xr,p:$r,span:_r,ul:Ar},Symbol.toStringTag,{value:"Module"}));function Gt(e,t){return{TAG:"LazyComponent",_0:()=>e(t)}}function Lt(e,t,n,r){return{TAG:"LazyComponent",_0:()=>e(t)}}function Or(e){let t=e.children;return t!==void 0?t:Ye([])}let Dr=Ye;function Cr(){return Mt("")}function Ze(e){return e&&typeof e=="object"&&"TAG"in e&&(e.TAG==="Static"||e.TAG==="Reactive")}function E(e,t){return Ze(t)?t.TAG==="Reactive"?se(e,t._0):X(e,t._0):typeof t=="function"?Re(e,t):typeof t=="object"?se(e,t):X(e,t)}function Z(e,t){if(Ze(t)){if(t.TAG!=="Reactive")return X(e,t._0?"true":"false");let r=t._0,l=J(()=>x(r)?"true":"false",void 0);return se(e,l)}if(typeof t=="function")return Re(e,()=>t()?"true":"false");if(typeof t!="object")return X(e,t?"true":"false");let n=J(()=>x(t)?"true":"false",void 0);return se(e,n)}function f(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(X(n,t.toString()));return}}function Ft(e){let t=[];f(t,e.id,"id",E),f(t,e.class,"class",E),f(t,e.style,"style",E),f(t,e.type,"type",E),f(t,e.name,"name",E),f(t,e.value,"value",E),f(t,e.placeholder,"placeholder",E),f(t,e.disabled,"disabled",Z),f(t,e.checked,"checked",Z),f(t,e.required,"required",Z),f(t,e.readOnly,"readonly",Z),ye(t,e.maxLength,"maxlength"),ye(t,e.minLength,"minlength"),f(t,e.min,"min",E),f(t,e.max,"max",E),f(t,e.step,"step",E),f(t,e.pattern,"pattern",E),f(t,e.autoComplete,"autocomplete",E),f(t,e.multiple,"multiple",Z),f(t,e.accept,"accept",E),ye(t,e.rows,"rows"),ye(t,e.cols,"cols"),f(t,e.for,"for",E),f(t,e.href,"href",E),f(t,e.target,"target",E),f(t,e.src,"src",E),f(t,e.alt,"alt",E),f(t,e.width,"width",E),f(t,e.height,"height",E),f(t,e.role,"role",E),ye(t,e.tabIndex,"tabindex"),f(t,e["aria-label"],"aria-label",E),f(t,e["aria-hidden"],"aria-hidden",Z),f(t,e["aria-expanded"],"aria-expanded",Z),f(t,e["aria-selected"],"aria-selected",Z);let n=e.data;return n!==void 0&&Object.entries(n).forEach(([r,l])=>{t.push(E("data-"+r,l))}),t}function P(e,t,n){if(t!==void 0){e.push([n,h(t)]);return}}function Nt(e){let t=[];return P(t,e.onClick,"click"),P(t,e.onInput,"input"),P(t,e.onChange,"change"),P(t,e.onSubmit,"submit"),P(t,e.onFocus,"focus"),P(t,e.onBlur,"blur"),P(t,e.onKeyDown,"keydown"),P(t,e.onKeyUp,"keyup"),P(t,e.onMouseEnter,"mouseenter"),P(t,e.onMouseLeave,"mouseleave"),P(t,e.onMouseDown,"mousedown"),P(t,e.onMouseMove,"mousemove"),P(t,e.onMouseUp,"mouseup"),P(t,e.onContextMenu,"contextmenu"),t}function zt(e){let t=e.children;return t!==void 0?t.TAG==="Fragment"?t._0:[t]:[]}function et(e,t){return{TAG:"Element",tag:e,attrs:Ft(t),events:Nt(t),children:zt(t)}}let Bt=et;function It(e,t,n,r){return et(e,t)}const jr=Object.freeze(Object.defineProperty({__proto__:null,$$null:Cr,Elements:{isReactiveProp:Ze,convertAttrValue:E,convertBoolAttrValue:Z,addAttr:f,addIntAttr:ye,propsToAttrs:Ft,addEvent:P,propsToEvents:Nt,getChildren:zt,createElement:et,jsx:Bt,jsxs:Bt,jsxKeyed:It,jsxsKeyed:It},ReactiveProp:void 0,array:Dr,jsx:Gt,jsxFragment:Or,jsxKeyed:Lt,jsxs:Gt,jsxsKeyed:Lt},Symbol.toStringTag,{value:"Module"}));function Pr(e){return e.TAG==="Reactive"?x(e._0):e._0}function Mr(e){return{TAG:"Static",_0:e}}function Rr(e){return{TAG:"Reactive",_0:e}}const Gr=Object.freeze(Object.defineProperty({__proto__:null,$$static:Mr,get:Pr,reactive:Rr},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 Lr(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 Wt(e){return Kt(e.split("/"),t=>{if(t!=="")return t.startsWith(":")?{TAG:"Param",_0:t.slice(1)}:{TAG:"Static",_0:t}})}function Vt(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 tt(e,t){return Vt(Wt(e),t)}const Fr=Object.freeze(Object.defineProperty({__proto__:null,match:tt,matchPath:Vt,parsePattern:Wt},Symbol.toStringTag,{value:"Module"}));function Nr(){return Symbol.for("xote.router.state")}function N(){let e=globalThis[Symbol.for("xote.router.state")];if(e!==void 0)return e;let t={location:qe({pathname:"/",search:"",hash:""},void 0,void 0),basePath:{contents:"/"},initialized:!1,popStateHandler:void 0};return globalThis[Symbol.for("xote.router.state")]=t,t}function zr(){return N().location}function Br(){return N().basePath}function fe(e){if(!N().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 nt(e){if(e===""||e==="/")return"/";let t=e.startsWith("/")?e:"/"+e;return t.endsWith("/")?t.slice(0,t.length-1|0):t}function Ht(e){let t=N().basePath.contents;return t==="/"?e:e===t?"/":e.startsWith(t+"/")?e.slice(t.length):e}function $e(e){let t=N().basePath.contents;return t==="/"?e:e==="/"?t:t+e}function Xt(){let e=window.scrollX||window.pageXOffset||0,t=window.scrollY||window.pageYOffset||0;return[e,t]}function Ge(e,t){window.scrollTo(e,t)}function qt(e,t){return{scrollX:e,scrollY:t}}function rt(){return{}}function Ut(e){let t=e&&e.scrollX,n=e&&e.scrollY;if(t!=null&&n!=null)return[t,n]}function Yt(){let e=Xt(),t=qt(e[0],e[1]),n=window.location.href;window.history.replaceState(t,"",n)}function it(){let e=window.location.pathname;return{pathname:Ht(e),search:window.location.search,hash:window.location.hash}}function Ir(e,t){let n=e!==void 0?e:"/",r=N(),l=nt(n);if(r.basePath.contents=l,ce(r.location,it()),r.initialized)return;let i=u=>{ce(N().location,it());let o=window["history.state"];if(o==null)return;let c=Ut(o);if(c!==void 0)return Ge(c[0],c[1])};r.popStateHandler=i,window.addEventListener("popstate",i),r.initialized=!0}function Kr(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=N(),C=nt(i);y.basePath.contents=C,ce(y.location,{pathname:u,search:o,hash:c}),y.initialized=!0}function lt(e,t,n,r){let l=t!==void 0?t:"",i=n!==void 0?n:"";fe("Router.push()"),Yt();let u={pathname:e,search:l,hash:i},c=$e(e)+l+i;window.history.pushState(rt(),"",c),ce(N().location,u),Ge(0,0)}function Wr(e,t,n,r){let l=t!==void 0?t:"",i=n!==void 0?n:"";fe("Router.replace()");let u={pathname:e,search:l,hash:i},c=$e(e)+l+i;window.history.replaceState(rt(),"",c),ce(N().location,u),Ge(0,0)}function Vr(e,t){return fe("Router.route()"),Je(J(()=>{let n=x(N().location),r=tt(e,n.pathname);return typeof r!="object"?[]:[t(r._0)]},void 0))}function Hr(e){return fe("Router.routes()"),Je(J(()=>{let t=x(N().location),n=Lr(e,r=>{let l=tt(r.pattern,t.pathname);if(typeof l=="object")return r.render(l._0)});return n!==void 0?[n]:[]},void 0))}function Xr(e,t,n,r){let l=t!==void 0?t:[],i=n!==void 0?n:[];fe("Router.link()");let u=o=>{o.preventDefault(),lt(e,void 0,void 0)};return Qe(l.concat([X("href",$e(e))]),[["click",u]],i)}function Jt(e){return e&&typeof e=="object"&&"TAG"in e&&(e.TAG==="Static"||e.TAG==="Reactive")}function Se(e,t){return Jt(t)?t.TAG==="Reactive"?se(e,t._0):X(e,t._0):typeof t=="function"?Re(e,t):typeof t=="object"?se(e,t):X(e,t)}function Qt(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 Zt(e){let t=e.children;return t!==void 0?t.TAG==="Fragment"?t._0:[t]:[]}function Le(e){fe("Router.Link");let t=n=>{n.preventDefault(),lt(e.to,void 0,void 0);let r=e.onClick;if(r!==void 0)return r(n)};return Qe(Qt(e).concat([X("href",$e(e.to))]),[["click",t]],Zt(e))}function en(e,t,n){return Le(e)}const qr=Object.freeze(Object.defineProperty({__proto__:null,Link:{ReactiveProp:void 0,isReactiveProp:Jt,convertAttrValue:Se,propsToAttrs:Qt,getChildren:Zt,make:Le,jsx:Le,jsxs:Le,jsxKeyed:en,jsxsKeyed:en},Route:void 0,addBasePath:$e,basePath:Br,emptyHistoryState:rt,getCurrentLocation:it,getGlobalState:N,getScrollFromState:Ut,getScrollPosition:Xt,getSymbolKey:Nr,init:Ir,initSSR:Kr,link:Xr,location:zr,makeHistoryState:qt,normalizeBasePath:nt,push:lt,replace:Wr,route:Vr,routes:Hr,saveScrollPosition:Yt,scrollTo:Ge,stripBasePath:Ht,warnIfNotInitialized:fe},Symbol.toStringTag,{value:"Module"}));function re(e){return e.replaceAll("&","&amp;").replaceAll("<","&lt;").replaceAll(">","&gt;").replaceAll('"',"&quot;").replaceAll("'","&#x27;")}let ut=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"];function Ur(e){return ut.includes(e)}let tn={escape:re,voidElements:ut,isVoidElement:Ur},nn="<!--$-->",rn="<!--/$-->",ln="<!--#-->",un="<!--/#-->",on="<!--kl-->",dn="<!--/kl-->";function an(e){return"<!--k:"+e+"-->"}let cn="<!--/k-->",sn="<!--lc-->",fn="<!--/lc-->",Yr={signalTextStart:nn,signalTextEnd:rn,signalFragmentStart:ln,signalFragmentEnd:un,keyedListStart:on,keyedListEnd:dn,keyedItemStart:an,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"checked":case"disabled":case"multiple":case"readonly":case"required":break;default:return n+'="'+re(r)+'"'}return r==="true"?n:""}function mn(e){let t=e.map(hn).filter(n=>n!=="");return t.length!==0?" "+t.join(" "):""}let Jr={renderAttr:hn,renderAttrs:mn};function ie(e){switch(e.TAG){case"Element":let t=e.tag,n=mn(e.attrs);if(ut.includes(t))return"<"+t+n+" />";let r=e.children.map(ie).join("");return"<"+t+n+">"+r+"</"+t+">";case"Text":return re(e._0);case"SignalText":let l=H(e._0);return nn+re(l)+rn;case"Fragment":return e._0.map(ie).join("");case"SignalFragment":let u=H(e._0).map(ie).join("");return ln+u+un;case"LazyComponent":let o=e._0();return sn+ie(o)+fn;case"KeyedList":let c=e.renderItem,y=e.keyFn,B=H(e.signal).map(I=>{let M=y(I),k=ie(c(I));return an(M)+k+cn}).join("");return on+B+dn}}function pn(e,t){return ie(e())}function Qr(e,t,n){let r=t!==void 0?t:"root",l=e(),i=ie(l);return"<!--xote-root:"+r+"-->"+i+"<!--/xote-root-->"}function gn(e){return"<script"+(e!==void 0?' nonce="'+re(e)+'"':"")+">window.__XOTE_HYDRATED__=false;<\/script>"}function Zr(e,t,n,r,l,i,u){let o=e!==void 0?e:"",c=t!==void 0?t:"",y=n!==void 0?n:[],C=r!==void 0?r:[],B=l!==void 0?l:"",I=pn(u),M=gn(i),k=C.map(W=>'<link rel="stylesheet" href="'+re(W)+'" />').join(`
2
- `),q=y.map(W=>{let V=i!==void 0?' nonce="'+re(i)+'"':"";return'<script type="module" src="'+re(W)+'"'+V+"><\/script>"}).join(`
1
+ (function(C,ae){typeof exports=="object"&&typeof module<"u"?ae(exports):typeof define=="function"&&define.amd?define(["exports"],ae):(C=typeof globalThis<"u"?globalThis:C||self,ae(C.xote={}))})(this,(function(C){"use strict";let ae={contents:0};function $e(){return ae.contents=ae.contents+1|0,ae.contents}let Se={contents:0},be={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 vt(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 Et(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 Tt(e){return(e.flags&1)!==0}function wt(e){e.flags=e.flags|1}function Fe(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 fe(e){return e.compute!==void 0}function Ne(e,t){return{subs:e,observer:t,nextDep:void 0,prevDep:void 0,nextSub:void 0,prevSub:void 0,lastTrackedVersion:0}}function Be(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 xt(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 ze(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;ze(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;ze(n),t=r}}e.firstDep=void 0,e.lastDep=void 0}function Dt(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 M={contents:void 0},N={contents:void 0},B={contents:0},z={contents:void 0},I={contents:void 0},Y=[],J=[],le={contents:!1},Ae={contents:!1},Oe={contents:!1},kt={contents:0},$t={contents:0},Ce=[],Jn=(function(e){e.length=0}),At=(function(e,t){if(!(t<=0)){if(t>=e.length){e.length=0;return}e.copyWithin(0,t),e.length=e.length-t}});function et(e){if(Bn(e))return;zn(e),Y.length===0?Ae.contents=!1:e.level<kt.contents&&(Ae.contents=!0),Y.push(e),kt.contents=e.level}function Qn(e){if(Wn(e))return;Kn(e),J.length===0?Oe.contents=!1:e.level<$t.contents&&(Oe.contents=!0),J.push(e),$t.contents=e.level}function Zn(e,t){if(e.firstDep===void 0){let u=Ne(t,e);u.lastTrackedVersion=B.contents,Dt(e,u),Be(t,u),z.contents=u;return}let n=B.contents,r=!1,l=z.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,z.contents=u,r=!0)}if(!r){let u=t.last;u!==void 0&&u.lastTrackedVersion===n&&u.observer===e&&(u.lastTrackedVersion=n,z.contents=u,r=!0)}if(r)return;let i=!1,o,d=e.firstDep;for(;d!==void 0&&!i;){let u=d;u!==void 0&&(u.subs===t?(u.lastTrackedVersion=n,o=u,i=!0):d=u.nextDep)}if(i){z.contents=o;return}let s=Ne(t,e);s.lastTrackedVersion=n,Dt(e,s),Be(t,s),z.contents=s}function er(e,t){if(e.firstDep===void 0){let u=Ne(t,e);u.lastTrackedVersion=B.contents,xt(e,u),Be(t,u),I.contents=u;return}let n=B.contents,r=!1,l=I.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,I.contents=u,r=!0)}if(!r){let u=t.last;u!==void 0&&u.lastTrackedVersion===n&&u.observer===e&&(u.lastTrackedVersion=n,I.contents=u,r=!0)}if(r)return;let i=!1,o,d=e.firstDep;for(;d!==void 0&&!i;){let u=d;u!==void 0&&(u.subs===t?(u.lastTrackedVersion=n,o=u,i=!0):d=u.nextDep)}if(i){I.contents=o;return}let s=Ne(t,e);s.lastTrackedVersion=n,xt(e,s),Be(t,s),I.contents=s}function tr(e){let t=M.contents;if(t!==void 0)return Zn(t,e);let n=N.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 Ot(e){let t=0,n=e.firstDep;for(;n!==void 0;){let r=n;r!==void 0&&(fe(r.subs)&&r.subs.level>t&&(t=r.subs.level),n=r.nextDep)}return t+1|0}function Ct(e){let t=0,n=e.firstDep;for(;n!==void 0;){let r=n;r!==void 0&&(fe(r.subs)&&r.subs.level>t&&(t=r.subs.level),n=r.nextDep)}return t+1|0}function Pt(e,t){let n=B.contents,r=e.version;Se.contents=Se.contents+1|0,B.contents=Se.contents,t&&Hn(e);let l=M.contents,i=z.contents;M.contents=e,z.contents=e.firstDep;try{let o=e.compute;o!==void 0&&o();let d=e.firstDep;for(;d!==void 0;){let s=d;if(s!==void 0){let u=s.nextDep;s.lastTrackedVersion!==B.contents&&(ze(s),Xn(e,s)),d=u}}if(Fe(e),e.lastGlobalVersion=be.contents,e.first!==void 0&&e.version!==r){let s=e.first;for(;s!==void 0;){let u=s;if(u!==void 0){let p=u.observer;if(fe(p))wt(p);else{let w=N.contents;w!==void 0&&w===u.observer||et(u.observer)}s=u.nextSub}}}M.contents=l,z.contents=i,B.contents=n;return}catch(o){throw M.contents=l,z.contents=i,B.contents=n,o}}function lr(e){let t=e.level;if(Pt(e,!0),t===0){e.level=Ot(e);return}}function ir(e){let t=e.level,n=B.contents;Se.contents=Se.contents+1|0,B.contents=Se.contents,In(e);let r=N.contents,l=I.contents;N.contents=e,I.contents=e.firstDep;try{e.run();let i=e.firstDep;for(;i!==void 0;){let o=i;if(o!==void 0){let d=o.nextDep;o.lastTrackedVersion!==B.contents&&(ze(o),qn(e,o)),i=d}}Et(e),N.contents=r,I.contents=l,B.contents=n}catch(i){throw N.contents=r,I.contents=l,B.contents=n,i}if(t===0){e.level=Ct(e);return}}function jt(){le.contents=!0;try{for(;Y.length!==0||J.length!==0;){if(J.length!==0){let e=J.length;e>1&&Oe.contents&&(J.sort(rr),Oe.contents=!1);let t=0;for(;t<e;){let n=J[t];n!==void 0&&lr(n),t=t+1|0}At(J,e),J.length===0&&(Oe.contents=!1)}if(Y.length!==0){let e=Y.length;e>1&&Ae.contents&&(Y.sort(nr),Ae.contents=!1);let t=0;for(;t<e;){let n=Y[t];n!==void 0&&ir(n),t=t+1|0}At(Y,e),Y.length===0&&(Ae.contents=!1)}}le.contents=!1;return}catch(e){throw le.contents=!1,e}}function ur(e){if(e.first!==void 0)if(!fe(e)&&e.computedSubscriberCount===0){let t=e.first;for(;t!==void 0;){let n=t;n!==void 0&&(et(n.observer),t=n.nextSub)}}else{Ce.push(e);let t=0;for(;t<Ce.length;){let n=Ce[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;fe(i)?Tt(i)||(wt(i),Ce.push(i)):fe(n)&&n.deferEffectsUntilRecompute?Qn(n):et(l.observer),r=l.nextSub}}}}Jn(Ce)}if((Y.length!==0||J.length!==0)&&!le.contents)return jt()}function Rt(e){if(!fe(e)||!Tt(e))return;if(e.lastGlobalVersion===be.contents)return Fe(e);let t=e.level;if(Pt(e,!1),t===0){e.level=Ot(e);return}}function or(e){let t=le.contents;le.contents=!0;try{let n=e();return t||(le.contents=!1,(Y.length!==0||J.length!==0)&&jt()),n}catch(n){throw t||(le.contents=!1),n}}function dr(e){let t=M.contents,n=N.contents,r=z.contents,l=I.contents;M.contents=void 0,N.contents=void 0,z.contents=void 0,I.contents=void 0;try{let i=e();return M.contents=t,N.contents=n,z.contents=r,I.contents=l,i}catch(i){throw M.contents=t,N.contents=n,z.contents=r,I.contents=l,i}}function Mt(e,t){let n=$e(),r={contents:void 0},i=Nn(n,"Effect",()=>{let u=r.contents;u!==void 0&&u(),r.contents=e()},t,void 0),o=N.contents;N.contents=i;try{i.run(),Et(i),N.contents=o}catch(u){throw N.contents=o,u}i.level=Ct(i);let d={contents:!1};return{dispose:()=>{if(d.contents)return;d.contents=!0;let u=r.contents;u!==void 0&&u(),Un(i)}}}function sr(e,t){Mt(e,t)}let V=Mt;const cr=Object.freeze(Object.defineProperty({__proto__:null,run:sr,runWithDisposer:V},Symbol.toStringTag,{value:"Module"}));function Vt(e,t){return e===t}function Lt(e,t){return!1}function ar(e,t,n){return{id:$e(),value:e,equals:n!==void 0?n:Vt,name:t,subs:_t()}}function fr(e,t){return{id:$e(),value:e,equals:Lt,name:t,subs:_t()}}function hr(e){return Rt(e.subs),tr(e.subs),e.value}function mr(e){return Rt(e.subs),e.value}function Gt(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,be.contents=be.contents+1|0,ur(e.subs)}function pr(e,t){Gt(e,t(e.value))}let gr=or,yr=dr,Sr=Vt,br=Lt,tt=ar,_r=fr,P=hr,Q=mr,he=Gt;const vr=Object.freeze(Object.defineProperty({__proto__:null,batch:gr,defaultEquals:Sr,get:P,make:tt,makeForComputed:_r,neverEquals:br,peek:Q,set:he,untrack:yr,update:pr},Symbol.toStringTag,{value:"Module"}));function nt(e,t){delete e[t]}function Ft(e,t){let n=$e(),r=(p,w)=>!1,l={contents:void 0},o=vt(()=>{let p=l.contents,w=e();p.value=w,p.subs.version=p.subs.version+1|0},!1),d=M.contents;M.contents=o;let s=e();M.contents=d;let u={id:n,value:s,equals:r,name:t,subs:o};return l.contents=u,o.lastGlobalVersion=be.contents,Fe(o),u}function Nt(e,t,n){let r=$e(),l={contents:void 0},o=vt(()=>{let p=l.contents,w=p.value,R=e(),$;try{$=!p.equals(w,R)}catch{$=!0}if($){p.value=R,p.subs.version=p.subs.version+1|0;return}},!0),d=M.contents;M.contents=o;let s=e();M.contents=d;let u={id:r,value:s,equals:t,name:n,subs:o};return l.contents=u,o.lastGlobalVersion=be.contents,Fe(o),u}function Er(e,t,n){return n!==void 0?Nt(e,n,t):Ft(e,t)}function Tr(e){Yn(e.subs)}let wr=Ft,xr=Nt,ne=Er,Bt=Tr;const Dr=Object.freeze(Object.defineProperty({__proto__:null,dispose:Bt,make:ne,makeWithEquals:xr,makeWithoutEquals:wr},Symbol.toStringTag,{value:"Module"}));function me(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 rt(e){if(e!=null)return me(e)}function m(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 kr(e,t){if(e!==void 0)return me(t(m(e)))}function ie(e,t){return e!==void 0?m(e):t}function lt(e){return e!==void 0}let zt="http://www.w3.org/2000/svg",It=["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"],Ie={};It.forEach(e=>{Ie[e]=!0});function $r(e){return lt(Ie[e])}function Pe(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 je={setAttrOrProp:Pe},We={contents:void 0};function Ar(){return{disposers:[],computeds:[]}}function _e(e,t){let n=We.contents;We.contents=e;let r=t();return We.contents=n,r}function ve(e,t){e.disposers.push(t)}function Wt(e){e.disposers.forEach(t=>t.dispose()),e.computeds.forEach(Bt)}function Ee(e,t){e.__xote_owner__=t}function Kt(e){return rt(e.__xote_owner__)}let f={currentOwner:We,createOwner:Ar,runWithOwner:_e,addDisposer:ve,disposeOwner:Wt,setOwner:Ee,getOwner:Kt};function Ht(e,t){return[e,{TAG:"Static",_0:t}]}function qt(e,t){return[e,{TAG:"SignalValue",_0:t}]}function Xt(e,t){return[e,{TAG:"Compute",_0:t}]}let Or={$$static:Ht,signal:qt,computed:Xt};function Re(e){let t=Kt(e);t!==void 0&&Wt(t),Array.from(e.childNodes||[]).forEach(Re)}function re(e){switch(e.TAG){case"Element":let t=e.children,n=e.events,r=e.attrs,l=e.tag,i=lt(Ie[l])?document.createElementNS(zt,l):document.createElement(l),o={disposers:[],computeds:[]};return Ee(i,o),_e(o,()=>{r.forEach(a=>{let g=a[1],O=a[0];switch(g.TAG){case"Static":return Pe(i,O,g._0);case"SignalValue":let j=g._0;Pe(i,O,Q(j));let F=V(()=>{Pe(i,O,P(j))},void 0);return ve(o,F);case"Compute":let y=g._0,_=V(()=>{Pe(i,O,y())},void 0);return ve(o,_)}}),n.forEach(a=>{i.addEventListener(a[0],a[1])}),t.forEach(a=>{let g=re(a);i.appendChild(g)})}),i;case"Text":return document.createTextNode(e._0);case"SignalText":let d=e._0,s=document.createTextNode(Q(d)),u={disposers:[],computeds:[]};return Ee(s,u),_e(u,()=>{let a=V(()=>{s.textContent=P(d)},void 0);ve(u,a)}),s;case"Fragment":let p=document.createDocumentFragment();return e._0.forEach(a=>{let g=re(a);p.appendChild(g)}),p;case"SignalFragment":let w=e._0,R={disposers:[],computeds:[]},$=document.createElement("div");return $.setAttribute("style","display: contents"),Ee($,R),_e(R,()=>{let a=V(()=>{let g=P(w);Array.from($.childNodes||[]).forEach(Re),$.innerHTML="",g.forEach(j=>{let F=re(j);$.appendChild(F)})},void 0);ve(R,a)}),$;case"LazyComponent":let A={disposers:[],computeds:[]},ee=_e(A,e._0),X=re(ee);return Ee(X,A),X;case"KeyedList":let U=e.renderItem,L=e.keyFn,te=e.signal,De={disposers:[],computeds:[]},k=document.createComment(" keyed-list-start "),v=document.createComment(" keyed-list-end ");Ee(k,De);let h={},E=()=>{let a=v.parentNode;if(a==null)return;let g=P(te),O={};g.forEach(S=>{O[L(S)]=S});let j=[];Object.keys(h).forEach(S=>{if(O[S]===void 0){j.push(S);return}}),j.forEach(S=>{let D=h[S];if(D!==void 0){Re(D.element),D.element.remove(),nt(h,S);return}});let F=[],y={};g.forEach(S=>{let D=L(S),ke=h[D];if(ke!==void 0){if(ke.item!==S){y[D]=!0;let Ze=U(S),ai=re(Ze),Fn={key:D,item:S,element:ai};F.push(Fn),h[D]=Fn;return}F.push(ke);return}let Je=U(S),bt=re(Je),Qe={key:D,item:S,element:bt};F.push(Qe),h[D]=Qe});let _={contents:k.nextSibling};F.forEach(S=>{let D=_.contents;if(D==null){a.insertBefore(S.element,v);return}if(D===v){a.insertBefore(S.element,v);return}if(D===S.element){_.contents=D.nextSibling;return}ie(y[S.key],!1)?(Re(D),a.replaceChild(S.element,D),_.contents=S.element.nextSibling):(a.insertBefore(S.element,D),_.contents=S.element.nextSibling)})},x=document.createDocumentFragment();return x.appendChild(k),Q(te).forEach(a=>{let g=L(a),O=U(a),j=re(O),F={key:g,item:a,element:j};h[g]=F,x.appendChild(j)}),x.appendChild(v),_e(De,()=>{let a=V(()=>{E()},void 0);ve(De,a)}),x}}let ue={disposeElement:Re,render:re};function Ut(e){return{TAG:"Text",_0:e}}function Cr(e){return{TAG:"SignalText",_0:ne(e,void 0,void 0)}}function Pr(e){return{TAG:"SignalText",_0:ne(()=>e().toString(),void 0,void 0)}}function jr(e){return{TAG:"SignalText",_0:ne(()=>e().toString(),void 0,void 0)}}function Rr(e){return{TAG:"Text",_0:e.toString()}}function Mr(e){return{TAG:"Text",_0:e.toString()}}function it(e){return{TAG:"Fragment",_0:e}}function ut(e){return{TAG:"SignalFragment",_0:e}}function Vr(e,t){return{TAG:"SignalFragment",_0:ne(()=>P(e).map(t),void 0,void 0)}}function Lr(e,t,n){return{TAG:"KeyedList",signal:e,keyFn:t,renderItem:n}}function q(e,t,n,r,l){let i=t!==void 0?t:[].map(s=>s),o=n!==void 0?n:[].map(s=>s),d=r!==void 0?r:[].map(s=>s);return{TAG:"Element",tag:e,attrs:i,events:o,children:d}}function Gr(){return{TAG:"Text",_0:""}}function Yt(e,t){let n=re(e);t.appendChild(n)}function Fr(e,t){let n=document.getElementById(t);if(n==null){console.error("Container element not found: "+t);return}else return Yt(e,n)}let Nr=Ie,Z=Ht,pe=qt,Ke=Xt;const Br=Object.freeze(Object.defineProperty({__proto__:null,$$null:Gr,Attributes:Or,DOM:je,Reactivity:f,Render:ue,attr:Z,computedAttr:Ke,element:q,float:Mr,fragment:it,int:Rr,isSvgTag:$r,keyedList:Lr,list:Vr,mount:Yt,mountById:Fr,signalAttr:pe,signalFloat:jr,signalFragment:ut,signalInt:Pr,signalText:Cr,svgNamespace:zt,svgTagSet:Nr,svgTags:It,text:Ut},Symbol.toStringTag,{value:"Module"}));function zr(e,t,n,r){return q("div",e,t,n)}function Ir(e,t,n,r){return q("span",e,t,n)}function Wr(e,t,n,r){return q("button",e,t,n)}function Kr(e,t,n){return q("input",e,t,void 0)}function Hr(e,t,n,r){return q("h1",e,t,n)}function qr(e,t,n,r){return q("h2",e,t,n)}function Xr(e,t,n,r){return q("h3",e,t,n)}function Ur(e,t,n,r){return q("p",e,t,n)}function Yr(e,t,n,r){return q("ul",e,t,n)}function Jr(e,t,n,r){return q("li",e,t,n)}function ot(e,t,n,r){return q("a",e,t,n)}const Qr=Object.freeze(Object.defineProperty({__proto__:null,a:ot,button:Wr,div:zr,h1:Hr,h2:qr,h3:Xr,input:Kr,li:Jr,p:Ur,span:Ir,ul:Yr},Symbol.toStringTag,{value:"Module"}));function Jt(e,t){return{TAG:"LazyComponent",_0:()=>e(t)}}function Qt(e,t,n,r){return{TAG:"LazyComponent",_0:()=>e(t)}}function Zr(e){let t=e.children;return t!==void 0?t:it([])}let el=it;function tl(){return Ut("")}function dt(e){return e&&typeof e=="object"&&"TAG"in e&&(e.TAG==="Static"||e.TAG==="Reactive")}function b(e,t){return dt(t)?t.TAG==="Reactive"?pe(e,t._0):Z(e,t._0):typeof t=="function"?Ke(e,t):typeof t=="object"?pe(e,t):Z(e,t)}function W(e,t){if(dt(t)){if(t.TAG!=="Reactive")return Z(e,t._0?"true":"false");let r=t._0,l=ne(()=>P(r)?"true":"false",void 0,void 0);return pe(e,l)}if(typeof t=="function")return Ke(e,()=>t()?"true":"false");if(typeof t!="object")return Z(e,t?"true":"false");let n=ne(()=>P(t)?"true":"false",void 0,void 0);return pe(e,n)}function c(e,t,n,r){if(t!==void 0){e.push(r(n,m(t)));return}}function Te(e,t,n){if(t!==void 0){e.push(Z(n,t.toString()));return}}function Zt(e){let t=[];c(t,e.id,"id",b),c(t,e.class,"class",b),c(t,e.style,"style",b),c(t,e.title,"title",b),c(t,e.type,"type",b),c(t,e.name,"name",b),c(t,e.value,"value",b),c(t,e.placeholder,"placeholder",b),c(t,e.disabled,"disabled",W),c(t,e.checked,"checked",W),c(t,e.required,"required",W),c(t,e.readOnly,"readonly",W),Te(t,e.maxLength,"maxlength"),Te(t,e.minLength,"minlength"),c(t,e.min,"min",b),c(t,e.max,"max",b),c(t,e.step,"step",b),c(t,e.pattern,"pattern",b),c(t,e.autoComplete,"autocomplete",b),c(t,e.multiple,"multiple",W),c(t,e.accept,"accept",b),Te(t,e.rows,"rows"),Te(t,e.cols,"cols"),c(t,e.autofocus,"autofocus",W),c(t,e.action,"action",b),c(t,e.method,"method",b),c(t,e.for,"for",b),c(t,e.href,"href",b),c(t,e.target,"target",b),c(t,e.src,"src",b),c(t,e.alt,"alt",b),c(t,e.width,"width",b),c(t,e.height,"height",b),c(t,e.draggable,"draggable",W),c(t,e.hidden,"hidden",W),c(t,e.contentEditable,"contenteditable",W),c(t,e.spellcheck,"spellcheck",W),c(t,e.role,"role",b),Te(t,e.tabIndex,"tabindex"),c(t,e["aria-label"],"aria-label",b),c(t,e["aria-hidden"],"aria-hidden",W),c(t,e["aria-expanded"],"aria-expanded",W),c(t,e["aria-selected"],"aria-selected",W);let n=e.data;return n!==void 0&&Object.entries(n).forEach(([r,l])=>{t.push(b("data-"+r,l))}),t}function T(e,t,n){if(t!==void 0){e.push([n,m(t)]);return}}function en(e){let t=[];return T(t,e.onClick,"click"),T(t,e.onInput,"input"),T(t,e.onChange,"change"),T(t,e.onSubmit,"submit"),T(t,e.onFocus,"focus"),T(t,e.onBlur,"blur"),T(t,e.onKeyDown,"keydown"),T(t,e.onKeyUp,"keyup"),T(t,e.onMouseEnter,"mouseenter"),T(t,e.onMouseLeave,"mouseleave"),T(t,e.onMouseDown,"mousedown"),T(t,e.onMouseMove,"mousemove"),T(t,e.onMouseUp,"mouseup"),T(t,e.onContextMenu,"contextmenu"),T(t,e.onDrag,"drag"),T(t,e.onDragStart,"dragstart"),T(t,e.onDragEnd,"dragend"),T(t,e.onDragOver,"dragover"),T(t,e.onDragEnter,"dragenter"),T(t,e.onDragLeave,"dragleave"),T(t,e.onDrop,"drop"),t}function tn(e){let t=e.children;return t!==void 0?t.TAG==="Fragment"?t._0:[t]:[]}function st(e,t){return{TAG:"Element",tag:e,attrs:Zt(t),events:en(t),children:tn(t)}}let nn=st;function rn(e,t,n,r){return st(e,t)}const nl=Object.freeze(Object.defineProperty({__proto__:null,$$null:tl,Elements:{isReactiveProp:dt,convertAttrValue:b,convertBoolAttrValue:W,addAttr:c,addIntAttr:Te,propsToAttrs:Zt,addEvent:T,propsToEvents:en,getChildren:tn,createElement:st,jsx:nn,jsxs:nn,jsxKeyed:rn,jsxsKeyed:rn},ReactiveProp:void 0,array:el,jsx:Jt,jsxFragment:Zr,jsxKeyed:Qt,jsxs:Jt,jsxsKeyed:Qt},Symbol.toStringTag,{value:"Module"}));function rl(e){return e.TAG==="Reactive"?P(e._0):e._0}function ll(e){return{TAG:"Static",_0:e}}function il(e){return{TAG:"Reactive",_0:e}}const ul=Object.freeze(Object.defineProperty({__proto__:null,$$static:ll,get:rl,reactive:il},Symbol.toStringTag,{value:"Module"}));function ln(e,t){let n=e.length,r=new Array(n),l=0;for(let i=0;i<n;++i){let o=e[i],d=t(o);d!==void 0&&(r[l]=m(d),l=l+1|0)}return r.length=l,r}function ol(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 un(e){return ln(e.split("/"),t=>{if(t!=="")return t.startsWith(":")?{TAG:"Param",_0:t.slice(1)}:{TAG:"Static",_0:t}})}function on(e,t){let n=t.split("/").filter(i=>i!=="");if(e.length!==n.length)return"NoMatch";let r={};return e.every((i,o)=>{let d=n[o];return i.TAG==="Static"?d===i._0:(r[i._0]=d,!0)})?{TAG:"Match",_0:r}:"NoMatch"}function ct(e,t){return on(un(e),t)}const dl=Object.freeze(Object.defineProperty({__proto__:null,match:ct,matchPath:on,parsePattern:un},Symbol.toStringTag,{value:"Module"}));function sl(){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:tt({pathname:"/",search:"",hash:""},void 0,void 0),basePath:{contents:"/"},initialized:!1,popStateHandler:void 0};return globalThis[Symbol.for("xote.router.state")]=t,t}function cl(){return K().location}function al(){return K().basePath}function ge(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 at(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 Me(e){let t=K().basePath.contents;return t==="/"?e:e==="/"?t:t+e}function sn(){let e=window.scrollX||window.pageXOffset||0,t=window.scrollY||window.pageYOffset||0;return[e,t]}function He(e,t){window.scrollTo(e,t)}function cn(e,t){return{scrollX:e,scrollY:t}}function ft(){return{}}function an(e){let t=e&&e.scrollX,n=e&&e.scrollY;if(t!=null&&n!=null)return[t,n]}function fn(){let e=sn(),t=cn(e[0],e[1]),n=window.location.href;window.history.replaceState(t,"",n)}function ht(){let e=window.location.pathname;return{pathname:dn(e),search:window.location.search,hash:window.location.hash}}function fl(e,t){let n=e!==void 0?e:"/",r=K(),l=at(n);if(r.basePath.contents=l,he(r.location,ht()),r.initialized)return;let i=o=>{he(K().location,ht());let d=window["history.state"];if(d==null)return;let s=an(d);if(s!==void 0)return He(s[0],s[1])};r.popStateHandler=i,window.addEventListener("popstate",i),r.initialized=!0}function hl(e,t,n,r,l){let i=e!==void 0?e:"/",o=t!==void 0?t:"/",d=n!==void 0?n:"",s=r!==void 0?r:"",u=K(),p=at(i);u.basePath.contents=p,he(u.location,{pathname:o,search:d,hash:s}),u.initialized=!0}function mt(e,t,n,r){let l=t!==void 0?t:"",i=n!==void 0?n:"";ge("Router.push()"),fn();let o={pathname:e,search:l,hash:i},s=Me(e)+l+i;window.history.pushState(ft(),"",s),he(K().location,o),He(0,0)}function ml(e,t,n,r){let l=t!==void 0?t:"",i=n!==void 0?n:"";ge("Router.replace()");let o={pathname:e,search:l,hash:i},s=Me(e)+l+i;window.history.replaceState(ft(),"",s),he(K().location,o),He(0,0)}function pl(e,t){return ge("Router.route()"),ut(ne(()=>{let n=P(K().location),r=ct(e,n.pathname);return typeof r!="object"?[]:[t(r._0)]},void 0,void 0))}function gl(e){return ge("Router.routes()"),ut(ne(()=>{let t=P(K().location),n=ol(e,r=>{let l=ct(r.pattern,t.pathname);if(typeof l=="object")return r.render(l._0)});return n!==void 0?[n]:[]},void 0,void 0))}function yl(e,t,n,r){let l=t!==void 0?t:[],i=n!==void 0?n:[];ge("Router.link()");let o=d=>{d.preventDefault(),mt(e,void 0,void 0)};return ot(l.concat([Z("href",Me(e))]),[["click",o]],i)}function hn(e){return e&&typeof e=="object"&&"TAG"in e&&(e.TAG==="Static"||e.TAG==="Reactive")}function we(e,t){return hn(t)?t.TAG==="Reactive"?pe(e,t._0):Z(e,t._0):typeof t=="function"?Ke(e,t):typeof t=="object"?pe(e,t):Z(e,t)}function mn(e){let t=[],n=e.class;n!==void 0&&t.push(we("class",m(n)));let r=e.id;r!==void 0&&t.push(we("id",m(r)));let l=e.style;l!==void 0&&t.push(we("style",m(l)));let i=e.target;i!==void 0&&t.push(we("target",m(i)));let o=e["aria-label"];return o!==void 0&&t.push(we("aria-label",m(o))),t}function pn(e){let t=e.children;return t!==void 0?t.TAG==="Fragment"?t._0:[t]:[]}function qe(e){ge("Router.Link");let t=n=>{n.preventDefault(),mt(e.to,void 0,void 0);let r=e.onClick;if(r!==void 0)return r(n)};return ot(mn(e).concat([Z("href",Me(e.to))]),[["click",t]],pn(e))}function gn(e,t,n){return qe(e)}const Sl=Object.freeze(Object.defineProperty({__proto__:null,Link:{ReactiveProp:void 0,isReactiveProp:hn,convertAttrValue:we,propsToAttrs:mn,getChildren:pn,make:qe,jsx:qe,jsxs:qe,jsxKeyed:gn,jsxsKeyed:gn},Route:void 0,addBasePath:Me,basePath:al,emptyHistoryState:ft,getCurrentLocation:ht,getGlobalState:K,getScrollFromState:an,getScrollPosition:sn,getSymbolKey:sl,init:fl,initSSR:hl,link:yl,location:cl,makeHistoryState:cn,normalizeBasePath:at,push:mt,replace:ml,route:pl,routes:gl,saveScrollPosition:fn,scrollTo:He,stripBasePath:dn,warnIfNotInitialized:ge},Symbol.toStringTag,{value:"Module"}));function oe(e){return e.replaceAll("&","&amp;").replaceAll("<","&lt;").replaceAll(">","&gt;").replaceAll('"',"&quot;").replaceAll("'","&#x27;")}let pt=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"];function bl(e){return pt.includes(e)}let yn={escape:oe,voidElements:pt,isVoidElement:bl},Sn="<!--$-->",bn="<!--/$-->",_n="<!--#-->",vn="<!--/#-->",En="<!--kl-->",Tn="<!--/kl-->";function wn(e){return"<!--k:"+e+"-->"}let xn="<!--/k-->",Dn="<!--lc-->",kn="<!--/lc-->",_l={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=Q(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+'="'+oe(r)+'"'}return r==="true"?n:""}function An(e){let t=e.map($n).filter(n=>n!=="");return t.length!==0?" "+t.join(" "):""}let vl={renderAttr:$n,renderAttrs:An};function de(e){switch(e.TAG){case"Element":let t=e.tag,n=An(e.attrs);if(pt.includes(t))return"<"+t+n+" />";let r=e.children.map(de).join("");return"<"+t+n+">"+r+"</"+t+">";case"Text":return oe(e._0);case"SignalText":let l=Q(e._0);return Sn+oe(l)+bn;case"Fragment":return e._0.map(de).join("");case"SignalFragment":let o=Q(e._0).map(de).join("");return _n+o+vn;case"LazyComponent":let d=e._0();return Dn+de(d)+kn;case"KeyedList":let s=e.renderItem,u=e.keyFn,w=Q(e.signal).map(R=>{let $=u(R),A=de(s(R));return wn($)+A+xn}).join("");return En+w+Tn}}function On(e,t){return de(e())}function El(e,t,n){let r=t!==void 0?t:"root",l=e(),i=de(l);return"<!--xote-root:"+r+"-->"+i+"<!--/xote-root-->"}function Cn(e){return"<script"+(e!==void 0?' nonce="'+oe(e)+'"':"")+">window.__XOTE_HYDRATED__=false;<\/script>"}function Tl(e,t,n,r,l,i,o){let d=e!==void 0?e:"",s=t!==void 0?t:"",u=n!==void 0?n:[],p=r!==void 0?r:[],w=l!==void 0?l:"",R=On(o),$=Cn(i),A=p.map(X=>'<link rel="stylesheet" href="'+oe(X)+'" />').join(`
2
+ `),ee=u.map(X=>{let U=i!==void 0?' nonce="'+oe(i)+'"':"";return'<script type="module" src="'+oe(X)+'"'+U+"><\/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
- `+k+`
9
- `+o+`
8
+ `+A+`
9
+ `+d+`
10
10
  </head>
11
- <body`+(c!==""?" "+c:"")+`>
12
- <div id="root">`+I+`</div>
13
- `+B+`
14
- `+M+`
15
- `+q+`
11
+ <body`+(s!==""?" "+s:"")+`>
12
+ <div id="root">`+R+`</div>
13
+ `+w+`
14
+ `+$+`
15
+ `+ee+`
16
16
  </body>
17
- </html>`}const ei=Object.freeze(Object.defineProperty({__proto__:null,Attributes:Jr,Html:tn,Markers:Yr,generateHydrationScript:gn,renderDocument:Zr,renderNodeToString:ie,renderToString:pn,renderToStringWithRoot:Qr},Symbol.toStringTag,{value:"Module"}));let Ae=typeof document>"u",Fe=!Ae;function ti(e){if(Ae)return ae(e())}function ni(e){if(Fe)return ae(e())}function yn(e,t){return Ae?e():t()}const ri=Object.freeze(Object.defineProperty({__proto__:null,isClient:Fe,isServer:Ae,match:yn,onClient:ni,onServer:ti},Symbol.toStringTag,{value:"Module"}));function ii(e){if(typeof e=="boolean")return e}function li(e){if(e===null)return null}function ui(e){if(typeof e=="string")return e}function oi(e){if(typeof e=="number")return e}function di(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}function ai(e){if(Array.isArray(e))return e}let he={bool:ii,$$null:li,string:ui,float:oi,object:di,array:ai};function ci(e){return e}function si(e){let t=he.float(e);if(t!==void 0)return t|0}let fi={encode:ci,decode:si};function hi(e){return e}function mi(e){return he.float(e)}let pi={encode:hi,decode:mi};function gi(e){return e}function yi(e){return he.string(e)}let Si={encode:gi,decode:yi};function _i(e){return e}function bi(e){return he.bool(e)}let Ei={encode:_i,decode:bi};function wi(e){return{encode:t=>t.map(e.encode),decode:t=>{let n=he.array(t);if(n===void 0)return;let r=Kt(n,e.decode);if(r.length===n.length)return r}}}function Ti(e){return{encode:t=>t!==void 0?e.encode(h(t)):null,decode:t=>Xe(he.$$null(t))?ae(void 0):Vn(e.decode(t),n=>ae(n))}}function vi(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],u=e.decode(l),o=t.decode(i);if(u!==void 0&&o!==void 0)return[h(u),h(o)]}}}function $i(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],u=l[1],o=l[2],c=e.decode(i),y=t.decode(u),C=n.decode(o);if(c!==void 0&&y!==void 0&&C!==void 0)return[h(c),h(y),h(C)]}}}function Ai(e){return{encode:t=>{let n={};return Object.entries(t).forEach(r=>{n[r[0]]=e.encode(r[1])}),n},decode:t=>{let n=he.object(t);if(n===void 0)return;let r={},l={contents:!0};if(Object.entries(n).forEach(i=>{let u=e.decode(i[1]);u!==void 0?r[i[0]]=h(u):l.contents=!1}),l.contents)return r}}}function xi(e,t){return{encode:e,decode:t}}let ki={int:fi,float:pi,string:Si,bool:Ei,array:wi,option:Ti,tuple2:vi,tuple3:$i,dict:Ai,make:xi},xe={};function Sn(e,t,n){if(Ae){xe[e]=n.encode(H(t));return}}function Oi(){Object.keys(xe).forEach(e=>{Ue(xe,e)})}function _n(e){return e.replaceAll("<\/script>","<\\/script>").replaceAll("<!--","<\\!--")}function Di(e){let t=Y(JSON.stringify(xe),"{}"),n=_n(t);return"<script"+(e!==void 0?' nonce="'+tn.escape(e)+'"':"")+">window.__XOTE_STATE__="+n+";<\/script>"}function bn(){return Fe?window.__XOTE_STATE__||{}:{}}function En(e,t,n){if(!Fe)return;let l=bn()[e];if(l===void 0)return;let i=n.decode(l);if(i!==void 0)return ce(t,h(i))}function wn(e,t,n){yn(()=>Sn(e,t,n),()=>En(e,t,n))}function Ci(e,t,n){let r=qe(t,void 0,void 0);return wn(e,r,n),r}const ji=Object.freeze(Object.defineProperty({__proto__:null,Codec:ki,clear:Oi,escapeForScript:_n,generateScript:Di,getClientState:bn,make:Ci,register:Sn,registry:xe,restore:En,sync:wn},Symbol.toStringTag,{value:"Module"}));let ot={};function Pi(e){let t=ot[e];if(t!==void 0){let n=t+1|0;return ot[e]=n,e+("/"+n)}return ot[e]=1,e}function Mi(e){return Array.from(e.childNodes||[])}function ke(e,t){if(e.nodeType!==8)return!1;let n=e.nodeValue;return n==null?!1:n===t}function Ne(e,t){if(e.nodeType!==8)return!1;let n=e.nodeValue;return n==null?!1:n.startsWith(t)}function dt(e){if(e.nodeType!==8)return;let t=e.nodeValue;if(t!=null&&t.startsWith("k:"))return t.slice(2)}function _e(e){return{current:He(e.firstChild),parent:e}}function Ri(e){return e.current}function z(e){let t=e.current;return t!==void 0&&(e.current=He(h(t).nextSibling)),t}function le(e,t){return(()=>{for(;;){let r=e.current;if(r===void 0)return;let l=h(r);if(ke(l,t))return z(e),ae(l);z(e)}})()}function ze(e,t){let n=[];return(()=>{for(;;){let l=e.current;if(l===void 0)return;let i=h(l);if(ke(i,t)){z(e);return}n.push(i),z(e)}})(),n}let Gi={elementNode:1,textNode:3,commentNode:8,getChildNodes:Mi,isMarker:ke,isMarkerPrefix:Ne,extractKey:dt,make:_e,peek:Ri,next:z,skipUntilMarker:le,collectUntilMarker:ze},Li=Pi("Hydration-Xote.HydrationMismatch");function at(e){console.warn("[Xote Hydration] "+e)}function Fi(e,t){for(;;){let n=e;switch(n.TAG){case"Element":let r=n.children,l=n.events,i=n.attrs,u=a.createOwner();return a.setOwner(t,u),a.runWithOwner(u,()=>{i.forEach(_=>{let s=_[1],b=_[0];switch(s.TAG){case"Static":return;case"SignalValue":let w=s._0,G=j(()=>{Te.setAttrOrProp(t,b,x(w))},void 0);return a.addDisposer(u,G);case"Compute":let d=s._0,m=j(()=>{Te.setAttrOrProp(t,b,d())},void 0);return a.addDisposer(u,m)}}),l.forEach(_=>{t.addEventListener(_[0],_[1])});let v=_e(t);r.forEach(_=>ue(_,v))});case"Text":return;case"SignalText":let o=n._0,c=a.createOwner();return a.setOwner(t,c),a.runWithOwner(c,()=>{let v=j(()=>{t.textContent=x(o)},void 0);a.addDisposer(c,v)});case"Fragment":let y=_e(t);n._0.forEach(v=>ue(v,y));return;case"SignalFragment":let C=n._0,B=a.createOwner();return a.setOwner(t,B),a.runWithOwner(B,()=>{let v=j(()=>{let _=x(C);Array.from(t.childNodes||[]).forEach(b=>a.disposeOwner(Y(a.getOwner(b),a.createOwner()))),t.innerHTML="",_.forEach(b=>{let w=ne.render(b);t.appendChild(w)})},void 0);a.addDisposer(B,v)});case"LazyComponent":let I=a.createOwner(),M=a.runWithOwner(I,n._0);a.setOwner(t,I),e=M;continue;case"KeyedList":let k=n.renderItem,q=n.keyFn,W=n.signal,V=a.createOwner();a.setOwner(t,V);let R={},U=_e(t);return le(U,"kl"),(()=>{for(;;){let v=U.current;if(v===void 0)return;let _=h(v);if(!Ne(_,"k:"))if(ke(_,"/kl")){z(U);return}else return;let s=Y(dt(_),"");z(U);let w=ze(U,"/k").find(G=>G.nodeType===1);if(w!==void 0){let G=H(W),d=Y(G.find(m=>q(m)===s),{});R[s]={key:s,item:d,element:h(w)}}}})(),a.runWithOwner(V,()=>{let v=document.createComment(" keyed-list-start "),_=document.createComment(" keyed-list-end "),s=t.firstChild;s==null?t.appendChild(v):t.insertBefore(v,s),t.appendChild(_);let b=()=>{let G=x(W),d={};G.forEach(p=>{d[q(p)]=p});let m=[];Object.keys(R).forEach(p=>{if(d[p]===void 0){m.push(p);return}}),m.forEach(p=>{let S=R[p];if(S!==void 0){ne.disposeElement(S.element),S.element.remove(),Ue(R,p);return}});let $=[],O={};G.forEach(p=>{let S=q(p),g=R[S];if(g!==void 0){if(g.item!==p){O[S]=!0;let ct=k(p),Ie=ne.render(ct),Ke={key:S,item:p,element:Ie};$.push(Ke),R[S]=Ke;return}$.push(g);return}let T=k(p),Ee=ne.render(T),Be={key:S,item:p,element:Ee};$.push(Be),R[S]=Be});let L={contents:v.nextSibling};$.forEach(p=>{let S=L.contents;if(S==null){t.insertBefore(p.element,_);return}if(S===_){t.insertBefore(p.element,_);return}if(S===p.element){L.contents=S.nextSibling;return}Y(O[p.key],!1)?(ne.disposeElement(S),t.replaceChild(p.element,S),L.contents=p.element.nextSibling):(t.insertBefore(p.element,S),L.contents=p.element.nextSibling)})},w=j(()=>{b()},void 0);a.addDisposer(V,w)})}}}function ue(e,t){switch(e.TAG){case"Element":let n=e.children,r=e.events,l=e.attrs,i=z(t);if(i===void 0)return at("Missing DOM element for Element node");let u=h(i),o=a.createOwner();return a.setOwner(u,o),a.runWithOwner(o,()=>{l.forEach(b=>{let w=b[1],G=b[0];switch(w.TAG){case"Static":return;case"SignalValue":let d=w._0,m=j(()=>{Te.setAttrOrProp(u,G,x(d))},void 0);return a.addDisposer(o,m);case"Compute":let $=w._0,O=j(()=>{Te.setAttrOrProp(u,G,$())},void 0);return a.addDisposer(o,O)}}),r.forEach(b=>{u.addEventListener(b[0],b[1])});let s=_e(u);n.forEach(b=>ue(b,s))});case"Text":z(t);return;case"SignalText":let c=e._0;le(t,"$");let y=z(t);if(y===void 0)return at("Missing text node for SignalText");let C=h(y),B=a.createOwner();a.setOwner(C,B),a.runWithOwner(B,()=>{let s=j(()=>{C.textContent=x(c)},void 0);a.addDisposer(B,s)}),le(t,"/$");return;case"Fragment":e._0.forEach(s=>ue(s,t));return;case"SignalFragment":let I=e._0;le(t,"#");let M=ze(t,"/#"),k=document.createElement("div");k.setAttribute("style","display: contents");let q=M[0],W=q!==void 0?q.parentNode:void 0;M.forEach(s=>{k.appendChild(s)});let V=t.current;if(W!==void 0){let s=h(W);V!==void 0?s.insertBefore(k,h(V)):s.appendChild(k)}let R=a.createOwner();return a.setOwner(k,R),a.runWithOwner(R,()=>{let s=j(()=>{let b=x(I);Array.from(k.childNodes||[]).forEach(ne.disposeElement),k.innerHTML="",b.forEach(G=>{let d=ne.render(G);k.appendChild(d)})},void 0);a.addDisposer(R,s)});case"LazyComponent":le(t,"lc");let U=e._0();ue(U,t),le(t,"/lc");return;case"KeyedList":let be=e.keyFn,v=e.signal;return le(t,"kl"),(()=>{for(;;){let s=t.current;if(s===void 0)return;let b=h(s);if(!Ne(b,"k:"))if(ke(b,"/kl")){z(t);return}else return;let w=Y(dt(b),"");z(t);let d=ze(t,"/k").find(m=>m.nodeType===1);if(d!==void 0){let m=H(v),$=Y(m.find(O=>be(O)===w),{});h(d)}}})()}}function Tn(e,t,n){let r=n!==void 0?n:{},l=e(),i=_e(t),u=i.current;u!==void 0&&Ne(h(u),"xote-root:")&&z(i),ue(l,i),window.__XOTE_HYDRATED__=!0;let o=r.onHydrated;if(o!==void 0)return o()}function Ni(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 Tn(e,l,r)}const zi=Object.freeze(Object.defineProperty({__proto__:null,DOM:void 0,DOMWalker:Gi,HydrationMismatch:Li,Reactivity:void 0,hydrate:Tn,hydrateById:Ni,hydrateNode:Fi,hydrateNodeWithWalker:ue,logHydrationWarning:at},Symbol.toStringTag,{value:"Module"}));A.Computed=rr,A.Effect=Wn,A.Html=kr,A.Hydration=zi,A.Node=yr,A.ReactiveProp=Gr,A.Route=Fr,A.Router=qr,A.SSR=ei,A.SSRContext=ri,A.SSRState=ji,A.Signal=er,A.XoteJSX=jr,Object.defineProperty(A,Symbol.toStringTag,{value:"Module"})}));
17
+ </html>`}const wl=Object.freeze(Object.defineProperty({__proto__:null,Attributes:vl,Html:yn,Markers:_l,generateHydrationScript:Cn,renderDocument:Tl,renderNodeToString:de,renderToString:On,renderToStringWithRoot:El},Symbol.toStringTag,{value:"Module"}));let Ve=typeof document>"u",Xe=!Ve;function xl(e){if(Ve)return me(e())}function Dl(e){if(Xe)return me(e())}function Pn(e,t){return Ve?e():t()}const kl=Object.freeze(Object.defineProperty({__proto__:null,isClient:Xe,isServer:Ve,match:Pn,onClient:Dl,onServer:xl},Symbol.toStringTag,{value:"Module"}));function $l(e){if(typeof e=="boolean")return e}function Al(e){if(e===null)return null}function Ol(e){if(typeof e=="string")return e}function Cl(e){if(typeof e=="number")return e}function Pl(e){if(typeof e=="object"&&e!==null&&!Array.isArray(e))return e}function jl(e){if(Array.isArray(e))return e}let ye={bool:$l,$$null:Al,string:Ol,float:Cl,object:Pl,array:jl};function Rl(e){return e}function Ml(e){let t=ye.float(e);if(t!==void 0)return t|0}let Vl={encode:Rl,decode:Ml};function Ll(e){return e}function Gl(e){return ye.float(e)}let Fl={encode:Ll,decode:Gl};function Nl(e){return e}function Bl(e){return ye.string(e)}let zl={encode:Nl,decode:Bl};function Il(e){return e}function Wl(e){return ye.bool(e)}let Kl={encode:Il,decode:Wl};function Hl(e){return{encode:t=>t.map(e.encode),decode:t=>{let n=ye.array(t);if(n===void 0)return;let r=ln(n,e.decode);if(r.length===n.length)return r}}}function ql(e){return{encode:t=>t!==void 0?e.encode(m(t)):null,decode:t=>lt(ye.$$null(t))?me(void 0):kr(e.decode(t),n=>me(n))}}function Xl(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),d=t.decode(i);if(o!==void 0&&d!==void 0)return[m(o),m(d)]}}}function Ul(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],d=l[2],s=e.decode(i),u=t.decode(o),p=n.decode(d);if(s!==void 0&&u!==void 0&&p!==void 0)return[m(s),m(u),m(p)]}}}function Yl(e){return{encode:t=>{let n={};return Object.entries(t).forEach(r=>{n[r[0]]=e.encode(r[1])}),n},decode:t=>{let n=ye.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]]=m(o):l.contents=!1}),l.contents)return r}}}function Jl(e,t){return{encode:e,decode:t}}let Ql={int:Vl,float:Fl,string:zl,bool:Kl,array:Hl,option:ql,tuple2:Xl,tuple3:Ul,dict:Yl,make:Jl},Le={};function jn(e,t,n){if(Ve){Le[e]=n.encode(Q(t));return}}function Zl(){Object.keys(Le).forEach(e=>{nt(Le,e)})}function Rn(e){return e.replaceAll("<\/script>","<\\/script>").replaceAll("<!--","<\\!--")}function ei(e){let t=ie(JSON.stringify(Le),"{}"),n=Rn(t);return"<script"+(e!==void 0?' nonce="'+yn.escape(e)+'"':"")+">window.__XOTE_STATE__="+n+";<\/script>"}function Mn(){return Xe?window.__XOTE_STATE__||{}:{}}function Vn(e,t,n){if(!Xe)return;let l=Mn()[e];if(l===void 0)return;let i=n.decode(l);if(i!==void 0)return he(t,m(i))}function Ln(e,t,n){Pn(()=>jn(e,t,n),()=>Vn(e,t,n))}function ti(e,t,n){let r=tt(t,void 0,void 0);return Ln(e,r,n),r}const ni=Object.freeze(Object.defineProperty({__proto__:null,Codec:Ql,clear:Zl,escapeForScript:Rn,generateScript:ei,getClientState:Mn,make:ti,register:jn,registry:Le,restore:Vn,sync:Ln},Symbol.toStringTag,{value:"Module"}));let gt={};function ri(e){let t=gt[e];if(t!==void 0){let n=t+1|0;return gt[e]=n,e+("/"+n)}return gt[e]=1,e}function li(e){return Array.from(e.childNodes||[])}function Ge(e,t){if(e.nodeType!==8)return!1;let n=e.nodeValue;return n==null?!1:n===t}function Ue(e,t){if(e.nodeType!==8)return!1;let n=e.nodeValue;return n==null?!1:n.startsWith(t)}function yt(e){if(e.nodeType!==8)return;let t=e.nodeValue;if(t!=null&&t.startsWith("k:"))return t.slice(2)}function xe(e){return{current:rt(e.firstChild),parent:e}}function ii(e){return e.current}function H(e){let t=e.current;return t!==void 0&&(e.current=rt(m(t).nextSibling)),t}function se(e,t){return(()=>{for(;;){let r=e.current;if(r===void 0)return;let l=m(r);if(Ge(l,t))return H(e),me(l);H(e)}})()}function Ye(e,t){let n=[];return(()=>{for(;;){let l=e.current;if(l===void 0)return;let i=m(l);if(Ge(i,t)){H(e);return}n.push(i),H(e)}})(),n}let ui={elementNode:1,textNode:3,commentNode:8,getChildNodes:li,isMarker:Ge,isMarkerPrefix:Ue,extractKey:yt,make:xe,peek:ii,next:H,skipUntilMarker:se,collectUntilMarker:Ye},oi=ri("Hydration-Xote.HydrationMismatch");function St(e){console.warn("[Xote Hydration] "+e)}function di(e,t){for(;;){let n=e;switch(n.TAG){case"Element":let r=n.children,l=n.events,i=n.attrs,o=f.createOwner();return f.setOwner(t,o),f.runWithOwner(o,()=>{i.forEach(v=>{let h=v[1],E=v[0];switch(h.TAG){case"Static":return;case"SignalValue":let x=h._0,G=V(()=>{je.setAttrOrProp(t,E,P(x))},void 0);return f.addDisposer(o,G);case"Compute":let a=h._0,g=V(()=>{je.setAttrOrProp(t,E,a())},void 0);return f.addDisposer(o,g)}}),l.forEach(v=>{t.addEventListener(v[0],v[1])});let k=xe(t);r.forEach(v=>ce(v,k))});case"Text":return;case"SignalText":let d=n._0,s=f.createOwner();return f.setOwner(t,s),f.runWithOwner(s,()=>{let k=V(()=>{t.textContent=P(d)},void 0);f.addDisposer(s,k)});case"Fragment":let u=xe(t);n._0.forEach(k=>ce(k,u));return;case"SignalFragment":let p=n._0,w=f.createOwner();return f.setOwner(t,w),f.runWithOwner(w,()=>{let k=V(()=>{let v=P(p);Array.from(t.childNodes||[]).forEach(E=>f.disposeOwner(ie(f.getOwner(E),f.createOwner()))),t.innerHTML="",v.forEach(E=>{let x=ue.render(E);t.appendChild(x)})},void 0);f.addDisposer(w,k)});case"LazyComponent":let R=f.createOwner(),$=f.runWithOwner(R,n._0);f.setOwner(t,R),e=$;continue;case"KeyedList":let A=n.renderItem,ee=n.keyFn,X=n.signal,U=f.createOwner();f.setOwner(t,U);let L={},te=xe(t);return se(te,"kl"),(()=>{for(;;){let k=te.current;if(k===void 0)return;let v=m(k);if(!Ue(v,"k:"))if(Ge(v,"/kl")){H(te);return}else return;let h=ie(yt(v),"");H(te);let x=Ye(te,"/k").find(G=>G.nodeType===1);if(x!==void 0){let G=Q(X),a=ie(G.find(g=>ee(g)===h),{});L[h]={key:h,item:a,element:m(x)}}}})(),f.runWithOwner(U,()=>{let k=document.createComment(" keyed-list-start "),v=document.createComment(" keyed-list-end "),h=t.firstChild;h==null?t.appendChild(k):t.insertBefore(k,h),t.appendChild(v);let E=()=>{let G=P(X),a={};G.forEach(y=>{a[ee(y)]=y});let g=[];Object.keys(L).forEach(y=>{if(a[y]===void 0){g.push(y);return}}),g.forEach(y=>{let _=L[y];if(_!==void 0){ue.disposeElement(_.element),_.element.remove(),nt(L,y);return}});let O=[],j={};G.forEach(y=>{let _=ee(y),S=L[_];if(S!==void 0){if(S.item!==y){j[_]=!0;let bt=A(y),Qe=ue.render(bt),Ze={key:_,item:y,element:Qe};O.push(Ze),L[_]=Ze;return}O.push(S);return}let D=A(y),ke=ue.render(D),Je={key:_,item:y,element:ke};O.push(Je),L[_]=Je});let F={contents:k.nextSibling};O.forEach(y=>{let _=F.contents;if(_==null){t.insertBefore(y.element,v);return}if(_===v){t.insertBefore(y.element,v);return}if(_===y.element){F.contents=_.nextSibling;return}ie(j[y.key],!1)?(ue.disposeElement(_),t.replaceChild(y.element,_),F.contents=y.element.nextSibling):(t.insertBefore(y.element,_),F.contents=y.element.nextSibling)})},x=V(()=>{E()},void 0);f.addDisposer(U,x)})}}}function ce(e,t){switch(e.TAG){case"Element":let n=e.children,r=e.events,l=e.attrs,i=H(t);if(i===void 0)return St("Missing DOM element for Element node");let o=m(i),d=f.createOwner();return f.setOwner(o,d),f.runWithOwner(d,()=>{l.forEach(E=>{let x=E[1],G=E[0];switch(x.TAG){case"Static":return;case"SignalValue":let a=x._0,g=V(()=>{je.setAttrOrProp(o,G,P(a))},void 0);return f.addDisposer(d,g);case"Compute":let O=x._0,j=V(()=>{je.setAttrOrProp(o,G,O())},void 0);return f.addDisposer(d,j)}}),r.forEach(E=>{o.addEventListener(E[0],E[1])});let h=xe(o);n.forEach(E=>ce(E,h))});case"Text":H(t);return;case"SignalText":let s=e._0;se(t,"$");let u=H(t);if(u===void 0)return St("Missing text node for SignalText");let p=m(u),w=f.createOwner();f.setOwner(p,w),f.runWithOwner(w,()=>{let h=V(()=>{p.textContent=P(s)},void 0);f.addDisposer(w,h)}),se(t,"/$");return;case"Fragment":e._0.forEach(h=>ce(h,t));return;case"SignalFragment":let R=e._0;se(t,"#");let $=Ye(t,"/#"),A=document.createElement("div");A.setAttribute("style","display: contents");let ee=$[0],X=ee!==void 0?ee.parentNode:void 0;$.forEach(h=>{A.appendChild(h)});let U=t.current;if(X!==void 0){let h=m(X);U!==void 0?h.insertBefore(A,m(U)):h.appendChild(A)}let L=f.createOwner();return f.setOwner(A,L),f.runWithOwner(L,()=>{let h=V(()=>{let E=P(R);Array.from(A.childNodes||[]).forEach(ue.disposeElement),A.innerHTML="",E.forEach(G=>{let a=ue.render(G);A.appendChild(a)})},void 0);f.addDisposer(L,h)});case"LazyComponent":se(t,"lc");let te=e._0();ce(te,t),se(t,"/lc");return;case"KeyedList":let De=e.keyFn,k=e.signal;return se(t,"kl"),(()=>{for(;;){let h=t.current;if(h===void 0)return;let E=m(h);if(!Ue(E,"k:"))if(Ge(E,"/kl")){H(t);return}else return;let x=ie(yt(E),"");H(t);let a=Ye(t,"/k").find(g=>g.nodeType===1);if(a!==void 0){let g=Q(k),O=ie(g.find(j=>De(j)===x),{});m(a)}}})()}}function Gn(e,t,n){let r=n!==void 0?n:{},l=e(),i=xe(t),o=i.current;o!==void 0&&Ue(m(o),"xote-root:")&&H(i),ce(l,i),window.__XOTE_HYDRATED__=!0;let d=r.onHydrated;if(d!==void 0)return d()}function si(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)}const ci=Object.freeze(Object.defineProperty({__proto__:null,DOM:void 0,DOMWalker:ui,HydrationMismatch:oi,Reactivity:void 0,hydrate:Gn,hydrateById:si,hydrateNode:di,hydrateNodeWithWalker:ce,logHydrationWarning:St},Symbol.toStringTag,{value:"Module"}));C.Computed=Dr,C.Effect=cr,C.Html=Qr,C.Hydration=ci,C.Node=Br,C.ReactiveProp=ul,C.Route=dl,C.Router=Sl,C.SSR=wl,C.SSRContext=kl,C.SSRState=ni,C.Signal=vr,C.XoteJSX=nl,Object.defineProperty(C,Symbol.toStringTag,{value:"Module"})}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "xote",
3
- "version": "6.0.1",
3
+ "version": "6.1.1",
4
4
  "repository": {
5
5
  "url": "https://github.com/brnrdog/xote"
6
6
  },
@@ -28,6 +28,7 @@
28
28
  "res:build": "rescript",
29
29
  "res:clean": "rescript clean",
30
30
  "res:dev": "rescript -w",
31
+ "format": "rescript format",
31
32
  "dev": "vite",
32
33
  "build": "vite build",
33
34
  "preview": "vite preview",
@@ -83,6 +84,6 @@
83
84
  "zekr": "^1.7.0"
84
85
  },
85
86
  "dependencies": {
86
- "rescript-signals": "^2.1.0"
87
+ "rescript-signals": "^3.1.0"
87
88
  }
88
89
  }
@@ -2,11 +2,17 @@
2
2
 
3
3
  import * as Computed$Signals from "rescript-signals/src/signals/Computed.res.mjs";
4
4
 
5
+ let makeWithoutEquals = Computed$Signals.makeWithoutEquals;
6
+
7
+ let makeWithEquals = Computed$Signals.makeWithEquals;
8
+
5
9
  let make = Computed$Signals.make;
6
10
 
7
11
  let dispose = Computed$Signals.dispose;
8
12
 
9
13
  export {
14
+ makeWithoutEquals,
15
+ makeWithEquals,
10
16
  make,
11
17
  dispose,
12
18
  }
package/src/Hydration.res CHANGED
@@ -1,4 +1,3 @@
1
-
2
1
  module DOM = Node.DOM
3
2
  module Reactivity = Node.Reactivity
4
3
 
package/src/Node.res CHANGED
@@ -1,4 +1,3 @@
1
-
2
1
  /* ============================================================================
3
2
  * DOM Bindings
4
3
  * ============================================================================ */
@@ -89,7 +88,17 @@ module DOM = {
89
88
  | "checked" => setChecked(el, value == "true")
90
89
  | "disabled" => setDisabled(el, value == "true")
91
90
  /* Boolean attributes that should be added/removed based on value */
92
- | "required" | "readonly" | "multiple" | "aria-hidden" | "aria-expanded" | "aria-selected" =>
91
+ | "required"
92
+ | "readonly"
93
+ | "multiple"
94
+ | "aria-hidden"
95
+ | "aria-expanded"
96
+ | "aria-selected"
97
+ | "draggable"
98
+ | "hidden"
99
+ | "contenteditable"
100
+ | "spellcheck"
101
+ | "autofocus" =>
93
102
  if value == "true" {
94
103
  setAttribute(el, key, "")
95
104
  } else {
package/src/Node.res.mjs CHANGED
@@ -70,9 +70,14 @@ function setAttrOrProp(el, key, value) {
70
70
  case "aria-expanded" :
71
71
  case "aria-hidden" :
72
72
  case "aria-selected" :
73
+ case "autofocus" :
74
+ case "contenteditable" :
75
+ case "draggable" :
76
+ case "hidden" :
73
77
  case "multiple" :
74
78
  case "readonly" :
75
79
  case "required" :
80
+ case "spellcheck" :
76
81
  break;
77
82
  case "value" :
78
83
  el.value = value;
@@ -423,7 +428,7 @@ function text(content) {
423
428
  }
424
429
 
425
430
  function signalText(compute) {
426
- let signal = Computed$Xote.make(compute, undefined);
431
+ let signal = Computed$Xote.make(compute, undefined, undefined);
427
432
  return {
428
433
  TAG: "SignalText",
429
434
  _0: signal
@@ -431,7 +436,7 @@ function signalText(compute) {
431
436
  }
432
437
 
433
438
  function signalInt(compute) {
434
- let signal = Computed$Xote.make(() => compute().toString(), undefined);
439
+ let signal = Computed$Xote.make(() => compute().toString(), undefined, undefined);
435
440
  return {
436
441
  TAG: "SignalText",
437
442
  _0: signal
@@ -439,7 +444,7 @@ function signalInt(compute) {
439
444
  }
440
445
 
441
446
  function signalFloat(compute) {
442
- let signal = Computed$Xote.make(() => compute().toString(), undefined);
447
+ let signal = Computed$Xote.make(() => compute().toString(), undefined, undefined);
443
448
  return {
444
449
  TAG: "SignalText",
445
450
  _0: signal
@@ -475,7 +480,7 @@ function signalFragment(signal) {
475
480
  }
476
481
 
477
482
  function list(signal, renderItem) {
478
- let nodesSignal = Computed$Xote.make(() => Signal$Xote.get(signal).map(renderItem), undefined);
483
+ let nodesSignal = Computed$Xote.make(() => Signal$Xote.get(signal).map(renderItem), undefined, undefined);
479
484
  return {
480
485
  TAG: "SignalFragment",
481
486
  _0: nodesSignal
@@ -1,4 +1,3 @@
1
-
2
1
  /* Defines a property that can either be a signal (Reactive) or a static value
3
2
  (Static) */
4
3
  type t<'a> = Reactive(Signal.t<'a>) | Static('a)
package/src/Router.res CHANGED
@@ -253,7 +253,13 @@ let init = (~basePath as basePathArg: string="/", ()): unit => {
253
253
  // Initialize router for server-side rendering
254
254
  // Sets the base path and location signal without accessing browser APIs
255
255
  // pathname: The app-relative path being rendered (e.g., "/docs/core-concepts/signals")
256
- let initSSR = (~basePath as basePathArg: string="/", ~pathname: string="/", ~search: string="", ~hash: string="", ()): unit => {
256
+ let initSSR = (
257
+ ~basePath as basePathArg: string="/",
258
+ ~pathname: string="/",
259
+ ~search: string="",
260
+ ~hash: string="",
261
+ (),
262
+ ): unit => {
257
263
  let state = getGlobalState()
258
264
  let normalizedBasePath = normalizeBasePath(basePathArg)
259
265
  state.basePath := normalizedBasePath
@@ -409,7 +415,7 @@ module Link = {
409
415
  }
410
416
 
411
417
  /* Convert props to attrs array */
412
- let propsToAttrs = (props: props<_, _, _, _, _>): array<(string, Node.attrValue)> => {
418
+ let propsToAttrs = (props): array<(string, Node.attrValue)> => {
413
419
  let attrs = []
414
420
 
415
421
  switch props.class {
@@ -441,7 +447,7 @@ module Link = {
441
447
  }
442
448
 
443
449
  /* Extract children from props */
444
- let getChildren = (props: props<_, _, _, _, _>): array<Node.node> => {
450
+ let getChildren = (props): array<Node.node> => {
445
451
  switch props.children {
446
452
  | Some(Node.Fragment(children)) => children
447
453
  | Some(child) => [child]
@@ -450,7 +456,7 @@ module Link = {
450
456
  }
451
457
 
452
458
  /* JSX component function */
453
- let make = (props: props<_, _, _, _, _>): Node.node => {
459
+ let make = (props): Node.node => {
454
460
  warnIfNotInitialized("Router.Link")
455
461
 
456
462
  let handleClick = (evt: Dom.event) => {
@@ -475,7 +481,7 @@ module Link = {
475
481
  /* JSX transform functions */
476
482
  let jsx = make
477
483
  let jsxs = make
478
- let jsxKeyed = (props: props<_, _, _, _, _>, ~key: option<string>=?, _: unit) => {
484
+ let jsxKeyed = (props, ~key: option<string>=?, _: unit) => {
479
485
  let _ = key
480
486
  make(props)
481
487
  }
@@ -221,7 +221,7 @@ function route(pattern, render) {
221
221
  } else {
222
222
  return [render(params._0)];
223
223
  }
224
- }, undefined));
224
+ }, undefined, undefined));
225
225
  }
226
226
 
227
227
  function routes(configs) {
@@ -241,7 +241,7 @@ function routes(configs) {
241
241
  } else {
242
242
  return [];
243
243
  }
244
- }, undefined));
244
+ }, undefined, undefined));
245
245
  }
246
246
 
247
247
  function link(to, attrsOpt, childrenOpt, param) {
package/src/SSR.res CHANGED
@@ -1,5 +1,3 @@
1
-
2
-
3
1
  /* ============================================================================
4
2
  * HTML Utilities
5
3
  * ============================================================================ */
@@ -91,7 +89,12 @@ module Attributes = {
91
89
  | "multiple"
92
90
  | "aria-hidden"
93
91
  | "aria-expanded"
94
- | "aria-selected" =>
92
+ | "aria-selected"
93
+ | "draggable"
94
+ | "hidden"
95
+ | "contenteditable"
96
+ | "spellcheck"
97
+ | "autofocus" =>
95
98
  if attrValue == "true" {
96
99
  key
97
100
  } else {
package/src/SSR.res.mjs CHANGED
@@ -87,11 +87,16 @@ function renderAttr(param) {
87
87
  case "aria-expanded" :
88
88
  case "aria-hidden" :
89
89
  case "aria-selected" :
90
+ case "autofocus" :
90
91
  case "checked" :
92
+ case "contenteditable" :
91
93
  case "disabled" :
94
+ case "draggable" :
95
+ case "hidden" :
92
96
  case "multiple" :
93
97
  case "readonly" :
94
98
  case "required" :
99
+ case "spellcheck" :
95
100
  break;
96
101
  default:
97
102
  return key + `="` + escape(attrValue) + `"`;
package/src/SSRState.res CHANGED
@@ -1,4 +1,3 @@
1
-
2
1
  /* ============================================================================
3
2
  * SSR State Serialization
4
3
  *
@@ -2,6 +2,10 @@
2
2
 
3
3
  import * as Signal$Signals from "rescript-signals/src/signals/Signal.res.mjs";
4
4
 
5
+ let defaultEquals = Signal$Signals.defaultEquals;
6
+
7
+ let neverEquals = Signal$Signals.neverEquals;
8
+
5
9
  let make = Signal$Signals.make;
6
10
 
7
11
  let makeForComputed = Signal$Signals.makeForComputed;
@@ -19,6 +23,8 @@ let batch = Signal$Signals.batch;
19
23
  let untrack = Signal$Signals.untrack;
20
24
 
21
25
  export {
26
+ defaultEquals,
27
+ neverEquals,
22
28
  make,
23
29
  makeForComputed,
24
30
  get,