@hozu/runtime-client 0.7.0 → 0.9.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.
@@ -0,0 +1 @@
1
+ var s=a=>(n,o)=>{let t=a.defaultView?.EventSource;if(!t)return;let r=new URL("live",import.meta.url);for(let e of new Set(o))r.searchParams.append("tag",e);new t(r).addEventListener("message",e=>n(JSON.parse(e.data)))};export{s as liveStream};
@@ -0,0 +1 @@
1
+ function d(e){let r=new AbortController;e.el.setAttribute("data-hozu-component",e.name),e.el.setAttribute("data-hozu-component-state","loading");let i=e.props(),s,l=t=>{s=void 0,e.el.setAttribute("data-hozu-component-state","failed"),e.doc.defaultView?.console.error(`Component ${e.name} failed`,t)},a=()=>{e.load(e.ref.url).then(t=>{if(!r.signal.aborted)try{s=t({el:e.el,props:i,emit:e.emit,signal:r.signal})??void 0,e.el.setAttribute("data-hozu-component-state","mounted")}catch(o){l(o)}},l)},n=e.doc.defaultView;if(e.ref.load==="eager"||!n)a();else if(e.ref.load==="idle")(n.requestIdleCallback??n.setTimeout)(a);else if(!n.IntersectionObserver)a();else{let t=new n.IntersectionObserver(o=>{o.some(c=>c.isIntersecting)&&(t.disconnect(),a())});t.observe(e.el),r.signal.addEventListener("abort",()=>t.disconnect())}e.watch(()=>{let t=e.props();if(!e.same(t,i)){i=t;try{s?.update?.(t)}catch(o){l(o)}}}),e.own(()=>{r.abort(),s?.destroy?.()})}export{d as mountComponent};
@@ -1 +1 @@
1
- function B(t,e){let n=t;for(let o of e){if(n===null||typeof n!="object")return null;n=n[o]}return n===void 0?null:n}function Q(t,e,n,o=0){if(o===e.length)return n;let s=e[o];if(Array.isArray(t)){let u=t.slice();return u[Number(s)]=Q(t[Number(s)]??null,e,n,o+1),u}let c=t!==null&&typeof t=="object"?t:{};return{...c,[s]:Q(c[s]??null,e,n,o+1)}}function P(t,e){if(t===e)return!0;if(t===null||e===null||typeof t!="object"||typeof e!="object")return!1;if(Array.isArray(t)){if(!Array.isArray(e)||t.length!==e.length)return!1;for(let o=0;o<t.length;o++)if(!P(t[o],e[o]))return!1;return!0}if(Array.isArray(e))return!1;let n=Object.keys(t);if(n.length!==Object.keys(e).length)return!1;for(let o of n)if(!Object.hasOwn(e,o)||!P(t[o],e[o]))return!1;return!0}var gt=(t,e,n)=>{let[o="",s=""]=t.split("?"),c=o.replace(/\/:([A-Za-z]\w*)[?*+]?/g,(b,T)=>[B(e,[T])??[]].flat().map(j=>`/${encodeURIComponent(String(j))}`).join(""))||"/",u=s.split("&"),x="";if(n&&typeof n=="object")for(let b of Object.keys(n).sort()){let T=n[b],g=`${encodeURIComponent(b)}=${encodeURIComponent(String(T))}`;T!==null&&typeof T!="object"&&!u.includes(g)&&(x+=`${x&&"&"}${g}`)}return x?`${c}?${x}`:c};var rt=class extends Error{name="CompileError"};function U(t,e){if("literal"in t){let s=t.literal;return()=>s}if("object"in t){let s=Object.entries(t.object).map(([c,u])=>[c,U(u,e)]);return c=>{let u={};for(let[x,b]of s)u[x]=b(c);return u}}if("fn"in t){let s=e[t.fn];if(!s)throw new rt(`No implementation bound for fn ${t.fn}`);let c=U(t.arg,e);return u=>s(c(u))}if("link"in t){let s=t.link,c=U(t.params,e),u=U(t.search,e);return x=>gt(x.routes?.[s]??"",c(x),u(x))}if("test"in t){let s=it(t.test,e);return c=>s(c)}let{path:n}=t;if(t.ref==="binding"){let s=t.depth;return n.length?c=>B(c.bindings?.[s],n):c=>c.bindings?.[s]??null}if(t.ref==="dom"){let[s,...c]=n;return u=>u.dom&&s?B(u.dom(s),c):null}let o=t.ref;return n.length===0?s=>s[o]??null:s=>B(s[o],n)}var K=t=>typeof t=="number"||typeof t=="string"?t:Number.NaN;function it(t,e){switch(t.op){case"and":{let n=t.args.map(o=>it(o,e));return o=>n.every(s=>s(o))}case"or":{let n=t.args.map(o=>it(o,e));return o=>n.some(s=>s(o))}case"not":{let n=it(t.arg,e);return o=>!n(o)}case"fn":{let n=U({fn:t.fn,arg:t.arg},e);return o=>n(o)===!0}default:{let n=U(t.left,e),o=U(t.right,e);switch(t.op){case"eq":return s=>P(n(s),o(s));case"neq":return s=>!P(n(s),o(s));case"lt":return s=>K(n(s))<K(o(s));case"lte":return s=>K(n(s))<=K(o(s));case"gt":return s=>K(n(s))>K(o(s));default:return s=>K(n(s))>=K(o(s))}}}}function Ut(t,e){let{path:n}=t,o=U(t.value,e);switch(t.op){case"set":return(s,c)=>Q(s,n,o({...c,context:s}));case"append":return(s,c)=>{let u=B(s,n);return Q(s,n,[...Array.isArray(u)?u:[],o({...c,context:s})])};case"inc":return(s,c)=>Q(s,n,Number(B(s,n)??0)+Number(o({...c,context:s})));case"removeWhere":{let s=t.key;return(c,u)=>{let x=B(c,n),b=o({...u,context:c}),T=Array.isArray(x)?x:[];return Q(c,n,T.filter(g=>!P(g!==null&&typeof g=="object"&&!Array.isArray(g)?g[s]:null,b)))}}}}var qt=(t,e)=>n=>t({...n,routes:e});function yt(t,e={},n={}){let o=t.machine;if(!o)throw new rt(`Feature ${t.id} has no machine`);let s=Object.keys(o.states),c=new Map(s.map((g,j)=>[g,j])),u=g=>{let j=c.get(g);if(j===void 0)throw new rt(`Unknown state "${g}" in ${t.id}`);return j},x=[],b=(g,j)=>(x.push(j),{id:j,guard:g.guard?it(g.guard,e):null,target:u(g.target),assign:g.assign.map(C=>Ut(C,e)),navigate:g.navigate?qt(U(g.navigate,e),n):null}),T=s.map(g=>{let j=o.states[g],C=new Map;for(let[E,O]of Object.entries(j.on))C.set(E,O.map((q,I)=>b(q,`${g}/on/${E}/${I}`)));let _=new Map;j.after.forEach((E,O)=>{let q=b(E.transition,`${g}/after/${O}`);_.set(E.ms,[..._.get(E.ms)??[],q])});let M=j.invoke;return{name:g,final:j.final,on:C,invoke:M&&{effect:M.effect,input:U(M.input,e),done:M.done.map((E,O)=>b(E,`${g}/invoke/done/${O}`)),failed:new Map(Object.entries(M.failed).map(([E,O])=>[E,O.map((q,I)=>b(q,`${g}/invoke/failed/${E}/${I}`))]))},after:_,timers:[..._.keys()].sort((E,O)=>E-O)}});return{feature:t.id,initial:u(o.initial),initialContext:o.initialContext,states:T,index:c,transitions:x}}function St(t,e,n,o,s){let c=t.states[e];c.invoke&&s.push({type:"invoke",entry:o,effect:c.invoke.effect,input:c.invoke.input({context:n})});for(let u of c.timers)s.push({type:"timer",entry:o,ms:u})}function jt(t,e,n,o=1){let s=t.index.get(e);if(s===void 0)throw new Error(`Unknown state "${e}" in ${t.feature}`);let c=[];return St(t,s,n,o,c),{snapshot:{state:e,context:n,entry:o},effects:c,taken:null}}var ht=t=>jt(t,t.states[t.initial].name,t.initialContext),st=t=>({snapshot:t,effects:[],taken:null});function ut(t,e,n,o){if(!n)return st(e);for(let s of n){if(s.guard&&!s.guard(o))continue;let c=e.context;for(let b of s.assign)c=b(c,o);let u=e.entry+1,x=s.navigate===null?[]:[{type:"navigate",url:String(s.navigate(o))}];return St(t,s.target,c,u,x),{snapshot:{state:t.states[s.target].name,context:c,entry:u},effects:x,taken:s.id}}return st(e)}function xt(t,e,n){let o=t.states[t.index.get(e.state)??-1];if(!o||o.final)return st(e);let s=e.context;switch(n.type){case"event":return ut(t,e,o.on.get(n.event),{context:s,event:n.payload});case"done":return n.entry!==e.entry||!o.invoke?st(e):ut(t,e,o.invoke.done,{context:s,result:n.result});case"failed":{if(n.entry!==e.entry||!o.invoke)return st(e);let c=o.invoke.failed,u=c.has(n.error),x=u?n.data:{message:Dt(n.data,n.error)};return ut(t,e,c.get(u?n.error:"Unexpected"),{context:s,error:x})}case"timer":return n.entry!==e.entry?st(e):ut(t,e,o.after.get(n.ms),{context:s})}}function Dt(t,e){return t!==null&&typeof t=="object"&&!Array.isArray(t)&&typeof t.message=="string"?t.message:e}var pt="http://www.w3.org/2000/svg",zt=new Set(["contenteditable","draggable","spellcheck"]),X=t=>t==null?"":typeof t=="object"?JSON.stringify(t):String(t);function Ot(t,e){return e==null?null:typeof e=="boolean"?t.startsWith("aria-")||t.startsWith("data-")||zt.has(t)?String(e):e?"":null:X(e)}var $t=new Set(["value","checked","selected","muted"]),wt=new Set(["scroll","wheel","touchstart","touchmove","touchend","pointermove","mousemove"]),Nt=t=>typeof t=="number"&&!Number.isNaN(t)?t:null,at=new Map,Bt=t=>t?[...t].map(e=>{let n=`u${at.size+1}`;return at.set(n,e),{name:e.name,size:e.size,type:e.type,token:n}}):[],bt=t=>e=>{let n=t.target;switch(e){case"value":return typeof n?.value=="string"?n.value:"";case"checked":return n?.checked===!0;case"valueAsNumber":return Nt(n?.valueAsNumber);case"files":return Bt(n?.files??t.dataTransfer?.files);case"form":{let o={},s=t.target,c=s.ownerDocument.defaultView;for(let[u,x]of new(c?.FormData??FormData)(s))o[u]=typeof x=="string"?x:x.name;return o}case"open":return n?.open===!0;case"returnValue":return typeof n?.returnValue=="string"?n.returnValue:"";default:{let o=e in t?t[e]:n?.[e];return typeof o=="number"?Nt(o):typeof o=="string"||typeof o=="boolean"?o:null}}},At=(t,e)=>t?e.length?`${t} ${e.join(" ")}`:t:e.join(" ");var Tt=JSON.stringify;function mt(t){if(t===null)return"null";switch(typeof t){case"string":return Tt(t);case"boolean":return t?"true":"false";case"number":if(!Number.isFinite(t))throw new TypeError(`Non-finite number ${t} is not valid JSON`);return Object.is(t,-0)?"0":String(t);case"object":{if(Array.isArray(t))return`[${t.map(mt).join(",")}]`;let e=t,n=Object.keys(e).sort(),o="{";for(let s=0;s<n.length;s++){let c=n[s],u=e[c];if(u===void 0)throw new TypeError(`Undefined value at key "${c}"`);o+=`${s?",":""}${Tt(c)}:${mt(u)}`}return`${o}}`}default:throw new TypeError(`Value of type ${typeof t} is not valid JSON`)}}var kt=t=>{switch(t.op){case"and":case"or":return t.args.some(kt);case"not":return kt(t.arg);case"fn":return Y(t.arg);default:return Y(t.left)||Y(t.right)}},Y=t=>"ref"in t?t.ref==="context"||t.ref==="binding":"object"in t?Object.values(t.object).some(Y):"fn"in t?Y(t.arg):"test"in t&&kt(t.test),_t=(t,e)=>t+mt(e),Ft=t=>t instanceof Map?{data:t,versions:new Map}:t;var ot=(t,e)=>t!==null&&t.nodeType===8&&t.data===e;function tt(t,e){let n=[t],o=t;for(;o!==e&&(o=o.nextSibling,!!o);)n.push(o);return n}function vt(t,e){let n=t.next?t.next.previousSibling:t.parent.lastChild;return e(),[n?n.nextSibling:t.parent.firstChild,t.next?t.next.previousSibling:t.parent.lastChild]}function Et(t,e){for(;t.nextSibling&&t.nextSibling!==e;)t.nextSibling.remove()}function Ct(t,e){let{machine:n,fns:o={},params:s=null,search:c=null,routes:u={}}=e,{data:x}=Ft(e.payload),b=[],T=new Set,g=n?e.snapshot?null:ht(n):null,j=e.snapshot??g?.snapshot??null,C=[],_=new Set,M=new Set,E=new WeakMap,O=(r,a,i)=>{let h=E.get(r);return h||(h=U(r,o),E.set(r,h)),h({context:j?.context??null,bindings:a,params:s,search:c,routes:u,...i?{dom:i}:{}})},q=(r,a,i,h)=>{let w=O(a,i);h(w),Y(a)&&r.push(()=>{let p=O(a,i);p!==w&&(w=p,h(p))})},I=(r,a)=>{if(r.claim&&ot(r.next,a)){let i=r.next;return r.next=i.nextSibling,i}return r.parent.insertBefore(t.createComment(a),r.next)},ct=r=>{if(!r.claim||!ot(r.next,"["))return;let a=0;for(;r.next;){let i=r.next;if(r.next=i.nextSibling,ot(i,"["))a++;else if(ot(i,"]")&&--a===0)return}},D=(r,a,i,h,w)=>{switch(r.kind){case"text":{let p;i.claim&&i.next?.nodeType===3?(p=i.next,i.next=p.nextSibling):p=i.parent.insertBefore(t.createTextNode(""),i.next),i.claim&&ot(i.next,"")&&(i.next=i.next.nextSibling),q(h,r.value,a,d=>{let l=X(d);p.data!==l&&(p.data=l)});return}case"el":{let p=r.tag,d=p==="svg"?pt:w,l,f=i.claim&&i.next?.nodeType===1&&i.next.localName===p;f?(l=i.next,i.next=l.nextSibling):(l=d?t.createElementNS(d,p):t.createElement(p),r.class&&l.setAttribute("class",r.class),i.parent.insertBefore(l,i.next));for(let m in r.attrs){let k=r.attrs[m],z=$t.has(m)&&m in l;f&&!Y(k)||q(h,k,a,R=>{if(z){let L=l,lt=m==="value"?X(R):R===!0;L[m]!==lt&&(L[m]=lt);return}let G=Ot(m,R);G===null?l.removeAttribute(m):l.getAttribute(m)!==G&&l.setAttribute(m,G)})}et(l,r,a,h);for(let m in r.on){let k=r.on[m];l.addEventListener(m,z=>{m==="submit"&&z.preventDefault(),Z({type:"event",event:k.event,payload:O(k.payload,a,bt(z))})},wt.has(m)?{passive:!0}:void 0)}if(p==="textarea")return;let v={parent:l,next:f?l.firstChild:null,claim:f},N=p==="foreignObject"?null:d;for(let m of r.children)D(m,a,v,h,N);return}case"when":{let p=()=>j?r.states.includes(j.state):!1;A(i,h,p,(d,l)=>{if(p())for(let f of r.children)D(f,a,d,l,w)},r.motion);return}case"query":{let p=a;A(i,h,()=>{let l=_t(r.query,O(r.input,a)),f=x.get(l);return f&&p!==a&&p.splice(0,p.length,...a,f.ok?f.value:f.data),`${l}|${f?f.ok?"ready":r.failed[f.error]?f.error:"Unexpected":""}`},(l,f)=>{let v=O(r.input,a),N=_t(r.query,v),m=x.get(N);if(p=a,!m){l.claim||J(N,r.query,v),r.pending&&D(r.pending,a,l,f,w);return}let k=m.ok?r.ready:r.failed[m.error]??r.failed.Unexpected;p=[...a,m.ok?m.value:m.data],k&&D(k,p,l,f,w)});return}case"each":V(r,a,i,h,w);return;case"widget":$(r,a,i,h);return;case"if":{let p=()=>O({test:r.test},a)===!0;A(i,h,p,(d,l)=>{let f=p()?r.ifTrue:r.ifFalse;for(let v of f)D(v,a,d,l,w)},r.motion);return}case"html":{let p=I(i,"["),d;if(i.claim){for(;i.next&&!ot(i.next,"]");)i.next=i.next.nextSibling;d=i.next??i.parent.appendChild(t.createComment("]")),i.next=d.nextSibling}else d=I(i,"]");let l=i.claim?X(O(r.value,a)):null;q(h,r.value,a,f=>{let v=X(f);if(v===l)return;l=v,Et(p,d);let N=t.createElement("template");N.innerHTML=v,d.parentNode.insertBefore(N.content,d)});return}case"global":{let p=I(i,"g"),d=r.target==="window"?t.defaultView:t,l=[];for(let f in r.on){let v=r.on[f],N=k=>Z({type:"event",event:v.event,payload:O(v.payload,a,bt(k))}),m=wt.has(f)?{passive:!0}:void 0;d.addEventListener(f,N,m),l.push(()=>d.removeEventListener(f,N))}M.add({el:p,stop:()=>l.forEach(f=>f())});return}default:ct(i)}},et=(r,a,i,h)=>{let w=Object.entries(a.toggle);if(w.length){let p=()=>{let l=[];for(let[f,v]of w)O(v,i)===!0&&l.push(f);return At(a.class,l)},d=p();r.getAttribute("class")!==d&&r.setAttribute("class",d),w.some(([,l])=>Y(l))&&h.push(()=>{let l=p();l!==d&&(d=l,r.setAttribute("class",l))})}for(let p in a.vars)q(h,a.vars[p],i,d=>{let l=r.style;d===null||d===""?l.removeProperty(p):l.getPropertyValue(p)!==X(d)&&l.setProperty(p,X(d))})},$=(r,a,i,h)=>{let w=e.widgets?.[r.widget],p=w?.tag??"div",d,l=i.claim&&i.next?.nodeType===1&&i.next.localName===p;if(l?(d=i.next,i.next=d.nextSibling):(d=t.createElement(p),r.class&&d.setAttribute("class",r.class),i.parent.insertBefore(d,i.next)),et(d,r,a,h),!l||w?.wraps){let f={parent:d,next:l?d.firstChild:null,claim:l};for(let v of r.children)D(v,a,f,h,null)}w||console.error(`Hozu: widget ${r.widget} has no client code (bundleWidgets)`),!(!w||!e.loadWidget||!e.mountWidget)&&e.mountWidget({el:d,ref:w,name:r.widget,doc:t,props:()=>O(r.props,a),emit:(f,v)=>{let N=r.on[f];N&&Z({type:"event",event:N.event,payload:O(N.payload,a,m=>m==="detail"?v:null)})},load:e.loadWidget,watch:f=>h.push(f),own:f=>M.add({el:d,stop:f}),same:P})},F=new Set,J=(r,a,i)=>{!e.onQuery||F.has(r)||(F.add(r),e.onQuery(a,i).then(h=>{F.delete(r),x.set(r,h);for(let w of C)w();y()}))},y=()=>{for(let r=C.length-1;r>=0;r--)_.delete(C[r])&&C.splice(r,1);for(let r of M)r.el.isConnected||(r.stop(),M.delete(r))},A=(r,a,i,h,w=null)=>{let p=I(r,"["),d=i(),l=[];h(r,l);let f=I(r,"]");a.push(()=>{let v=i();if(v===d){for(let z of l)z();return}d=v,l=[];let N=e.motion;if(!w||!N||N.reduced(t)){Et(p,f),h({parent:f.parentNode,next:f,claim:!1},l);return}N.leave(p.nextSibling===f?[]:tt(p.nextSibling,f.previousSibling),w);let[m,k]=vt({parent:f.parentNode,next:f,claim:!1},()=>h({parent:f.parentNode,next:f,claim:!1},l));m&&k&&m!==f&&N.enter(tt(m,k),w)})},V=(r,a,i,h,w)=>{let p=I(i,"["),d=m=>{let k=r.key===null?m:B(m,[r.key]);return typeof k=="string"?`s${k}`:JSON.stringify(k)},l=()=>{let m=O(r.source,a);return Array.isArray(m)?m:[]},f=(m,k)=>{let z=[...a,m],R=[],[G,L]=vt(k,()=>D(r.item,z,k,R,w));return{key:d(m),value:m,scope:z,block:R,first:G,last:L}},v=l().map(m=>f(m,i)),N=I(i,"]");h.push(()=>{let m=e.motion,k=r.motion&&m&&!m.reduced(t)?r.motion:null,z=k?new Map(v.flatMap(S=>S.first.nodeType===1?[[S,S.first.getBoundingClientRect()]]:[])):null,R=new Map(v.map(S=>[S.key,S])),G=new Set,L=[];for(let S of l()){let H=d(S),nt=R.get(H);if(nt){R.delete(H),nt.value=S,nt.scope.splice(0,nt.scope.length,...a,S);for(let ft of nt.block)ft();L.push(nt)}else{let ft=f(S,{parent:t.createDocumentFragment(),next:null,claim:!1});G.add(ft),L.push(ft)}}for(let S of R.values())if(k)m.leave(tt(S.first,S.last),k);else for(let H of tt(S.first,S.last))H.remove();let lt=N.parentNode,dt=p.nextSibling??N;for(let S of L)if(S.first===dt)dt=S.last.nextSibling??N;else for(let H of tt(S.first,S.last))lt.insertBefore(H,dt);if(v=L,!!k)for(let S of L)if(G.has(S))m.enter(tt(S.first,S.last),k);else{let H=z?.get(S);H&&m.flip(S.first,H,k)}})},W=r=>{for(let a of r.effects)if(a.type==="navigate")e.onNavigate?.(a.url);else if(a.type==="timer"){let i=setTimeout(()=>{T.delete(i),Z({type:"timer",entry:a.entry,ms:a.ms})},a.ms);T.add(i)}else e.onInvoke?.(a.effect,a.input).then(i=>Z(i.ok?{type:"done",entry:a.entry,result:i.value}:{type:"failed",entry:a.entry,error:i.error,data:i.data}))};function Z(r){if(!n||!j)return;let a=xt(n,j,r);if(a.taken){j=a.snapshot;for(let i of C)i();y(),W(a)}}return{attach(r,a,i,h,w){let p={parent:r,next:a,claim:w},d=r.namespaceURI===pt?pt:null,l=[],[f,v]=vt(p,()=>D(i,h,p,l,d));f&&v&&b.push([f,v]);let N=f?.isConnected===!0,m=()=>{if(N&&!f.isConnected)_.add(m);else for(let k of l)k()};C.push(m)},start(){g&&W(g),g=null},sync:()=>{for(let r of C)r();y()},dispatch:Z,snapshot:()=>j,destroy:()=>{for(let r of T)clearTimeout(r);T.clear();for(let r of M)r.stop();M.clear(),C.length=0;for(let[r,a]of b)for(let i of tt(r,a))i.remove();b.length=0}}}var Vt=function(t,e){return typeof t=="string"&&/^\.\.?\//.test(t)?t.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,function(n,o,s,c,u){return o?e?".jsx":".js":s&&(!c||!u)?n:s+c+"."+u.toLowerCase()+"js"}):t},Mt=t=>t.islands.flatMap(([e,n,...o])=>{let s=t.ids[e],c=s.slice(0,s.indexOf("."));return o.map(u=>({feature:c,node:s,scope:[...Array(n).fill(null),...u]}))}),It=t=>new URL(t,import.meta.url),Jt=async(t,e,n)=>{let o=JSON.stringify({effect:t,input:e,keys:n}),s=at.size?await(await import("./chunk-7HUHKEFT.js")).encode(o,e,at):o;return await(await fetch(It("effect"),{method:"POST",headers:typeof s=="string"?{"content-type":"application/json"}:{},body:s})).json()},Rt=async(t,e)=>await(await fetch(It("query"),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({query:t,input:e})})).json(),Lt=async t=>(await import(Vt(t))).default,Ht=async t=>(await import(Vt(t))).fns;async function Wt(t,{transport:e=Jt,query:n=Rt,live:o,loadFns:s=Ht,loadWidget:c=Lt}={}){let u=new Map,x=t.getElementById("hozu-payload");if(!x?.textContent)return u;let b={data:new Map,versions:new Map},T={},g={},j={},C=new Map,_={},M=new Map,E=($,F)=>{let J=$+JSON.stringify(F),y=M.get(J);return y||(y=n($,F).finally(()=>M.delete(J)),M.set(J,y)),y},O=async($,F)=>{let{result:J,refreshed:y}=await e($,F,[...b.data.keys()]);for(let[A,V]of y)b.data.set(A,V),b.versions.set(A,(b.versions.get(A)??0)+1);if(y.length)for(let A of u.values())A.sync();return J},q=null,I={doc:t,apps:u,islands:Mt,async mount($,F){!_.motion&&$.motion&&(_.motion=await import("./chunk-HGZ7KQUC.js")),$.visible&&import("./chunk-DRLGN2D4.js").then(y=>y.watch(t)),!_.mountWidget&&Object.keys($.widgets).length&&(_.mountWidget=(await import("./chunk-7P45Q5IA.js")).mountWidget),!_.fns&&$.fns&&(Object.assign(T,await s($.fns)),_.fns=!0),Object.assign(g,$.widgets),Object.assign(j,$.routes);for(let[y,A]of $.data)b.data.has(y)&&b.versions.set(y,(b.versions.get(y)??0)+1),b.data.set(y,A);let J=[];for(let[y,A]of Object.entries($.features)){if(u.has(y))continue;let V=$.snapshots?.[y],W=Ct(t,{machine:A?yt({id:y,machine:A},T,j):null,payload:b,params:$.params,search:$.search,...V?{snapshot:V}:{},fns:T,widgets:g,routes:j,get motion(){return _.motion},get mountWidget(){return _.mountWidget},loadWidget:c,onQuery:E,onInvoke:O,onNavigate:Z=>t.defaultView?.location.assign(Z)});u.set(y,W),J.push(W)}Mt($).forEach((y,A)=>{let V=F[A],W=$.nodes[y.node];V?.parentNode&&W&&u.get(y.feature)?.attach(V.parentNode,V.nextSibling,W,y.scope,!0)});for(let y of u.values())y.sync();for(let y of J)y.start();for(let[y,A]of Object.entries($.live??{}))C.set(y,A);C.size&&!_.live&&(_.live=!0,(o??(await import("./chunk-FZY6ENWQ.js")).liveStream(t))(async y=>{let A=[...C].filter(([,V])=>V.tags.some(W=>y.includes(W)));for(let[V,W]of A)b.data.set(V,await n(W.query,W.input));if(A.length)for(let V of u.values())V.sync()}))}},ct=JSON.parse(x.textContent),D=[],et=t.createTreeWalker(t.body??t,128);for(;et.nextNode();)et.currentNode.data==="i"&&D.push(et.currentNode);return await I.mount(ct,D),ct.soft&&import("./navigate.js").then($=>$.soft(I)),t.documentElement.setAttribute("data-hozu-ready",""),u}Wt(document);
1
+ function D(t,e){let n=t;for(let o of e){if(typeof n=="string"&&o==="length")return n.length;if(n===null||typeof n!="object")return null;n=n[o]}return n===void 0?null:n}function W(t,e,n,o=0){if(o===e.length)return n;let s=e[o];if(Array.isArray(t)){let f=t.slice();return f[Number(s)]=W(t[Number(s)]??null,e,n,o+1),f}let a=t!==null&&typeof t=="object"?t:{};return{...a,[s]:W(a[s]??null,e,n,o+1)}}function H(t,e){if(t===e)return!0;if(t===null||e===null||typeof t!="object"||typeof e!="object")return!1;if(Array.isArray(t)){if(!Array.isArray(e)||t.length!==e.length)return!1;for(let o=0;o<t.length;o++)if(!H(t[o],e[o]))return!1;return!0}if(Array.isArray(e))return!1;let n=Object.keys(t);if(n.length!==Object.keys(e).length)return!1;for(let o of n)if(!Object.hasOwn(e,o)||!H(t[o],e[o]))return!1;return!0}var ft=(t,e,n)=>{let[o="",s=""]=t.split("?"),a=o.replace(/\/:([A-Za-z]\w*)[?*+]?/g,(y,O)=>[D(e,[O])??[]].flat().map(j=>`/${encodeURIComponent(String(j))}`).join(""))||"/",f=s.split("&"),d="";if(n&&typeof n=="object")for(let y of Object.keys(n).sort()){let O=n[y],h=`${encodeURIComponent(y)}=${encodeURIComponent(String(O))}`;O!==null&&typeof O!="object"&&!f.includes(h)&&(d+=`${d&&"&"}${h}`)}return d?`${a}?${d}`:a};var et=class extends Error{name="CompileError"};function V(t,e){if("literal"in t||"formRef"in t){let a="literal"in t?t.literal:t.formRef;return()=>a}if("object"in t){let a=Object.entries(t.object).map(([f,d])=>[f,V(d,e)]);return f=>{let d={};for(let[y,O]of a)d[y]=O(f);return d}}if("fn"in t){let a=e[t.fn];if(!a)throw new et(`No implementation bound for fn ${t.fn}`);let f=V(t.arg,e);return d=>a(f(d))}if("link"in t){let a=t.link,f=V(t.params,e),d=V(t.search,e);return y=>ft(y.routes?.[a]??"",f(y),d(y))}if("test"in t){let a=st(t.test,e);return f=>a(f)}if("endpoint"in t){let a=t.endpoint,f=V(t.input??{literal:null},e);return d=>ft(d.routes?.[a]??"",null,f(d))}let n=t,{path:o}=n;if(n.ref==="binding"){let a=n.depth;return o.length?f=>D(f.bindings?.[a],o):f=>f.bindings?.[a]??null}if(n.ref==="dom"){let[a,...f]=o;return d=>d.dom&&a?D(d.dom(a),f)??(a==="formAll"?[]:null):null}let s=n.ref;return o.length===0?a=>a[s]??null:a=>D(a[s],o)}var Z=t=>typeof t=="number"||typeof t=="string"?t:Number.NaN;function st(t,e){switch(t.op){case"and":{let n=t.args.map(o=>st(o,e));return o=>n.every(s=>s(o))}case"or":{let n=t.args.map(o=>st(o,e));return o=>n.some(s=>s(o))}case"not":{let n=st(t.arg,e);return o=>!n(o)}case"fn":{let n=V({fn:t.fn,arg:t.arg},e);return o=>n(o)===!0}default:{let n=V(t.left,e),o=V(t.right,e);switch(t.op){case"eq":return s=>H(n(s),o(s));case"neq":return s=>!H(n(s),o(s));case"lt":return s=>Z(n(s))<Z(o(s));case"lte":return s=>Z(n(s))<=Z(o(s));case"gt":return s=>Z(n(s))>Z(o(s));default:return s=>Z(n(s))>=Z(o(s))}}}}function Ut(t,e){let{path:n}=t,o=V(t.value,e);switch(t.op){case"set":return(s,a)=>W(s,n,o({...a,context:s}));case"append":return(s,a)=>{let f=D(s,n);return W(s,n,[...Array.isArray(f)?f:[],o({...a,context:s})])};case"inc":return(s,a)=>W(s,n,Number(D(s,n)??0)+Number(o({...a,context:s})));case"removeWhere":{let s=t.key;return(a,f)=>{let d=D(a,n),y=o({...f,context:a}),O=Array.isArray(d)?d:[];return W(a,n,O.filter(h=>!H(s===null?h:h!==null&&typeof h=="object"&&!Array.isArray(h)?h[s]:null,y)))}}}}var qt=(t,e)=>n=>t({...n,routes:e});function gt(t,e={},n={}){let o=t.machine;if(!o)throw new et(`Feature ${t.id} has no machine`);let s=Object.keys(o.states),a=new Map(s.map((h,j)=>[h,j])),f=h=>{let j=a.get(h);if(j===void 0)throw new et(`Unknown state "${h}" in ${t.id}`);return j},d=[],y=(h,j)=>(d.push(j),{id:j,guard:h.guard?st(h.guard,e):null,target:f(h.target),assign:h.assign.map(T=>Ut(T,e)),navigate:h.navigate?qt(V(h.navigate,e),n):null}),O=s.map(h=>{let j=o.states[h],T=new Map;for(let[A,$]of Object.entries(j.on))T.set(A,$.map((I,R)=>y(I,`${h}/on/${A}/${R}`)));let B=new Map;j.after.forEach((A,$)=>{let I=y(A.transition,`${h}/after/${$}`);B.set(A.ms,[...B.get(A.ms)??[],I])});let M=j.invoke;return{name:h,final:j.final,on:T,invoke:M&&{effect:M.effect,input:V(M.input,e),done:M.done.map((A,$)=>y(A,`${h}/invoke/done/${$}`)),failed:new Map(Object.entries(M.failed).map(([A,$])=>[A,$.map((I,R)=>y(I,`${h}/invoke/failed/${A}/${R}`))]))},after:B,timers:[...B.keys()].sort((A,$)=>A-$)}});return{feature:t.id,initial:f(o.initial),initialContext:o.initialContext,states:O,index:a,transitions:d}}function vt(t,e,n,o,s){let a=t.states[e];a.invoke&&s.push({type:"invoke",entry:o,effect:a.invoke.effect,input:a.invoke.input({context:n})});for(let f of a.timers)s.push({type:"timer",entry:o,ms:f})}function jt(t,e,n,o=1){let s=t.index.get(e);if(s===void 0)throw new Error(`Unknown state "${e}" in ${t.feature}`);let a=[];return vt(t,s,n,o,a),{snapshot:{state:e,context:n,entry:o},effects:a,taken:null}}var yt=t=>jt(t,t.states[t.initial].name,t.initialContext),nt=t=>({snapshot:t,effects:[],taken:null});function ut(t,e,n,o){if(!n)return nt(e);for(let s of n){if(s.guard&&!s.guard(o))continue;let a=e.context;for(let y of s.assign)a=y(a,o);let f=e.entry+1,d=s.navigate===null?[]:[{type:"navigate",url:String(s.navigate(o))}];return vt(t,s.target,a,f,d),{snapshot:{state:t.states[s.target].name,context:a,entry:f},effects:d,taken:s.id}}return nt(e)}function ht(t,e,n){let o=t.states[t.index.get(e.state)??-1];if(!o||o.final)return nt(e);let s=e.context;switch(n.type){case"event":return ut(t,e,o.on.get(n.event),{context:s,event:n.payload});case"done":return n.entry!==e.entry||!o.invoke?nt(e):ut(t,e,o.invoke.done,{context:s,result:n.result});case"failed":{if(n.entry!==e.entry||!o.invoke)return nt(e);let a=o.invoke.failed,f=a.has(n.error),d=f?n.data:{message:Dt(n.data,n.error)};return ut(t,e,a.get(f?n.error:"Unexpected"),{context:s,error:d})}case"timer":return n.entry!==e.entry?nt(e):ut(t,e,o.after.get(n.ms),{context:s})}}function Dt(t,e){return t!==null&&typeof t=="object"&&!Array.isArray(t)&&typeof t.message=="string"?t.message:e}function Nt(t,e){let n=Object.create(null),o=Object.create(null),s=(a,f)=>{let d=typeof f=="string"?f:f.name,y=o[a];y?y.push(d):(o[a]=[d],n[a]=d)};for(let[a,f]of t)s(a,f);return e&&s(...e),{first:n,all:o}}var pt="http://www.w3.org/2000/svg",Ft=new Set(["contenteditable","draggable","spellcheck"]),G=t=>t==null?"":typeof t=="object"?JSON.stringify(t):String(t);function $t(t,e){return e==null?null:typeof e=="boolean"?t.startsWith("aria-")||t.startsWith("data-")||Ft.has(t)?String(e):e?"":null:G(e)}var At=new Set(["value","checked","selected","muted"]),xt=new Set(["scroll","wheel","touchstart","touchmove","touchend","pointermove","mousemove"]),Ot=t=>typeof t=="number"&&!Number.isNaN(t)?t:null,it=new Map,zt=t=>t?[...t].map(e=>{let n=`u${it.size+1}`;return it.set(n,e),{name:e.name,size:e.size,type:e.type,token:n}}):[],bt=t=>e=>{let n=t.target;switch(e){case"value":return typeof n?.value=="string"?n.value:"";case"checked":return n?.checked===!0;case"valueAsNumber":return Ot(n?.valueAsNumber);case"files":return zt(n?.files??t.dataTransfer?.files);case"form":case"formAll":{let o=t.target,s=o.ownerDocument.defaultView,a=Nt(new(s?.FormData??FormData)(o,t.submitter));return e==="form"?a.first:a.all}case"open":return n?.open===!0;case"returnValue":return typeof n?.returnValue=="string"?n.returnValue:"";default:{let o=e in t?t[e]:n?.[e];return typeof o=="number"?Ot(o):typeof o=="string"||typeof o=="boolean"?o:null}}},Ct=(t,e)=>t?e.length?`${t} ${e.join(" ")}`:t:e.join(" ");var _t=JSON.stringify;function mt(t){if(t===null)return"null";switch(typeof t){case"string":return _t(t);case"boolean":return t?"true":"false";case"number":if(!Number.isFinite(t))throw new TypeError(`Non-finite number ${t} is not valid JSON`);return Object.is(t,-0)?"0":String(t);case"object":{if(Array.isArray(t))return`[${t.map(mt).join(",")}]`;let e=t,n=Object.keys(e).sort(),o="{";for(let s=0;s<n.length;s++){let a=n[s],f=e[a];if(f===void 0)throw new TypeError(`Undefined value at key "${a}"`);o+=`${s?",":""}${_t(a)}:${mt(f)}`}return`${o}}`}default:throw new TypeError(`Value of type ${typeof t} is not valid JSON`)}}var kt=t=>{switch(t.op){case"and":case"or":return t.args.some(kt);case"not":return kt(t.arg);case"fn":return Q(t.arg);default:return Q(t.left)||Q(t.right)}},Q=t=>"ref"in t?t.ref==="context"||t.ref==="binding":"object"in t?Object.values(t.object).some(Q):"fn"in t?Q(t.arg):"test"in t&&kt(t.test),Tt=(t,e)=>t+mt(e),Bt=t=>t instanceof Map?{data:t,versions:new Map}:t;var rt=(t,e)=>t!==null&&t.nodeType===8&&t.data===e;function K(t,e){let n=[t],o=t;for(;o!==e&&(o=o.nextSibling,!!o);)n.push(o);return n}function wt(t,e){let n=t.next?t.next.previousSibling:t.parent.lastChild;return e(),[n?n.nextSibling:t.parent.firstChild,t.next?t.next.previousSibling:t.parent.lastChild]}function Et(t,e){for(;t.nextSibling&&t.nextSibling!==e;)t.nextSibling.remove()}function Mt(t,e){let{machine:n,fns:o={},params:s=null,search:a=null,routes:f={}}=e,{data:d}=Bt(e.payload),y=[],O=new Set,h=n?e.snapshot?null:yt(n):null,j=e.snapshot??h?.snapshot??null,T=[],B=new Set,M=new Set,A=new WeakMap,$=(r,l,i)=>{let x=A.get(r);return x||(x=V(r,o),A.set(r,x)),x({context:j?.context??null,bindings:l,params:s,search:a,routes:f,...i?{dom:i}:{}})},I=(r,l,i,x)=>{let k=$(l,i);x(k),Q(l)&&r.push(()=>{let u=$(l,i);u!==k&&(k=u,x(u))})},R=(r,l)=>{if(r.claim&&rt(r.next,l)){let i=r.next;return r.next=i.nextSibling,i}return r.parent.insertBefore(t.createComment(l),r.next)},X=r=>{if(!r.claim||!rt(r.next,"["))return;let l=0;for(;r.next;){let i=r.next;if(r.next=i.nextSibling,rt(i,"["))l++;else if(rt(i,"]")&&--l===0)return}},U=(r,l,i,x,k)=>{switch(r.kind){case"text":{let u;i.claim&&i.next?.nodeType===3?(u=i.next,i.next=u.nextSibling):u=i.parent.insertBefore(t.createTextNode(""),i.next),i.claim&&rt(i.next,"")&&(i.next=i.next.nextSibling),I(x,r.value,l,g=>{let c=G(g);u.data!==c&&(u.data=c)});return}case"el":{let u=r.tag,g=u==="svg"?pt:k,c,p=i.claim&&i.next?.nodeType===1&&i.next.localName===u;p?(c=i.next,i.next=c.nextSibling):(c=g?t.createElementNS(g,u):t.createElement(u),r.class&&c.setAttribute("class",r.class),i.parent.insertBefore(c,i.next));for(let m in r.attrs){let w=r.attrs[m],q=At.has(m)&&m in c;p&&!Q(w)||I(x,w,l,F=>{if(q){let z=c,lt=m==="value"?G(F):F===!0;z[m]!==lt&&(z[m]=lt);return}let P=$t(m,F);P===null?c.removeAttribute(m):c.getAttribute(m)!==P&&c.setAttribute(m,P)})}at(c,r,l,x);for(let m in r.on){let w=r.on[m];c.addEventListener(m,q=>{m==="submit"&&q.preventDefault(),J({type:"event",event:w.event,payload:$(w.payload,l,bt(q))})},xt.has(m)?{passive:!0}:void 0)}if(u==="textarea")return;let b={parent:c,next:p?c.firstChild:null,claim:p},N=u==="foreignObject"?null:g;for(let m of r.children)U(m,l,b,x,N);return}case"when":{let u=()=>j?r.states.includes(j.state):!1;E(i,x,u,(g,c)=>{if(u())for(let p of r.children)U(p,l,g,c,k)},r.motion);return}case"query":{let u=l;E(i,x,()=>{let c=Tt(r.query,$(r.input,l)),p=d.get(c);return p&&u!==l&&u.splice(0,u.length,...l,p.ok?p.value:p.data),`${c}|${p?p.ok?"ready":r.failed[p.error]?p.error:"Unexpected":""}`},(c,p)=>{let b=$(r.input,l),N=Tt(r.query,b),m=d.get(N);if(u=l,!m){c.claim||ot(N,r.query,b),r.pending&&U(r.pending,l,c,p,k);return}let w=m.ok?r.ready:r.failed[m.error]??r.failed.Unexpected;u=[...l,m.ok?m.value:m.data],w&&U(w,u,c,p,k)});return}case"each":C(r,l,i,x,k);return;case"component":St(r,l,i,x);return;case"if":{let u=()=>$({test:r.test},l)===!0;E(i,x,u,(g,c)=>{let p=u()?r.ifTrue:r.ifFalse;for(let b of p)U(b,l,g,c,k)},r.motion);return}case"html":{let u=R(i,"["),g;if(i.claim){for(;i.next&&!rt(i.next,"]");)i.next=i.next.nextSibling;g=i.next??i.parent.appendChild(t.createComment("]")),i.next=g.nextSibling}else g=R(i,"]");let c=i.claim?G($(r.value,l)):null;I(x,r.value,l,p=>{let b=G(p);if(b===c)return;c=b,Et(u,g);let N=t.createElement("template");N.innerHTML=b,g.parentNode.insertBefore(N.content,g)});return}case"global":{let u=R(i,"g"),g=r.target==="window"?t.defaultView:t,c=[];for(let p in r.on){let b=r.on[p],N=w=>J({type:"event",event:b.event,payload:$(b.payload,l,bt(w))}),m=xt.has(p)?{passive:!0}:void 0;g.addEventListener(p,N,m),c.push(()=>g.removeEventListener(p,N))}M.add({el:u,stop:()=>c.forEach(p=>p())});return}default:X(i)}},at=(r,l,i,x)=>{let k=Object.entries(l.toggle);if(k.length){let u=()=>{let c=[];for(let[p,b]of k)$(b,i)===!0&&c.push(p);return Ct(l.class,c)},g=u();r.getAttribute("class")!==g&&r.setAttribute("class",g),k.some(([,c])=>Q(c))&&x.push(()=>{let c=u();c!==g&&(g=c,r.setAttribute("class",c))})}for(let u in l.vars)I(x,l.vars[u],i,g=>{let c=r.style;g===null||g===""?c.removeProperty(u):c.getPropertyValue(u)!==G(g)&&c.setProperty(u,G(g))})},St=(r,l,i,x)=>{let k=r.use.component,u=e.components?.[k],g=u?.tag??"div",c,p=i.claim&&i.next?.nodeType===1&&i.next.localName===g;if(p?(c=i.next,i.next=c.nextSibling):(c=t.createElement(g),r.class&&c.setAttribute("class",r.class),i.parent.insertBefore(c,i.next)),at(c,r,l,x),!p||r.children.length){let b={parent:c,next:p?c.firstChild:null,claim:p};for(let N of r.children)U(N,l,b,x,null)}u||console.error(`Hozu: component ${k} has no client code (bundleComponents)`),!(!u||!e.loadComponent||!e.mountComponent)&&e.mountComponent({el:c,ref:u,name:k,doc:t,props:()=>$(r.props,l),emit:(b,N)=>{let m=r.on[b];m&&J({type:"event",event:m.event,payload:$(m.payload,l,w=>w==="detail"?N:null)})},load:e.loadComponent,watch:b=>x.push(b),own:b=>M.add({el:c,stop:b}),same:H})},Y=new Set,ot=(r,l,i)=>{!e.onQuery||Y.has(r)||(Y.add(r),e.onQuery(l,i).then(x=>{Y.delete(r),d.set(r,x);for(let k of T)k();S()}))},S=()=>{for(let r=T.length-1;r>=0;r--)B.delete(T[r])&&T.splice(r,1);for(let r of M)r.el.isConnected||(r.stop(),M.delete(r))},E=(r,l,i,x,k=null)=>{let u=R(r,"["),g=i(),c=[];x(r,c);let p=R(r,"]");l.push(()=>{let b=i();if(b===g){for(let q of c)q();return}g=b,c=[];let N=e.motion;if(!k||!N||N.reduced(t)){Et(u,p),x({parent:p.parentNode,next:p,claim:!1},c);return}N.leave(u.nextSibling===p?[]:K(u.nextSibling,p.previousSibling),k);let[m,w]=wt({parent:p.parentNode,next:p,claim:!1},()=>x({parent:p.parentNode,next:p,claim:!1},c));m&&w&&m!==p&&N.enter(K(m,w),k)})},C=(r,l,i,x,k)=>{let u=R(i,"["),g=m=>{let w=r.key===null?m:D(m,[r.key]);return typeof w=="string"?`s${w}`:JSON.stringify(w)},c=()=>{let m=$(r.source,l);return Array.isArray(m)?m:[]},p=(m,w)=>{let q=[...l,m],F=[],[P,z]=wt(w,()=>U(r.item,q,w,F,k));return{key:g(m),value:m,scope:q,block:F,first:P,last:z}},b=c().map(m=>p(m,i)),N=R(i,"]");x.push(()=>{let m=e.motion,w=r.motion&&m&&!m.reduced(t)?r.motion:null,q=w?new Map(b.flatMap(v=>v.first.nodeType===1?[[v,v.first.getBoundingClientRect()]]:[])):null,F=new Map(b.map(v=>[v.key,v])),P=new Set,z=[];for(let v of c()){let L=g(v),tt=F.get(L);if(tt){F.delete(L),tt.value=v,tt.scope.splice(0,tt.scope.length,...l,v);for(let ct of tt.block)ct();z.push(tt)}else{let ct=p(v,{parent:t.createDocumentFragment(),next:null,claim:!1});P.add(ct),z.push(ct)}}for(let v of F.values())if(w)m.leave(K(v.first,v.last),w);else for(let L of K(v.first,v.last))L.remove();let lt=N.parentNode,dt=u.nextSibling??N;for(let v of z)if(v.first===dt)dt=v.last.nextSibling??N;else for(let L of K(v.first,v.last))lt.insertBefore(L,dt);if(b=z,!!w)for(let v of z)if(P.has(v))m.enter(K(v.first,v.last),w);else{let L=q?.get(v);L&&m.flip(v.first,L,w)}})},_=r=>{for(let l of r.effects)if(l.type==="navigate")e.onNavigate?.(l.url);else if(l.type==="timer"){let i=setTimeout(()=>{O.delete(i),J({type:"timer",entry:l.entry,ms:l.ms})},l.ms);O.add(i)}else e.onInvoke?.(l.effect,l.input).then(i=>J(i.ok?{type:"done",entry:l.entry,result:i.value}:{type:"failed",entry:l.entry,error:i.error,data:i.data}))};function J(r){if(!n||!j)return;let l=ht(n,j,r);if(l.taken){j=l.snapshot;for(let i of T)i();S(),_(l)}}return{attach(r,l,i,x,k){let u={parent:r,next:l,claim:k},g=r.namespaceURI===pt?pt:null,c=[],[p,b]=wt(u,()=>U(i,x,u,c,g));p&&b&&y.push([p,b]);let N=p?.isConnected===!0,m=()=>{if(N&&!p.isConnected)B.add(m);else for(let w of c)w()};T.push(m)},start(){h&&_(h),h=null},sync:()=>{for(let r of T)r();S()},dispatch:J,snapshot:()=>j,destroy:()=>{for(let r of O)clearTimeout(r);O.clear();for(let r of M)r.stop();M.clear(),T.length=0;for(let[r,l]of y)for(let i of K(r,l))i.remove();y.length=0}}}var It=function(t,e){return typeof t=="string"&&/^\.\.?\//.test(t)?t.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,function(n,o,s,a,f){return o?e?".jsx":".js":s&&(!a||!f)?n:s+a+"."+f.toLowerCase()+"js"}):t},Jt=t=>t.islands.flatMap(([e,n,...o])=>{let s=t.ids[e],a=s.slice(0,s.indexOf("."));return o.map(f=>({feature:a,node:s,scope:[...Array(n).fill(null),...f]}))}),Rt=t=>new URL(t,import.meta.url),Lt=async(t,e,n)=>{let o=JSON.stringify({effect:t,input:e,keys:n}),s=it.size?await(await import("./chunk-7HUHKEFT.js")).encode(o,e,it):o;return await(await fetch(Rt("effect"),{method:"POST",headers:typeof s=="string"?{"content-type":"application/json"}:{},body:s})).json()},Ht=async(t,e)=>await(await fetch(Rt("query"),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({query:t,input:e})})).json(),Pt=async t=>(await import(It(t))).default,Wt=async t=>(await import(It(t))).fns;async function Vt(t,{transport:e=Lt,query:n=Ht,live:o,loadFns:s=Wt,loadComponent:a=Pt}={}){let f=new Map,d=t.getElementById("hozu-payload");if(!d?.textContent)return f;let y=JSON.parse(d.textContent),O={data:new Map(y.data),versions:new Map},h=y.fns?await s(y.fns):{},{components:j,routes:T}=y,B=y.motion?await import("./chunk-HGZ7KQUC.js"):void 0,M=Object.keys(j).length?(await import("./chunk-G6LC6QZB.js")).mountComponent:void 0;y.visible&&import("./chunk-DRLGN2D4.js").then(S=>S.watch(t));let A=new Map,$=(S,E)=>{let C=S+JSON.stringify(E),_=A.get(C);return _||(_=n(S,E).finally(()=>A.delete(C)),A.set(C,_)),_},I=Object.entries(y.live??{}),R=async S=>{if(X)return void U.push(...S);let E=I.filter(([,C])=>C.tags.some(_=>S.includes(_)));for(let[C,_]of E)O.data.set(C,await n(_.query,_.input));if(E.length)for(let C of f.values())C.sync()},X=0,U=[],at=async(S,E)=>{X++;let{result:C,refreshed:_,session:J}=await e(S,E,[...O.data.keys()]).finally(()=>X--);J&&(O.data.clear(),U=[]);for(let[r,l]of _)O.data.set(r,l),O.versions.set(r,(O.versions.get(r)??0)+1);if(_.length||J)for(let r of f.values())r.sync();return!X&&U.length&&R(U.splice(0)),C},St=null;for(let[S,E]of Object.entries(y.features)){let C=y.snapshots?.[S];f.set(S,Mt(t,{machine:E?gt({id:S,machine:E},h,T):null,payload:O,params:y.params,search:y.search,...C?{snapshot:C}:{},fns:h,components:j,routes:T,motion:B,mountComponent:M,loadComponent:a,onQuery:$,onInvoke:at,onNavigate:_=>t.defaultView?.location.assign(_)}))}let Y=[],ot=t.createTreeWalker(t.body??t,128);for(;ot.nextNode();)ot.currentNode.data==="i"&&Y.push(ot.currentNode);Jt(y).forEach((S,E)=>{let C=Y[E],_=y.nodes[S.node];C?.parentNode&&_&&f.get(S.feature)?.attach(C.parentNode,C.nextSibling,_,S.scope,!0)});for(let S of f.values())S.sync();for(let S of f.values())S.start();return I.length&&(o??(await import("./chunk-627YWRJ6.js")).liveStream(t))(R,I.flatMap(([,S])=>S.tags)),t.documentElement.setAttribute("data-hozu-ready",""),f}Vt(document);