@webjsdev/core 0.7.33 → 0.7.34
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.
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var Cs=Object.defineProperty;var V=(e,t)=>()=>(e&&(t=e(e=0)),t);var On=(e,t)=>{for(var n in t)Cs(e,n,{get:t[n],enumerable:!0})};function hr(e,t,n){qo.has(t)?Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0}):e[t]=n}async function Qt(e){return JSON.stringify(await pr(e))}function G(e){return mr(JSON.parse(e))}async function pr(e){let t=Ho();return await Vo(e,t),K(e,t)}function mr(e){return D(e,Go())}function Ho(){return{refCount:new Map,idOf:new Map,emitted:new Set,nextId:0,blobBytes:new Map,fdEntries:new Map}}async function Vo(e,t){let n=[e];for(;n.length;){let r=n.pop();if(!Jo(r))continue;let s=t.refCount.get(r)||0;if(t.refCount.set(r,s+1),!(s>0)){if(typeof Blob<"u"&&r instanceof Blob){let o=new Uint8Array(await r.arrayBuffer());t.blobBytes.set(r,o);continue}if(typeof FormData<"u"&&r instanceof FormData){let o=t.fdEntries.get(r)||[...r.entries()];t.fdEntries.set(r,o);for(let[,i]of o)typeof i!="string"&&n.push(i);continue}if(Array.isArray(r))for(let o=0;o<r.length;o++)n.push(r[o]);else if(r instanceof Map)for(let[o,i]of r)n.push(o),n.push(i);else if(r instanceof Set)for(let o of r)n.push(o);else if(Xo(r))for(let o in r)Object.prototype.hasOwnProperty.call(r,o)&&n.push(r[o])}}for(let[r,s]of t.refCount)s>1&&t.idOf.set(r,t.nextId++)}function K(e,t){if(e===null)return null;if(e===void 0)return{[_]:"undef"};let n=typeof e;if(n==="string"||n==="boolean")return e;if(n==="number")return Number.isNaN(e)?{[_]:"NaN"}:e===1/0?{[_]:"Inf"}:e===-1/0?{[_]:"-Inf"}:Object.is(e,-0)?{[_]:"-0"}:e;if(n==="bigint")return{[_]:"BigInt",v:e.toString()};if(n==="symbol"){let o=Symbol.keyFor(e);if(o===void 0)throw new TypeError("Cannot serialize a local Symbol; only Symbol.for() registered symbols are supported.");return{[_]:"Sym",v:o}}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{[_]:"Ref",v:r};r!==void 0&&t.emitted.add(r);let s;if(e instanceof Date)s={[_]:"Date",v:Number.isNaN(e.getTime())?null:e.toISOString()};else if(e instanceof Error)s={[_]:"Error",v:{name:e.name,message:e.message,stack:e.stack||null}};else if(typeof Blob<"u"&&e instanceof Blob){let o=t.blobBytes.get(e);typeof File<"u"&&e instanceof File?s={[_]:"File",v:ve(o),n:e.name,t:e.type||"",m:e.lastModified}:s={[_]:"Blob",v:ve(o),t:e.type||""}}else if(typeof FormData<"u"&&e instanceof FormData){let o=t.fdEntries.get(e)||[...e.entries()],i=[];for(let[c,a]of o)i.push([c,K(a,t)]);s={[_]:"FD",v:i}}else if(ArrayBuffer.isView(e)||e instanceof ArrayBuffer)s=zo(e);else if(e instanceof Map){let o=[];for(let[i,c]of e)o.push([K(i,t),K(c,t)]);s={[_]:"Map",v:o}}else if(e instanceof Set){let o=[];for(let i of e)o.push(K(i,t));s={[_]:"Set",v:o}}else if(Array.isArray(e))s=e.map(o=>K(o,t));else{s={};for(let o in e){if(!Object.prototype.hasOwnProperty.call(e,o))continue;let i=Qo(o)?"_"+o:o;hr(s,i,K(e[o],t))}}if(r!==void 0){if(Array.isArray(s))return{[_]:"Arr",_id:r,v:s};s._id=r}return s}function zo(e){if(e instanceof ArrayBuffer)return{[_]:"buf",v:ve(new Uint8Array(e))};if(e instanceof DataView)return{[_]:"dv",v:ve(new Uint8Array(e.buffer,e.byteOffset,e.byteLength))};let t=e.constructor.name,n=Wo[t];if(!n)throw new TypeError(`Unsupported typed array: ${t}`);let r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return{[_]:n,v:ve(r)}}function Go(){return{refs:new Map}}function D(e,t){if(e===null||typeof e!="object")return e;if(Array.isArray(e)){let o=[];for(let i=0;i<e.length;i++)o.push(D(e[i],t));return o}let n=e[_];if(typeof n=="string")return Yo(e,n,t);let r={},s=e._id;typeof s=="number"&&t.refs.set(s,r);for(let o in e){if(!Object.prototype.hasOwnProperty.call(e,o)||o==="_id")continue;let i=Zo(o)?o.slice(1):o;hr(r,i,D(e[o],t))}return r}function Yo(e,t,n){let r=e._id,s=o=>(typeof r=="number"&&n.refs.set(r,o),o);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 s(BigInt(e.v));case"Sym":return s(Symbol.for(e.v));case"Date":return s(e.v==null?new Date(NaN):new Date(e.v));case"Error":{let o=new Error(e.v.message);return o.name=e.v.name,e.v.stack&&(o.stack=e.v.stack),typeof r=="number"&&n.refs.set(r,o),o}case"Map":{let o=new Map;typeof r=="number"&&n.refs.set(r,o);for(let[i,c]of e.v)o.set(D(i,n),D(c,n));return o}case"Set":{let o=new Set;typeof r=="number"&&n.refs.set(r,o);for(let i of e.v)o.add(D(i,n));return o}case"Arr":{let o=[];typeof r=="number"&&n.refs.set(r,o);for(let i of e.v)o.push(D(i,n));return o}case"Ref":{let o=n.refs.get(e.v);if(o===void 0)throw new TypeError(`Dangling reference: id=${e.v}`);return o}case"Blob":{if(typeof Blob>"u")throw new TypeError("Blob is not available in this environment.");let o=Ae(e.v);return s(new Blob([o],{type:e.t||""}))}case"File":{if(typeof File>"u")throw new TypeError("File is not available in this environment.");let o=Ae(e.v);return s(new File([o],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 o=new FormData;s(o);for(let[i,c]of e.v){let a=D(c,n);o.append(i,a)}return o}default:{if(t==="buf"){let i=Ae(e.v);return s(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength))}if(t==="dv"){let i=Ae(e.v);return s(new DataView(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)))}let o=Ko[t];if(o){let i=Ae(e.v),c=i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength);return s(new o(c))}throw new TypeError(`Unknown serialization tag: ${t}`)}}}function Jo(e){return e!==null&&typeof e=="object"}function Xo(e){if(e===null||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function Qo(e){return/^_+\$wj$/.test(e)||/^_+id$/.test(e)}function Zo(e){return/^__+\$wj$/.test(e)||/^__+id$/.test(e)}function ve(e){if(br)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 Ae(e){if(br){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 _,qo,Wo,Ko,br,Ee=V(()=>{_="_$wj",qo=new Set(["__proto__","constructor","prototype"]);Wo={Int8Array:"i8",Uint8Array:"u8",Uint8ClampedArray:"u8c",Int16Array:"i16",Uint16Array:"u16",Int32Array:"i32",Uint32Array:"u32",Float32Array:"f32",Float64Array:"f64",BigInt64Array:"bi64",BigUint64Array:"bu64"},Ko={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};br=typeof Buffer<"u"&&typeof Buffer.from=="function"});var xr={};On(xr,{observeLazy:()=>_i,observeViewportOnce:()=>Ai});function kr(e){let t=tn.get(e);return t||(t=import(e).finally(()=>tn.delete(e)),tn.set(e,t),t)}function _i(e){for(let[t,n]of Object.entries(e))Y.set(t.toLowerCase(),n);if(typeof IntersectionObserver>"u"){for(let t of Y.values())kr(t);Y.clear();return}Te||(Te=new IntersectionObserver(wi,{rootMargin:"200px"})),Tr(),typeof MutationObserver<"u"&&new MutationObserver(()=>Tr()).observe(document.body,{childList:!0,subtree:!0})}function Tr(){if(!(!Te||!Y.size))for(let e of Y.keys())for(let t of document.querySelectorAll(e))Te.observe(t)}function wi(e){for(let t of e){if(!t.isIntersecting)continue;let n=t.target.tagName.toLowerCase(),r=Y.get(n);r&&(kr(r),Y.delete(n),Te?.unobserve(t.target))}}function Si(e){for(let t of e){if(!t.isIntersecting)continue;let n=ot.get(t.target);ot.delete(t.target),Ce?.unobserve(t.target),n&&n()}}function Ai(e,t){return typeof IntersectionObserver>"u"?(t(),()=>{}):(Ce||(Ce=new IntersectionObserver(Si,{rootMargin:"200px"})),ot.set(e,t),Ce.observe(e),()=>{ot.delete(e),Ce?.unobserve(e)})}var Y,Te,tn,Ce,ot,Nr=V(()=>{Y=new Map,Te=null,tn=new Map;Ce=null,ot=new WeakMap});var nn,rn=V(()=>{nn=typeof HTMLElement<"u"?class extends HTMLElement{constructor(){super(),this._webjsLoadedSrc=null,this._webjsLazyTeardown=null}static get observedAttributes(){return["src"]}connectedCallback(){this._webjsScheduleLoad()}disconnectedCallback(){this._webjsLazyTeardown&&(this._webjsLazyTeardown(),this._webjsLazyTeardown=null)}attributeChangedCallback(t,n,r){t==="src"&&this.isConnected&&this._webjsScheduleLoad()}_webjsScheduleLoad(){let t=this.getAttribute("src");if(!t){this._webjsLazyTeardown&&(this._webjsLazyTeardown(),this._webjsLazyTeardown=null),this._webjsLoadedSrc=null;return}let n=t;try{n=new URL(t,location.href).href}catch{}if(n===this._webjsLoadedSrc)return;this._webjsLazyTeardown&&(this._webjsLazyTeardown(),this._webjsLazyTeardown=null),(this.getAttribute("loading")||"eager").toLowerCase()==="lazy"?(this._webjsLoadedSrc=n,Promise.resolve().then(()=>(Nr(),xr)).then(({observeViewportOnce:s})=>{this._webjsLoadedSrc!==n||!this.isConnected||(this._webjsLazyTeardown=s(this,()=>{this._webjsLazyTeardown=null,this._webjsLoad(n)}))})):(this._webjsLoadedSrc=n,this._webjsLoad(n))}_webjsLoad(t){Promise.resolve().then(()=>(it(),jr)).then(({loadFrame:n})=>{this._webjsLoadedSrc!==t||!this.isConnected||n(this,t)})}}:null;typeof customElements<"u"&&nn&&!customElements.get("webjs-frame")&&customElements.define("webjs-frame",nn)});function Ei(e,t,n){switch(e){case"append":n&&t.append(n);break;case"prepend":n&&t.prepend(n);break;case"before":n&&t.before(n);break;case"after":n&&t.after(n);break;case"replace":n&&t.replaceWith(n);break;case"update":n&&t.replaceChildren(n);break;case"remove":t.remove();break;default:break}}function on(e,t){let n=t||(typeof document<"u"?document:null);if(!n)return;let r=null;if(typeof e=="string"){let o=n.createElement("template");o.innerHTML=e,r=o.content}else if(e&&e.nodeType)r=e;else return;let s=r.querySelectorAll?Array.from(r.querySelectorAll("webjs-stream")):[];if(s.length)for(let o of s)n.body.append(o);else n.body.append(r)}var vi,sn,at=V(()=>{vi=new Set(["append","prepend","before","after","replace","update"]);sn=typeof HTMLElement<"u"?class extends HTMLElement{connectedCallback(){this._webjsApplied||(this._webjsApplied=!0,this._webjsApply())}_webjsApply(){let t=(this.getAttribute("action")||"").toLowerCase(),n=this.ownerDocument||document,r=[],s=this.getAttribute("target");if(s){let i=n.getElementById(s);i&&(r=[i])}else{let i=this.getAttribute("targets");if(i)try{r=Array.from(n.querySelectorAll(i))}catch{r=[]}}let o=vi.has(t)?this.querySelector("template"):null;try{for(let i of r){let c=o?o.content.cloneNode(!0):null;Ei(t,i,c)}}finally{this.remove()}}}:null;typeof customElements<"u"&&sn&&!customElements.get("webjs-stream")&&customElements.define("webjs-stream",sn)});var Rr,Or=V(()=>{Rr=typeof HTMLElement<"u"?class extends HTMLElement{connectedCallback(){this.style.display||(this.style.display="contents")}}:null;typeof customElements<"u"&&Rr&&!customElements.get("webjs-suspense")&&customElements.define("webjs-suspense",Rr)});function ct(e){let t=e||(typeof document<"u"?document:null);if(!(!t||typeof t.querySelectorAll!="function")){for(let n of t.querySelectorAll('script[type="application/json"]#__webjs-seeds, script[type="application/json"][data-webjs-seeds]'))Mr(n.textContent,n);for(let n of t.querySelectorAll("[data-webjs-seed]"))Mr(n.getAttribute("data-webjs-seed"),n,()=>n.removeAttribute("data-webjs-seed"))}}function Mr(e,t,n){if(e)try{let r=G(e);if(r&&typeof r=="object")for(let s in r)ke.has(s)||ke.set(s,r[s])}catch{}n?n():t.remove?.()}function Ci(e,t,n){Lr||(Lr=!0,ct());let r=`${e}/${t}/${n}`;if(ke.has(r)){let s=ke.get(r);return ke.delete(r),s}return Pr}var ke,Pr,Lr,an=V(()=>{Ee();ke=new Map,Pr=Symbol("webjs.seed.miss"),Lr=!1});var jr={};On(jr,{_FRAME_TOP:()=>Jr,_LIVE_ATTRS:()=>pn,_activeFrameId:()=>Yr,_addNewHeadElements:()=>mn,_applyStreamedResolve:()=>ws,_applySwap:()=>En,_blurOutgoingFocus:()=>ft,_buildSubmitFormData:()=>Kr,_bumpNavToken:()=>Gi,_clearFormBusy:()=>fs,_clearFrameBusy:()=>ls,_collectChildrenSlots:()=>de,_currentPageUrl:()=>Yi,_diffElementInPlace:()=>gt,_eligibleAnchorHref:()=>ht,_findAnchorInPath:()=>Gr,_getSubmitAction:()=>Wr,_getSubmitMethod:()=>zr,_isNonHtmlPath:()=>Qi,_keyOf:()=>fe,_longestSharedPath:()=>Qr,_markFormBusy:()=>us,_markFrameBusy:()=>cs,_mergeHead:()=>ys,_navToken:()=>Ki,_onPopState:()=>yn,_onSubmit:()=>gn,_prefetch:()=>he,_prefetchCache:()=>w,_prefetchHasHoverPointer:()=>rs,_prefetchInflightSize:()=>zi,_prefetchMode:()=>pt,_prefetchPeek:()=>Vi,_prefetchSaysSaveData:()=>Sn,_prefetchSuppressed:()=>ss,_prefetchTake:()=>os,_reactivateScripts:()=>_t,_readStreamedShell:()=>gs,_reconcileChildren:()=>Cn,_regraftPermanentElements:()=>hs,_regraftPermanentInSlice:()=>vn,_resetPrefetch:()=>Wi,_resetWarnOnce:()=>Xi,_resolveTargetFrameId:()=>_n,_restoreOptimistic:()=>xe,_runWithTransition:()=>ut,_setCurrentPageUrl:()=>Ji,_snapshotCache:()=>v,_streamBoundariesProgressively:()=>Ss,_takeResolveUnit:()=>_s,_viewTransitionsEnabled:()=>ds,collectChildrenSlots:()=>de,disableClientRouter:()=>$r,enableClientRouter:()=>bn,loadFrame:()=>ki,longestSharedPath:()=>Qr,navigate:()=>qr,revalidate:()=>Hr});function Dr(e){return typeof Document<"u"&&typeof Document.parseHTMLUnsafe=="function"?Document.parseHTMLUnsafe(e):typeof DOMParser<"u"?new DOMParser().parseFromString(e,"text/html"):null}function Ti(){cn||typeof MutationObserver>"u"||typeof customElements>"u"||(cn=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 s of r.querySelectorAll("*"))s.tagName?.includes("-")&&customElements.upgrade(s)}}),cn.observe(document.body,{childList:!0,subtree:!0}))}function bn(){q||typeof document>"u"||(q=!0,document.addEventListener("click",Vr,!1),document.addEventListener("submit",gn,!1),window.addEventListener("popstate",yn),document.addEventListener("pointerover",ue,!0),document.addEventListener("focusin",ue,!0),document.addEventListener("touchstart",ue,{capture:!0,passive:!0}),document.addEventListener("pointerout",is,!0),document.addEventListener("webjs:navigate",hn),Ti(),hn(),typeof history<"u"&&"scrollRestoration"in history&&(lt=history.scrollRestoration,history.scrollRestoration="manual"),typeof location<"u"&&(O=location.href))}function $r(){q&&(q=!1,document.removeEventListener("click",Vr,!1),document.removeEventListener("submit",gn,!1),window.removeEventListener("popstate",yn),document.removeEventListener("pointerover",ue,!0),document.removeEventListener("focusin",ue,!0),document.removeEventListener("touchstart",ue,{capture:!0}),document.removeEventListener("pointerout",is,!0),document.removeEventListener("webjs:navigate",hn),St(),An(),$&&($.disconnect(),$=null),typeof history<"u"&<!==null&&(history.scrollRestoration=lt,lt=null),O=null)}async function qr(e,t){let n=new URL(e,location.href);if(n.origin!==location.origin){location.href=e;return}await wn(n.href,t?.replace??!1,null)}async function ki(e,t){if(typeof location>"u")return{ok:!1,status:null,aborted:!1};let n=e&&e.id;if(!n)return{ok:!1,status:null,aborted:!1};let r=new URL(t,location.href);if(r.origin!==location.origin)return{ok:!1,status:null,aborted:!1};x&&x.abort(),x=new AbortController;let s=x.signal,o=++S;return mt(r.href,n,!1,null,"GET",null,s,o)}function Hr(e){if(!e){v.clear(),w.clear();return}let t=new URL(e,location.href),n=t.pathname+t.search;v.delete(n),w.delete(n)}function Vr(e){if(!q||e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;let t=Gr(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||wt.test(r.pathname))return;e.preventDefault();let s=_n(t);wn(n,!1,s)}function yn(e){wn(location.href,!0,null)}function gn(e){if(!q||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 s=zr(t,n);if(s==="dialog")return;let o=Wr(t,n),i;try{i=new URL(o,location.href)}catch{return}if(i.origin!==location.origin||wt.test(i.pathname))return;let c=Kr(t,n);e.preventDefault();let a=_n(n||t);ji(i.href,s,c,a,t)}function zr(e,t){return(t&&t.getAttribute("formmethod")||e.getAttribute("method")||"get").toLowerCase()}function Wr(e,t){return t&&t.hasAttribute("formaction")?t.getAttribute("formaction")||"":e.getAttribute("action")||e.action||location.href}function Kr(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 Gr(e){for(let t of e.composedPath())if(t instanceof HTMLAnchorElement)return t;return null}function Yr(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 _n(e){if(!e)return null;let t=e.closest&&e.closest("[data-webjs-frame]"),n=t?t.dataset?t.dataset.webjsFrame:t.getAttribute("data-webjs-frame"):null;if(n!=null&&n!==""){if(n===Jr)return null;let r=typeof document<"u"?document.getElementById(n):null;return r&&r.tagName&&r.tagName.toLowerCase()==="webjs-frame"?n:(Xr(`webjs:frame-unresolved:${n}`,`[webjs] data-webjs-frame="${n}" did not match a live <webjs-frame id="${n}">; performing a normal navigation instead.`),null)}return Yr(e)}function Xr(e,t){un.has(e)||(un.add(e),typeof console<"u"&&console.warn&&console.warn(t))}function Fr(){if(typeof process<"u"&&process.env||fn||typeof document>"u"||typeof getComputedStyle!="function")return;let e=document.documentElement;if(!e)return;fn=!0;let t;try{t=getComputedStyle(e).scrollBehavior}catch{return}t==="smooth"&&Xr("scroll-behavior-smooth-html","[webjs] Detected `scroll-behavior: smooth` on <html>. The client router scrolls to the top instantly on navigation (like a native page load), so route transitions are not affected by it. It still applies to in-page #anchor links. Pairing it with a sticky `backdrop-filter` header can also flash on iOS during navigation.")}function dt(e){if(typeof document>"u")return;let t=document.documentElement;if(!(!t||!t.hasAttribute("data-webjs-nav-progress")))try{e?t.setAttribute("data-navigating",""):t.removeAttribute("data-navigating")}catch{}}function de(e){let t=new Map,n=[];function r(s){if(s.nodeType===8){let o=s,i=o.data,c=/^wj:children:(.+)$/.exec(i);if(c){n.push({path:c[1],start:o});return}if(i.trim()==="/wj:children"){let a=n.pop();a&&!t.has(a.path)&&t.set(a.path,{start:a.start,end:o});return}return}if(s.hasChildNodes&&s.hasChildNodes())for(let o=s.firstChild;o;o=o.nextSibling)r(o)}return r(e),t}function Qr(e,t){let n=null;for(let r of e.keys())t.has(r)&&(n===null||r.length>n.length)&&(n=r);return n}function Zr(e){let t=Q(e);document.dispatchEvent(new CustomEvent("webjs:before-cache",{detail:{url:e}})),v.has(t)&&v.delete(t);let n={html:document.documentElement.outerHTML,scrollX:typeof window<"u"&&window.scrollX||0,scrollY:typeof window<"u"&&window.scrollY||0};for(v.set(t,n);v.size>xi;){let r=v.keys().next().value;v.delete(r)}}function Ni(e){let t=Q(e),n=v.get(t);return n==null?null:(v.delete(t),v.set(t,n),typeof n=="string"?{html:n,scrollX:0,scrollY:0}:n)}function Q(e){let t=new URL(e,location.href);return t.pathname+t.search}async function wn(e,t,n){x&&x.abort(),x=new AbortController;let r=x.signal,s=++S;O&&Zr(O);let o=setTimeout(()=>{dt(!0),o=null},150),i=null;t||(i=ps());try{if(t){let c=Ni(e);if(c){let a=Dr(c.html);if(a){En(a,n,!0,null),typeof window<"u"&&window.scrollTo({left:c.scrollX,top:c.scrollY,behavior:"instant"}),mt(e,n,!1,i,"GET",null,r,s).catch(()=>{});return}}typeof window<"u"&&window.scrollTo({left:0,top:0,behavior:"instant"})}await mt(e,n,!t,i,"GET",null,r,s)}finally{o&&clearTimeout(o),s===S&&(dt(!1),typeof location<"u"&&(O=location.href))}}async function ji(e,t,n,r,s){x&&x.abort(),x=new AbortController;let o=x.signal,i=++S,c=t==="get"||t==="head",a=new URL(e,location.href);if(c){a.search="";for(let[p,m]of n)a.searchParams.append(p,typeof m=="string"?m:m.name)}O&&Zr(O);let l=setTimeout(()=>{dt(!0),l=null},150),u=ps(),h=s?us(s,i,a.href):null,f=!1;try{let p=await mt(a.href,r,!0,u,c?"GET":t.toUpperCase(),c?null:n,o,i);f=!!(p&&p.ok),!c&&i===S&&(v.clear(),w.clear())}finally{h&&fs(h,i,a.href,f),l&&clearTimeout(l),i===S&&(dt(!1),typeof location<"u"&&(O=location.href))}}function es(){return[...de(document.body).keys()].join(",")}function Sn(){try{let e=typeof navigator<"u"?navigator.connection:null;if(e&&(e.saveData===!0||typeof e.effectiveType=="string"&&/2g$/.test(e.effectiveType))||typeof matchMedia=="function"&&matchMedia("(prefers-reduced-data: reduce)").matches)return!0}catch{}return!1}function rs(){try{if(typeof matchMedia=="function")return matchMedia("(hover: hover) and (pointer: fine)").matches}catch{}return!0}function Pi(e){let t=e.getAttribute("rel");return t?t.toLowerCase().split(/\s+/).filter(Boolean):[]}function ht(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||wt.test(n.pathname)?null:t}function ss(e){if(e.hasAttribute("data-no-prefetch"))return!0;let t=Pi(e);return t.includes("external")||t.includes("no-prefetch")}function pt(e){if(ss(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 rs()?"intent":"viewport"}}function he(e){if(!q||typeof fetch!="function"||Sn())return;let t=Q(e);if(J.has(t)||Ne.has(t))return;let n=w.get(t);if(n&&dn()-n.at<ts)return;if(J.size>=ns){for(Ne.add(t),ce.push(e);ce.length>Oi;){let o=ce.shift();Ne.delete(Q(o))}return}J.add(t);let r={"x-webjs-router":"1","x-webjs-prefetch":"1"},s=es();s&&(r["x-webjs-have"]=s),fetch(e,{method:"GET",headers:r,credentials:"same-origin"}).then(async o=>{let i=o.headers.get("content-type")||"";if(!/^text\/html\b/i.test(i)||o.status>=400)return;let c=o.headers.get("x-webjs-build"),a=o.headers.get("x-webjs-src"),l=typeof document<"u"?document.querySelector('script[type="importmap"]'):null,u=l?l.getAttribute("data-webjs-build"):null,h=l?l.getAttribute("data-webjs-src"):null;(c&&u&&c!==u||a&&h&&a!==h)&&(v.clear(),w.clear());let f=o.redirected&&o.url?o.url:e,p=await o.text();Fi(t,{html:p,build:c,src:a,finalUrl:f,at:dn()})}).catch(()=>{}).finally(()=>{J.delete(t),Ii()})}function Ii(){for(;ce.length&&J.size<ns;){let e=ce.shift();Ne.delete(Q(e)),he(e)}}function Fi(e,t){for(w.has(e)&&w.delete(e),w.set(e,t);w.size>Ri;){let n=w.keys().next().value;w.delete(n)}typeof document<"u"&&document.dispatchEvent(new CustomEvent("webjs:prefetch",{detail:{url:t.finalUrl,key:e,from:"prefetch"}}))}function os(e){let t=Q(e),n=w.get(t);return!n||(w.delete(t),dn()-n.at>=ts)?null:n}function dn(){try{if(typeof performance<"u"&&typeof performance.now=="function")return performance.now()}catch{}return 0}function ue(e){if(!q)return;let t=as(e.target);if(!t)return;let n=pt(t);if(n==="none"||n==="render")return;let r=ht(t);if(r){if(e.type==="touchstart"){he(r);return}n==="intent"&&(je===t&&le||(St(),je=t,le=setTimeout(()=>{le=null,je=null,he(r)},Li)))}}function is(e){let t=as(e.target);t&&t===je&&St()}function St(){le&&(clearTimeout(le),le=null),je=null}function An(){for(let e of Re)clearTimeout(e);Re.clear(),ie=new WeakMap}function as(e){let t=e;for(;t;){if(t instanceof HTMLAnchorElement)return t;let n=t.nodeType===1?t:null;if(n){let s=n.closest&&n.closest("a");if(s instanceof HTMLAnchorElement)return s}let r=t.getRootNode?t.getRootNode():null;t=r&&r.host?r.host:null}return null}function hn(){if(typeof document>"u"||Sn())return;let e=typeof IntersectionObserver<"u";e&&($?($.disconnect(),An()):$=new IntersectionObserver(t=>{for(let n of t){let r=n.target;if(n.isIntersecting){if(ie.has(r))continue;let s=setTimeout(()=>{Re.delete(s),ie.delete(r),$.unobserve(r);let o=ht(r);o&&pt(r)==="viewport"&&he(o)},Mi);ie.set(r,s),Re.add(s)}else{let s=ie.get(r);s&&(clearTimeout(s),Re.delete(s),ie.delete(r))}}},{threshold:.5}));for(let t of document.querySelectorAll("a[href]")){let n=pt(t);if(n==="render"){let r=ht(t);r&&he(r)}else n==="viewport"&&e&&$.observe(t)}}function Bi(e){if(typeof document>"u"||!document.body)return!1;let t=de(document.body),n,r=-1;for(let[a,l]of t)a.length>r&&(r=a.length,n=l);if(!n)return!1;let s=n.start.parentNode;if(!s||n.start.parentNode!==n.end.parentNode)return!1;let o=document.createElement("div");o.setAttribute("role","alert"),o.setAttribute("data-webjs-nav-error","");let i=e?`This page could not be loaded. (status ${e})`:"This page could not be loaded.";o.textContent=i;let c=document.createRange();return c.setStartAfter(n.start),c.setEndBefore(n.end),c.deleteContents(),s.insertBefore(o,n.end),!0}function ln(e,t,n){let r=new CustomEvent("webjs:navigation-error",{bubbles:!0,cancelable:!0,detail:{url:e,status:t??null,error:n||null}});if(typeof document<"u")try{document.dispatchEvent(r)}catch{}r.defaultPrevented||Bi(t)||typeof location<"u"&&(location.href=e)}async function mt(e,t,n,r,s,o,i,c){s=s||"GET";let a=typeof c=="number"?c:S,l,u=null,h=null,f=null,p=null,m=!1,k=e,T=t?cs(t,a):null;try{try{let g=s==="GET"&&!o&&!t?os(e):null;if(g)l=g.html,h=g.build,f=g.src,k=g.finalUrl,p=200,m=!0;else{let b={"x-webjs-router":"1"},L=es();L&&(b["x-webjs-have"]=L),t&&(b["x-webjs-frame"]=t),o!=null&&s!=="GET"&&s!=="HEAD"&&(b.accept=Ir+", text/html");let H={method:s,headers:b,credentials:"same-origin"};i&&(H.signal=i),o!=null&&s!=="GET"&&s!=="HEAD"&&(H.body=o);let A=await fetch(e,H);p=A.status,m=A.ok;let Z=A.headers.get("content-type")||"",Oe=/^text\/html\b/i.test(Z);if(Z.toLowerCase().indexOf(Ir)===0){let Es=await A.text();return a===S&&(xe(r),on(Es)),{ok:m,status:p,aborted:!1}}if(A.redirected&&A.url&&(k=A.url),A.status===204||A.status===205)return a===S&&n&&history.pushState(null,"",k),{ok:m,status:p,aborted:!1};if(!Oe)return a===S&&(xe(r),ln(e,A.status,null)),{ok:!1,status:p,aborted:!1};h=A.headers.get("x-webjs-build"),f=A.headers.get("x-webjs-src");let Et=await gs(A);l=Et.shell,Et.streaming&&(u=Et)}}catch(g){return g&&g.name==="AbortError"?{ok:!1,status:null,aborted:!0}:a!==S?{ok:!1,status:null,aborted:!0}:(xe(r),ln(e,null,g instanceof Error?g:new Error(String(g))),{ok:!1,status:null,aborted:!1})}if(a!==S){if(u&&u.reader)try{u.reader.cancel()}catch{}return{ok:!1,status:p,aborted:!0}}let d=Dr(l);if(!d)return xe(r),ln(e,null,new Error("navigation response did not parse as HTML")),{ok:!1,status:p,aborted:!1};if(En(d,t,!1,k,h,f),n&&history.pushState(null,"",k),n){let g=new URL(k);if(g.hash){let b=document.getElementById(g.hash.slice(1));b?b.scrollIntoView():(Fr(),window.scrollTo({left:0,top:0,behavior:"instant"}))}else Fr(),window.scrollTo({left:0,top:0,behavior:"instant"})}return u&&(u.reader||u.rest)&&Ss(u.reader,u.dec,u.rest,()=>a===S),document.dispatchEvent(new CustomEvent("webjs:navigate",{detail:{url:k,frameId:t,from:"navigate"}})),{ok:m,status:p,aborted:!1}}finally{T&&ls(T,a)}}function cs(e,t){if(typeof document>"u")return null;let n=null;try{n=document.querySelector(`webjs-frame#${CSS.escape(e)}`)}catch{n=document.getElementById(e)}if(!n)return null;let r=bt.has(n);return bt.set(n,t),n.setAttribute("aria-busy","true"),r||n.dispatchEvent(new CustomEvent("webjs:frame-busy",{bubbles:!0,detail:{frameId:e,busy:!0}})),n}function ls(e,t){if(bt.get(e)!==t)return;bt.delete(e),e.setAttribute("aria-busy","false");let n=e.id||null;e.dispatchEvent(new CustomEvent("webjs:frame-busy",{bubbles:!0,detail:{frameId:n,busy:!1}}))}function us(e,t,n){let r=yt.has(e);return yt.set(e,t),e.setAttribute("aria-busy","true"),r||e.dispatchEvent(new CustomEvent("webjs:submit-start",{bubbles:!0,detail:{form:e,url:n}})),e}function fs(e,t,n,r){if(yt.get(e)!==t)return;yt.delete(e),e.setAttribute("aria-busy","false");let s=new CustomEvent("webjs:submit-end",{bubbles:!0,detail:{form:e,url:n,ok:!!r}});e.isConnected?e.dispatchEvent(s):typeof document<"u"?document.dispatchEvent(s):e.dispatchEvent(s)}function Br(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+=X(r);return n}function ds(){if(typeof document>"u")return!1;let e=document.querySelector('meta[name="view-transition"]');return e?(e.getAttribute("content")||"").trim().toLowerCase()==="same-origin":!1}function ut(e,t){let n=typeof document<"u"?document.startViewTransition:void 0;if(ds()&&typeof n=="function"){let r=n.call(document,e);r&&r.finished&&typeof r.finished.then=="function"?r.finished.then(()=>{t&&t()}).catch(()=>{}):t&&t();return}e(),t&&t()}function hs(e,t){if(!e||!t||typeof e.querySelectorAll!="function")return;let n=e.querySelectorAll("[data-webjs-permanent][id]");for(let r of n){let s=r.id;if(!s)continue;let o=null;try{o=t.querySelector(`#${CSS.escape(s)}`)}catch{o=null}if(!o||!r.hasAttribute||!r.hasAttribute("data-webjs-permanent"))continue;let i=o.parentNode;i&&o!==r&&i.replaceChild(r,o)}}function vn(e,t){let n=[];for(let r of e){if(r.nodeType!==1)continue;let s=r;if(s.hasAttribute&&s.hasAttribute("data-webjs-permanent")&&s.id&&n.push(s),typeof s.querySelectorAll=="function")for(let o of s.querySelectorAll("[data-webjs-permanent][id]"))n.push(o)}if(n.length)for(let r of n){let s=r.id;if(!s)continue;let o=Ui(t,s);if(!o||o===r)continue;let i=o.parentNode;if(i)i.replaceChild(r,o);else{let c=t.indexOf(o);c!==-1&&(t[c]=r)}}}function Ui(e,t){for(let n of e){if(n.nodeType!==1)continue;let r=n;if(r.id===t)return r;if(typeof r.querySelector=="function"){let s=null;try{s=r.querySelector(`#${CSS.escape(t)}`)}catch{s=null}if(s)return s}}return null}function Di(e){if(!(!e||!e.start))for(let t=e.start.nextSibling;t&&t!==e.end;t=t.nextSibling)t.nodeType===1&&ae(t)}function En(e,t,n,r,s,o){try{ct(e)}catch{}try{typeof sessionStorage<"u"&&(!r||t||n)&&sessionStorage.removeItem("webjs:importmap-reload")}catch{}if(r&&!t&&!n){let h=document.querySelector('script[type="importmap"]'),f=h?h.getAttribute("data-webjs-build"):null,p=!1;if(s&&f&&(p=s!==f),!p&&e.head&&e.head.children.length>0){let m=Br(document),k=Br(e);m!==k&&(p=!0)}if(p&&typeof location<"u"){v.clear(),w.clear();try{let m="webjs:importmap-reload";if(sessionStorage&&sessionStorage.getItem(m))sessionStorage.removeItem(m);else{sessionStorage&&sessionStorage.setItem(m,"1"),location.href=r;return}}catch{location.href=r;return}}else if(!p){let m=h?h.getAttribute("data-webjs-src"):null;o&&m&&o!==m&&(v.clear(),w.clear(),h&&h.setAttribute("data-webjs-src",o));try{typeof sessionStorage<"u"&&sessionStorage.removeItem("webjs:importmap-reload")}catch{}}}if(t){let h=document.querySelector(`webjs-frame#${CSS.escape(t)}`),f=e.querySelector(`webjs-frame#${CSS.escape(t)}`);if(h&&f){mn(e.head),ut(()=>{Hi(h,f),_t(h),ae(h),ft()},()=>ae(h)),Ur(e.body);return}let p=new CustomEvent("webjs:frame-missing",{bubbles:!0,cancelable:!0,detail:{frameId:t,url:r||(typeof location<"u"?location.href:null),document:e}});(h||document).dispatchEvent(p),p.defaultPrevented||console.warn(`[webjs] frame "${t}" was not in the navigation response, leaving it unchanged. Handle "webjs:frame-missing" (preventDefault) to override.`);return}let i=de(document.body),c=de(e.body),a=Qr(i,c);if(a){mn(e.head),ut(()=>{$i(i.get(a),c.get(a),e),ft()},()=>Di(i.get(a))),Ur(e.body);return}ys(e.head),hs(document.body,e.body);let l=[...e.body.childNodes];ut(()=>{document.body.replaceChildren(...l),_t(document.body),ae(document.body),ft()},()=>ae(document.body))}function ft(){let e=document.activeElement;!e||e===document.body||e===document.documentElement||typeof e.blur=="function"&&e.blur()}function $i(e,t,n){if(!e||!t)return;let r=e.start.parentNode;if(!r)return;let s=[];for(let i=e.start.nextSibling;i&&i!==e.end;i=i.nextSibling)s.push(i);let o=[];for(let i=t.start.nextSibling;i&&i!==t.end;i=i.nextSibling)o.push(document.importNode(i,!0));vn(s,o),qi(r,e.start,e.end,s,o);for(let i=e.start.nextSibling;i&&i!==e.end;i=i.nextSibling)i.nodeType===1&&(_t(i),ae(i))}function qi(e,t,n,r,s){let o=new Map;for(let a of r){if(a.nodeType!==1)continue;let l=fe(a);l&&o.set(l,a)}let i=n,c=[];for(let a of s){if(a.nodeType===1){let l=fe(a);if(l&&o.has(l)){let u=o.get(l);gt(u,a),c.push(u),o.delete(l);continue}}c.push(a)}for(let a of r)if(a.parentNode===e){if(a.nodeType===1&&c.includes(a))continue;e.removeChild(a)}for(let a of c)e.insertBefore(a,i)}function gt(e,t){if(e===t)return;if(e.tagName!==t.tagName){e.replaceWith(t);return}let n=new Set;for(let r of t.attributes)n.add(r.name),!pn.has(r.name)&&e.getAttribute(r.name)!==r.value&&e.setAttribute(r.name,r.value);for(let r of[...e.attributes])pn.has(r.name)||n.has(r.name)||e.removeAttribute(r.name);Cn(e,t)}function Cn(e,t){let n=[...e.childNodes],r=[...t.childNodes].map(c=>document.importNode(c,!0));vn(n,r);let s=new Map;for(let c of n){if(c.nodeType!==1)continue;let a=fe(c);a&&s.set(a,c)}let o=[];for(let c=0;c<r.length;c++){let a=r[c];if(a.nodeType===1){let l=fe(a);if(l&&s.has(l)){let h=s.get(l);gt(h,a),o.push(h),s.delete(l);continue}let u=n[c];if(u&&u.nodeType===1&&!fe(u)&&u.tagName===a.tagName){gt(u,a),o.push(u);continue}}else if(a.nodeType===3){let l=n[c];if(l&&l.nodeType===3){l.nodeValue!==a.nodeValue&&(l.nodeValue=a.nodeValue),o.push(l);continue}}else if(a.nodeType===8){let l=n[c];if(l&&l.nodeType===8){l.nodeValue!==a.nodeValue&&(l.nodeValue=a.nodeValue),o.push(l);continue}}o.push(a)}let i=new Set(o);for(let c of n)!i.has(c)&&c.parentNode===e&&e.removeChild(c);for(let c=0;c<o.length;c++){let a=o[c];(a.parentNode!==e||e.childNodes[c]!==a)&&e.insertBefore(a,e.childNodes[c]||null)}}function fe(e){let t=e.getAttribute("data-key");return t?`${e.tagName}:k:${t}`:e.id?`${e.tagName}:i:${e.id}`:null}function ps(){let e=de(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),s=[];for(let i=r.start.nextSibling;i&&i!==r.end;i=i.nextSibling)s.push(i);let o=document.createRange();return o.setStartAfter(r.start),o.setEndBefore(r.end),o.deleteContents(),r.start.parentNode.insertBefore(n.content.cloneNode(!0),r.end),{slot:r,oldChildren:s,token:S}}function xe(e){if(!e||e.token!==S)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 s of n)t.start.parentNode.insertBefore(s,t.end)}function Hi(e,t){Cn(e,t)}function ms(){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=ms();return n&&t.setAttribute("nonce",n),t.textContent=e.textContent,t}function bs(e){if(!e.hasAttribute("nonce"))return e.cloneNode(!0);let t=e.cloneNode(!0),n=ms();return n?t.setAttribute("nonce",n):t.removeAttribute("nonce"),t}function X(e){if(!e.hasAttribute("nonce"))return e.outerHTML;let t=e.cloneNode(!0);return t.removeAttribute("nonce"),t.outerHTML}function mn(e){let t=e.querySelector("title");t&&(document.title=t.textContent||"");let n=new Set;for(let r of document.head.children)n.add(X(r));for(let r of e.children)r.tagName==="SCRIPT"&&r.getAttribute("type")==="importmap"||r.tagName!=="BASE"&&r.tagName!=="TITLE"&&(n.has(X(r))||(r.tagName==="SCRIPT"?document.head.appendChild(Tn(r)):document.head.appendChild(bs(r))))}function ys(e){let t=document.head,n=e.querySelector("title");n&&(document.title=n.textContent||"");let r=new Set;for(let o of t.children)o.tagName==="SCRIPT"&&o.getAttribute("type")==="importmap"||o.tagName!=="BASE"&&r.add(X(o));let s=new Set;for(let o of e.children)o.tagName==="SCRIPT"&&o.getAttribute("type")==="importmap"||o.tagName!=="BASE"&&s.add(X(o));for(let o of[...t.children])o.tagName==="SCRIPT"&&o.getAttribute("type")==="importmap"||o.tagName!=="BASE"&&o.tagName!=="TITLE"&&(s.has(X(o))||o.remove());for(let o of e.children)o.tagName==="SCRIPT"&&o.getAttribute("type")==="importmap"||o.tagName!=="BASE"&&o.tagName!=="TITLE"&&(r.has(X(o))||(o.tagName==="SCRIPT"?t.appendChild(Tn(o)):t.appendChild(bs(o))))}function ae(e){typeof customElements>"u"||kn(e)}function kn(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&&kn(n.shadowRoot))}function Ur(e){for(let t of e.querySelectorAll("template[data-webjs-resolve]"))document.body.appendChild(t.cloneNode(!0))}async function gs(e){if(!e.body||typeof e.body.getReader!="function")return{shell:await e.text(),streaming:!1};let t=e.body.getReader(),n=new TextDecoder,r="",s="<template data-webjs-resolve",o="<!--wj-stream-shell-->",i=/<\/html\s*>/i;for(;;){let{value:c,done:a}=await t.read();c&&(r+=n.decode(c,{stream:!0})),a&&(r+=n.decode());let l=r.indexOf(o);if(l!==-1)return{shell:r.slice(0,l),streaming:!0,reader:a?null:t,dec:n,rest:r.slice(l+o.length)};let u=r.indexOf(s);if(u!==-1)return{shell:r.slice(0,u),streaming:!0,reader:a?null:t,dec:n,rest:r.slice(u)};if(a)return{shell:r,streaming:!1};let h=i.exec(r);if(h){let f=h.index+h[0].length;return{shell:r.slice(0,f),streaming:!0,reader:t,dec:n,rest:r.slice(f)}}}}function _s(e){let t=/<template\s+data-webjs-resolve="([^"]+)"\s*>/i.exec(e);if(!t)return null;let n=t[1],r=t.index+t[0].length,s=/<(\/?)template\b[^>]*>/gi;s.lastIndex=r;let o=1,i;for(;i=s.exec(e);)if(i[1]==="/"){if(o--,o===0)return{id:n,content:e.slice(r,i.index),rest:e.slice(i.index+i[0].length)}}else o++;return null}function ws(e,t){let n=document.getElementById(e);if(!n)return;let r=document.createElement("template");r.innerHTML=t;let s=[...r.content.childNodes];n.replaceWith(r.content);for(let o of s)o.nodeType===1&&kn(o)}async function Ss(e,t,n,r){let s=n,o=()=>{let i;for(;i=_s(s);){if(!r())return!1;ws(i.id,i.content),s=i.rest}return!0};if(!e){o();return}try{for(;;){if(!o()){try{await e.cancel()}catch{}return}let{value:i,done:c}=await e.read();if(i&&(s+=t.decode(i,{stream:!0})),c){s+=t.decode(),o();return}}}catch{}}function _t(e){for(let t of e.querySelectorAll("script"))t.replaceWith(Tn(t))}function Vi(e){return w.get(Q(e))||null}function zi(){return J.size}function Wi(){w.clear(),J.clear(),ce.length=0,Ne.clear(),St(),An()}function Ki(){return S}function Gi(){return++S}function Yi(){return O}function Ji(e){O=e}function Xi(){un.clear(),fn=!1}function Qi(e){return wt.test(e)}var Ir,q,x,S,cn,O,lt,wt,Jr,un,fn,xi,v,Ri,ts,ns,Oi,Li,Mi,w,J,ce,Ne,le,je,$,ie,Re,bt,yt,pn,it=V(()=>{rn();at();at();Or();an();Ir="text/vnd.webjs-stream.html";q=!1,x=null,S=0,cn=null;O=null,lt=null;wt=/\.(?: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;Jr="_top";un=new Set;fn=!1;xi=16,v=new Map;Ri=8,ts=3e4,ns=3,Oi=24,Li=100,Mi=250,w=new Map,J=new Set,ce=[],Ne=new Set,le=null,je=null,$=null,ie=new WeakMap,Re=new Set;bt=new WeakMap;yt=new WeakMap;pn=new Set(["value","checked","selected","indeterminate","disabled","open","popover"]);(typeof window>"u"||window.__WEBJS_CLIENT_ROUTER__!==!1)&&bn()});function Ts(e,...t){return{_$webjs:"template",strings:e,values:t}}function C(e){return!!e&&typeof e=="object"&&e._$webjs==="template"}var y="wjm-";function ks(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 Ct(e){return!!e&&typeof e=="object"&&e._$webjsCss===!0}function Tt(e,t){if(!(!t||!t.length))if("adoptedStyleSheets"in e&&typeof CSSStyleSheet<"u"){let n=t.map(r=>{let s=new CSSStyleSheet;return s.replaceSync(r.text),s});e.adoptedStyleSheets=n}else{let n=e,r=document.createElement("style");r.textContent=t.map(s=>s.text).join(`
|
|
1
|
+
var Cs=Object.defineProperty;var V=(e,t)=>()=>(e&&(t=e(e=0)),t);var On=(e,t)=>{for(var n in t)Cs(e,n,{get:t[n],enumerable:!0})};function hr(e,t,n){qo.has(t)?Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0}):e[t]=n}async function Qt(e){return JSON.stringify(await pr(e))}function G(e){return mr(JSON.parse(e))}async function pr(e){let t=Ho();return await Vo(e,t),K(e,t)}function mr(e){return D(e,Go())}function Ho(){return{refCount:new Map,idOf:new Map,emitted:new Set,nextId:0,blobBytes:new Map,fdEntries:new Map}}async function Vo(e,t){let n=[e];for(;n.length;){let r=n.pop();if(!Jo(r))continue;let s=t.refCount.get(r)||0;if(t.refCount.set(r,s+1),!(s>0)){if(typeof Blob<"u"&&r instanceof Blob){let o=new Uint8Array(await r.arrayBuffer());t.blobBytes.set(r,o);continue}if(typeof FormData<"u"&&r instanceof FormData){let o=t.fdEntries.get(r)||[...r.entries()];t.fdEntries.set(r,o);for(let[,i]of o)typeof i!="string"&&n.push(i);continue}if(Array.isArray(r))for(let o=0;o<r.length;o++)n.push(r[o]);else if(r instanceof Map)for(let[o,i]of r)n.push(o),n.push(i);else if(r instanceof Set)for(let o of r)n.push(o);else if(Xo(r))for(let o in r)Object.prototype.hasOwnProperty.call(r,o)&&n.push(r[o])}}for(let[r,s]of t.refCount)s>1&&t.idOf.set(r,t.nextId++)}function K(e,t){if(e===null)return null;if(e===void 0)return{[_]:"undef"};let n=typeof e;if(n==="string"||n==="boolean")return e;if(n==="number")return Number.isNaN(e)?{[_]:"NaN"}:e===1/0?{[_]:"Inf"}:e===-1/0?{[_]:"-Inf"}:Object.is(e,-0)?{[_]:"-0"}:e;if(n==="bigint")return{[_]:"BigInt",v:e.toString()};if(n==="symbol"){let o=Symbol.keyFor(e);if(o===void 0)throw new TypeError("Cannot serialize a local Symbol; only Symbol.for() registered symbols are supported.");return{[_]:"Sym",v:o}}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{[_]:"Ref",v:r};r!==void 0&&t.emitted.add(r);let s;if(e instanceof Date)s={[_]:"Date",v:Number.isNaN(e.getTime())?null:e.toISOString()};else if(e instanceof Error)s={[_]:"Error",v:{name:e.name,message:e.message,stack:e.stack||null}};else if(typeof Blob<"u"&&e instanceof Blob){let o=t.blobBytes.get(e);typeof File<"u"&&e instanceof File?s={[_]:"File",v:ve(o),n:e.name,t:e.type||"",m:e.lastModified}:s={[_]:"Blob",v:ve(o),t:e.type||""}}else if(typeof FormData<"u"&&e instanceof FormData){let o=t.fdEntries.get(e)||[...e.entries()],i=[];for(let[c,a]of o)i.push([c,K(a,t)]);s={[_]:"FD",v:i}}else if(ArrayBuffer.isView(e)||e instanceof ArrayBuffer)s=zo(e);else if(e instanceof Map){let o=[];for(let[i,c]of e)o.push([K(i,t),K(c,t)]);s={[_]:"Map",v:o}}else if(e instanceof Set){let o=[];for(let i of e)o.push(K(i,t));s={[_]:"Set",v:o}}else if(Array.isArray(e))s=e.map(o=>K(o,t));else{s={};for(let o in e){if(!Object.prototype.hasOwnProperty.call(e,o))continue;let i=Qo(o)?"_"+o:o;hr(s,i,K(e[o],t))}}if(r!==void 0){if(Array.isArray(s))return{[_]:"Arr",_id:r,v:s};s._id=r}return s}function zo(e){if(e instanceof ArrayBuffer)return{[_]:"buf",v:ve(new Uint8Array(e))};if(e instanceof DataView)return{[_]:"dv",v:ve(new Uint8Array(e.buffer,e.byteOffset,e.byteLength))};let t=e.constructor.name,n=Wo[t];if(!n)throw new TypeError(`Unsupported typed array: ${t}`);let r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return{[_]:n,v:ve(r)}}function Go(){return{refs:new Map}}function D(e,t){if(e===null||typeof e!="object")return e;if(Array.isArray(e)){let o=[];for(let i=0;i<e.length;i++)o.push(D(e[i],t));return o}let n=e[_];if(typeof n=="string")return Yo(e,n,t);let r={},s=e._id;typeof s=="number"&&t.refs.set(s,r);for(let o in e){if(!Object.prototype.hasOwnProperty.call(e,o)||o==="_id")continue;let i=Zo(o)?o.slice(1):o;hr(r,i,D(e[o],t))}return r}function Yo(e,t,n){let r=e._id,s=o=>(typeof r=="number"&&n.refs.set(r,o),o);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 s(BigInt(e.v));case"Sym":return s(Symbol.for(e.v));case"Date":return s(e.v==null?new Date(NaN):new Date(e.v));case"Error":{let o=new Error(e.v.message);return o.name=e.v.name,e.v.stack&&(o.stack=e.v.stack),typeof r=="number"&&n.refs.set(r,o),o}case"Map":{let o=new Map;typeof r=="number"&&n.refs.set(r,o);for(let[i,c]of e.v)o.set(D(i,n),D(c,n));return o}case"Set":{let o=new Set;typeof r=="number"&&n.refs.set(r,o);for(let i of e.v)o.add(D(i,n));return o}case"Arr":{let o=[];typeof r=="number"&&n.refs.set(r,o);for(let i of e.v)o.push(D(i,n));return o}case"Ref":{let o=n.refs.get(e.v);if(o===void 0)throw new TypeError(`Dangling reference: id=${e.v}`);return o}case"Blob":{if(typeof Blob>"u")throw new TypeError("Blob is not available in this environment.");let o=Ae(e.v);return s(new Blob([o],{type:e.t||""}))}case"File":{if(typeof File>"u")throw new TypeError("File is not available in this environment.");let o=Ae(e.v);return s(new File([o],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 o=new FormData;s(o);for(let[i,c]of e.v){let a=D(c,n);o.append(i,a)}return o}default:{if(t==="buf"){let i=Ae(e.v);return s(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength))}if(t==="dv"){let i=Ae(e.v);return s(new DataView(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)))}let o=Ko[t];if(o){let i=Ae(e.v),c=i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength);return s(new o(c))}throw new TypeError(`Unknown serialization tag: ${t}`)}}}function Jo(e){return e!==null&&typeof e=="object"}function Xo(e){if(e===null||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function Qo(e){return/^_+\$wj$/.test(e)||/^_+id$/.test(e)}function Zo(e){return/^__+\$wj$/.test(e)||/^__+id$/.test(e)}function ve(e){if(br)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 Ae(e){if(br){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 _,qo,Wo,Ko,br,Ee=V(()=>{_="_$wj",qo=new Set(["__proto__","constructor","prototype"]);Wo={Int8Array:"i8",Uint8Array:"u8",Uint8ClampedArray:"u8c",Int16Array:"i16",Uint16Array:"u16",Int32Array:"i32",Uint32Array:"u32",Float32Array:"f32",Float64Array:"f64",BigInt64Array:"bi64",BigUint64Array:"bu64"},Ko={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};br=typeof Buffer<"u"&&typeof Buffer.from=="function"});var xr={};On(xr,{observeLazy:()=>_i,observeViewportOnce:()=>Ai});function kr(e){let t=tn.get(e);return t||(t=import(e).finally(()=>tn.delete(e)),tn.set(e,t),t)}function _i(e){for(let[t,n]of Object.entries(e))Y.set(t.toLowerCase(),n);if(typeof IntersectionObserver>"u"){for(let t of Y.values())kr(t);Y.clear();return}Te||(Te=new IntersectionObserver(wi,{rootMargin:"200px"})),Tr(),typeof MutationObserver<"u"&&new MutationObserver(()=>Tr()).observe(document.body,{childList:!0,subtree:!0})}function Tr(){if(!(!Te||!Y.size))for(let e of Y.keys())for(let t of document.querySelectorAll(e))Te.observe(t)}function wi(e){for(let t of e){if(!t.isIntersecting)continue;let n=t.target.tagName.toLowerCase(),r=Y.get(n);r&&(kr(r),Y.delete(n),Te?.unobserve(t.target))}}function Si(e){for(let t of e){if(!t.isIntersecting)continue;let n=ot.get(t.target);ot.delete(t.target),Ce?.unobserve(t.target),n&&n()}}function Ai(e,t){return typeof IntersectionObserver>"u"?(t(),()=>{}):(Ce||(Ce=new IntersectionObserver(Si,{rootMargin:"200px"})),ot.set(e,t),Ce.observe(e),()=>{ot.delete(e),Ce?.unobserve(e)})}var Y,Te,tn,Ce,ot,Nr=V(()=>{Y=new Map,Te=null,tn=new Map;Ce=null,ot=new WeakMap});var nn,rn=V(()=>{nn=typeof HTMLElement<"u"?class extends HTMLElement{constructor(){super(),this._webjsLoadedSrc=null,this._webjsLazyTeardown=null}static get observedAttributes(){return["src"]}connectedCallback(){this._webjsScheduleLoad()}disconnectedCallback(){this._webjsLazyTeardown&&(this._webjsLazyTeardown(),this._webjsLazyTeardown=null)}attributeChangedCallback(t,n,r){t==="src"&&this.isConnected&&this._webjsScheduleLoad()}_webjsScheduleLoad(){let t=this.getAttribute("src");if(!t){this._webjsLazyTeardown&&(this._webjsLazyTeardown(),this._webjsLazyTeardown=null),this._webjsLoadedSrc=null;return}let n=t;try{n=new URL(t,location.href).href}catch{}if(n===this._webjsLoadedSrc)return;this._webjsLazyTeardown&&(this._webjsLazyTeardown(),this._webjsLazyTeardown=null),(this.getAttribute("loading")||"eager").toLowerCase()==="lazy"?(this._webjsLoadedSrc=n,Promise.resolve().then(()=>(Nr(),xr)).then(({observeViewportOnce:s})=>{this._webjsLoadedSrc!==n||!this.isConnected||(this._webjsLazyTeardown=s(this,()=>{this._webjsLazyTeardown=null,this._webjsLoad(n)}))})):(this._webjsLoadedSrc=n,this._webjsLoad(n))}_webjsLoad(t){Promise.resolve().then(()=>(it(),jr)).then(({loadFrame:n})=>{this._webjsLoadedSrc!==t||!this.isConnected||n(this,t)})}}:null;typeof customElements<"u"&&nn&&!customElements.get("webjs-frame")&&customElements.define("webjs-frame",nn)});function Ei(e,t,n){switch(e){case"append":n&&t.append(n);break;case"prepend":n&&t.prepend(n);break;case"before":n&&t.before(n);break;case"after":n&&t.after(n);break;case"replace":n&&t.replaceWith(n);break;case"update":n&&t.replaceChildren(n);break;case"remove":t.remove();break;default:break}}function on(e,t){let n=t||(typeof document<"u"?document:null);if(!n)return;let r=null;if(typeof e=="string"){let o=n.createElement("template");o.innerHTML=e,r=o.content}else if(e&&e.nodeType)r=e;else return;let s=r.querySelectorAll?Array.from(r.querySelectorAll("webjs-stream")):[];if(s.length)for(let o of s)n.body.append(o);else n.body.append(r)}var vi,sn,at=V(()=>{vi=new Set(["append","prepend","before","after","replace","update"]);sn=typeof HTMLElement<"u"?class extends HTMLElement{connectedCallback(){this._webjsApplied||(this._webjsApplied=!0,this._webjsApply())}_webjsApply(){let t=(this.getAttribute("action")||"").toLowerCase(),n=this.ownerDocument||document,r=[],s=this.getAttribute("target");if(s){let i=n.getElementById(s);i&&(r=[i])}else{let i=this.getAttribute("targets");if(i)try{r=Array.from(n.querySelectorAll(i))}catch{r=[]}}let o=vi.has(t)?this.querySelector("template"):null;try{for(let i of r){let c=o?o.content.cloneNode(!0):null;Ei(t,i,c)}}finally{this.remove()}}}:null;typeof customElements<"u"&&sn&&!customElements.get("webjs-stream")&&customElements.define("webjs-stream",sn)});var Rr,Or=V(()=>{Rr=typeof HTMLElement<"u"?class extends HTMLElement{connectedCallback(){this.style.display||(this.style.display="contents")}}:null;typeof customElements<"u"&&Rr&&!customElements.get("webjs-suspense")&&customElements.define("webjs-suspense",Rr)});function ct(e){let t=e||(typeof document<"u"?document:null);if(!(!t||typeof t.querySelectorAll!="function")){for(let n of t.querySelectorAll('script[type="application/json"]#__webjs-seeds, script[type="application/json"][data-webjs-seeds]'))Mr(n.textContent,n);for(let n of t.querySelectorAll("[data-webjs-seed]"))Mr(n.getAttribute("data-webjs-seed"),n,()=>n.removeAttribute("data-webjs-seed"))}}function Mr(e,t,n){if(e)try{let r=G(e);if(r&&typeof r=="object")for(let s in r)ke.has(s)||ke.set(s,r[s])}catch{}n?n():t.remove?.()}function Ci(e,t,n){Lr||(Lr=!0,ct());let r=`${e}/${t}/${n}`;if(ke.has(r)){let s=ke.get(r);return ke.delete(r),s}return Pr}var ke,Pr,Lr,an=V(()=>{Ee();ke=new Map,Pr=Symbol("webjs.seed.miss"),Lr=!1});var jr={};On(jr,{_FRAME_TOP:()=>Jr,_LIVE_ATTRS:()=>pn,_activeFrameId:()=>Yr,_addNewHeadElements:()=>mn,_applyStreamedResolve:()=>ws,_applySwap:()=>En,_blurOutgoingFocus:()=>ft,_buildSubmitFormData:()=>Kr,_bumpNavToken:()=>Yi,_clearFormBusy:()=>fs,_clearFrameBusy:()=>ls,_collectChildrenSlots:()=>de,_currentPageUrl:()=>Ji,_diffElementInPlace:()=>gt,_eligibleAnchorHref:()=>ht,_findAnchorInPath:()=>Gr,_getSubmitAction:()=>Wr,_getSubmitMethod:()=>zr,_isNonHtmlPath:()=>Zi,_keyOf:()=>fe,_longestSharedPath:()=>Qr,_markFormBusy:()=>us,_markFrameBusy:()=>cs,_mergeHead:()=>ys,_navToken:()=>Gi,_onPopState:()=>yn,_onSubmit:()=>gn,_prefetch:()=>he,_prefetchCache:()=>w,_prefetchHasHoverPointer:()=>rs,_prefetchInflightSize:()=>Wi,_prefetchMode:()=>pt,_prefetchPeek:()=>zi,_prefetchSaysSaveData:()=>Sn,_prefetchSuppressed:()=>ss,_prefetchTake:()=>os,_reactivateScripts:()=>_t,_readStreamedShell:()=>gs,_reconcileChildren:()=>Cn,_regraftPermanentElements:()=>hs,_regraftPermanentInSlice:()=>vn,_resetPrefetch:()=>Ki,_resetWarnOnce:()=>Qi,_resolveTargetFrameId:()=>_n,_restoreOptimistic:()=>xe,_runWithTransition:()=>ut,_setCurrentPageUrl:()=>Xi,_snapshotCache:()=>v,_streamBoundariesProgressively:()=>Ss,_takeResolveUnit:()=>_s,_viewTransitionsEnabled:()=>ds,collectChildrenSlots:()=>de,disableClientRouter:()=>$r,enableClientRouter:()=>bn,loadFrame:()=>ki,longestSharedPath:()=>Qr,navigate:()=>qr,revalidate:()=>Hr});function Dr(e){return typeof Document<"u"&&typeof Document.parseHTMLUnsafe=="function"?Document.parseHTMLUnsafe(e):typeof DOMParser<"u"?new DOMParser().parseFromString(e,"text/html"):null}function Ti(){cn||typeof MutationObserver>"u"||typeof customElements>"u"||(cn=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 s of r.querySelectorAll("*"))s.tagName?.includes("-")&&customElements.upgrade(s)}}),cn.observe(document.body,{childList:!0,subtree:!0}))}function bn(){q||typeof document>"u"||(q=!0,document.addEventListener("click",Vr,!1),document.addEventListener("submit",gn,!1),window.addEventListener("popstate",yn),document.addEventListener("pointerover",ue,!0),document.addEventListener("focusin",ue,!0),document.addEventListener("touchstart",ue,{capture:!0,passive:!0}),document.addEventListener("pointerout",is,!0),document.addEventListener("webjs:navigate",hn),Ti(),hn(),typeof history<"u"&&"scrollRestoration"in history&&(lt=history.scrollRestoration,history.scrollRestoration="manual"),typeof location<"u"&&(O=location.href))}function $r(){q&&(q=!1,document.removeEventListener("click",Vr,!1),document.removeEventListener("submit",gn,!1),window.removeEventListener("popstate",yn),document.removeEventListener("pointerover",ue,!0),document.removeEventListener("focusin",ue,!0),document.removeEventListener("touchstart",ue,{capture:!0}),document.removeEventListener("pointerout",is,!0),document.removeEventListener("webjs:navigate",hn),St(),An(),$&&($.disconnect(),$=null),typeof history<"u"&<!==null&&(history.scrollRestoration=lt,lt=null),O=null)}async function qr(e,t){let n=new URL(e,location.href);if(n.origin!==location.origin){location.href=e;return}await wn(n.href,t?.replace??!1,null)}async function ki(e,t){if(typeof location>"u")return{ok:!1,status:null,aborted:!1};let n=e&&e.id;if(!n)return{ok:!1,status:null,aborted:!1};let r=new URL(t,location.href);if(r.origin!==location.origin)return{ok:!1,status:null,aborted:!1};x&&x.abort(),x=new AbortController;let s=x.signal,o=++S;return mt(r.href,n,!1,null,"GET",null,s,o)}function Hr(e){if(!e){v.clear(),w.clear();return}let t=new URL(e,location.href),n=t.pathname+t.search;v.delete(n),w.delete(n)}function Vr(e){if(!q||e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;let t=Gr(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||wt.test(r.pathname))return;e.preventDefault();let s=_n(t);wn(n,!1,s)}function yn(e){wn(location.href,!0,null)}function gn(e){if(!q||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 s=zr(t,n);if(s==="dialog")return;let o=Wr(t,n),i;try{i=new URL(o,location.href)}catch{return}if(i.origin!==location.origin||wt.test(i.pathname))return;let c=Kr(t,n);e.preventDefault();let a=_n(n||t);ji(i.href,s,c,a,t)}function zr(e,t){return(t&&t.getAttribute("formmethod")||e.getAttribute("method")||"get").toLowerCase()}function Wr(e,t){return t&&t.hasAttribute("formaction")?t.getAttribute("formaction")||"":e.getAttribute("action")||e.action||location.href}function Kr(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 Gr(e){for(let t of e.composedPath())if(t instanceof HTMLAnchorElement)return t;return null}function Yr(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 _n(e){if(!e)return null;let t=e.closest&&e.closest("[data-webjs-frame]"),n=t?t.dataset?t.dataset.webjsFrame:t.getAttribute("data-webjs-frame"):null;if(n!=null&&n!==""){if(n===Jr)return null;let r=typeof document<"u"?document.getElementById(n):null;return r&&r.tagName&&r.tagName.toLowerCase()==="webjs-frame"?n:(Xr(`webjs:frame-unresolved:${n}`,`[webjs] data-webjs-frame="${n}" did not match a live <webjs-frame id="${n}">; performing a normal navigation instead.`),null)}return Yr(e)}function Xr(e,t){un.has(e)||(un.add(e),typeof console<"u"&&console.warn&&console.warn(t))}function Fr(){if(typeof process<"u"&&process.env||fn||typeof document>"u"||typeof getComputedStyle!="function")return;let e=document.documentElement;if(!e)return;fn=!0;let t;try{t=getComputedStyle(e).scrollBehavior}catch{return}t==="smooth"&&Xr("scroll-behavior-smooth-html","[webjs] Detected `scroll-behavior: smooth` on <html>. The client router scrolls to the top instantly on navigation (like a native page load), so route transitions are not affected by it. It still applies to in-page #anchor links. Pairing it with a sticky `backdrop-filter` header can also flash on iOS during navigation.")}function dt(e){if(typeof document>"u")return;let t=document.documentElement;if(!(!t||!t.hasAttribute("data-webjs-nav-progress")))try{e?t.setAttribute("data-navigating",""):t.removeAttribute("data-navigating")}catch{}}function de(e){let t=new Map,n=[];function r(s){if(s.nodeType===8){let o=s,i=o.data,c=/^wj:children:(.+)$/.exec(i);if(c){n.push({path:c[1],start:o});return}if(i.trim()==="/wj:children"){let a=n.pop();a&&!t.has(a.path)&&t.set(a.path,{start:a.start,end:o});return}return}if(s.hasChildNodes&&s.hasChildNodes())for(let o=s.firstChild;o;o=o.nextSibling)r(o)}return r(e),t}function Qr(e,t){let n=null;for(let r of e.keys())t.has(r)&&(n===null||r.length>n.length)&&(n=r);return n}function Zr(e){let t=Q(e);document.dispatchEvent(new CustomEvent("webjs:before-cache",{detail:{url:e}})),v.has(t)&&v.delete(t);let n={html:document.documentElement.outerHTML,scrollX:typeof window<"u"&&window.scrollX||0,scrollY:typeof window<"u"&&window.scrollY||0};for(v.set(t,n);v.size>xi;){let r=v.keys().next().value;v.delete(r)}}function Ni(e){let t=Q(e),n=v.get(t);return n==null?null:(v.delete(t),v.set(t,n),typeof n=="string"?{html:n,scrollX:0,scrollY:0}:n)}function Q(e){let t=new URL(e,location.href);return t.pathname+t.search}async function wn(e,t,n){x&&x.abort(),x=new AbortController;let r=x.signal,s=++S;O&&Zr(O);let o=setTimeout(()=>{dt(!0),o=null},150),i=null;t||(i=ps());try{if(t){let c=Ni(e);if(c){let a=Dr(c.html);if(a){En(a,n,!0,null),typeof window<"u"&&window.scrollTo({left:c.scrollX,top:c.scrollY,behavior:"instant"}),mt(e,n,!1,i,"GET",null,r,s).catch(()=>{});return}}typeof window<"u"&&window.scrollTo({left:0,top:0,behavior:"instant"})}await mt(e,n,!t,i,"GET",null,r,s)}finally{o&&clearTimeout(o),s===S&&(dt(!1),typeof location<"u"&&(O=location.href))}}async function ji(e,t,n,r,s){x&&x.abort(),x=new AbortController;let o=x.signal,i=++S,c=t==="get"||t==="head",a=new URL(e,location.href);if(c){a.search="";for(let[p,m]of n)a.searchParams.append(p,typeof m=="string"?m:m.name)}O&&Zr(O);let l=setTimeout(()=>{dt(!0),l=null},150),u=ps(),h=s?us(s,i,a.href):null,f=!1;try{let p=await mt(a.href,r,!0,u,c?"GET":t.toUpperCase(),c?null:n,o,i);f=!!(p&&p.ok),!c&&i===S&&(v.clear(),w.clear())}finally{h&&fs(h,i,a.href,f),l&&clearTimeout(l),i===S&&(dt(!1),typeof location<"u"&&(O=location.href))}}function es(){return[...de(document.body).keys()].join(",")}function Sn(){try{let e=typeof navigator<"u"?navigator.connection:null;if(e&&(e.saveData===!0||typeof e.effectiveType=="string"&&/2g$/.test(e.effectiveType))||typeof matchMedia=="function"&&matchMedia("(prefers-reduced-data: reduce)").matches)return!0}catch{}return!1}function rs(){try{if(typeof matchMedia=="function")return matchMedia("(hover: hover) and (pointer: fine)").matches}catch{}return!0}function Pi(e){let t=e.getAttribute("rel");return t?t.toLowerCase().split(/\s+/).filter(Boolean):[]}function ht(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||wt.test(n.pathname)?null:t}function ss(e){if(e.hasAttribute("data-no-prefetch"))return!0;let t=Pi(e);return t.includes("external")||t.includes("no-prefetch")}function pt(e){if(ss(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 rs()?"intent":"viewport"}}function he(e){if(!q||typeof fetch!="function"||Sn())return;let t=Q(e);if(J.has(t)||Ne.has(t))return;let n=w.get(t);if(n&&dn()-n.at<ts)return;if(J.size>=ns){for(Ne.add(t),ce.push(e);ce.length>Oi;){let o=ce.shift();Ne.delete(Q(o))}return}J.add(t);let r={"x-webjs-router":"1","x-webjs-prefetch":"1"},s=es();s&&(r["x-webjs-have"]=s),fetch(e,{method:"GET",headers:r,credentials:"same-origin"}).then(async o=>{let i=o.headers.get("content-type")||"";if(!/^text\/html\b/i.test(i)||o.status>=400)return;let c=o.headers.get("x-webjs-build"),a=o.headers.get("x-webjs-src"),l=typeof document<"u"?document.querySelector('script[type="importmap"]'):null,u=l?l.getAttribute("data-webjs-build"):null,h=l?l.getAttribute("data-webjs-src"):null;(c&&u&&c!==u||a&&h&&a!==h)&&(v.clear(),w.clear());let f=o.redirected&&o.url?o.url:e,p=await o.text();Fi(t,{html:p,build:c,src:a,finalUrl:f,at:dn()})}).catch(()=>{}).finally(()=>{J.delete(t),Ii()})}function Ii(){for(;ce.length&&J.size<ns;){let e=ce.shift();Ne.delete(Q(e)),he(e)}}function Fi(e,t){for(w.has(e)&&w.delete(e),w.set(e,t);w.size>Ri;){let n=w.keys().next().value;w.delete(n)}typeof document<"u"&&document.dispatchEvent(new CustomEvent("webjs:prefetch",{detail:{url:t.finalUrl,key:e,from:"prefetch"}}))}function os(e){let t=Q(e),n=w.get(t);return!n||(w.delete(t),dn()-n.at>=ts)?null:n}function dn(){try{if(typeof performance<"u"&&typeof performance.now=="function")return performance.now()}catch{}return 0}function ue(e){if(!q)return;let t=as(e.target);if(!t)return;let n=pt(t);if(n==="none"||n==="render")return;let r=ht(t);if(r){if(e.type==="touchstart"){he(r);return}n==="intent"&&(je===t&&le||(St(),je=t,le=setTimeout(()=>{le=null,je=null,he(r)},Li)))}}function is(e){let t=as(e.target);t&&t===je&&St()}function St(){le&&(clearTimeout(le),le=null),je=null}function An(){for(let e of Re)clearTimeout(e);Re.clear(),ie=new WeakMap}function as(e){let t=e;for(;t;){if(t instanceof HTMLAnchorElement)return t;let n=t.nodeType===1?t:null;if(n){let s=n.closest&&n.closest("a");if(s instanceof HTMLAnchorElement)return s}let r=t.getRootNode?t.getRootNode():null;t=r&&r.host?r.host:null}return null}function hn(){if(typeof document>"u"||Sn())return;let e=typeof IntersectionObserver<"u";e&&($?($.disconnect(),An()):$=new IntersectionObserver(t=>{for(let n of t){let r=n.target;if(n.isIntersecting){if(ie.has(r))continue;let s=setTimeout(()=>{Re.delete(s),ie.delete(r),$.unobserve(r);let o=ht(r);o&&pt(r)==="viewport"&&he(o)},Mi);ie.set(r,s),Re.add(s)}else{let s=ie.get(r);s&&(clearTimeout(s),Re.delete(s),ie.delete(r))}}},{threshold:.5}));for(let t of document.querySelectorAll("a[href]")){let n=pt(t);if(n==="render"){let r=ht(t);r&&he(r)}else n==="viewport"&&e&&$.observe(t)}}function Bi(e){if(typeof document>"u"||!document.body)return!1;let t=de(document.body),n,r=-1;for(let[a,l]of t)a.length>r&&(r=a.length,n=l);if(!n)return!1;let s=n.start.parentNode;if(!s||n.start.parentNode!==n.end.parentNode)return!1;let o=document.createElement("div");o.setAttribute("role","alert"),o.setAttribute("data-webjs-nav-error","");let i=e?`This page could not be loaded. (status ${e})`:"This page could not be loaded.";o.textContent=i;let c=document.createRange();return c.setStartAfter(n.start),c.setEndBefore(n.end),c.deleteContents(),s.insertBefore(o,n.end),!0}function ln(e,t,n){let r=new CustomEvent("webjs:navigation-error",{bubbles:!0,cancelable:!0,detail:{url:e,status:t??null,error:n||null}});if(typeof document<"u")try{document.dispatchEvent(r)}catch{}r.defaultPrevented||Bi(t)||typeof location<"u"&&(location.href=e)}async function mt(e,t,n,r,s,o,i,c){s=s||"GET";let a=typeof c=="number"?c:S,l,u=null,h=null,f=null,p=null,m=!1,k=e,T=t?cs(t,a):null;try{try{let g=s==="GET"&&!o&&!t?os(e):null;if(g)l=g.html,h=g.build,f=g.src,k=g.finalUrl,p=200,m=!0;else{let b={"x-webjs-router":"1"},L=es();L&&(b["x-webjs-have"]=L),t&&(b["x-webjs-frame"]=t),o!=null&&s!=="GET"&&s!=="HEAD"&&(b.accept=Ir+", text/html");let H={method:s,headers:b,credentials:"same-origin"};i&&(H.signal=i),o!=null&&s!=="GET"&&s!=="HEAD"&&(H.body=o);let A=await fetch(e,H);p=A.status,m=A.ok;let Z=A.headers.get("content-type")||"",Oe=/^text\/html\b/i.test(Z);if(Z.toLowerCase().indexOf(Ir)===0){let Es=await A.text();return a===S&&(xe(r),on(Es)),{ok:m,status:p,aborted:!1}}if(A.redirected&&A.url&&(k=A.url),A.status===204||A.status===205)return a===S&&n&&history.pushState(null,"",k),{ok:m,status:p,aborted:!1};if(!Oe)return a===S&&(xe(r),ln(e,A.status,null)),{ok:!1,status:p,aborted:!1};h=A.headers.get("x-webjs-build"),f=A.headers.get("x-webjs-src");let Et=await gs(A);l=Et.shell,Et.streaming&&(u=Et)}}catch(g){return g&&g.name==="AbortError"?{ok:!1,status:null,aborted:!0}:a!==S?{ok:!1,status:null,aborted:!0}:(xe(r),ln(e,null,g instanceof Error?g:new Error(String(g))),{ok:!1,status:null,aborted:!1})}if(a!==S){if(u&&u.reader)try{u.reader.cancel()}catch{}return{ok:!1,status:p,aborted:!0}}let d=Dr(l);if(!d)return xe(r),ln(e,null,new Error("navigation response did not parse as HTML")),{ok:!1,status:p,aborted:!1};if(En(d,t,!1,k,h,f),n&&history.pushState(null,"",k),n){let g=new URL(k);if(g.hash){let b=document.getElementById(g.hash.slice(1));b?b.scrollIntoView():(Fr(),window.scrollTo({left:0,top:0,behavior:"instant"}))}else Fr(),window.scrollTo({left:0,top:0,behavior:"instant"})}return u&&(u.reader||u.rest)&&Ss(u.reader,u.dec,u.rest,()=>a===S),document.dispatchEvent(new CustomEvent("webjs:navigate",{detail:{url:k,frameId:t,from:"navigate"}})),{ok:m,status:p,aborted:!1}}finally{T&&ls(T,a)}}function cs(e,t){if(typeof document>"u")return null;let n=null;try{n=document.querySelector(`webjs-frame#${CSS.escape(e)}`)}catch{n=document.getElementById(e)}if(!n)return null;let r=bt.has(n);return bt.set(n,t),n.setAttribute("aria-busy","true"),r||n.dispatchEvent(new CustomEvent("webjs:frame-busy",{bubbles:!0,detail:{frameId:e,busy:!0}})),n}function ls(e,t){if(bt.get(e)!==t)return;bt.delete(e),e.setAttribute("aria-busy","false");let n=e.id||null;e.dispatchEvent(new CustomEvent("webjs:frame-busy",{bubbles:!0,detail:{frameId:n,busy:!1}}))}function us(e,t,n){let r=yt.has(e);return yt.set(e,t),e.setAttribute("aria-busy","true"),r||e.dispatchEvent(new CustomEvent("webjs:submit-start",{bubbles:!0,detail:{form:e,url:n}})),e}function fs(e,t,n,r){if(yt.get(e)!==t)return;yt.delete(e),e.setAttribute("aria-busy","false");let s=new CustomEvent("webjs:submit-end",{bubbles:!0,detail:{form:e,url:n,ok:!!r}});e.isConnected?e.dispatchEvent(s):typeof document<"u"?document.dispatchEvent(s):e.dispatchEvent(s)}function Br(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+=X(r);return n}function ds(){if(typeof document>"u")return!1;let e=document.querySelector('meta[name="view-transition"]');return e?(e.getAttribute("content")||"").trim().toLowerCase()==="same-origin":!1}function ut(e,t){let n=typeof document<"u"?document.startViewTransition:void 0;if(ds()&&typeof n=="function"){let r=n.call(document,e);r&&r.finished&&typeof r.finished.then=="function"?r.finished.then(()=>{t&&t()}).catch(()=>{}):t&&t();return}e(),t&&t()}function hs(e,t){if(!e||!t||typeof e.querySelectorAll!="function")return;let n=e.querySelectorAll("[data-webjs-permanent][id]");for(let r of n){let s=r.id;if(!s)continue;let o=null;try{o=t.querySelector(`#${CSS.escape(s)}`)}catch{o=null}if(!o||!r.hasAttribute||!r.hasAttribute("data-webjs-permanent"))continue;let i=o.parentNode;i&&o!==r&&i.replaceChild(r,o)}}function vn(e,t){let n=[];for(let r of e){if(r.nodeType!==1)continue;let s=r;if(s.hasAttribute&&s.hasAttribute("data-webjs-permanent")&&s.id&&n.push(s),typeof s.querySelectorAll=="function")for(let o of s.querySelectorAll("[data-webjs-permanent][id]"))n.push(o)}if(n.length)for(let r of n){let s=r.id;if(!s)continue;let o=Ui(t,s);if(!o||o===r)continue;let i=o.parentNode;if(i)i.replaceChild(r,o);else{let c=t.indexOf(o);c!==-1&&(t[c]=r)}}}function Ui(e,t){for(let n of e){if(n.nodeType!==1)continue;let r=n;if(r.id===t)return r;if(typeof r.querySelector=="function"){let s=null;try{s=r.querySelector(`#${CSS.escape(t)}`)}catch{s=null}if(s)return s}}return null}function Di(e){if(!(!e||!e.start))for(let t=e.start.nextSibling;t&&t!==e.end;t=t.nextSibling)t.nodeType===1&&ae(t)}function En(e,t,n,r,s,o){try{ct(e)}catch{}try{typeof sessionStorage<"u"&&(!r||t||n)&&sessionStorage.removeItem("webjs:importmap-reload")}catch{}if(r&&!t&&!n){let h=document.querySelector('script[type="importmap"]'),f=h?h.getAttribute("data-webjs-build"):null,p=!1;if(s&&f&&(p=s!==f),!p&&e.head&&e.head.children.length>0){let m=Br(document),k=Br(e);m!==k&&(p=!0)}if(p&&typeof location<"u"){v.clear(),w.clear();try{let m="webjs:importmap-reload";if(sessionStorage&&sessionStorage.getItem(m))sessionStorage.removeItem(m);else{sessionStorage&&sessionStorage.setItem(m,"1"),location.href=r;return}}catch{location.href=r;return}}else if(!p){let m=h?h.getAttribute("data-webjs-src"):null;o&&m&&o!==m&&(v.clear(),w.clear(),h&&h.setAttribute("data-webjs-src",o));try{typeof sessionStorage<"u"&&sessionStorage.removeItem("webjs:importmap-reload")}catch{}}}if(t){let h=document.querySelector(`webjs-frame#${CSS.escape(t)}`),f=e.querySelector(`webjs-frame#${CSS.escape(t)}`);if(h&&f){mn(e.head),ut(()=>{Vi(h,f),_t(h),ae(h),ft()},()=>ae(h)),Ur(e.body);return}let p=new CustomEvent("webjs:frame-missing",{bubbles:!0,cancelable:!0,detail:{frameId:t,url:r||(typeof location<"u"?location.href:null),document:e}});(h||document).dispatchEvent(p),p.defaultPrevented||console.warn(`[webjs] frame "${t}" was not in the navigation response, leaving it unchanged. Handle "webjs:frame-missing" (preventDefault) to override.`);return}let i=de(document.body),c=de(e.body),a=Qr(i,c);if(a){mn(e.head),ut(()=>{$i(i.get(a),c.get(a),e),ft()},()=>Di(i.get(a))),Ur(e.body);return}ys(e.head),hs(document.body,e.body);let l=[...e.body.childNodes];ut(()=>{document.body.replaceChildren(...l),_t(document.body),ae(document.body),ft()},()=>ae(document.body))}function ft(){let e=document.activeElement;!e||e===document.body||e===document.documentElement||typeof e.blur=="function"&&e.blur()}function $i(e,t,n){if(!e||!t)return;let r=e.start.parentNode;if(!r)return;let s=[];for(let i=e.start.nextSibling;i&&i!==e.end;i=i.nextSibling)s.push(i);let o=[];for(let i=t.start.nextSibling;i&&i!==t.end;i=i.nextSibling)o.push(document.importNode(i,!0));vn(s,o),qi(r,e.start,e.end,s,o);for(let i=e.start.nextSibling;i&&i!==e.end;i=i.nextSibling)i.nodeType===1&&(_t(i),ae(i))}function qi(e,t,n,r,s){let o=new Map;for(let a of r){if(a.nodeType!==1)continue;let l=fe(a);l&&o.set(l,a)}let i=n,c=[];for(let a of s){if(a.nodeType===1){let l=fe(a);if(l&&o.has(l)){let u=o.get(l);gt(u,a),c.push(u),o.delete(l);continue}}c.push(a)}for(let a of r)if(a.parentNode===e){if(a.nodeType===1&&c.includes(a))continue;e.removeChild(a)}for(let a of c)e.insertBefore(a,i)}function gt(e,t){if(e===t)return;if(e.tagName!==t.tagName){e.replaceWith(t);return}let n=new Set;for(let r of t.attributes)n.add(r.name),!pn.has(r.name)&&e.getAttribute(r.name)!==r.value&&e.setAttribute(r.name,r.value);for(let r of[...e.attributes])pn.has(r.name)||n.has(r.name)||e.removeAttribute(r.name);Hi(e)||Cn(e,t)}function Hi(e){return e[Symbol.for("webjs.instance")]!=null}function Cn(e,t){let n=[...e.childNodes],r=[...t.childNodes].map(c=>document.importNode(c,!0));vn(n,r);let s=new Map;for(let c of n){if(c.nodeType!==1)continue;let a=fe(c);a&&s.set(a,c)}let o=[];for(let c=0;c<r.length;c++){let a=r[c];if(a.nodeType===1){let l=fe(a);if(l&&s.has(l)){let h=s.get(l);gt(h,a),o.push(h),s.delete(l);continue}let u=n[c];if(u&&u.nodeType===1&&!fe(u)&&u.tagName===a.tagName){gt(u,a),o.push(u);continue}}else if(a.nodeType===3){let l=n[c];if(l&&l.nodeType===3){l.nodeValue!==a.nodeValue&&(l.nodeValue=a.nodeValue),o.push(l);continue}}else if(a.nodeType===8){let l=n[c];if(l&&l.nodeType===8){l.nodeValue!==a.nodeValue&&(l.nodeValue=a.nodeValue),o.push(l);continue}}o.push(a)}let i=new Set(o);for(let c of n)!i.has(c)&&c.parentNode===e&&e.removeChild(c);for(let c=0;c<o.length;c++){let a=o[c];(a.parentNode!==e||e.childNodes[c]!==a)&&e.insertBefore(a,e.childNodes[c]||null)}}function fe(e){let t=e.getAttribute("data-key");return t?`${e.tagName}:k:${t}`:e.id?`${e.tagName}:i:${e.id}`:null}function ps(){let e=de(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),s=[];for(let i=r.start.nextSibling;i&&i!==r.end;i=i.nextSibling)s.push(i);let o=document.createRange();return o.setStartAfter(r.start),o.setEndBefore(r.end),o.deleteContents(),r.start.parentNode.insertBefore(n.content.cloneNode(!0),r.end),{slot:r,oldChildren:s,token:S}}function xe(e){if(!e||e.token!==S)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 s of n)t.start.parentNode.insertBefore(s,t.end)}function Vi(e,t){Cn(e,t)}function ms(){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=ms();return n&&t.setAttribute("nonce",n),t.textContent=e.textContent,t}function bs(e){if(!e.hasAttribute("nonce"))return e.cloneNode(!0);let t=e.cloneNode(!0),n=ms();return n?t.setAttribute("nonce",n):t.removeAttribute("nonce"),t}function X(e){if(!e.hasAttribute("nonce"))return e.outerHTML;let t=e.cloneNode(!0);return t.removeAttribute("nonce"),t.outerHTML}function mn(e){let t=e.querySelector("title");t&&(document.title=t.textContent||"");let n=new Set;for(let r of document.head.children)n.add(X(r));for(let r of e.children)r.tagName==="SCRIPT"&&r.getAttribute("type")==="importmap"||r.tagName!=="BASE"&&r.tagName!=="TITLE"&&(n.has(X(r))||(r.tagName==="SCRIPT"?document.head.appendChild(Tn(r)):document.head.appendChild(bs(r))))}function ys(e){let t=document.head,n=e.querySelector("title");n&&(document.title=n.textContent||"");let r=new Set;for(let o of t.children)o.tagName==="SCRIPT"&&o.getAttribute("type")==="importmap"||o.tagName!=="BASE"&&r.add(X(o));let s=new Set;for(let o of e.children)o.tagName==="SCRIPT"&&o.getAttribute("type")==="importmap"||o.tagName!=="BASE"&&s.add(X(o));for(let o of[...t.children])o.tagName==="SCRIPT"&&o.getAttribute("type")==="importmap"||o.tagName!=="BASE"&&o.tagName!=="TITLE"&&(s.has(X(o))||o.remove());for(let o of e.children)o.tagName==="SCRIPT"&&o.getAttribute("type")==="importmap"||o.tagName!=="BASE"&&o.tagName!=="TITLE"&&(r.has(X(o))||(o.tagName==="SCRIPT"?t.appendChild(Tn(o)):t.appendChild(bs(o))))}function ae(e){typeof customElements>"u"||kn(e)}function kn(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&&kn(n.shadowRoot))}function Ur(e){for(let t of e.querySelectorAll("template[data-webjs-resolve]"))document.body.appendChild(t.cloneNode(!0))}async function gs(e){if(!e.body||typeof e.body.getReader!="function")return{shell:await e.text(),streaming:!1};let t=e.body.getReader(),n=new TextDecoder,r="",s="<template data-webjs-resolve",o="<!--wj-stream-shell-->",i=/<\/html\s*>/i;for(;;){let{value:c,done:a}=await t.read();c&&(r+=n.decode(c,{stream:!0})),a&&(r+=n.decode());let l=r.indexOf(o);if(l!==-1)return{shell:r.slice(0,l),streaming:!0,reader:a?null:t,dec:n,rest:r.slice(l+o.length)};let u=r.indexOf(s);if(u!==-1)return{shell:r.slice(0,u),streaming:!0,reader:a?null:t,dec:n,rest:r.slice(u)};if(a)return{shell:r,streaming:!1};let h=i.exec(r);if(h){let f=h.index+h[0].length;return{shell:r.slice(0,f),streaming:!0,reader:t,dec:n,rest:r.slice(f)}}}}function _s(e){let t=/<template\s+data-webjs-resolve="([^"]+)"\s*>/i.exec(e);if(!t)return null;let n=t[1],r=t.index+t[0].length,s=/<(\/?)template\b[^>]*>/gi;s.lastIndex=r;let o=1,i;for(;i=s.exec(e);)if(i[1]==="/"){if(o--,o===0)return{id:n,content:e.slice(r,i.index),rest:e.slice(i.index+i[0].length)}}else o++;return null}function ws(e,t){let n=document.getElementById(e);if(!n)return;let r=document.createElement("template");r.innerHTML=t;let s=[...r.content.childNodes];n.replaceWith(r.content);for(let o of s)o.nodeType===1&&kn(o)}async function Ss(e,t,n,r){let s=n,o=()=>{let i;for(;i=_s(s);){if(!r())return!1;ws(i.id,i.content),s=i.rest}return!0};if(!e){o();return}try{for(;;){if(!o()){try{await e.cancel()}catch{}return}let{value:i,done:c}=await e.read();if(i&&(s+=t.decode(i,{stream:!0})),c){s+=t.decode(),o();return}}}catch{}}function _t(e){for(let t of e.querySelectorAll("script"))t.replaceWith(Tn(t))}function zi(e){return w.get(Q(e))||null}function Wi(){return J.size}function Ki(){w.clear(),J.clear(),ce.length=0,Ne.clear(),St(),An()}function Gi(){return S}function Yi(){return++S}function Ji(){return O}function Xi(e){O=e}function Qi(){un.clear(),fn=!1}function Zi(e){return wt.test(e)}var Ir,q,x,S,cn,O,lt,wt,Jr,un,fn,xi,v,Ri,ts,ns,Oi,Li,Mi,w,J,ce,Ne,le,je,$,ie,Re,bt,yt,pn,it=V(()=>{rn();at();at();Or();an();Ir="text/vnd.webjs-stream.html";q=!1,x=null,S=0,cn=null;O=null,lt=null;wt=/\.(?: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;Jr="_top";un=new Set;fn=!1;xi=16,v=new Map;Ri=8,ts=3e4,ns=3,Oi=24,Li=100,Mi=250,w=new Map,J=new Set,ce=[],Ne=new Set,le=null,je=null,$=null,ie=new WeakMap,Re=new Set;bt=new WeakMap;yt=new WeakMap;pn=new Set(["value","checked","selected","indeterminate","disabled","open","popover"]);(typeof window>"u"||window.__WEBJS_CLIENT_ROUTER__!==!1)&&bn()});function Ts(e,...t){return{_$webjs:"template",strings:e,values:t}}function C(e){return!!e&&typeof e=="object"&&e._$webjs==="template"}var y="wjm-";function ks(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 Ct(e){return!!e&&typeof e=="object"&&e._$webjsCss===!0}function Tt(e,t){if(!(!t||!t.length))if("adoptedStyleSheets"in e&&typeof CSSStyleSheet<"u"){let n=t.map(r=>{let s=new CSSStyleSheet;return s.replaceSync(r.text),s});e.adoptedStyleSheets=n}else{let n=e,r=document.createElement("style");r.textContent=t.map(s=>s.text).join(`
|
|
2
2
|
`),n.appendChild(r)}}function xs(e){return!e||!e.length?"":`<style>${e.map(t=>t.text).join(`
|
|
3
|
-
`)}</style>`}var kt=Object.freeze({"@":"event",".":"prop","?":"bool"});function Ln(e){return Object.prototype.hasOwnProperty.call(kt,e)}function Ns(e){return String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function js(e){return String(e).replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<")}var Mn=Symbol.for("webjs.repeat");function Pn(e,t,n){return{[Mn]:!0,items:[...e],keyFn:t,templateFn:n}}function Le(e){return!!e&&typeof e=="object"&&e[Mn]===!0}function Rs(e){return{_$webjs:"unsafe-html",value:String(e??"")}}function xt(e){return!!e&&typeof e=="object"&&e._$webjs==="unsafe-html"}function Os(e){return{_$webjs:"live",value:e}}function Nt(e){return!!e&&typeof e=="object"&&e._$webjs==="live"}function Ls(e,t){return{_$webjs:"keyed",key:e,value:t}}function Me(e){return!!e&&typeof e=="object"&&e._$webjs==="keyed"}function Ms(e,t){return{_$webjs:"guard",deps:e,fn:t}}function Pe(e){return!!e&&typeof e=="object"&&e._$webjs==="guard"}function Ps(e){return{_$webjs:"template-content",template:e}}function jt(e){return!!e&&typeof e=="object"&&e._$webjs==="template-content"}function Is(e){return{_$webjs:"ref",target:e}}function Ie(e){return!!e&&typeof e=="object"&&e._$webjs==="ref"}function Fs(){return{value:void 0}}function Bs(e){return{_$webjs:"cache",value:e}}function Fe(e){return!!e&&typeof e=="object"&&e._$webjs==="cache"}function Us(...e){return{_$webjs:"until",args:e}}function Be(e){return!!e&&typeof e=="object"&&e._$webjs==="until"}function Ds(e,t){return{_$webjs:"async-append",iterable:e,mapper:t}}function Rt(e){return!!e&&typeof e=="object"&&e._$webjs==="async-append"}function $s(e,t){return{_$webjs:"async-replace",iterable:e,mapper:t}}function Ot(e){return!!e&&typeof e=="object"&&e._$webjs==="async-replace"}function qs(e){return{_$webjs:"watch",signal:e}}function Ue(e){return!!e&&typeof e=="object"&&e._$webjs==="watch"}var N=null,P=!1,te=0,ee=null,Lt=0,In=(e,t)=>Object.is(e,t),$e=()=>{},Fn=()=>!1;function Bn(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)Bn(r,e);if(e.watched)try{e.watched.call(e.wrapper)}catch(r){console.error(r)}}}function me(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)me(n,e);if(e.unwatched)try{e.unwatched.call(e.wrapper)}catch(n){console.error(n)}}}function Ut(e){if(P)throw new Error("Signal read during notification phase");if(N===null)return;let t=N,n=t.nextProducerIndex++;n<t.producers.length&&t.producers[n]!==e&&It(t)&&me(t.producers[n],t),t.producers[n]!==e&&(t.producers[n]=e,It(t)&&Bn(e,t)),t.producerLastReadVersions[n]=e.version}function It(e){return e.consumerIsAlwaysLive||e.liveConsumers&&e.liveConsumers.size>0}function Un(e){if(!e.liveConsumers||e.liveConsumers.size===0)return;let t=P;P=!0;try{for(let n of e.liveConsumers)n.dirty||Hs(n)}finally{P=t}}function Hs(e){e.dirty=!0,Un(e),e.consumerMarkedDirty.call(e.wrapper||e)}function qe(e){if(!(!e.dirty&&e.lastCleanEpoch===te)){if(!e.producerMustRecompute()&&!Vs(e)){e.dirty=!1,e.lastCleanEpoch=te;return}e.producerRecomputeValue(),e.dirty=!1,e.lastCleanEpoch=te}}function Vs(e){for(let t=0;t<e.producers.length;t++){let n=e.producers[t],r=e.producerLastReadVersions[t];if(r!==n.version||(qe(n),r!==n.version))return!0}return!1}function Ft(e){e&&(e.nextProducerIndex=0);let t=N;return N=e,t}function Bt(e,t){if(N=t,!!e){if(It(e))for(let n=e.nextProducerIndex;n<e.producers.length;n++)me(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=te,this.dirty=!1,this.producers=[],this.producerLastReadVersions=[],this.liveConsumers=void 0,this.consumerAllowSignalWrites=!0,this.consumerIsAlwaysLive=!1,this.producerMustRecompute=Fn,this.producerRecomputeValue=$e,this.consumerMarkedDirty=$e,this.wrapper=this,this.__isSignal=!0,this.__equal=n?.equals||In,this.watched=n?.[Dt],this.unwatched=n?.[$t]}get(){return Ut(this),this.__value}peek(){return this.__value}set(t){if(P)throw new Error("Signal write during notification phase");this.__equal.call(this,this.__value,t)||(this.__value=t,this.version++,te++,ee!==null?Dn(this):Un(this))}};function Dn(e){let t=P;P=!0;try{if(!e.liveConsumers)return;for(let n of e.liveConsumers)n.dirty||(n.dirty=!0,n.__isWatcher?ee.add(n):Dn(n))}finally{P=t}}var Mt=Symbol("unset"),Pt=Symbol("computing"),De=Symbol("errored"),be=class{constructor(t,n){this.__fn=t,this.__value=Mt,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||In,this.watched=n?.[Dt],this.unwatched=n?.[$t];let r=this;this.producerMustRecompute=function(){return r.__value===Mt||r.__value===Pt},this.producerRecomputeValue=function(){if(r.__value===Pt)throw new Error("Detected cycle in computations.");let s=r.__value;r.__value=Pt;let o=Ft(r),i,c=!1;try{i=r.__fn.call(r.wrapper)}catch(l){i=De,r.__error=l,c=!0}finally{Bt(r,o)}if(!c&&(s!==Mt&&s!==De)&&r.__equal.call(r.wrapper,s,i)){r.__value=s;return}r.__value=i,r.version++},this.consumerMarkedDirty=$e}get(){if(qe(this),Ut(this),this.__value===De)throw this.__error;return this.__value}peek(){if(qe(this),this.__value===De)throw this.__error;return this.__value}},Ve=class{constructor(t){this.__notify=t,this.version=0,this.lastCleanEpoch=te,this.dirty=!1,this.producers=[],this.producerLastReadVersions=[],this.nextProducerIndex=0,this.liveConsumers=void 0,this.consumerAllowSignalWrites=!1,this.consumerIsAlwaysLive=!0,this.producerMustRecompute=Fn,this.producerRecomputeValue=$e,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=Ft(this);try{for(let r of t)Ut(r),r.__isComputed&&qe(r)}finally{Bt(this,n)}this.dirty=!1}unwatch(...t){for(let n=this.producers.length-1;n>=0;n--)t.includes(this.producers[n])&&(me(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=Ft(this),r;try{r=t()}finally{Bt(this,n)}return this.dirty=!1,r}dispose(){for(let t of this.producers)me(t,this);this.producers=[],this.producerLastReadVersions=[],this.__notify=null}},Dt=Symbol("watched"),$t=Symbol("unwatched");function zs(e){let t=N;N=null;try{return e()}finally{N=t}}function Ws(e){return e.producers.slice()}function Ks(e){return e.liveConsumers?[...e.liveConsumers]:[]}function Gs(e){return!!e.liveConsumers&&e.liveConsumers.size>0}function Ys(e){return e.producers.length>0}function Js(){return N&&N.__isComputed?N:null}function Xs(e){Lt++,ee===null&&(ee=new Set);try{e()}finally{if(Lt--,Lt===0){let t=ee;ee=null;for(let n of t)n.__fire()}}}var ye={State:He,Computed:be,subtle:{Watcher:Ve,untrack:zs,introspectSources:Ws,introspectSinks:Ks,hasSinks:Gs,hasSources:Ys,currentComputed:Js,watched:Dt,unwatched:$t}};function Qs(e,t){return new He(e,t)}function Zs(e,t){return new be(e,t)}function eo(e){return!!(e&&typeof e=="object"&&e.__isSignal===!0)}function to(e){let t=!1,n=!1,r=new be(e),s=new Ve(()=>{t||n||(t=!0,queueMicrotask(()=>{if(t=!1,!n){try{r.get()}catch(o){console.error(o)}s.watch()}}))});s.watch(r);try{r.get()}catch(o){console.error(o)}return()=>{n||(n=!0,s.dispose())}}var no=`${y}s`,ro=`${y}e`;function $n(e){if(!e||e.nodeType!==8)return!1;let t=e.nodeValue;return t===no||t===ro}function so(e){for(let t of e.addedNodes)if($n(t))return!0;for(let t of e.removedNodes)if($n(t))return!0;return!1}function Wn(){return typeof HTMLElement<"u"&&typeof HTMLSlotElement<"u"}var _e=Wn(),z=Symbol("webjs.slot.state"),I="data-webjs-light",W="data-projection",we="actual",Kn="fallback",Ge=Symbol("webjs.slot.fallbackFrag"),oo=64,ge=null,qt=null,ze=null,qn=!1;function io(){qn||(_e=Wn(),_e&&(ge=HTMLSlotElement.prototype.assignedNodes,qt=HTMLSlotElement.prototype.assignedElements,ze=Object.getOwnPropertyDescriptor(Element.prototype,"assignedSlot"),HTMLSlotElement.prototype.assignedNodes=function(t){return this.hasAttribute(I)&&!Hn(this)?Ht(this,t):ge?ge.call(this,t):[]},HTMLSlotElement.prototype.assignedElements=function(t){return this.hasAttribute(I)&&!Hn(this)?Ht(this,t).filter(n=>n.nodeType===1):qt?qt.call(this,t):[]},Object.defineProperty(Element.prototype,"assignedSlot",{configurable:!0,enumerable:!0,get:function(){let t=ze&&ze.get?ze.get.call(this):null;return t||ao(this)}}),qn=!0))}io();function Hn(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 Ht(e,t){if(e.getAttribute(W)===Kn)return[];let n=Array.from(e.childNodes);return!t||!t.flatten?n:Vt(n,new Set,0)}function Vt(e,t,n){if(n>=oo)return e.slice();let r=[];for(let s of e)if(s.nodeType===1&&s.tagName==="SLOT"){let o=s;if(t.has(o))continue;if(t.add(o),o.hasAttribute(I)){let i=Ht(o,{flatten:!1});if(i.length>0)for(let c of Vt(i,t,n+1))r.push(c);else for(let c of Vt(Array.from(o.childNodes),t,n+1))r.push(c)}else if(ge){let i=ge.call(o,{flatten:!0});for(let c of i)r.push(c)}else r.push(s)}else r.push(s);return r}function ao(e){let t=e.parentElement;for(;t;){if(t.tagName==="SLOT"&&t.hasAttribute(I))return t.getAttribute(W)===we?t:null;t=t.parentElement}return null}function F(e){let t=e,n=t[z];return n||(n={assignedByName:new Map,pendingByName:new Map,lastSnapshot:new WeakMap,nameObservers:new WeakMap,childObserver:null,scheduled:!1,ownedSlots:new Set},t[z]=n),n}function zt(e){return!!e[z]}function Gn(e){let t=F(e);for(;e.firstChild;){let n=e.firstChild,r=We(n);Ke(t.assignedByName,r,n),e.removeChild(n)}}function Yn(e){let t=F(e),n=e.querySelectorAll(`slot[${I}]`);for(let r of n){let s=r;if(s.getAttribute(W)!==we)continue;let o=s.getAttribute("name")||null;if(!t.assignedByName.has(o)){let i=Array.from(s.childNodes);t.assignedByName.set(o,i),t.lastSnapshot.set(s,i.slice())}}}function We(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 Jn(e,t,n){if(!n.length)return;let r=e.get(t);r||(r=[],e.set(t,r));for(let s of n)r.push(s)}function Xn(e){if(!_e)return;let t=F(e);t.childObserver||(t.childObserver=new MutationObserver(n=>{let r=!1;for(let s of n)if(!so(s)){if(s.type==="childList"){for(let o of s.addedNodes)o.parentElement===e&&(Ke(t.assignedByName,We(o),o),r=!0);for(let o of s.removedNodes)e.contains(o)||Vn(t,o)&&(r=!0)}else if(s.type==="attributes"&&s.attributeName==="slot"){let o=s.target;(Vn(t,o)||o.parentElement===e)&&(Ke(t.assignedByName,We(o),o),r=!0)}}r&&Ye(e)}),t.childObserver.observe(e,{childList:!0,attributes:!0,attributeFilter:["slot"],subtree:!0}))}function Qn(e){let t=e[z];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 Vn(e,t){for(let[n,r]of e.assignedByName){let s=r.indexOf(t);if(s!==-1)return r.splice(s,1),r.length===0&&e.assignedByName.delete(n),!0}return!1}function Ye(e){let t=F(e);t.scheduled||(t.scheduled=!0,queueMicrotask(()=>{t.scheduled=!1,co(e)}))}function co(e){if(!_e)return;let t=e[z];if(!t)return;let n=Array.from(e.querySelectorAll(`slot[${I}]`)),r=new Set(n);for(let i of t.ownedSlots)r.has(i)||lo(t,i);for(let i of r)t.ownedSlots.has(i)||ho(e,i);t.ownedSlots=r;let s=new Map;for(let i of n){let c=i.getAttribute("name")||null,a=s.get(c);a||(a=[],s.set(c,a)),a.push(i)}for(let i of s.keys()){let c=t.pendingByName.get(i);if(c&&c.length){let a=t.assignedByName.get(i)||[],l=[];for(let u of c)l.push(u);for(let u of a)l.indexOf(u)===-1&&l.push(u);t.assignedByName.set(i,l),t.pendingByName.delete(i)}}let o=[];for(let[i,c]of s){let a=t.assignedByName.get(i)||[];for(let l=0;l<c.length;l++){let u=c[l];l===0&&a.length>0?uo(t,u,a)&&o.push(u):fo(t,u)&&o.push(u)}}for(let i of o)po(i)}function lo(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 s=t.getAttribute("name")||null;Jn(e.pendingByName,s,r)}e.lastSnapshot.delete(t)}function uo(e,t,n){let r=t.getAttribute(W)!==we,s=e.lastSnapshot.get(t)||[];if(!r&&mo(s,n))return!1;let i=t[Ge];if(r&&i)for(;t.firstChild;)i.appendChild(t.firstChild);else for(;t.firstChild;)t.removeChild(t.firstChild);for(let c of n)t.appendChild(c);return t.setAttribute(W,we),e.lastSnapshot.set(t,n.slice()),!0}function fo(e,t){let n=t.getAttribute(W)===we;if(t.setAttribute(W,Kn),!n)return zn(t),!1;for(e.lastSnapshot.delete(t);t.firstChild;)t.removeChild(t.firstChild);return zn(t),!0}function zn(e){let t=e[Ge];!t||t.childNodes.length===0||e.appendChild(t)}function ho(e,t){if(!_e)return;let n=F(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 Zn(e,t){if(!zt(e))return;let n=F(e),r=n.lastSnapshot.get(t);if(!r||r.length===0)return;let s=t.getAttribute("name")||null;for(let i of r)i.parentNode===t&&t.removeChild(i);Jn(n.pendingByName,s,r),n.lastSnapshot.delete(t);let o=n.nameObservers.get(t);o&&(o.disconnect(),n.nameObservers.delete(t)),n.ownedSlots.delete(t)}function po(e){e.dispatchEvent(new Event("slotchange",{bubbles:!0,composed:!1}))}function mo(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 er=new WeakMap,Wt=Symbol.for("webjs.instance");function se(e,t){let n=t,r=n[Wt];if(C(e)){let s=e;if(r&&r.strings===s.strings){ne(r,s.values);return}r&&tr(r,t);let o=t.firstChild;o&&o.nodeType===8&&o.data==="webjs-hydrate"&&o.remove();let i=go(s,t);n[Wt]=i;return}if(r&&tr(r,t),n[Wt]=null,t.replaceChildren(),!(e==null||e===!1||e===!0)){if(Array.isArray(e)){for(let s of e){let o=document.createTextNode(String(s??""));t.appendChild(o)}return}t.appendChild(document.createTextNode(String(e)))}}function Xe(e){let{strings:t}=e,n=er.get(t);if(n)return n;let r=[],s="",o="text",i="",c=0,a="",l=0,u=null,h="",f="";for(let m=0;m<t.length;m++){let k=t[m];for(let T=0;T<k.length;T++){let d=k[T];switch(o){case"text":s+=d,d==="<"&&(o="tag-open");break;case"tag-open":s+=d,d==="!"?o="bang-1":d==="/"?(o="tag-name",h=""):/[a-zA-Z]/.test(d)?(o="tag-name",h=d.toLowerCase()):o="text";break;case"bang-1":s+=d,o=d==="-"?"bang-dash":"tag-name";break;case"bang-dash":s+=d,d==="-"?(o="comment",l=0):o="tag-name";break;case"comment":s+=d,d==="-"?l+=1:(d===">"&&l>=2&&(o="text"),l=0);break;case"tag-name":s+=d,d===">"?(o=h==="script"||h==="style"?"rawtext":"text",o==="rawtext"&&(f="")):/\s/.test(d)?o="in-tag":h+=d.toLowerCase();break;case"in-tag":s+=d,d===">"?(o=h==="script"||h==="style"?"rawtext":"text",o==="rawtext"&&(f="")):!/\s/.test(d)&&d!=="/"&&(o="attr-name",i=d,c=s.length-1);break;case"rawtext":s+=d,f=(f+d.toLowerCase()).slice(-9),(f.endsWith("<\/script>")||f.endsWith("</style>"))&&(o="text",f="",h="");break;case"attr-name":d==="="?(o="after-eq",s+=d):/\s/.test(d)?(o="in-tag",i="",s+=d):d===">"?(o="text",i="",s+=d):(i+=d,s+=d);break;case"after-eq":d==='"'||d==="'"?(o="attr-quoted",a=d,s+=d):/\s/.test(d)?(o="in-tag",i="",s+=d):d===">"?(o="text",i="",s+=d):(o="attr-unquoted",s+=d);break;case"attr-unquoted":/\s/.test(d)?(o="in-tag",i="",s+=d):(d===">"&&(o="text",i=""),s+=d);break;case"attr-quoted":s+=d,d===a&&(o="in-tag",i="");break;case"skip-attr":if(d===a){if(u){let g=u.firstPartIdx,b=[];for(let E=g;E<r.length;E++)(r[E].kind==="noop"||r[E].kind==="attr-mixed")&&b.push(E);let L=[],H=t[b[0]],A=H.lastIndexOf(a);L.push(A>=0?H.slice(A+1):H);for(let E=1;E<b.length;E++)L.push(t[b[E]]);let Z=t[b[b.length-1]+1],Oe=Z.indexOf(a);L.push(Oe>=0?Z.slice(0,Oe):Z),r[g]={kind:"attr-mixed",path:[],name:u.name,statics:L,group:b};for(let E=1;E<b.length;E++)r[b[E]]={kind:"noop",path:[],mixedAnchor:g};u=null}o="in-tag",i=""}break}}if(m<t.length-1){let T=r.length;if(o==="comment"){l=0,r.push({kind:"noop",path:[]});continue}if(o==="rawtext"){f="",r.push({kind:"noop",path:[]});continue}if(o==="text")s+=`<!--${y}${T}-->`,r.push({kind:"child",path:[]});else if(o==="in-tag"){let d=`data-${y}${T}`;s+=`${d}=""`,r.push({kind:"element",path:[]})}else if(o==="after-eq"){let d=i[0],g=i.slice(1);if(Ln(d)){s=s.slice(0,c);let b=kt[d],L=`data-${y}${T}`;s+=`${L}=""`,r.push({kind:b,path:[],name:g})}else{s=s.slice(0,c);let b=`data-${y}${T}`;s+=`${b}=""`,r.push({kind:"attr",path:[],name:i})}o="in-tag",i=""}else if(o==="attr-quoted"||o==="attr-unquoted"){s=s.slice(0,c);let d=`data-${y}${T}`;s+=`${d}=""`,u={name:i,firstPartIdx:T},r.push({kind:"noop",path:[]}),o="skip-attr"}else o==="skip-attr"&&r.push({kind:"noop",path:[]})}}let p=document.createElement("template");return p.innerHTML=s,bo(p.content,r),yo(p.content,r),n={templateEl:p,parts:r},er.set(t,n),n}function bo(e,t){let n=e.querySelectorAll("slot");for(let r of n){r.setAttribute(I,"");let s=t.length;r.setAttribute(`data-${y}${s}`,""),t.push({kind:"slot",path:[]})}}function yo(e,t){let n=[];function r(s){for(let o=0;o<s.childNodes.length;o++){let i=s.childNodes[o];if(n.push(o),i.nodeType===8){let c=i.data;if(c.startsWith(y)){let a=Number(c.slice(y.length));t[a]&&t[a].kind==="child"&&(t[a].path=n.slice())}}else if(i.nodeType===1){let c=i,a=[];for(let l of c.attributes)if(l.name.startsWith(`data-${y}`)){let u=Number(l.name.slice(`data-${y}`.length));t[u]&&t[u].kind!=="child"&&(t[u].path=n.slice()),a.push(l.name)}for(let l of a)c.removeAttribute(l);r(i)}n.pop()}}r(e)}function go(e,t){let{templateEl:n,parts:r}=Xe(e),s=n.content.cloneNode(!0),o=document.createComment(`${y}s`),i=document.createComment(`${y}e`),c=r.map(l=>Qe(l,s)),a=[];for(let l=0;l<e.values.length;l++)U(c[l],e.values[l],void 0,e.values),a.push(e.values[l]);t.replaceChildren(o,...s.childNodes,i);for(let l of c)l.kind==="slot"&&U(l,void 0,void 0,[]);return{strings:e.strings,bound:c,lastValues:a,startNode:o,endNode:i}}function Qe(e,t){if(e.kind==="noop")return{kind:"noop",mixedAnchor:e.mixedAnchor};let n=t;for(let s of e.path)n=n.childNodes[s];if(e.kind==="child")return{kind:"child",marker:n};let r=n;if(e.kind==="event"){let s={kind:"event",el:r,name:e.name||"",handler:null,dispatcher(o){s.handler?.(o)}};return r.addEventListener(s.name,s.dispatcher),s}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 ne(e,t){for(let n=0;n<t.length;n++){let r=t[n];if(Object.is(r,e.lastValues[n]))continue;let s=e.bound[n],o=s.mixedAnchor;s.kind==="noop"&&o!=null?U(e.bound[o],t[o],e.lastValues[o],t):U(s,r,e.lastValues[n],t),e.lastValues[n]=r}}function tr(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=Kt(n.slotEl);r&&Zn(r,n.slotEl)}}t.replaceChildren()}function U(e,t,n,r){if(Nt(t)){let s=t.value;if(e.kind==="prop"&&e.el[e.name]===s||e.kind==="attr"&&e.el.getAttribute(e.name)===String(s)||e.kind==="bool"&&e.el.hasAttribute(e.name)===!!s)return;t=s}switch(e.kind){case"child":So(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":wo(e,t);break;case"attr-mixed":{let s=e,o=s.statics[0];for(let i=0;i<s.group.length;i++)o+=String((r?r[s.group[i]]:t)??""),o+=s.statics[i+1]||"";e.el.setAttribute(e.name,o);break}case"slot":{if(e.applied)break;let s=e.slotEl,o=()=>{e.applied=!0;let c=Kt(s);if(!c||_o(s))return;let a=document.createDocumentFragment();for(;s.firstChild;)a.appendChild(s.firstChild);s[Ge]=a,Ye(c)};Kt(s)?o():queueMicrotask(o);break}case"noop":break}}function Kt(e){let t=e.parentElement;for(;t;){if(t[z])return t;t=t.parentElement}return null}function _o(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 wo(e,t){let n=e,r=Ie(t)?t.target:void 0,s=n.__refTarget,o=r!==s;if(o&&s)if(typeof s=="function")try{s(void 0)}catch{}else typeof s=="object"&&(s.value=void 0);if(o||n.__refElement!==e.el){if(n.__refTarget=r,r)if(typeof r=="function"){if(!o&&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 So(e,t){return jo(e,t),j(e,t)}function j(e,t){let n=e.marker;if(xt(t)){B(e);let s=String(t.value??""),o=document.createElement("template");o.innerHTML=s;let i=[...o.content.childNodes],c=document.createDocumentFragment();for(let a of i)c.appendChild(a);n.parentNode?.insertBefore(c,n),e.child=i;return}if(Me(t)){let s=t,o=e.__keyedKey;o!==void 0&&!Object.is(o,s.key)&&B(e),e.__keyedKey=s.key,j(e,s.value);return}if(Pe(t)){let s=t,o=e.__guardDeps,i=s.deps;if(o!==void 0&&(Array.isArray(o)&&Array.isArray(i)?No(o,i):Object.is(o,i)))return;e.__guardDeps=Array.isArray(i)?i.slice():i,j(e,s.fn());return}if(jt(t)){B(e);let s=t.template;if(s&&s.content){let o=s.content.cloneNode(!0),i=[...o.childNodes];n.parentNode?.insertBefore(o,n),e.child=i}return}if(Ie(t))return;if(Fe(t))return Ro(e,t.value);if(Be(t))return Oo(e,t.args);if(Ue(t))return Lo(e,t.signal);if(Rt(t))return Mo(e,t);if(Ot(t))return Po(e,t);if(Le(t)){if(e.child&&e.child.kind==="repeat"){Eo(e,t);return}B(e);let s={kind:"repeat",map:new Map};e.child=s,vo(n,s,t);return}if(Array.isArray(t)){if(e.child&&e.child.kind==="array"){ko(e,t);return}B(e);let s={kind:"array",items:[]};e.child=s,To(n,s,t);return}if(e.child){let s=e.child;if(s.kind==="repeat")nr(s),e.child=void 0;else if(s.kind==="array")sr(s),e.child=void 0;else if(s.kind==="async-stream")cr(s),e.child=void 0;else if("strings"in e.child){let o=e.child;if(C(t)&&o.strings===t.strings){ne(o,t.values);return}re(o.startNode,o.endNode),e.child=void 0}else{for(let o of e.child)o.parentNode&&o.parentNode.removeChild(o);e.child=void 0}}if(t==null||t===!1||t===!0)return;if(C(t)){let s=t,{templateEl:o,parts:i}=Xe(s),c=o.content.cloneNode(!0),a=document.createComment(`${y}s`),l=document.createComment(`${y}e`),u=i.map(p=>Qe(p,c)),h=[];for(let p=0;p<s.values.length;p++)U(u[p],s.values[p],void 0,s.values),h.push(s.values[p]);let f=[a,...c.childNodes,l];n.parentNode?.insertBefore(Ao(f),n);for(let p of u)p.kind==="slot"&&U(p,void 0,void 0,[]);e.child={strings:s.strings,bound:u,lastValues:h,startNode:a,endNode:l};return}let r=document.createTextNode(String(t));n.parentNode?.insertBefore(r,n),e.child=[r]}function Ao(e){let t=document.createDocumentFragment();for(let n of e)t.appendChild(n);return t}function re(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 Yt(e){let{templateEl:t,parts:n}=Xe(e),r=t.content.cloneNode(!0),s=document.createComment(`${y}s`),o=document.createComment(`${y}e`),i=n.map(l=>Qe(l,r)),c=[];for(let l=0;l<e.values.length;l++)U(i[l],e.values[l],void 0,e.values),c.push(e.values[l]);let a=document.createDocumentFragment();for(a.appendChild(s);r.firstChild;)a.appendChild(r.firstChild);return a.appendChild(o),{inst:{strings:e.strings,bound:i,lastValues:c,startNode:s,endNode:o},frag:a}}function Se(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 vo(e,t,n){let{items:r,keyFn:s,templateFn:o}=n,i=e.parentNode;if(!i)return;let c=document.createDocumentFragment();for(let a=0;a<r.length;a++){let l=s(r[a],a),u=o(r[a],a);if(!C(u))continue;let{inst:h,frag:f}=Yt(u);t.map.set(l,h),c.appendChild(f)}i.insertBefore(c,e)}function Eo(e,t){let n=e.marker,r=n.parentNode;if(!r)return;let s=e.child,{items:o,keyFn:i,templateFn:c}=t,a=new Map;for(let l=0;l<o.length;l++){let u=i(o[l],l),h=c(o[l],l);if(!C(h))continue;let f=s.map.get(u);if(f&&f.strings===h.strings)ne(f,h.values),Gt(f.startNode,f.endNode,r,n),a.set(u,f),s.map.delete(u);else{f&&(Se(f),re(f.startNode,f.endNode),s.map.delete(u));let{inst:p,frag:m}=Yt(h);r.insertBefore(m,n),a.set(u,p)}}for(let l of s.map.values())Se(l),re(l.startNode,l.endNode);s.map=a}function nr(e){for(let t of e.map.values())Se(t),re(t.startNode,t.endNode);e.map.clear()}function Co(e){return e.type==="tpl"?e.inst.startNode:e.type==="text"?e.node:null}function Je(e){e.type==="tpl"?(Se(e.inst),re(e.inst.startNode,e.inst.endNode)):e.type==="text"&&e.node.parentNode?.removeChild(e.node)}function rr(e){if(C(e)){let{inst:t,frag:n}=Yt(e);return{item:{type:"tpl",inst:t},frag:n}}if(e!=null&&e!==!1&&e!==!0){let t=document.createTextNode(String(e));return{item:{type:"text",node:t},frag:t}}return{item:{type:"empty"},frag:null}}function To(e,t,n){let r=e.parentNode;if(!r)return;let s=document.createDocumentFragment(),o=[];for(let i of n){let{item:c,frag:a}=rr(i);a&&s.appendChild(a),o.push(c)}r.insertBefore(s,e),t.items=o}function ko(e,t){let n=e.marker,r=n.parentNode;if(!r)return;let s=e.child,o=s.items,i=[];for(let c=0;c<t.length;c++){let a=t[c],l=o[c];if(C(a)){let f=a;if(l&&l.type==="tpl"&&l.inst.strings===f.strings){ne(l.inst,f.values),i.push(l);continue}}else if(a!=null&&a!==!1&&a!==!0){if(l&&l.type==="text"){let f=String(a);l.node.data!==f&&(l.node.data=f),i.push(l);continue}}else{l&&Je(l),i.push({type:"empty"});continue}let{item:u,frag:h}=rr(a);h&&r.insertBefore(h,xo(o,c,n)),l&&Je(l),i.push(u)}for(let c=t.length;c<o.length;c++)Je(o[c]);s.items=i}function xo(e,t,n){for(let r=t;r<e.length;r++){let s=Co(e[r]);if(s&&s.parentNode)return s}return n}function sr(e){for(let t of e.items)Je(t);e.items=[]}function Gt(e,t,n,r){if(t.nextSibling===r&&e.parentNode===n)return;let s=document.createDocumentFragment(),o=e;for(;o;){let i=o.nextSibling;if(s.appendChild(o),o===t)break;o=i}n.insertBefore(s,r)}function No(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 B(e){let t=e;if(t.__untilState&&(t.__untilState.aborted=!0,t.__untilState=void 0),t.__watchSub&&or(t),!e.child)return;let n=e.child;if(n.kind==="repeat")nr(n);else if(n.kind==="array")sr(n);else if(n.kind==="async-stream")cr(n);else if("strings"in n){let r=e.child;Se(r),re(r.startNode,r.endNode)}else for(let r of e.child)r.parentNode&&r.parentNode.removeChild(r);e.child=void 0}function jo(e,t){let n=e;n.__untilState&&!Be(t)&&(n.__untilState.aborted=!0,n.__untilState=void 0),n.__guardDeps!==void 0&&!Pe(t)&&(n.__guardDeps=void 0),n.__cacheMap&&!Fe(t)&&(n.__cacheMap=void 0),n.__keyedKey!==void 0&&!Me(t)&&(n.__keyedKey=void 0),n.__watchSub&&!Ue(t)&&or(n)}function Ro(e,t){let n=e.marker,r=e,s=r.__cacheMap;s||(s=new Map,r.__cacheMap=s);let o=e.child;if(o&&"strings"in o){let c=o;if(C(t)&&c.strings===t.strings){ne(c,t.values);return}let a=document.createDocumentFragment();Gt(c.startNode,c.endNode,a,null),s.set(c.strings,{inst:c,holder:a}),e.child=void 0}if(C(t)){let c=t,a=s.get(c.strings);if(a){s.delete(c.strings),e.child&&B(e),Gt(a.inst.startNode,a.inst.endNode,n.parentNode,n),ne(a.inst,c.values),e.child=a.inst;return}}j(e,t)}function Oo(e,t){let n=e,r=n.__untilState,s=n.__untilArgs,o=(f,p)=>!!(Object.is(f,p)||C(f)&&C(p)&&f.strings===p.strings),c=s&&s.length===t.length&&s.every((f,p)=>o(f,t[p]))&&r?r.highestResolved:1/0;r&&(r.aborted=!0),n.__untilArgs=t.slice();let a={aborted:!1,highestResolved:c};n.__untilState=a;let l=-1,u;for(let f=0;f<t.length;f++){let p=t[f];if(!p||typeof p.then!="function"){l=f,u=p;break}}l!==-1&&l<=a.highestResolved?(j(e,u),a.highestResolved=l):l===-1&&!n.__untilEverRendered&&j(e,""),n.__untilEverRendered=!0;let h=Math.min(l===-1?t.length:l,a.highestResolved);for(let f=0;f<h;f++){let p=t[f];!p||typeof p.then!="function"||Promise.resolve(p).then(m=>{a.aborted||f>=a.highestResolved||(a.highestResolved=f,j(e,m))},()=>{})}}function Lo(e,t){let n=e;if(n.__watchSig===t&&n.__watchSub){let o;n.__watchSub.observe(()=>{o=t.get()}),j(e,o);return}n.__watchSub&&(n.__watchSub.dispose(),n.__watchSub=void 0),n.__watchSig=t;let r=new ye.subtle.Watcher(()=>{queueMicrotask(()=>{if(n.__watchSub!==r)return;let o;r.observe(()=>{o=t.get()}),j(e,o)})});n.__watchSub=r;let s;r.observe(()=>{s=t.get()}),j(e,s)}function or(e){e.__watchSub&&(e.__watchSub.dispose(),e.__watchSub=void 0,e.__watchSig=void 0)}function Mo(e,t){let n=e.child;if(n&&n.kind==="async-stream"&&n.mode==="append"&&n.iterable===t.iterable)return;B(e);let r=t.iterable[Symbol.asyncIterator](),s={kind:"async-stream",mode:"append",aborted:!1,iterable:t.iterable,iterator:r,nodes:[]};e.child=s,ir(s,e,t)}function Po(e,t){let n=e.child;if(n&&n.kind==="async-stream"&&n.mode==="replace"&&n.iterable===t.iterable)return;B(e);let r=t.iterable[Symbol.asyncIterator](),s={kind:"async-stream",mode:"replace",aborted:!1,iterable:t.iterable,iterator:r,nodes:[]};e.child=s,ir(s,e,t)}async function ir(e,t,n){let r=t.marker,s=0;try{for(;!e.aborted;){let o=await e.iterator.next();if(e.aborted||o.done)break;let i=n.mapper?n.mapper(o.value,s):o.value,c=ar(i);if(e.mode==="replace"){for(let l of e.nodes)l.parentNode&&l.parentNode.removeChild(l);e.nodes=[]}let a=document.createDocumentFragment();for(let l of c)a.appendChild(l);r.parentNode?.insertBefore(a,r),e.nodes.push(...c),s++}}catch(o){typeof console<"u"&&console.error("[webjs] asyncStream error:",o)}}function ar(e){if(e==null||e===!1||e===!0)return[];if(C(e)){let t=e,{templateEl:n,parts:r}=Xe(t),s=n.content.cloneNode(!0),o=r.map(i=>Qe(i,s));for(let i=0;i<t.values.length;i++)U(o[i],t.values[i],void 0,t.values);return[...s.childNodes]}if(Array.isArray(e)){let t=[];for(let n of e)t.push(...ar(n));return t}return[document.createTextNode(String(e))]}function cr(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 lr=null;function Ze(e){lr=e||null}function Io(){return lr||void 0}var ur=Symbol.for("webjs:registry"),fr=Symbol.for("webjs:classToTag"),et=globalThis,R=et[ur]||(et[ur]=new Map),dr=et[fr]||(et[fr]=new WeakMap),tt=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=R.get(e);r?(r.cls=t,r.lazy=n):R.set(e,{cls:t,moduleUrl:null,lazy:n,tag:e}),dr.set(t,e)}if(tt){let e=customElements.define.bind(customElements);customElements.define=function(t,n,r){customElements.get(t)||e(t,n,r),Jt(t,n)}}if(!tt){let e=globalThis;e.customElements||(e.customElements={define(t,n){Jt(t,n)},get(t){return R.get(t)?.cls},upgrade(){},whenDefined(t){let n=R.get(t);return Promise.resolve(n?.cls)}})}function Xt(e,t){tt?customElements.define(e,t):Jt(e,t)}function Fo(e,t){if(tt)return;let n=R.get(e);if(n){n.moduleUrl=t;return}R.set(e,{cls:null,moduleUrl:t,lazy:!1,tag:e})}function Bo(e){return R.get(e)?.cls}function Uo(e){return R.get(e)?.moduleUrl||null}function Do(e){return R.get(e)?.lazy===!0}function nt(e){return dr.get(e)}function $o(){return[...R.keys()]}Ee();var _r=typeof window<"u"&&typeof HTMLElement<"u";function ei(e,t){return e!==t}function ti(){return{states:new Set,shadowRoot:null,form:null,labels:[],role:"",willValidate:!0,validity:{},validationMessage:"",setFormValue(){},setValidity(){},checkValidity(){return!0},reportValidity(){return!0}}}var rt=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(),s=this.__ssrAttrs.has(r);return(n===void 0?!s: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 s=r.length-1;s>=0;s--)if(r[s]&&r[s].__ssrTag===n)return r[s];return null}get dataset(){if(this.__dataset)return this.__dataset;let t=this,n=r=>"data-"+String(r).replace(/[A-Z]/g,s=>"-"+s.toLowerCase());return this.__dataset=new Proxy({},{get(r,s){if(typeof s!="string")return;let o=t.getAttribute(n(s));return o===null?void 0:o},set(r,s,o){return typeof s=="string"&&t.setAttribute(n(s),o),!0},has(r,s){return typeof s=="string"&&t.hasAttribute(n(s))},deleteProperty(r,s){return typeof s=="string"&&t.removeAttribute(n(s)),!0},ownKeys(){return t.getAttributeNames().filter(r=>r.startsWith("data-")).map(r=>r.slice(5).replace(/-([a-z])/g,(s,o)=>o.toUpperCase()))},getOwnPropertyDescriptor(r,s){if(typeof s=="string"&&t.hasAttribute(n(s)))return{enumerable:!0,configurable:!0,value:t.getAttribute(n(s))}}}),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=ti(),this.__internals}},ni=["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 ni){let t="aria-"+e.slice(4).toLowerCase();Object.defineProperty(rt.prototype,e,{configurable:!0,get(){return this.getAttribute(t)},set(n){n==null?this.removeAttribute(t):this.setAttribute(t,String(n))}})}var ri=_r?HTMLElement:rt,wr=Symbol("webjs.factoryProps"),yr=new WeakSet,oe=class e extends ri{static shadow=!1;static hydrate=void 0;static properties={};static styles=null;static register(t){Xt(t,this)}static get observedAttributes(){let t=this.properties||{};return Object.keys(t).filter(n=>!(typeof t[n]=="object"&&t[n].state)).map(n=>typeof t[n]=="object"&&t[n].attribute||Zt(n))}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._assertFactoryProperties(),this._initializeProperties()}_assertFactoryProperties(){let t=this.constructor;if(yr.has(t))return;let n=t;for(;n&&n!==e;){if(Object.hasOwn(n,"properties")&&!Object.hasOwn(n,wr)){let r=n.name||"a component";throw new Error(`${r}: \`static properties\` is no longer supported. Declare reactive properties via the factory instead: \`class ${r} extends WebComponent({ count: Number })\`. Use the \`prop()\` helper for options (\`prop(Number, { reflect: true })\`) and set defaults in the constructor after \`super()\`. See https://docs.webjs.dev/docs/components.`)}n=Object.getPrototypeOf(n)}yr.add(t)}_initializeProperties(){let n=this.constructor.properties;if(!(!n||typeof n!="object")){this.__propValues={};for(let[r,s]of Object.entries(n)){let o=typeof s=="object"?s:{type:s},i=this[r];Object.defineProperty(this,r,{configurable:!0,enumerable:!0,get:()=>this.__propValues[r],set:c=>{let a=this.__propValues[r];(o.hasChanged||ei)(c,a)&&(this.__propValues[r]=c,o.reflect&&!o.state&&this._connected&&this._reflectAttribute(r,c,o),this.requestUpdate(r,a))}}),i!==void 0?this.__propValues[r]=i:o.default!==void 0&&(this.__propValues[r]=typeof o.default=="function"?o.default():o.default)}}}_reflectAttribute(t,n,r){let s=r.attribute||Zt(t);if(!this.__reflectingAttribute){this.__reflectingAttribute=!0;try{if(r.converter&&r.converter.toAttribute){let o=r.converter.toAttribute(n,r.type);o==null?this.removeAttribute(s):this.setAttribute(s,o)}else r.type===Boolean?n?this.setAttribute(s,""):this.removeAttribute(s):n==null?this.removeAttribute(s):r.type===Object||r.type===Array?this.setAttribute(s,JSON.stringify(n)):this.setAttribute(s,String(n))}finally{this.__reflectingAttribute=!1}}}connectedCallback(){if(!_r)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 s=n[r].name;s.startsWith("data-webjs-prop-")&&t.push(s)}for(let r of t){let s=this.getAttribute(r);if(this.removeAttribute(r),s==null)continue;let o=gr(r.slice(16));try{this[o]=G(s)}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,s=Array.isArray(r)?r:Ct(r)?[r]:[];if(s.length){if(n){let o=this.shadowRoot.querySelector("style");o&&o.remove()}Tt(this._renderRoot,s)}}else this._renderRoot=this,t.styles&&console.warn(`[webjs] <${nt(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().`),zt(this)||(this.__isHydrating()?(F(this),Yn(this)):Gn(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&&Qn(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.properties||{},i,c;for(let[u,h]of Object.entries(o))if(((typeof h=="object"?h:{type:h}).attribute||Zt(u))===t){i=u,c=h;break}if(c===void 0&&(i=gr(t),c=o[i]||o[t]),c===void 0)return;let a=typeof c=="object"?c:{type:c},l;if(a.converter&&a.converter.fromAttribute)l=a.converter.fromAttribute(r,a.type);else if(a.type===Number)l=r==null?null:Number(r);else if(a.type===Boolean)l=r!=null&&r!=="false";else if(a.type===Object||a.type===Array)try{l=r==null?null:JSON.parse(r)}catch{l=r}else l=r;this[i]!==l&&(this[i]=l,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,r=null;try{if(this.shouldUpdate(t)){this.willUpdate(t);for(let s of this.__controllers)s.hostUpdate&&s.hostUpdate();this.__renderToken=(this.__renderToken||0)+1,this.__renderAbort&&this.__renderAbort.abort(),this.__renderAbort=typeof AbortController<"u"?new AbortController:null,Ze(this.__renderAbort?this.__renderAbort.signal:null);try{let s=this.update(t);s&&typeof s.then=="function"&&(r=s)}catch(s){this._handleRenderError(s)}finally{Ze(null)}if(!r){for(let s of this.__controllers)s.hostUpdated&&s.hostUpdated();n=!0}}}catch(s){console.error("[webjs] lifecycle hook threw during update phase:",s)}finally{this._isUpdating=!1,(n||r)&&(this._changedProperties=new Map)}if(r){let s=this.__renderToken;this.__pendingAsyncCommits=(this.__pendingAsyncCommits||0)+1,r.then(()=>{if(this.__pendingAsyncCommits--,s===this.__renderToken){for(let o of this.__controllers)o.hostUpdated&&o.hostUpdated();this._postCommit(t)}});return}n?this._postCommit(t):this.__pendingAsyncCommits||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 ye.subtle.Watcher(()=>{this._connected&&this.requestUpdate()}));let n;if(this.__signalWatcher.observe(()=>{n=this.render()}),n&&typeof n.then=="function")return this._commitAsync(n);se(n,this._renderRoot)}_commitAsync(t){let n=this.__renderToken;if(this.__firstRendered&&this._overridesRenderFallback())try{let r=this.renderFallback();r!==void 0&&se(r,this._renderRoot)}catch(r){console.error("[webjs] renderFallback() threw:",r)}return Promise.resolve(t).then(r=>{n===this.__renderToken&&se(r,this._renderRoot)},r=>{n===this.__renderToken&&this._handleRenderError(r instanceof Error?r:new Error(String(r)))})}_overridesRenderFallback(){return this.renderFallback!==st.prototype.renderFallback}_handleRenderError(t){console.error(`[webjs] render error in <${nt(this.constructor)||this.tagName?.toLowerCase()}>:`,t);try{let n=this.renderError(t);n!==void 0&&se(n,this._renderRoot)}catch(n){console.error("[webjs] renderError() also threw:",n)}}_postCommit(t){try{this.__firstRendered||(this.__firstRendered=!0,this.firstUpdated(t)),this.updated(t)}catch(n){console.error("[webjs] lifecycle hook threw during post-commit phase:",n)}finally{this._resolveUpdate()}}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){}renderFallback(){}};function Zt(e){return e.replace(/([A-Z])/g,"-$1").toLowerCase()}function gr(e){return e.replace(/-([a-z])/g,(t,n)=>n.toUpperCase())}function st(e){return new.target?Reflect.construct(oe,arguments,new.target):class extends oe{static properties=e;static[wr]=!0}}Object.setPrototypeOf(st,oe);st.prototype=oe.prototype;function si(e,t={}){return e&&typeof e=="object"&&!("call"in e)&&(t=e,e=void 0),{...e?{type:e}:{},...t}}var Sr=Symbol.for("webjs.notFound"),Ar=Symbol.for("webjs.redirect"),vr=Symbol.for("webjs.forbidden"),Er=Symbol.for("webjs.unauthorized");function oi(){let e=new Error("webjs: notFound()");throw e.__webjs=Sr,e}function ii(){let e=new Error("webjs: forbidden()");throw e.__webjs=vr,e}function ai(){let e=new Error("webjs: unauthorized()");throw e.__webjs=Er,e}function ci(e,t){let n=typeof t=="object"&&t!==null?t.status:t,r=new Error(`webjs: redirect(${e})`);throw r.__webjs=Ar,r.url=e,r.status=typeof n=="number"?n:void 0,r}function li(e){return!!e&&e.__webjs===Sr}function ui(e){return!!e&&e.__webjs===Ar}function fi(e){return!!e&&e.__webjs===vr}function di(e){return!!e&&e.__webjs===Er}var Cr=null;function hi(){if(!Cr)return"";try{return Cr()||""}catch{return""}}var Za=Symbol.for("webjs.suspense");function pi(e){return{_$webjsSuspense:!0,fallback:e.fallback,children:e.children}}function mi(e){return!!e&&typeof e=="object"&&e._$webjsSuspense===!0}function bi(e,t={}){let n=t.reconnect!==!1,r=0,s=!1,o=null,i=[];function c(){s||(o=new WebSocket(yi(e),t.protocols),o.onopen=a=>{for(r=0;i.length&&o&&o.readyState===WebSocket.OPEN;)o.send(i.shift());t.onOpen?.(a)},o.onmessage=a=>{let l=a.data;if(typeof l=="string")try{l=JSON.parse(l)}catch{}t.onMessage?.(l,a)},o.onerror=a=>{t.onError?.(a)},o.onclose=a=>{if(t.onClose?.(a),!s&&n){let l=Math.min(1e3*2**r++,3e4);setTimeout(c,l)}})}return c(),{send(a){let l=typeof a=="string"||a instanceof ArrayBuffer||ArrayBuffer.isView(a)?a:JSON.stringify(a);o&&o.readyState===WebSocket.OPEN?o.send(l):i.push(l)},close(a,l){s=!0;try{o?.close(a,l)}catch{}},get socket(){return o},get readyState(){return o?.readyState??3}}}function yi(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}`}Ee();var en="application/vnd.webjs+json";async function gi(e,t={}){let n=new Headers(t.headers||{});n.has("accept")||n.set("accept",en);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 Qt(r),n.has("content-type")||n.set("content-type",en));let s=await fetch(e,{...t,headers:n,body:r}),o=s.headers.get("content-type")||"",i=await s.text(),c=o.includes(en)?i?G(i):null:o.includes("application/json")?i?JSON.parse(i):null:i;if(!s.ok){let a=c&&c.error||`richFetch ${e} -> ${s.status}`,l=new Error(a);throw l.status=s.status,l.body=c,l}return c}Ee();it();it();rn();at();var xn=class{constructor(t,n){this.host=t,this.options=n,this.updates=[],this._nextId=0}get value(){let t=this.options.source();if(!this.options.update)return this.updates.length>0?this.updates[this.updates.length-1].payload:t;for(let n of this.updates)t=this.options.update(t,n.payload);return t}add(t,n){let r=`opt-${++this._nextId}`;this.updates.push({id:r,payload:t}),this.host?.requestUpdate?.();let s=()=>{let o=this.updates.findIndex(i=>i.id===r);o!==-1&&(this.updates.splice(o,1),this.host?.requestUpdate?.())};return n&&typeof n.then=="function"&&(typeof n.finally=="function"?n.finally(()=>s()).catch(()=>{}):n.then(()=>s(),()=>s())),s}};async function Zi(e,t,n){let r=e.get();e.set(t);let s;try{s=await n()}catch(o){throw e.set(r),o}return s&&s.success===!1&&e.set(r),s}function ea(e,t,n){return e&&typeof e.get=="function"&&typeof e.set=="function"?Zi(e,t,n):new xn(e,t)}an();var At=0,As=new Map,pe=new Map,ta=1e3;function na(e){if(!(!Array.isArray(e)||!e.length)){At+=1;for(let t of e)t&&As.set(t,At)}}function ra(){return At}function sa(e,t,n){if(!(!Array.isArray(t)||!t.length)&&(pe.delete(e),pe.set(e,{tags:t.slice(),since:typeof n=="number"?n:At}),pe.size>ta)){let r=pe.keys().next().value;r!==void 0&&pe.delete(r)}}function oa(e){let t=pe.get(e);if(!t)return!1;for(let n of t.tags)if((As.get(n)||0)>t.since)return!0;return!1}function ia(e){return e?e.split(",").map(t=>t.trim()).filter(Boolean):[]}var aa="application/vnd.webjs+stream",ca=1,la=2,ua=3,vs=new Uint8Array(0);function fa(e,t){let n=t||vs,r=n.length,s=new Uint8Array(5+r);return s[0]=e&255,s[1]=r>>>24&255,s[2]=r>>>16&255,s[3]=r>>>8&255,s[4]=r&255,r&&s.set(n,5),s}function da(){let e=vs;return{push(t){if(t&&t.length){let r=new Uint8Array(e.length+t.length);r.set(e,0),r.set(t,e.length),e=r}let n=[];for(;e.length>=5;){let r=e[0],s=(e[1]<<24|e[2]<<16|e[3]<<8|e[4])>>>0;if(e.length<5+s)break;let o=e.slice(5,5+s);n.push({type:r,payload:o}),e=e.slice(5+s)}return n}}}var ha=Symbol.for("webjs.context");function pa(e){return{__context__:ha,name:e}}var vt=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=s=>{let o=s;if(o.context===this._context)if(s.stopPropagation(),o.subscribe){let i={callback:o.callback},c=()=>{this._subscriptions.delete(i)};this._subscriptions.add(i),o.callback(this._value,c)}else o.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()}},jn=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 vt(this._context,(n,r)=>{let s=this._value;this._value=n,r&&(this._unsubscribe=r),!Object.is(s,n)&&typeof this._host.requestUpdate=="function"&&this._host.requestUpdate()},this._subscribe);this._host.dispatchEvent(t)}};function ma(){return typeof window<"u"}var M={INITIAL:0,PENDING:1,COMPLETE:2,ERROR:3},Rn=class{constructor(t,{task:n,args:r,autoRun:s=!0}){this._host=t,this._taskFn=n,this._argsFn=r||(()=>[]),this._autoRun=s,this._status=M.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=M.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=M.COMPLETE,this._error=void 0}catch(r){if(t.signal.aborted)return;this._error=r,this._status=M.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 M.INITIAL:return t.initial?.();case M.PENDING:return t.pending?.();case M.COMPLETE:return t.complete?.(this._value);case M.ERROR:return t.error?.(this._error);default:return}}hostUpdate(){if(!this._autoRun||!ma())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{jn as ContextConsumer,Nn as ContextProvider,vt as ContextRequestEvent,ca as FRAME_CHUNK,la as FRAME_END,ua as FRAME_ERROR,y as MARKER,Pr as SEED_MISS,aa as STREAM_CONTENT_TYPE,ye as Signal,pi as Suspense,Rn as Task,M as TaskStatus,st as WebComponent,nn as WebjsFrame,sn as WebjsStream,Io as activeActionSignal,Tt as adoptStyles,$o as allTags,Ds as asyncAppend,$s as asyncReplace,Xs as batch,Bs as cache,Zs as computed,bi as connectWS,oa as consumeStale,pa as createContext,da as createFrameDecoder,Fs as createRef,hi as cspNonce,ks as css,mr as deserialize,$r as disableClientRouter,to as effect,bn as enableClientRouter,fa as encodeFrame,js as escapeAttr,Ns as escapeText,ra as fetchMark,ii as forbidden,Ms as guard,Ts as html,Rt as isAsyncAppend,Ot as isAsyncReplace,Ct as isCSS,Fe as isCache,fi as isForbidden,Pe as isGuard,Me as isKeyed,Do as isLazy,Nt as isLive,li as isNotFound,ui as isRedirect,Ie as isRef,Le as isRepeat,eo as isSignal,mi as isSuspense,C as isTemplate,jt as isTemplateContent,di as isUnauthorized,xt as isUnsafeHTML,Be as isUntil,Ue as isWatch,Ls as keyed,Os as live,Bo as lookup,Uo as lookupModuleUrl,na as markStale,qr as navigate,oi as notFound,ea as optimistic,G as parse,ia as parseTagHeader,Fo as primeModuleUrl,si as prop,ci as redirect,Is as ref,Xt as register,sa as registerKeyTags,se as render,on as renderStream,Pn as repeat,Hr as revalidate,gi as richFetch,ct as scanSeeds,pr as serialize,Ze as setActiveActionSignal,Qs as signal,Qt as stringify,xs as stylesToString,nt as tagOf,Ci as takeSeed,Ps as templateContent,ai as unauthorized,Rs as unsafeHTML,Us as until,qs as watch};
|
|
3
|
+
`)}</style>`}var kt=Object.freeze({"@":"event",".":"prop","?":"bool"});function Ln(e){return Object.prototype.hasOwnProperty.call(kt,e)}function Ns(e){return String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function js(e){return String(e).replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<")}var Mn=Symbol.for("webjs.repeat");function Pn(e,t,n){return{[Mn]:!0,items:[...e],keyFn:t,templateFn:n}}function Le(e){return!!e&&typeof e=="object"&&e[Mn]===!0}function Rs(e){return{_$webjs:"unsafe-html",value:String(e??"")}}function xt(e){return!!e&&typeof e=="object"&&e._$webjs==="unsafe-html"}function Os(e){return{_$webjs:"live",value:e}}function Nt(e){return!!e&&typeof e=="object"&&e._$webjs==="live"}function Ls(e,t){return{_$webjs:"keyed",key:e,value:t}}function Me(e){return!!e&&typeof e=="object"&&e._$webjs==="keyed"}function Ms(e,t){return{_$webjs:"guard",deps:e,fn:t}}function Pe(e){return!!e&&typeof e=="object"&&e._$webjs==="guard"}function Ps(e){return{_$webjs:"template-content",template:e}}function jt(e){return!!e&&typeof e=="object"&&e._$webjs==="template-content"}function Is(e){return{_$webjs:"ref",target:e}}function Ie(e){return!!e&&typeof e=="object"&&e._$webjs==="ref"}function Fs(){return{value:void 0}}function Bs(e){return{_$webjs:"cache",value:e}}function Fe(e){return!!e&&typeof e=="object"&&e._$webjs==="cache"}function Us(...e){return{_$webjs:"until",args:e}}function Be(e){return!!e&&typeof e=="object"&&e._$webjs==="until"}function Ds(e,t){return{_$webjs:"async-append",iterable:e,mapper:t}}function Rt(e){return!!e&&typeof e=="object"&&e._$webjs==="async-append"}function $s(e,t){return{_$webjs:"async-replace",iterable:e,mapper:t}}function Ot(e){return!!e&&typeof e=="object"&&e._$webjs==="async-replace"}function qs(e){return{_$webjs:"watch",signal:e}}function Ue(e){return!!e&&typeof e=="object"&&e._$webjs==="watch"}var N=null,P=!1,te=0,ee=null,Lt=0,In=(e,t)=>Object.is(e,t),$e=()=>{},Fn=()=>!1;function Bn(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)Bn(r,e);if(e.watched)try{e.watched.call(e.wrapper)}catch(r){console.error(r)}}}function me(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)me(n,e);if(e.unwatched)try{e.unwatched.call(e.wrapper)}catch(n){console.error(n)}}}function Ut(e){if(P)throw new Error("Signal read during notification phase");if(N===null)return;let t=N,n=t.nextProducerIndex++;n<t.producers.length&&t.producers[n]!==e&&It(t)&&me(t.producers[n],t),t.producers[n]!==e&&(t.producers[n]=e,It(t)&&Bn(e,t)),t.producerLastReadVersions[n]=e.version}function It(e){return e.consumerIsAlwaysLive||e.liveConsumers&&e.liveConsumers.size>0}function Un(e){if(!e.liveConsumers||e.liveConsumers.size===0)return;let t=P;P=!0;try{for(let n of e.liveConsumers)n.dirty||Hs(n)}finally{P=t}}function Hs(e){e.dirty=!0,Un(e),e.consumerMarkedDirty.call(e.wrapper||e)}function qe(e){if(!(!e.dirty&&e.lastCleanEpoch===te)){if(!e.producerMustRecompute()&&!Vs(e)){e.dirty=!1,e.lastCleanEpoch=te;return}e.producerRecomputeValue(),e.dirty=!1,e.lastCleanEpoch=te}}function Vs(e){for(let t=0;t<e.producers.length;t++){let n=e.producers[t],r=e.producerLastReadVersions[t];if(r!==n.version||(qe(n),r!==n.version))return!0}return!1}function Ft(e){e&&(e.nextProducerIndex=0);let t=N;return N=e,t}function Bt(e,t){if(N=t,!!e){if(It(e))for(let n=e.nextProducerIndex;n<e.producers.length;n++)me(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=te,this.dirty=!1,this.producers=[],this.producerLastReadVersions=[],this.liveConsumers=void 0,this.consumerAllowSignalWrites=!0,this.consumerIsAlwaysLive=!1,this.producerMustRecompute=Fn,this.producerRecomputeValue=$e,this.consumerMarkedDirty=$e,this.wrapper=this,this.__isSignal=!0,this.__equal=n?.equals||In,this.watched=n?.[Dt],this.unwatched=n?.[$t]}get(){return Ut(this),this.__value}peek(){return this.__value}set(t){if(P)throw new Error("Signal write during notification phase");this.__equal.call(this,this.__value,t)||(this.__value=t,this.version++,te++,ee!==null?Dn(this):Un(this))}};function Dn(e){let t=P;P=!0;try{if(!e.liveConsumers)return;for(let n of e.liveConsumers)n.dirty||(n.dirty=!0,n.__isWatcher?ee.add(n):Dn(n))}finally{P=t}}var Mt=Symbol("unset"),Pt=Symbol("computing"),De=Symbol("errored"),be=class{constructor(t,n){this.__fn=t,this.__value=Mt,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||In,this.watched=n?.[Dt],this.unwatched=n?.[$t];let r=this;this.producerMustRecompute=function(){return r.__value===Mt||r.__value===Pt},this.producerRecomputeValue=function(){if(r.__value===Pt)throw new Error("Detected cycle in computations.");let s=r.__value;r.__value=Pt;let o=Ft(r),i,c=!1;try{i=r.__fn.call(r.wrapper)}catch(l){i=De,r.__error=l,c=!0}finally{Bt(r,o)}if(!c&&(s!==Mt&&s!==De)&&r.__equal.call(r.wrapper,s,i)){r.__value=s;return}r.__value=i,r.version++},this.consumerMarkedDirty=$e}get(){if(qe(this),Ut(this),this.__value===De)throw this.__error;return this.__value}peek(){if(qe(this),this.__value===De)throw this.__error;return this.__value}},Ve=class{constructor(t){this.__notify=t,this.version=0,this.lastCleanEpoch=te,this.dirty=!1,this.producers=[],this.producerLastReadVersions=[],this.nextProducerIndex=0,this.liveConsumers=void 0,this.consumerAllowSignalWrites=!1,this.consumerIsAlwaysLive=!0,this.producerMustRecompute=Fn,this.producerRecomputeValue=$e,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=Ft(this);try{for(let r of t)Ut(r),r.__isComputed&&qe(r)}finally{Bt(this,n)}this.dirty=!1}unwatch(...t){for(let n=this.producers.length-1;n>=0;n--)t.includes(this.producers[n])&&(me(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=Ft(this),r;try{r=t()}finally{Bt(this,n)}return this.dirty=!1,r}dispose(){for(let t of this.producers)me(t,this);this.producers=[],this.producerLastReadVersions=[],this.__notify=null}},Dt=Symbol("watched"),$t=Symbol("unwatched");function zs(e){let t=N;N=null;try{return e()}finally{N=t}}function Ws(e){return e.producers.slice()}function Ks(e){return e.liveConsumers?[...e.liveConsumers]:[]}function Gs(e){return!!e.liveConsumers&&e.liveConsumers.size>0}function Ys(e){return e.producers.length>0}function Js(){return N&&N.__isComputed?N:null}function Xs(e){Lt++,ee===null&&(ee=new Set);try{e()}finally{if(Lt--,Lt===0){let t=ee;ee=null;for(let n of t)n.__fire()}}}var ye={State:He,Computed:be,subtle:{Watcher:Ve,untrack:zs,introspectSources:Ws,introspectSinks:Ks,hasSinks:Gs,hasSources:Ys,currentComputed:Js,watched:Dt,unwatched:$t}};function Qs(e,t){return new He(e,t)}function Zs(e,t){return new be(e,t)}function eo(e){return!!(e&&typeof e=="object"&&e.__isSignal===!0)}function to(e){let t=!1,n=!1,r=new be(e),s=new Ve(()=>{t||n||(t=!0,queueMicrotask(()=>{if(t=!1,!n){try{r.get()}catch(o){console.error(o)}s.watch()}}))});s.watch(r);try{r.get()}catch(o){console.error(o)}return()=>{n||(n=!0,s.dispose())}}var no=`${y}s`,ro=`${y}e`;function $n(e){if(!e||e.nodeType!==8)return!1;let t=e.nodeValue;return t===no||t===ro}function so(e){for(let t of e.addedNodes)if($n(t))return!0;for(let t of e.removedNodes)if($n(t))return!0;return!1}function Wn(){return typeof HTMLElement<"u"&&typeof HTMLSlotElement<"u"}var _e=Wn(),z=Symbol("webjs.slot.state"),I="data-webjs-light",W="data-projection",we="actual",Kn="fallback",Ge=Symbol("webjs.slot.fallbackFrag"),oo=64,ge=null,qt=null,ze=null,qn=!1;function io(){qn||(_e=Wn(),_e&&(ge=HTMLSlotElement.prototype.assignedNodes,qt=HTMLSlotElement.prototype.assignedElements,ze=Object.getOwnPropertyDescriptor(Element.prototype,"assignedSlot"),HTMLSlotElement.prototype.assignedNodes=function(t){return this.hasAttribute(I)&&!Hn(this)?Ht(this,t):ge?ge.call(this,t):[]},HTMLSlotElement.prototype.assignedElements=function(t){return this.hasAttribute(I)&&!Hn(this)?Ht(this,t).filter(n=>n.nodeType===1):qt?qt.call(this,t):[]},Object.defineProperty(Element.prototype,"assignedSlot",{configurable:!0,enumerable:!0,get:function(){let t=ze&&ze.get?ze.get.call(this):null;return t||ao(this)}}),qn=!0))}io();function Hn(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 Ht(e,t){if(e.getAttribute(W)===Kn)return[];let n=Array.from(e.childNodes);return!t||!t.flatten?n:Vt(n,new Set,0)}function Vt(e,t,n){if(n>=oo)return e.slice();let r=[];for(let s of e)if(s.nodeType===1&&s.tagName==="SLOT"){let o=s;if(t.has(o))continue;if(t.add(o),o.hasAttribute(I)){let i=Ht(o,{flatten:!1});if(i.length>0)for(let c of Vt(i,t,n+1))r.push(c);else for(let c of Vt(Array.from(o.childNodes),t,n+1))r.push(c)}else if(ge){let i=ge.call(o,{flatten:!0});for(let c of i)r.push(c)}else r.push(s)}else r.push(s);return r}function ao(e){let t=e.parentElement;for(;t;){if(t.tagName==="SLOT"&&t.hasAttribute(I))return t.getAttribute(W)===we?t:null;t=t.parentElement}return null}function F(e){let t=e,n=t[z];return n||(n={assignedByName:new Map,pendingByName:new Map,lastSnapshot:new WeakMap,nameObservers:new WeakMap,childObserver:null,scheduled:!1,ownedSlots:new Set},t[z]=n),n}function zt(e){return!!e[z]}function Gn(e){let t=F(e);for(;e.firstChild;){let n=e.firstChild,r=We(n);Ke(t.assignedByName,r,n),e.removeChild(n)}}function Yn(e){let t=F(e),n=e.querySelectorAll(`slot[${I}]`);for(let r of n){let s=r;if(s.getAttribute(W)!==we)continue;let o=s.getAttribute("name")||null;if(!t.assignedByName.has(o)){let i=Array.from(s.childNodes);t.assignedByName.set(o,i),t.lastSnapshot.set(s,i.slice())}}}function We(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 Jn(e,t,n){if(!n.length)return;let r=e.get(t);r||(r=[],e.set(t,r));for(let s of n)r.push(s)}function Xn(e){if(!_e)return;let t=F(e);t.childObserver||(t.childObserver=new MutationObserver(n=>{let r=!1;for(let s of n)if(!so(s)){if(s.type==="childList"){for(let o of s.addedNodes)o.parentElement===e&&(Ke(t.assignedByName,We(o),o),r=!0);for(let o of s.removedNodes)e.contains(o)||Vn(t,o)&&(r=!0)}else if(s.type==="attributes"&&s.attributeName==="slot"){let o=s.target;(Vn(t,o)||o.parentElement===e)&&(Ke(t.assignedByName,We(o),o),r=!0)}}r&&Ye(e)}),t.childObserver.observe(e,{childList:!0,attributes:!0,attributeFilter:["slot"],subtree:!0}))}function Qn(e){let t=e[z];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 Vn(e,t){for(let[n,r]of e.assignedByName){let s=r.indexOf(t);if(s!==-1)return r.splice(s,1),r.length===0&&e.assignedByName.delete(n),!0}return!1}function Ye(e){let t=F(e);t.scheduled||(t.scheduled=!0,queueMicrotask(()=>{t.scheduled=!1,co(e)}))}function co(e){if(!_e)return;let t=e[z];if(!t)return;let n=Array.from(e.querySelectorAll(`slot[${I}]`)),r=new Set(n);for(let i of t.ownedSlots)r.has(i)||lo(t,i);for(let i of r)t.ownedSlots.has(i)||ho(e,i);t.ownedSlots=r;let s=new Map;for(let i of n){let c=i.getAttribute("name")||null,a=s.get(c);a||(a=[],s.set(c,a)),a.push(i)}for(let i of s.keys()){let c=t.pendingByName.get(i);if(c&&c.length){let a=t.assignedByName.get(i)||[],l=[];for(let u of c)l.push(u);for(let u of a)l.indexOf(u)===-1&&l.push(u);t.assignedByName.set(i,l),t.pendingByName.delete(i)}}let o=[];for(let[i,c]of s){let a=t.assignedByName.get(i)||[];for(let l=0;l<c.length;l++){let u=c[l];l===0&&a.length>0?uo(t,u,a)&&o.push(u):fo(t,u)&&o.push(u)}}for(let i of o)po(i)}function lo(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 s=t.getAttribute("name")||null;Jn(e.pendingByName,s,r)}e.lastSnapshot.delete(t)}function uo(e,t,n){let r=t.getAttribute(W)!==we,s=e.lastSnapshot.get(t)||[];if(!r&&mo(s,n))return!1;let i=t[Ge];if(r&&i)for(;t.firstChild;)i.appendChild(t.firstChild);else for(;t.firstChild;)t.removeChild(t.firstChild);for(let c of n)t.appendChild(c);return t.setAttribute(W,we),e.lastSnapshot.set(t,n.slice()),!0}function fo(e,t){let n=t.getAttribute(W)===we;if(t.setAttribute(W,Kn),!n)return zn(t),!1;for(e.lastSnapshot.delete(t);t.firstChild;)t.removeChild(t.firstChild);return zn(t),!0}function zn(e){let t=e[Ge];!t||t.childNodes.length===0||e.appendChild(t)}function ho(e,t){if(!_e)return;let n=F(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 Zn(e,t){if(!zt(e))return;let n=F(e),r=n.lastSnapshot.get(t);if(!r||r.length===0)return;let s=t.getAttribute("name")||null;for(let i of r)i.parentNode===t&&t.removeChild(i);Jn(n.pendingByName,s,r),n.lastSnapshot.delete(t);let o=n.nameObservers.get(t);o&&(o.disconnect(),n.nameObservers.delete(t)),n.ownedSlots.delete(t)}function po(e){e.dispatchEvent(new Event("slotchange",{bubbles:!0,composed:!1}))}function mo(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 er=new WeakMap,Wt=Symbol.for("webjs.instance");function se(e,t){let n=t,r=n[Wt];if(C(e)){let s=e;if(r&&r.strings===s.strings){ne(r,s.values);return}r&&tr(r,t);let o=t.firstChild;o&&o.nodeType===8&&o.data==="webjs-hydrate"&&o.remove();let i=go(s,t);n[Wt]=i;return}if(r&&tr(r,t),n[Wt]=null,t.replaceChildren(),!(e==null||e===!1||e===!0)){if(Array.isArray(e)){for(let s of e){let o=document.createTextNode(String(s??""));t.appendChild(o)}return}t.appendChild(document.createTextNode(String(e)))}}function Xe(e){let{strings:t}=e,n=er.get(t);if(n)return n;let r=[],s="",o="text",i="",c=0,a="",l=0,u=null,h="",f="";for(let m=0;m<t.length;m++){let k=t[m];for(let T=0;T<k.length;T++){let d=k[T];switch(o){case"text":s+=d,d==="<"&&(o="tag-open");break;case"tag-open":s+=d,d==="!"?o="bang-1":d==="/"?(o="tag-name",h=""):/[a-zA-Z]/.test(d)?(o="tag-name",h=d.toLowerCase()):o="text";break;case"bang-1":s+=d,o=d==="-"?"bang-dash":"tag-name";break;case"bang-dash":s+=d,d==="-"?(o="comment",l=0):o="tag-name";break;case"comment":s+=d,d==="-"?l+=1:(d===">"&&l>=2&&(o="text"),l=0);break;case"tag-name":s+=d,d===">"?(o=h==="script"||h==="style"?"rawtext":"text",o==="rawtext"&&(f="")):/\s/.test(d)?o="in-tag":h+=d.toLowerCase();break;case"in-tag":s+=d,d===">"?(o=h==="script"||h==="style"?"rawtext":"text",o==="rawtext"&&(f="")):!/\s/.test(d)&&d!=="/"&&(o="attr-name",i=d,c=s.length-1);break;case"rawtext":s+=d,f=(f+d.toLowerCase()).slice(-9),(f.endsWith("<\/script>")||f.endsWith("</style>"))&&(o="text",f="",h="");break;case"attr-name":d==="="?(o="after-eq",s+=d):/\s/.test(d)?(o="in-tag",i="",s+=d):d===">"?(o="text",i="",s+=d):(i+=d,s+=d);break;case"after-eq":d==='"'||d==="'"?(o="attr-quoted",a=d,s+=d):/\s/.test(d)?(o="in-tag",i="",s+=d):d===">"?(o="text",i="",s+=d):(o="attr-unquoted",s+=d);break;case"attr-unquoted":/\s/.test(d)?(o="in-tag",i="",s+=d):(d===">"&&(o="text",i=""),s+=d);break;case"attr-quoted":s+=d,d===a&&(o="in-tag",i="");break;case"skip-attr":if(d===a){if(u){let g=u.firstPartIdx,b=[];for(let E=g;E<r.length;E++)(r[E].kind==="noop"||r[E].kind==="attr-mixed")&&b.push(E);let L=[],H=t[b[0]],A=H.lastIndexOf(a);L.push(A>=0?H.slice(A+1):H);for(let E=1;E<b.length;E++)L.push(t[b[E]]);let Z=t[b[b.length-1]+1],Oe=Z.indexOf(a);L.push(Oe>=0?Z.slice(0,Oe):Z),r[g]={kind:"attr-mixed",path:[],name:u.name,statics:L,group:b};for(let E=1;E<b.length;E++)r[b[E]]={kind:"noop",path:[],mixedAnchor:g};u=null}o="in-tag",i=""}break}}if(m<t.length-1){let T=r.length;if(o==="comment"){l=0,r.push({kind:"noop",path:[]});continue}if(o==="rawtext"){f="",r.push({kind:"noop",path:[]});continue}if(o==="text")s+=`<!--${y}${T}-->`,r.push({kind:"child",path:[]});else if(o==="in-tag"){let d=`data-${y}${T}`;s+=`${d}=""`,r.push({kind:"element",path:[]})}else if(o==="after-eq"){let d=i[0],g=i.slice(1);if(Ln(d)){s=s.slice(0,c);let b=kt[d],L=`data-${y}${T}`;s+=`${L}=""`,r.push({kind:b,path:[],name:g})}else{s=s.slice(0,c);let b=`data-${y}${T}`;s+=`${b}=""`,r.push({kind:"attr",path:[],name:i})}o="in-tag",i=""}else if(o==="attr-quoted"||o==="attr-unquoted"){s=s.slice(0,c);let d=`data-${y}${T}`;s+=`${d}=""`,u={name:i,firstPartIdx:T},r.push({kind:"noop",path:[]}),o="skip-attr"}else o==="skip-attr"&&r.push({kind:"noop",path:[]})}}let p=document.createElement("template");return p.innerHTML=s,bo(p.content,r),yo(p.content,r),n={templateEl:p,parts:r},er.set(t,n),n}function bo(e,t){let n=e.querySelectorAll("slot");for(let r of n){r.setAttribute(I,"");let s=t.length;r.setAttribute(`data-${y}${s}`,""),t.push({kind:"slot",path:[]})}}function yo(e,t){let n=[];function r(s){for(let o=0;o<s.childNodes.length;o++){let i=s.childNodes[o];if(n.push(o),i.nodeType===8){let c=i.data;if(c.startsWith(y)){let a=Number(c.slice(y.length));t[a]&&t[a].kind==="child"&&(t[a].path=n.slice())}}else if(i.nodeType===1){let c=i,a=[];for(let l of c.attributes)if(l.name.startsWith(`data-${y}`)){let u=Number(l.name.slice(`data-${y}`.length));t[u]&&t[u].kind!=="child"&&(t[u].path=n.slice()),a.push(l.name)}for(let l of a)c.removeAttribute(l);r(i)}n.pop()}}r(e)}function go(e,t){let{templateEl:n,parts:r}=Xe(e),s=n.content.cloneNode(!0),o=document.createComment(`${y}s`),i=document.createComment(`${y}e`),c=r.map(l=>Qe(l,s)),a=[];for(let l=0;l<e.values.length;l++)U(c[l],e.values[l],void 0,e.values),a.push(e.values[l]);t.replaceChildren(o,...s.childNodes,i);for(let l of c)l.kind==="slot"&&U(l,void 0,void 0,[]);return{strings:e.strings,bound:c,lastValues:a,startNode:o,endNode:i}}function Qe(e,t){if(e.kind==="noop")return{kind:"noop",mixedAnchor:e.mixedAnchor};let n=t;for(let s of e.path)n=n.childNodes[s];if(e.kind==="child")return{kind:"child",marker:n};let r=n;if(e.kind==="event"){let s={kind:"event",el:r,name:e.name||"",handler:null,dispatcher(o){s.handler?.(o)}};return r.addEventListener(s.name,s.dispatcher),s}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 ne(e,t){for(let n=0;n<t.length;n++){let r=t[n];if(Object.is(r,e.lastValues[n]))continue;let s=e.bound[n],o=s.mixedAnchor;s.kind==="noop"&&o!=null?U(e.bound[o],t[o],e.lastValues[o],t):U(s,r,e.lastValues[n],t),e.lastValues[n]=r}}function tr(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=Kt(n.slotEl);r&&Zn(r,n.slotEl)}}t.replaceChildren()}function U(e,t,n,r){if(Nt(t)){let s=t.value;if(e.kind==="prop"&&e.el[e.name]===s||e.kind==="attr"&&e.el.getAttribute(e.name)===String(s)||e.kind==="bool"&&e.el.hasAttribute(e.name)===!!s)return;t=s}switch(e.kind){case"child":So(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":wo(e,t);break;case"attr-mixed":{let s=e,o=s.statics[0];for(let i=0;i<s.group.length;i++)o+=String((r?r[s.group[i]]:t)??""),o+=s.statics[i+1]||"";e.el.setAttribute(e.name,o);break}case"slot":{if(e.applied)break;let s=e.slotEl,o=()=>{e.applied=!0;let c=Kt(s);if(!c||_o(s))return;let a=document.createDocumentFragment();for(;s.firstChild;)a.appendChild(s.firstChild);s[Ge]=a,Ye(c)};Kt(s)?o():queueMicrotask(o);break}case"noop":break}}function Kt(e){let t=e.parentElement;for(;t;){if(t[z])return t;t=t.parentElement}return null}function _o(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 wo(e,t){let n=e,r=Ie(t)?t.target:void 0,s=n.__refTarget,o=r!==s;if(o&&s)if(typeof s=="function")try{s(void 0)}catch{}else typeof s=="object"&&(s.value=void 0);if(o||n.__refElement!==e.el){if(n.__refTarget=r,r)if(typeof r=="function"){if(!o&&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 So(e,t){return jo(e,t),j(e,t)}function j(e,t){let n=e.marker;if(xt(t)){B(e);let s=String(t.value??""),o=document.createElement("template");o.innerHTML=s;let i=[...o.content.childNodes],c=document.createDocumentFragment();for(let a of i)c.appendChild(a);n.parentNode?.insertBefore(c,n),e.child=i;return}if(Me(t)){let s=t,o=e.__keyedKey;o!==void 0&&!Object.is(o,s.key)&&B(e),e.__keyedKey=s.key,j(e,s.value);return}if(Pe(t)){let s=t,o=e.__guardDeps,i=s.deps;if(o!==void 0&&(Array.isArray(o)&&Array.isArray(i)?No(o,i):Object.is(o,i)))return;e.__guardDeps=Array.isArray(i)?i.slice():i,j(e,s.fn());return}if(jt(t)){B(e);let s=t.template;if(s&&s.content){let o=s.content.cloneNode(!0),i=[...o.childNodes];n.parentNode?.insertBefore(o,n),e.child=i}return}if(Ie(t))return;if(Fe(t))return Ro(e,t.value);if(Be(t))return Oo(e,t.args);if(Ue(t))return Lo(e,t.signal);if(Rt(t))return Mo(e,t);if(Ot(t))return Po(e,t);if(Le(t)){if(e.child&&e.child.kind==="repeat"){Eo(e,t);return}B(e);let s={kind:"repeat",map:new Map};e.child=s,vo(n,s,t);return}if(Array.isArray(t)){if(e.child&&e.child.kind==="array"){ko(e,t);return}B(e);let s={kind:"array",items:[]};e.child=s,To(n,s,t);return}if(e.child){let s=e.child;if(s.kind==="repeat")nr(s),e.child=void 0;else if(s.kind==="array")sr(s),e.child=void 0;else if(s.kind==="async-stream")cr(s),e.child=void 0;else if("strings"in e.child){let o=e.child;if(C(t)&&o.strings===t.strings){ne(o,t.values);return}re(o.startNode,o.endNode),e.child=void 0}else{for(let o of e.child)o.parentNode&&o.parentNode.removeChild(o);e.child=void 0}}if(t==null||t===!1||t===!0)return;if(C(t)){let s=t,{templateEl:o,parts:i}=Xe(s),c=o.content.cloneNode(!0),a=document.createComment(`${y}s`),l=document.createComment(`${y}e`),u=i.map(p=>Qe(p,c)),h=[];for(let p=0;p<s.values.length;p++)U(u[p],s.values[p],void 0,s.values),h.push(s.values[p]);let f=[a,...c.childNodes,l];n.parentNode?.insertBefore(Ao(f),n);for(let p of u)p.kind==="slot"&&U(p,void 0,void 0,[]);e.child={strings:s.strings,bound:u,lastValues:h,startNode:a,endNode:l};return}let r=document.createTextNode(String(t));n.parentNode?.insertBefore(r,n),e.child=[r]}function Ao(e){let t=document.createDocumentFragment();for(let n of e)t.appendChild(n);return t}function re(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 Yt(e){let{templateEl:t,parts:n}=Xe(e),r=t.content.cloneNode(!0),s=document.createComment(`${y}s`),o=document.createComment(`${y}e`),i=n.map(l=>Qe(l,r)),c=[];for(let l=0;l<e.values.length;l++)U(i[l],e.values[l],void 0,e.values),c.push(e.values[l]);let a=document.createDocumentFragment();for(a.appendChild(s);r.firstChild;)a.appendChild(r.firstChild);return a.appendChild(o),{inst:{strings:e.strings,bound:i,lastValues:c,startNode:s,endNode:o},frag:a}}function Se(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 vo(e,t,n){let{items:r,keyFn:s,templateFn:o}=n,i=e.parentNode;if(!i)return;let c=document.createDocumentFragment();for(let a=0;a<r.length;a++){let l=s(r[a],a),u=o(r[a],a);if(!C(u))continue;let{inst:h,frag:f}=Yt(u);t.map.set(l,h),c.appendChild(f)}i.insertBefore(c,e)}function Eo(e,t){let n=e.marker,r=n.parentNode;if(!r)return;let s=e.child,{items:o,keyFn:i,templateFn:c}=t,a=new Map;for(let l=0;l<o.length;l++){let u=i(o[l],l),h=c(o[l],l);if(!C(h))continue;let f=s.map.get(u);if(f&&f.strings===h.strings)ne(f,h.values),Gt(f.startNode,f.endNode,r,n),a.set(u,f),s.map.delete(u);else{f&&(Se(f),re(f.startNode,f.endNode),s.map.delete(u));let{inst:p,frag:m}=Yt(h);r.insertBefore(m,n),a.set(u,p)}}for(let l of s.map.values())Se(l),re(l.startNode,l.endNode);s.map=a}function nr(e){for(let t of e.map.values())Se(t),re(t.startNode,t.endNode);e.map.clear()}function Co(e){return e.type==="tpl"?e.inst.startNode:e.type==="text"?e.node:null}function Je(e){e.type==="tpl"?(Se(e.inst),re(e.inst.startNode,e.inst.endNode)):e.type==="text"&&e.node.parentNode?.removeChild(e.node)}function rr(e){if(C(e)){let{inst:t,frag:n}=Yt(e);return{item:{type:"tpl",inst:t},frag:n}}if(e!=null&&e!==!1&&e!==!0){let t=document.createTextNode(String(e));return{item:{type:"text",node:t},frag:t}}return{item:{type:"empty"},frag:null}}function To(e,t,n){let r=e.parentNode;if(!r)return;let s=document.createDocumentFragment(),o=[];for(let i of n){let{item:c,frag:a}=rr(i);a&&s.appendChild(a),o.push(c)}r.insertBefore(s,e),t.items=o}function ko(e,t){let n=e.marker,r=n.parentNode;if(!r)return;let s=e.child,o=s.items,i=[];for(let c=0;c<t.length;c++){let a=t[c],l=o[c];if(C(a)){let f=a;if(l&&l.type==="tpl"&&l.inst.strings===f.strings){ne(l.inst,f.values),i.push(l);continue}}else if(a!=null&&a!==!1&&a!==!0){if(l&&l.type==="text"){let f=String(a);l.node.data!==f&&(l.node.data=f),i.push(l);continue}}else{l&&Je(l),i.push({type:"empty"});continue}let{item:u,frag:h}=rr(a);h&&r.insertBefore(h,xo(o,c,n)),l&&Je(l),i.push(u)}for(let c=t.length;c<o.length;c++)Je(o[c]);s.items=i}function xo(e,t,n){for(let r=t;r<e.length;r++){let s=Co(e[r]);if(s&&s.parentNode)return s}return n}function sr(e){for(let t of e.items)Je(t);e.items=[]}function Gt(e,t,n,r){if(t.nextSibling===r&&e.parentNode===n)return;let s=document.createDocumentFragment(),o=e;for(;o;){let i=o.nextSibling;if(s.appendChild(o),o===t)break;o=i}n.insertBefore(s,r)}function No(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 B(e){let t=e;if(t.__untilState&&(t.__untilState.aborted=!0,t.__untilState=void 0),t.__watchSub&&or(t),!e.child)return;let n=e.child;if(n.kind==="repeat")nr(n);else if(n.kind==="array")sr(n);else if(n.kind==="async-stream")cr(n);else if("strings"in n){let r=e.child;Se(r),re(r.startNode,r.endNode)}else for(let r of e.child)r.parentNode&&r.parentNode.removeChild(r);e.child=void 0}function jo(e,t){let n=e;n.__untilState&&!Be(t)&&(n.__untilState.aborted=!0,n.__untilState=void 0),n.__guardDeps!==void 0&&!Pe(t)&&(n.__guardDeps=void 0),n.__cacheMap&&!Fe(t)&&(n.__cacheMap=void 0),n.__keyedKey!==void 0&&!Me(t)&&(n.__keyedKey=void 0),n.__watchSub&&!Ue(t)&&or(n)}function Ro(e,t){let n=e.marker,r=e,s=r.__cacheMap;s||(s=new Map,r.__cacheMap=s);let o=e.child;if(o&&"strings"in o){let c=o;if(C(t)&&c.strings===t.strings){ne(c,t.values);return}let a=document.createDocumentFragment();Gt(c.startNode,c.endNode,a,null),s.set(c.strings,{inst:c,holder:a}),e.child=void 0}if(C(t)){let c=t,a=s.get(c.strings);if(a){s.delete(c.strings),e.child&&B(e),Gt(a.inst.startNode,a.inst.endNode,n.parentNode,n),ne(a.inst,c.values),e.child=a.inst;return}}j(e,t)}function Oo(e,t){let n=e,r=n.__untilState,s=n.__untilArgs,o=(f,p)=>!!(Object.is(f,p)||C(f)&&C(p)&&f.strings===p.strings),c=s&&s.length===t.length&&s.every((f,p)=>o(f,t[p]))&&r?r.highestResolved:1/0;r&&(r.aborted=!0),n.__untilArgs=t.slice();let a={aborted:!1,highestResolved:c};n.__untilState=a;let l=-1,u;for(let f=0;f<t.length;f++){let p=t[f];if(!p||typeof p.then!="function"){l=f,u=p;break}}l!==-1&&l<=a.highestResolved?(j(e,u),a.highestResolved=l):l===-1&&!n.__untilEverRendered&&j(e,""),n.__untilEverRendered=!0;let h=Math.min(l===-1?t.length:l,a.highestResolved);for(let f=0;f<h;f++){let p=t[f];!p||typeof p.then!="function"||Promise.resolve(p).then(m=>{a.aborted||f>=a.highestResolved||(a.highestResolved=f,j(e,m))},()=>{})}}function Lo(e,t){let n=e;if(n.__watchSig===t&&n.__watchSub){let o;n.__watchSub.observe(()=>{o=t.get()}),j(e,o);return}n.__watchSub&&(n.__watchSub.dispose(),n.__watchSub=void 0),n.__watchSig=t;let r=new ye.subtle.Watcher(()=>{queueMicrotask(()=>{if(n.__watchSub!==r)return;let o;r.observe(()=>{o=t.get()}),j(e,o)})});n.__watchSub=r;let s;r.observe(()=>{s=t.get()}),j(e,s)}function or(e){e.__watchSub&&(e.__watchSub.dispose(),e.__watchSub=void 0,e.__watchSig=void 0)}function Mo(e,t){let n=e.child;if(n&&n.kind==="async-stream"&&n.mode==="append"&&n.iterable===t.iterable)return;B(e);let r=t.iterable[Symbol.asyncIterator](),s={kind:"async-stream",mode:"append",aborted:!1,iterable:t.iterable,iterator:r,nodes:[]};e.child=s,ir(s,e,t)}function Po(e,t){let n=e.child;if(n&&n.kind==="async-stream"&&n.mode==="replace"&&n.iterable===t.iterable)return;B(e);let r=t.iterable[Symbol.asyncIterator](),s={kind:"async-stream",mode:"replace",aborted:!1,iterable:t.iterable,iterator:r,nodes:[]};e.child=s,ir(s,e,t)}async function ir(e,t,n){let r=t.marker,s=0;try{for(;!e.aborted;){let o=await e.iterator.next();if(e.aborted||o.done)break;let i=n.mapper?n.mapper(o.value,s):o.value,c=ar(i);if(e.mode==="replace"){for(let l of e.nodes)l.parentNode&&l.parentNode.removeChild(l);e.nodes=[]}let a=document.createDocumentFragment();for(let l of c)a.appendChild(l);r.parentNode?.insertBefore(a,r),e.nodes.push(...c),s++}}catch(o){typeof console<"u"&&console.error("[webjs] asyncStream error:",o)}}function ar(e){if(e==null||e===!1||e===!0)return[];if(C(e)){let t=e,{templateEl:n,parts:r}=Xe(t),s=n.content.cloneNode(!0),o=r.map(i=>Qe(i,s));for(let i=0;i<t.values.length;i++)U(o[i],t.values[i],void 0,t.values);return[...s.childNodes]}if(Array.isArray(e)){let t=[];for(let n of e)t.push(...ar(n));return t}return[document.createTextNode(String(e))]}function cr(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 lr=null;function Ze(e){lr=e||null}function Io(){return lr||void 0}var ur=Symbol.for("webjs:registry"),fr=Symbol.for("webjs:classToTag"),et=globalThis,R=et[ur]||(et[ur]=new Map),dr=et[fr]||(et[fr]=new WeakMap),tt=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=R.get(e);r?(r.cls=t,r.lazy=n):R.set(e,{cls:t,moduleUrl:null,lazy:n,tag:e}),dr.set(t,e)}if(tt){let e=customElements.define.bind(customElements);customElements.define=function(t,n,r){customElements.get(t)||e(t,n,r),Jt(t,n)}}if(!tt){let e=globalThis;e.customElements||(e.customElements={define(t,n){Jt(t,n)},get(t){return R.get(t)?.cls},upgrade(){},whenDefined(t){let n=R.get(t);return Promise.resolve(n?.cls)}})}function Xt(e,t){tt?customElements.define(e,t):Jt(e,t)}function Fo(e,t){if(tt)return;let n=R.get(e);if(n){n.moduleUrl=t;return}R.set(e,{cls:null,moduleUrl:t,lazy:!1,tag:e})}function Bo(e){return R.get(e)?.cls}function Uo(e){return R.get(e)?.moduleUrl||null}function Do(e){return R.get(e)?.lazy===!0}function nt(e){return dr.get(e)}function $o(){return[...R.keys()]}Ee();var _r=typeof window<"u"&&typeof HTMLElement<"u";function ei(e,t){return e!==t}function ti(){return{states:new Set,shadowRoot:null,form:null,labels:[],role:"",willValidate:!0,validity:{},validationMessage:"",setFormValue(){},setValidity(){},checkValidity(){return!0},reportValidity(){return!0}}}var rt=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(),s=this.__ssrAttrs.has(r);return(n===void 0?!s: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 s=r.length-1;s>=0;s--)if(r[s]&&r[s].__ssrTag===n)return r[s];return null}get dataset(){if(this.__dataset)return this.__dataset;let t=this,n=r=>"data-"+String(r).replace(/[A-Z]/g,s=>"-"+s.toLowerCase());return this.__dataset=new Proxy({},{get(r,s){if(typeof s!="string")return;let o=t.getAttribute(n(s));return o===null?void 0:o},set(r,s,o){return typeof s=="string"&&t.setAttribute(n(s),o),!0},has(r,s){return typeof s=="string"&&t.hasAttribute(n(s))},deleteProperty(r,s){return typeof s=="string"&&t.removeAttribute(n(s)),!0},ownKeys(){return t.getAttributeNames().filter(r=>r.startsWith("data-")).map(r=>r.slice(5).replace(/-([a-z])/g,(s,o)=>o.toUpperCase()))},getOwnPropertyDescriptor(r,s){if(typeof s=="string"&&t.hasAttribute(n(s)))return{enumerable:!0,configurable:!0,value:t.getAttribute(n(s))}}}),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=ti(),this.__internals}},ni=["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 ni){let t="aria-"+e.slice(4).toLowerCase();Object.defineProperty(rt.prototype,e,{configurable:!0,get(){return this.getAttribute(t)},set(n){n==null?this.removeAttribute(t):this.setAttribute(t,String(n))}})}var ri=_r?HTMLElement:rt,wr=Symbol("webjs.factoryProps"),yr=new WeakSet,oe=class e extends ri{static shadow=!1;static hydrate=void 0;static properties={};static styles=null;static register(t){Xt(t,this)}static get observedAttributes(){let t=this.properties||{};return Object.keys(t).filter(n=>!(typeof t[n]=="object"&&t[n].state)).map(n=>typeof t[n]=="object"&&t[n].attribute||Zt(n))}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._assertFactoryProperties(),this._initializeProperties()}_assertFactoryProperties(){let t=this.constructor;if(yr.has(t))return;let n=t;for(;n&&n!==e;){if(Object.hasOwn(n,"properties")&&!Object.hasOwn(n,wr)){let r=n.name||"a component";throw new Error(`${r}: \`static properties\` is no longer supported. Declare reactive properties via the factory instead: \`class ${r} extends WebComponent({ count: Number })\`. Use the \`prop()\` helper for options (\`prop(Number, { reflect: true })\`) and set defaults in the constructor after \`super()\`. See https://docs.webjs.dev/docs/components.`)}n=Object.getPrototypeOf(n)}yr.add(t)}_initializeProperties(){let n=this.constructor.properties;if(!(!n||typeof n!="object")){this.__propValues={};for(let[r,s]of Object.entries(n)){let o=typeof s=="object"?s:{type:s},i=this[r];Object.defineProperty(this,r,{configurable:!0,enumerable:!0,get:()=>this.__propValues[r],set:c=>{let a=this.__propValues[r];(o.hasChanged||ei)(c,a)&&(this.__propValues[r]=c,o.reflect&&!o.state&&this._connected&&this._reflectAttribute(r,c,o),this.requestUpdate(r,a))}}),i!==void 0?this.__propValues[r]=i:o.default!==void 0&&(this.__propValues[r]=typeof o.default=="function"?o.default():o.default)}}}_reflectAttribute(t,n,r){let s=r.attribute||Zt(t);if(!this.__reflectingAttribute){this.__reflectingAttribute=!0;try{if(r.converter&&r.converter.toAttribute){let o=r.converter.toAttribute(n,r.type);o==null?this.removeAttribute(s):this.setAttribute(s,o)}else r.type===Boolean?n?this.setAttribute(s,""):this.removeAttribute(s):n==null?this.removeAttribute(s):r.type===Object||r.type===Array?this.setAttribute(s,JSON.stringify(n)):this.setAttribute(s,String(n))}finally{this.__reflectingAttribute=!1}}}connectedCallback(){if(!_r)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 s=n[r].name;s.startsWith("data-webjs-prop-")&&t.push(s)}for(let r of t){let s=this.getAttribute(r);if(this.removeAttribute(r),s==null)continue;let o=gr(r.slice(16));try{this[o]=G(s)}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,s=Array.isArray(r)?r:Ct(r)?[r]:[];if(s.length){if(n){let o=this.shadowRoot.querySelector("style");o&&o.remove()}Tt(this._renderRoot,s)}}else this._renderRoot=this,t.styles&&console.warn(`[webjs] <${nt(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().`),zt(this)||(this.__isHydrating()?(F(this),Yn(this)):Gn(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&&Qn(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.properties||{},i,c;for(let[u,h]of Object.entries(o))if(((typeof h=="object"?h:{type:h}).attribute||Zt(u))===t){i=u,c=h;break}if(c===void 0&&(i=gr(t),c=o[i]||o[t]),c===void 0)return;let a=typeof c=="object"?c:{type:c},l;if(a.converter&&a.converter.fromAttribute)l=a.converter.fromAttribute(r,a.type);else if(a.type===Number)l=r==null?null:Number(r);else if(a.type===Boolean)l=r!=null&&r!=="false";else if(a.type===Object||a.type===Array)try{l=r==null?null:JSON.parse(r)}catch{l=r}else l=r;this[i]!==l&&(this[i]=l,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,r=null;try{if(this.shouldUpdate(t)){this.willUpdate(t);for(let s of this.__controllers)s.hostUpdate&&s.hostUpdate();this.__renderToken=(this.__renderToken||0)+1,this.__renderAbort&&this.__renderAbort.abort(),this.__renderAbort=typeof AbortController<"u"?new AbortController:null,Ze(this.__renderAbort?this.__renderAbort.signal:null);try{let s=this.update(t);s&&typeof s.then=="function"&&(r=s)}catch(s){this._handleRenderError(s)}finally{Ze(null)}if(!r){for(let s of this.__controllers)s.hostUpdated&&s.hostUpdated();n=!0}}}catch(s){console.error("[webjs] lifecycle hook threw during update phase:",s)}finally{this._isUpdating=!1,(n||r)&&(this._changedProperties=new Map)}if(r){let s=this.__renderToken;this.__pendingAsyncCommits=(this.__pendingAsyncCommits||0)+1,r.then(()=>{if(this.__pendingAsyncCommits--,s===this.__renderToken){for(let o of this.__controllers)o.hostUpdated&&o.hostUpdated();this._postCommit(t)}});return}n?this._postCommit(t):this.__pendingAsyncCommits||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 ye.subtle.Watcher(()=>{this._connected&&this.requestUpdate()}));let n;if(this.__signalWatcher.observe(()=>{n=this.render()}),n&&typeof n.then=="function")return this._commitAsync(n);se(n,this._renderRoot)}_commitAsync(t){let n=this.__renderToken;if(this.__firstRendered&&this._overridesRenderFallback())try{let r=this.renderFallback();r!==void 0&&se(r,this._renderRoot)}catch(r){console.error("[webjs] renderFallback() threw:",r)}return Promise.resolve(t).then(r=>{n===this.__renderToken&&se(r,this._renderRoot)},r=>{n===this.__renderToken&&this._handleRenderError(r instanceof Error?r:new Error(String(r)))})}_overridesRenderFallback(){return this.renderFallback!==st.prototype.renderFallback}_handleRenderError(t){console.error(`[webjs] render error in <${nt(this.constructor)||this.tagName?.toLowerCase()}>:`,t);try{let n=this.renderError(t);n!==void 0&&se(n,this._renderRoot)}catch(n){console.error("[webjs] renderError() also threw:",n)}}_postCommit(t){try{this.__firstRendered||(this.__firstRendered=!0,this.firstUpdated(t)),this.updated(t)}catch(n){console.error("[webjs] lifecycle hook threw during post-commit phase:",n)}finally{this._resolveUpdate()}}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){}renderFallback(){}};function Zt(e){return e.replace(/([A-Z])/g,"-$1").toLowerCase()}function gr(e){return e.replace(/-([a-z])/g,(t,n)=>n.toUpperCase())}function st(e){return new.target?Reflect.construct(oe,arguments,new.target):class extends oe{static properties=e;static[wr]=!0}}Object.setPrototypeOf(st,oe);st.prototype=oe.prototype;function si(e,t={}){return e&&typeof e=="object"&&!("call"in e)&&(t=e,e=void 0),{...e?{type:e}:{},...t}}var Sr=Symbol.for("webjs.notFound"),Ar=Symbol.for("webjs.redirect"),vr=Symbol.for("webjs.forbidden"),Er=Symbol.for("webjs.unauthorized");function oi(){let e=new Error("webjs: notFound()");throw e.__webjs=Sr,e}function ii(){let e=new Error("webjs: forbidden()");throw e.__webjs=vr,e}function ai(){let e=new Error("webjs: unauthorized()");throw e.__webjs=Er,e}function ci(e,t){let n=typeof t=="object"&&t!==null?t.status:t,r=new Error(`webjs: redirect(${e})`);throw r.__webjs=Ar,r.url=e,r.status=typeof n=="number"?n:void 0,r}function li(e){return!!e&&e.__webjs===Sr}function ui(e){return!!e&&e.__webjs===Ar}function fi(e){return!!e&&e.__webjs===vr}function di(e){return!!e&&e.__webjs===Er}var Cr=null;function hi(){if(!Cr)return"";try{return Cr()||""}catch{return""}}var ec=Symbol.for("webjs.suspense");function pi(e){return{_$webjsSuspense:!0,fallback:e.fallback,children:e.children}}function mi(e){return!!e&&typeof e=="object"&&e._$webjsSuspense===!0}function bi(e,t={}){let n=t.reconnect!==!1,r=0,s=!1,o=null,i=[];function c(){s||(o=new WebSocket(yi(e),t.protocols),o.onopen=a=>{for(r=0;i.length&&o&&o.readyState===WebSocket.OPEN;)o.send(i.shift());t.onOpen?.(a)},o.onmessage=a=>{let l=a.data;if(typeof l=="string")try{l=JSON.parse(l)}catch{}t.onMessage?.(l,a)},o.onerror=a=>{t.onError?.(a)},o.onclose=a=>{if(t.onClose?.(a),!s&&n){let l=Math.min(1e3*2**r++,3e4);setTimeout(c,l)}})}return c(),{send(a){let l=typeof a=="string"||a instanceof ArrayBuffer||ArrayBuffer.isView(a)?a:JSON.stringify(a);o&&o.readyState===WebSocket.OPEN?o.send(l):i.push(l)},close(a,l){s=!0;try{o?.close(a,l)}catch{}},get socket(){return o},get readyState(){return o?.readyState??3}}}function yi(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}`}Ee();var en="application/vnd.webjs+json";async function gi(e,t={}){let n=new Headers(t.headers||{});n.has("accept")||n.set("accept",en);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 Qt(r),n.has("content-type")||n.set("content-type",en));let s=await fetch(e,{...t,headers:n,body:r}),o=s.headers.get("content-type")||"",i=await s.text(),c=o.includes(en)?i?G(i):null:o.includes("application/json")?i?JSON.parse(i):null:i;if(!s.ok){let a=c&&c.error||`richFetch ${e} -> ${s.status}`,l=new Error(a);throw l.status=s.status,l.body=c,l}return c}Ee();it();it();rn();at();var xn=class{constructor(t,n){this.host=t,this.options=n,this.updates=[],this._nextId=0}get value(){let t=this.options.source();if(!this.options.update)return this.updates.length>0?this.updates[this.updates.length-1].payload:t;for(let n of this.updates)t=this.options.update(t,n.payload);return t}add(t,n){let r=`opt-${++this._nextId}`;this.updates.push({id:r,payload:t}),this.host?.requestUpdate?.();let s=()=>{let o=this.updates.findIndex(i=>i.id===r);o!==-1&&(this.updates.splice(o,1),this.host?.requestUpdate?.())};return n&&typeof n.then=="function"&&(typeof n.finally=="function"?n.finally(()=>s()).catch(()=>{}):n.then(()=>s(),()=>s())),s}};async function ea(e,t,n){let r=e.get();e.set(t);let s;try{s=await n()}catch(o){throw e.set(r),o}return s&&s.success===!1&&e.set(r),s}function ta(e,t,n){return e&&typeof e.get=="function"&&typeof e.set=="function"?ea(e,t,n):new xn(e,t)}an();var At=0,As=new Map,pe=new Map,na=1e3;function ra(e){if(!(!Array.isArray(e)||!e.length)){At+=1;for(let t of e)t&&As.set(t,At)}}function sa(){return At}function oa(e,t,n){if(!(!Array.isArray(t)||!t.length)&&(pe.delete(e),pe.set(e,{tags:t.slice(),since:typeof n=="number"?n:At}),pe.size>na)){let r=pe.keys().next().value;r!==void 0&&pe.delete(r)}}function ia(e){let t=pe.get(e);if(!t)return!1;for(let n of t.tags)if((As.get(n)||0)>t.since)return!0;return!1}function aa(e){return e?e.split(",").map(t=>t.trim()).filter(Boolean):[]}var ca="application/vnd.webjs+stream",la=1,ua=2,fa=3,vs=new Uint8Array(0);function da(e,t){let n=t||vs,r=n.length,s=new Uint8Array(5+r);return s[0]=e&255,s[1]=r>>>24&255,s[2]=r>>>16&255,s[3]=r>>>8&255,s[4]=r&255,r&&s.set(n,5),s}function ha(){let e=vs;return{push(t){if(t&&t.length){let r=new Uint8Array(e.length+t.length);r.set(e,0),r.set(t,e.length),e=r}let n=[];for(;e.length>=5;){let r=e[0],s=(e[1]<<24|e[2]<<16|e[3]<<8|e[4])>>>0;if(e.length<5+s)break;let o=e.slice(5,5+s);n.push({type:r,payload:o}),e=e.slice(5+s)}return n}}}var pa=Symbol.for("webjs.context");function ma(e){return{__context__:pa,name:e}}var vt=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=s=>{let o=s;if(o.context===this._context)if(s.stopPropagation(),o.subscribe){let i={callback:o.callback},c=()=>{this._subscriptions.delete(i)};this._subscriptions.add(i),o.callback(this._value,c)}else o.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()}},jn=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 vt(this._context,(n,r)=>{let s=this._value;this._value=n,r&&(this._unsubscribe=r),!Object.is(s,n)&&typeof this._host.requestUpdate=="function"&&this._host.requestUpdate()},this._subscribe);this._host.dispatchEvent(t)}};function ba(){return typeof window<"u"}var M={INITIAL:0,PENDING:1,COMPLETE:2,ERROR:3},Rn=class{constructor(t,{task:n,args:r,autoRun:s=!0}){this._host=t,this._taskFn=n,this._argsFn=r||(()=>[]),this._autoRun=s,this._status=M.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=M.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=M.COMPLETE,this._error=void 0}catch(r){if(t.signal.aborted)return;this._error=r,this._status=M.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 M.INITIAL:return t.initial?.();case M.PENDING:return t.pending?.();case M.COMPLETE:return t.complete?.(this._value);case M.ERROR:return t.error?.(this._error);default:return}}hostUpdate(){if(!this._autoRun||!ba())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{jn as ContextConsumer,Nn as ContextProvider,vt as ContextRequestEvent,la as FRAME_CHUNK,ua as FRAME_END,fa as FRAME_ERROR,y as MARKER,Pr as SEED_MISS,ca as STREAM_CONTENT_TYPE,ye as Signal,pi as Suspense,Rn as Task,M as TaskStatus,st as WebComponent,nn as WebjsFrame,sn as WebjsStream,Io as activeActionSignal,Tt as adoptStyles,$o as allTags,Ds as asyncAppend,$s as asyncReplace,Xs as batch,Bs as cache,Zs as computed,bi as connectWS,ia as consumeStale,ma as createContext,ha as createFrameDecoder,Fs as createRef,hi as cspNonce,ks as css,mr as deserialize,$r as disableClientRouter,to as effect,bn as enableClientRouter,da as encodeFrame,js as escapeAttr,Ns as escapeText,sa as fetchMark,ii as forbidden,Ms as guard,Ts as html,Rt as isAsyncAppend,Ot as isAsyncReplace,Ct as isCSS,Fe as isCache,fi as isForbidden,Pe as isGuard,Me as isKeyed,Do as isLazy,Nt as isLive,li as isNotFound,ui as isRedirect,Ie as isRef,Le as isRepeat,eo as isSignal,mi as isSuspense,C as isTemplate,jt as isTemplateContent,di as isUnauthorized,xt as isUnsafeHTML,Be as isUntil,Ue as isWatch,Ls as keyed,Os as live,Bo as lookup,Uo as lookupModuleUrl,ra as markStale,qr as navigate,oi as notFound,ta as optimistic,G as parse,aa as parseTagHeader,Fo as primeModuleUrl,si as prop,ci as redirect,Is as ref,Xt as register,oa as registerKeyTags,se as render,on as renderStream,Pn as repeat,Hr as revalidate,gi as richFetch,ct as scanSeeds,pr as serialize,Ze as setActiveActionSignal,Qs as signal,Qt as stringify,xs as stylesToString,nt as tagOf,Ci as takeSeed,Ps as templateContent,ai as unauthorized,Rs as unsafeHTML,Us as until,qs as watch};
|
|
4
4
|
//# sourceMappingURL=webjs-core-browser.js.map
|