xote 4.5.0 → 4.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/xote.cjs +1 -1
- package/dist/xote.mjs +177 -169
- package/dist/xote.umd.js +1 -1
- package/package.json +1 -1
- package/src/Xote.res +4 -0
- package/src/Xote.res.mjs +4 -0
- package/src/Xote__Component.res +2 -11
- package/src/Xote__Component.res.mjs +6 -11
- package/src/Xote__ReactiveProp.res +11 -0
- package/src/Xote__ReactiveProp.res.mjs +16 -0
package/dist/xote.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});let J={contents:0};function Y(){return J.contents=J.contents+1|0,J.contents}function Pe(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 xe(e){if(e!=null)return Pe(e)}function ce(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 Z(e,t){return e!==void 0?ce(e):t}function De(e,t,n){return e.reduce(n,t)}function Fe(e,t){let n=e.length,r=new Array(n),l=0;for(let u=0;u<n;++u){let s=e[u],c=t(s);c!==void 0&&(r[l]=ce(c),l=l+1|0)}return r.length=l,r}function Ge(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}}let h=new Map,j=new Map,L=new Map,p={contents:void 0},R=new Set,O={contents:!1},v={contents:!1};function ee(e){if(j.get(e)===void 0){j.set(e,new Set);return}}function Le(e,t){let n=j.get(e);if(n!==void 0){n.forEach(t);return}}function Be(e,t){let n=j.get(e);if(n!==void 0){n.add(t);return}}function Ve(e,t){let n=j.get(e);if(n!==void 0){n.delete(t);return}}function ze(e){return Array.from(Z(j.get(e),new Set).values())}function de(e,t){let n=p.contents;p.contents=e;try{let r=t();return p.contents=n,r}catch(r){throw p.contents=n,r}}function We(e){let t=p.contents;p.contents=void 0;try{let n=e();return p.contents=t,n}catch(n){throw p.contents=t,n}}function qe(e){let t=p.contents;return t!==void 0?t===e:!1}function Ke(e){if(!O.contents){O.contents=!0;try{e(),O.contents=!1;return}catch(t){throw O.contents=!1,t}}}function Xe(e,t){ee(t);let n=qe(e),r=h.get(e);if(n&&r!==void 0&&!r.deps.has(t))return r.deps.add(t),Be(t,e)}function P(e){e.deps.forEach(t=>Ve(t,e.id)),e.deps.clear()}function He(e){let t=L.get(e);if(t===void 0)return;L.delete(e);let n=h.get(t);if(n!==void 0){P(n),h.delete(t);return}}function ae(e){return De(e,0,(t,n)=>n>t?n:t)}function Ue(e){let t=[];return e.deps.forEach(n=>Le(n,r=>{if(r===e.id)return;let l=h.get(r);if(l===void 0)return;if(typeof l.kind=="object"){t.push(l.level);return}})),ae(t)+1|0}function Je(e){let t=[];return e.deps.forEach(n=>{let r=L.get(n);if(r===void 0||r===e.id)return;let l=h.get(r);if(l!==void 0){t.push(l.level);return}}),ae(t)+1|0}function W(e){return typeof e.kind=="object"?Je(e):Ue(e)}function Qe(e,t){let n=h.get(e),r=h.get(t);if(n===void 0)return r!==void 0?1:0;if(r===void 0)return-1;let u=typeof n.kind=="object"?0:1,c=typeof r.kind=="object"?0:1,d=u-c|0;return d!==0?d:n.level-r.level|0}function Ye(e){v.contents=!0,P(e),de(e.id,()=>{e.run(),v.contents=!1}),e.level=W(e)}function se(){for(;R.size>0;){let e=Array.from(R.values());R.clear(),e.sort(Qe),e.forEach(t=>{let n=h.get(t);if(n!==void 0)return Ye(n)})}}function fe(e){if(ee(e),ze(e).forEach(t=>{let n=h.get(t);if(n===void 0)return;let r=n.kind;if(typeof r=="object")return n.dirty?void 0:(n.dirty=!0,fe(r.VAL));R.add(t)}),R.size>0)return Ke(se)}function pe(e){let t=L.get(e);if(t===void 0)return;let n=h.get(t);if(n!==void 0&&n.dirty){v.contents=!0,P(n),de(t,()=>{n.run(),n.dirty=!1,v.contents=!1}),n.level=W(n);return}}function Ze(e){let t=O.contents;O.contents=!0;try{let n=e();return t||(O.contents=!1,R.size>0&&se()),n}catch(n){throw t||(O.contents=!1),n}}let et=We,tt=ee;function me(e,t,n){let r=Y();return tt(r),{id:r,value:{contents:e},version:{contents:0},equals:Z(n,(l,u)=>l===u),name:t}}function nt(e){pe(e.id);let t=p.contents;return t!==void 0&&Xe(t,e.id),e.value.contents}function rt(e){return pe(e.id),e.value.contents}function he(e,t){let n;try{n=!e.equals(e.value.contents,t)}catch{n=!0}if(n)return e.value.contents=t,e.version.contents=e.version.contents+1|0,fe(e.id)}function lt(e,t){he(e,t(e.value.contents))}let ut,it,ot=Ze,ct=et;const dt=Object.freeze(Object.defineProperty({__proto__:null,Id:ut,Scheduler:it,batch:ot,get:nt,make:me,peek:rt,set:he,untrack:ct,update:lt},Symbol.toStringTag,{value:"Module"}));function _e(e,t,n,r){return{id:e,kind:t,run:n,deps:new Set,level:0,dirty:!0,name:r}}function at(e,t){let n=Y(),r={contents:void 0},u=_e(n,"Effect",()=>{let d=r.contents;d!==void 0&&d(),r.contents=e()},t);h.set(n,u),v.contents=!0,P(u);let s=p.contents;p.contents=n;try{u.run(),v.contents=!1}catch(d){throw p.contents=s,v.contents=!1,d}return p.contents=s,u.level=W(u),{dispose:()=>{let d=h.get(n);if(d===void 0)return;let x=r.contents;x!==void 0&&x(),P(d),h.delete(n)}}}let st,ft,pt;const mt=Object.freeze(Object.defineProperty({__proto__:null,Id:st,Observer:ft,Scheduler:pt,run:at},Symbol.toStringTag,{value:"Module"}));function ht(e,t){let n=me(void 0,t,void 0),r=Y(),l=()=>{let c=e();n.value.contents=c},u=_e(r,{NAME:"Computed",VAL:n.id},l,void 0);h.set(r,u),v.contents=!0,P(u);let s=p.contents;p.contents=r;try{u.run(),u.dirty=!1,v.contents=!1}catch(c){throw p.contents=s,v.contents=!1,c}return p.contents=s,u.level=W(u),L.set(n.id,r),n}function _t(e){He(e.id)}let gt,St,Et,bt;const vt=Object.freeze(Object.defineProperty({__proto__:null,Id:gt,Observer:Et,Scheduler:bt,Signal:St,dispose:_t,make:ht},Symbol.toStringTag,{value:"Module"}));let o=dt,S=vt,w=mt;function ge(e){return Fe(e.split("/"),t=>{if(t!=="")return t.startsWith(":")?{TAG:"Param",_0:t.slice(1)}:{TAG:"Static",_0:t}})}function Se(e,t){let n=t.split("/").filter(u=>u!=="");if(e.length!==n.length)return"NoMatch";let r={};return e.every((u,s)=>{let c=n[s];return u.TAG==="Static"?c===u._0:(r[u._0]=c,!0)})?{TAG:"Match",_0:r}:"NoMatch"}function te(e,t){return Se(ge(e),t)}const yt=Object.freeze(Object.defineProperty({__proto__:null,match:te,matchPath:Se,parsePattern:ge},Symbol.toStringTag,{value:"Module"}));function wt(e,t){delete e[t]}function C(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 Ot={setAttrOrProp:C},z={contents:void 0};function kt(){return{disposers:[],computeds:[]}}function N(e,t){let n=z.contents;z.contents=e;let r=t();return z.contents=n,r}function M(e,t){e.disposers.push(t)}function Ee(e){e.disposers.forEach(t=>t.dispose()),e.computeds.forEach(t=>S.dispose(t))}function I(e,t){e.__xote_owner__=t}function be(e){return xe(e.__xote_owner__)}let Tt={currentOwner:z,createOwner:kt,runWithOwner:N,addDisposer:M,disposeOwner:Ee,setOwner:I,getOwner:be};function ve(e,t){return[e,{TAG:"Static",_0:t}]}function ye(e,t){return[e,{TAG:"SignalValue",_0:t}]}function we(e,t){return[e,{TAG:"Compute",_0:t}]}let At={$$static:ve,signal:ye,computed:we};function G(e){let t=be(e);t!==void 0&&Ee(t),Array.from(e.childNodes||[]).forEach(G)}function y(e){switch(e.TAG){case"Element":let t=e.children,n=e.events,r=e.attrs,l=document.createElement(e.tag),u={disposers:[],computeds:[]};return I(l,u),N(u,()=>{r.forEach(i=>{let m=i[1],g=i[0];switch(m.TAG){case"Static":return C(l,g,m._0);case"SignalValue":let E=m._0;C(l,g,o.peek(E));let b=w.run(()=>{C(l,g,o.get(E))},void 0);return M(u,b);case"Compute":let F=m._0;C(l,g,F());let $=w.run(()=>{C(l,g,F())},void 0);return M(u,$)}}),n.forEach(i=>{l.addEventListener(i[0],i[1])}),t.forEach(i=>{let m=y(i);l.appendChild(m)})}),l;case"Text":return document.createTextNode(e._0);case"SignalText":let s=e._0,c=document.createTextNode(o.peek(s)),d={disposers:[],computeds:[]};return I(c,d),N(d,()=>{let i=w.run(()=>{c.textContent=o.get(s)},void 0);M(d,i)}),c;case"Fragment":let x=document.createDocumentFragment();return e._0.forEach(i=>{let m=y(i);x.appendChild(m)}),x;case"SignalFragment":let $e=e._0,q={disposers:[],computeds:[]},A=document.createElement("div");return A.setAttribute("style","display: contents"),I(A,q),N(q,()=>{let i=w.run(()=>{let m=o.get($e);Array.from(A.childNodes||[]).forEach(G),A.innerHTML="",m.forEach(E=>{let b=y(E);A.appendChild(b)})},void 0);M(q,i)}),A;case"LazyComponent":let re={disposers:[],computeds:[]},Ce=N(re,e._0),le=y(Ce);return I(le,re),le;case"KeyedList":let K=e.renderItem,X=e.keyFn,ue=e.signal,H={disposers:[],computeds:[]},U=document.createComment(" keyed-list-start "),D=document.createComment(" keyed-list-end ");I(U,H);let k={},Ne=()=>{let i=D.parentNode;if(i==null)return;let m=o.get(ue),g={};m.forEach(a=>{g[X(a)]=a});let E=[];Object.keys(k).forEach(a=>{if(g[a]===void 0){E.push(a);return}}),E.forEach(a=>{let f=k[a];if(f!==void 0){G(f.element),f.element.remove(),wt(k,a);return}});let b=[],F={};m.forEach(a=>{let f=X(a),V=k[f];if(V!==void 0){if(V.item!==a){F[f]=!0;let Re=K(a),je=y(Re),oe={key:f,item:a,element:je};b.push(oe),k[f]=oe;return}b.push(V);return}let Me=K(a),Ie=y(Me),ie={key:f,item:a,element:Ie};b.push(ie),k[f]=ie});let $={contents:U.nextSibling};b.forEach(a=>{let f=$.contents;if(f==null){i.insertBefore(a.element,D);return}if(f===D){i.insertBefore(a.element,D);return}if(f===a.element){$.contents=f.nextSibling;return}Z(F[a.key],!1)?(G(f),i.replaceChild(a.element,f),$.contents=a.element.nextSibling):(i.insertBefore(a.element,f),$.contents=a.element.nextSibling)})},B=document.createDocumentFragment();return B.appendChild(U),o.peek(ue).forEach(i=>{let m=X(i),g=K(i),E=y(g),b={key:m,item:i,element:E};k[m]=b,B.appendChild(E)}),B.appendChild(D),N(H,()=>{let i=w.run(()=>{Ne()},void 0);M(H,i)}),B}}let $t={disposeElement:G,render:y};function Ct(e){return{TAG:"Text",_0:e}}function Nt(e){return{TAG:"SignalText",_0:S.make(e,void 0)}}function Mt(e){return{TAG:"Fragment",_0:e}}function ne(e){return{TAG:"SignalFragment",_0:e}}function It(e,t){return{TAG:"SignalFragment",_0:S.make(()=>o.get(e).map(t),void 0)}}function Rt(e,t,n){return{TAG:"KeyedList",signal:e,keyFn:t,renderItem:n}}function _(e,t,n,r,l){let u=t!==void 0?t:[].map(d=>d),s=n!==void 0?n:[].map(d=>d),c=r!==void 0?r:[].map(d=>d);return{TAG:"Element",tag:e,attrs:u,events:s,children:c}}function jt(e,t,n,r){return _("div",e,t,n)}function Pt(e,t,n,r){return _("span",e,t,n)}function xt(e,t,n,r){return _("button",e,t,n)}function Dt(e,t,n){return _("input",e,t,void 0)}function Ft(e,t,n,r){return _("h1",e,t,n)}function Gt(e,t,n,r){return _("h2",e,t,n)}function Lt(e,t,n,r){return _("h3",e,t,n)}function Bt(e,t,n,r){return _("p",e,t,n)}function Vt(e,t,n,r){return _("ul",e,t,n)}function zt(e,t,n,r){return _("li",e,t,n)}function Oe(e,t,n,r){return _("a",e,t,n)}function Wt(e){return e.TAG==="Reactive"?o.get(e._0):e._0}let qt={get:Wt};function ke(e,t){let n=y(e);t.appendChild(n)}function Kt(e,t){let n=document.getElementById(t);if(n==null){console.error("Container element not found: "+t);return}else return ke(e,n)}let Te=ve,Xt=ye,Ht=we;const Ut=Object.freeze(Object.defineProperty({__proto__:null,Attributes:At,DOM:Ot,ReactiveProp:qt,Reactivity:Tt,Render:$t,a:Oe,attr:Te,button:xt,computedAttr:Ht,div:jt,element:_,fragment:Mt,h1:Ft,h2:Gt,h3:Lt,input:Dt,keyedList:Rt,li:zt,list:It,mount:ke,mountById:Kt,p:Bt,signalAttr:Xt,signalFragment:ne,span:Pt,text:Ct,textSignal:Nt,ul:Vt},Symbol.toStringTag,{value:"Module"}));let T=o.make({pathname:"/",search:"",hash:""},void 0,void 0);function Q(){return{pathname:window.location.pathname,search:window.location.search,hash:window.location.hash}}function Jt(){o.set(T,Q());let e=t=>o.set(T,Q());window.addEventListener("popstate",e)}function Ae(e,t,n,r){let l=t!==void 0?t:"",u=n!==void 0?n:"",s={pathname:e,search:l,hash:u},c=e+l+u,d={};window.history.pushState(d,"",c),o.set(T,s)}function Qt(e,t,n,r){let l=t!==void 0?t:"",u=n!==void 0?n:"",s={pathname:e,search:l,hash:u},c=e+l+u,d={};window.history.replaceState(d,"",c),o.set(T,s)}function Yt(e,t){return ne(S.make(()=>{let n=o.get(T),r=te(e,n.pathname);return typeof r!="object"?[]:[t(r._0)]},void 0))}function Zt(e){return ne(S.make(()=>{let t=o.get(T),n=Ge(e,r=>{let l=te(r.pattern,t.pathname);if(typeof l=="object")return r.render(l._0)});return n!==void 0?[n]:[]},void 0))}function en(e,t,n,r){let l=t!==void 0?t:[],u=n!==void 0?n:[],s=c=>{c.preventDefault(),Ae(e,void 0,void 0)};return Oe(l.concat([Te("href",e)]),[["click",s]],u)}let tn,nn;const rn=Object.freeze(Object.defineProperty({__proto__:null,Component:tn,Route:nn,getCurrentLocation:Q,init:Jt,link:en,location:T,push:Ae,replace:Qt,route:Yt,routes:Zt},Symbol.toStringTag,{value:"Module"}));let ln=o.Id,un=o.Scheduler,on=o.make,cn=o.get,dn=o.peek,an=o.set,sn=o.update,fn=o.batch,pn=o.untrack,mn={Id:ln,Scheduler:un,make:on,get:cn,peek:dn,set:an,update:sn,batch:fn,untrack:pn},hn=S.Id,_n=S.Signal,gn=S.Observer,Sn=S.Scheduler,En=S.make,bn=S.dispose,vn={Id:hn,Signal:_n,Observer:gn,Scheduler:Sn,make:En,dispose:bn},yn=w.Id,wn=w.Observer,On=w.Scheduler,kn=w.run,Tn={Id:yn,Observer:wn,Scheduler:On,run:kn},An=Ut,$n=yt,Cn=rn;exports.Component=An;exports.Computed=vn;exports.Effect=Tn;exports.Route=$n;exports.Router=Cn;exports.Signal=mn;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});let J={contents:0};function Y(){return J.contents=J.contents+1|0,J.contents}function Pe(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 xe(e){if(e!=null)return Pe(e)}function ce(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 Z(e,t){return e!==void 0?ce(e):t}function Ge(e,t,n){return e.reduce(n,t)}function De(e,t){let n=e.length,r=new Array(n),l=0;for(let u=0;u<n;++u){let s=e[u],c=t(s);c!==void 0&&(r[l]=ce(c),l=l+1|0)}return r.length=l,r}function Fe(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}}let h=new Map,I=new Map,L=new Map,p={contents:void 0},j=new Set,O={contents:!1},v={contents:!1};function ee(e){if(I.get(e)===void 0){I.set(e,new Set);return}}function Le(e,t){let n=I.get(e);if(n!==void 0){n.forEach(t);return}}function Be(e,t){let n=I.get(e);if(n!==void 0){n.add(t);return}}function ze(e,t){let n=I.get(e);if(n!==void 0){n.delete(t);return}}function Ve(e){return Array.from(Z(I.get(e),new Set).values())}function de(e,t){let n=p.contents;p.contents=e;try{let r=t();return p.contents=n,r}catch(r){throw p.contents=n,r}}function We(e){let t=p.contents;p.contents=void 0;try{let n=e();return p.contents=t,n}catch(n){throw p.contents=t,n}}function Xe(e){let t=p.contents;return t!==void 0?t===e:!1}function qe(e){if(!O.contents){O.contents=!0;try{e(),O.contents=!1;return}catch(t){throw O.contents=!1,t}}}function Ke(e,t){ee(t);let n=Xe(e),r=h.get(e);if(n&&r!==void 0&&!r.deps.has(t))return r.deps.add(t),Be(t,e)}function P(e){e.deps.forEach(t=>ze(t,e.id)),e.deps.clear()}function He(e){let t=L.get(e);if(t===void 0)return;L.delete(e);let n=h.get(t);if(n!==void 0){P(n),h.delete(t);return}}function ae(e){return Ge(e,0,(t,n)=>n>t?n:t)}function Ue(e){let t=[];return e.deps.forEach(n=>Le(n,r=>{if(r===e.id)return;let l=h.get(r);if(l===void 0)return;if(typeof l.kind=="object"){t.push(l.level);return}})),ae(t)+1|0}function Je(e){let t=[];return e.deps.forEach(n=>{let r=L.get(n);if(r===void 0||r===e.id)return;let l=h.get(r);if(l!==void 0){t.push(l.level);return}}),ae(t)+1|0}function W(e){return typeof e.kind=="object"?Je(e):Ue(e)}function Qe(e,t){let n=h.get(e),r=h.get(t);if(n===void 0)return r!==void 0?1:0;if(r===void 0)return-1;let u=typeof n.kind=="object"?0:1,c=typeof r.kind=="object"?0:1,d=u-c|0;return d!==0?d:n.level-r.level|0}function Ye(e){v.contents=!0,P(e),de(e.id,()=>{e.run(),v.contents=!1}),e.level=W(e)}function se(){for(;j.size>0;){let e=Array.from(j.values());j.clear(),e.sort(Qe),e.forEach(t=>{let n=h.get(t);if(n!==void 0)return Ye(n)})}}function fe(e){if(ee(e),Ve(e).forEach(t=>{let n=h.get(t);if(n===void 0)return;let r=n.kind;if(typeof r=="object")return n.dirty?void 0:(n.dirty=!0,fe(r.VAL));j.add(t)}),j.size>0)return qe(se)}function pe(e){let t=L.get(e);if(t===void 0)return;let n=h.get(t);if(n!==void 0&&n.dirty){v.contents=!0,P(n),de(t,()=>{n.run(),n.dirty=!1,v.contents=!1}),n.level=W(n);return}}function Ze(e){let t=O.contents;O.contents=!0;try{let n=e();return t||(O.contents=!1,j.size>0&&se()),n}catch(n){throw t||(O.contents=!1),n}}let et=We,tt=ee;function me(e,t,n){let r=Y();return tt(r),{id:r,value:{contents:e},version:{contents:0},equals:Z(n,(l,u)=>l===u),name:t}}function nt(e){pe(e.id);let t=p.contents;return t!==void 0&&Ke(t,e.id),e.value.contents}function rt(e){return pe(e.id),e.value.contents}function he(e,t){let n;try{n=!e.equals(e.value.contents,t)}catch{n=!0}if(n)return e.value.contents=t,e.version.contents=e.version.contents+1|0,fe(e.id)}function lt(e,t){he(e,t(e.value.contents))}let ut,it,ot=Ze,ct=et;const dt=Object.freeze(Object.defineProperty({__proto__:null,Id:ut,Scheduler:it,batch:ot,get:nt,make:me,peek:rt,set:he,untrack:ct,update:lt},Symbol.toStringTag,{value:"Module"}));function _e(e,t,n,r){return{id:e,kind:t,run:n,deps:new Set,level:0,dirty:!0,name:r}}function at(e,t){let n=Y(),r={contents:void 0},u=_e(n,"Effect",()=>{let d=r.contents;d!==void 0&&d(),r.contents=e()},t);h.set(n,u),v.contents=!0,P(u);let s=p.contents;p.contents=n;try{u.run(),v.contents=!1}catch(d){throw p.contents=s,v.contents=!1,d}return p.contents=s,u.level=W(u),{dispose:()=>{let d=h.get(n);if(d===void 0)return;let x=r.contents;x!==void 0&&x(),P(d),h.delete(n)}}}let st,ft,pt;const mt=Object.freeze(Object.defineProperty({__proto__:null,Id:st,Observer:ft,Scheduler:pt,run:at},Symbol.toStringTag,{value:"Module"}));function ht(e,t){let n=me(void 0,t,void 0),r=Y(),l=()=>{let c=e();n.value.contents=c},u=_e(r,{NAME:"Computed",VAL:n.id},l,void 0);h.set(r,u),v.contents=!0,P(u);let s=p.contents;p.contents=r;try{u.run(),u.dirty=!1,v.contents=!1}catch(c){throw p.contents=s,v.contents=!1,c}return p.contents=s,u.level=W(u),L.set(n.id,r),n}function _t(e){He(e.id)}let gt,St,Et,bt;const vt=Object.freeze(Object.defineProperty({__proto__:null,Id:gt,Observer:Et,Scheduler:bt,Signal:St,dispose:_t,make:ht},Symbol.toStringTag,{value:"Module"}));let o=dt,S=vt,w=mt;function ge(e){return De(e.split("/"),t=>{if(t!=="")return t.startsWith(":")?{TAG:"Param",_0:t.slice(1)}:{TAG:"Static",_0:t}})}function Se(e,t){let n=t.split("/").filter(u=>u!=="");if(e.length!==n.length)return"NoMatch";let r={};return e.every((u,s)=>{let c=n[s];return u.TAG==="Static"?c===u._0:(r[u._0]=c,!0)})?{TAG:"Match",_0:r}:"NoMatch"}function te(e,t){return Se(ge(e),t)}const yt=Object.freeze(Object.defineProperty({__proto__:null,match:te,matchPath:Se,parsePattern:ge},Symbol.toStringTag,{value:"Module"}));function wt(e,t){delete e[t]}function C(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 Ot={setAttrOrProp:C},V={contents:void 0};function kt(){return{disposers:[],computeds:[]}}function N(e,t){let n=V.contents;V.contents=e;let r=t();return V.contents=n,r}function M(e,t){e.disposers.push(t)}function Ee(e){e.disposers.forEach(t=>t.dispose()),e.computeds.forEach(t=>S.dispose(t))}function R(e,t){e.__xote_owner__=t}function be(e){return xe(e.__xote_owner__)}let Tt={currentOwner:V,createOwner:kt,runWithOwner:N,addDisposer:M,disposeOwner:Ee,setOwner:R,getOwner:be};function ve(e,t){return[e,{TAG:"Static",_0:t}]}function ye(e,t){return[e,{TAG:"SignalValue",_0:t}]}function we(e,t){return[e,{TAG:"Compute",_0:t}]}let At={$$static:ve,signal:ye,computed:we};function F(e){let t=be(e);t!==void 0&&Ee(t),Array.from(e.childNodes||[]).forEach(F)}function y(e){switch(e.TAG){case"Element":let t=e.children,n=e.events,r=e.attrs,l=document.createElement(e.tag),u={disposers:[],computeds:[]};return R(l,u),N(u,()=>{r.forEach(i=>{let m=i[1],g=i[0];switch(m.TAG){case"Static":return C(l,g,m._0);case"SignalValue":let E=m._0;C(l,g,o.peek(E));let b=w.run(()=>{C(l,g,o.get(E))},void 0);return M(u,b);case"Compute":let D=m._0;C(l,g,D());let $=w.run(()=>{C(l,g,D())},void 0);return M(u,$)}}),n.forEach(i=>{l.addEventListener(i[0],i[1])}),t.forEach(i=>{let m=y(i);l.appendChild(m)})}),l;case"Text":return document.createTextNode(e._0);case"SignalText":let s=e._0,c=document.createTextNode(o.peek(s)),d={disposers:[],computeds:[]};return R(c,d),N(d,()=>{let i=w.run(()=>{c.textContent=o.get(s)},void 0);M(d,i)}),c;case"Fragment":let x=document.createDocumentFragment();return e._0.forEach(i=>{let m=y(i);x.appendChild(m)}),x;case"SignalFragment":let $e=e._0,X={disposers:[],computeds:[]},A=document.createElement("div");return A.setAttribute("style","display: contents"),R(A,X),N(X,()=>{let i=w.run(()=>{let m=o.get($e);Array.from(A.childNodes||[]).forEach(F),A.innerHTML="",m.forEach(E=>{let b=y(E);A.appendChild(b)})},void 0);M(X,i)}),A;case"LazyComponent":let re={disposers:[],computeds:[]},Ce=N(re,e._0),le=y(Ce);return R(le,re),le;case"KeyedList":let q=e.renderItem,K=e.keyFn,ue=e.signal,H={disposers:[],computeds:[]},U=document.createComment(" keyed-list-start "),G=document.createComment(" keyed-list-end ");R(U,H);let k={},Ne=()=>{let i=G.parentNode;if(i==null)return;let m=o.get(ue),g={};m.forEach(a=>{g[K(a)]=a});let E=[];Object.keys(k).forEach(a=>{if(g[a]===void 0){E.push(a);return}}),E.forEach(a=>{let f=k[a];if(f!==void 0){F(f.element),f.element.remove(),wt(k,a);return}});let b=[],D={};m.forEach(a=>{let f=K(a),z=k[f];if(z!==void 0){if(z.item!==a){D[f]=!0;let je=q(a),Ie=y(je),oe={key:f,item:a,element:Ie};b.push(oe),k[f]=oe;return}b.push(z);return}let Me=q(a),Re=y(Me),ie={key:f,item:a,element:Re};b.push(ie),k[f]=ie});let $={contents:U.nextSibling};b.forEach(a=>{let f=$.contents;if(f==null){i.insertBefore(a.element,G);return}if(f===G){i.insertBefore(a.element,G);return}if(f===a.element){$.contents=f.nextSibling;return}Z(D[a.key],!1)?(F(f),i.replaceChild(a.element,f),$.contents=a.element.nextSibling):(i.insertBefore(a.element,f),$.contents=a.element.nextSibling)})},B=document.createDocumentFragment();return B.appendChild(U),o.peek(ue).forEach(i=>{let m=K(i),g=q(i),E=y(g),b={key:m,item:i,element:E};k[m]=b,B.appendChild(E)}),B.appendChild(G),N(H,()=>{let i=w.run(()=>{Ne()},void 0);M(H,i)}),B}}let $t={disposeElement:F,render:y};function Ct(e){return{TAG:"Text",_0:e}}function Nt(e){return{TAG:"SignalText",_0:S.make(e,void 0)}}function Mt(e){return{TAG:"Fragment",_0:e}}function ne(e){return{TAG:"SignalFragment",_0:e}}function Rt(e,t){return{TAG:"SignalFragment",_0:S.make(()=>o.get(e).map(t),void 0)}}function jt(e,t,n){return{TAG:"KeyedList",signal:e,keyFn:t,renderItem:n}}function _(e,t,n,r,l){let u=t!==void 0?t:[].map(d=>d),s=n!==void 0?n:[].map(d=>d),c=r!==void 0?r:[].map(d=>d);return{TAG:"Element",tag:e,attrs:u,events:s,children:c}}function It(e,t,n,r){return _("div",e,t,n)}function Pt(e,t,n,r){return _("span",e,t,n)}function xt(e,t,n,r){return _("button",e,t,n)}function Gt(e,t,n){return _("input",e,t,void 0)}function Dt(e,t,n,r){return _("h1",e,t,n)}function Ft(e,t,n,r){return _("h2",e,t,n)}function Lt(e,t,n,r){return _("h3",e,t,n)}function Bt(e,t,n,r){return _("p",e,t,n)}function zt(e,t,n,r){return _("ul",e,t,n)}function Vt(e,t,n,r){return _("li",e,t,n)}function Oe(e,t,n,r){return _("a",e,t,n)}function Wt(){return{TAG:"Text",_0:""}}function ke(e,t){let n=y(e);t.appendChild(n)}function Xt(e,t){let n=document.getElementById(t);if(n==null){console.error("Container element not found: "+t);return}else return ke(e,n)}let Te=ve,qt=ye,Kt=we;const Ht=Object.freeze(Object.defineProperty({__proto__:null,$$null:Wt,Attributes:At,DOM:Ot,Reactivity:Tt,Render:$t,a:Oe,attr:Te,button:xt,computedAttr:Kt,div:It,element:_,fragment:Mt,h1:Dt,h2:Ft,h3:Lt,input:Gt,keyedList:jt,li:Vt,list:Rt,mount:ke,mountById:Xt,p:Bt,signalAttr:qt,signalFragment:ne,span:Pt,text:Ct,textSignal:Nt,ul:zt},Symbol.toStringTag,{value:"Module"}));let T=o.make({pathname:"/",search:"",hash:""},void 0,void 0);function Q(){return{pathname:window.location.pathname,search:window.location.search,hash:window.location.hash}}function Ut(){o.set(T,Q());let e=t=>o.set(T,Q());window.addEventListener("popstate",e)}function Ae(e,t,n,r){let l=t!==void 0?t:"",u=n!==void 0?n:"",s={pathname:e,search:l,hash:u},c=e+l+u,d={};window.history.pushState(d,"",c),o.set(T,s)}function Jt(e,t,n,r){let l=t!==void 0?t:"",u=n!==void 0?n:"",s={pathname:e,search:l,hash:u},c=e+l+u,d={};window.history.replaceState(d,"",c),o.set(T,s)}function Qt(e,t){return ne(S.make(()=>{let n=o.get(T),r=te(e,n.pathname);return typeof r!="object"?[]:[t(r._0)]},void 0))}function Yt(e){return ne(S.make(()=>{let t=o.get(T),n=Fe(e,r=>{let l=te(r.pattern,t.pathname);if(typeof l=="object")return r.render(l._0)});return n!==void 0?[n]:[]},void 0))}function Zt(e,t,n,r){let l=t!==void 0?t:[],u=n!==void 0?n:[],s=c=>{c.preventDefault(),Ae(e,void 0,void 0)};return Oe(l.concat([Te("href",e)]),[["click",s]],u)}let en,tn;const nn=Object.freeze(Object.defineProperty({__proto__:null,Component:en,Route:tn,getCurrentLocation:Q,init:Ut,link:Zt,location:T,push:Ae,replace:Jt,route:Qt,routes:Yt},Symbol.toStringTag,{value:"Module"}));function rn(e){return e.TAG==="Reactive"?o.get(e._0):e._0}const ln=Object.freeze(Object.defineProperty({__proto__:null,get:rn},Symbol.toStringTag,{value:"Module"}));let un=o.Id,on=o.Scheduler,cn=o.make,dn=o.get,an=o.peek,sn=o.set,fn=o.update,pn=o.batch,mn=o.untrack,hn={Id:un,Scheduler:on,make:cn,get:dn,peek:an,set:sn,update:fn,batch:pn,untrack:mn},_n=S.Id,gn=S.Signal,Sn=S.Observer,En=S.Scheduler,bn=S.make,vn=S.dispose,yn={Id:_n,Signal:gn,Observer:Sn,Scheduler:En,make:bn,dispose:vn},wn=w.Id,On=w.Observer,kn=w.Scheduler,Tn=w.run,An={Id:wn,Observer:On,Scheduler:kn,run:Tn},$n=Ht,Cn=yt,Nn=nn,Mn=ln;exports.Component=$n;exports.Computed=yn;exports.Effect=An;exports.ReactiveProp=Mn;exports.Route=Cn;exports.Router=Nn;exports.Signal=hn;
|
package/dist/xote.mjs
CHANGED
|
@@ -4,16 +4,16 @@ let J = {
|
|
|
4
4
|
function Y() {
|
|
5
5
|
return J.contents = J.contents + 1 | 0, J.contents;
|
|
6
6
|
}
|
|
7
|
-
function
|
|
7
|
+
function Re(e) {
|
|
8
8
|
return e === void 0 ? {
|
|
9
9
|
BS_PRIVATE_NESTED_SOME_NONE: 0
|
|
10
10
|
} : e !== null && e.BS_PRIVATE_NESTED_SOME_NONE !== void 0 ? {
|
|
11
11
|
BS_PRIVATE_NESTED_SOME_NONE: e.BS_PRIVATE_NESTED_SOME_NONE + 1 | 0
|
|
12
12
|
} : e;
|
|
13
13
|
}
|
|
14
|
-
function
|
|
14
|
+
function xe(e) {
|
|
15
15
|
if (e != null)
|
|
16
|
-
return
|
|
16
|
+
return Re(e);
|
|
17
17
|
}
|
|
18
18
|
function ce(e) {
|
|
19
19
|
if (e === null || e.BS_PRIVATE_NESTED_SOME_NONE === void 0)
|
|
@@ -27,10 +27,10 @@ function ce(e) {
|
|
|
27
27
|
function Z(e, t) {
|
|
28
28
|
return e !== void 0 ? ce(e) : t;
|
|
29
29
|
}
|
|
30
|
-
function
|
|
30
|
+
function Ge(e, t, n) {
|
|
31
31
|
return e.reduce(n, t);
|
|
32
32
|
}
|
|
33
|
-
function
|
|
33
|
+
function De(e, t) {
|
|
34
34
|
let n = e.length, r = new Array(n), l = 0;
|
|
35
35
|
for (let u = 0; u < n; ++u) {
|
|
36
36
|
let s = e[u], c = t(s);
|
|
@@ -38,7 +38,7 @@ function Fe(e, t) {
|
|
|
38
38
|
}
|
|
39
39
|
return r.length = l, r;
|
|
40
40
|
}
|
|
41
|
-
function
|
|
41
|
+
function Fe(e, t) {
|
|
42
42
|
let n = 0;
|
|
43
43
|
for (; ; ) {
|
|
44
44
|
let r = n;
|
|
@@ -50,42 +50,42 @@ function Ge(e, t) {
|
|
|
50
50
|
n = r + 1 | 0;
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
|
-
let h = /* @__PURE__ */ new Map(),
|
|
53
|
+
let h = /* @__PURE__ */ new Map(), P = /* @__PURE__ */ new Map(), L = /* @__PURE__ */ new Map(), p = {
|
|
54
54
|
contents: void 0
|
|
55
|
-
}, j = /* @__PURE__ */ new Set(),
|
|
55
|
+
}, j = /* @__PURE__ */ new Set(), O = {
|
|
56
56
|
contents: !1
|
|
57
57
|
}, v = {
|
|
58
58
|
contents: !1
|
|
59
59
|
};
|
|
60
60
|
function ee(e) {
|
|
61
|
-
if (
|
|
62
|
-
|
|
61
|
+
if (P.get(e) === void 0) {
|
|
62
|
+
P.set(e, /* @__PURE__ */ new Set());
|
|
63
63
|
return;
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
function Le(e, t) {
|
|
67
|
-
let n =
|
|
67
|
+
let n = P.get(e);
|
|
68
68
|
if (n !== void 0) {
|
|
69
69
|
n.forEach(t);
|
|
70
70
|
return;
|
|
71
71
|
}
|
|
72
72
|
}
|
|
73
73
|
function Be(e, t) {
|
|
74
|
-
let n =
|
|
74
|
+
let n = P.get(e);
|
|
75
75
|
if (n !== void 0) {
|
|
76
76
|
n.add(t);
|
|
77
77
|
return;
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
|
-
function
|
|
81
|
-
let n =
|
|
80
|
+
function ze(e, t) {
|
|
81
|
+
let n = P.get(e);
|
|
82
82
|
if (n !== void 0) {
|
|
83
83
|
n.delete(t);
|
|
84
84
|
return;
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
|
-
function
|
|
88
|
-
return Array.from(Z(
|
|
87
|
+
function Ve(e) {
|
|
88
|
+
return Array.from(Z(P.get(e), /* @__PURE__ */ new Set()).values());
|
|
89
89
|
}
|
|
90
90
|
function de(e, t) {
|
|
91
91
|
let n = p.contents;
|
|
@@ -107,29 +107,29 @@ function We(e) {
|
|
|
107
107
|
throw p.contents = t, n;
|
|
108
108
|
}
|
|
109
109
|
}
|
|
110
|
-
function
|
|
110
|
+
function Xe(e) {
|
|
111
111
|
let t = p.contents;
|
|
112
112
|
return t !== void 0 ? t === e : !1;
|
|
113
113
|
}
|
|
114
|
-
function
|
|
115
|
-
if (!
|
|
116
|
-
|
|
114
|
+
function qe(e) {
|
|
115
|
+
if (!O.contents) {
|
|
116
|
+
O.contents = !0;
|
|
117
117
|
try {
|
|
118
|
-
e(),
|
|
118
|
+
e(), O.contents = !1;
|
|
119
119
|
return;
|
|
120
120
|
} catch (t) {
|
|
121
|
-
throw
|
|
121
|
+
throw O.contents = !1, t;
|
|
122
122
|
}
|
|
123
123
|
}
|
|
124
124
|
}
|
|
125
|
-
function
|
|
125
|
+
function Ke(e, t) {
|
|
126
126
|
ee(t);
|
|
127
|
-
let n =
|
|
127
|
+
let n = Xe(e), r = h.get(e);
|
|
128
128
|
if (n && r !== void 0 && !r.deps.has(t))
|
|
129
129
|
return r.deps.add(t), Be(t, e);
|
|
130
130
|
}
|
|
131
|
-
function
|
|
132
|
-
e.deps.forEach((t) =>
|
|
131
|
+
function R(e) {
|
|
132
|
+
e.deps.forEach((t) => ze(t, e.id)), e.deps.clear();
|
|
133
133
|
}
|
|
134
134
|
function He(e) {
|
|
135
135
|
let t = L.get(e);
|
|
@@ -138,12 +138,12 @@ function He(e) {
|
|
|
138
138
|
L.delete(e);
|
|
139
139
|
let n = h.get(t);
|
|
140
140
|
if (n !== void 0) {
|
|
141
|
-
|
|
141
|
+
R(n), h.delete(t);
|
|
142
142
|
return;
|
|
143
143
|
}
|
|
144
144
|
}
|
|
145
145
|
function ae(e) {
|
|
146
|
-
return
|
|
146
|
+
return Ge(e, 0, (t, n) => n > t ? n : t);
|
|
147
147
|
}
|
|
148
148
|
function Ue(e) {
|
|
149
149
|
let t = [];
|
|
@@ -185,7 +185,7 @@ function Qe(e, t) {
|
|
|
185
185
|
return d !== 0 ? d : n.level - r.level | 0;
|
|
186
186
|
}
|
|
187
187
|
function Ye(e) {
|
|
188
|
-
v.contents = !0,
|
|
188
|
+
v.contents = !0, R(e), de(e.id, () => {
|
|
189
189
|
e.run(), v.contents = !1;
|
|
190
190
|
}), e.level = W(e);
|
|
191
191
|
}
|
|
@@ -200,7 +200,7 @@ function se() {
|
|
|
200
200
|
}
|
|
201
201
|
}
|
|
202
202
|
function fe(e) {
|
|
203
|
-
if (ee(e),
|
|
203
|
+
if (ee(e), Ve(e).forEach((t) => {
|
|
204
204
|
let n = h.get(t);
|
|
205
205
|
if (n === void 0)
|
|
206
206
|
return;
|
|
@@ -209,7 +209,7 @@ function fe(e) {
|
|
|
209
209
|
return n.dirty ? void 0 : (n.dirty = !0, fe(r.VAL));
|
|
210
210
|
j.add(t);
|
|
211
211
|
}), j.size > 0)
|
|
212
|
-
return
|
|
212
|
+
return qe(se);
|
|
213
213
|
}
|
|
214
214
|
function pe(e) {
|
|
215
215
|
let t = L.get(e);
|
|
@@ -217,20 +217,20 @@ function pe(e) {
|
|
|
217
217
|
return;
|
|
218
218
|
let n = h.get(t);
|
|
219
219
|
if (n !== void 0 && n.dirty) {
|
|
220
|
-
v.contents = !0,
|
|
220
|
+
v.contents = !0, R(n), de(t, () => {
|
|
221
221
|
n.run(), n.dirty = !1, v.contents = !1;
|
|
222
222
|
}), n.level = W(n);
|
|
223
223
|
return;
|
|
224
224
|
}
|
|
225
225
|
}
|
|
226
226
|
function Ze(e) {
|
|
227
|
-
let t =
|
|
228
|
-
|
|
227
|
+
let t = O.contents;
|
|
228
|
+
O.contents = !0;
|
|
229
229
|
try {
|
|
230
230
|
let n = e();
|
|
231
|
-
return t || (
|
|
231
|
+
return t || (O.contents = !1, j.size > 0 && se()), n;
|
|
232
232
|
} catch (n) {
|
|
233
|
-
throw t || (
|
|
233
|
+
throw t || (O.contents = !1), n;
|
|
234
234
|
}
|
|
235
235
|
}
|
|
236
236
|
let et = We, tt = ee;
|
|
@@ -251,7 +251,7 @@ function me(e, t, n) {
|
|
|
251
251
|
function nt(e) {
|
|
252
252
|
pe(e.id);
|
|
253
253
|
let t = p.contents;
|
|
254
|
-
return t !== void 0 &&
|
|
254
|
+
return t !== void 0 && Ke(t, e.id), e.value.contents;
|
|
255
255
|
}
|
|
256
256
|
function rt(e) {
|
|
257
257
|
return pe(e.id), e.value.contents;
|
|
@@ -300,7 +300,7 @@ function at(e, t) {
|
|
|
300
300
|
let d = r.contents;
|
|
301
301
|
d !== void 0 && d(), r.contents = e();
|
|
302
302
|
}, t);
|
|
303
|
-
h.set(n, u), v.contents = !0,
|
|
303
|
+
h.set(n, u), v.contents = !0, R(u);
|
|
304
304
|
let s = p.contents;
|
|
305
305
|
p.contents = n;
|
|
306
306
|
try {
|
|
@@ -313,8 +313,8 @@ function at(e, t) {
|
|
|
313
313
|
let d = h.get(n);
|
|
314
314
|
if (d === void 0)
|
|
315
315
|
return;
|
|
316
|
-
let
|
|
317
|
-
|
|
316
|
+
let x = r.contents;
|
|
317
|
+
x !== void 0 && x(), R(d), h.delete(n);
|
|
318
318
|
}
|
|
319
319
|
};
|
|
320
320
|
}
|
|
@@ -334,7 +334,7 @@ function ht(e, t) {
|
|
|
334
334
|
NAME: "Computed",
|
|
335
335
|
VAL: n.id
|
|
336
336
|
}, l, void 0);
|
|
337
|
-
h.set(r, u), v.contents = !0,
|
|
337
|
+
h.set(r, u), v.contents = !0, R(u);
|
|
338
338
|
let s = p.contents;
|
|
339
339
|
p.contents = r;
|
|
340
340
|
try {
|
|
@@ -359,7 +359,7 @@ const vt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
|
359
359
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
360
360
|
let o = dt, S = vt, w = mt;
|
|
361
361
|
function ge(e) {
|
|
362
|
-
return
|
|
362
|
+
return De(e.split("/"), (t) => {
|
|
363
363
|
if (t !== "")
|
|
364
364
|
return t.startsWith(":") ? {
|
|
365
365
|
TAG: "Param",
|
|
@@ -419,22 +419,22 @@ function C(e, t, n) {
|
|
|
419
419
|
}
|
|
420
420
|
n === "true" ? e.setAttribute(t, "") : e.removeAttribute(t);
|
|
421
421
|
}
|
|
422
|
-
let
|
|
422
|
+
let Ot = {
|
|
423
423
|
setAttrOrProp: C
|
|
424
|
-
},
|
|
424
|
+
}, V = {
|
|
425
425
|
contents: void 0
|
|
426
426
|
};
|
|
427
|
-
function
|
|
427
|
+
function kt() {
|
|
428
428
|
return {
|
|
429
429
|
disposers: [],
|
|
430
430
|
computeds: []
|
|
431
431
|
};
|
|
432
432
|
}
|
|
433
433
|
function N(e, t) {
|
|
434
|
-
let n =
|
|
435
|
-
|
|
434
|
+
let n = V.contents;
|
|
435
|
+
V.contents = e;
|
|
436
436
|
let r = t();
|
|
437
|
-
return
|
|
437
|
+
return V.contents = n, r;
|
|
438
438
|
}
|
|
439
439
|
function M(e, t) {
|
|
440
440
|
e.disposers.push(t);
|
|
@@ -446,11 +446,11 @@ function I(e, t) {
|
|
|
446
446
|
e.__xote_owner__ = t;
|
|
447
447
|
}
|
|
448
448
|
function be(e) {
|
|
449
|
-
return
|
|
449
|
+
return xe(e.__xote_owner__);
|
|
450
450
|
}
|
|
451
451
|
let Tt = {
|
|
452
|
-
currentOwner:
|
|
453
|
-
createOwner:
|
|
452
|
+
currentOwner: V,
|
|
453
|
+
createOwner: kt,
|
|
454
454
|
runWithOwner: N,
|
|
455
455
|
addDisposer: M,
|
|
456
456
|
disposeOwner: Ee,
|
|
@@ -489,9 +489,9 @@ let At = {
|
|
|
489
489
|
signal: ye,
|
|
490
490
|
computed: we
|
|
491
491
|
};
|
|
492
|
-
function
|
|
492
|
+
function F(e) {
|
|
493
493
|
let t = be(e);
|
|
494
|
-
t !== void 0 && Ee(t), Array.from(e.childNodes || []).forEach(
|
|
494
|
+
t !== void 0 && Ee(t), Array.from(e.childNodes || []).forEach(F);
|
|
495
495
|
}
|
|
496
496
|
function y(e) {
|
|
497
497
|
switch (e.TAG) {
|
|
@@ -514,10 +514,10 @@ function y(e) {
|
|
|
514
514
|
}, void 0);
|
|
515
515
|
return M(u, b);
|
|
516
516
|
case "Compute":
|
|
517
|
-
let
|
|
518
|
-
C(l, g,
|
|
517
|
+
let D = m._0;
|
|
518
|
+
C(l, g, D());
|
|
519
519
|
let $ = w.run(() => {
|
|
520
|
-
C(l, g,
|
|
520
|
+
C(l, g, D());
|
|
521
521
|
}, void 0);
|
|
522
522
|
return M(u, $);
|
|
523
523
|
}
|
|
@@ -542,25 +542,25 @@ function y(e) {
|
|
|
542
542
|
M(d, i);
|
|
543
543
|
}), c;
|
|
544
544
|
case "Fragment":
|
|
545
|
-
let
|
|
545
|
+
let x = document.createDocumentFragment();
|
|
546
546
|
return e._0.forEach((i) => {
|
|
547
547
|
let m = y(i);
|
|
548
|
-
|
|
549
|
-
}),
|
|
548
|
+
x.appendChild(m);
|
|
549
|
+
}), x;
|
|
550
550
|
case "SignalFragment":
|
|
551
|
-
let $e = e._0,
|
|
551
|
+
let $e = e._0, X = {
|
|
552
552
|
disposers: [],
|
|
553
553
|
computeds: []
|
|
554
554
|
}, A = document.createElement("div");
|
|
555
|
-
return A.setAttribute("style", "display: contents"), I(A,
|
|
555
|
+
return A.setAttribute("style", "display: contents"), I(A, X), N(X, () => {
|
|
556
556
|
let i = w.run(() => {
|
|
557
557
|
let m = o.get($e);
|
|
558
|
-
Array.from(A.childNodes || []).forEach(
|
|
558
|
+
Array.from(A.childNodes || []).forEach(F), A.innerHTML = "", m.forEach((E) => {
|
|
559
559
|
let b = y(E);
|
|
560
560
|
A.appendChild(b);
|
|
561
561
|
});
|
|
562
562
|
}, void 0);
|
|
563
|
-
M(
|
|
563
|
+
M(X, i);
|
|
564
564
|
}), A;
|
|
565
565
|
case "LazyComponent":
|
|
566
566
|
let re = {
|
|
@@ -569,55 +569,55 @@ function y(e) {
|
|
|
569
569
|
}, Ce = N(re, e._0), le = y(Ce);
|
|
570
570
|
return I(le, re), le;
|
|
571
571
|
case "KeyedList":
|
|
572
|
-
let
|
|
572
|
+
let q = e.renderItem, K = e.keyFn, ue = e.signal, H = {
|
|
573
573
|
disposers: [],
|
|
574
574
|
computeds: []
|
|
575
|
-
}, U = document.createComment(" keyed-list-start "),
|
|
575
|
+
}, U = document.createComment(" keyed-list-start "), G = document.createComment(" keyed-list-end ");
|
|
576
576
|
I(U, H);
|
|
577
|
-
let
|
|
578
|
-
let i =
|
|
577
|
+
let k = {}, Ne = () => {
|
|
578
|
+
let i = G.parentNode;
|
|
579
579
|
if (i == null)
|
|
580
580
|
return;
|
|
581
581
|
let m = o.get(ue), g = {};
|
|
582
582
|
m.forEach((a) => {
|
|
583
|
-
g[
|
|
583
|
+
g[K(a)] = a;
|
|
584
584
|
});
|
|
585
585
|
let E = [];
|
|
586
|
-
Object.keys(
|
|
586
|
+
Object.keys(k).forEach((a) => {
|
|
587
587
|
if (g[a] === void 0) {
|
|
588
588
|
E.push(a);
|
|
589
589
|
return;
|
|
590
590
|
}
|
|
591
591
|
}), E.forEach((a) => {
|
|
592
|
-
let f =
|
|
592
|
+
let f = k[a];
|
|
593
593
|
if (f !== void 0) {
|
|
594
|
-
|
|
594
|
+
F(f.element), f.element.remove(), wt(k, a);
|
|
595
595
|
return;
|
|
596
596
|
}
|
|
597
597
|
});
|
|
598
|
-
let b = [],
|
|
598
|
+
let b = [], D = {};
|
|
599
599
|
m.forEach((a) => {
|
|
600
|
-
let f =
|
|
601
|
-
if (
|
|
602
|
-
if (
|
|
603
|
-
|
|
604
|
-
let je =
|
|
600
|
+
let f = K(a), z = k[f];
|
|
601
|
+
if (z !== void 0) {
|
|
602
|
+
if (z.item !== a) {
|
|
603
|
+
D[f] = !0;
|
|
604
|
+
let je = q(a), Pe = y(je), oe = {
|
|
605
605
|
key: f,
|
|
606
606
|
item: a,
|
|
607
|
-
element:
|
|
607
|
+
element: Pe
|
|
608
608
|
};
|
|
609
|
-
b.push(oe),
|
|
609
|
+
b.push(oe), k[f] = oe;
|
|
610
610
|
return;
|
|
611
611
|
}
|
|
612
|
-
b.push(
|
|
612
|
+
b.push(z);
|
|
613
613
|
return;
|
|
614
614
|
}
|
|
615
|
-
let Me =
|
|
615
|
+
let Me = q(a), Ie = y(Me), ie = {
|
|
616
616
|
key: f,
|
|
617
617
|
item: a,
|
|
618
618
|
element: Ie
|
|
619
619
|
};
|
|
620
|
-
b.push(ie),
|
|
620
|
+
b.push(ie), k[f] = ie;
|
|
621
621
|
});
|
|
622
622
|
let $ = {
|
|
623
623
|
contents: U.nextSibling
|
|
@@ -625,28 +625,28 @@ function y(e) {
|
|
|
625
625
|
b.forEach((a) => {
|
|
626
626
|
let f = $.contents;
|
|
627
627
|
if (f == null) {
|
|
628
|
-
i.insertBefore(a.element,
|
|
628
|
+
i.insertBefore(a.element, G);
|
|
629
629
|
return;
|
|
630
630
|
}
|
|
631
|
-
if (f ===
|
|
632
|
-
i.insertBefore(a.element,
|
|
631
|
+
if (f === G) {
|
|
632
|
+
i.insertBefore(a.element, G);
|
|
633
633
|
return;
|
|
634
634
|
}
|
|
635
635
|
if (f === a.element) {
|
|
636
636
|
$.contents = f.nextSibling;
|
|
637
637
|
return;
|
|
638
638
|
}
|
|
639
|
-
Z(
|
|
639
|
+
Z(D[a.key], !1) ? (F(f), i.replaceChild(a.element, f), $.contents = a.element.nextSibling) : (i.insertBefore(a.element, f), $.contents = a.element.nextSibling);
|
|
640
640
|
});
|
|
641
641
|
}, B = document.createDocumentFragment();
|
|
642
642
|
return B.appendChild(U), o.peek(ue).forEach((i) => {
|
|
643
|
-
let m =
|
|
643
|
+
let m = K(i), g = q(i), E = y(g), b = {
|
|
644
644
|
key: m,
|
|
645
645
|
item: i,
|
|
646
646
|
element: E
|
|
647
647
|
};
|
|
648
|
-
|
|
649
|
-
}), B.appendChild(
|
|
648
|
+
k[m] = b, B.appendChild(E);
|
|
649
|
+
}), B.appendChild(G), N(H, () => {
|
|
650
650
|
let i = w.run(() => {
|
|
651
651
|
Ne();
|
|
652
652
|
}, void 0);
|
|
@@ -655,7 +655,7 @@ function y(e) {
|
|
|
655
655
|
}
|
|
656
656
|
}
|
|
657
657
|
let $t = {
|
|
658
|
-
disposeElement:
|
|
658
|
+
disposeElement: F,
|
|
659
659
|
render: y
|
|
660
660
|
};
|
|
661
661
|
function Ct(e) {
|
|
@@ -706,22 +706,22 @@ function _(e, t, n, r, l) {
|
|
|
706
706
|
children: c
|
|
707
707
|
};
|
|
708
708
|
}
|
|
709
|
-
function
|
|
709
|
+
function Pt(e, t, n, r) {
|
|
710
710
|
return _("div", e, t, n);
|
|
711
711
|
}
|
|
712
|
-
function
|
|
712
|
+
function Rt(e, t, n, r) {
|
|
713
713
|
return _("span", e, t, n);
|
|
714
714
|
}
|
|
715
|
-
function
|
|
715
|
+
function xt(e, t, n, r) {
|
|
716
716
|
return _("button", e, t, n);
|
|
717
717
|
}
|
|
718
|
-
function
|
|
718
|
+
function Gt(e, t, n) {
|
|
719
719
|
return _("input", e, t, void 0);
|
|
720
720
|
}
|
|
721
|
-
function
|
|
721
|
+
function Dt(e, t, n, r) {
|
|
722
722
|
return _("h1", e, t, n);
|
|
723
723
|
}
|
|
724
|
-
function
|
|
724
|
+
function Ft(e, t, n, r) {
|
|
725
725
|
return _("h2", e, t, n);
|
|
726
726
|
}
|
|
727
727
|
function Lt(e, t, n, r) {
|
|
@@ -730,64 +730,64 @@ function Lt(e, t, n, r) {
|
|
|
730
730
|
function Bt(e, t, n, r) {
|
|
731
731
|
return _("p", e, t, n);
|
|
732
732
|
}
|
|
733
|
-
function
|
|
733
|
+
function zt(e, t, n, r) {
|
|
734
734
|
return _("ul", e, t, n);
|
|
735
735
|
}
|
|
736
|
-
function
|
|
736
|
+
function Vt(e, t, n, r) {
|
|
737
737
|
return _("li", e, t, n);
|
|
738
738
|
}
|
|
739
|
-
function
|
|
739
|
+
function Oe(e, t, n, r) {
|
|
740
740
|
return _("a", e, t, n);
|
|
741
741
|
}
|
|
742
|
-
function Wt(
|
|
743
|
-
return
|
|
742
|
+
function Wt() {
|
|
743
|
+
return {
|
|
744
|
+
TAG: "Text",
|
|
745
|
+
_0: ""
|
|
746
|
+
};
|
|
744
747
|
}
|
|
745
|
-
|
|
746
|
-
get: Wt
|
|
747
|
-
};
|
|
748
|
-
function Oe(e, t) {
|
|
748
|
+
function ke(e, t) {
|
|
749
749
|
let n = y(e);
|
|
750
750
|
t.appendChild(n);
|
|
751
751
|
}
|
|
752
|
-
function
|
|
752
|
+
function Xt(e, t) {
|
|
753
753
|
let n = document.getElementById(t);
|
|
754
754
|
if (n == null) {
|
|
755
755
|
console.error("Container element not found: " + t);
|
|
756
756
|
return;
|
|
757
757
|
} else
|
|
758
|
-
return
|
|
758
|
+
return ke(e, n);
|
|
759
759
|
}
|
|
760
|
-
let Te = ve,
|
|
761
|
-
const
|
|
760
|
+
let Te = ve, qt = ye, Kt = we;
|
|
761
|
+
const Ht = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
762
762
|
__proto__: null,
|
|
763
|
+
$$null: Wt,
|
|
763
764
|
Attributes: At,
|
|
764
|
-
DOM:
|
|
765
|
-
ReactiveProp: qt,
|
|
765
|
+
DOM: Ot,
|
|
766
766
|
Reactivity: Tt,
|
|
767
767
|
Render: $t,
|
|
768
|
-
a:
|
|
768
|
+
a: Oe,
|
|
769
769
|
attr: Te,
|
|
770
|
-
button:
|
|
771
|
-
computedAttr:
|
|
772
|
-
div:
|
|
770
|
+
button: xt,
|
|
771
|
+
computedAttr: Kt,
|
|
772
|
+
div: Pt,
|
|
773
773
|
element: _,
|
|
774
774
|
fragment: Mt,
|
|
775
|
-
h1:
|
|
776
|
-
h2:
|
|
775
|
+
h1: Dt,
|
|
776
|
+
h2: Ft,
|
|
777
777
|
h3: Lt,
|
|
778
|
-
input:
|
|
778
|
+
input: Gt,
|
|
779
779
|
keyedList: jt,
|
|
780
|
-
li:
|
|
780
|
+
li: Vt,
|
|
781
781
|
list: It,
|
|
782
|
-
mount:
|
|
783
|
-
mountById:
|
|
782
|
+
mount: ke,
|
|
783
|
+
mountById: Xt,
|
|
784
784
|
p: Bt,
|
|
785
|
-
signalAttr:
|
|
785
|
+
signalAttr: qt,
|
|
786
786
|
signalFragment: ne,
|
|
787
|
-
span:
|
|
787
|
+
span: Rt,
|
|
788
788
|
text: Ct,
|
|
789
789
|
textSignal: Nt,
|
|
790
|
-
ul:
|
|
790
|
+
ul: zt
|
|
791
791
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
792
792
|
let T = o.make({
|
|
793
793
|
pathname: "/",
|
|
@@ -801,7 +801,7 @@ function Q() {
|
|
|
801
801
|
hash: window.location.hash
|
|
802
802
|
};
|
|
803
803
|
}
|
|
804
|
-
function
|
|
804
|
+
function Ut() {
|
|
805
805
|
o.set(T, Q());
|
|
806
806
|
let e = (t) => o.set(T, Q());
|
|
807
807
|
window.addEventListener("popstate", e);
|
|
@@ -814,7 +814,7 @@ function Ae(e, t, n, r) {
|
|
|
814
814
|
}, c = e + l + u, d = {};
|
|
815
815
|
window.history.pushState(d, "", c), o.set(T, s);
|
|
816
816
|
}
|
|
817
|
-
function
|
|
817
|
+
function Jt(e, t, n, r) {
|
|
818
818
|
let l = t !== void 0 ? t : "", u = n !== void 0 ? n : "", s = {
|
|
819
819
|
pathname: e,
|
|
820
820
|
search: l,
|
|
@@ -822,15 +822,15 @@ function Qt(e, t, n, r) {
|
|
|
822
822
|
}, c = e + l + u, d = {};
|
|
823
823
|
window.history.replaceState(d, "", c), o.set(T, s);
|
|
824
824
|
}
|
|
825
|
-
function
|
|
825
|
+
function Qt(e, t) {
|
|
826
826
|
return ne(S.make(() => {
|
|
827
827
|
let n = o.get(T), r = te(e, n.pathname);
|
|
828
828
|
return typeof r != "object" ? [] : [t(r._0)];
|
|
829
829
|
}, void 0));
|
|
830
830
|
}
|
|
831
|
-
function
|
|
831
|
+
function Yt(e) {
|
|
832
832
|
return ne(S.make(() => {
|
|
833
|
-
let t = o.get(T), n =
|
|
833
|
+
let t = o.get(T), n = Fe(e, (r) => {
|
|
834
834
|
let l = te(r.pattern, t.pathname);
|
|
835
835
|
if (typeof l == "object")
|
|
836
836
|
return r.render(l._0);
|
|
@@ -838,57 +838,65 @@ function Zt(e) {
|
|
|
838
838
|
return n !== void 0 ? [n] : [];
|
|
839
839
|
}, void 0));
|
|
840
840
|
}
|
|
841
|
-
function
|
|
841
|
+
function Zt(e, t, n, r) {
|
|
842
842
|
let l = t !== void 0 ? t : [], u = n !== void 0 ? n : [], s = (c) => {
|
|
843
843
|
c.preventDefault(), Ae(e, void 0, void 0);
|
|
844
844
|
};
|
|
845
|
-
return
|
|
845
|
+
return Oe(l.concat([Te("href", e)]), [[
|
|
846
846
|
"click",
|
|
847
847
|
s
|
|
848
848
|
]], u);
|
|
849
849
|
}
|
|
850
|
-
let
|
|
851
|
-
const
|
|
850
|
+
let en, tn;
|
|
851
|
+
const nn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
852
852
|
__proto__: null,
|
|
853
|
-
Component:
|
|
854
|
-
Route:
|
|
853
|
+
Component: en,
|
|
854
|
+
Route: tn,
|
|
855
855
|
getCurrentLocation: Q,
|
|
856
|
-
init:
|
|
857
|
-
link:
|
|
856
|
+
init: Ut,
|
|
857
|
+
link: Zt,
|
|
858
858
|
location: T,
|
|
859
859
|
push: Ae,
|
|
860
|
-
replace:
|
|
861
|
-
route:
|
|
862
|
-
routes:
|
|
860
|
+
replace: Jt,
|
|
861
|
+
route: Qt,
|
|
862
|
+
routes: Yt
|
|
863
|
+
}, Symbol.toStringTag, { value: "Module" }));
|
|
864
|
+
function rn(e) {
|
|
865
|
+
return e.TAG === "Reactive" ? o.get(e._0) : e._0;
|
|
866
|
+
}
|
|
867
|
+
const ln = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
868
|
+
__proto__: null,
|
|
869
|
+
get: rn
|
|
863
870
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
864
|
-
let
|
|
865
|
-
Id:
|
|
866
|
-
Scheduler:
|
|
867
|
-
make:
|
|
868
|
-
get:
|
|
869
|
-
peek:
|
|
870
|
-
set:
|
|
871
|
-
update:
|
|
872
|
-
batch:
|
|
873
|
-
untrack:
|
|
874
|
-
},
|
|
875
|
-
Id:
|
|
876
|
-
Signal:
|
|
877
|
-
Observer:
|
|
878
|
-
Scheduler:
|
|
879
|
-
make:
|
|
880
|
-
dispose:
|
|
881
|
-
},
|
|
882
|
-
Id:
|
|
883
|
-
Observer:
|
|
884
|
-
Scheduler:
|
|
885
|
-
run:
|
|
886
|
-
},
|
|
871
|
+
let un = o.Id, on = o.Scheduler, cn = o.make, dn = o.get, an = o.peek, sn = o.set, fn = o.update, pn = o.batch, mn = o.untrack, Tn = {
|
|
872
|
+
Id: un,
|
|
873
|
+
Scheduler: on,
|
|
874
|
+
make: cn,
|
|
875
|
+
get: dn,
|
|
876
|
+
peek: an,
|
|
877
|
+
set: sn,
|
|
878
|
+
update: fn,
|
|
879
|
+
batch: pn,
|
|
880
|
+
untrack: mn
|
|
881
|
+
}, hn = S.Id, _n = S.Signal, gn = S.Observer, Sn = S.Scheduler, En = S.make, bn = S.dispose, An = {
|
|
882
|
+
Id: hn,
|
|
883
|
+
Signal: _n,
|
|
884
|
+
Observer: gn,
|
|
885
|
+
Scheduler: Sn,
|
|
886
|
+
make: En,
|
|
887
|
+
dispose: bn
|
|
888
|
+
}, vn = w.Id, yn = w.Observer, wn = w.Scheduler, On = w.run, $n = {
|
|
889
|
+
Id: vn,
|
|
890
|
+
Observer: yn,
|
|
891
|
+
Scheduler: wn,
|
|
892
|
+
run: On
|
|
893
|
+
}, Cn = Ht, Nn = yt, Mn = nn, In = ln;
|
|
887
894
|
export {
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
Nn as
|
|
893
|
-
|
|
895
|
+
Cn as Component,
|
|
896
|
+
An as Computed,
|
|
897
|
+
$n as Effect,
|
|
898
|
+
In as ReactiveProp,
|
|
899
|
+
Nn as Route,
|
|
900
|
+
Mn as Router,
|
|
901
|
+
Tn as Signal
|
|
894
902
|
};
|
package/dist/xote.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(g,T){typeof exports=="object"&&typeof module<"u"?T(exports):typeof define=="function"&&define.amd?define(["exports"],T):(g=typeof globalThis<"u"?globalThis:g||self,T(g.xote={}))})(this,(function(g){"use strict";let T={contents:0};function X(){return T.contents=T.contents+1|0,T.contents}function Ce(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 Ne(e){if(e!=null)return Ce(e)}function le(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 H(e,t){return e!==void 0?le(e):t}function Ie(e,t,n){return e.reduce(n,t)}function Me(e,t){let n=e.length,r=new Array(n),l=0;for(let u=0;u<n;++u){let s=e[u],c=t(s);c!==void 0&&(r[l]=le(c),l=l+1|0)}return r.length=l,r}function Re(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}}let h=new Map,C=new Map,F=new Map,p={contents:void 0},N=new Set,k={contents:!1},b={contents:!1};function U(e){if(C.get(e)===void 0){C.set(e,new Set);return}}function je(e,t){let n=C.get(e);if(n!==void 0){n.forEach(t);return}}function Pe(e,t){let n=C.get(e);if(n!==void 0){n.add(t);return}}function xe(e,t){let n=C.get(e);if(n!==void 0){n.delete(t);return}}function De(e){return Array.from(H(C.get(e),new Set).values())}function ue(e,t){let n=p.contents;p.contents=e;try{let r=t();return p.contents=n,r}catch(r){throw p.contents=n,r}}function Fe(e){let t=p.contents;p.contents=void 0;try{let n=e();return p.contents=t,n}catch(n){throw p.contents=t,n}}function Ge(e){let t=p.contents;return t!==void 0?t===e:!1}function Le(e){if(!k.contents){k.contents=!0;try{e(),k.contents=!1;return}catch(t){throw k.contents=!1,t}}}function Be(e,t){U(t);let n=Ge(e),r=h.get(e);if(n&&r!==void 0&&!r.deps.has(t))return r.deps.add(t),Pe(t,e)}function I(e){e.deps.forEach(t=>xe(t,e.id)),e.deps.clear()}function Ve(e){let t=F.get(e);if(t===void 0)return;F.delete(e);let n=h.get(t);if(n!==void 0){I(n),h.delete(t);return}}function ie(e){return Ie(e,0,(t,n)=>n>t?n:t)}function ze(e){let t=[];return e.deps.forEach(n=>je(n,r=>{if(r===e.id)return;let l=h.get(r);if(l===void 0)return;if(typeof l.kind=="object"){t.push(l.level);return}})),ie(t)+1|0}function We(e){let t=[];return e.deps.forEach(n=>{let r=F.get(n);if(r===void 0||r===e.id)return;let l=h.get(r);if(l!==void 0){t.push(l.level);return}}),ie(t)+1|0}function z(e){return typeof e.kind=="object"?We(e):ze(e)}function qe(e,t){let n=h.get(e),r=h.get(t);if(n===void 0)return r!==void 0?1:0;if(r===void 0)return-1;let u=typeof n.kind=="object"?0:1,c=typeof r.kind=="object"?0:1,d=u-c|0;return d!==0?d:n.level-r.level|0}function Ke(e){b.contents=!0,I(e),ue(e.id,()=>{e.run(),b.contents=!1}),e.level=z(e)}function oe(){for(;N.size>0;){let e=Array.from(N.values());N.clear(),e.sort(qe),e.forEach(t=>{let n=h.get(t);if(n!==void 0)return Ke(n)})}}function ce(e){if(U(e),De(e).forEach(t=>{let n=h.get(t);if(n===void 0)return;let r=n.kind;if(typeof r=="object")return n.dirty?void 0:(n.dirty=!0,ce(r.VAL));N.add(t)}),N.size>0)return Le(oe)}function de(e){let t=F.get(e);if(t===void 0)return;let n=h.get(t);if(n!==void 0&&n.dirty){b.contents=!0,I(n),ue(t,()=>{n.run(),n.dirty=!1,b.contents=!1}),n.level=z(n);return}}function Xe(e){let t=k.contents;k.contents=!0;try{let n=e();return t||(k.contents=!1,N.size>0&&oe()),n}catch(n){throw t||(k.contents=!1),n}}let He=Fe,Ue=U;function ae(e,t,n){let r=X();return Ue(r),{id:r,value:{contents:e},version:{contents:0},equals:H(n,(l,u)=>l===u),name:t}}function Je(e){de(e.id);let t=p.contents;return t!==void 0&&Be(t,e.id),e.value.contents}function Qe(e){return de(e.id),e.value.contents}function se(e,t){let n;try{n=!e.equals(e.value.contents,t)}catch{n=!0}if(n)return e.value.contents=t,e.version.contents=e.version.contents+1|0,ce(e.id)}function Ye(e,t){se(e,t(e.value.contents))}const Ze=Object.freeze(Object.defineProperty({__proto__:null,Id:void 0,Scheduler:void 0,batch:Xe,get:Je,make:ae,peek:Qe,set:se,untrack:He,update:Ye},Symbol.toStringTag,{value:"Module"}));function fe(e,t,n,r){return{id:e,kind:t,run:n,deps:new Set,level:0,dirty:!0,name:r}}function et(e,t){let n=X(),r={contents:void 0},u=fe(n,"Effect",()=>{let d=r.contents;d!==void 0&&d(),r.contents=e()},t);h.set(n,u),b.contents=!0,I(u);let s=p.contents;p.contents=n;try{u.run(),b.contents=!1}catch(d){throw p.contents=s,b.contents=!1,d}return p.contents=s,u.level=z(u),{dispose:()=>{let d=h.get(n);if(d===void 0)return;let L=r.contents;L!==void 0&&L(),I(d),h.delete(n)}}}const tt=Object.freeze(Object.defineProperty({__proto__:null,Id:void 0,Observer:void 0,Scheduler:void 0,run:et},Symbol.toStringTag,{value:"Module"}));function nt(e,t){let n=ae(void 0,t,void 0),r=X(),l=()=>{let c=e();n.value.contents=c},u=fe(r,{NAME:"Computed",VAL:n.id},l,void 0);h.set(r,u),b.contents=!0,I(u);let s=p.contents;p.contents=r;try{u.run(),u.dirty=!1,b.contents=!1}catch(c){throw p.contents=s,b.contents=!1,c}return p.contents=s,u.level=z(u),F.set(n.id,r),n}function rt(e){Ve(e.id)}const lt=Object.freeze(Object.defineProperty({__proto__:null,Id:void 0,Observer:void 0,Scheduler:void 0,Signal:void 0,dispose:rt,make:nt},Symbol.toStringTag,{value:"Module"}));let i=Ze,S=lt,w=tt;function pe(e){return Me(e.split("/"),t=>{if(t!=="")return t.startsWith(":")?{TAG:"Param",_0:t.slice(1)}:{TAG:"Static",_0:t}})}function me(e,t){let n=t.split("/").filter(u=>u!=="");if(e.length!==n.length)return"NoMatch";let r={};return e.every((u,s)=>{let c=n[s];return u.TAG==="Static"?c===u._0:(r[u._0]=c,!0)})?{TAG:"Match",_0:r}:"NoMatch"}function J(e,t){return me(pe(e),t)}const ut=Object.freeze(Object.defineProperty({__proto__:null,match:J,matchPath:me,parsePattern:pe},Symbol.toStringTag,{value:"Module"}));function it(e,t){delete e[t]}function M(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 ot={setAttrOrProp:M},W={contents:void 0};function ct(){return{disposers:[],computeds:[]}}function R(e,t){let n=W.contents;W.contents=e;let r=t();return W.contents=n,r}function j(e,t){e.disposers.push(t)}function he(e){e.disposers.forEach(t=>t.dispose()),e.computeds.forEach(t=>S.dispose(t))}function P(e,t){e.__xote_owner__=t}function _e(e){return Ne(e.__xote_owner__)}let dt={currentOwner:W,createOwner:ct,runWithOwner:R,addDisposer:j,disposeOwner:he,setOwner:P,getOwner:_e};function ge(e,t){return[e,{TAG:"Static",_0:t}]}function Se(e,t){return[e,{TAG:"SignalValue",_0:t}]}function Ee(e,t){return[e,{TAG:"Compute",_0:t}]}let at={$$static:ge,signal:Se,computed:Ee};function G(e){let t=_e(e);t!==void 0&&he(t),Array.from(e.childNodes||[]).forEach(G)}function O(e){switch(e.TAG){case"Element":let t=e.children,n=e.events,r=e.attrs,l=document.createElement(e.tag),u={disposers:[],computeds:[]};return P(l,u),R(u,()=>{r.forEach(o=>{let m=o[1],E=o[0];switch(m.TAG){case"Static":return M(l,E,m._0);case"SignalValue":let v=m._0;M(l,E,i.peek(v));let y=w.run(()=>{M(l,E,i.get(v))},void 0);return j(u,y);case"Compute":let V=m._0;M(l,E,V());let D=w.run(()=>{M(l,E,V())},void 0);return j(u,D)}}),n.forEach(o=>{l.addEventListener(o[0],o[1])}),t.forEach(o=>{let m=O(o);l.appendChild(m)})}),l;case"Text":return document.createTextNode(e._0);case"SignalText":let s=e._0,c=document.createTextNode(i.peek(s)),d={disposers:[],computeds:[]};return P(c,d),R(d,()=>{let o=w.run(()=>{c.textContent=i.get(s)},void 0);j(d,o)}),c;case"Fragment":let L=document.createDocumentFragment();return e._0.forEach(o=>{let m=O(o);L.appendChild(m)}),L;case"SignalFragment":let dn=e._0,Z={disposers:[],computeds:[]},x=document.createElement("div");return x.setAttribute("style","display: contents"),P(x,Z),R(Z,()=>{let o=w.run(()=>{let m=i.get(dn);Array.from(x.childNodes||[]).forEach(G),x.innerHTML="",m.forEach(v=>{let y=O(v);x.appendChild(y)})},void 0);j(Z,o)}),x;case"LazyComponent":let Oe={disposers:[],computeds:[]},an=R(Oe,e._0),ke=O(an);return P(ke,Oe),ke;case"KeyedList":let ee=e.renderItem,te=e.keyFn,Te=e.signal,ne={disposers:[],computeds:[]},re=document.createComment(" keyed-list-start "),B=document.createComment(" keyed-list-end ");P(re,ne);let A={},sn=()=>{let o=B.parentNode;if(o==null)return;let m=i.get(Te),E={};m.forEach(a=>{E[te(a)]=a});let v=[];Object.keys(A).forEach(a=>{if(E[a]===void 0){v.push(a);return}}),v.forEach(a=>{let f=A[a];if(f!==void 0){G(f.element),f.element.remove(),it(A,a);return}});let y=[],V={};m.forEach(a=>{let f=te(a),K=A[f];if(K!==void 0){if(K.item!==a){V[f]=!0;let mn=ee(a),hn=O(mn),Ae={key:f,item:a,element:hn};y.push(Ae),A[f]=Ae;return}y.push(K);return}let fn=ee(a),pn=O(fn),$e={key:f,item:a,element:pn};y.push($e),A[f]=$e});let D={contents:re.nextSibling};y.forEach(a=>{let f=D.contents;if(f==null){o.insertBefore(a.element,B);return}if(f===B){o.insertBefore(a.element,B);return}if(f===a.element){D.contents=f.nextSibling;return}H(V[a.key],!1)?(G(f),o.replaceChild(a.element,f),D.contents=a.element.nextSibling):(o.insertBefore(a.element,f),D.contents=a.element.nextSibling)})},q=document.createDocumentFragment();return q.appendChild(re),i.peek(Te).forEach(o=>{let m=te(o),E=ee(o),v=O(E),y={key:m,item:o,element:v};A[m]=y,q.appendChild(v)}),q.appendChild(B),R(ne,()=>{let o=w.run(()=>{sn()},void 0);j(ne,o)}),q}}let st={disposeElement:G,render:O};function ft(e){return{TAG:"Text",_0:e}}function pt(e){return{TAG:"SignalText",_0:S.make(e,void 0)}}function mt(e){return{TAG:"Fragment",_0:e}}function Q(e){return{TAG:"SignalFragment",_0:e}}function ht(e,t){return{TAG:"SignalFragment",_0:S.make(()=>i.get(e).map(t),void 0)}}function _t(e,t,n){return{TAG:"KeyedList",signal:e,keyFn:t,renderItem:n}}function _(e,t,n,r,l){let u=t!==void 0?t:[].map(d=>d),s=n!==void 0?n:[].map(d=>d),c=r!==void 0?r:[].map(d=>d);return{TAG:"Element",tag:e,attrs:u,events:s,children:c}}function gt(e,t,n,r){return _("div",e,t,n)}function St(e,t,n,r){return _("span",e,t,n)}function Et(e,t,n,r){return _("button",e,t,n)}function bt(e,t,n){return _("input",e,t,void 0)}function vt(e,t,n,r){return _("h1",e,t,n)}function yt(e,t,n,r){return _("h2",e,t,n)}function wt(e,t,n,r){return _("h3",e,t,n)}function Ot(e,t,n,r){return _("p",e,t,n)}function kt(e,t,n,r){return _("ul",e,t,n)}function Tt(e,t,n,r){return _("li",e,t,n)}function be(e,t,n,r){return _("a",e,t,n)}function $t(e){return e.TAG==="Reactive"?i.get(e._0):e._0}let At={get:$t};function ve(e,t){let n=O(e);t.appendChild(n)}function Ct(e,t){let n=document.getElementById(t);if(n==null){console.error("Container element not found: "+t);return}else return ve(e,n)}let ye=ge;const Nt=Object.freeze(Object.defineProperty({__proto__:null,Attributes:at,DOM:ot,ReactiveProp:At,Reactivity:dt,Render:st,a:be,attr:ye,button:Et,computedAttr:Ee,div:gt,element:_,fragment:mt,h1:vt,h2:yt,h3:wt,input:bt,keyedList:_t,li:Tt,list:ht,mount:ve,mountById:Ct,p:Ot,signalAttr:Se,signalFragment:Q,span:St,text:ft,textSignal:pt,ul:kt},Symbol.toStringTag,{value:"Module"}));let $=i.make({pathname:"/",search:"",hash:""},void 0,void 0);function Y(){return{pathname:window.location.pathname,search:window.location.search,hash:window.location.hash}}function It(){i.set($,Y());let e=t=>i.set($,Y());window.addEventListener("popstate",e)}function we(e,t,n,r){let l=t!==void 0?t:"",u=n!==void 0?n:"",s={pathname:e,search:l,hash:u},c=e+l+u,d={};window.history.pushState(d,"",c),i.set($,s)}function Mt(e,t,n,r){let l=t!==void 0?t:"",u=n!==void 0?n:"",s={pathname:e,search:l,hash:u},c=e+l+u,d={};window.history.replaceState(d,"",c),i.set($,s)}function Rt(e,t){return Q(S.make(()=>{let n=i.get($),r=J(e,n.pathname);return typeof r!="object"?[]:[t(r._0)]},void 0))}function jt(e){return Q(S.make(()=>{let t=i.get($),n=Re(e,r=>{let l=J(r.pattern,t.pathname);if(typeof l=="object")return r.render(l._0)});return n!==void 0?[n]:[]},void 0))}function Pt(e,t,n,r){let l=t!==void 0?t:[],u=n!==void 0?n:[],s=c=>{c.preventDefault(),we(e,void 0,void 0)};return be(l.concat([ye("href",e)]),[["click",s]],u)}const xt=Object.freeze(Object.defineProperty({__proto__:null,Component:void 0,Route:void 0,getCurrentLocation:Y,init:It,link:Pt,location:$,push:we,replace:Mt,route:Rt,routes:jt},Symbol.toStringTag,{value:"Module"}));let Dt=i.Id,Ft=i.Scheduler,Gt=i.make,Lt=i.get,Bt=i.peek,Vt=i.set,zt=i.update,Wt=i.batch,qt=i.untrack,Kt={Id:Dt,Scheduler:Ft,make:Gt,get:Lt,peek:Bt,set:Vt,update:zt,batch:Wt,untrack:qt},Xt=S.Id,Ht=S.Signal,Ut=S.Observer,Jt=S.Scheduler,Qt=S.make,Yt=S.dispose,Zt={Id:Xt,Signal:Ht,Observer:Ut,Scheduler:Jt,make:Qt,dispose:Yt},en=w.Id,tn=w.Observer,nn=w.Scheduler,rn=w.run,ln={Id:en,Observer:tn,Scheduler:nn,run:rn},un=Nt,on=ut,cn=xt;g.Component=un,g.Computed=Zt,g.Effect=ln,g.Route=on,g.Router=cn,g.Signal=Kt,Object.defineProperty(g,Symbol.toStringTag,{value:"Module"})}));
|
|
1
|
+
(function(_,T){typeof exports=="object"&&typeof module<"u"?T(exports):typeof define=="function"&&define.amd?define(["exports"],T):(_=typeof globalThis<"u"?globalThis:_||self,T(_.xote={}))})(this,(function(_){"use strict";let T={contents:0};function K(){return T.contents=T.contents+1|0,T.contents}function Ce(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 Ne(e){if(e!=null)return Ce(e)}function le(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 H(e,t){return e!==void 0?le(e):t}function Ie(e,t,n){return e.reduce(n,t)}function Me(e,t){let n=e.length,r=new Array(n),l=0;for(let u=0;u<n;++u){let s=e[u],c=t(s);c!==void 0&&(r[l]=le(c),l=l+1|0)}return r.length=l,r}function Re(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}}let h=new Map,C=new Map,D=new Map,p={contents:void 0},N=new Set,k={contents:!1},b={contents:!1};function U(e){if(C.get(e)===void 0){C.set(e,new Set);return}}function je(e,t){let n=C.get(e);if(n!==void 0){n.forEach(t);return}}function Pe(e,t){let n=C.get(e);if(n!==void 0){n.add(t);return}}function Ge(e,t){let n=C.get(e);if(n!==void 0){n.delete(t);return}}function xe(e){return Array.from(H(C.get(e),new Set).values())}function ue(e,t){let n=p.contents;p.contents=e;try{let r=t();return p.contents=n,r}catch(r){throw p.contents=n,r}}function De(e){let t=p.contents;p.contents=void 0;try{let n=e();return p.contents=t,n}catch(n){throw p.contents=t,n}}function Fe(e){let t=p.contents;return t!==void 0?t===e:!1}function Le(e){if(!k.contents){k.contents=!0;try{e(),k.contents=!1;return}catch(t){throw k.contents=!1,t}}}function Be(e,t){U(t);let n=Fe(e),r=h.get(e);if(n&&r!==void 0&&!r.deps.has(t))return r.deps.add(t),Pe(t,e)}function I(e){e.deps.forEach(t=>Ge(t,e.id)),e.deps.clear()}function ze(e){let t=D.get(e);if(t===void 0)return;D.delete(e);let n=h.get(t);if(n!==void 0){I(n),h.delete(t);return}}function ie(e){return Ie(e,0,(t,n)=>n>t?n:t)}function Ve(e){let t=[];return e.deps.forEach(n=>je(n,r=>{if(r===e.id)return;let l=h.get(r);if(l===void 0)return;if(typeof l.kind=="object"){t.push(l.level);return}})),ie(t)+1|0}function We(e){let t=[];return e.deps.forEach(n=>{let r=D.get(n);if(r===void 0||r===e.id)return;let l=h.get(r);if(l!==void 0){t.push(l.level);return}}),ie(t)+1|0}function V(e){return typeof e.kind=="object"?We(e):Ve(e)}function Xe(e,t){let n=h.get(e),r=h.get(t);if(n===void 0)return r!==void 0?1:0;if(r===void 0)return-1;let u=typeof n.kind=="object"?0:1,c=typeof r.kind=="object"?0:1,d=u-c|0;return d!==0?d:n.level-r.level|0}function qe(e){b.contents=!0,I(e),ue(e.id,()=>{e.run(),b.contents=!1}),e.level=V(e)}function oe(){for(;N.size>0;){let e=Array.from(N.values());N.clear(),e.sort(Xe),e.forEach(t=>{let n=h.get(t);if(n!==void 0)return qe(n)})}}function ce(e){if(U(e),xe(e).forEach(t=>{let n=h.get(t);if(n===void 0)return;let r=n.kind;if(typeof r=="object")return n.dirty?void 0:(n.dirty=!0,ce(r.VAL));N.add(t)}),N.size>0)return Le(oe)}function de(e){let t=D.get(e);if(t===void 0)return;let n=h.get(t);if(n!==void 0&&n.dirty){b.contents=!0,I(n),ue(t,()=>{n.run(),n.dirty=!1,b.contents=!1}),n.level=V(n);return}}function Ke(e){let t=k.contents;k.contents=!0;try{let n=e();return t||(k.contents=!1,N.size>0&&oe()),n}catch(n){throw t||(k.contents=!1),n}}let He=De,Ue=U;function ae(e,t,n){let r=K();return Ue(r),{id:r,value:{contents:e},version:{contents:0},equals:H(n,(l,u)=>l===u),name:t}}function Je(e){de(e.id);let t=p.contents;return t!==void 0&&Be(t,e.id),e.value.contents}function Qe(e){return de(e.id),e.value.contents}function se(e,t){let n;try{n=!e.equals(e.value.contents,t)}catch{n=!0}if(n)return e.value.contents=t,e.version.contents=e.version.contents+1|0,ce(e.id)}function Ye(e,t){se(e,t(e.value.contents))}const Ze=Object.freeze(Object.defineProperty({__proto__:null,Id:void 0,Scheduler:void 0,batch:Ke,get:Je,make:ae,peek:Qe,set:se,untrack:He,update:Ye},Symbol.toStringTag,{value:"Module"}));function fe(e,t,n,r){return{id:e,kind:t,run:n,deps:new Set,level:0,dirty:!0,name:r}}function et(e,t){let n=K(),r={contents:void 0},u=fe(n,"Effect",()=>{let d=r.contents;d!==void 0&&d(),r.contents=e()},t);h.set(n,u),b.contents=!0,I(u);let s=p.contents;p.contents=n;try{u.run(),b.contents=!1}catch(d){throw p.contents=s,b.contents=!1,d}return p.contents=s,u.level=V(u),{dispose:()=>{let d=h.get(n);if(d===void 0)return;let L=r.contents;L!==void 0&&L(),I(d),h.delete(n)}}}const tt=Object.freeze(Object.defineProperty({__proto__:null,Id:void 0,Observer:void 0,Scheduler:void 0,run:et},Symbol.toStringTag,{value:"Module"}));function nt(e,t){let n=ae(void 0,t,void 0),r=K(),l=()=>{let c=e();n.value.contents=c},u=fe(r,{NAME:"Computed",VAL:n.id},l,void 0);h.set(r,u),b.contents=!0,I(u);let s=p.contents;p.contents=r;try{u.run(),u.dirty=!1,b.contents=!1}catch(c){throw p.contents=s,b.contents=!1,c}return p.contents=s,u.level=V(u),D.set(n.id,r),n}function rt(e){ze(e.id)}const lt=Object.freeze(Object.defineProperty({__proto__:null,Id:void 0,Observer:void 0,Scheduler:void 0,Signal:void 0,dispose:rt,make:nt},Symbol.toStringTag,{value:"Module"}));let i=Ze,S=lt,w=tt;function pe(e){return Me(e.split("/"),t=>{if(t!=="")return t.startsWith(":")?{TAG:"Param",_0:t.slice(1)}:{TAG:"Static",_0:t}})}function me(e,t){let n=t.split("/").filter(u=>u!=="");if(e.length!==n.length)return"NoMatch";let r={};return e.every((u,s)=>{let c=n[s];return u.TAG==="Static"?c===u._0:(r[u._0]=c,!0)})?{TAG:"Match",_0:r}:"NoMatch"}function J(e,t){return me(pe(e),t)}const ut=Object.freeze(Object.defineProperty({__proto__:null,match:J,matchPath:me,parsePattern:pe},Symbol.toStringTag,{value:"Module"}));function it(e,t){delete e[t]}function M(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 ot={setAttrOrProp:M},W={contents:void 0};function ct(){return{disposers:[],computeds:[]}}function R(e,t){let n=W.contents;W.contents=e;let r=t();return W.contents=n,r}function j(e,t){e.disposers.push(t)}function he(e){e.disposers.forEach(t=>t.dispose()),e.computeds.forEach(t=>S.dispose(t))}function P(e,t){e.__xote_owner__=t}function _e(e){return Ne(e.__xote_owner__)}let dt={currentOwner:W,createOwner:ct,runWithOwner:R,addDisposer:j,disposeOwner:he,setOwner:P,getOwner:_e};function ge(e,t){return[e,{TAG:"Static",_0:t}]}function Se(e,t){return[e,{TAG:"SignalValue",_0:t}]}function Ee(e,t){return[e,{TAG:"Compute",_0:t}]}let at={$$static:ge,signal:Se,computed:Ee};function F(e){let t=_e(e);t!==void 0&&he(t),Array.from(e.childNodes||[]).forEach(F)}function O(e){switch(e.TAG){case"Element":let t=e.children,n=e.events,r=e.attrs,l=document.createElement(e.tag),u={disposers:[],computeds:[]};return P(l,u),R(u,()=>{r.forEach(o=>{let m=o[1],E=o[0];switch(m.TAG){case"Static":return M(l,E,m._0);case"SignalValue":let v=m._0;M(l,E,i.peek(v));let y=w.run(()=>{M(l,E,i.get(v))},void 0);return j(u,y);case"Compute":let z=m._0;M(l,E,z());let x=w.run(()=>{M(l,E,z())},void 0);return j(u,x)}}),n.forEach(o=>{l.addEventListener(o[0],o[1])}),t.forEach(o=>{let m=O(o);l.appendChild(m)})}),l;case"Text":return document.createTextNode(e._0);case"SignalText":let s=e._0,c=document.createTextNode(i.peek(s)),d={disposers:[],computeds:[]};return P(c,d),R(d,()=>{let o=w.run(()=>{c.textContent=i.get(s)},void 0);j(d,o)}),c;case"Fragment":let L=document.createDocumentFragment();return e._0.forEach(o=>{let m=O(o);L.appendChild(m)}),L;case"SignalFragment":let sn=e._0,Z={disposers:[],computeds:[]},G=document.createElement("div");return G.setAttribute("style","display: contents"),P(G,Z),R(Z,()=>{let o=w.run(()=>{let m=i.get(sn);Array.from(G.childNodes||[]).forEach(F),G.innerHTML="",m.forEach(v=>{let y=O(v);G.appendChild(y)})},void 0);j(Z,o)}),G;case"LazyComponent":let Oe={disposers:[],computeds:[]},fn=R(Oe,e._0),ke=O(fn);return P(ke,Oe),ke;case"KeyedList":let ee=e.renderItem,te=e.keyFn,Te=e.signal,ne={disposers:[],computeds:[]},re=document.createComment(" keyed-list-start "),B=document.createComment(" keyed-list-end ");P(re,ne);let A={},pn=()=>{let o=B.parentNode;if(o==null)return;let m=i.get(Te),E={};m.forEach(a=>{E[te(a)]=a});let v=[];Object.keys(A).forEach(a=>{if(E[a]===void 0){v.push(a);return}}),v.forEach(a=>{let f=A[a];if(f!==void 0){F(f.element),f.element.remove(),it(A,a);return}});let y=[],z={};m.forEach(a=>{let f=te(a),q=A[f];if(q!==void 0){if(q.item!==a){z[f]=!0;let _n=ee(a),gn=O(_n),Ae={key:f,item:a,element:gn};y.push(Ae),A[f]=Ae;return}y.push(q);return}let mn=ee(a),hn=O(mn),$e={key:f,item:a,element:hn};y.push($e),A[f]=$e});let x={contents:re.nextSibling};y.forEach(a=>{let f=x.contents;if(f==null){o.insertBefore(a.element,B);return}if(f===B){o.insertBefore(a.element,B);return}if(f===a.element){x.contents=f.nextSibling;return}H(z[a.key],!1)?(F(f),o.replaceChild(a.element,f),x.contents=a.element.nextSibling):(o.insertBefore(a.element,f),x.contents=a.element.nextSibling)})},X=document.createDocumentFragment();return X.appendChild(re),i.peek(Te).forEach(o=>{let m=te(o),E=ee(o),v=O(E),y={key:m,item:o,element:v};A[m]=y,X.appendChild(v)}),X.appendChild(B),R(ne,()=>{let o=w.run(()=>{pn()},void 0);j(ne,o)}),X}}let st={disposeElement:F,render:O};function ft(e){return{TAG:"Text",_0:e}}function pt(e){return{TAG:"SignalText",_0:S.make(e,void 0)}}function mt(e){return{TAG:"Fragment",_0:e}}function Q(e){return{TAG:"SignalFragment",_0:e}}function ht(e,t){return{TAG:"SignalFragment",_0:S.make(()=>i.get(e).map(t),void 0)}}function _t(e,t,n){return{TAG:"KeyedList",signal:e,keyFn:t,renderItem:n}}function g(e,t,n,r,l){let u=t!==void 0?t:[].map(d=>d),s=n!==void 0?n:[].map(d=>d),c=r!==void 0?r:[].map(d=>d);return{TAG:"Element",tag:e,attrs:u,events:s,children:c}}function gt(e,t,n,r){return g("div",e,t,n)}function St(e,t,n,r){return g("span",e,t,n)}function Et(e,t,n,r){return g("button",e,t,n)}function bt(e,t,n){return g("input",e,t,void 0)}function vt(e,t,n,r){return g("h1",e,t,n)}function yt(e,t,n,r){return g("h2",e,t,n)}function wt(e,t,n,r){return g("h3",e,t,n)}function Ot(e,t,n,r){return g("p",e,t,n)}function kt(e,t,n,r){return g("ul",e,t,n)}function Tt(e,t,n,r){return g("li",e,t,n)}function be(e,t,n,r){return g("a",e,t,n)}function $t(){return{TAG:"Text",_0:""}}function ve(e,t){let n=O(e);t.appendChild(n)}function At(e,t){let n=document.getElementById(t);if(n==null){console.error("Container element not found: "+t);return}else return ve(e,n)}let ye=ge;const Ct=Object.freeze(Object.defineProperty({__proto__:null,$$null:$t,Attributes:at,DOM:ot,Reactivity:dt,Render:st,a:be,attr:ye,button:Et,computedAttr:Ee,div:gt,element:g,fragment:mt,h1:vt,h2:yt,h3:wt,input:bt,keyedList:_t,li:Tt,list:ht,mount:ve,mountById:At,p:Ot,signalAttr:Se,signalFragment:Q,span:St,text:ft,textSignal:pt,ul:kt},Symbol.toStringTag,{value:"Module"}));let $=i.make({pathname:"/",search:"",hash:""},void 0,void 0);function Y(){return{pathname:window.location.pathname,search:window.location.search,hash:window.location.hash}}function Nt(){i.set($,Y());let e=t=>i.set($,Y());window.addEventListener("popstate",e)}function we(e,t,n,r){let l=t!==void 0?t:"",u=n!==void 0?n:"",s={pathname:e,search:l,hash:u},c=e+l+u,d={};window.history.pushState(d,"",c),i.set($,s)}function It(e,t,n,r){let l=t!==void 0?t:"",u=n!==void 0?n:"",s={pathname:e,search:l,hash:u},c=e+l+u,d={};window.history.replaceState(d,"",c),i.set($,s)}function Mt(e,t){return Q(S.make(()=>{let n=i.get($),r=J(e,n.pathname);return typeof r!="object"?[]:[t(r._0)]},void 0))}function Rt(e){return Q(S.make(()=>{let t=i.get($),n=Re(e,r=>{let l=J(r.pattern,t.pathname);if(typeof l=="object")return r.render(l._0)});return n!==void 0?[n]:[]},void 0))}function jt(e,t,n,r){let l=t!==void 0?t:[],u=n!==void 0?n:[],s=c=>{c.preventDefault(),we(e,void 0,void 0)};return be(l.concat([ye("href",e)]),[["click",s]],u)}const Pt=Object.freeze(Object.defineProperty({__proto__:null,Component:void 0,Route:void 0,getCurrentLocation:Y,init:Nt,link:jt,location:$,push:we,replace:It,route:Mt,routes:Rt},Symbol.toStringTag,{value:"Module"}));function Gt(e){return e.TAG==="Reactive"?i.get(e._0):e._0}const xt=Object.freeze(Object.defineProperty({__proto__:null,get:Gt},Symbol.toStringTag,{value:"Module"}));let Dt=i.Id,Ft=i.Scheduler,Lt=i.make,Bt=i.get,zt=i.peek,Vt=i.set,Wt=i.update,Xt=i.batch,qt=i.untrack,Kt={Id:Dt,Scheduler:Ft,make:Lt,get:Bt,peek:zt,set:Vt,update:Wt,batch:Xt,untrack:qt},Ht=S.Id,Ut=S.Signal,Jt=S.Observer,Qt=S.Scheduler,Yt=S.make,Zt=S.dispose,en={Id:Ht,Signal:Ut,Observer:Jt,Scheduler:Qt,make:Yt,dispose:Zt},tn=w.Id,nn=w.Observer,rn=w.Scheduler,ln=w.run,un={Id:tn,Observer:nn,Scheduler:rn,run:ln},on=Ct,cn=ut,dn=Pt,an=xt;_.Component=on,_.Computed=en,_.Effect=un,_.ReactiveProp=an,_.Route=cn,_.Router=dn,_.Signal=Kt,Object.defineProperty(_,Symbol.toStringTag,{value:"Module"})}));
|
package/package.json
CHANGED
package/src/Xote.res
CHANGED
package/src/Xote.res.mjs
CHANGED
|
@@ -4,6 +4,7 @@ import * as Signals from "rescript-signals/src/Signals.res.mjs";
|
|
|
4
4
|
import * as Xote__Route from "./Xote__Route.res.mjs";
|
|
5
5
|
import * as Xote__Router from "./Xote__Router.res.mjs";
|
|
6
6
|
import * as Xote__Component from "./Xote__Component.res.mjs";
|
|
7
|
+
import * as Xote__ReactiveProp from "./Xote__ReactiveProp.res.mjs";
|
|
7
8
|
|
|
8
9
|
let Signal_Id = Signals.Signal.Id;
|
|
9
10
|
|
|
@@ -77,6 +78,8 @@ let Route = Xote__Route;
|
|
|
77
78
|
|
|
78
79
|
let Router = Xote__Router;
|
|
79
80
|
|
|
81
|
+
let ReactiveProp = Xote__ReactiveProp;
|
|
82
|
+
|
|
80
83
|
export {
|
|
81
84
|
Signal,
|
|
82
85
|
Computed,
|
|
@@ -84,5 +87,6 @@ export {
|
|
|
84
87
|
Component,
|
|
85
88
|
Route,
|
|
86
89
|
Router,
|
|
90
|
+
ReactiveProp,
|
|
87
91
|
}
|
|
88
92
|
/* Signals Not a pure module */
|
package/src/Xote__Component.res
CHANGED
|
@@ -501,17 +501,8 @@ let ul = (~attrs=?, ~events=?, ~children=?, ()) => element("ul", ~attrs?, ~event
|
|
|
501
501
|
let li = (~attrs=?, ~events=?, ~children=?, ()) => element("li", ~attrs?, ~events?, ~children?, ())
|
|
502
502
|
let a = (~attrs=?, ~events=?, ~children=?, ()) => element("a", ~attrs?, ~events?, ~children?, ())
|
|
503
503
|
|
|
504
|
-
/*
|
|
505
|
-
(
|
|
506
|
-
module ReactiveProp = {
|
|
507
|
-
type t<'a> = Reactive(Signal.t<'a>) | Static('a)
|
|
508
|
-
|
|
509
|
-
let get = value =>
|
|
510
|
-
switch value {
|
|
511
|
-
| Reactive(signal) => Signal.get(signal)
|
|
512
|
-
| Static(value) => value
|
|
513
|
-
}
|
|
514
|
-
}
|
|
504
|
+
/* Null representation */
|
|
505
|
+
let null = () => text("")
|
|
515
506
|
|
|
516
507
|
/* Mounting */
|
|
517
508
|
let mount = (node: node, container: Dom.element): unit => {
|
|
@@ -464,18 +464,13 @@ function a(attrs, events, children, param) {
|
|
|
464
464
|
return element("a", attrs, events, children, undefined);
|
|
465
465
|
}
|
|
466
466
|
|
|
467
|
-
function
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
}
|
|
467
|
+
function $$null() {
|
|
468
|
+
return {
|
|
469
|
+
TAG: "Text",
|
|
470
|
+
_0: ""
|
|
471
|
+
};
|
|
473
472
|
}
|
|
474
473
|
|
|
475
|
-
let ReactiveProp = {
|
|
476
|
-
get: get
|
|
477
|
-
};
|
|
478
|
-
|
|
479
474
|
function mount(node, container) {
|
|
480
475
|
let el = render(node);
|
|
481
476
|
container.appendChild(el);
|
|
@@ -523,7 +518,7 @@ export {
|
|
|
523
518
|
ul,
|
|
524
519
|
li,
|
|
525
520
|
a,
|
|
526
|
-
|
|
521
|
+
$$null,
|
|
527
522
|
mount,
|
|
528
523
|
mountById,
|
|
529
524
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
open Signals
|
|
2
|
+
|
|
3
|
+
/* Defines a property that can either be a signal (Reactive) or a static value
|
|
4
|
+
(Static) */
|
|
5
|
+
type t<'a> = Reactive(Signal.t<'a>) | Static('a)
|
|
6
|
+
|
|
7
|
+
let get = value =>
|
|
8
|
+
switch value {
|
|
9
|
+
| Reactive(signal) => Signal.get(signal)
|
|
10
|
+
| Static(value) => value
|
|
11
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
// Generated by ReScript, PLEASE EDIT WITH CARE
|
|
2
|
+
|
|
3
|
+
import * as Signals from "rescript-signals/src/Signals.res.mjs";
|
|
4
|
+
|
|
5
|
+
function get(value) {
|
|
6
|
+
if (value.TAG === "Reactive") {
|
|
7
|
+
return Signals.Signal.get(value._0);
|
|
8
|
+
} else {
|
|
9
|
+
return value._0;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export {
|
|
14
|
+
get,
|
|
15
|
+
}
|
|
16
|
+
/* Signals Not a pure module */
|