@webjsdev/core 0.7.6 → 0.7.8
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/webjs-core-browser.js +3 -3
- package/dist/webjs-core-browser.js.map +2 -2
- package/dist/webjs-core-testing.js +2 -2
- package/dist/webjs-core-testing.js.map +2 -2
- package/dist/webjs-core.js +3 -3
- package/dist/webjs-core.js.map +2 -2
- package/index-browser.js +10 -2
- package/index.d.ts +52 -1
- package/index.js +9 -2
- package/package.json +1 -1
- package/src/component.js +114 -0
- package/src/directives.js +7 -1
- package/src/metadata.d.ts +279 -0
- package/src/render-server.js +22 -8
- package/src/router-client.js +17 -0
- package/src/routes.d.ts +136 -0
- package/src/webjs-config.d.ts +179 -0
package/dist/webjs-core.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
function
|
|
2
|
-
`),n.appendChild(r)}}function
|
|
3
|
-
`)}</style>`}function Ue(e){return String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function $(e){return String(e).replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<")}var on=Symbol.for("webjs.repeat");function Cr(e,t,n){return{[on]:!0,items:[...e],keyFn:t,templateFn:n}}function ee(e){return!!e&&typeof e=="object"&&e[on]===!0}function Er(e){return{_$webjs:"unsafe-html",value:String(e??"")}}function te(e){return!!e&&typeof e=="object"&&e._$webjs==="unsafe-html"}function xr(e){return{_$webjs:"live",value:e}}function ne(e){return!!e&&typeof e=="object"&&e._$webjs==="live"}function re(e){return!!e&&typeof e=="object"&&e._$webjs==="keyed"}function se(e){return!!e&&typeof e=="object"&&e._$webjs==="guard"}function me(e){return!!e&&typeof e=="object"&&e._$webjs==="template-content"}function oe(e){return!!e&&typeof e=="object"&&e._$webjs==="ref"}function ie(e){return!!e&&typeof e=="object"&&e._$webjs==="cache"}function ae(e){return!!e&&typeof e=="object"&&e._$webjs==="until"}function ge(e){return!!e&&typeof e=="object"&&e._$webjs==="async-append"}function be(e){return!!e&&typeof e=="object"&&e._$webjs==="async-replace"}function ce(e){return!!e&&typeof e=="object"&&e._$webjs==="watch"}var M=null,q=!1,ue=0,le=null,ht=0,an=(e,t)=>Object.is(e,t),Be=()=>{},cn=()=>!1;function ln(e,t){e.liveConsumers||(e.liveConsumers=new Set);let n=e.liveConsumers.size===0;if(e.liveConsumers.add(t),n){if(e.producers&&e.producers.length>0)for(let r of e.producers)ln(r,e);if(e.watched)try{e.watched.call(e.wrapper)}catch(r){console.error(r)}}}function ye(e,t){if(e.liveConsumers&&(e.liveConsumers.delete(t),e.liveConsumers.size===0)){if(e.producers&&e.producers.length>0)for(let n of e.producers)ye(n,e);if(e.unwatched)try{e.unwatched.call(e.wrapper)}catch(n){console.error(n)}}}function _t(e){if(q)throw new Error("Signal read during notification phase");if(M===null)return;let t=M,n=t.nextProducerIndex++;n<t.producers.length&&t.producers[n]!==e&>(t)&&ye(t.producers[n],t),t.producers[n]!==e&&(t.producers[n]=e,gt(t)&&ln(e,t)),t.producerLastReadVersions[n]=e.version}function gt(e){return e.consumerIsAlwaysLive||e.liveConsumers&&e.liveConsumers.size>0}function un(e){if(!e.liveConsumers||e.liveConsumers.size===0)return;let t=q;q=!0;try{for(let n of e.liveConsumers)n.dirty||kr(n)}finally{q=t}}function kr(e){e.dirty=!0,un(e),e.consumerMarkedDirty.call(e.wrapper||e)}function Fe(e){if(!(!e.dirty&&e.lastCleanEpoch===ue)){if(!e.producerMustRecompute()&&!vr(e)){e.dirty=!1,e.lastCleanEpoch=ue;return}e.producerRecomputeValue(),e.dirty=!1,e.lastCleanEpoch=ue}}function vr(e){for(let t=0;t<e.producers.length;t++){let n=e.producers[t],r=e.producerLastReadVersions[t];if(r!==n.version||(Fe(n),r!==n.version))return!0}return!1}function bt(e){e&&(e.nextProducerIndex=0);let t=M;return M=e,t}function yt(e,t){if(M=t,!!e){if(gt(e))for(let n=e.nextProducerIndex;n<e.producers.length;n++)ye(e.producers[n],e);for(;e.producers.length>e.nextProducerIndex;)e.producers.pop(),e.producerLastReadVersions.pop()}}var De=class{constructor(t,n){this.__value=t,this.version=0,this.lastCleanEpoch=ue,this.dirty=!1,this.producers=[],this.producerLastReadVersions=[],this.liveConsumers=void 0,this.consumerAllowSignalWrites=!0,this.consumerIsAlwaysLive=!1,this.producerMustRecompute=cn,this.producerRecomputeValue=Be,this.consumerMarkedDirty=Be,this.wrapper=this,this.__isSignal=!0,this.__equal=n?.equals||an,this.watched=n?.[wt],this.unwatched=n?.[St]}get(){return _t(this),this.__value}peek(){return this.__value}set(t){if(q)throw new Error("Signal write during notification phase");this.__equal.call(this,this.__value,t)||(this.__value=t,this.version++,ue++,le!==null?fn(this):un(this))}};function fn(e){let t=q;q=!0;try{if(!e.liveConsumers)return;for(let n of e.liveConsumers)n.dirty||(n.dirty=!0,n.__isWatcher?le.add(n):fn(n))}finally{q=t}}var pt=Symbol("unset"),mt=Symbol("computing"),qe=Symbol("errored"),_e=class{constructor(t,n){this.__fn=t,this.__value=pt,this.__error=null,this.version=0,this.lastCleanEpoch=-1,this.dirty=!0,this.producers=[],this.producerLastReadVersions=[],this.nextProducerIndex=0,this.liveConsumers=void 0,this.consumerAllowSignalWrites=!1,this.consumerIsAlwaysLive=!1,this.wrapper=this,this.__isSignal=!0,this.__isComputed=!0,this.__equal=n?.equals||an,this.watched=n?.[wt],this.unwatched=n?.[St];let r=this;this.producerMustRecompute=function(){return r.__value===pt||r.__value===mt},this.producerRecomputeValue=function(){if(r.__value===mt)throw new Error("Detected cycle in computations.");let o=r.__value;r.__value=mt;let s=bt(r),i,a=!1;try{i=r.__fn.call(r.wrapper)}catch(l){i=qe,r.__error=l,a=!0}finally{yt(r,s)}if(!a&&(o!==pt&&o!==qe)&&r.__equal.call(r.wrapper,o,i)){r.__value=o;return}r.__value=i,r.version++},this.consumerMarkedDirty=Be}get(){if(Fe(this),_t(this),this.__value===qe)throw this.__error;return this.__value}peek(){if(Fe(this),this.__value===qe)throw this.__error;return this.__value}},He=class{constructor(t){this.__notify=t,this.version=0,this.lastCleanEpoch=ue,this.dirty=!1,this.producers=[],this.producerLastReadVersions=[],this.nextProducerIndex=0,this.liveConsumers=void 0,this.consumerAllowSignalWrites=!1,this.consumerIsAlwaysLive=!0,this.producerMustRecompute=cn,this.producerRecomputeValue=Be,this.wrapper=this,this.__isWatcher=!0;let n=this;this.consumerMarkedDirty=function(){n.__fire()}}__fire(){this.__notify&&this.__notify.call(this)}watch(...t){if(t.length===0){this.dirty=!1;return}let n=bt(this);try{for(let r of t)_t(r),r.__isComputed&&Fe(r)}finally{yt(this,n)}this.dirty=!1}unwatch(...t){for(let n=this.producers.length-1;n>=0;n--)t.includes(this.producers[n])&&(ye(this.producers[n],this),this.producers.splice(n,1),this.producerLastReadVersions.splice(n,1),this.nextProducerIndex=Math.min(this.nextProducerIndex,this.producers.length))}getPending(){return this.producers.filter(t=>t.__isComputed&&t.dirty)}observe(t){let n=bt(this),r;try{r=t()}finally{yt(this,n)}return this.dirty=!1,r}dispose(){for(let t of this.producers)ye(t,this);this.producers=[],this.producerLastReadVersions=[],this.__notify=null}},wt=Symbol("watched"),St=Symbol("unwatched");function Nr(e){let t=M;M=null;try{return e()}finally{M=t}}function Tr(e){return e.producers.slice()}function Rr(e){return e.liveConsumers?[...e.liveConsumers]:[]}function jr(e){return!!e.liveConsumers&&e.liveConsumers.size>0}function Or(e){return e.producers.length>0}function Lr(){return M&&M.__isComputed?M:null}function Mr(e){ht++,le===null&&(le=new Set);try{e()}finally{if(ht--,ht===0){let t=le;le=null;for(let n of t)n.__fire()}}}var we={State:De,Computed:_e,subtle:{Watcher:He,untrack:Nr,introspectSources:Tr,introspectSinks:Rr,hasSinks:jr,hasSources:Or,currentComputed:Lr,watched:wt,unwatched:St}};function $r(e,t){return new De(e,t)}function Pr(e,t){return new _e(e,t)}function Ir(e){return!!(e&&typeof e=="object"&&e.__isSignal===!0)}function Ur(e){let t=!1,n=!1,r=new _e(e),o=new He(()=>{t||n||(t=!0,queueMicrotask(()=>{if(t=!1,!n){try{r.get()}catch(s){console.error(s)}o.watch()}}))});o.watch(r);try{r.get()}catch(s){console.error(s)}return()=>{n||(n=!0,o.dispose())}}var qr=`${_}s`,Br=`${_}e`;function dn(e){if(!e||e.nodeType!==8)return!1;let t=e.nodeValue;return t===qr||t===Br}function Fr(e){for(let t of e.addedNodes)if(dn(t))return!0;for(let t of e.removedNodes)if(dn(t))return!0;return!1}function bn(){return typeof HTMLElement<"u"&&typeof HTMLSlotElement<"u"}var Ae=bn(),K=Symbol("webjs.slot.state"),B="data-webjs-light",G="data-projection",Ce="actual",yn="fallback",Ke=Symbol("webjs.slot.fallbackFrag"),Dr=64,Se=null,At=null,Ve=null,hn=!1;function Hr(){hn||(Ae=bn(),Ae&&(Se=HTMLSlotElement.prototype.assignedNodes,At=HTMLSlotElement.prototype.assignedElements,Ve=Object.getOwnPropertyDescriptor(Element.prototype,"assignedSlot"),HTMLSlotElement.prototype.assignedNodes=function(t){return this.hasAttribute(B)&&!pn(this)?Ct(this,t):Se?Se.call(this,t):[]},HTMLSlotElement.prototype.assignedElements=function(t){return this.hasAttribute(B)&&!pn(this)?Ct(this,t).filter(n=>n.nodeType===1):At?At.call(this,t):[]},Object.defineProperty(Element.prototype,"assignedSlot",{configurable:!0,enumerable:!0,get:function(){let t=Ve&&Ve.get?Ve.get.call(this):null;return t||Vr(this)}}),hn=!0))}Hr();function pn(e){let t=e;for(let n=0;n<128;n++){let r=t.parentNode;if(!r||r===t)return!1;if(r.host)return!0;t=r}return!1}function Ct(e,t){if(e.getAttribute(G)===yn)return[];let n=Array.from(e.childNodes);return!t||!t.flatten?n:Et(n,new Set,0)}function Et(e,t,n){if(n>=Dr)return e.slice();let r=[];for(let o of e)if(o.nodeType===1&&o.tagName==="SLOT"){let s=o;if(t.has(s))continue;if(t.add(s),s.hasAttribute(B)){let i=Ct(s,{flatten:!1});if(i.length>0)for(let a of Et(i,t,n+1))r.push(a);else for(let a of Et(Array.from(s.childNodes),t,n+1))r.push(a)}else if(Se){let i=Se.call(s,{flatten:!0});for(let a of i)r.push(a)}else r.push(o)}else r.push(o);return r}function Vr(e){let t=e.parentElement;for(;t;){if(t.tagName==="SLOT"&&t.hasAttribute(B))return t.getAttribute(G)===Ce?t:null;t=t.parentElement}return null}function F(e){let t=e,n=t[K];return n||(n={assignedByName:new Map,pendingByName:new Map,lastSnapshot:new WeakMap,nameObservers:new WeakMap,childObserver:null,scheduled:!1,ownedSlots:new Set},t[K]=n),n}function xt(e){return!!e[K]}function _n(e){let t=F(e);for(;e.firstChild;){let n=e.firstChild,r=We(n);ze(t.assignedByName,r,n),e.removeChild(n)}}function wn(e){let t=F(e),n=e.querySelectorAll(`slot[${B}]`);for(let r of n){let o=r;if(o.getAttribute(G)!==Ce)continue;let s=o.getAttribute("name")||null;if(!t.assignedByName.has(s)){let i=Array.from(o.childNodes);t.assignedByName.set(s,i),t.lastSnapshot.set(o,i.slice())}}}function We(e){if(e.nodeType!==1)return null;let n=e.getAttribute("slot");return n||null}function ze(e,t,n){let r=e.get(t);r||(r=[],e.set(t,r)),r.push(n)}function Sn(e,t,n){if(!n.length)return;let r=e.get(t);r||(r=[],e.set(t,r));for(let o of n)r.push(o)}function An(e){if(!Ae)return;let t=F(e);t.childObserver||(t.childObserver=new MutationObserver(n=>{let r=!1;for(let o of n)if(!Fr(o)){if(o.type==="childList"){for(let s of o.addedNodes)s.parentElement===e&&(ze(t.assignedByName,We(s),s),r=!0);for(let s of o.removedNodes)e.contains(s)||mn(t,s)&&(r=!0)}else if(o.type==="attributes"&&o.attributeName==="slot"){let s=o.target;(mn(t,s)||s.parentElement===e)&&(ze(t.assignedByName,We(s),s),r=!0)}}r&&Ge(e)}),t.childObserver.observe(e,{childList:!0,attributes:!0,attributeFilter:["slot"],subtree:!0}))}function Cn(e){let t=e[K];if(t){t.childObserver&&(t.childObserver.disconnect(),t.childObserver=null);for(let n of t.ownedSlots){let r=t.nameObservers.get(n);r&&(r.disconnect(),t.nameObservers.delete(n))}}}function mn(e,t){for(let[n,r]of e.assignedByName){let o=r.indexOf(t);if(o!==-1)return r.splice(o,1),r.length===0&&e.assignedByName.delete(n),!0}return!1}function Ge(e){let t=F(e);t.scheduled||(t.scheduled=!0,queueMicrotask(()=>{t.scheduled=!1,Wr(e)}))}function Wr(e){if(!Ae)return;let t=e[K];if(!t)return;let n=Array.from(e.querySelectorAll(`slot[${B}]`)),r=new Set(n);for(let i of t.ownedSlots)r.has(i)||zr(t,i);for(let i of r)t.ownedSlots.has(i)||Yr(e,i);t.ownedSlots=r;let o=new Map;for(let i of n){let a=i.getAttribute("name")||null,c=o.get(a);c||(c=[],o.set(a,c)),c.push(i)}for(let i of o.keys()){let a=t.pendingByName.get(i);if(a&&a.length){let c=t.assignedByName.get(i)||[],l=[];for(let d of a)l.push(d);for(let d of c)l.indexOf(d)===-1&&l.push(d);t.assignedByName.set(i,l),t.pendingByName.delete(i)}}let s=[];for(let[i,a]of o){let c=t.assignedByName.get(i)||[];for(let l=0;l<a.length;l++){let d=a[l];l===0&&c.length>0?Kr(t,d,c)&&s.push(d):Gr(t,d)&&s.push(d)}}for(let i of s)Jr(i)}function zr(e,t){let n=e.nameObservers.get(t);n&&(n.disconnect(),e.nameObservers.delete(t));let r=e.lastSnapshot.get(t);if(r&&r.length>0){let o=t.getAttribute("name")||null;Sn(e.pendingByName,o,r)}e.lastSnapshot.delete(t)}function Kr(e,t,n){let r=t.getAttribute(G)!==Ce,o=e.lastSnapshot.get(t)||[];if(!r&&Zr(o,n))return!1;let i=t[Ke];if(r&&i)for(;t.firstChild;)i.appendChild(t.firstChild);else for(;t.firstChild;)t.removeChild(t.firstChild);for(let a of n)t.appendChild(a);return t.setAttribute(G,Ce),e.lastSnapshot.set(t,n.slice()),!0}function Gr(e,t){let n=t.getAttribute(G)===Ce;if(t.setAttribute(G,yn),!n)return gn(t),!1;for(e.lastSnapshot.delete(t);t.firstChild;)t.removeChild(t.firstChild);return gn(t),!0}function gn(e){let t=e[Ke];!t||t.childNodes.length===0||e.appendChild(t)}function Yr(e,t){if(!Ae)return;let n=F(e);if(n.nameObservers.has(t))return;let r=new MutationObserver(()=>Ge(e));r.observe(t,{attributes:!0,attributeFilter:["name"]}),n.nameObservers.set(t,r)}function En(e,t){if(!xt(e))return;let n=F(e),r=n.lastSnapshot.get(t);if(!r||r.length===0)return;let o=t.getAttribute("name")||null;for(let i of r)i.parentNode===t&&t.removeChild(i);Sn(n.pendingByName,o,r),n.lastSnapshot.delete(t);let s=n.nameObservers.get(t);s&&(s.disconnect(),n.nameObservers.delete(t)),n.ownedSlots.delete(t)}function Jr(e){e.dispatchEvent(new Event("slotchange",{bubbles:!0,composed:!1}))}function Zr(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}var xn=new WeakMap,kt=Symbol.for("webjs.instance");function Je(e,t){let n=t,r=n[kt];if(C(e)){let o=e;if(r&&r.strings===o.strings){ke(r,o.values);return}r&&kn(r,t);let s=t.firstChild;s&&s.nodeType===8&&s.data==="webjs-hydrate"&&s.remove();let i=es(o,t);n[kt]=i;return}if(r&&kn(r,t),n[kt]=null,t.replaceChildren(),!(e==null||e===!1||e===!0)){if(Array.isArray(e)){for(let o of e){let s=document.createTextNode(String(o??""));t.appendChild(s)}return}t.appendChild(document.createTextNode(String(e)))}}function Ee(e){let{strings:t}=e,n=xn.get(t);if(n)return n;let r=[],o="",s="text",i="",a=0,c="",l=0,d=null,m="",u="";for(let b=0;b<t.length;b++){let p=t[b];for(let h=0;h<p.length;h++){let f=p[h];switch(s){case"text":o+=f,f==="<"&&(s="tag-open");break;case"tag-open":o+=f,f==="!"?s="bang-1":f==="/"?(s="tag-name",m=""):/[a-zA-Z]/.test(f)?(s="tag-name",m=f.toLowerCase()):s="text";break;case"bang-1":o+=f,s=f==="-"?"bang-dash":"tag-name";break;case"bang-dash":o+=f,f==="-"?(s="comment",l=0):s="tag-name";break;case"comment":o+=f,f==="-"?l+=1:(f===">"&&l>=2&&(s="text"),l=0);break;case"tag-name":o+=f,f===">"?(s=m==="script"||m==="style"?"rawtext":"text",s==="rawtext"&&(u="")):/\s/.test(f)?s="in-tag":m+=f.toLowerCase();break;case"in-tag":o+=f,f===">"?(s=m==="script"||m==="style"?"rawtext":"text",s==="rawtext"&&(u="")):!/\s/.test(f)&&f!=="/"&&(s="attr-name",i=f,a=o.length-1);break;case"rawtext":o+=f,u=(u+f.toLowerCase()).slice(-9),(u.endsWith("<\/script>")||u.endsWith("</style>"))&&(s="text",u="",m="");break;case"attr-name":f==="="?(s="after-eq",o+=f):/\s/.test(f)?(s="in-tag",i="",o+=f):f===">"?(s="text",i="",o+=f):(i+=f,o+=f);break;case"after-eq":f==='"'||f==="'"?(s="attr-quoted",c=f,o+=f):/\s/.test(f)?(s="in-tag",i="",o+=f):f===">"?(s="text",i="",o+=f):(s="attr-unquoted",o+=f);break;case"attr-unquoted":/\s/.test(f)?(s="in-tag",i="",o+=f):(f===">"&&(s="text",i=""),o+=f);break;case"attr-quoted":o+=f,f===c&&(s="in-tag",i="");break;case"skip-attr":if(f===c){if(d){let x=d.firstPartIdx,y=[];for(let k=x;k<r.length;k++)(r[k].kind==="noop"||r[k].kind==="attr-mixed")&&y.push(k);let S=[],N=t[y[0]],L=N.lastIndexOf(c);S.push(L>=0?N.slice(L+1):N);for(let k=1;k<y.length;k++)S.push(t[y[k]]);let T=t[y[y.length-1]+1],A=T.indexOf(c);S.push(A>=0?T.slice(0,A):T),r[x]={kind:"attr-mixed",path:[],name:d.name,statics:S,group:y},d=null}s="in-tag",i=""}break}}if(b<t.length-1){let h=r.length;if(s==="comment"){l=0,r.push({kind:"noop",path:[]});continue}if(s==="rawtext"){u="",r.push({kind:"noop",path:[]});continue}if(s==="text")o+=`<!--${_}${h}-->`,r.push({kind:"child",path:[]});else if(s==="in-tag"){let f=`data-${_}${h}`;o+=`${f}=""`,r.push({kind:"element",path:[]})}else if(s==="after-eq"){let f=i[0],x=i.slice(1);if(f==="@"||f==="."||f==="?"){o=o.slice(0,a);let y=f==="@"?"event":f==="."?"prop":"bool",S=`data-${_}${h}`;o+=`${S}=""`,r.push({kind:y,path:[],name:x})}else{o=o.slice(0,a);let y=`data-${_}${h}`;o+=`${y}=""`,r.push({kind:"attr",path:[],name:i})}s="in-tag",i=""}else if(s==="attr-quoted"||s==="attr-unquoted"){o=o.slice(0,a);let f=`data-${_}${h}`;o+=`${f}=""`,d={name:i,firstPartIdx:h},r.push({kind:"noop",path:[]}),s="skip-attr"}else s==="skip-attr"&&r.push({kind:"noop",path:[]})}}let g=document.createElement("template");return g.innerHTML=o,Qr(g.content,r),Xr(g.content,r),n={templateEl:g,parts:r},xn.set(t,n),n}function Qr(e,t){let n=e.querySelectorAll("slot");for(let r of n){r.setAttribute(B,"");let o=t.length;r.setAttribute(`data-${_}${o}`,""),t.push({kind:"slot",path:[]})}}function Xr(e,t){let n=[];function r(o){for(let s=0;s<o.childNodes.length;s++){let i=o.childNodes[s];if(n.push(s),i.nodeType===8){let a=i.data;if(a.startsWith(_)){let c=Number(a.slice(_.length));t[c]&&t[c].kind==="child"&&(t[c].path=n.slice())}}else if(i.nodeType===1){let a=i,c=[];for(let l of a.attributes)if(l.name.startsWith(`data-${_}`)){let d=Number(l.name.slice(`data-${_}`.length));t[d]&&t[d].kind!=="child"&&(t[d].path=n.slice()),c.push(l.name)}for(let l of c)a.removeAttribute(l);r(i)}n.pop()}}r(e)}function es(e,t){let{templateEl:n,parts:r}=Ee(e),o=n.content.cloneNode(!0),s=document.createComment(`${_}s`),i=document.createComment(`${_}e`),a=r.map(l=>xe(l,o)),c=[];for(let l=0;l<e.values.length;l++)D(a[l],e.values[l],void 0,e.values),c.push(e.values[l]);t.replaceChildren(s,...o.childNodes,i);for(let l of a)l.kind==="slot"&&D(l,void 0,void 0,[]);return{strings:e.strings,bound:a,lastValues:c,startNode:s,endNode:i}}function xe(e,t){if(e.kind==="noop")return{kind:"noop"};let n=t;for(let o of e.path)n=n.childNodes[o];if(e.kind==="child")return{kind:"child",marker:n};let r=n;if(e.kind==="event"){let o={kind:"event",el:r,name:e.name||"",handler:null,dispatcher(s){o.handler?.(s)}};return r.addEventListener(o.name,o.dispatcher),o}if(e.kind==="attr")return{kind:"attr",el:r,name:e.name||""};if(e.kind==="attr-mixed")return{kind:"attr-mixed",el:r,name:e.name||"",statics:e.statics||[],group:e.group||[]};if(e.kind==="prop")return{kind:"prop",el:r,name:e.name||""};if(e.kind==="bool")return{kind:"bool",el:r,name:e.name||""};if(e.kind==="element")return{kind:"element",el:r};if(e.kind==="slot")return{kind:"slot",slotEl:r,applied:!1};throw new Error(`unknown part kind ${e.kind}`)}function ke(e,t){for(let n=0;n<t.length;n++){let r=t[n];Object.is(r,e.lastValues[n])||(D(e.bound[n],r,e.lastValues[n],t),e.lastValues[n]=r)}}function kn(e,t){for(let n of e.bound){if(n.kind==="event"&&n.el.removeEventListener(n.name,n.dispatcher),n.kind==="element"){let r=n.lastTarget;if(r){if(typeof r=="function")try{r(void 0)}catch{}else typeof r=="object"&&(r.value=void 0);n.lastTarget=void 0,n.__lastEl=void 0}}if(n.kind==="slot"){let r=vt(n.slotEl);r&&En(r,n.slotEl)}}t.replaceChildren()}function D(e,t,n,r){if(ne(t)){let o=t.value;if(e.kind==="prop"&&e.el[e.name]===o||e.kind==="attr"&&e.el.getAttribute(e.name)===String(o)||e.kind==="bool"&&e.el.hasAttribute(e.name)===!!o)return;t=o}switch(e.kind){case"child":rs(e,t);break;case"attr":{t==null||t===!1?e.el.removeAttribute(e.name):e.el.setAttribute(e.name,String(t));break}case"prop":e.el[e.name]=t;break;case"bool":t?e.el.setAttribute(e.name,""):e.el.removeAttribute(e.name);break;case"event":e.handler=typeof t=="function"?t:null;break;case"element":ns(e,t);break;case"attr-mixed":{let o=e,s=o.statics[0];for(let i=0;i<o.group.length;i++)s+=String((r?r[o.group[i]]:t)??""),s+=o.statics[i+1]||"";e.el.setAttribute(e.name,s);break}case"slot":{if(e.applied)break;let o=e.slotEl,s=()=>{e.applied=!0;let a=vt(o);if(!a||ts(o))return;let c=document.createDocumentFragment();for(;o.firstChild;)c.appendChild(o.firstChild);o[Ke]=c,Ge(a)};vt(o)?s():queueMicrotask(s);break}case"noop":break}}function vt(e){let t=e.parentElement;for(;t;){if(t[K])return t;t=t.parentElement}return null}function ts(e){let t=e;for(let n=0;n<128;n++){let r=t.parentNode;if(!r||r===t)return!1;if(r.host)return!0;t=r}return!1}function ns(e,t){let n=e,r=oe(t)?t.target:void 0,o=n.__refTarget,s=r!==o;if(s&&o)if(typeof o=="function")try{o(void 0)}catch{}else typeof o=="object"&&(o.value=void 0);if(s||n.__refElement!==e.el){if(n.__refTarget=r,r)if(typeof r=="function"){if(!s&&n.__refElement!==void 0)try{r(void 0)}catch{}try{r(e.el)}catch{}}else typeof r=="object"&&(r.value=e.el);n.__refElement=e.el,e.lastTarget=r}}function rs(e,t){return as(e,t),P(e,t)}function P(e,t){let n=e.marker;if(te(t)){Y(e);let o=String(t.value??""),s=document.createElement("template");s.innerHTML=o;let i=[...s.content.childNodes],a=document.createDocumentFragment();for(let c of i)a.appendChild(c);n.parentNode?.insertBefore(a,n),e.child=i;return}if(re(t)){let o=t,s=e.__keyedKey;s!==void 0&&!Object.is(s,o.key)&&Y(e),e.__keyedKey=o.key,P(e,o.value);return}if(se(t)){let o=t,s=e.__guardDeps,i=o.deps;if(s!==void 0&&(Array.isArray(s)&&Array.isArray(i)?is(s,i):Object.is(s,i)))return;e.__guardDeps=Array.isArray(i)?i.slice():i,P(e,o.fn());return}if(me(t)){Y(e);let o=t.template;if(o&&o.content){let s=o.content.cloneNode(!0),i=[...s.childNodes];n.parentNode?.insertBefore(s,n),e.child=i}return}if(oe(t))return;if(ie(t))return cs(e,t.value);if(ae(t))return ls(e,t.args);if(ce(t))return us(e,t.signal);if(ge(t))return fs(e,t);if(be(t))return ds(e,t);if(ee(t)){if(e.child&&e.child.kind==="repeat"){os(e,t);return}Y(e);let o={kind:"repeat",map:new Map};e.child=o,ss(n,o,t);return}if(e.child){let o=e.child;if(o.kind==="repeat")Tn(o),e.child=void 0;else if(o.kind==="async-stream")Ln(o),e.child=void 0;else if("strings"in e.child){let s=e.child;if(C(t)&&s.strings===t.strings){ke(s,t.values);return}ve(s.startNode,s.endNode),e.child=void 0}else{for(let s of e.child)s.parentNode&&s.parentNode.removeChild(s);e.child=void 0}}if(t==null||t===!1||t===!0)return;if(C(t)){let o=t,{templateEl:s,parts:i}=Ee(o),a=s.content.cloneNode(!0),c=document.createComment(`${_}s`),l=document.createComment(`${_}e`),d=i.map(g=>xe(g,a)),m=[];for(let g=0;g<o.values.length;g++)D(d[g],o.values[g],void 0,o.values),m.push(o.values[g]);let u=[c,...a.childNodes,l];n.parentNode?.insertBefore(vn(u),n);for(let g of d)g.kind==="slot"&&D(g,void 0,void 0,[]);e.child={strings:o.strings,bound:d,lastValues:m,startNode:c,endNode:l};return}if(Array.isArray(t)){let o=[];for(let i of t)if(C(i)){let a=i,{templateEl:c,parts:l}=Ee(a),d=c.content.cloneNode(!0),m=l.map(u=>xe(u,d));for(let u=0;u<a.values.length;u++)D(m[u],a.values[u],void 0,a.values);o.push(...d.childNodes)}else i!=null&&i!==!1&&i!==!0&&o.push(document.createTextNode(String(i)));let s=vn(o);n.parentNode?.insertBefore(s,n),e.child=o;return}let r=document.createTextNode(String(t));n.parentNode?.insertBefore(r,n),e.child=[r]}function vn(e){let t=document.createDocumentFragment();for(let n of e)t.appendChild(n);return t}function ve(e,t){if(!e.parentNode)return;let n=e;for(;n&&n!==t;){let r=n.nextSibling;n.parentNode?.removeChild(n),n=r}t.parentNode===e.parentNode&&t.parentNode?.removeChild(t)}function Nn(e){let{templateEl:t,parts:n}=Ee(e),r=t.content.cloneNode(!0),o=document.createComment(`${_}s`),s=document.createComment(`${_}e`),i=n.map(l=>xe(l,r)),a=[];for(let l=0;l<e.values.length;l++)D(i[l],e.values[l],void 0,e.values),a.push(e.values[l]);let c=document.createDocumentFragment();for(c.appendChild(o);r.firstChild;)c.appendChild(r.firstChild);return c.appendChild(s),{inst:{strings:e.strings,bound:i,lastValues:a,startNode:o,endNode:s},frag:c}}function Ye(e){for(let t of e.bound)if(t.kind==="event"&&t.el.removeEventListener(t.name,t.dispatcher),t.kind==="element"){let n=t.lastTarget;if(n){if(typeof n=="function")try{n(void 0)}catch{}else typeof n=="object"&&(n.value=void 0);t.lastTarget=void 0,t.__lastEl=void 0}}}function ss(e,t,n){let{items:r,keyFn:o,templateFn:s}=n,i=e.parentNode;if(!i)return;let a=document.createDocumentFragment();for(let c=0;c<r.length;c++){let l=o(r[c],c),d=s(r[c],c);if(!C(d))continue;let{inst:m,frag:u}=Nn(d);t.map.set(l,m),a.appendChild(u)}i.insertBefore(a,e)}function os(e,t){let n=e.marker,r=n.parentNode;if(!r)return;let o=e.child,{items:s,keyFn:i,templateFn:a}=t,c=new Map;for(let l=0;l<s.length;l++){let d=i(s[l],l),m=a(s[l],l);if(!C(m))continue;let u=o.map.get(d);if(u&&u.strings===m.strings)ke(u,m.values),Nt(u.startNode,u.endNode,r,n),c.set(d,u),o.map.delete(d);else{u&&(Ye(u),ve(u.startNode,u.endNode),o.map.delete(d));let{inst:g,frag:b}=Nn(m);r.insertBefore(b,n),c.set(d,g)}}for(let l of o.map.values())Ye(l),ve(l.startNode,l.endNode);o.map=c}function Tn(e){for(let t of e.map.values())Ye(t),ve(t.startNode,t.endNode);e.map.clear()}function Nt(e,t,n,r){if(t.nextSibling===r&&e.parentNode===n)return;let o=document.createDocumentFragment(),s=e;for(;s;){let i=s.nextSibling;if(o.appendChild(s),s===t)break;s=i}n.insertBefore(o,r)}function is(e,t){if(e===t)return!0;if(!e||!t||e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!Object.is(e[n],t[n]))return!1;return!0}function Y(e){let t=e;if(t.__untilState&&(t.__untilState.aborted=!0,t.__untilState=void 0),t.__watchSub&&Rn(t),!e.child)return;let n=e.child;if(n.kind==="repeat")Tn(n);else if(n.kind==="async-stream")Ln(n);else if("strings"in n){let r=e.child;Ye(r),ve(r.startNode,r.endNode)}else for(let r of e.child)r.parentNode&&r.parentNode.removeChild(r);e.child=void 0}function as(e,t){let n=e;n.__untilState&&!ae(t)&&(n.__untilState.aborted=!0,n.__untilState=void 0),n.__guardDeps!==void 0&&!se(t)&&(n.__guardDeps=void 0),n.__cacheMap&&!ie(t)&&(n.__cacheMap=void 0),n.__keyedKey!==void 0&&!re(t)&&(n.__keyedKey=void 0),n.__watchSub&&!ce(t)&&Rn(n)}function cs(e,t){let n=e.marker,r=e,o=r.__cacheMap;o||(o=new Map,r.__cacheMap=o);let s=e.child;if(s&&"strings"in s){let a=s;if(C(t)&&a.strings===t.strings){ke(a,t.values);return}let c=document.createDocumentFragment();Nt(a.startNode,a.endNode,c,null),o.set(a.strings,{inst:a,holder:c}),e.child=void 0}if(C(t)){let a=t,c=o.get(a.strings);if(c){o.delete(a.strings),e.child&&Y(e),Nt(c.inst.startNode,c.inst.endNode,n.parentNode,n),ke(c.inst,a.values),e.child=c.inst;return}}P(e,t)}function ls(e,t){let n=e,r=n.__untilState,o=n.__untilArgs,s=(u,g)=>!!(Object.is(u,g)||C(u)&&C(g)&&u.strings===g.strings),a=o&&o.length===t.length&&o.every((u,g)=>s(u,t[g]))&&r?r.highestResolved:1/0;r&&(r.aborted=!0),n.__untilArgs=t.slice();let c={aborted:!1,highestResolved:a};n.__untilState=c;let l=-1,d;for(let u=0;u<t.length;u++){let g=t[u];if(!g||typeof g.then!="function"){l=u,d=g;break}}l!==-1&&l<=c.highestResolved?(P(e,d),c.highestResolved=l):l===-1&&!n.__untilEverRendered&&P(e,""),n.__untilEverRendered=!0;let m=Math.min(l===-1?t.length:l,c.highestResolved);for(let u=0;u<m;u++){let g=t[u];!g||typeof g.then!="function"||Promise.resolve(g).then(b=>{c.aborted||u>=c.highestResolved||(c.highestResolved=u,P(e,b))},()=>{})}}function us(e,t){let n=e;if(n.__watchSig===t&&n.__watchSub){let s;n.__watchSub.observe(()=>{s=t.get()}),P(e,s);return}n.__watchSub&&(n.__watchSub.dispose(),n.__watchSub=void 0),n.__watchSig=t;let r=new we.subtle.Watcher(()=>{queueMicrotask(()=>{if(n.__watchSub!==r)return;let s;r.observe(()=>{s=t.get()}),P(e,s)})});n.__watchSub=r;let o;r.observe(()=>{o=t.get()}),P(e,o)}function Rn(e){e.__watchSub&&(e.__watchSub.dispose(),e.__watchSub=void 0,e.__watchSig=void 0)}function fs(e,t){let n=e.child;if(n&&n.kind==="async-stream"&&n.mode==="append"&&n.iterable===t.iterable)return;Y(e);let r=t.iterable[Symbol.asyncIterator](),o={kind:"async-stream",mode:"append",aborted:!1,iterable:t.iterable,iterator:r,nodes:[]};e.child=o,jn(o,e,t)}function ds(e,t){let n=e.child;if(n&&n.kind==="async-stream"&&n.mode==="replace"&&n.iterable===t.iterable)return;Y(e);let r=t.iterable[Symbol.asyncIterator](),o={kind:"async-stream",mode:"replace",aborted:!1,iterable:t.iterable,iterator:r,nodes:[]};e.child=o,jn(o,e,t)}async function jn(e,t,n){let r=t.marker,o=0;try{for(;!e.aborted;){let s=await e.iterator.next();if(e.aborted||s.done)break;let i=n.mapper?n.mapper(s.value,o):s.value,a=On(i);if(e.mode==="replace"){for(let l of e.nodes)l.parentNode&&l.parentNode.removeChild(l);e.nodes=[]}let c=document.createDocumentFragment();for(let l of a)c.appendChild(l);r.parentNode?.insertBefore(c,r),e.nodes.push(...a),o++}}catch(s){typeof console<"u"&&console.error("[webjs] asyncStream error:",s)}}function On(e){if(e==null||e===!1||e===!0)return[];if(C(e)){let t=e,{templateEl:n,parts:r}=Ee(t),o=n.content.cloneNode(!0),s=r.map(i=>xe(i,o));for(let i=0;i<t.values.length;i++)D(s[i],t.values[i],void 0,t.values);return[...o.childNodes]}if(Array.isArray(e)){let t=[];for(let n of e)t.push(...On(n));return t}return[document.createTextNode(String(e))]}function Ln(e){e.aborted=!0;for(let t of e.nodes)t.parentNode&&t.parentNode.removeChild(t);e.nodes=[];try{e.iterator.return?.()?.catch?.(()=>{})}catch{}}var Mn=Symbol.for("webjs:registry"),$n=Symbol.for("webjs:classToTag"),Ze=globalThis,I=Ze[Mn]||(Ze[Mn]=new Map),Pn=Ze[$n]||(Ze[$n]=new WeakMap),Qe=typeof window<"u"&&typeof customElements<"u";function Tt(e,t){if(!e||typeof e!="string"||!e.includes("-"))throw new Error(`customElements.define: tag "${e}" must contain a hyphen (HTML spec)`);let n=t.lazy===!0,r=I.get(e);r?(r.cls=t,r.lazy=n):I.set(e,{cls:t,moduleUrl:null,lazy:n,tag:e}),Pn.set(t,e)}if(Qe){let e=customElements.define.bind(customElements);customElements.define=function(t,n,r){customElements.get(t)||e(t,n,r),Tt(t,n)}}if(!Qe){let e=globalThis;e.customElements||(e.customElements={define(t,n){Tt(t,n)},get(t){return I.get(t)?.cls},upgrade(){},whenDefined(t){let n=I.get(t);return Promise.resolve(n?.cls)}})}function Rt(e,t){Qe?customElements.define(e,t):Tt(e,t)}function hs(e,t){if(Qe)return;let n=I.get(e);if(n){n.moduleUrl=t;return}I.set(e,{cls:null,moduleUrl:t,lazy:!1,tag:e})}function jt(e){return I.get(e)?.cls}function ps(e){return I.get(e)?.moduleUrl||null}function ms(e){return I.get(e)?.lazy===!0}function Xe(e){return Pn.get(e)}function Ot(){return[...I.keys()]}var w="_$wj",Re="_id";async function je(e){return JSON.stringify(await In(e))}function Z(e){return Un(JSON.parse(e))}async function In(e){let t=gs();return await bs(e,t),J(e,t)}function Un(e){return H(e,Ss())}function gs(){return{refCount:new Map,idOf:new Map,emitted:new Set,nextId:0,blobBytes:new Map}}async function bs(e,t){let n=[e];for(;n.length;){let r=n.pop();if(!Cs(r))continue;let o=t.refCount.get(r)||0;if(t.refCount.set(r,o+1),!(o>0)){if(typeof Blob<"u"&&r instanceof Blob){let s=new Uint8Array(await r.arrayBuffer());t.blobBytes.set(r,s);continue}if(typeof FormData<"u"&&r instanceof FormData){for(let[,s]of r.entries())typeof s!="string"&&n.push(s);continue}if(Array.isArray(r))for(let s=0;s<r.length;s++)n.push(r[s]);else if(r instanceof Map)for(let[s,i]of r)n.push(s),n.push(i);else if(r instanceof Set)for(let s of r)n.push(s);else if(Es(r))for(let s in r)Object.prototype.hasOwnProperty.call(r,s)&&n.push(r[s])}}for(let[r,o]of t.refCount)o>1&&t.idOf.set(r,t.nextId++)}function J(e,t){if(e===null)return null;if(e===void 0)return{[w]:"undef"};let n=typeof e;if(n==="string"||n==="boolean")return e;if(n==="number")return Number.isNaN(e)?{[w]:"NaN"}:e===1/0?{[w]:"Inf"}:e===-1/0?{[w]:"-Inf"}:Object.is(e,-0)?{[w]:"-0"}:e;if(n==="bigint")return{[w]:"BigInt",v:e.toString()};if(n==="symbol"){let s=Symbol.keyFor(e);if(s===void 0)throw new TypeError("Cannot serialize a local Symbol; only Symbol.for() registered symbols are supported.");return{[w]:"Sym",v:s}}if(n==="function")throw new TypeError("Cannot serialize a function.");let r=t.idOf.get(e);if(r!==void 0&&t.emitted.has(r))return{[w]:"Ref",v:r};r!==void 0&&t.emitted.add(r);let o;if(e instanceof Date)o={[w]:"Date",v:Number.isNaN(e.getTime())?null:e.toISOString()};else if(e instanceof Error)o={[w]:"Error",v:{name:e.name,message:e.message,stack:e.stack||null}};else if(typeof Blob<"u"&&e instanceof Blob){let s=t.blobBytes.get(e);typeof File<"u"&&e instanceof File?o={[w]:"File",v:Te(s),n:e.name,t:e.type||"",m:e.lastModified}:o={[w]:"Blob",v:Te(s),t:e.type||""}}else if(typeof FormData<"u"&&e instanceof FormData){let s=[];for(let[i,a]of e.entries())s.push([i,J(a,t)]);o={[w]:"FD",v:s}}else if(ArrayBuffer.isView(e)||e instanceof ArrayBuffer)o=ys(e);else if(e instanceof Map){let s=[];for(let[i,a]of e)s.push([J(i,t),J(a,t)]);o={[w]:"Map",v:s}}else if(e instanceof Set){let s=[];for(let i of e)s.push(J(i,t));o={[w]:"Set",v:s}}else if(Array.isArray(e))o=e.map(s=>J(s,t));else{o={};for(let s in e){if(!Object.prototype.hasOwnProperty.call(e,s))continue;let i=xs(s)?"_"+s:s;o[i]=J(e[s],t)}}if(r!==void 0){if(Array.isArray(o))return{[w]:"Arr",[Re]:r,v:o};o[Re]=r}return o}function ys(e){if(e instanceof ArrayBuffer)return{[w]:"buf",v:Te(new Uint8Array(e))};if(e instanceof DataView)return{[w]:"dv",v:Te(new Uint8Array(e.buffer,e.byteOffset,e.byteLength))};let t=e.constructor.name,n=_s[t];if(!n)throw new TypeError(`Unsupported typed array: ${t}`);let r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return{[w]:n,v:Te(r)}}var _s={Int8Array:"i8",Uint8Array:"u8",Uint8ClampedArray:"u8c",Int16Array:"i16",Uint16Array:"u16",Int32Array:"i32",Uint32Array:"u32",Float32Array:"f32",Float64Array:"f64",BigInt64Array:"bi64",BigUint64Array:"bu64"},ws={i8:Int8Array,u8:Uint8Array,u8c:Uint8ClampedArray,i16:Int16Array,u16:Uint16Array,i32:Int32Array,u32:Uint32Array,f32:Float32Array,f64:Float64Array,bi64:typeof BigInt64Array<"u"?BigInt64Array:null,bu64:typeof BigUint64Array<"u"?BigUint64Array:null};function Ss(){return{refs:new Map}}function H(e,t){if(e===null||typeof e!="object")return e;if(Array.isArray(e)){let s=[];for(let i=0;i<e.length;i++)s.push(H(e[i],t));return s}let n=e[w];if(typeof n=="string")return As(e,n,t);let r={},o=e[Re];typeof o=="number"&&t.refs.set(o,r);for(let s in e){if(!Object.prototype.hasOwnProperty.call(e,s)||s===Re)continue;let i=ks(s)?s.slice(1):s;r[i]=H(e[s],t)}return r}function As(e,t,n){let r=e[Re],o=s=>(typeof r=="number"&&n.refs.set(r,s),s);switch(t){case"undef":return;case"NaN":return NaN;case"Inf":return 1/0;case"-Inf":return-1/0;case"-0":return-0;case"BigInt":return o(BigInt(e.v));case"Sym":return o(Symbol.for(e.v));case"Date":return o(e.v==null?new Date(NaN):new Date(e.v));case"Error":{let s=new Error(e.v.message);return s.name=e.v.name,e.v.stack&&(s.stack=e.v.stack),typeof r=="number"&&n.refs.set(r,s),s}case"Map":{let s=new Map;typeof r=="number"&&n.refs.set(r,s);for(let[i,a]of e.v)s.set(H(i,n),H(a,n));return s}case"Set":{let s=new Set;typeof r=="number"&&n.refs.set(r,s);for(let i of e.v)s.add(H(i,n));return s}case"Arr":{let s=[];typeof r=="number"&&n.refs.set(r,s);for(let i of e.v)s.push(H(i,n));return s}case"Ref":{let s=n.refs.get(e.v);if(s===void 0)throw new TypeError(`Dangling reference: id=${e.v}`);return s}case"Blob":{if(typeof Blob>"u")throw new TypeError("Blob is not available in this environment.");let s=Ne(e.v);return o(new Blob([s],{type:e.t||""}))}case"File":{if(typeof File>"u")throw new TypeError("File is not available in this environment.");let s=Ne(e.v);return o(new File([s],e.n,{type:e.t||"",lastModified:e.m}))}case"FD":{if(typeof FormData>"u")throw new TypeError("FormData is not available in this environment.");let s=new FormData;o(s);for(let[i,a]of e.v){let c=H(a,n);s.append(i,c)}return s}default:{if(t==="buf"){let i=Ne(e.v);return o(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength))}if(t==="dv"){let i=Ne(e.v);return o(new DataView(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)))}let s=ws[t];if(s){let i=Ne(e.v),a=i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength);return o(new s(a))}throw new TypeError(`Unknown serialization tag: ${t}`)}}}function Cs(e){return e!==null&&typeof e=="object"}function Es(e){if(e===null||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function xs(e){return/^_+\$wj$/.test(e)||/^_+id$/.test(e)}function ks(e){return/^__+\$wj$/.test(e)||/^__+id$/.test(e)}var qn=typeof Buffer<"u"&&typeof Buffer.from=="function";function Te(e){if(qn)return Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("base64");let t="";for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return btoa(t)}function Ne(e){if(qn){let r=Buffer.from(e,"base64");return new Uint8Array(r.buffer,r.byteOffset,r.byteLength)}let t=atob(e),n=new Uint8Array(t.length);for(let r=0;r<t.length;r++)n[r]=t.charCodeAt(r);return n}var Dn=typeof window<"u"&&typeof HTMLElement<"u";function vs(e,t){return e!==t}function Ns(){return{states:new Set,shadowRoot:null,form:null,labels:[],role:"",willValidate:!0,validity:{},validationMessage:"",setFormValue(){},setValidity(){},checkValidity(){return!0},reportValidity(){return!0}}}var Lt=class{constructor(){this.__ssrAttrs=new Map,this.__internals=null}get attributes(){return[...this.__ssrAttrs].map(([t,n])=>({name:t,value:n}))}getAttribute(t){let n=this.__ssrAttrs.get(String(t).toLowerCase());return n===void 0?null:n}setAttribute(t,n){this.__ssrAttrs.set(String(t).toLowerCase(),String(n))}removeAttribute(t){this.__ssrAttrs.delete(String(t).toLowerCase())}hasAttribute(t){return this.__ssrAttrs.has(String(t).toLowerCase())}toggleAttribute(t,n){let r=String(t).toLowerCase(),o=this.__ssrAttrs.has(r);return(n===void 0?!o:n)?(this.__ssrAttrs.set(r,""),!0):(this.__ssrAttrs.delete(r),!1)}getAttributeNames(){return[...this.__ssrAttrs.keys()]}addEventListener(){}removeEventListener(){}dispatchEvent(){return!0}attachInternals(){if(this.__internals!==null)throw new Error("Failed to execute 'attachInternals' on 'HTMLElement': ElementInternals for the specified element was already attached.");return this.__internals=Ns(),this.__internals}},Ts=Dn?HTMLElement:Lt,Mt=class extends Ts{static shadow=!1;static hydrate=void 0;static properties={};static styles=null;static register(t){Rt(t,this)}static get observedAttributes(){let t=this.properties||{};return Object.keys(t).filter(n=>!t[n].state).map(Bn)}constructor(){super(),this._renderRoot=null,this._scheduled=!1,this._connected=!1,this.__controllers=new Set,this.__firstRendered=!1,this._changedProperties=new Map,this._updateResolve=null,this._updatePromise=Promise.resolve(!0),this._isUpdating=!1,this._initializeProperties()}_initializeProperties(){let n=this.constructor.properties;if(!(!n||typeof n!="object")){this.__propValues={};for(let[r,o]of Object.entries(n)){let s=typeof o=="object"?o:{type:o},i=this[r];Object.defineProperty(this,r,{configurable:!0,enumerable:!0,get:()=>this.__propValues[r],set:a=>{let c=this.__propValues[r];(s.hasChanged||vs)(a,c)&&(this.__propValues[r]=a,s.reflect&&!s.state&&this._connected&&this._reflectAttribute(r,a,s),this.requestUpdate(r,c))}}),i!==void 0&&(this.__propValues[r]=i)}}}_reflectAttribute(t,n,r){let o=Bn(t);if(!this.__reflectingAttribute){this.__reflectingAttribute=!0;try{if(r.converter&&r.converter.toAttribute){let s=r.converter.toAttribute(n,r.type);s==null?this.removeAttribute(o):this.setAttribute(o,s)}else r.type===Boolean?n?this.setAttribute(o,""):this.removeAttribute(o):n==null?this.removeAttribute(o):r.type===Object||r.type===Array?this.setAttribute(o,JSON.stringify(n)):this.setAttribute(o,String(n))}finally{this.__reflectingAttribute=!1}}}connectedCallback(){if(!Dn)return;if(this.__webjsPropsHydrated||(this.__webjsPropsHydrated=!0,this._hydratePropAttrs()),this.constructor.hydrate==="visible"&&typeof IntersectionObserver<"u"&&!this.__hydrationActivated){this.__hydrationActivated=!1,this.__hydrationObserver=new IntersectionObserver(n=>{for(let r of n)if(r.isIntersecting){this.__hydrationObserver.unobserve(this),this.__hydrationObserver.disconnect(),this.__hydrationObserver=null,this.__hydrationActivated=!0,this._activate();return}},{rootMargin:"200px"}),this.__hydrationObserver.observe(this);return}this._activate()}_hydratePropAttrs(){let t=[],n=this.attributes;for(let r=0;r<n.length;r++){let o=n[r].name;o.startsWith("data-webjs-prop-")&&t.push(o)}for(let r of t){let o=this.getAttribute(r);if(this.removeAttribute(r),o==null)continue;let s=Fn(r.slice(16));try{this[s]=Z(o)}catch(i){console.warn(`[webjs] failed to decode ${r} on <${this.tagName.toLowerCase()}>: ${i&&i.message}`)}}}_activate(){this._connected=!0,this._reflectDeclaredAttributes();let t=this.constructor;if(t.shadow===!0){let n=!!this.shadowRoot;this.shadowRoot||this.attachShadow({mode:"open"}),this._renderRoot=this.shadowRoot;let r=t.styles,o=Array.isArray(r)?r:pe(r)?[r]:[];if(o.length){if(n){let s=this.shadowRoot.querySelector("style");s&&s.remove()}ft(this._renderRoot,o)}}else this._renderRoot=this,t.styles&&console.warn(`[webjs] <${Xe(t)||this.tagName?.toLowerCase()}> has static shadow = false AND static styles. static styles only works with shadow DOM (adoptedStyleSheets). For light DOM, use global CSS or <style> in render().`),xt(this)||(this.__isHydrating()?(F(this),wn(this)):_n(this));for(let n of this.__controllers)n.hostConnected&&n.hostConnected();this._updateResolve===null&&(this._updatePromise=new Promise(n=>{this._updateResolve=n})),this._scheduled=!0,queueMicrotask(()=>{this._scheduled=!1;try{this._performRender()}catch(n){console.error("[webjs] lifecycle hook threw during initial render:",n)}this._renderRoot===this&&An(this)})}__isHydrating(){let t=this.firstChild,n=t!=null&&t.nodeType===8&&t.data==="webjs-hydrate";return n&&(this.__hydratedAtActivate=!0),n}disconnectedCallback(){this._connected=!1,this.__hydrationObserver&&(this.__hydrationObserver.disconnect(),this.__hydrationObserver=null),this._renderRoot===this&&Cn(this),this.__signalWatcher&&(this.__signalWatcher.dispose(),this.__signalWatcher=void 0);for(let t of this.__controllers)t.hostDisconnected&&t.hostDisconnected()}attributeChangedCallback(t,n,r){if(this.__reflectingAttribute)return;let o=this.constructor,s=Fn(t),i=o.properties&&(o.properties[s]||o.properties[t]);if(!i)return;let a;if(i.converter&&i.converter.fromAttribute)a=i.converter.fromAttribute(r,i.type);else if(i.type===Number)a=r==null?null:Number(r);else if(i.type===Boolean)a=r!=null&&r!=="false";else if(i.type===Object||i.type===Array)try{a=r==null?null:JSON.parse(r)}catch{a=r}else a=r;this[s]!==a&&(this[s]=a,this._connected&&this.requestUpdate())}requestUpdate(t,n){t!==void 0&&!this._changedProperties.has(t)&&this._changedProperties.set(t,n),this._scheduleUpdate()}_scheduleUpdate(){this._updateResolve===null&&(this._updatePromise=new Promise(t=>{this._updateResolve=t})),!this._isUpdating&&(this._scheduled||!this._connected||(this._scheduled=!0,queueMicrotask(()=>{this._scheduled=!1;try{this._performRender()}catch(t){console.error("[webjs] lifecycle hook threw during update cycle:",t)}})))}_performRender(){if(!this._renderRoot)return;let t=this._changedProperties;this._isUpdating=!0;let n=!1;try{if(this.shouldUpdate(t)){this.willUpdate(t);for(let r of this.__controllers)r.hostUpdate&&r.hostUpdate();try{this.update(t)}catch(r){console.error(`[webjs] render error in <${Xe(this.constructor)||this.tagName?.toLowerCase()}>:`,r);try{let o=this.renderError(r);o!==void 0&&Je(o,this._renderRoot)}catch(o){console.error("[webjs] renderError() also threw:",o)}}for(let r of this.__controllers)r.hostUpdated&&r.hostUpdated();n=!0}}catch(r){console.error("[webjs] lifecycle hook threw during update phase:",r)}finally{this._isUpdating=!1,n&&(this._changedProperties=new Map)}if(n)try{this.__firstRendered||(this.__firstRendered=!0,this.firstUpdated(t)),this.updated(t)}catch(r){console.error("[webjs] lifecycle hook threw during post-commit phase:",r)}finally{this._resolveUpdate()}else this._resolveUpdate()}_resolveUpdate(){if(this._updateResolve){let t=this._changedProperties.size===0;this._updateResolve(t),this._updateResolve=null}}performServerUpdate(){let t=this._changedProperties;this._isUpdating=!0;try{this.willUpdate(t);for(let n of this.__controllers)n.hostUpdate&&n.hostUpdate();this._reflectDeclaredAttributes()}finally{this._isUpdating=!1}}_reflectDeclaredAttributes(){let t=this.constructor.properties||{};for(let n of Object.keys(t)){let r=t[n];!r||!r.reflect||r.state||this._reflectAttribute(n,this[n],r)}}shouldUpdate(t){return!0}willUpdate(t){}update(t){this.__signalWatcher||(this.__signalWatcher=new we.subtle.Watcher(()=>{this._connected&&this.requestUpdate()}));let n;this.__signalWatcher.observe(()=>{n=this.render()}),Je(n,this._renderRoot)}updated(t){}firstUpdated(t){}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._updatePromise}addController(t){this.__controllers.add(t),this._connected&&t.hostConnected&&t.hostConnected()}removeController(t){this.__controllers.delete(t)}render(){return""}renderError(t){}};function Bn(e){return e.replace(/([A-Z])/g,"-$1").toLowerCase()}function Fn(e){return e.replace(/-([a-z])/g,(t,n)=>n.toUpperCase())}var li=Symbol.for("webjs.suspense");function Rs(e){return{_$webjsSuspense:!0,fallback:e.fallback,children:e.children}}function et(e){return!!e&&typeof e=="object"&&e._$webjsSuspense===!0}var $t=null;function js(e){$t=e}function Pt(){if(!$t)return"";try{return $t()||""}catch{return""}}async function Os(e,t={ssr:!0}){let n=t&&t.suspenseCtx,r=await E(e,n);return t&&t.ssr===!1?r:await Oe(r,n)}async function E(e,t){if(e==null||e===!1||e===!0)return"";if(e&&typeof e.then=="function")return e=await e,E(e,t);if(te(e))return String(e.value??"");if(ne(e))return E(e.value,t);if(ce(e))return E(e.signal.get(),t);if(re(e))return E(e.value,t);if(se(e))return E(e.fn(),t);if(me(e)){let n=e.template;return String(n?.innerHTML??"")}if(oe(e))return"";if(ie(e))return E(e.value,t);if(ae(e)){let n=e.args;for(let r of n)if(!r||typeof r.then!="function")return E(r,t);if(n.length>0)try{let r=await Promise.race(n.map(o=>Promise.resolve(o).catch(()=>{})));return E(r,t)}catch{return""}return""}if(ge(e)||be(e))return"";if(Array.isArray(e))return(await Promise.all(e.map(r=>E(r,t)))).join("");if(ee(e)){let n=e;return(await Promise.all(n.items.map((o,s)=>E(n.templateFn(o,s),t)))).join("")}if(et(e)){let n=e,r=await E(n.fallback,t);if(t){let o=`s${t.nextId++}`;return t.pending.push({id:o,promise:Promise.resolve(n.children)}),`<webjs-boundary id="${o}">${r}</webjs-boundary>`}return r}return C(e)?Ls(e,t):Ue(String(e))}async function Ls(e,t){let{strings:n,values:r}=e,o="",s="text",i="",a=0,c="",l=0,d="",m="";for(let u=0;u<n.length;u++){let g=n[u];for(let b=0;b<g.length;b++){let p=g[b];switch(s){case"text":o+=p,p==="<"&&(s="tag-open");break;case"tag-open":o+=p,p==="!"?s="bang-1":p==="/"?(s="tag-name",d=""):/[a-zA-Z]/.test(p)?(s="tag-name",d=p.toLowerCase()):s="text";break;case"bang-1":o+=p,s=p==="-"?"bang-dash":"tag-name";break;case"bang-dash":o+=p,p==="-"?(s="comment",l=0):s="tag-name";break;case"comment":o+=p,p==="-"?l+=1:(p===">"&&l>=2&&(s="text"),l=0);break;case"tag-name":o+=p,p===">"?(s=nt(d)?"rawtext":"text",s==="rawtext"&&(m="")):/\s/.test(p)?s="in-tag":d+=p.toLowerCase();break;case"in-tag":o+=p,p===">"?(s=nt(d)?"rawtext":"text",s==="rawtext"&&(m="")):!/\s/.test(p)&&p!=="/"&&(s="attr-name",i=p,a=o.length-1);break;case"rawtext":o+=p,m=(m+p.toLowerCase()).slice(-9),(m.endsWith("<\/script>")||m.endsWith("</style>"))&&(s="text",m="",d="");break;case"attr-name":p==="="?(s="after-eq",o+=p):/\s/.test(p)?(s="in-tag",i="",o+=p):p===">"?(s="text",i="",o+=p):(i+=p,o+=p);break;case"after-eq":p==='"'||p==="'"?(s="attr-quoted",c=p,o+=p):/\s/.test(p)?(s="in-tag",i="",o+=p):p===">"?(s="text",i="",o+=p):(s="attr-unquoted",o+=p);break;case"attr-unquoted":/\s/.test(p)?(s="in-tag",i="",o+=p):(p===">"&&(s="text",i=""),o+=p);break;case"attr-quoted":o+=p,p===c&&(s="in-tag",i="");break}}if(u<r.length){let b=r[u];if(b&&typeof b.then=="function"&&(b=await b),s==="comment")o+=String(b??""),l=0;else if(s==="rawtext")o+=String(b??""),m="";else if(s==="text")o+=await E(b,t);else if(s==="after-eq"){let p=i[0],h=i.slice(1);if(p==="@")o=o.slice(0,a),s="in-tag",i="";else if(p==="."){if(o=o.slice(0,a),!d.includes("-")){s="in-tag",i="";continue}if(b===void 0){s="in-tag",i="";continue}try{let f=await je(b);o+=`data-webjs-prop-${Ws(h)}="${$(f)}"`}catch(f){console.warn(`[webjs] property binding .${h} has an unserializable value during SSR. Dropping. The browser will see the property as undefined. Detail: ${f&&f.message}`)}s="in-tag",i=""}else p==="?"?(o=o.slice(0,a),b&&(o+=`${h}=""`),s="in-tag",i=""):(o+=`"${$(String(b??""))}"`,s="in-tag",i="")}else(s==="attr-quoted"||s==="attr-unquoted")&&(o+=$(String(b??"")))}}return o}var Ms=new Set(["document","window","localStorage","sessionStorage","navigator","matchMedia","requestAnimationFrame","getComputedStyle","IntersectionObserver","MutationObserver","ResizeObserver"]),$s=new Set(["attachShadow","querySelector","querySelectorAll","getBoundingClientRect","focus","blur","scrollIntoView"]);function Ps(e){let t=e&&typeof e.message=="string"?e.message:"",n=/^(\w+) is not defined$/.exec(t);return e instanceof ReferenceError&&n&&Ms.has(n[1])?`\`${n[1]}\` is a browser-only global and is undefined during SSR.`:(n=/\.(\w+) is not a function$/.exec(t),e instanceof TypeError&&n&&$s.has(n[1])?`\`${n[1]}\` is an HTMLElement method that does not exist on the server-side component instance during SSR.`:null)}async function Oe(e,t){let n=Ot();if(!n.length)return e;let r=[...n].sort((l,d)=>d.length-l.length),o=new RegExp(`<(${r.map(tt).join("|")})(?=[\\s>/])((?:"[^"]*"|'[^']*'|[^>])*?)(/?)>`,"g"),s=[];for(let l of e.matchAll(o)){let[d,m,u,g]=l,b=jt(m);if(!b)continue;t&&t.usedComponents&&t.usedComponents.add(m);let p=g?`<${m}${u}>`:d;try{let h=b.shadow===!0,f=new b,x=Vn(u),y=zs(x),S=new Set(Object.keys(Vn(u)).map(T=>T.toLowerCase()));Ds(f,x),Vs(f,x,b);for(let[T,A]of Object.entries(y))f[T]=A;typeof f.performServerUpdate=="function"&&f.performServerUpdate(),p=Hs(p,f,S);let N=f.render?f.render():"";N&&typeof N.then=="function"&&(N=await N);let L=await E(N,t);if(h){let T=await Oe(L,t),A=b.styles,k=Array.isArray(A)?A:A&&pe(A)?[A]:[],lt=dt(k);s.push({start:l.index,end:l.index+d.length,text:`${p}<template shadowrootmode="open">${lt}${T}</template>`})}else{if(L.trim()===""){s.push({start:l.index,end:l.index+d.length,text:`${p}<!--webjs-hydrate-->`});continue}let A="",k=l.index+d.length;if(!g){let ut=l.index+d.length,Ie=Ut(e,ut,m);if(Ie!==-1){A=e.slice(ut,Ie);let yr=new RegExp(`</${tt(m)}\\s*>`,"i"),_r=e.slice(Ie),sn=yr.exec(_r),wr=sn?sn[0].length:`</${m}>`.length;k=Ie+wr}else A=e.slice(ut),k=e.length}let lt=Bs(A),gr=Fs(L,lt),br=await Oe(gr,t);s.push({start:l.index,end:k,text:`${p}<!--webjs-hydrate-->${br}</${m}>`})}}catch(h){let f=Ps(h);console.error(f?`[webjs] SSR failed for <${m}>: ${f} It was touched in the component's constructor or render(), which run during SSR. Move browser-only work to connectedCallback() or a lifecycle hook (firstUpdated/updated), which SSR never calls; seed first-paint defaults in the constructor only from server-known inputs (attributes / props).`:`[webjs] SSR failed for <${m}>:`,h)}}if(!s.length)return e;s.sort((l,d)=>l.start-d.start);let i=[],a=-1;for(let l of s)l.start>=a&&(i.push(l),a=l.end);let c=e;for(let l=i.length-1;l>=0;l--){let{start:d,end:m,text:u}=i[l];c=c.slice(0,d)+u+c.slice(m)}return c}var Is=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]);function Us(e){return Is.has(e.toLowerCase())}function Ut(e,t,n){let r=tt(n),o=new RegExp(`<${r}(?:[\\s>/])`,"gi"),s=new RegExp(`</${r}\\s*>`,"gi");o.lastIndex=t,s.lastIndex=t;let i=1;for(;i>0;){let a=o.exec(e),c=s.exec(e);if(!c)return-1;if(a&&a.index<c.index)i++,s.lastIndex=a.index+1;else{if(i--,i===0)return c.index;o.lastIndex=c.index+1}}return-1}function qs(e){let t=/\bslot\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s>]+))/i.exec(e);if(!t)return null;let n=t[1]??t[2]??t[3]??"";return n===""?null:n}function Bs(e){let t=new Map,n="",r=0;for(;r<e.length;){let o=e.indexOf("<",r);if(o===-1){n+=e.slice(r);break}o>r&&(n+=e.slice(r,o));let s=e.slice(o);if(s.startsWith("<!--")){let h=e.indexOf("-->",o+4);if(h===-1){n+=s,r=e.length;break}n+=e.slice(o,h+3),r=h+3;continue}if(s.startsWith("<!")||s.startsWith("</")){let h=e.indexOf(">",o);if(h===-1){n+=s,r=e.length;break}n+=e.slice(o,h+1),r=h+1;continue}let i=/^<([a-zA-Z][\w-]*)((?:"[^"]*"|'[^']*'|[^>])*?)(\/?)>/.exec(s);if(!i){n+="<",r=o+1;continue}let[a,c,l,d]=i,m=c.toLowerCase(),u=!!d||Us(m),g=qs(l),b;if(u)b=o+a.length;else{let h=o+a.length,f=Ut(e,h,m);if(f===-1){let L=e.slice(o);g!==null?Hn(t,g,L):n+=L,r=e.length;continue}let x=new RegExp(`</${tt(m)}\\s*>`,"i"),y=e.slice(f),S=x.exec(y),N=S?S[0].length:`</${m}>`.length;b=f+N}let p=e.slice(o,b);g!==null?Hn(t,g,p):n+=p,r=b}return n.length>0&&t.set(null,n),t}function Hn(e,t,n){let r=e.get(t);r!==void 0?e.set(t,r+n):e.set(t,n)}function Fs(e,t){let n=new Set,r="",o=0,s=/<slot((?:"[^"]*"|'[^']*'|[^>])*?)(\/?)>/gi,i;for(;(i=s.exec(e))!==null;){r+=e.slice(o,i.index);let[a,c,l]=i,d=!!l,m=/\bname\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s>]+))/i.exec(c),u=m?m[1]??m[2]??m[3]:null,g=c.replace(/\bname\s*=\s*(?:"[^"]*"|'[^']*'|[^\s>]+)/i,"").trim(),b="",p;if(d)p=i.index+a.length;else{let y=i.index+a.length,S=Ut(e,y,"slot");if(S===-1)b=e.slice(y),p=e.length;else{b=e.slice(y,S);let N=/<\/slot\s*>/i,L=e.slice(S),T=N.exec(L),A=T?T[0].length:7;p=S+A}}let h=t.get(u),f=u!==null?` name="${$(u)}"`:"",x=g?` ${g}`:"";h!==void 0&&!n.has(u)?(n.add(u),r+=`<slot data-webjs-light data-projection="actual"${f}${x}>${h}</slot>`):r+=`<slot data-webjs-light data-projection="fallback"${f}${x}>${b}</slot>`,o=p,s.lastIndex=p}return r+=e.slice(o),r}function tt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function nt(e){return e==="script"||e==="style"}function Vn(e){let t={},n=/([a-zA-Z_:][\w:.-]*)(?:\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s>]+)))?/g,r;for(;(r=n.exec(e))!==null;)t[r[1]]=r[2]??r[3]??r[4]??"";return t}function Ds(e,t){if(!(!e||typeof e.setAttribute!="function"))for(let[n,r]of Object.entries(t))e.setAttribute(n,qt(r))}function Hs(e,t,n){if(!t||typeof t.getAttributeNames!="function")return e;let r="";for(let o of t.getAttributeNames()){let s=String(o).toLowerCase();if(n.has(s))continue;let i=t.getAttribute(o);r+=i===""?` ${s}`:` ${s}="${$(String(i))}"`}return r?`${e.slice(0,-1)}${r}>`:e}function Vs(e,t,n){let r=n.properties||{};for(let[o,s]of Object.entries(t)){let i=r[o]||r[It(o)],a=r[o]?o:It(o);if(!i){e[a]=s;continue}if(i.type===Number)e[a]=Number(s);else if(i.type===Boolean)e[a]=s!=="false";else if(i.type===Object||i.type===Array)try{e[a]=JSON.parse(qt(s))}catch{e[a]=s}else e[a]=s}}function It(e){return e.replace(/-([a-z])/g,(t,n)=>n.toUpperCase())}function Ws(e){return e.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}function qt(e){return e.replace(/</g,"<").replace(/"/g,'"').replace(/&/g,"&")}function zs(e){let t={};for(let n of Object.keys(e)){if(!n.startsWith("data-webjs-prop-"))continue;let r=It(n.slice(16));try{t[r]=Z(qt(e[n]))}catch{}delete e[n]}return t}function Ks(e,t={ssr:!0}){let n=t&&t.suspenseCtx;return new ReadableStream({async start(r){try{if(t&&t.ssr===!1)await v(e,n,r);else{let o=await E(e,n),s=await Oe(o,n);r.enqueue(s)}n&&n.pending.length&&await Ys(n,r),r.close()}catch(o){r.error(o)}}})}async function v(e,t,n){if(!(e==null||e===!1||e===!0)){if(e&&typeof e.then=="function")return e=await e,v(e,t,n);if(te(e)){n.enqueue(String(e.value??""));return}if(ne(e))return v(e.value,t,n);if(ce(e))return v(e.signal.get(),t,n);if(re(e))return v(e.value,t,n);if(se(e))return v(e.fn(),t,n);if(me(e)){let r=e.template;n.enqueue(String(r?.innerHTML??""));return}if(!oe(e)){if(ie(e))return v(e.value,t,n);if(ae(e)){let r=e.args;for(let o of r)if(!o||typeof o.then!="function")return v(o,t,n);if(r.length>0)try{let o=await Promise.race(r.map(s=>Promise.resolve(s).catch(()=>{})));return v(o,t,n)}catch{return}return}if(!(ge(e)||be(e))){if(Array.isArray(e)){for(let r of e)await v(r,t,n);return}if(ee(e)){let r=e;for(let o=0;o<r.items.length;o++)await v(r.templateFn(r.items[o],o),t,n);return}if(et(e)){let r=e;if(t){let o=`s${t.nextId++}`;n.enqueue(`<webjs-boundary id="${o}">`),await v(r.fallback,t,n),n.enqueue("</webjs-boundary>"),t.pending.push({id:o,promise:Promise.resolve(r.children)})}else await v(r.fallback,t,n);return}if(C(e)){await Gs(e,t,n);return}n.enqueue(Ue(String(e)))}}}}async function Gs(e,t,n){let{strings:r,values:o}=e,s="text",i="",a=0,c="",l=0,d="",m="",u="";for(let g=0;g<r.length;g++){let b=r[g];for(let p=0;p<b.length;p++){let h=b[p];switch(s){case"text":u+=h,h==="<"&&(s="tag-open");break;case"tag-open":u+=h,h==="!"?s="bang-1":h==="/"?(s="tag-name",d=""):/[a-zA-Z]/.test(h)?(s="tag-name",d=h.toLowerCase()):s="text";break;case"bang-1":u+=h,s=h==="-"?"bang-dash":"tag-name";break;case"bang-dash":u+=h,h==="-"?(s="comment",l=0):s="tag-name";break;case"comment":u+=h,h==="-"?l+=1:(h===">"&&l>=2&&(s="text"),l=0);break;case"tag-name":u+=h,h===">"?(s=nt(d)?"rawtext":"text",s==="rawtext"&&(m="")):/\s/.test(h)?s="in-tag":d+=h.toLowerCase();break;case"in-tag":u+=h,h===">"?(s=nt(d)?"rawtext":"text",s==="rawtext"&&(m="")):!/\s/.test(h)&&h!=="/"&&(s="attr-name",i=h,a=u.length-1);break;case"rawtext":u+=h,m=(m+h.toLowerCase()).slice(-9),(m.endsWith("<\/script>")||m.endsWith("</style>"))&&(s="text",m="",d="");break;case"attr-name":h==="="?(s="after-eq",u+=h):/\s/.test(h)?(s="in-tag",i="",u+=h):h===">"?(s="text",i="",u+=h):(i+=h,u+=h);break;case"after-eq":h==='"'||h==="'"?(s="attr-quoted",c=h,u+=h):/\s/.test(h)?(s="in-tag",i="",u+=h):h===">"?(s="text",i="",u+=h):(s="attr-unquoted",u+=h);break;case"attr-unquoted":/\s/.test(h)?(s="in-tag",i="",u+=h):(h===">"&&(s="text",i=""),u+=h);break;case"attr-quoted":u+=h,h===c&&(s="in-tag",i="");break}}if(g<o.length){let p=o[g];if(p&&typeof p.then=="function"&&(p=await p),s==="comment")u+=String(p??""),l=0;else if(s==="rawtext")u+=String(p??""),m="";else if(s==="text")u&&(n.enqueue(u),u=""),await v(p,t,n);else if(s==="after-eq"){let h=i[0],f=i.slice(1);h==="@"||h==="."?(u=u.slice(0,a),s="in-tag",i=""):h==="?"?(u=u.slice(0,a),p&&(u+=`${f}=""`),s="in-tag",i=""):(u+=`"${$(String(p??""))}"`,s="in-tag",i="")}else(s==="attr-quoted"||s==="attr-unquoted")&&(u+=$(String(p??"")))}}u&&n.enqueue(u)}async function Ys(e,t){let n=Pt(),r=n?` nonce="${$(n)}"`:"";for(;e.pending.length;){let o=e.pending.splice(0);await Promise.all(o.map(async({id:s,promise:i})=>{try{let a=await i,c=await E(a,e),l=await Oe(c,e);t.enqueue(`<template data-webjs-resolve="${s}">${l}</template><script${r}>(function(){var t=document.currentScript.previousElementSibling;var b=document.getElementById("${s}");if(b&&t){b.innerHTML=t.innerHTML;t.remove()}document.currentScript.remove()})()<\/script>`)}catch(a){console.error(`[webjs] Suspense boundary "${s}" rejected:`,a)}}))}}var Wn=Symbol.for("webjs.notFound"),zn=Symbol.for("webjs.redirect");function Js(){let e=new Error("webjs: notFound()");throw e.__webjs=Wn,e}function Zs(e,t=307){let n=new Error(`webjs: redirect(${e})`);throw n.__webjs=zn,n.url=e,n.status=t,n}function Qs(e){return!!e&&e.__webjs===Wn}function Xs(e){return!!e&&e.__webjs===zn}function eo(e,t,n){let r=/^\s*([A-Z]+)\s+(\/\S*)\s*$/.exec(e);if(!r)throw new Error(`expose(): bad pattern ${JSON.stringify(e)}: expected "METHOD /path"`);let[,o,s]=r;return t.__webjsHttp={method:o,path:s,validate:n&&typeof n.validate=="function"?n.validate:null,cors:n&&"cors"in n?to(n.cors):null},t}function to(e){return e?e===!0?{origin:"*",credentials:!1,maxAge:86400,headers:null}:typeof e=="string"?{origin:e,credentials:!0,maxAge:86400,headers:null}:Array.isArray(e)?{origin:e,credentials:!0,maxAge:86400,headers:null}:{origin:e.origin,credentials:!!e.credentials,maxAge:typeof e.maxAge=="number"?e.maxAge:86400,headers:Array.isArray(e.headers)?e.headers:null}:null}function no(e){return e&&typeof e=="function"&&e.__webjsHttp||null}function ro(e,t={}){let n=t.reconnect!==!1,r=0,o=!1,s=null,i=[];function a(){o||(s=new WebSocket(so(e),t.protocols),s.onopen=c=>{for(r=0;i.length&&s&&s.readyState===WebSocket.OPEN;)s.send(i.shift());t.onOpen?.(c)},s.onmessage=c=>{let l=c.data;if(typeof l=="string")try{l=JSON.parse(l)}catch{}t.onMessage?.(l,c)},s.onerror=c=>{t.onError?.(c)},s.onclose=c=>{if(t.onClose?.(c),!o&&n){let l=Math.min(1e3*2**r++,3e4);setTimeout(a,l)}})}return a(),{send(c){let l=typeof c=="string"||c instanceof ArrayBuffer||ArrayBuffer.isView(c)?c:JSON.stringify(c);s&&s.readyState===WebSocket.OPEN?s.send(l):i.push(l)},close(c,l){o=!0;try{s?.close(c,l)}catch{}},get socket(){return s},get readyState(){return s?.readyState??3}}}function so(e){if(/^wss?:\/\//i.test(e))return e;let t=typeof location<"u"&&location.protocol==="https:"?"wss:":"ws:",n=typeof location<"u"?location.host:"";return`${t}//${n}${e.startsWith("/")?e:"/"+e}`}var Bt="application/vnd.webjs+json";async function oo(e,t={}){let n=new Headers(t.headers||{});n.has("accept")||n.set("accept",Bt);let r=t.body;r!=null&&typeof r=="object"&&!(r instanceof FormData)&&!(r instanceof Blob)&&!(r instanceof ArrayBuffer)&&!(r instanceof URLSearchParams)&&!(typeof ReadableStream<"u"&&r instanceof ReadableStream)&&!ArrayBuffer.isView(r)&&(r=await je(r),n.has("content-type")||n.set("content-type",Bt));let o=await fetch(e,{...t,headers:n,body:r}),s=o.headers.get("content-type")||"",i=await o.text(),a=s.includes(Bt)?i?Z(i):null:s.includes("application/json")?i?JSON.parse(i):null:i;if(!o.ok){let c=a&&a.error||`richFetch ${e} -> ${o.status}`,l=new Error(c);throw l.status=o.status,l.body=a,l}return a}var Ft=typeof HTMLElement<"u"?class extends HTMLElement{}:null;typeof customElements<"u"&&Ft&&!customElements.get("webjs-frame")&&customElements.define("webjs-frame",Ft);function Zn(e){return typeof Document<"u"&&typeof Document.parseHTMLUnsafe=="function"?Document.parseHTMLUnsafe(e):typeof DOMParser<"u"?new DOMParser().parseFromString(e,"text/html"):null}var X=!1,W=null,O=0,Dt=null;function io(){Dt||typeof MutationObserver>"u"||typeof customElements>"u"||(Dt=new MutationObserver(e=>{for(let t of e)for(let n of t.addedNodes){if(n.nodeType!==1)continue;let r=n;r.tagName?.includes("-")&&customElements.upgrade(r);for(let o of r.querySelectorAll("*"))o.tagName?.includes("-")&&customElements.upgrade(o)}}),Dt.observe(document.body,{childList:!0,subtree:!0}))}var z=null,rt=null;function Qn(){X||typeof document>"u"||(X=!0,document.addEventListener("click",Xn,!1),document.addEventListener("submit",tr,!1),window.addEventListener("popstate",er),document.addEventListener("pointerover",de,!0),document.addEventListener("focusin",de,!0),document.addEventListener("touchstart",de,{capture:!0,passive:!0}),document.addEventListener("pointerout",cr,!0),document.addEventListener("webjs:navigate",Kt),io(),Kt(),typeof history<"u"&&"scrollRestoration"in history&&(rt=history.scrollRestoration,history.scrollRestoration="manual"),typeof location<"u"&&(z=location.href))}function ao(){X&&(X=!1,document.removeEventListener("click",Xn,!1),document.removeEventListener("submit",tr,!1),window.removeEventListener("popstate",er),document.removeEventListener("pointerover",de,!0),document.removeEventListener("focusin",de,!0),document.removeEventListener("touchstart",de,{capture:!0}),document.removeEventListener("pointerout",cr,!0),document.removeEventListener("webjs:navigate",Kt),Xt(),V&&(V.disconnect(),V=null),typeof history<"u"&&rt!==null&&(history.scrollRestoration=rt,rt=null),z=null)}async function co(e,t){let n=new URL(e,location.href);if(n.origin!==location.origin){location.href=e;return}await Qt(n.href,t?.replace??!1,null)}function lo(e){if(!e){R.clear(),j.clear();return}let t=new URL(e,location.href),n=t.pathname+t.search;R.delete(n),j.delete(n)}var Zt=/\.(?:pdf|zip|tar|gz|7z|rar|dmg|exe|msi|deb|rpm|apk|ipa|xlsx?|docx?|pptx?|csv|odt|ods|odp|rtf|epub|mobi|xml|json|rss|atom|txt|md|wasm|mp3|mp4|mov|avi|webm|ogg|flac|wav|m4a|m4v|mkv|png|jpe?g|gif|webp|avif|bmp|ico|svg|tiff?|heic)$/i;function Xn(e){if(!X||e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;let t=po(e);if(!t||t.hasAttribute("download")||t.hasAttribute("data-no-router")||t.target&&t.target!=="_self")return;let n=t.href;if(!n)return;let r=new URL(n);if(r.origin!==location.origin||r.pathname===location.pathname&&r.search===location.search&&r.hash||Zt.test(r.pathname))return;e.preventDefault();let o=nr(t);Qt(n,!1,o)}function er(e){Qt(location.href,!0,null)}function tr(e){if(!X||e.defaultPrevented)return;let t=e.target;if(!t||t.nodeType!==1||t.tagName!=="FORM"||t.hasAttribute("data-no-router"))return;let n=e.submitter??null;if(n&&n.hasAttribute("data-no-router"))return;let r=n&&n.getAttribute("formtarget")||t.getAttribute("target")||"";if(r&&r!=="_self")return;let o=uo(t,n);if(o==="dialog")return;let s=fo(t,n),i;try{i=new URL(s,location.href)}catch{return}if(i.origin!==location.origin||Zt.test(i.pathname))return;let a=ho(t,n);e.preventDefault();let c=nr(t);yo(i.href,o,a,c)}function uo(e,t){return(t&&t.getAttribute("formmethod")||e.getAttribute("method")||"get").toLowerCase()}function fo(e,t){return t&&t.hasAttribute("formaction")?t.getAttribute("formaction")||"":e.getAttribute("action")||e.action||location.href}function ho(e,t){try{return new FormData(e,t||void 0)}catch{let n=new FormData(e);return t&&t.getAttribute("name")&&n.append(t.getAttribute("name"),t.getAttribute("value")||""),n}}function po(e){for(let t of e.composedPath())if(t instanceof HTMLAnchorElement)return t;return null}function nr(e){let t=e;for(;t;){let n=t.closest("webjs-frame");if(n&&n.id)return n.id;let r=t.getRootNode();if(r&&r.host)t=r.host;else break}return null}function it(e){let t=new Map,n=[];function r(o){if(o.nodeType===8){let s=o,i=s.data,a=/^wj:children:(.+)$/.exec(i);if(a){n.push({path:a[1],start:s});return}if(i.trim()==="/wj:children"){let c=n.pop();c&&!t.has(c.path)&&t.set(c.path,{start:c.start,end:s});return}return}if(o.hasChildNodes&&o.hasChildNodes())for(let s=o.firstChild;s;s=s.nextSibling)r(s)}return r(e),t}function mo(e,t){let n=null;for(let r of e.keys())t.has(r)&&(n===null||r.length>n.length)&&(n=r);return n}var go=16,R=new Map;function rr(e){let t=he(e);R.has(t)&&R.delete(t);let n={html:document.documentElement.outerHTML,scrollX:typeof window<"u"&&window.scrollX||0,scrollY:typeof window<"u"&&window.scrollY||0};for(R.set(t,n);R.size>go;){let r=R.keys().next().value;R.delete(r)}}function bo(e){let t=he(e),n=R.get(t);return n==null?null:(R.delete(t),R.set(t,n),typeof n=="string"?{html:n,scrollX:0,scrollY:0}:n)}function he(e){let t=new URL(e,location.href);return t.pathname+t.search}async function Qt(e,t,n){W&&W.abort(),W=new AbortController;let r=W.signal,o=++O;z&&rr(z);let s=setTimeout(()=>{document.documentElement.setAttribute("data-navigating",""),s=null},150),i=null;t||(i=dr());try{if(t){let a=bo(e);if(a){let c=Zn(a.html);if(c){ur(c,n,!0,null),typeof window<"u"&&window.scrollTo(a.scrollX,a.scrollY),Gt(e,n,!1,i,"GET",null,r,o).catch(()=>{});return}}typeof window<"u"&&window.scrollTo(0,0)}await Gt(e,n,!t,i,"GET",null,r,o)}finally{s&&clearTimeout(s),o===O&&(document.documentElement.removeAttribute("data-navigating"),typeof location<"u"&&(z=location.href))}}async function yo(e,t,n,r){W&&W.abort(),W=new AbortController;let o=W.signal,s=++O,i=t==="get"||t==="head",a=new URL(e,location.href);if(i){a.search="";for(let[d,m]of n)a.searchParams.append(d,typeof m=="string"?m:m.name)}z&&rr(z);let c=setTimeout(()=>{document.documentElement.setAttribute("data-navigating",""),c=null},150),l=dr();try{await Gt(a.href,r,!0,l,i?"GET":t.toUpperCase(),i?null:n,o,s),!i&&s===O&&(R.clear(),j.clear())}finally{c&&clearTimeout(c),s===O&&(document.documentElement.removeAttribute("data-navigating"),typeof location<"u"&&(z=location.href))}}function sr(){return[...it(document.body).keys()].join(",")}var _o=8,or=3e4,ir=3,wo=24,So=100,j=new Map,Le=new Set,Me=[],st=new Set,fe=null,$e=null,V=null;function ar(){try{let e=typeof navigator<"u"?navigator.connection:null;if(e&&e.saveData===!0||typeof matchMedia=="function"&&matchMedia("(prefers-reduced-data: reduce)").matches)return!0}catch{}return!1}function Ao(e){let t=e.getAttribute("rel");return t?t.toLowerCase().split(/\s+/).filter(Boolean):[]}function Vt(e){if(!e||!(e instanceof HTMLAnchorElement)||e.hasAttribute("download")||e.hasAttribute("data-no-router")||e.target&&e.target!=="_self")return null;let t=e.href;if(!t)return null;let n;try{n=new URL(t)}catch{return null}return n.origin!==location.origin||n.pathname===location.pathname&&n.search===location.search&&n.hash||Zt.test(n.pathname)?null:t}function Co(e){if(e.hasAttribute("data-no-prefetch"))return!0;let t=Ao(e);return t.includes("external")||t.includes("no-prefetch")}function Wt(e){if(Co(e))return"none";switch((e.getAttribute("data-prefetch")||"").toLowerCase().trim()){case"false":case"none":return"none";case"true":case"render":return"render";case"auto":case"viewport":return"viewport";case"intent":return"intent";default:return"intent"}}function at(e){if(typeof fetch!="function"||ar())return;let t=he(e);if(Le.has(t)||st.has(t))return;let n=j.get(t);if(n&&zt()-n.at<or)return;if(Le.size>=ir){for(st.add(t),Me.push(e);Me.length>wo;){let s=Me.shift();st.delete(he(s))}return}Le.add(t);let r={"x-webjs-router":"1","x-webjs-prefetch":"1"},o=sr();o&&(r["x-webjs-have"]=o),fetch(e,{method:"GET",headers:r,credentials:"same-origin"}).then(async s=>{let i=s.headers.get("content-type")||"";if(!/^text\/html\b/i.test(i)||s.status>=400)return;let a=s.headers.get("x-webjs-build"),c=s.redirected&&s.url?s.url:e,l=await s.text();xo(t,{html:l,build:a,finalUrl:c,at:zt()})}).catch(()=>{}).finally(()=>{Le.delete(t),Eo()})}function Eo(){for(;Me.length&&Le.size<ir;){let e=Me.shift();st.delete(he(e)),at(e)}}function xo(e,t){for(j.has(e)&&j.delete(e),j.set(e,t);j.size>_o;){let n=j.keys().next().value;j.delete(n)}typeof document<"u"&&document.dispatchEvent(new CustomEvent("webjs:prefetch",{detail:{url:t.finalUrl,key:e,from:"prefetch"}}))}function ko(e){let t=he(e),n=j.get(t);return!n||(j.delete(t),zt()-n.at>=or)?null:n}function zt(){try{if(typeof performance<"u"&&typeof performance.now=="function")return performance.now()}catch{}return 0}function de(e){if(!X)return;let t=lr(e.target);if(!t||Wt(t)!=="intent")return;let n=Vt(t);n&&($e===t&&fe||(Xt(),$e=t,fe=setTimeout(()=>{fe=null,$e=null,at(n)},So)))}function cr(e){let t=lr(e.target);t&&t===$e&&Xt()}function Xt(){fe&&(clearTimeout(fe),fe=null),$e=null}function lr(e){let t=e;for(;t;){if(t instanceof HTMLAnchorElement)return t;let n=t.nodeType===1?t:null;if(n){let o=n.closest&&n.closest("a");if(o instanceof HTMLAnchorElement)return o}let r=t.getRootNode?t.getRootNode():null;t=r&&r.host?r.host:null}return null}function Kt(){if(typeof document>"u"||ar())return;let e=typeof IntersectionObserver<"u";e&&(V?V.disconnect():V=new IntersectionObserver(t=>{for(let n of t){if(!n.isIntersecting)continue;let r=n.target;V.unobserve(r);let o=Vt(r);o&&Wt(r)==="viewport"&&at(o)}},{threshold:.5}));for(let t of document.querySelectorAll("a[href]")){let n=Wt(t);if(n==="render"){let r=Vt(t);r&&at(r)}else n==="viewport"&&e&&V.observe(t)}}async function Gt(e,t,n,r,o,s,i,a){o=o||"GET";let c=typeof a=="number"?a:O,l,d=null,m=e;try{let g=o==="GET"&&!s&&!t?ko(e):null;if(g)l=g.html,d=g.build,m=g.finalUrl;else{let b={"x-webjs-router":"1"},p=sr();p&&(b["x-webjs-have"]=p),t&&(b["x-webjs-frame"]=t);let h={method:o,headers:b,credentials:"same-origin"};i&&(h.signal=i),s!=null&&o!=="GET"&&o!=="HEAD"&&(h.body=s);let f=await fetch(e,h),x=f.headers.get("content-type")||"",y=/^text\/html\b/i.test(x);if(f.redirected&&f.url&&(m=f.url),f.status===204||f.status===205){c===O&&n&&history.pushState(null,"",m);return}if(!y){c===O&&(location.href=e);return}d=f.headers.get("x-webjs-build"),l=await f.text()}}catch(g){if(g&&g.name==="AbortError"||c!==O)return;To(r),location.href=e;return}if(c!==O)return;let u=Zn(l);if(!u){location.href=e;return}if(ur(u,t,!1,m,d),n&&history.pushState(null,"",m),n){let g=new URL(m);if(g.hash){let b=document.getElementById(g.hash.slice(1));b?b.scrollIntoView():window.scrollTo(0,0)}else window.scrollTo(0,0)}document.dispatchEvent(new CustomEvent("webjs:navigate",{detail:{url:m,frameId:t,from:"navigate"}}))}function Kn(e){if(!e||!e.head)return"";let t=e.head.querySelectorAll('[data-webjs-track="reload"]');if(!t.length)return"";let n="";for(let r of t)n+=Q(r);return n}function ur(e,t,n,r,o){try{typeof sessionStorage<"u"&&(!r||t||n)&&sessionStorage.removeItem("webjs:importmap-reload")}catch{}if(r&&!t&&!n){let d=document.querySelector('script[type="importmap"]'),m=d?d.getAttribute("data-webjs-build"):null,u=!1;if(o&&m&&(u=o!==m),!u&&e.head&&e.head.children.length>0){let g=Kn(document),b=Kn(e);g!==b&&(u=!0)}if(u&&typeof location<"u")try{let g="webjs:importmap-reload";if(sessionStorage&&sessionStorage.getItem(g))sessionStorage.removeItem(g);else{sessionStorage&&sessionStorage.setItem(g,"1"),location.href=r;return}}catch{location.href=r;return}else if(!u)try{typeof sessionStorage<"u"&&sessionStorage.removeItem("webjs:importmap-reload")}catch{}}if(t){let d=document.querySelector(`webjs-frame#${CSS.escape(t)}`),m=e.querySelector(`webjs-frame#${CSS.escape(t)}`);if(d&&m){Yn(e.head),Ro(d,m),Jt(d),ot(d),Jn(e.body),Ht();return}}let s=it(document.body),i=it(e.body),a=mo(s,i);if(a){Yn(e.head),vo(s.get(a),i.get(a),e),Jn(e.body),Ht();return}jo(e.head);let c=[...e.body.childNodes],l=()=>{document.body.replaceChildren(...c),Jt(document.body),ot(document.body),Ht()};document.startViewTransition?document.startViewTransition(l).finished.then(()=>ot(document.body)).catch(()=>{}):l()}function Ht(){let e=document.activeElement;!e||e===document.body||e===document.documentElement||typeof e.blur=="function"&&e.blur()}function vo(e,t,n){if(!e||!t)return;let r=e.start.parentNode;if(!r)return;let o=[];for(let i=e.start.nextSibling;i&&i!==e.end;i=i.nextSibling)o.push(i);let s=[];for(let i=t.start.nextSibling;i&&i!==t.end;i=i.nextSibling)s.push(document.importNode(i,!0));No(r,e.start,e.end,o,s);for(let i=e.start.nextSibling;i&&i!==e.end;i=i.nextSibling)i.nodeType===1&&(Jt(i),ot(i))}function No(e,t,n,r,o){let s=new Map;for(let c of r){if(c.nodeType!==1)continue;let l=Pe(c);l&&s.set(l,c)}let i=n,a=[];for(let c of o){if(c.nodeType===1){let l=Pe(c);if(l&&s.has(l)){let d=s.get(l);Yt(d,c),a.push(d),s.delete(l);continue}}a.push(c)}for(let c of r)if(c.parentNode===e){if(c.nodeType===1&&a.includes(c))continue;e.removeChild(c)}for(let c of a)e.insertBefore(c,i)}function Yt(e,t){if(e.tagName!==t.tagName){e.replaceWith(t);return}let n=new Set;for(let r of t.attributes)n.add(r.name),!Gn.has(r.name)&&e.getAttribute(r.name)!==r.value&&e.setAttribute(r.name,r.value);for(let r of[...e.attributes])Gn.has(r.name)||n.has(r.name)||e.removeAttribute(r.name);fr(e,t)}function fr(e,t){let n=[...e.childNodes],r=[...t.childNodes].map(a=>document.importNode(a,!0)),o=new Map;for(let a of n){if(a.nodeType!==1)continue;let c=Pe(a);c&&o.set(c,a)}let s=[];for(let a=0;a<r.length;a++){let c=r[a];if(c.nodeType===1){let l=Pe(c);if(l&&o.has(l)){let m=o.get(l);Yt(m,c),s.push(m),o.delete(l);continue}let d=n[a];if(d&&d.nodeType===1&&!Pe(d)&&d.tagName===c.tagName){Yt(d,c),s.push(d);continue}}else if(c.nodeType===3){let l=n[a];if(l&&l.nodeType===3){l.nodeValue!==c.nodeValue&&(l.nodeValue=c.nodeValue),s.push(l);continue}}else if(c.nodeType===8){let l=n[a];if(l&&l.nodeType===8){l.nodeValue!==c.nodeValue&&(l.nodeValue=c.nodeValue),s.push(l);continue}}s.push(c)}let i=new Set(s);for(let a of n)!i.has(a)&&a.parentNode===e&&e.removeChild(a);for(let a=0;a<s.length;a++){let c=s[a];(c.parentNode!==e||e.childNodes[a]!==c)&&e.insertBefore(c,e.childNodes[a]||null)}}function Pe(e){let t=e.getAttribute("data-key");return t?`${e.tagName}:k:${t}`:e.id?`${e.tagName}:i:${e.id}`:null}var Gn=new Set(["value","checked","selected","indeterminate","disabled","open","popover"]);function dr(){let e=it(document.body);if(e.size===0)return null;let t=null;for(let i of e.keys())(t===null||i.length>t.length)&&(t=i);if(t===null)return null;let n=document.getElementById(`wj-loading:${t}`);if(!(n instanceof HTMLTemplateElement))return null;let r=e.get(t),o=[];for(let i=r.start.nextSibling;i&&i!==r.end;i=i.nextSibling)o.push(i);let s=document.createRange();return s.setStartAfter(r.start),s.setEndBefore(r.end),s.deleteContents(),r.start.parentNode.insertBefore(n.content.cloneNode(!0),r.end),{slot:r,oldChildren:o,token:O}}function To(e){if(!e||e.token!==O)return;let{slot:t,oldChildren:n}=e;if(t.start.parentNode!==t.end.parentNode)return;let r=document.createRange();r.setStartAfter(t.start),r.setEndBefore(t.end),r.deleteContents();for(let o of n)t.start.parentNode.insertBefore(o,t.end)}function Ro(e,t){fr(e,t)}function hr(){if(typeof document>"u")return"";let e=document.querySelector('meta[name="csp-nonce"]');return e&&e.getAttribute("content")||""}function en(e){let t=document.createElement("script");for(let r of e.attributes)r.name!=="nonce"&&t.setAttribute(r.name,r.value);let n=hr();return n&&t.setAttribute("nonce",n),t.textContent=e.textContent,t}function pr(e){if(!e.hasAttribute("nonce"))return e.cloneNode(!0);let t=e.cloneNode(!0),n=hr();return n?t.setAttribute("nonce",n):t.removeAttribute("nonce"),t}function Q(e){if(!e.hasAttribute("nonce"))return e.outerHTML;let t=e.cloneNode(!0);return t.removeAttribute("nonce"),t.outerHTML}function Yn(e){let t=e.querySelector("title");t&&(document.title=t.textContent||"");let n=new Set;for(let r of document.head.children)n.add(Q(r));for(let r of e.children)r.tagName==="SCRIPT"&&r.getAttribute("type")==="importmap"||r.tagName!=="BASE"&&r.tagName!=="TITLE"&&(n.has(Q(r))||(r.tagName==="SCRIPT"?document.head.appendChild(en(r)):document.head.appendChild(pr(r))))}function jo(e){let t=document.head,n=e.querySelector("title");n&&(document.title=n.textContent||"");let r=new Set;for(let s of t.children)s.tagName==="SCRIPT"&&s.getAttribute("type")==="importmap"||s.tagName!=="BASE"&&r.add(Q(s));let o=new Set;for(let s of e.children)s.tagName==="SCRIPT"&&s.getAttribute("type")==="importmap"||s.tagName!=="BASE"&&o.add(Q(s));for(let s of[...t.children])s.tagName==="SCRIPT"&&s.getAttribute("type")==="importmap"||s.tagName!=="BASE"&&s.tagName!=="TITLE"&&(o.has(Q(s))||s.remove());for(let s of e.children)s.tagName==="SCRIPT"&&s.getAttribute("type")==="importmap"||s.tagName!=="BASE"&&s.tagName!=="TITLE"&&(r.has(Q(s))||(s.tagName==="SCRIPT"?t.appendChild(en(s)):t.appendChild(pr(s))))}function ot(e){typeof customElements>"u"||mr(e)}function mr(e){let t=e instanceof Element?[e,...e.querySelectorAll("*")]:[...e.querySelectorAll("*")];for(let n of t)n.tagName&&n.tagName.includes("-")&&(customElements.upgrade(n),n.shadowRoot&&mr(n.shadowRoot))}function Jn(e){for(let t of e.querySelectorAll("template[data-webjs-resolve]"))document.body.appendChild(t.cloneNode(!0))}function Jt(e){for(let t of e.querySelectorAll("script"))t.replaceWith(en(t))}Qn();var Oo=Symbol.for("webjs.context");function Lo(e){return{__context__:Oo,name:e}}var ct=class extends Event{constructor(t,n,r=!1){super("context-request",{bubbles:!0,composed:!0}),this.context=t,this.callback=n,this.subscribe=r}},tn=class{constructor(t,{context:n,initialValue:r}){this._host=t,this._context=n,this._value=r,this._subscriptions=new Set,this._onRequest=o=>{let s=o;if(s.context===this._context)if(o.stopPropagation(),s.subscribe){let i={callback:s.callback},a=()=>{this._subscriptions.delete(i)};this._subscriptions.add(i),s.callback(this._value,a)}else s.callback(this._value)},typeof t.addController=="function"&&t.addController(this)}get value(){return this._value}setValue(t){if(!Object.is(this._value,t)){this._value=t;for(let n of this._subscriptions){let r=()=>{this._subscriptions.delete(n)};n.callback(t,r)}}}hostConnected(){this._host.addEventListener("context-request",this._onRequest)}hostDisconnected(){this._host.removeEventListener("context-request",this._onRequest),this._subscriptions.clear()}},nn=class{constructor(t,{context:n,subscribe:r=!0}){this._host=t,this._context=n,this._subscribe=r,this._value=void 0,this._unsubscribe=void 0,typeof t.addController=="function"&&t.addController(this)}get value(){return this._value}hostConnected(){this._dispatchRequest()}hostDisconnected(){this._unsubscribe&&(this._unsubscribe(),this._unsubscribe=void 0)}_dispatchRequest(){let t=new ct(this._context,(n,r)=>{let o=this._value;this._value=n,r&&(this._unsubscribe=r),!Object.is(o,n)&&typeof this._host.requestUpdate=="function"&&this._host.requestUpdate()},this._subscribe);this._host.dispatchEvent(t)}};function Mo(){return typeof window<"u"}var U={INITIAL:0,PENDING:1,COMPLETE:2,ERROR:3},rn=class{constructor(t,{task:n,args:r,autoRun:o=!0}){this._host=t,this._taskFn=n,this._argsFn=r||(()=>[]),this._autoRun=o,this._status=U.INITIAL,this._value=void 0,this._error=void 0,this._abortController=null,this._prevArgs=null,typeof t.addController=="function"&&t.addController(this)}get status(){return this._status}get value(){return this._value}get error(){return this._error}async run(){this.abort();let t=new AbortController;this._abortController=t;let n=this._argsFn();this._prevArgs=n,this._status=U.PENDING,this._error=void 0,this._requestHostUpdate();try{let r=await this._taskFn(...n,{signal:t.signal});if(t.signal.aborted)return;this._value=r,this._status=U.COMPLETE,this._error=void 0}catch(r){if(t.signal.aborted)return;this._error=r,this._status=U.ERROR,this._value=void 0}finally{this._abortController===t&&(this._abortController=null)}this._requestHostUpdate()}abort(){this._abortController&&(this._abortController.abort(),this._abortController=null)}render(t={}){switch(this._status){case U.INITIAL:return t.initial?.();case U.PENDING:return t.pending?.();case U.COMPLETE:return t.complete?.(this._value);case U.ERROR:return t.error?.(this._error);default:return}}hostUpdate(){if(!this._autoRun||!Mo())return;let t=this._argsFn();this._argsEqual(this._prevArgs,t)||this.run()}hostUpdated(){}hostConnected(){}hostDisconnected(){this.abort()}_requestHostUpdate(){typeof this._host.requestUpdate=="function"&&this._host.requestUpdate()}_argsEqual(t,n){if(t===null||t.length!==n.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==n[r])return!1;return!0}};export{nn as ContextConsumer,tn as ContextProvider,ct as ContextRequestEvent,_ as MARKER,we as Signal,Rs as Suspense,rn as Task,U as TaskStatus,Mt as WebComponent,Ft as WebjsFrame,ft as adoptStyles,Ot as allTags,Mr as batch,Pr as computed,ro as connectWS,Lo as createContext,Pt as cspNonce,Ar as css,Un as deserialize,ao as disableClientRouter,Ur as effect,Qn as enableClientRouter,$ as escapeAttr,Ue as escapeText,eo as expose,no as getExposed,Sr as html,pe as isCSS,ms as isLazy,ne as isLive,Qs as isNotFound,Xs as isRedirect,ee as isRepeat,Ir as isSignal,et as isSuspense,C as isTemplate,te as isUnsafeHTML,xr as live,jt as lookup,ps as lookupModuleUrl,co as navigate,Js as notFound,Z as parse,hs as primeModuleUrl,Zs as redirect,Rt as register,Je as render,Ks as renderToStream,Os as renderToString,Cr as repeat,lo as revalidate,oo as richFetch,In as serialize,js as setCspNonceProvider,$r as signal,je as stringify,dt as stylesToString,Xe as tagOf,Er as unsafeHTML};
|
|
1
|
+
function Cr(e,...t){return{_$webjs:"template",strings:e,values:t}}function x(e){return!!e&&typeof e=="object"&&e._$webjs==="template"}var S="w$";function xr(e,...t){let n=e[0];for(let r=1;r<e.length;r++)n+=String(t[r-1]??"")+e[r];return{_$webjsCss:!0,text:n}}function ye(e){return!!e&&typeof e=="object"&&e._$webjsCss===!0}function ht(e,t){if(!(!t||!t.length))if("adoptedStyleSheets"in e&&typeof CSSStyleSheet<"u"){let n=t.map(r=>{let i=new CSSStyleSheet;return i.replaceSync(r.text),i});e.adoptedStyleSheets=n}else{let n=e,r=document.createElement("style");r.textContent=t.map(i=>i.text).join(`
|
|
2
|
+
`),n.appendChild(r)}}function pt(e){return!e||!e.length?"":`<style>${e.map(t=>t.text).join(`
|
|
3
|
+
`)}</style>`}function qe(e){return String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function M(e){return String(e).replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<")}var an=Symbol.for("webjs.repeat");function cn(e,t,n){return{[an]:!0,items:[...e],keyFn:t,templateFn:n}}function K(e){return!!e&&typeof e=="object"&&e[an]===!0}function Er(e){return{_$webjs:"unsafe-html",value:String(e??"")}}function ae(e){return!!e&&typeof e=="object"&&e._$webjs==="unsafe-html"}function vr(e){return{_$webjs:"live",value:e}}function ce(e){return!!e&&typeof e=="object"&&e._$webjs==="live"}function kr(e,t){return{_$webjs:"keyed",key:e,value:t}}function G(e){return!!e&&typeof e=="object"&&e._$webjs==="keyed"}function Nr(e,t){return{_$webjs:"guard",deps:e,fn:t}}function Y(e){return!!e&&typeof e=="object"&&e._$webjs==="guard"}function Tr(e){return{_$webjs:"template-content",template:e}}function le(e){return!!e&&typeof e=="object"&&e._$webjs==="template-content"}function Rr(e){return{_$webjs:"ref",target:e}}function J(e){return!!e&&typeof e=="object"&&e._$webjs==="ref"}function jr(){return{value:void 0}}function Lr(e){return{_$webjs:"cache",value:e}}function Z(e){return!!e&&typeof e=="object"&&e._$webjs==="cache"}function Or(...e){return{_$webjs:"until",args:e}}function Q(e){return!!e&&typeof e=="object"&&e._$webjs==="until"}function Mr(e,t){return{_$webjs:"async-append",iterable:e,mapper:t}}function ue(e){return!!e&&typeof e=="object"&&e._$webjs==="async-append"}function Pr(e,t){return{_$webjs:"async-replace",iterable:e,mapper:t}}function fe(e){return!!e&&typeof e=="object"&&e._$webjs==="async-replace"}function $r(e){return{_$webjs:"watch",signal:e}}function X(e){return!!e&&typeof e=="object"&&e._$webjs==="watch"}var L=null,q=!1,he=0,de=null,mt=0,ln=(e,t)=>Object.is(e,t),De=()=>{},un=()=>!1;function fn(e,t){e.liveConsumers||(e.liveConsumers=new Set);let n=e.liveConsumers.size===0;if(e.liveConsumers.add(t),n){if(e.producers&&e.producers.length>0)for(let r of e.producers)fn(r,e);if(e.watched)try{e.watched.call(e.wrapper)}catch(r){console.error(r)}}}function _e(e,t){if(e.liveConsumers&&(e.liveConsumers.delete(t),e.liveConsumers.size===0)){if(e.producers&&e.producers.length>0)for(let n of e.producers)_e(n,e);if(e.unwatched)try{e.unwatched.call(e.wrapper)}catch(n){console.error(n)}}}function St(e){if(q)throw new Error("Signal read during notification phase");if(L===null)return;let t=L,n=t.nextProducerIndex++;n<t.producers.length&&t.producers[n]!==e&&yt(t)&&_e(t.producers[n],t),t.producers[n]!==e&&(t.producers[n]=e,yt(t)&&fn(e,t)),t.producerLastReadVersions[n]=e.version}function yt(e){return e.consumerIsAlwaysLive||e.liveConsumers&&e.liveConsumers.size>0}function dn(e){if(!e.liveConsumers||e.liveConsumers.size===0)return;let t=q;q=!0;try{for(let n of e.liveConsumers)n.dirty||Ir(n)}finally{q=t}}function Ir(e){e.dirty=!0,dn(e),e.consumerMarkedDirty.call(e.wrapper||e)}function Fe(e){if(!(!e.dirty&&e.lastCleanEpoch===he)){if(!e.producerMustRecompute()&&!Ur(e)){e.dirty=!1,e.lastCleanEpoch=he;return}e.producerRecomputeValue(),e.dirty=!1,e.lastCleanEpoch=he}}function Ur(e){for(let t=0;t<e.producers.length;t++){let n=e.producers[t],r=e.producerLastReadVersions[t];if(r!==n.version||(Fe(n),r!==n.version))return!0}return!1}function _t(e){e&&(e.nextProducerIndex=0);let t=L;return L=e,t}function wt(e,t){if(L=t,!!e){if(yt(e))for(let n=e.nextProducerIndex;n<e.producers.length;n++)_e(e.producers[n],e);for(;e.producers.length>e.nextProducerIndex;)e.producers.pop(),e.producerLastReadVersions.pop()}}var He=class{constructor(t,n){this.__value=t,this.version=0,this.lastCleanEpoch=he,this.dirty=!1,this.producers=[],this.producerLastReadVersions=[],this.liveConsumers=void 0,this.consumerAllowSignalWrites=!0,this.consumerIsAlwaysLive=!1,this.producerMustRecompute=un,this.producerRecomputeValue=De,this.consumerMarkedDirty=De,this.wrapper=this,this.__isSignal=!0,this.__equal=n?.equals||ln,this.watched=n?.[At],this.unwatched=n?.[Ct]}get(){return St(this),this.__value}peek(){return this.__value}set(t){if(q)throw new Error("Signal write during notification phase");this.__equal.call(this,this.__value,t)||(this.__value=t,this.version++,he++,de!==null?hn(this):dn(this))}};function hn(e){let t=q;q=!0;try{if(!e.liveConsumers)return;for(let n of e.liveConsumers)n.dirty||(n.dirty=!0,n.__isWatcher?de.add(n):hn(n))}finally{q=t}}var gt=Symbol("unset"),bt=Symbol("computing"),Be=Symbol("errored"),we=class{constructor(t,n){this.__fn=t,this.__value=gt,this.__error=null,this.version=0,this.lastCleanEpoch=-1,this.dirty=!0,this.producers=[],this.producerLastReadVersions=[],this.nextProducerIndex=0,this.liveConsumers=void 0,this.consumerAllowSignalWrites=!1,this.consumerIsAlwaysLive=!1,this.wrapper=this,this.__isSignal=!0,this.__isComputed=!0,this.__equal=n?.equals||ln,this.watched=n?.[At],this.unwatched=n?.[Ct];let r=this;this.producerMustRecompute=function(){return r.__value===gt||r.__value===bt},this.producerRecomputeValue=function(){if(r.__value===bt)throw new Error("Detected cycle in computations.");let i=r.__value;r.__value=bt;let s=_t(r),o,a=!1;try{o=r.__fn.call(r.wrapper)}catch(l){o=Be,r.__error=l,a=!0}finally{wt(r,s)}if(!a&&(i!==gt&&i!==Be)&&r.__equal.call(r.wrapper,i,o)){r.__value=i;return}r.__value=o,r.version++},this.consumerMarkedDirty=De}get(){if(Fe(this),St(this),this.__value===Be)throw this.__error;return this.__value}peek(){if(Fe(this),this.__value===Be)throw this.__error;return this.__value}},Ve=class{constructor(t){this.__notify=t,this.version=0,this.lastCleanEpoch=he,this.dirty=!1,this.producers=[],this.producerLastReadVersions=[],this.nextProducerIndex=0,this.liveConsumers=void 0,this.consumerAllowSignalWrites=!1,this.consumerIsAlwaysLive=!0,this.producerMustRecompute=un,this.producerRecomputeValue=De,this.wrapper=this,this.__isWatcher=!0;let n=this;this.consumerMarkedDirty=function(){n.__fire()}}__fire(){this.__notify&&this.__notify.call(this)}watch(...t){if(t.length===0){this.dirty=!1;return}let n=_t(this);try{for(let r of t)St(r),r.__isComputed&&Fe(r)}finally{wt(this,n)}this.dirty=!1}unwatch(...t){for(let n=this.producers.length-1;n>=0;n--)t.includes(this.producers[n])&&(_e(this.producers[n],this),this.producers.splice(n,1),this.producerLastReadVersions.splice(n,1),this.nextProducerIndex=Math.min(this.nextProducerIndex,this.producers.length))}getPending(){return this.producers.filter(t=>t.__isComputed&&t.dirty)}observe(t){let n=_t(this),r;try{r=t()}finally{wt(this,n)}return this.dirty=!1,r}dispose(){for(let t of this.producers)_e(t,this);this.producers=[],this.producerLastReadVersions=[],this.__notify=null}},At=Symbol("watched"),Ct=Symbol("unwatched");function qr(e){let t=L;L=null;try{return e()}finally{L=t}}function Br(e){return e.producers.slice()}function Dr(e){return e.liveConsumers?[...e.liveConsumers]:[]}function Fr(e){return!!e.liveConsumers&&e.liveConsumers.size>0}function Hr(e){return e.producers.length>0}function Vr(){return L&&L.__isComputed?L:null}function Wr(e){mt++,de===null&&(de=new Set);try{e()}finally{if(mt--,mt===0){let t=de;de=null;for(let n of t)n.__fire()}}}var Se={State:He,Computed:we,subtle:{Watcher:Ve,untrack:qr,introspectSources:Br,introspectSinks:Dr,hasSinks:Fr,hasSources:Hr,currentComputed:Vr,watched:At,unwatched:Ct}};function zr(e,t){return new He(e,t)}function Kr(e,t){return new we(e,t)}function Gr(e){return!!(e&&typeof e=="object"&&e.__isSignal===!0)}function Yr(e){let t=!1,n=!1,r=new we(e),i=new Ve(()=>{t||n||(t=!0,queueMicrotask(()=>{if(t=!1,!n){try{r.get()}catch(s){console.error(s)}i.watch()}}))});i.watch(r);try{r.get()}catch(s){console.error(s)}return()=>{n||(n=!0,i.dispose())}}var Jr=`${S}s`,Zr=`${S}e`;function pn(e){if(!e||e.nodeType!==8)return!1;let t=e.nodeValue;return t===Jr||t===Zr}function Qr(e){for(let t of e.addedNodes)if(pn(t))return!0;for(let t of e.removedNodes)if(pn(t))return!0;return!1}function _n(){return typeof HTMLElement<"u"&&typeof HTMLSlotElement<"u"}var Ce=_n(),ee=Symbol("webjs.slot.state"),B="data-webjs-light",te="data-projection",xe="actual",wn="fallback",Ge=Symbol("webjs.slot.fallbackFrag"),Xr=64,Ae=null,xt=null,We=null,mn=!1;function es(){mn||(Ce=_n(),Ce&&(Ae=HTMLSlotElement.prototype.assignedNodes,xt=HTMLSlotElement.prototype.assignedElements,We=Object.getOwnPropertyDescriptor(Element.prototype,"assignedSlot"),HTMLSlotElement.prototype.assignedNodes=function(t){return this.hasAttribute(B)&&!gn(this)?Et(this,t):Ae?Ae.call(this,t):[]},HTMLSlotElement.prototype.assignedElements=function(t){return this.hasAttribute(B)&&!gn(this)?Et(this,t).filter(n=>n.nodeType===1):xt?xt.call(this,t):[]},Object.defineProperty(Element.prototype,"assignedSlot",{configurable:!0,enumerable:!0,get:function(){let t=We&&We.get?We.get.call(this):null;return t||ts(this)}}),mn=!0))}es();function gn(e){let t=e;for(let n=0;n<128;n++){let r=t.parentNode;if(!r||r===t)return!1;if(r.host)return!0;t=r}return!1}function Et(e,t){if(e.getAttribute(te)===wn)return[];let n=Array.from(e.childNodes);return!t||!t.flatten?n:vt(n,new Set,0)}function vt(e,t,n){if(n>=Xr)return e.slice();let r=[];for(let i of e)if(i.nodeType===1&&i.tagName==="SLOT"){let s=i;if(t.has(s))continue;if(t.add(s),s.hasAttribute(B)){let o=Et(s,{flatten:!1});if(o.length>0)for(let a of vt(o,t,n+1))r.push(a);else for(let a of vt(Array.from(s.childNodes),t,n+1))r.push(a)}else if(Ae){let o=Ae.call(s,{flatten:!0});for(let a of o)r.push(a)}else r.push(i)}else r.push(i);return r}function ts(e){let t=e.parentElement;for(;t;){if(t.tagName==="SLOT"&&t.hasAttribute(B))return t.getAttribute(te)===xe?t:null;t=t.parentElement}return null}function D(e){let t=e,n=t[ee];return n||(n={assignedByName:new Map,pendingByName:new Map,lastSnapshot:new WeakMap,nameObservers:new WeakMap,childObserver:null,scheduled:!1,ownedSlots:new Set},t[ee]=n),n}function kt(e){return!!e[ee]}function Sn(e){let t=D(e);for(;e.firstChild;){let n=e.firstChild,r=ze(n);Ke(t.assignedByName,r,n),e.removeChild(n)}}function An(e){let t=D(e),n=e.querySelectorAll(`slot[${B}]`);for(let r of n){let i=r;if(i.getAttribute(te)!==xe)continue;let s=i.getAttribute("name")||null;if(!t.assignedByName.has(s)){let o=Array.from(i.childNodes);t.assignedByName.set(s,o),t.lastSnapshot.set(i,o.slice())}}}function ze(e){if(e.nodeType!==1)return null;let n=e.getAttribute("slot");return n||null}function Ke(e,t,n){let r=e.get(t);r||(r=[],e.set(t,r)),r.push(n)}function Cn(e,t,n){if(!n.length)return;let r=e.get(t);r||(r=[],e.set(t,r));for(let i of n)r.push(i)}function xn(e){if(!Ce)return;let t=D(e);t.childObserver||(t.childObserver=new MutationObserver(n=>{let r=!1;for(let i of n)if(!Qr(i)){if(i.type==="childList"){for(let s of i.addedNodes)s.parentElement===e&&(Ke(t.assignedByName,ze(s),s),r=!0);for(let s of i.removedNodes)e.contains(s)||bn(t,s)&&(r=!0)}else if(i.type==="attributes"&&i.attributeName==="slot"){let s=i.target;(bn(t,s)||s.parentElement===e)&&(Ke(t.assignedByName,ze(s),s),r=!0)}}r&&Ye(e)}),t.childObserver.observe(e,{childList:!0,attributes:!0,attributeFilter:["slot"],subtree:!0}))}function En(e){let t=e[ee];if(t){t.childObserver&&(t.childObserver.disconnect(),t.childObserver=null);for(let n of t.ownedSlots){let r=t.nameObservers.get(n);r&&(r.disconnect(),t.nameObservers.delete(n))}}}function bn(e,t){for(let[n,r]of e.assignedByName){let i=r.indexOf(t);if(i!==-1)return r.splice(i,1),r.length===0&&e.assignedByName.delete(n),!0}return!1}function Ye(e){let t=D(e);t.scheduled||(t.scheduled=!0,queueMicrotask(()=>{t.scheduled=!1,ns(e)}))}function ns(e){if(!Ce)return;let t=e[ee];if(!t)return;let n=Array.from(e.querySelectorAll(`slot[${B}]`)),r=new Set(n);for(let o of t.ownedSlots)r.has(o)||rs(t,o);for(let o of r)t.ownedSlots.has(o)||os(e,o);t.ownedSlots=r;let i=new Map;for(let o of n){let a=o.getAttribute("name")||null,c=i.get(a);c||(c=[],i.set(a,c)),c.push(o)}for(let o of i.keys()){let a=t.pendingByName.get(o);if(a&&a.length){let c=t.assignedByName.get(o)||[],l=[];for(let f of a)l.push(f);for(let f of c)l.indexOf(f)===-1&&l.push(f);t.assignedByName.set(o,l),t.pendingByName.delete(o)}}let s=[];for(let[o,a]of i){let c=t.assignedByName.get(o)||[];for(let l=0;l<a.length;l++){let f=a[l];l===0&&c.length>0?ss(t,f,c)&&s.push(f):is(t,f)&&s.push(f)}}for(let o of s)as(o)}function rs(e,t){let n=e.nameObservers.get(t);n&&(n.disconnect(),e.nameObservers.delete(t));let r=e.lastSnapshot.get(t);if(r&&r.length>0){let i=t.getAttribute("name")||null;Cn(e.pendingByName,i,r)}e.lastSnapshot.delete(t)}function ss(e,t,n){let r=t.getAttribute(te)!==xe,i=e.lastSnapshot.get(t)||[];if(!r&&cs(i,n))return!1;let o=t[Ge];if(r&&o)for(;t.firstChild;)o.appendChild(t.firstChild);else for(;t.firstChild;)t.removeChild(t.firstChild);for(let a of n)t.appendChild(a);return t.setAttribute(te,xe),e.lastSnapshot.set(t,n.slice()),!0}function is(e,t){let n=t.getAttribute(te)===xe;if(t.setAttribute(te,wn),!n)return yn(t),!1;for(e.lastSnapshot.delete(t);t.firstChild;)t.removeChild(t.firstChild);return yn(t),!0}function yn(e){let t=e[Ge];!t||t.childNodes.length===0||e.appendChild(t)}function os(e,t){if(!Ce)return;let n=D(e);if(n.nameObservers.has(t))return;let r=new MutationObserver(()=>Ye(e));r.observe(t,{attributes:!0,attributeFilter:["name"]}),n.nameObservers.set(t,r)}function vn(e,t){if(!kt(e))return;let n=D(e),r=n.lastSnapshot.get(t);if(!r||r.length===0)return;let i=t.getAttribute("name")||null;for(let o of r)o.parentNode===t&&t.removeChild(o);Cn(n.pendingByName,i,r),n.lastSnapshot.delete(t);let s=n.nameObservers.get(t);s&&(s.disconnect(),n.nameObservers.delete(t)),n.ownedSlots.delete(t)}function as(e){e.dispatchEvent(new Event("slotchange",{bubbles:!0,composed:!1}))}function cs(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}var kn=new WeakMap,Nt=Symbol.for("webjs.instance");function Ze(e,t){let n=t,r=n[Nt];if(x(e)){let i=e;if(r&&r.strings===i.strings){ke(r,i.values);return}r&&Nn(r,t);let s=t.firstChild;s&&s.nodeType===8&&s.data==="webjs-hydrate"&&s.remove();let o=fs(i,t);n[Nt]=o;return}if(r&&Nn(r,t),n[Nt]=null,t.replaceChildren(),!(e==null||e===!1||e===!0)){if(Array.isArray(e)){for(let i of e){let s=document.createTextNode(String(i??""));t.appendChild(s)}return}t.appendChild(document.createTextNode(String(e)))}}function Ee(e){let{strings:t}=e,n=kn.get(t);if(n)return n;let r=[],i="",s="text",o="",a=0,c="",l=0,f=null,m="",u="";for(let b=0;b<t.length;b++){let h=t[b];for(let d=0;d<h.length;d++){let p=h[d];switch(s){case"text":i+=p,p==="<"&&(s="tag-open");break;case"tag-open":i+=p,p==="!"?s="bang-1":p==="/"?(s="tag-name",m=""):/[a-zA-Z]/.test(p)?(s="tag-name",m=p.toLowerCase()):s="text";break;case"bang-1":i+=p,s=p==="-"?"bang-dash":"tag-name";break;case"bang-dash":i+=p,p==="-"?(s="comment",l=0):s="tag-name";break;case"comment":i+=p,p==="-"?l+=1:(p===">"&&l>=2&&(s="text"),l=0);break;case"tag-name":i+=p,p===">"?(s=m==="script"||m==="style"?"rawtext":"text",s==="rawtext"&&(u="")):/\s/.test(p)?s="in-tag":m+=p.toLowerCase();break;case"in-tag":i+=p,p===">"?(s=m==="script"||m==="style"?"rawtext":"text",s==="rawtext"&&(u="")):!/\s/.test(p)&&p!=="/"&&(s="attr-name",o=p,a=i.length-1);break;case"rawtext":i+=p,u=(u+p.toLowerCase()).slice(-9),(u.endsWith("<\/script>")||u.endsWith("</style>"))&&(s="text",u="",m="");break;case"attr-name":p==="="?(s="after-eq",i+=p):/\s/.test(p)?(s="in-tag",o="",i+=p):p===">"?(s="text",o="",i+=p):(o+=p,i+=p);break;case"after-eq":p==='"'||p==="'"?(s="attr-quoted",c=p,i+=p):/\s/.test(p)?(s="in-tag",o="",i+=p):p===">"?(s="text",o="",i+=p):(s="attr-unquoted",i+=p);break;case"attr-unquoted":/\s/.test(p)?(s="in-tag",o="",i+=p):(p===">"&&(s="text",o=""),i+=p);break;case"attr-quoted":i+=p,p===c&&(s="in-tag",o="");break;case"skip-attr":if(p===c){if(f){let y=f.firstPartIdx,_=[];for(let w=y;w<r.length;w++)(r[w].kind==="noop"||r[w].kind==="attr-mixed")&&_.push(w);let C=[],I=t[_[0]],k=I.lastIndexOf(c);C.push(k>=0?I.slice(k+1):I);for(let w=1;w<_.length;w++)C.push(t[_[w]]);let O=t[_[_.length-1]+1],j=O.indexOf(c);C.push(j>=0?O.slice(0,j):O),r[y]={kind:"attr-mixed",path:[],name:f.name,statics:C,group:_},f=null}s="in-tag",o=""}break}}if(b<t.length-1){let d=r.length;if(s==="comment"){l=0,r.push({kind:"noop",path:[]});continue}if(s==="rawtext"){u="",r.push({kind:"noop",path:[]});continue}if(s==="text")i+=`<!--${S}${d}-->`,r.push({kind:"child",path:[]});else if(s==="in-tag"){let p=`data-${S}${d}`;i+=`${p}=""`,r.push({kind:"element",path:[]})}else if(s==="after-eq"){let p=o[0],y=o.slice(1);if(p==="@"||p==="."||p==="?"){i=i.slice(0,a);let _=p==="@"?"event":p==="."?"prop":"bool",C=`data-${S}${d}`;i+=`${C}=""`,r.push({kind:_,path:[],name:y})}else{i=i.slice(0,a);let _=`data-${S}${d}`;i+=`${_}=""`,r.push({kind:"attr",path:[],name:o})}s="in-tag",o=""}else if(s==="attr-quoted"||s==="attr-unquoted"){i=i.slice(0,a);let p=`data-${S}${d}`;i+=`${p}=""`,f={name:o,firstPartIdx:d},r.push({kind:"noop",path:[]}),s="skip-attr"}else s==="skip-attr"&&r.push({kind:"noop",path:[]})}}let g=document.createElement("template");return g.innerHTML=i,ls(g.content,r),us(g.content,r),n={templateEl:g,parts:r},kn.set(t,n),n}function ls(e,t){let n=e.querySelectorAll("slot");for(let r of n){r.setAttribute(B,"");let i=t.length;r.setAttribute(`data-${S}${i}`,""),t.push({kind:"slot",path:[]})}}function us(e,t){let n=[];function r(i){for(let s=0;s<i.childNodes.length;s++){let o=i.childNodes[s];if(n.push(s),o.nodeType===8){let a=o.data;if(a.startsWith(S)){let c=Number(a.slice(S.length));t[c]&&t[c].kind==="child"&&(t[c].path=n.slice())}}else if(o.nodeType===1){let a=o,c=[];for(let l of a.attributes)if(l.name.startsWith(`data-${S}`)){let f=Number(l.name.slice(`data-${S}`.length));t[f]&&t[f].kind!=="child"&&(t[f].path=n.slice()),c.push(l.name)}for(let l of c)a.removeAttribute(l);r(o)}n.pop()}}r(e)}function fs(e,t){let{templateEl:n,parts:r}=Ee(e),i=n.content.cloneNode(!0),s=document.createComment(`${S}s`),o=document.createComment(`${S}e`),a=r.map(l=>ve(l,i)),c=[];for(let l=0;l<e.values.length;l++)F(a[l],e.values[l],void 0,e.values),c.push(e.values[l]);t.replaceChildren(s,...i.childNodes,o);for(let l of a)l.kind==="slot"&&F(l,void 0,void 0,[]);return{strings:e.strings,bound:a,lastValues:c,startNode:s,endNode:o}}function ve(e,t){if(e.kind==="noop")return{kind:"noop"};let n=t;for(let i of e.path)n=n.childNodes[i];if(e.kind==="child")return{kind:"child",marker:n};let r=n;if(e.kind==="event"){let i={kind:"event",el:r,name:e.name||"",handler:null,dispatcher(s){i.handler?.(s)}};return r.addEventListener(i.name,i.dispatcher),i}if(e.kind==="attr")return{kind:"attr",el:r,name:e.name||""};if(e.kind==="attr-mixed")return{kind:"attr-mixed",el:r,name:e.name||"",statics:e.statics||[],group:e.group||[]};if(e.kind==="prop")return{kind:"prop",el:r,name:e.name||""};if(e.kind==="bool")return{kind:"bool",el:r,name:e.name||""};if(e.kind==="element")return{kind:"element",el:r};if(e.kind==="slot")return{kind:"slot",slotEl:r,applied:!1};throw new Error(`unknown part kind ${e.kind}`)}function ke(e,t){for(let n=0;n<t.length;n++){let r=t[n];Object.is(r,e.lastValues[n])||(F(e.bound[n],r,e.lastValues[n],t),e.lastValues[n]=r)}}function Nn(e,t){for(let n of e.bound){if(n.kind==="event"&&n.el.removeEventListener(n.name,n.dispatcher),n.kind==="element"){let r=n.lastTarget;if(r){if(typeof r=="function")try{r(void 0)}catch{}else typeof r=="object"&&(r.value=void 0);n.lastTarget=void 0,n.__lastEl=void 0}}if(n.kind==="slot"){let r=Tt(n.slotEl);r&&vn(r,n.slotEl)}}t.replaceChildren()}function F(e,t,n,r){if(ce(t)){let i=t.value;if(e.kind==="prop"&&e.el[e.name]===i||e.kind==="attr"&&e.el.getAttribute(e.name)===String(i)||e.kind==="bool"&&e.el.hasAttribute(e.name)===!!i)return;t=i}switch(e.kind){case"child":ps(e,t);break;case"attr":{t==null||t===!1?e.el.removeAttribute(e.name):e.el.setAttribute(e.name,String(t));break}case"prop":e.el[e.name]=t;break;case"bool":t?e.el.setAttribute(e.name,""):e.el.removeAttribute(e.name);break;case"event":e.handler=typeof t=="function"?t:null;break;case"element":hs(e,t);break;case"attr-mixed":{let i=e,s=i.statics[0];for(let o=0;o<i.group.length;o++)s+=String((r?r[i.group[o]]:t)??""),s+=i.statics[o+1]||"";e.el.setAttribute(e.name,s);break}case"slot":{if(e.applied)break;let i=e.slotEl,s=()=>{e.applied=!0;let a=Tt(i);if(!a||ds(i))return;let c=document.createDocumentFragment();for(;i.firstChild;)c.appendChild(i.firstChild);i[Ge]=c,Ye(a)};Tt(i)?s():queueMicrotask(s);break}case"noop":break}}function Tt(e){let t=e.parentElement;for(;t;){if(t[ee])return t;t=t.parentElement}return null}function ds(e){let t=e;for(let n=0;n<128;n++){let r=t.parentNode;if(!r||r===t)return!1;if(r.host)return!0;t=r}return!1}function hs(e,t){let n=e,r=J(t)?t.target:void 0,i=n.__refTarget,s=r!==i;if(s&&i)if(typeof i=="function")try{i(void 0)}catch{}else typeof i=="object"&&(i.value=void 0);if(s||n.__refElement!==e.el){if(n.__refTarget=r,r)if(typeof r=="function"){if(!s&&n.__refElement!==void 0)try{r(void 0)}catch{}try{r(e.el)}catch{}}else typeof r=="object"&&(r.value=e.el);n.__refElement=e.el,e.lastTarget=r}}function ps(e,t){return ys(e,t),P(e,t)}function P(e,t){let n=e.marker;if(ae(t)){ne(e);let i=String(t.value??""),s=document.createElement("template");s.innerHTML=i;let o=[...s.content.childNodes],a=document.createDocumentFragment();for(let c of o)a.appendChild(c);n.parentNode?.insertBefore(a,n),e.child=o;return}if(G(t)){let i=t,s=e.__keyedKey;s!==void 0&&!Object.is(s,i.key)&&ne(e),e.__keyedKey=i.key,P(e,i.value);return}if(Y(t)){let i=t,s=e.__guardDeps,o=i.deps;if(s!==void 0&&(Array.isArray(s)&&Array.isArray(o)?bs(s,o):Object.is(s,o)))return;e.__guardDeps=Array.isArray(o)?o.slice():o,P(e,i.fn());return}if(le(t)){ne(e);let i=t.template;if(i&&i.content){let s=i.content.cloneNode(!0),o=[...s.childNodes];n.parentNode?.insertBefore(s,n),e.child=o}return}if(J(t))return;if(Z(t))return _s(e,t.value);if(Q(t))return ws(e,t.args);if(X(t))return Ss(e,t.signal);if(ue(t))return As(e,t);if(fe(t))return Cs(e,t);if(K(t)){if(e.child&&e.child.kind==="repeat"){gs(e,t);return}ne(e);let i={kind:"repeat",map:new Map};e.child=i,ms(n,i,t);return}if(e.child){let i=e.child;if(i.kind==="repeat")jn(i),e.child=void 0;else if(i.kind==="async-stream")Pn(i),e.child=void 0;else if("strings"in e.child){let s=e.child;if(x(t)&&s.strings===t.strings){ke(s,t.values);return}Ne(s.startNode,s.endNode),e.child=void 0}else{for(let s of e.child)s.parentNode&&s.parentNode.removeChild(s);e.child=void 0}}if(t==null||t===!1||t===!0)return;if(x(t)){let i=t,{templateEl:s,parts:o}=Ee(i),a=s.content.cloneNode(!0),c=document.createComment(`${S}s`),l=document.createComment(`${S}e`),f=o.map(g=>ve(g,a)),m=[];for(let g=0;g<i.values.length;g++)F(f[g],i.values[g],void 0,i.values),m.push(i.values[g]);let u=[c,...a.childNodes,l];n.parentNode?.insertBefore(Tn(u),n);for(let g of f)g.kind==="slot"&&F(g,void 0,void 0,[]);e.child={strings:i.strings,bound:f,lastValues:m,startNode:c,endNode:l};return}if(Array.isArray(t)){let i=[];for(let o of t)if(x(o)){let a=o,{templateEl:c,parts:l}=Ee(a),f=c.content.cloneNode(!0),m=l.map(u=>ve(u,f));for(let u=0;u<a.values.length;u++)F(m[u],a.values[u],void 0,a.values);i.push(...f.childNodes)}else o!=null&&o!==!1&&o!==!0&&i.push(document.createTextNode(String(o)));let s=Tn(i);n.parentNode?.insertBefore(s,n),e.child=i;return}let r=document.createTextNode(String(t));n.parentNode?.insertBefore(r,n),e.child=[r]}function Tn(e){let t=document.createDocumentFragment();for(let n of e)t.appendChild(n);return t}function Ne(e,t){if(!e.parentNode)return;let n=e;for(;n&&n!==t;){let r=n.nextSibling;n.parentNode?.removeChild(n),n=r}t.parentNode===e.parentNode&&t.parentNode?.removeChild(t)}function Rn(e){let{templateEl:t,parts:n}=Ee(e),r=t.content.cloneNode(!0),i=document.createComment(`${S}s`),s=document.createComment(`${S}e`),o=n.map(l=>ve(l,r)),a=[];for(let l=0;l<e.values.length;l++)F(o[l],e.values[l],void 0,e.values),a.push(e.values[l]);let c=document.createDocumentFragment();for(c.appendChild(i);r.firstChild;)c.appendChild(r.firstChild);return c.appendChild(s),{inst:{strings:e.strings,bound:o,lastValues:a,startNode:i,endNode:s},frag:c}}function Je(e){for(let t of e.bound)if(t.kind==="event"&&t.el.removeEventListener(t.name,t.dispatcher),t.kind==="element"){let n=t.lastTarget;if(n){if(typeof n=="function")try{n(void 0)}catch{}else typeof n=="object"&&(n.value=void 0);t.lastTarget=void 0,t.__lastEl=void 0}}}function ms(e,t,n){let{items:r,keyFn:i,templateFn:s}=n,o=e.parentNode;if(!o)return;let a=document.createDocumentFragment();for(let c=0;c<r.length;c++){let l=i(r[c],c),f=s(r[c],c);if(!x(f))continue;let{inst:m,frag:u}=Rn(f);t.map.set(l,m),a.appendChild(u)}o.insertBefore(a,e)}function gs(e,t){let n=e.marker,r=n.parentNode;if(!r)return;let i=e.child,{items:s,keyFn:o,templateFn:a}=t,c=new Map;for(let l=0;l<s.length;l++){let f=o(s[l],l),m=a(s[l],l);if(!x(m))continue;let u=i.map.get(f);if(u&&u.strings===m.strings)ke(u,m.values),Rt(u.startNode,u.endNode,r,n),c.set(f,u),i.map.delete(f);else{u&&(Je(u),Ne(u.startNode,u.endNode),i.map.delete(f));let{inst:g,frag:b}=Rn(m);r.insertBefore(b,n),c.set(f,g)}}for(let l of i.map.values())Je(l),Ne(l.startNode,l.endNode);i.map=c}function jn(e){for(let t of e.map.values())Je(t),Ne(t.startNode,t.endNode);e.map.clear()}function Rt(e,t,n,r){if(t.nextSibling===r&&e.parentNode===n)return;let i=document.createDocumentFragment(),s=e;for(;s;){let o=s.nextSibling;if(i.appendChild(s),s===t)break;s=o}n.insertBefore(i,r)}function bs(e,t){if(e===t)return!0;if(!e||!t||e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!Object.is(e[n],t[n]))return!1;return!0}function ne(e){let t=e;if(t.__untilState&&(t.__untilState.aborted=!0,t.__untilState=void 0),t.__watchSub&&Ln(t),!e.child)return;let n=e.child;if(n.kind==="repeat")jn(n);else if(n.kind==="async-stream")Pn(n);else if("strings"in n){let r=e.child;Je(r),Ne(r.startNode,r.endNode)}else for(let r of e.child)r.parentNode&&r.parentNode.removeChild(r);e.child=void 0}function ys(e,t){let n=e;n.__untilState&&!Q(t)&&(n.__untilState.aborted=!0,n.__untilState=void 0),n.__guardDeps!==void 0&&!Y(t)&&(n.__guardDeps=void 0),n.__cacheMap&&!Z(t)&&(n.__cacheMap=void 0),n.__keyedKey!==void 0&&!G(t)&&(n.__keyedKey=void 0),n.__watchSub&&!X(t)&&Ln(n)}function _s(e,t){let n=e.marker,r=e,i=r.__cacheMap;i||(i=new Map,r.__cacheMap=i);let s=e.child;if(s&&"strings"in s){let a=s;if(x(t)&&a.strings===t.strings){ke(a,t.values);return}let c=document.createDocumentFragment();Rt(a.startNode,a.endNode,c,null),i.set(a.strings,{inst:a,holder:c}),e.child=void 0}if(x(t)){let a=t,c=i.get(a.strings);if(c){i.delete(a.strings),e.child&&ne(e),Rt(c.inst.startNode,c.inst.endNode,n.parentNode,n),ke(c.inst,a.values),e.child=c.inst;return}}P(e,t)}function ws(e,t){let n=e,r=n.__untilState,i=n.__untilArgs,s=(u,g)=>!!(Object.is(u,g)||x(u)&&x(g)&&u.strings===g.strings),a=i&&i.length===t.length&&i.every((u,g)=>s(u,t[g]))&&r?r.highestResolved:1/0;r&&(r.aborted=!0),n.__untilArgs=t.slice();let c={aborted:!1,highestResolved:a};n.__untilState=c;let l=-1,f;for(let u=0;u<t.length;u++){let g=t[u];if(!g||typeof g.then!="function"){l=u,f=g;break}}l!==-1&&l<=c.highestResolved?(P(e,f),c.highestResolved=l):l===-1&&!n.__untilEverRendered&&P(e,""),n.__untilEverRendered=!0;let m=Math.min(l===-1?t.length:l,c.highestResolved);for(let u=0;u<m;u++){let g=t[u];!g||typeof g.then!="function"||Promise.resolve(g).then(b=>{c.aborted||u>=c.highestResolved||(c.highestResolved=u,P(e,b))},()=>{})}}function Ss(e,t){let n=e;if(n.__watchSig===t&&n.__watchSub){let s;n.__watchSub.observe(()=>{s=t.get()}),P(e,s);return}n.__watchSub&&(n.__watchSub.dispose(),n.__watchSub=void 0),n.__watchSig=t;let r=new Se.subtle.Watcher(()=>{queueMicrotask(()=>{if(n.__watchSub!==r)return;let s;r.observe(()=>{s=t.get()}),P(e,s)})});n.__watchSub=r;let i;r.observe(()=>{i=t.get()}),P(e,i)}function Ln(e){e.__watchSub&&(e.__watchSub.dispose(),e.__watchSub=void 0,e.__watchSig=void 0)}function As(e,t){let n=e.child;if(n&&n.kind==="async-stream"&&n.mode==="append"&&n.iterable===t.iterable)return;ne(e);let r=t.iterable[Symbol.asyncIterator](),i={kind:"async-stream",mode:"append",aborted:!1,iterable:t.iterable,iterator:r,nodes:[]};e.child=i,On(i,e,t)}function Cs(e,t){let n=e.child;if(n&&n.kind==="async-stream"&&n.mode==="replace"&&n.iterable===t.iterable)return;ne(e);let r=t.iterable[Symbol.asyncIterator](),i={kind:"async-stream",mode:"replace",aborted:!1,iterable:t.iterable,iterator:r,nodes:[]};e.child=i,On(i,e,t)}async function On(e,t,n){let r=t.marker,i=0;try{for(;!e.aborted;){let s=await e.iterator.next();if(e.aborted||s.done)break;let o=n.mapper?n.mapper(s.value,i):s.value,a=Mn(o);if(e.mode==="replace"){for(let l of e.nodes)l.parentNode&&l.parentNode.removeChild(l);e.nodes=[]}let c=document.createDocumentFragment();for(let l of a)c.appendChild(l);r.parentNode?.insertBefore(c,r),e.nodes.push(...a),i++}}catch(s){typeof console<"u"&&console.error("[webjs] asyncStream error:",s)}}function Mn(e){if(e==null||e===!1||e===!0)return[];if(x(e)){let t=e,{templateEl:n,parts:r}=Ee(t),i=n.content.cloneNode(!0),s=r.map(o=>ve(o,i));for(let o=0;o<t.values.length;o++)F(s[o],t.values[o],void 0,t.values);return[...i.childNodes]}if(Array.isArray(e)){let t=[];for(let n of e)t.push(...Mn(n));return t}return[document.createTextNode(String(e))]}function Pn(e){e.aborted=!0;for(let t of e.nodes)t.parentNode&&t.parentNode.removeChild(t);e.nodes=[];try{e.iterator.return?.()?.catch?.(()=>{})}catch{}}var $n=Symbol.for("webjs:registry"),In=Symbol.for("webjs:classToTag"),Qe=globalThis,$=Qe[$n]||(Qe[$n]=new Map),Un=Qe[In]||(Qe[In]=new WeakMap),Xe=typeof window<"u"&&typeof customElements<"u";function jt(e,t){if(!e||typeof e!="string"||!e.includes("-"))throw new Error(`customElements.define: tag "${e}" must contain a hyphen (HTML spec)`);let n=t.lazy===!0,r=$.get(e);r?(r.cls=t,r.lazy=n):$.set(e,{cls:t,moduleUrl:null,lazy:n,tag:e}),Un.set(t,e)}if(Xe){let e=customElements.define.bind(customElements);customElements.define=function(t,n,r){customElements.get(t)||e(t,n,r),jt(t,n)}}if(!Xe){let e=globalThis;e.customElements||(e.customElements={define(t,n){jt(t,n)},get(t){return $.get(t)?.cls},upgrade(){},whenDefined(t){let n=$.get(t);return Promise.resolve(n?.cls)}})}function Lt(e,t){Xe?customElements.define(e,t):jt(e,t)}function xs(e,t){if(Xe)return;let n=$.get(e);if(n){n.moduleUrl=t;return}$.set(e,{cls:null,moduleUrl:t,lazy:!1,tag:e})}function Ot(e){return $.get(e)?.cls}function Es(e){return $.get(e)?.moduleUrl||null}function vs(e){return $.get(e)?.lazy===!0}function et(e){return Un.get(e)}function Mt(){return[...$.keys()]}var A="_$wj",je="_id";async function Le(e){return JSON.stringify(await qn(e))}function se(e){return Bn(JSON.parse(e))}async function qn(e){let t=ks();return await Ns(e,t),re(e,t)}function Bn(e){return H(e,Ls())}function ks(){return{refCount:new Map,idOf:new Map,emitted:new Set,nextId:0,blobBytes:new Map}}async function Ns(e,t){let n=[e];for(;n.length;){let r=n.pop();if(!Ms(r))continue;let i=t.refCount.get(r)||0;if(t.refCount.set(r,i+1),!(i>0)){if(typeof Blob<"u"&&r instanceof Blob){let s=new Uint8Array(await r.arrayBuffer());t.blobBytes.set(r,s);continue}if(typeof FormData<"u"&&r instanceof FormData){for(let[,s]of r.entries())typeof s!="string"&&n.push(s);continue}if(Array.isArray(r))for(let s=0;s<r.length;s++)n.push(r[s]);else if(r instanceof Map)for(let[s,o]of r)n.push(s),n.push(o);else if(r instanceof Set)for(let s of r)n.push(s);else if(Ps(r))for(let s in r)Object.prototype.hasOwnProperty.call(r,s)&&n.push(r[s])}}for(let[r,i]of t.refCount)i>1&&t.idOf.set(r,t.nextId++)}function re(e,t){if(e===null)return null;if(e===void 0)return{[A]:"undef"};let n=typeof e;if(n==="string"||n==="boolean")return e;if(n==="number")return Number.isNaN(e)?{[A]:"NaN"}:e===1/0?{[A]:"Inf"}:e===-1/0?{[A]:"-Inf"}:Object.is(e,-0)?{[A]:"-0"}:e;if(n==="bigint")return{[A]:"BigInt",v:e.toString()};if(n==="symbol"){let s=Symbol.keyFor(e);if(s===void 0)throw new TypeError("Cannot serialize a local Symbol; only Symbol.for() registered symbols are supported.");return{[A]:"Sym",v:s}}if(n==="function")throw new TypeError("Cannot serialize a function.");let r=t.idOf.get(e);if(r!==void 0&&t.emitted.has(r))return{[A]:"Ref",v:r};r!==void 0&&t.emitted.add(r);let i;if(e instanceof Date)i={[A]:"Date",v:Number.isNaN(e.getTime())?null:e.toISOString()};else if(e instanceof Error)i={[A]:"Error",v:{name:e.name,message:e.message,stack:e.stack||null}};else if(typeof Blob<"u"&&e instanceof Blob){let s=t.blobBytes.get(e);typeof File<"u"&&e instanceof File?i={[A]:"File",v:Re(s),n:e.name,t:e.type||"",m:e.lastModified}:i={[A]:"Blob",v:Re(s),t:e.type||""}}else if(typeof FormData<"u"&&e instanceof FormData){let s=[];for(let[o,a]of e.entries())s.push([o,re(a,t)]);i={[A]:"FD",v:s}}else if(ArrayBuffer.isView(e)||e instanceof ArrayBuffer)i=Ts(e);else if(e instanceof Map){let s=[];for(let[o,a]of e)s.push([re(o,t),re(a,t)]);i={[A]:"Map",v:s}}else if(e instanceof Set){let s=[];for(let o of e)s.push(re(o,t));i={[A]:"Set",v:s}}else if(Array.isArray(e))i=e.map(s=>re(s,t));else{i={};for(let s in e){if(!Object.prototype.hasOwnProperty.call(e,s))continue;let o=$s(s)?"_"+s:s;i[o]=re(e[s],t)}}if(r!==void 0){if(Array.isArray(i))return{[A]:"Arr",[je]:r,v:i};i[je]=r}return i}function Ts(e){if(e instanceof ArrayBuffer)return{[A]:"buf",v:Re(new Uint8Array(e))};if(e instanceof DataView)return{[A]:"dv",v:Re(new Uint8Array(e.buffer,e.byteOffset,e.byteLength))};let t=e.constructor.name,n=Rs[t];if(!n)throw new TypeError(`Unsupported typed array: ${t}`);let r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return{[A]:n,v:Re(r)}}var Rs={Int8Array:"i8",Uint8Array:"u8",Uint8ClampedArray:"u8c",Int16Array:"i16",Uint16Array:"u16",Int32Array:"i32",Uint32Array:"u32",Float32Array:"f32",Float64Array:"f64",BigInt64Array:"bi64",BigUint64Array:"bu64"},js={i8:Int8Array,u8:Uint8Array,u8c:Uint8ClampedArray,i16:Int16Array,u16:Uint16Array,i32:Int32Array,u32:Uint32Array,f32:Float32Array,f64:Float64Array,bi64:typeof BigInt64Array<"u"?BigInt64Array:null,bu64:typeof BigUint64Array<"u"?BigUint64Array:null};function Ls(){return{refs:new Map}}function H(e,t){if(e===null||typeof e!="object")return e;if(Array.isArray(e)){let s=[];for(let o=0;o<e.length;o++)s.push(H(e[o],t));return s}let n=e[A];if(typeof n=="string")return Os(e,n,t);let r={},i=e[je];typeof i=="number"&&t.refs.set(i,r);for(let s in e){if(!Object.prototype.hasOwnProperty.call(e,s)||s===je)continue;let o=Is(s)?s.slice(1):s;r[o]=H(e[s],t)}return r}function Os(e,t,n){let r=e[je],i=s=>(typeof r=="number"&&n.refs.set(r,s),s);switch(t){case"undef":return;case"NaN":return NaN;case"Inf":return 1/0;case"-Inf":return-1/0;case"-0":return-0;case"BigInt":return i(BigInt(e.v));case"Sym":return i(Symbol.for(e.v));case"Date":return i(e.v==null?new Date(NaN):new Date(e.v));case"Error":{let s=new Error(e.v.message);return s.name=e.v.name,e.v.stack&&(s.stack=e.v.stack),typeof r=="number"&&n.refs.set(r,s),s}case"Map":{let s=new Map;typeof r=="number"&&n.refs.set(r,s);for(let[o,a]of e.v)s.set(H(o,n),H(a,n));return s}case"Set":{let s=new Set;typeof r=="number"&&n.refs.set(r,s);for(let o of e.v)s.add(H(o,n));return s}case"Arr":{let s=[];typeof r=="number"&&n.refs.set(r,s);for(let o of e.v)s.push(H(o,n));return s}case"Ref":{let s=n.refs.get(e.v);if(s===void 0)throw new TypeError(`Dangling reference: id=${e.v}`);return s}case"Blob":{if(typeof Blob>"u")throw new TypeError("Blob is not available in this environment.");let s=Te(e.v);return i(new Blob([s],{type:e.t||""}))}case"File":{if(typeof File>"u")throw new TypeError("File is not available in this environment.");let s=Te(e.v);return i(new File([s],e.n,{type:e.t||"",lastModified:e.m}))}case"FD":{if(typeof FormData>"u")throw new TypeError("FormData is not available in this environment.");let s=new FormData;i(s);for(let[o,a]of e.v){let c=H(a,n);s.append(o,c)}return s}default:{if(t==="buf"){let o=Te(e.v);return i(o.buffer.slice(o.byteOffset,o.byteOffset+o.byteLength))}if(t==="dv"){let o=Te(e.v);return i(new DataView(o.buffer.slice(o.byteOffset,o.byteOffset+o.byteLength)))}let s=js[t];if(s){let o=Te(e.v),a=o.buffer.slice(o.byteOffset,o.byteOffset+o.byteLength);return i(new s(a))}throw new TypeError(`Unknown serialization tag: ${t}`)}}}function Ms(e){return e!==null&&typeof e=="object"}function Ps(e){if(e===null||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function $s(e){return/^_+\$wj$/.test(e)||/^_+id$/.test(e)}function Is(e){return/^__+\$wj$/.test(e)||/^__+id$/.test(e)}var Dn=typeof Buffer<"u"&&typeof Buffer.from=="function";function Re(e){if(Dn)return Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("base64");let t="";for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return btoa(t)}function Te(e){if(Dn){let r=Buffer.from(e,"base64");return new Uint8Array(r.buffer,r.byteOffset,r.byteLength)}let t=atob(e),n=new Uint8Array(t.length);for(let r=0;r<t.length;r++)n[r]=t.charCodeAt(r);return n}var Vn=typeof window<"u"&&typeof HTMLElement<"u";function Us(e,t){return e!==t}function qs(){return{states:new Set,shadowRoot:null,form:null,labels:[],role:"",willValidate:!0,validity:{},validationMessage:"",setFormValue(){},setValidity(){},checkValidity(){return!0},reportValidity(){return!0}}}var tt=class{constructor(){this.__ssrAttrs=new Map,this.__internals=null}get attributes(){return[...this.__ssrAttrs].map(([t,n])=>({name:t,value:n}))}getAttribute(t){let n=this.__ssrAttrs.get(String(t).toLowerCase());return n===void 0?null:n}setAttribute(t,n){this.__ssrAttrs.set(String(t).toLowerCase(),String(n))}removeAttribute(t){this.__ssrAttrs.delete(String(t).toLowerCase())}hasAttribute(t){return this.__ssrAttrs.has(String(t).toLowerCase())}toggleAttribute(t,n){let r=String(t).toLowerCase(),i=this.__ssrAttrs.has(r);return(n===void 0?!i:n)?(this.__ssrAttrs.set(r,""),!0):(this.__ssrAttrs.delete(r),!1)}getAttributeNames(){return[...this.__ssrAttrs.keys()]}closest(t){let n=String(t).trim().toLowerCase();if(!/^[a-z][a-z0-9-]*$/.test(n))return null;if(this.__ssrTag===n)return this;let r=this.__ssrAncestors;if(!Array.isArray(r))return null;for(let i=r.length-1;i>=0;i--)if(r[i]&&r[i].__ssrTag===n)return r[i];return null}get dataset(){if(this.__dataset)return this.__dataset;let t=this,n=r=>"data-"+String(r).replace(/[A-Z]/g,i=>"-"+i.toLowerCase());return this.__dataset=new Proxy({},{get(r,i){if(typeof i!="string")return;let s=t.getAttribute(n(i));return s===null?void 0:s},set(r,i,s){return typeof i=="string"&&t.setAttribute(n(i),s),!0},has(r,i){return typeof i=="string"&&t.hasAttribute(n(i))},deleteProperty(r,i){return typeof i=="string"&&t.removeAttribute(n(i)),!0},ownKeys(){return t.getAttributeNames().filter(r=>r.startsWith("data-")).map(r=>r.slice(5).replace(/-([a-z])/g,(i,s)=>s.toUpperCase()))},getOwnPropertyDescriptor(r,i){if(typeof i=="string"&&t.hasAttribute(n(i)))return{enumerable:!0,configurable:!0,value:t.getAttribute(n(i))}}}),this.__dataset}get className(){return this.getAttribute("class")??""}set className(t){this.setAttribute("class",t)}get hidden(){return this.hasAttribute("hidden")}set hidden(t){this.toggleAttribute("hidden",!!t)}get id(){return this.getAttribute("id")??""}set id(t){this.setAttribute("id",t)}get title(){return this.getAttribute("title")??""}set title(t){this.setAttribute("title",t)}get slot(){return this.getAttribute("slot")??""}set slot(t){this.setAttribute("slot",t)}get role(){return this.getAttribute("role")}set role(t){t==null?this.removeAttribute("role"):this.setAttribute("role",t)}get tabIndex(){let t=this.getAttribute("tabindex");return t===null?-1:Number.parseInt(t,10)||0}set tabIndex(t){this.setAttribute("tabindex",String(t))}addEventListener(){}removeEventListener(){}dispatchEvent(){return!0}attachInternals(){if(this.__internals!==null)throw new Error("Failed to execute 'attachInternals' on 'HTMLElement': ElementInternals for the specified element was already attached.");return this.__internals=qs(),this.__internals}},Bs=["ariaAtomic","ariaAutoComplete","ariaBusy","ariaChecked","ariaColCount","ariaColIndex","ariaColSpan","ariaCurrent","ariaDescription","ariaDisabled","ariaExpanded","ariaHasPopup","ariaHidden","ariaInvalid","ariaKeyShortcuts","ariaLabel","ariaLevel","ariaLive","ariaModal","ariaMultiLine","ariaMultiSelectable","ariaOrientation","ariaPlaceholder","ariaPosInSet","ariaPressed","ariaReadOnly","ariaRequired","ariaRoleDescription","ariaRowCount","ariaRowIndex","ariaRowSpan","ariaSelected","ariaSetSize","ariaSort","ariaValueMax","ariaValueMin","ariaValueNow","ariaValueText"];for(let e of Bs){let t="aria-"+e.slice(4).toLowerCase();Object.defineProperty(tt.prototype,e,{configurable:!0,get(){return this.getAttribute(t)},set(n){n==null?this.removeAttribute(t):this.setAttribute(t,String(n))}})}var Ds=Vn?HTMLElement:tt,Pt=class extends Ds{static shadow=!1;static hydrate=void 0;static properties={};static styles=null;static register(t){Lt(t,this)}static get observedAttributes(){let t=this.properties||{};return Object.keys(t).filter(n=>!t[n].state).map(Fn)}constructor(){super(),this._renderRoot=null,this._scheduled=!1,this._connected=!1,this.__controllers=new Set,this.__firstRendered=!1,this._changedProperties=new Map,this._updateResolve=null,this._updatePromise=Promise.resolve(!0),this._isUpdating=!1,this._initializeProperties()}_initializeProperties(){let n=this.constructor.properties;if(!(!n||typeof n!="object")){this.__propValues={};for(let[r,i]of Object.entries(n)){let s=typeof i=="object"?i:{type:i},o=this[r];Object.defineProperty(this,r,{configurable:!0,enumerable:!0,get:()=>this.__propValues[r],set:a=>{let c=this.__propValues[r];(s.hasChanged||Us)(a,c)&&(this.__propValues[r]=a,s.reflect&&!s.state&&this._connected&&this._reflectAttribute(r,a,s),this.requestUpdate(r,c))}}),o!==void 0&&(this.__propValues[r]=o)}}}_reflectAttribute(t,n,r){let i=Fn(t);if(!this.__reflectingAttribute){this.__reflectingAttribute=!0;try{if(r.converter&&r.converter.toAttribute){let s=r.converter.toAttribute(n,r.type);s==null?this.removeAttribute(i):this.setAttribute(i,s)}else r.type===Boolean?n?this.setAttribute(i,""):this.removeAttribute(i):n==null?this.removeAttribute(i):r.type===Object||r.type===Array?this.setAttribute(i,JSON.stringify(n)):this.setAttribute(i,String(n))}finally{this.__reflectingAttribute=!1}}}connectedCallback(){if(!Vn)return;if(this.__webjsPropsHydrated||(this.__webjsPropsHydrated=!0,this._hydratePropAttrs()),this.constructor.hydrate==="visible"&&typeof IntersectionObserver<"u"&&!this.__hydrationActivated){this.__hydrationActivated=!1,this.__hydrationObserver=new IntersectionObserver(n=>{for(let r of n)if(r.isIntersecting){this.__hydrationObserver.unobserve(this),this.__hydrationObserver.disconnect(),this.__hydrationObserver=null,this.__hydrationActivated=!0,this._activate();return}},{rootMargin:"200px"}),this.__hydrationObserver.observe(this);return}this._activate()}_hydratePropAttrs(){let t=[],n=this.attributes;for(let r=0;r<n.length;r++){let i=n[r].name;i.startsWith("data-webjs-prop-")&&t.push(i)}for(let r of t){let i=this.getAttribute(r);if(this.removeAttribute(r),i==null)continue;let s=Hn(r.slice(16));try{this[s]=se(i)}catch(o){console.warn(`[webjs] failed to decode ${r} on <${this.tagName.toLowerCase()}>: ${o&&o.message}`)}}}_activate(){this._connected=!0,this._reflectDeclaredAttributes();let t=this.constructor;if(t.shadow===!0){let n=!!this.shadowRoot;this.shadowRoot||this.attachShadow({mode:"open"}),this._renderRoot=this.shadowRoot;let r=t.styles,i=Array.isArray(r)?r:ye(r)?[r]:[];if(i.length){if(n){let s=this.shadowRoot.querySelector("style");s&&s.remove()}ht(this._renderRoot,i)}}else this._renderRoot=this,t.styles&&console.warn(`[webjs] <${et(t)||this.tagName?.toLowerCase()}> has static shadow = false AND static styles. static styles only works with shadow DOM (adoptedStyleSheets). For light DOM, use global CSS or <style> in render().`),kt(this)||(this.__isHydrating()?(D(this),An(this)):Sn(this));for(let n of this.__controllers)n.hostConnected&&n.hostConnected();this._updateResolve===null&&(this._updatePromise=new Promise(n=>{this._updateResolve=n})),this._scheduled=!0,queueMicrotask(()=>{this._scheduled=!1;try{this._performRender()}catch(n){console.error("[webjs] lifecycle hook threw during initial render:",n)}this._renderRoot===this&&xn(this)})}__isHydrating(){let t=this.firstChild,n=t!=null&&t.nodeType===8&&t.data==="webjs-hydrate";return n&&(this.__hydratedAtActivate=!0),n}disconnectedCallback(){this._connected=!1,this.__hydrationObserver&&(this.__hydrationObserver.disconnect(),this.__hydrationObserver=null),this._renderRoot===this&&En(this),this.__signalWatcher&&(this.__signalWatcher.dispose(),this.__signalWatcher=void 0);for(let t of this.__controllers)t.hostDisconnected&&t.hostDisconnected()}attributeChangedCallback(t,n,r){if(this.__reflectingAttribute)return;let i=this.constructor,s=Hn(t),o=i.properties&&(i.properties[s]||i.properties[t]);if(!o)return;let a;if(o.converter&&o.converter.fromAttribute)a=o.converter.fromAttribute(r,o.type);else if(o.type===Number)a=r==null?null:Number(r);else if(o.type===Boolean)a=r!=null&&r!=="false";else if(o.type===Object||o.type===Array)try{a=r==null?null:JSON.parse(r)}catch{a=r}else a=r;this[s]!==a&&(this[s]=a,this._connected&&this.requestUpdate())}requestUpdate(t,n){t!==void 0&&!this._changedProperties.has(t)&&this._changedProperties.set(t,n),this._scheduleUpdate()}_scheduleUpdate(){this._updateResolve===null&&(this._updatePromise=new Promise(t=>{this._updateResolve=t})),!this._isUpdating&&(this._scheduled||!this._connected||(this._scheduled=!0,queueMicrotask(()=>{this._scheduled=!1;try{this._performRender()}catch(t){console.error("[webjs] lifecycle hook threw during update cycle:",t)}})))}_performRender(){if(!this._renderRoot)return;let t=this._changedProperties;this._isUpdating=!0;let n=!1;try{if(this.shouldUpdate(t)){this.willUpdate(t);for(let r of this.__controllers)r.hostUpdate&&r.hostUpdate();try{this.update(t)}catch(r){console.error(`[webjs] render error in <${et(this.constructor)||this.tagName?.toLowerCase()}>:`,r);try{let i=this.renderError(r);i!==void 0&&Ze(i,this._renderRoot)}catch(i){console.error("[webjs] renderError() also threw:",i)}}for(let r of this.__controllers)r.hostUpdated&&r.hostUpdated();n=!0}}catch(r){console.error("[webjs] lifecycle hook threw during update phase:",r)}finally{this._isUpdating=!1,n&&(this._changedProperties=new Map)}if(n)try{this.__firstRendered||(this.__firstRendered=!0,this.firstUpdated(t)),this.updated(t)}catch(r){console.error("[webjs] lifecycle hook threw during post-commit phase:",r)}finally{this._resolveUpdate()}else this._resolveUpdate()}_resolveUpdate(){if(this._updateResolve){let t=this._changedProperties.size===0;this._updateResolve(t),this._updateResolve=null}}performServerUpdate(){let t=this._changedProperties;this._isUpdating=!0;try{this.willUpdate(t);for(let n of this.__controllers)n.hostUpdate&&n.hostUpdate();this._reflectDeclaredAttributes()}finally{this._isUpdating=!1}}_reflectDeclaredAttributes(){let t=this.constructor.properties||{};for(let n of Object.keys(t)){let r=t[n];!r||!r.reflect||r.state||this._reflectAttribute(n,this[n],r)}}shouldUpdate(t){return!0}willUpdate(t){}update(t){this.__signalWatcher||(this.__signalWatcher=new Se.subtle.Watcher(()=>{this._connected&&this.requestUpdate()}));let n;this.__signalWatcher.observe(()=>{n=this.render()}),Ze(n,this._renderRoot)}updated(t){}firstUpdated(t){}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._updatePromise}addController(t){this.__controllers.add(t),this._connected&&t.hostConnected&&t.hostConnected()}removeController(t){this.__controllers.delete(t)}render(){return""}renderError(t){}};function Fn(e){return e.replace(/([A-Z])/g,"-$1").toLowerCase()}function Hn(e){return e.replace(/-([a-z])/g,(t,n)=>n.toUpperCase())}var Ao=Symbol.for("webjs.suspense");function Fs(e){return{_$webjsSuspense:!0,fallback:e.fallback,children:e.children}}function nt(e){return!!e&&typeof e=="object"&&e._$webjsSuspense===!0}var $t=null;function Hs(e){$t=e}function It(){if(!$t)return"";try{return $t()||""}catch{return""}}async function Vs(e,t={ssr:!0}){let n=t&&t.suspenseCtx,r=await E(e,n);return t&&t.ssr===!1?r:await Oe(r,n)}async function E(e,t){if(e==null||e===!1||e===!0)return"";if(e&&typeof e.then=="function")return e=await e,E(e,t);if(ae(e))return String(e.value??"");if(ce(e))return E(e.value,t);if(X(e))return E(e.signal.get(),t);if(G(e))return E(e.value,t);if(Y(e))return E(e.fn(),t);if(le(e)){let n=e.template;return String(n?.innerHTML??"")}if(J(e))return"";if(Z(e))return E(e.value,t);if(Q(e)){let n=e.args;for(let r of n)if(!r||typeof r.then!="function")return E(r,t);if(n.length>0)try{let r=await Promise.race(n.map(i=>Promise.resolve(i).catch(()=>{})));return E(r,t)}catch{return""}return""}if(ue(e)||fe(e))return"";if(Array.isArray(e))return(await Promise.all(e.map(r=>E(r,t)))).join("");if(K(e)){let n=e;return(await Promise.all(n.items.map((i,s)=>E(n.templateFn(i,s),t)))).join("")}if(nt(e)){let n=e,r=await E(n.fallback,t);if(t){let i=`s${t.nextId++}`;return t.pending.push({id:i,promise:Promise.resolve(n.children)}),`<webjs-boundary id="${i}">${r}</webjs-boundary>`}return r}return x(e)?Ws(e,t):qe(String(e))}async function Ws(e,t){let{strings:n,values:r}=e,i="",s="text",o="",a=0,c="",l=0,f="",m="";for(let u=0;u<n.length;u++){let g=n[u];for(let b=0;b<g.length;b++){let h=g[b];switch(s){case"text":i+=h,h==="<"&&(s="tag-open");break;case"tag-open":i+=h,h==="!"?s="bang-1":h==="/"?(s="tag-name",f=""):/[a-zA-Z]/.test(h)?(s="tag-name",f=h.toLowerCase()):s="text";break;case"bang-1":i+=h,s=h==="-"?"bang-dash":"tag-name";break;case"bang-dash":i+=h,h==="-"?(s="comment",l=0):s="tag-name";break;case"comment":i+=h,h==="-"?l+=1:(h===">"&&l>=2&&(s="text"),l=0);break;case"tag-name":i+=h,h===">"?(s=st(f)?"rawtext":"text",s==="rawtext"&&(m="")):/\s/.test(h)?s="in-tag":f+=h.toLowerCase();break;case"in-tag":i+=h,h===">"?(s=st(f)?"rawtext":"text",s==="rawtext"&&(m="")):!/\s/.test(h)&&h!=="/"&&(s="attr-name",o=h,a=i.length-1);break;case"rawtext":i+=h,m=(m+h.toLowerCase()).slice(-9),(m.endsWith("<\/script>")||m.endsWith("</style>"))&&(s="text",m="",f="");break;case"attr-name":h==="="?(s="after-eq",i+=h):/\s/.test(h)?(s="in-tag",o="",i+=h):h===">"?(s="text",o="",i+=h):(o+=h,i+=h);break;case"after-eq":h==='"'||h==="'"?(s="attr-quoted",c=h,i+=h):/\s/.test(h)?(s="in-tag",o="",i+=h):h===">"?(s="text",o="",i+=h):(s="attr-unquoted",i+=h);break;case"attr-unquoted":/\s/.test(h)?(s="in-tag",o="",i+=h):(h===">"&&(s="text",o=""),i+=h);break;case"attr-quoted":i+=h,h===c&&(s="in-tag",o="");break}}if(u<r.length){let b=r[u];if(b&&typeof b.then=="function"&&(b=await b),s==="comment")i+=String(b??""),l=0;else if(s==="rawtext")i+=String(b??""),m="";else if(s==="text")i+=await E(b,t);else if(s==="after-eq"){let h=o[0],d=o.slice(1);if(h==="@")i=i.slice(0,a),s="in-tag",o="";else if(h==="."){if(i=i.slice(0,a),!f.includes("-")){s="in-tag",o="";continue}if(b===void 0){s="in-tag",o="";continue}try{let p=await Le(b);i+=`data-webjs-prop-${ri(d)}="${M(p)}"`}catch(p){console.warn(`[webjs] property binding .${d} has an unserializable value during SSR. Dropping. The browser will see the property as undefined. Detail: ${p&&p.message}`)}s="in-tag",o=""}else h==="?"?(i=i.slice(0,a),b&&(i+=`${d}=""`),s="in-tag",o=""):(i+=`"${M(String(b??""))}"`,s="in-tag",o="")}else(s==="attr-quoted"||s==="attr-unquoted")&&(i+=M(String(b??"")))}}return i}var zs=new Set(["document","window","localStorage","sessionStorage","navigator","matchMedia","requestAnimationFrame","getComputedStyle","IntersectionObserver","MutationObserver","ResizeObserver"]),Ks=new Set(["attachShadow","querySelector","querySelectorAll","getBoundingClientRect","focus","blur","scrollIntoView"]);function Gs(e){let t=e&&typeof e.message=="string"?e.message:"",n=/^(\w+) is not defined$/.exec(t);return e instanceof ReferenceError&&n&&zs.has(n[1])?`\`${n[1]}\` is a browser-only global and is undefined during SSR.`:(n=/\.(\w+) is not a function$/.exec(t),e instanceof TypeError&&n&&Ks.has(n[1])?`\`${n[1]}\` is an HTMLElement method that does not exist on the server-side component instance during SSR.`:null)}async function Oe(e,t,n=[]){let r=Mt();if(!r.length)return e;let i=[...r].sort((f,m)=>m.length-f.length),s=new RegExp(`<(${i.map(rt).join("|")})(?=[\\s>/])((?:"[^"]*"|'[^']*'|[^>])*?)(/?)>`,"g"),o=[];for(let f of e.matchAll(s)){let[m,u,g,b]=f,h=Ot(u);if(!h)continue;t&&t.usedComponents&&t.usedComponents.add(u);let d=b?`<${u}${g}>`:m;try{let p=h.shadow===!0,y=new h;y.__ssrTag=u,y.__ssrAncestors=n;let _=zn(g),C=si(_),I=new Set(Object.keys(zn(g)).map(j=>j.toLowerCase()));ei(y,_),ni(y,_,h);for(let[j,w]of Object.entries(C))y[j]=w;typeof y.performServerUpdate=="function"&&y.performServerUpdate();let k=y.render?y.render():"";k&&typeof k.then=="function"&&(k=await k),d=ti(d,y,I);let O=await E(k,t);if(p){let j=await Oe(O,t,[...n,y]),w=h.styles,be=Array.isArray(w)?w:w&&ye(w)?[w]:[],ft=pt(be);o.push({start:f.index,end:f.index+m.length,text:`${d}<template shadowrootmode="open">${ft}${j}</template>`})}else{if(O.trim()===""){o.push({start:f.index,end:f.index+m.length,text:`${d}<!--webjs-hydrate-->`});continue}let w="",be=f.index+m.length;if(!b){let dt=f.index+m.length,Ue=qt(e,dt,u);if(Ue!==-1){w=e.slice(dt,Ue);let wr=new RegExp(`</${rt(u)}\\s*>`,"i"),Sr=e.slice(Ue),on=wr.exec(Sr),Ar=on?on[0].length:`</${u}>`.length;be=Ue+Ar}else w=e.slice(dt),be=e.length}let ft=Qs(w),yr=Xs(O,ft),_r=await Oe(yr,t,[...n,y]);o.push({start:f.index,end:be,text:`${d}<!--webjs-hydrate-->${_r}</${u}>`})}}catch(p){let y=Gs(p);console.error(y?`[webjs] SSR failed for <${u}>: ${y} It was touched in the component's constructor or render(), which run during SSR. Move browser-only work to connectedCallback() or a lifecycle hook (firstUpdated/updated), which SSR never calls; seed first-paint defaults in the constructor only from server-known inputs (attributes / props).`:`[webjs] SSR failed for <${u}>:`,p)}}if(!o.length)return e;o.sort((f,m)=>f.start-m.start);let a=[],c=-1;for(let f of o)f.start>=c&&(a.push(f),c=f.end);let l=e;for(let f=a.length-1;f>=0;f--){let{start:m,end:u,text:g}=a[f];l=l.slice(0,m)+g+l.slice(u)}return l}var Ys=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]);function Js(e){return Ys.has(e.toLowerCase())}function qt(e,t,n){let r=rt(n),i=new RegExp(`<${r}(?:[\\s>/])`,"gi"),s=new RegExp(`</${r}\\s*>`,"gi");i.lastIndex=t,s.lastIndex=t;let o=1;for(;o>0;){let a=i.exec(e),c=s.exec(e);if(!c)return-1;if(a&&a.index<c.index)o++,s.lastIndex=a.index+1;else{if(o--,o===0)return c.index;i.lastIndex=c.index+1}}return-1}function Zs(e){let t=/\bslot\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s>]+))/i.exec(e);if(!t)return null;let n=t[1]??t[2]??t[3]??"";return n===""?null:n}function Qs(e){let t=new Map,n="",r=0;for(;r<e.length;){let i=e.indexOf("<",r);if(i===-1){n+=e.slice(r);break}i>r&&(n+=e.slice(r,i));let s=e.slice(i);if(s.startsWith("<!--")){let d=e.indexOf("-->",i+4);if(d===-1){n+=s,r=e.length;break}n+=e.slice(i,d+3),r=d+3;continue}if(s.startsWith("<!")||s.startsWith("</")){let d=e.indexOf(">",i);if(d===-1){n+=s,r=e.length;break}n+=e.slice(i,d+1),r=d+1;continue}let o=/^<([a-zA-Z][\w-]*)((?:"[^"]*"|'[^']*'|[^>])*?)(\/?)>/.exec(s);if(!o){n+="<",r=i+1;continue}let[a,c,l,f]=o,m=c.toLowerCase(),u=!!f||Js(m),g=Zs(l),b;if(u)b=i+a.length;else{let d=i+a.length,p=qt(e,d,m);if(p===-1){let k=e.slice(i);g!==null?Wn(t,g,k):n+=k,r=e.length;continue}let y=new RegExp(`</${rt(m)}\\s*>`,"i"),_=e.slice(p),C=y.exec(_),I=C?C[0].length:`</${m}>`.length;b=p+I}let h=e.slice(i,b);g!==null?Wn(t,g,h):n+=h,r=b}return n.length>0&&t.set(null,n),t}function Wn(e,t,n){let r=e.get(t);r!==void 0?e.set(t,r+n):e.set(t,n)}function Xs(e,t){let n=new Set,r="",i=0,s=/<slot((?:"[^"]*"|'[^']*'|[^>])*?)(\/?)>/gi,o;for(;(o=s.exec(e))!==null;){r+=e.slice(i,o.index);let[a,c,l]=o,f=!!l,m=/\bname\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s>]+))/i.exec(c),u=m?m[1]??m[2]??m[3]:null,g=c.replace(/\bname\s*=\s*(?:"[^"]*"|'[^']*'|[^\s>]+)/i,"").trim(),b="",h;if(f)h=o.index+a.length;else{let _=o.index+a.length,C=qt(e,_,"slot");if(C===-1)b=e.slice(_),h=e.length;else{b=e.slice(_,C);let I=/<\/slot\s*>/i,k=e.slice(C),O=I.exec(k),j=O?O[0].length:7;h=C+j}}let d=t.get(u),p=u!==null?` name="${M(u)}"`:"",y=g?` ${g}`:"";d!==void 0&&!n.has(u)?(n.add(u),r+=`<slot data-webjs-light data-projection="actual"${p}${y}>${d}</slot>`):r+=`<slot data-webjs-light data-projection="fallback"${p}${y}>${b}</slot>`,i=h,s.lastIndex=h}return r+=e.slice(i),r}function rt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function st(e){return e==="script"||e==="style"}function zn(e){let t={},n=/([a-zA-Z_:][\w:.-]*)(?:\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s>]+)))?/g,r;for(;(r=n.exec(e))!==null;)t[r[1]]=r[2]??r[3]??r[4]??"";return t}function ei(e,t){if(!(!e||typeof e.setAttribute!="function"))for(let[n,r]of Object.entries(t))e.setAttribute(n,Bt(r))}function ti(e,t,n){if(!t||typeof t.getAttributeNames!="function")return e;let r="";for(let i of t.getAttributeNames()){let s=String(i).toLowerCase();if(n.has(s))continue;let o=t.getAttribute(i);r+=o===""?` ${s}`:` ${s}="${M(String(o))}"`}return r?`${e.slice(0,-1)}${r}>`:e}function ni(e,t,n){let r=n.properties||{};for(let[i,s]of Object.entries(t)){let o=r[i]||r[Ut(i)],a=r[i]?i:Ut(i);if(!o){e[a]=s;continue}if(o.type===Number)e[a]=Number(s);else if(o.type===Boolean)e[a]=s!=="false";else if(o.type===Object||o.type===Array)try{e[a]=JSON.parse(Bt(s))}catch{e[a]=s}else e[a]=s}}function Ut(e){return e.replace(/-([a-z])/g,(t,n)=>n.toUpperCase())}function ri(e){return e.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}function Bt(e){return e.replace(/</g,"<").replace(/"/g,'"').replace(/&/g,"&")}function si(e){let t={};for(let n of Object.keys(e)){if(!n.startsWith("data-webjs-prop-"))continue;let r=Ut(n.slice(16));try{t[r]=se(Bt(e[n]))}catch{}delete e[n]}return t}function ii(e,t={ssr:!0}){let n=t&&t.suspenseCtx;return new ReadableStream({async start(r){try{if(t&&t.ssr===!1)await v(e,n,r);else{let i=await E(e,n),s=await Oe(i,n);r.enqueue(s)}n&&n.pending.length&&await ai(n,r),r.close()}catch(i){r.error(i)}}})}async function v(e,t,n){if(!(e==null||e===!1||e===!0)){if(e&&typeof e.then=="function")return e=await e,v(e,t,n);if(ae(e)){n.enqueue(String(e.value??""));return}if(ce(e))return v(e.value,t,n);if(X(e))return v(e.signal.get(),t,n);if(G(e))return v(e.value,t,n);if(Y(e))return v(e.fn(),t,n);if(le(e)){let r=e.template;n.enqueue(String(r?.innerHTML??""));return}if(!J(e)){if(Z(e))return v(e.value,t,n);if(Q(e)){let r=e.args;for(let i of r)if(!i||typeof i.then!="function")return v(i,t,n);if(r.length>0)try{let i=await Promise.race(r.map(s=>Promise.resolve(s).catch(()=>{})));return v(i,t,n)}catch{return}return}if(!(ue(e)||fe(e))){if(Array.isArray(e)){for(let r of e)await v(r,t,n);return}if(K(e)){let r=e;for(let i=0;i<r.items.length;i++)await v(r.templateFn(r.items[i],i),t,n);return}if(nt(e)){let r=e;if(t){let i=`s${t.nextId++}`;n.enqueue(`<webjs-boundary id="${i}">`),await v(r.fallback,t,n),n.enqueue("</webjs-boundary>"),t.pending.push({id:i,promise:Promise.resolve(r.children)})}else await v(r.fallback,t,n);return}if(x(e)){await oi(e,t,n);return}n.enqueue(qe(String(e)))}}}}async function oi(e,t,n){let{strings:r,values:i}=e,s="text",o="",a=0,c="",l=0,f="",m="",u="";for(let g=0;g<r.length;g++){let b=r[g];for(let h=0;h<b.length;h++){let d=b[h];switch(s){case"text":u+=d,d==="<"&&(s="tag-open");break;case"tag-open":u+=d,d==="!"?s="bang-1":d==="/"?(s="tag-name",f=""):/[a-zA-Z]/.test(d)?(s="tag-name",f=d.toLowerCase()):s="text";break;case"bang-1":u+=d,s=d==="-"?"bang-dash":"tag-name";break;case"bang-dash":u+=d,d==="-"?(s="comment",l=0):s="tag-name";break;case"comment":u+=d,d==="-"?l+=1:(d===">"&&l>=2&&(s="text"),l=0);break;case"tag-name":u+=d,d===">"?(s=st(f)?"rawtext":"text",s==="rawtext"&&(m="")):/\s/.test(d)?s="in-tag":f+=d.toLowerCase();break;case"in-tag":u+=d,d===">"?(s=st(f)?"rawtext":"text",s==="rawtext"&&(m="")):!/\s/.test(d)&&d!=="/"&&(s="attr-name",o=d,a=u.length-1);break;case"rawtext":u+=d,m=(m+d.toLowerCase()).slice(-9),(m.endsWith("<\/script>")||m.endsWith("</style>"))&&(s="text",m="",f="");break;case"attr-name":d==="="?(s="after-eq",u+=d):/\s/.test(d)?(s="in-tag",o="",u+=d):d===">"?(s="text",o="",u+=d):(o+=d,u+=d);break;case"after-eq":d==='"'||d==="'"?(s="attr-quoted",c=d,u+=d):/\s/.test(d)?(s="in-tag",o="",u+=d):d===">"?(s="text",o="",u+=d):(s="attr-unquoted",u+=d);break;case"attr-unquoted":/\s/.test(d)?(s="in-tag",o="",u+=d):(d===">"&&(s="text",o=""),u+=d);break;case"attr-quoted":u+=d,d===c&&(s="in-tag",o="");break}}if(g<i.length){let h=i[g];if(h&&typeof h.then=="function"&&(h=await h),s==="comment")u+=String(h??""),l=0;else if(s==="rawtext")u+=String(h??""),m="";else if(s==="text")u&&(n.enqueue(u),u=""),await v(h,t,n);else if(s==="after-eq"){let d=o[0],p=o.slice(1);d==="@"||d==="."?(u=u.slice(0,a),s="in-tag",o=""):d==="?"?(u=u.slice(0,a),h&&(u+=`${p}=""`),s="in-tag",o=""):(u+=`"${M(String(h??""))}"`,s="in-tag",o="")}else(s==="attr-quoted"||s==="attr-unquoted")&&(u+=M(String(h??"")))}}u&&n.enqueue(u)}async function ai(e,t){let n=It(),r=n?` nonce="${M(n)}"`:"";for(;e.pending.length;){let i=e.pending.splice(0);await Promise.all(i.map(async({id:s,promise:o})=>{try{let a=await o,c=await E(a,e),l=await Oe(c,e);t.enqueue(`<template data-webjs-resolve="${s}">${l}</template><script${r}>(function(){var t=document.currentScript.previousElementSibling;var b=document.getElementById("${s}");if(b&&t){b.innerHTML=t.innerHTML;t.remove()}document.currentScript.remove()})()<\/script>`)}catch(a){console.error(`[webjs] Suspense boundary "${s}" rejected:`,a)}}))}}var Kn=Symbol.for("webjs.notFound"),Gn=Symbol.for("webjs.redirect");function ci(){let e=new Error("webjs: notFound()");throw e.__webjs=Kn,e}function li(e,t=307){let n=new Error(`webjs: redirect(${e})`);throw n.__webjs=Gn,n.url=e,n.status=t,n}function ui(e){return!!e&&e.__webjs===Kn}function fi(e){return!!e&&e.__webjs===Gn}function di(e,t,n){let r=/^\s*([A-Z]+)\s+(\/\S*)\s*$/.exec(e);if(!r)throw new Error(`expose(): bad pattern ${JSON.stringify(e)}: expected "METHOD /path"`);let[,i,s]=r;return t.__webjsHttp={method:i,path:s,validate:n&&typeof n.validate=="function"?n.validate:null,cors:n&&"cors"in n?hi(n.cors):null},t}function hi(e){return e?e===!0?{origin:"*",credentials:!1,maxAge:86400,headers:null}:typeof e=="string"?{origin:e,credentials:!0,maxAge:86400,headers:null}:Array.isArray(e)?{origin:e,credentials:!0,maxAge:86400,headers:null}:{origin:e.origin,credentials:!!e.credentials,maxAge:typeof e.maxAge=="number"?e.maxAge:86400,headers:Array.isArray(e.headers)?e.headers:null}:null}function pi(e){return e&&typeof e=="function"&&e.__webjsHttp||null}function mi(e,t={}){let n=t.reconnect!==!1,r=0,i=!1,s=null,o=[];function a(){i||(s=new WebSocket(gi(e),t.protocols),s.onopen=c=>{for(r=0;o.length&&s&&s.readyState===WebSocket.OPEN;)s.send(o.shift());t.onOpen?.(c)},s.onmessage=c=>{let l=c.data;if(typeof l=="string")try{l=JSON.parse(l)}catch{}t.onMessage?.(l,c)},s.onerror=c=>{t.onError?.(c)},s.onclose=c=>{if(t.onClose?.(c),!i&&n){let l=Math.min(1e3*2**r++,3e4);setTimeout(a,l)}})}return a(),{send(c){let l=typeof c=="string"||c instanceof ArrayBuffer||ArrayBuffer.isView(c)?c:JSON.stringify(c);s&&s.readyState===WebSocket.OPEN?s.send(l):o.push(l)},close(c,l){i=!0;try{s?.close(c,l)}catch{}},get socket(){return s},get readyState(){return s?.readyState??3}}}function gi(e){if(/^wss?:\/\//i.test(e))return e;let t=typeof location<"u"&&location.protocol==="https:"?"wss:":"ws:",n=typeof location<"u"?location.host:"";return`${t}//${n}${e.startsWith("/")?e:"/"+e}`}var Dt="application/vnd.webjs+json";async function bi(e,t={}){let n=new Headers(t.headers||{});n.has("accept")||n.set("accept",Dt);let r=t.body;r!=null&&typeof r=="object"&&!(r instanceof FormData)&&!(r instanceof Blob)&&!(r instanceof ArrayBuffer)&&!(r instanceof URLSearchParams)&&!(typeof ReadableStream<"u"&&r instanceof ReadableStream)&&!ArrayBuffer.isView(r)&&(r=await Le(r),n.has("content-type")||n.set("content-type",Dt));let i=await fetch(e,{...t,headers:n,body:r}),s=i.headers.get("content-type")||"",o=await i.text(),a=s.includes(Dt)?o?se(o):null:s.includes("application/json")?o?JSON.parse(o):null:o;if(!i.ok){let c=a&&a.error||`richFetch ${e} -> ${i.status}`,l=new Error(c);throw l.status=i.status,l.body=a,l}return a}var Ft=typeof HTMLElement<"u"?class extends HTMLElement{}:null;typeof customElements<"u"&&Ft&&!customElements.get("webjs-frame")&&customElements.define("webjs-frame",Ft);function Xn(e){return typeof Document<"u"&&typeof Document.parseHTMLUnsafe=="function"?Document.parseHTMLUnsafe(e):typeof DOMParser<"u"?new DOMParser().parseFromString(e,"text/html"):null}var oe=!1,W=null,R=0,Ht=null;function yi(){Ht||typeof MutationObserver>"u"||typeof customElements>"u"||(Ht=new MutationObserver(e=>{for(let t of e)for(let n of t.addedNodes){if(n.nodeType!==1)continue;let r=n;r.tagName?.includes("-")&&customElements.upgrade(r);for(let i of r.querySelectorAll("*"))i.tagName?.includes("-")&&customElements.upgrade(i)}}),Ht.observe(document.body,{childList:!0,subtree:!0}))}var z=null,it=null;function er(){oe||typeof document>"u"||(oe=!0,document.addEventListener("click",tr,!1),document.addEventListener("submit",rr,!1),window.addEventListener("popstate",nr),document.addEventListener("pointerover",me,!0),document.addEventListener("focusin",me,!0),document.addEventListener("touchstart",me,{capture:!0,passive:!0}),document.addEventListener("pointerout",ur,!0),document.addEventListener("webjs:navigate",Gt),yi(),Gt(),typeof history<"u"&&"scrollRestoration"in history&&(it=history.scrollRestoration,history.scrollRestoration="manual"),typeof location<"u"&&(z=location.href))}function _i(){oe&&(oe=!1,document.removeEventListener("click",tr,!1),document.removeEventListener("submit",rr,!1),window.removeEventListener("popstate",nr),document.removeEventListener("pointerover",me,!0),document.removeEventListener("focusin",me,!0),document.removeEventListener("touchstart",me,{capture:!0}),document.removeEventListener("pointerout",ur,!0),document.removeEventListener("webjs:navigate",Gt),en(),V&&(V.disconnect(),V=null),typeof history<"u"&&it!==null&&(history.scrollRestoration=it,it=null),z=null)}async function wi(e,t){let n=new URL(e,location.href);if(n.origin!==location.origin){location.href=e;return}await Xt(n.href,t?.replace??!1,null)}function Si(e){if(!e){N.clear(),T.clear();return}let t=new URL(e,location.href),n=t.pathname+t.search;N.delete(n),T.delete(n)}var Qt=/\.(?:pdf|zip|tar|gz|7z|rar|dmg|exe|msi|deb|rpm|apk|ipa|xlsx?|docx?|pptx?|csv|odt|ods|odp|rtf|epub|mobi|xml|json|rss|atom|txt|md|wasm|mp3|mp4|mov|avi|webm|ogg|flac|wav|m4a|m4v|mkv|png|jpe?g|gif|webp|avif|bmp|ico|svg|tiff?|heic)$/i;function tr(e){if(!oe||e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;let t=Ei(e);if(!t||t.hasAttribute("download")||t.hasAttribute("data-no-router")||t.target&&t.target!=="_self")return;let n=t.href;if(!n)return;let r=new URL(n);if(r.origin!==location.origin||r.pathname===location.pathname&&r.search===location.search&&r.hash||Qt.test(r.pathname))return;e.preventDefault();let i=sr(t);Xt(n,!1,i)}function nr(e){Xt(location.href,!0,null)}function rr(e){if(!oe||e.defaultPrevented)return;let t=e.target;if(!t||t.nodeType!==1||t.tagName!=="FORM"||t.hasAttribute("data-no-router"))return;let n=e.submitter??null;if(n&&n.hasAttribute("data-no-router"))return;let r=n&&n.getAttribute("formtarget")||t.getAttribute("target")||"";if(r&&r!=="_self")return;let i=Ai(t,n);if(i==="dialog")return;let s=Ci(t,n),o;try{o=new URL(s,location.href)}catch{return}if(o.origin!==location.origin||Qt.test(o.pathname))return;let a=xi(t,n);e.preventDefault();let c=sr(t);Ti(o.href,i,a,c)}function Ai(e,t){return(t&&t.getAttribute("formmethod")||e.getAttribute("method")||"get").toLowerCase()}function Ci(e,t){return t&&t.hasAttribute("formaction")?t.getAttribute("formaction")||"":e.getAttribute("action")||e.action||location.href}function xi(e,t){try{return new FormData(e,t||void 0)}catch{let n=new FormData(e);return t&&t.getAttribute("name")&&n.append(t.getAttribute("name"),t.getAttribute("value")||""),n}}function Ei(e){for(let t of e.composedPath())if(t instanceof HTMLAnchorElement)return t;return null}function sr(e){let t=e;for(;t;){let n=t.closest("webjs-frame");if(n&&n.id)return n.id;let r=t.getRootNode();if(r&&r.host)t=r.host;else break}return null}function ct(e){let t=new Map,n=[];function r(i){if(i.nodeType===8){let s=i,o=s.data,a=/^wj:children:(.+)$/.exec(o);if(a){n.push({path:a[1],start:s});return}if(o.trim()==="/wj:children"){let c=n.pop();c&&!t.has(c.path)&&t.set(c.path,{start:c.start,end:s});return}return}if(i.hasChildNodes&&i.hasChildNodes())for(let s=i.firstChild;s;s=s.nextSibling)r(s)}return r(e),t}function vi(e,t){let n=null;for(let r of e.keys())t.has(r)&&(n===null||r.length>n.length)&&(n=r);return n}var ki=16,N=new Map;function ir(e){let t=ge(e);N.has(t)&&N.delete(t);let n={html:document.documentElement.outerHTML,scrollX:typeof window<"u"&&window.scrollX||0,scrollY:typeof window<"u"&&window.scrollY||0};for(N.set(t,n);N.size>ki;){let r=N.keys().next().value;N.delete(r)}}function Ni(e){let t=ge(e),n=N.get(t);return n==null?null:(N.delete(t),N.set(t,n),typeof n=="string"?{html:n,scrollX:0,scrollY:0}:n)}function ge(e){let t=new URL(e,location.href);return t.pathname+t.search}async function Xt(e,t,n){W&&W.abort(),W=new AbortController;let r=W.signal,i=++R;z&&ir(z);let s=setTimeout(()=>{document.documentElement.setAttribute("data-navigating",""),s=null},150),o=null;t||(o=pr());try{if(t){let a=Ni(e);if(a){let c=Xn(a.html);if(c){dr(c,n,!0,null),typeof window<"u"&&window.scrollTo(a.scrollX,a.scrollY),Yt(e,n,!1,o,"GET",null,r,i).catch(()=>{});return}}typeof window<"u"&&window.scrollTo(0,0)}await Yt(e,n,!t,o,"GET",null,r,i)}finally{s&&clearTimeout(s),i===R&&(document.documentElement.removeAttribute("data-navigating"),typeof location<"u"&&(z=location.href))}}async function Ti(e,t,n,r){W&&W.abort(),W=new AbortController;let i=W.signal,s=++R,o=t==="get"||t==="head",a=new URL(e,location.href);if(o){a.search="";for(let[f,m]of n)a.searchParams.append(f,typeof m=="string"?m:m.name)}z&&ir(z);let c=setTimeout(()=>{document.documentElement.setAttribute("data-navigating",""),c=null},150),l=pr();try{await Yt(a.href,r,!0,l,o?"GET":t.toUpperCase(),o?null:n,i,s),!o&&s===R&&(N.clear(),T.clear())}finally{c&&clearTimeout(c),s===R&&(document.documentElement.removeAttribute("data-navigating"),typeof location<"u"&&(z=location.href))}}function or(){return[...ct(document.body).keys()].join(",")}var Ri=8,ar=3e4,cr=3,ji=24,Li=100,T=new Map,Me=new Set,Pe=[],ot=new Set,pe=null,$e=null,V=null;function lr(){try{let e=typeof navigator<"u"?navigator.connection:null;if(e&&e.saveData===!0||typeof matchMedia=="function"&&matchMedia("(prefers-reduced-data: reduce)").matches)return!0}catch{}return!1}function Oi(e){let t=e.getAttribute("rel");return t?t.toLowerCase().split(/\s+/).filter(Boolean):[]}function Wt(e){if(!e||!(e instanceof HTMLAnchorElement)||e.hasAttribute("download")||e.hasAttribute("data-no-router")||e.target&&e.target!=="_self")return null;let t=e.href;if(!t)return null;let n;try{n=new URL(t)}catch{return null}return n.origin!==location.origin||n.pathname===location.pathname&&n.search===location.search&&n.hash||Qt.test(n.pathname)?null:t}function Mi(e){if(e.hasAttribute("data-no-prefetch"))return!0;let t=Oi(e);return t.includes("external")||t.includes("no-prefetch")}function zt(e){if(Mi(e))return"none";switch((e.getAttribute("data-prefetch")||"").toLowerCase().trim()){case"false":case"none":return"none";case"true":case"render":return"render";case"auto":case"viewport":return"viewport";case"intent":return"intent";default:return"intent"}}function lt(e){if(typeof fetch!="function"||lr())return;let t=ge(e);if(Me.has(t)||ot.has(t))return;let n=T.get(t);if(n&&Kt()-n.at<ar)return;if(Me.size>=cr){for(ot.add(t),Pe.push(e);Pe.length>ji;){let s=Pe.shift();ot.delete(ge(s))}return}Me.add(t);let r={"x-webjs-router":"1","x-webjs-prefetch":"1"},i=or();i&&(r["x-webjs-have"]=i),fetch(e,{method:"GET",headers:r,credentials:"same-origin"}).then(async s=>{let o=s.headers.get("content-type")||"";if(!/^text\/html\b/i.test(o)||s.status>=400)return;let a=s.headers.get("x-webjs-build"),c=s.redirected&&s.url?s.url:e,l=await s.text();$i(t,{html:l,build:a,finalUrl:c,at:Kt()})}).catch(()=>{}).finally(()=>{Me.delete(t),Pi()})}function Pi(){for(;Pe.length&&Me.size<cr;){let e=Pe.shift();ot.delete(ge(e)),lt(e)}}function $i(e,t){for(T.has(e)&&T.delete(e),T.set(e,t);T.size>Ri;){let n=T.keys().next().value;T.delete(n)}typeof document<"u"&&document.dispatchEvent(new CustomEvent("webjs:prefetch",{detail:{url:t.finalUrl,key:e,from:"prefetch"}}))}function Ii(e){let t=ge(e),n=T.get(t);return!n||(T.delete(t),Kt()-n.at>=ar)?null:n}function Kt(){try{if(typeof performance<"u"&&typeof performance.now=="function")return performance.now()}catch{}return 0}function me(e){if(!oe)return;let t=fr(e.target);if(!t||zt(t)!=="intent")return;let n=Wt(t);n&&($e===t&&pe||(en(),$e=t,pe=setTimeout(()=>{pe=null,$e=null,lt(n)},Li)))}function ur(e){let t=fr(e.target);t&&t===$e&&en()}function en(){pe&&(clearTimeout(pe),pe=null),$e=null}function fr(e){let t=e;for(;t;){if(t instanceof HTMLAnchorElement)return t;let n=t.nodeType===1?t:null;if(n){let i=n.closest&&n.closest("a");if(i instanceof HTMLAnchorElement)return i}let r=t.getRootNode?t.getRootNode():null;t=r&&r.host?r.host:null}return null}function Gt(){if(typeof document>"u"||lr())return;let e=typeof IntersectionObserver<"u";e&&(V?V.disconnect():V=new IntersectionObserver(t=>{for(let n of t){if(!n.isIntersecting)continue;let r=n.target;V.unobserve(r);let i=Wt(r);i&&zt(r)==="viewport"&<(i)}},{threshold:.5}));for(let t of document.querySelectorAll("a[href]")){let n=zt(t);if(n==="render"){let r=Wt(t);r&<(r)}else n==="viewport"&&e&&V.observe(t)}}async function Yt(e,t,n,r,i,s,o,a){i=i||"GET";let c=typeof a=="number"?a:R,l,f=null,m=e;try{let g=i==="GET"&&!s&&!t?Ii(e):null;if(g)l=g.html,f=g.build,m=g.finalUrl;else{let b={"x-webjs-router":"1"},h=or();h&&(b["x-webjs-have"]=h),t&&(b["x-webjs-frame"]=t);let d={method:i,headers:b,credentials:"same-origin"};o&&(d.signal=o),s!=null&&i!=="GET"&&i!=="HEAD"&&(d.body=s);let p=await fetch(e,d),y=p.headers.get("content-type")||"",_=/^text\/html\b/i.test(y);if(p.redirected&&p.url&&(m=p.url),p.status===204||p.status===205){c===R&&n&&history.pushState(null,"",m);return}if(!_){c===R&&(location.href=e);return}f=p.headers.get("x-webjs-build"),l=await p.text()}}catch(g){if(g&&g.name==="AbortError"||c!==R)return;Bi(r),location.href=e;return}if(c!==R)return;let u=Xn(l);if(!u){location.href=e;return}if(dr(u,t,!1,m,f),n&&history.pushState(null,"",m),n){let g=new URL(m);if(g.hash){let b=document.getElementById(g.hash.slice(1));b?b.scrollIntoView():window.scrollTo(0,0)}else window.scrollTo(0,0)}document.dispatchEvent(new CustomEvent("webjs:navigate",{detail:{url:m,frameId:t,from:"navigate"}}))}function Yn(e){if(!e||!e.head)return"";let t=e.head.querySelectorAll('[data-webjs-track="reload"]');if(!t.length)return"";let n="";for(let r of t)n+=ie(r);return n}function dr(e,t,n,r,i){try{typeof sessionStorage<"u"&&(!r||t||n)&&sessionStorage.removeItem("webjs:importmap-reload")}catch{}if(r&&!t&&!n){let f=document.querySelector('script[type="importmap"]'),m=f?f.getAttribute("data-webjs-build"):null,u=!1;if(i&&m&&(u=i!==m),!u&&e.head&&e.head.children.length>0){let g=Yn(document),b=Yn(e);g!==b&&(u=!0)}if(u&&typeof location<"u")try{let g="webjs:importmap-reload";if(sessionStorage&&sessionStorage.getItem(g))sessionStorage.removeItem(g);else{sessionStorage&&sessionStorage.setItem(g,"1"),location.href=r;return}}catch{location.href=r;return}else if(!u)try{typeof sessionStorage<"u"&&sessionStorage.removeItem("webjs:importmap-reload")}catch{}}if(t){let f=document.querySelector(`webjs-frame#${CSS.escape(t)}`),m=e.querySelector(`webjs-frame#${CSS.escape(t)}`);if(f&&m){Zn(e.head),Di(f,m),Zt(f),at(f),Qn(e.body),Vt();return}let u=new CustomEvent("webjs:frame-missing",{bubbles:!0,cancelable:!0,detail:{frameId:t,url:r||(typeof location<"u"?location.href:null),document:e}});(f||document).dispatchEvent(u),u.defaultPrevented||console.warn(`[webjs] frame "${t}" was not in the navigation response, leaving it unchanged. Handle "webjs:frame-missing" (preventDefault) to override.`);return}let s=ct(document.body),o=ct(e.body),a=vi(s,o);if(a){Zn(e.head),Ui(s.get(a),o.get(a),e),Qn(e.body),Vt();return}Fi(e.head);let c=[...e.body.childNodes],l=()=>{document.body.replaceChildren(...c),Zt(document.body),at(document.body),Vt()};document.startViewTransition?document.startViewTransition(l).finished.then(()=>at(document.body)).catch(()=>{}):l()}function Vt(){let e=document.activeElement;!e||e===document.body||e===document.documentElement||typeof e.blur=="function"&&e.blur()}function Ui(e,t,n){if(!e||!t)return;let r=e.start.parentNode;if(!r)return;let i=[];for(let o=e.start.nextSibling;o&&o!==e.end;o=o.nextSibling)i.push(o);let s=[];for(let o=t.start.nextSibling;o&&o!==t.end;o=o.nextSibling)s.push(document.importNode(o,!0));qi(r,e.start,e.end,i,s);for(let o=e.start.nextSibling;o&&o!==e.end;o=o.nextSibling)o.nodeType===1&&(Zt(o),at(o))}function qi(e,t,n,r,i){let s=new Map;for(let c of r){if(c.nodeType!==1)continue;let l=Ie(c);l&&s.set(l,c)}let o=n,a=[];for(let c of i){if(c.nodeType===1){let l=Ie(c);if(l&&s.has(l)){let f=s.get(l);Jt(f,c),a.push(f),s.delete(l);continue}}a.push(c)}for(let c of r)if(c.parentNode===e){if(c.nodeType===1&&a.includes(c))continue;e.removeChild(c)}for(let c of a)e.insertBefore(c,o)}function Jt(e,t){if(e.tagName!==t.tagName){e.replaceWith(t);return}let n=new Set;for(let r of t.attributes)n.add(r.name),!Jn.has(r.name)&&e.getAttribute(r.name)!==r.value&&e.setAttribute(r.name,r.value);for(let r of[...e.attributes])Jn.has(r.name)||n.has(r.name)||e.removeAttribute(r.name);hr(e,t)}function hr(e,t){let n=[...e.childNodes],r=[...t.childNodes].map(a=>document.importNode(a,!0)),i=new Map;for(let a of n){if(a.nodeType!==1)continue;let c=Ie(a);c&&i.set(c,a)}let s=[];for(let a=0;a<r.length;a++){let c=r[a];if(c.nodeType===1){let l=Ie(c);if(l&&i.has(l)){let m=i.get(l);Jt(m,c),s.push(m),i.delete(l);continue}let f=n[a];if(f&&f.nodeType===1&&!Ie(f)&&f.tagName===c.tagName){Jt(f,c),s.push(f);continue}}else if(c.nodeType===3){let l=n[a];if(l&&l.nodeType===3){l.nodeValue!==c.nodeValue&&(l.nodeValue=c.nodeValue),s.push(l);continue}}else if(c.nodeType===8){let l=n[a];if(l&&l.nodeType===8){l.nodeValue!==c.nodeValue&&(l.nodeValue=c.nodeValue),s.push(l);continue}}s.push(c)}let o=new Set(s);for(let a of n)!o.has(a)&&a.parentNode===e&&e.removeChild(a);for(let a=0;a<s.length;a++){let c=s[a];(c.parentNode!==e||e.childNodes[a]!==c)&&e.insertBefore(c,e.childNodes[a]||null)}}function Ie(e){let t=e.getAttribute("data-key");return t?`${e.tagName}:k:${t}`:e.id?`${e.tagName}:i:${e.id}`:null}var Jn=new Set(["value","checked","selected","indeterminate","disabled","open","popover"]);function pr(){let e=ct(document.body);if(e.size===0)return null;let t=null;for(let o of e.keys())(t===null||o.length>t.length)&&(t=o);if(t===null)return null;let n=document.getElementById(`wj-loading:${t}`);if(!(n instanceof HTMLTemplateElement))return null;let r=e.get(t),i=[];for(let o=r.start.nextSibling;o&&o!==r.end;o=o.nextSibling)i.push(o);let s=document.createRange();return s.setStartAfter(r.start),s.setEndBefore(r.end),s.deleteContents(),r.start.parentNode.insertBefore(n.content.cloneNode(!0),r.end),{slot:r,oldChildren:i,token:R}}function Bi(e){if(!e||e.token!==R)return;let{slot:t,oldChildren:n}=e;if(t.start.parentNode!==t.end.parentNode)return;let r=document.createRange();r.setStartAfter(t.start),r.setEndBefore(t.end),r.deleteContents();for(let i of n)t.start.parentNode.insertBefore(i,t.end)}function Di(e,t){hr(e,t)}function mr(){if(typeof document>"u")return"";let e=document.querySelector('meta[name="csp-nonce"]');return e&&e.getAttribute("content")||""}function tn(e){let t=document.createElement("script");for(let r of e.attributes)r.name!=="nonce"&&t.setAttribute(r.name,r.value);let n=mr();return n&&t.setAttribute("nonce",n),t.textContent=e.textContent,t}function gr(e){if(!e.hasAttribute("nonce"))return e.cloneNode(!0);let t=e.cloneNode(!0),n=mr();return n?t.setAttribute("nonce",n):t.removeAttribute("nonce"),t}function ie(e){if(!e.hasAttribute("nonce"))return e.outerHTML;let t=e.cloneNode(!0);return t.removeAttribute("nonce"),t.outerHTML}function Zn(e){let t=e.querySelector("title");t&&(document.title=t.textContent||"");let n=new Set;for(let r of document.head.children)n.add(ie(r));for(let r of e.children)r.tagName==="SCRIPT"&&r.getAttribute("type")==="importmap"||r.tagName!=="BASE"&&r.tagName!=="TITLE"&&(n.has(ie(r))||(r.tagName==="SCRIPT"?document.head.appendChild(tn(r)):document.head.appendChild(gr(r))))}function Fi(e){let t=document.head,n=e.querySelector("title");n&&(document.title=n.textContent||"");let r=new Set;for(let s of t.children)s.tagName==="SCRIPT"&&s.getAttribute("type")==="importmap"||s.tagName!=="BASE"&&r.add(ie(s));let i=new Set;for(let s of e.children)s.tagName==="SCRIPT"&&s.getAttribute("type")==="importmap"||s.tagName!=="BASE"&&i.add(ie(s));for(let s of[...t.children])s.tagName==="SCRIPT"&&s.getAttribute("type")==="importmap"||s.tagName!=="BASE"&&s.tagName!=="TITLE"&&(i.has(ie(s))||s.remove());for(let s of e.children)s.tagName==="SCRIPT"&&s.getAttribute("type")==="importmap"||s.tagName!=="BASE"&&s.tagName!=="TITLE"&&(r.has(ie(s))||(s.tagName==="SCRIPT"?t.appendChild(tn(s)):t.appendChild(gr(s))))}function at(e){typeof customElements>"u"||br(e)}function br(e){let t=e instanceof Element?[e,...e.querySelectorAll("*")]:[...e.querySelectorAll("*")];for(let n of t)n.tagName&&n.tagName.includes("-")&&(customElements.upgrade(n),n.shadowRoot&&br(n.shadowRoot))}function Qn(e){for(let t of e.querySelectorAll("template[data-webjs-resolve]"))document.body.appendChild(t.cloneNode(!0))}function Zt(e){for(let t of e.querySelectorAll("script"))t.replaceWith(tn(t))}er();var Hi=Symbol.for("webjs.context");function Vi(e){return{__context__:Hi,name:e}}var ut=class extends Event{constructor(t,n,r=!1){super("context-request",{bubbles:!0,composed:!0}),this.context=t,this.callback=n,this.subscribe=r}},nn=class{constructor(t,{context:n,initialValue:r}){this._host=t,this._context=n,this._value=r,this._subscriptions=new Set,this._onRequest=i=>{let s=i;if(s.context===this._context)if(i.stopPropagation(),s.subscribe){let o={callback:s.callback},a=()=>{this._subscriptions.delete(o)};this._subscriptions.add(o),s.callback(this._value,a)}else s.callback(this._value)},typeof t.addController=="function"&&t.addController(this)}get value(){return this._value}setValue(t){if(!Object.is(this._value,t)){this._value=t;for(let n of this._subscriptions){let r=()=>{this._subscriptions.delete(n)};n.callback(t,r)}}}hostConnected(){this._host.addEventListener("context-request",this._onRequest)}hostDisconnected(){this._host.removeEventListener("context-request",this._onRequest),this._subscriptions.clear()}},rn=class{constructor(t,{context:n,subscribe:r=!0}){this._host=t,this._context=n,this._subscribe=r,this._value=void 0,this._unsubscribe=void 0,typeof t.addController=="function"&&t.addController(this)}get value(){return this._value}hostConnected(){this._dispatchRequest()}hostDisconnected(){this._unsubscribe&&(this._unsubscribe(),this._unsubscribe=void 0)}_dispatchRequest(){let t=new ut(this._context,(n,r)=>{let i=this._value;this._value=n,r&&(this._unsubscribe=r),!Object.is(i,n)&&typeof this._host.requestUpdate=="function"&&this._host.requestUpdate()},this._subscribe);this._host.dispatchEvent(t)}};function Wi(){return typeof window<"u"}var U={INITIAL:0,PENDING:1,COMPLETE:2,ERROR:3},sn=class{constructor(t,{task:n,args:r,autoRun:i=!0}){this._host=t,this._taskFn=n,this._argsFn=r||(()=>[]),this._autoRun=i,this._status=U.INITIAL,this._value=void 0,this._error=void 0,this._abortController=null,this._prevArgs=null,typeof t.addController=="function"&&t.addController(this)}get status(){return this._status}get value(){return this._value}get error(){return this._error}async run(){this.abort();let t=new AbortController;this._abortController=t;let n=this._argsFn();this._prevArgs=n,this._status=U.PENDING,this._error=void 0,this._requestHostUpdate();try{let r=await this._taskFn(...n,{signal:t.signal});if(t.signal.aborted)return;this._value=r,this._status=U.COMPLETE,this._error=void 0}catch(r){if(t.signal.aborted)return;this._error=r,this._status=U.ERROR,this._value=void 0}finally{this._abortController===t&&(this._abortController=null)}this._requestHostUpdate()}abort(){this._abortController&&(this._abortController.abort(),this._abortController=null)}render(t={}){switch(this._status){case U.INITIAL:return t.initial?.();case U.PENDING:return t.pending?.();case U.COMPLETE:return t.complete?.(this._value);case U.ERROR:return t.error?.(this._error);default:return}}hostUpdate(){if(!this._autoRun||!Wi())return;let t=this._argsFn();this._argsEqual(this._prevArgs,t)||this.run()}hostUpdated(){}hostConnected(){}hostDisconnected(){this.abort()}_requestHostUpdate(){typeof this._host.requestUpdate=="function"&&this._host.requestUpdate()}_argsEqual(t,n){if(t===null||t.length!==n.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==n[r])return!1;return!0}};export{rn as ContextConsumer,nn as ContextProvider,ut as ContextRequestEvent,S as MARKER,Se as Signal,Fs as Suspense,sn as Task,U as TaskStatus,Pt as WebComponent,Ft as WebjsFrame,ht as adoptStyles,Mt as allTags,Mr as asyncAppend,Pr as asyncReplace,Wr as batch,Lr as cache,Kr as computed,mi as connectWS,Vi as createContext,jr as createRef,It as cspNonce,xr as css,Bn as deserialize,_i as disableClientRouter,Yr as effect,er as enableClientRouter,M as escapeAttr,qe as escapeText,di as expose,pi as getExposed,Nr as guard,Cr as html,ue as isAsyncAppend,fe as isAsyncReplace,ye as isCSS,Z as isCache,Y as isGuard,G as isKeyed,vs as isLazy,ce as isLive,ui as isNotFound,fi as isRedirect,J as isRef,K as isRepeat,Gr as isSignal,nt as isSuspense,x as isTemplate,le as isTemplateContent,ae as isUnsafeHTML,Q as isUntil,X as isWatch,kr as keyed,vr as live,Ot as lookup,Es as lookupModuleUrl,wi as navigate,ci as notFound,se as parse,xs as primeModuleUrl,li as redirect,Rr as ref,Lt as register,Ze as render,ii as renderToStream,Vs as renderToString,cn as repeat,Si as revalidate,bi as richFetch,qn as serialize,Hs as setCspNonceProvider,zr as signal,Le as stringify,pt as stylesToString,et as tagOf,Tr as templateContent,Er as unsafeHTML,Or as until,$r as watch};
|
|
4
4
|
//# sourceMappingURL=webjs-core.js.map
|