@webjsdev/core 0.7.26 → 0.7.28

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 Ys=Object.defineProperty;var X=(e,t)=>()=>(e&&(t=e(e=0)),t);var Qn=(e,t)=>{for(var n in t)Ys(e,n,{get:t[n],enumerable:!0})};function Or(e,t,n){oi.has(t)?Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0}):e[t]=n}async function ze(e){return JSON.stringify(await Mr(e))}function D(e){return Pr(JSON.parse(e))}async function Mr(e){let t=ii();return await ai(e,t),le(e,t)}function Pr(e){return G(e,fi())}function ii(){return{refCount:new Map,idOf:new Map,emitted:new Set,nextId:0,blobBytes:new Map,fdEntries:new Map}}async function ai(e,t){let n=[e];for(;n.length;){let r=n.pop();if(!pi(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(hi(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 le(e,t){if(e===null)return null;if(e===void 0)return{[k]:"undef"};let n=typeof e;if(n==="string"||n==="boolean")return e;if(n==="number")return Number.isNaN(e)?{[k]:"NaN"}:e===1/0?{[k]:"Inf"}:e===-1/0?{[k]:"-Inf"}:Object.is(e,-0)?{[k]:"-0"}:e;if(n==="bigint")return{[k]:"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{[k]:"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{[k]:"Ref",v:r};r!==void 0&&t.emitted.add(r);let s;if(e instanceof Date)s={[k]:"Date",v:Number.isNaN(e.getTime())?null:e.toISOString()};else if(e instanceof Error)s={[k]:"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={[k]:"File",v:Ve(o),n:e.name,t:e.type||"",m:e.lastModified}:s={[k]:"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,le(a,t)]);s={[k]:"FD",v:i}}else if(ArrayBuffer.isView(e)||e instanceof ArrayBuffer)s=ci(e);else if(e instanceof Map){let o=[];for(let[i,c]of e)o.push([le(i,t),le(c,t)]);s={[k]:"Map",v:o}}else if(e instanceof Set){let o=[];for(let i of e)o.push(le(i,t));s={[k]:"Set",v:o}}else if(Array.isArray(e))s=e.map(o=>le(o,t));else{s={};for(let o in e){if(!Object.prototype.hasOwnProperty.call(e,o))continue;let i=mi(o)?"_"+o:o;Or(s,i,le(e[o],t))}}if(r!==void 0){if(Array.isArray(s))return{[k]:"Arr",_id:r,v:s};s._id=r}return s}function ci(e){if(e instanceof ArrayBuffer)return{[k]:"buf",v:Ve(new Uint8Array(e))};if(e instanceof DataView)return{[k]:"dv",v:Ve(new Uint8Array(e.buffer,e.byteOffset,e.byteLength))};let t=e.constructor.name,n=li[t];if(!n)throw new TypeError(`Unsupported typed array: ${t}`);let r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return{[k]:n,v:Ve(r)}}function fi(){return{refs:new Map}}function G(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(G(e[i],t));return o}let n=e[k];if(typeof n=="string")return di(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=bi(o)?o.slice(1):o;Or(r,i,G(e[o],t))}return r}function di(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(G(i,n),G(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(G(i,n));return o}case"Arr":{let o=[];typeof r=="number"&&n.refs.set(r,o);for(let i of e.v)o.push(G(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=We(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=We(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=G(c,n);o.append(i,a)}return o}default:{if(t==="buf"){let i=We(e.v);return s(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength))}if(t==="dv"){let i=We(e.v);return s(new DataView(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)))}let o=ui[t];if(o){let i=We(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 pi(e){return e!==null&&typeof e=="object"}function hi(e){if(e===null||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function mi(e){return/^_+\$wj$/.test(e)||/^_+id$/.test(e)}function bi(e){return/^__+\$wj$/.test(e)||/^__+id$/.test(e)}function Ve(e){if(Ir)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 We(e){if(Ir){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 k,oi,li,ui,Ir,ke=X(()=>{k="_$wj",oi=new Set(["__proto__","constructor","prototype"]);li={Int8Array:"i8",Uint8Array:"u8",Uint8ClampedArray:"u8c",Int16Array:"i16",Uint16Array:"u16",Int32Array:"i32",Uint32Array:"u32",Float32Array:"f32",Float64Array:"f64",BigInt64Array:"bi64",BigUint64Array:"bu64"},ui={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};Ir=typeof Buffer<"u"&&typeof Buffer.from=="function"});var Gr={};Qn(Gr,{observeLazy:()=>Xi,observeViewportOnce:()=>ta});function Kr(e){let t=En.get(e);return t||(t=import(e).finally(()=>En.delete(e)),En.set(e,t),t)}function Xi(e){for(let[t,n]of Object.entries(e))ue.set(t.toLowerCase(),n);if(typeof IntersectionObserver>"u"){for(let t of ue.values())Kr(t);ue.clear();return}Je||(Je=new IntersectionObserver(Qi,{rootMargin:"200px"})),zr(),typeof MutationObserver<"u"&&new MutationObserver(()=>zr()).observe(document.body,{childList:!0,subtree:!0})}function zr(){if(!(!Je||!ue.size))for(let e of ue.keys())for(let t of document.querySelectorAll(e))Je.observe(t)}function Qi(e){for(let t of e){if(!t.isIntersecting)continue;let n=t.target.tagName.toLowerCase(),r=ue.get(n);r&&(Kr(r),ue.delete(n),Je?.unobserve(t.target))}}function ea(e){for(let t of e){if(!t.isIntersecting)continue;let n=Tt.get(t.target);Tt.delete(t.target),Ye?.unobserve(t.target),n&&n()}}function ta(e,t){return typeof IntersectionObserver>"u"?(t(),()=>{}):(Ye||(Ye=new IntersectionObserver(ea,{rootMargin:"200px"})),Tt.set(e,t),Ye.observe(e),()=>{Tt.delete(e),Ye?.unobserve(e)})}var ue,Je,En,Ye,Tt,Yr=X(()=>{ue=new Map,Je=null,En=new Map;Ye=null,Tt=new WeakMap});var Cn,vn=X(()=>{Cn=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(()=>(Yr(),Gr)).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(()=>(kn(),Jr)).then(({loadFrame:n})=>{this._webjsLoadedSrc!==t||!this.isConnected||n(this,t)})}}:null;typeof customElements<"u"&&Cn&&!customElements.get("webjs-frame")&&customElements.define("webjs-frame",Cn)});function ra(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 Tn(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 na,xn,Nt=X(()=>{na=new Set(["append","prepend","before","after","replace","update"]);xn=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=na.has(t)?this.querySelector("template"):null;try{for(let i of r){let c=o?o.content.cloneNode(!0):null;ra(t,i,c)}}finally{this.remove()}}}:null;typeof customElements<"u"&&xn&&!customElements.get("webjs-stream")&&customElements.define("webjs-stream",xn)});var Zr,Xr=X(()=>{Zr=typeof HTMLElement<"u"?class extends HTMLElement{connectedCallback(){this.style.display||(this.style.display="contents")}}:null;typeof customElements<"u"&&Zr&&!customElements.get("webjs-suspense")&&customElements.define("webjs-suspense",Zr)});function jt(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]'))es(n.textContent,n);for(let n of t.querySelectorAll("[data-webjs-seed]"))es(n.getAttribute("data-webjs-seed"),n,()=>n.removeAttribute("data-webjs-seed"))}}function es(e,t,n){if(e)try{let r=D(e);if(r&&typeof r=="object")for(let s in r)Ze.has(s)||Ze.set(s,r[s])}catch{}n?n():t.remove?.()}function sa(e,t,n){Qr||(Qr=!0,jt());let r=`${e}/${t}/${n}`;if(Ze.has(r)){let s=Ze.get(r);return Ze.delete(r),s}return ts}var Ze,ts,Qr,Nn=X(()=>{ke();Ze=new Map,ts=Symbol("webjs.seed.miss"),Qr=!1});var Jr={};Qn(Jr,{_FRAME_TOP:()=>bs,_LIVE_ATTRS:()=>In,_activeFrameId:()=>ms,_addNewHeadElements:()=>$n,_applyStreamedResolve:()=>qs,_blurOutgoingFocus:()=>Ot,_buildSubmitFormData:()=>ps,_bumpNavToken:()=>xa,_clearFormBusy:()=>Rs,_clearFrameBusy:()=>Ns,_collectChildrenSlots:()=>Me,_currentPageUrl:()=>Ta,_diffElementInPlace:()=>Ut,_eligibleAnchorHref:()=>Pt,_findAnchorInPath:()=>hs,_getSubmitAction:()=>ds,_getSubmitMethod:()=>fs,_isNonHtmlPath:()=>Ra,_keyOf:()=>Oe,_longestSharedPath:()=>ys,_markFormBusy:()=>js,_markFrameBusy:()=>Ts,_mergeHead:()=>Fs,_navToken:()=>ka,_onPopState:()=>Bn,_onSubmit:()=>Un,_prefetch:()=>Pe,_prefetchHasHoverPointer:()=>Es,_prefetchInflightSize:()=>Ca,_prefetchMode:()=>It,_prefetchPeek:()=>Ea,_prefetchSaysSaveData:()=>Hn,_prefetchSuppressed:()=>Cs,_prefetchTake:()=>vs,_reactivateScripts:()=>qt,_readStreamedShell:()=>Bs,_reconcileChildren:()=>zn,_regraftPermanentElements:()=>Os,_regraftPermanentInSlice:()=>Vn,_resetPrefetch:()=>va,_resetWarnOnce:()=>ja,_resolveTargetFrameId:()=>qn,_restoreOptimistic:()=>Xe,_runWithTransition:()=>Lt,_setCurrentPageUrl:()=>Na,_snapshotCache:()=>O,_streamBoundariesProgressively:()=>Ds,_takeResolveUnit:()=>Us,_viewTransitionsEnabled:()=>Ls,collectChildrenSlots:()=>Me,disableClientRouter:()=>as,enableClientRouter:()=>Fn,loadFrame:()=>ia,longestSharedPath:()=>ys,navigate:()=>cs,revalidate:()=>ls});function is(e){return typeof Document<"u"&&typeof Document.parseHTMLUnsafe=="function"?Document.parseHTMLUnsafe(e):typeof DOMParser<"u"?new DOMParser().parseFromString(e,"text/html"):null}function oa(){jn||typeof MutationObserver>"u"||typeof customElements>"u"||(jn=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)}}),jn.observe(document.body,{childList:!0,subtree:!0}))}function Fn(){Z||typeof document>"u"||(Z=!0,document.addEventListener("click",us,!1),document.addEventListener("submit",Un,!1),window.addEventListener("popstate",Bn),document.addEventListener("pointerover",Le,!0),document.addEventListener("focusin",Le,!0),document.addEventListener("touchstart",Le,{capture:!0,passive:!0}),document.addEventListener("pointerout",ks,!0),document.addEventListener("webjs:navigate",Pn),oa(),Pn(),typeof history<"u"&&"scrollRestoration"in history&&(Rt=history.scrollRestoration,history.scrollRestoration="manual"),typeof location<"u"&&(q=location.href))}function as(){Z&&(Z=!1,document.removeEventListener("click",us,!1),document.removeEventListener("submit",Un,!1),window.removeEventListener("popstate",Bn),document.removeEventListener("pointerover",Le,!0),document.removeEventListener("focusin",Le,!0),document.removeEventListener("touchstart",Le,{capture:!0}),document.removeEventListener("pointerout",ks,!0),document.removeEventListener("webjs:navigate",Pn),Ht(),Wn(),J&&(J.disconnect(),J=null),typeof history<"u"&&Rt!==null&&(history.scrollRestoration=Rt,Rt=null),q=null)}async function cs(e,t){let n=new URL(e,location.href);if(n.origin!==location.origin){location.href=e;return}await Dn(n.href,t?.replace??!1,null)}async function ia(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};M&&M.abort(),M=new AbortController;let s=M.signal,o=++j;return $t(r.href,n,!1,null,"GET",null,s,o)}function ls(e){if(!e){O.clear(),L.clear();return}let t=new URL(e,location.href),n=t.pathname+t.search;O.delete(n),L.delete(n)}function us(e){if(!Z||e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;let t=hs(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||Dt.test(r.pathname))return;e.preventDefault();let s=qn(t);Dn(n,!1,s)}function Bn(e){Dn(location.href,!0,null)}function Un(e){if(!Z||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=fs(t,n);if(s==="dialog")return;let o=ds(t,n),i;try{i=new URL(o,location.href)}catch{return}if(i.origin!==location.origin||Dt.test(i.pathname))return;let c=ps(t,n);e.preventDefault();let a=qn(n||t);la(i.href,s,c,a,t)}function fs(e,t){return(t&&t.getAttribute("formmethod")||e.getAttribute("method")||"get").toLowerCase()}function ds(e,t){return t&&t.hasAttribute("formaction")?t.getAttribute("formaction")||"":e.getAttribute("action")||e.action||location.href}function ps(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 hs(e){for(let t of e.composedPath())if(t instanceof HTMLAnchorElement)return t;return null}function ms(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 qn(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===bs)return null;let r=typeof document<"u"?document.getElementById(n):null;return r&&r.tagName&&r.tagName.toLowerCase()==="webjs-frame"?n:(gs(`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 ms(e)}function gs(e,t){Ln.has(e)||(Ln.add(e),typeof console<"u"&&console.warn&&console.warn(t))}function rs(){if(typeof process<"u"&&process.env||On||typeof document>"u"||typeof getComputedStyle!="function")return;let e=document.documentElement;if(!e)return;On=!0;let t;try{t=getComputedStyle(e).scrollBehavior}catch{return}t==="smooth"&&gs("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 Mt(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 Me(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 ys(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 ws(e){let t=pe(e);O.has(t)&&O.delete(t);let n={html:document.documentElement.outerHTML,scrollX:typeof window<"u"&&window.scrollX||0,scrollY:typeof window<"u"&&window.scrollY||0};for(O.set(t,n);O.size>aa;){let r=O.keys().next().value;O.delete(r)}}function ca(e){let t=pe(e),n=O.get(t);return n==null?null:(O.delete(t),O.set(t,n),typeof n=="string"?{html:n,scrollX:0,scrollY:0}:n)}function pe(e){let t=new URL(e,location.href);return t.pathname+t.search}async function Dn(e,t,n){M&&M.abort(),M=new AbortController;let r=M.signal,s=++j;q&&ws(q);let o=setTimeout(()=>{Mt(!0),o=null},150),i=null;t||(i=Ps());try{if(t){let c=ca(e);if(c){let a=is(c.html);if(a){Ms(a,n,!0,null),typeof window<"u"&&window.scrollTo({left:c.scrollX,top:c.scrollY,behavior:"instant"}),$t(e,n,!1,i,"GET",null,r,s).catch(()=>{});return}}typeof window<"u"&&window.scrollTo({left:0,top:0,behavior:"instant"})}await $t(e,n,!t,i,"GET",null,r,s)}finally{o&&clearTimeout(o),s===j&&(Mt(!1),typeof location<"u"&&(q=location.href))}}async function la(e,t,n,r,s){M&&M.abort(),M=new AbortController;let o=M.signal,i=++j,c=t==="get"||t==="head",a=new URL(e,location.href);if(c){a.search="";for(let[b,g]of n)a.searchParams.append(b,typeof g=="string"?g:g.name)}q&&ws(q);let l=setTimeout(()=>{Mt(!0),l=null},150),f=Ps(),p=s?js(s,i,a.href):null,u=!1;try{let b=await $t(a.href,r,!0,f,c?"GET":t.toUpperCase(),c?null:n,o,i);u=!!(b&&b.ok),!c&&i===j&&(O.clear(),L.clear())}finally{p&&Rs(p,i,a.href,u),l&&clearTimeout(l),i===j&&(Mt(!1),typeof location<"u"&&(q=location.href))}}function _s(){return[...Me(document.body).keys()].join(",")}function Hn(){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 Es(){try{if(typeof matchMedia=="function")return matchMedia("(hover: hover) and (pointer: fine)").matches}catch{}return!0}function ha(e){let t=e.getAttribute("rel");return t?t.toLowerCase().split(/\s+/).filter(Boolean):[]}function Pt(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||Dt.test(n.pathname)?null:t}function Cs(e){if(e.hasAttribute("data-no-prefetch"))return!0;let t=ha(e);return t.includes("external")||t.includes("no-prefetch")}function It(e){if(Cs(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 Es()?"intent":"viewport"}}function Pe(e){if(!Z||typeof fetch!="function"||Hn())return;let t=pe(e);if(fe.has(t)||Qe.has(t))return;let n=L.get(t);if(n&&Mn()-n.at<Ss)return;if(fe.size>=As){for(Qe.add(t),je.push(e);je.length>fa;){let o=je.shift();Qe.delete(pe(o))}return}fe.add(t);let r={"x-webjs-router":"1","x-webjs-prefetch":"1"},s=_s();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.redirected&&o.url?o.url:e,l=await o.text();ba(t,{html:l,build:c,finalUrl:a,at:Mn()})}).catch(()=>{}).finally(()=>{fe.delete(t),ma()})}function ma(){for(;je.length&&fe.size<As;){let e=je.shift();Qe.delete(pe(e)),Pe(e)}}function ba(e,t){for(L.has(e)&&L.delete(e),L.set(e,t);L.size>ua;){let n=L.keys().next().value;L.delete(n)}typeof document<"u"&&document.dispatchEvent(new CustomEvent("webjs:prefetch",{detail:{url:t.finalUrl,key:e,from:"prefetch"}}))}function vs(e){let t=pe(e),n=L.get(t);return!n||(L.delete(t),Mn()-n.at>=Ss)?null:n}function Mn(){try{if(typeof performance<"u"&&typeof performance.now=="function")return performance.now()}catch{}return 0}function Le(e){if(!Z)return;let t=xs(e.target);if(!t)return;let n=It(t);if(n==="none"||n==="render")return;let r=Pt(t);if(r){if(e.type==="touchstart"){Pe(r);return}n==="intent"&&(et===t&&Re||(Ht(),et=t,Re=setTimeout(()=>{Re=null,et=null,Pe(r)},da)))}}function ks(e){let t=xs(e.target);t&&t===et&&Ht()}function Ht(){Re&&(clearTimeout(Re),Re=null),et=null}function Wn(){for(let e of tt)clearTimeout(e);tt.clear(),Te=new WeakMap}function xs(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 Pn(){if(typeof document>"u"||Hn())return;let e=typeof IntersectionObserver<"u";e&&(J?(J.disconnect(),Wn()):J=new IntersectionObserver(t=>{for(let n of t){let r=n.target;if(n.isIntersecting){if(Te.has(r))continue;let s=setTimeout(()=>{tt.delete(s),Te.delete(r),J.unobserve(r);let o=Pt(r);o&&It(r)==="viewport"&&Pe(o)},pa);Te.set(r,s),tt.add(s)}else{let s=Te.get(r);s&&(clearTimeout(s),tt.delete(s),Te.delete(r))}}},{threshold:.5}));for(let t of document.querySelectorAll("a[href]")){let n=It(t);if(n==="render"){let r=Pt(t);r&&Pe(r)}else n==="viewport"&&e&&J.observe(t)}}function ga(e){if(typeof document>"u"||!document.body)return!1;let t=Me(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 Rn(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||ga(t)||typeof location<"u"&&(location.href=e)}async function $t(e,t,n,r,s,o,i,c){s=s||"GET";let a=typeof c=="number"?c:j,l,f=null,p=null,u=null,b=!1,g=e,m=t?Ts(t,a):null;try{try{let d=s==="GET"&&!o&&!t?vs(e):null;if(d)l=d.html,p=d.build,g=d.finalUrl,u=200,b=!0;else{let y={"x-webjs-router":"1"},w=_s();w&&(y["x-webjs-have"]=w),t&&(y["x-webjs-frame"]=t),o!=null&&s!=="GET"&&s!=="HEAD"&&(y.accept=ns+", text/html");let S={method:s,headers:y,credentials:"same-origin"};i&&(S.signal=i),o!=null&&s!=="GET"&&s!=="HEAD"&&(S.body=o);let A=await fetch(e,S);u=A.status,b=A.ok;let v=A.headers.get("content-type")||"",T=/^text\/html\b/i.test(v);if(v.toLowerCase().indexOf(ns)===0){let _=await A.text();return a===j&&(Xe(r),Tn(_)),{ok:b,status:u,aborted:!1}}if(A.redirected&&A.url&&(g=A.url),A.status===204||A.status===205)return a===j&&n&&history.pushState(null,"",g),{ok:b,status:u,aborted:!1};if(!T)return a===j&&(Xe(r),Rn(e,A.status,null)),{ok:!1,status:u,aborted:!1};p=A.headers.get("x-webjs-build");let E=await Bs(A);l=E.shell,E.streaming&&(f=E)}}catch(d){return d&&d.name==="AbortError"?{ok:!1,status:null,aborted:!0}:a!==j?{ok:!1,status:null,aborted:!0}:(Xe(r),Rn(e,null,d instanceof Error?d:new Error(String(d))),{ok:!1,status:null,aborted:!1})}if(a!==j){if(f&&f.reader)try{f.reader.cancel()}catch{}return{ok:!1,status:u,aborted:!0}}let h=is(l);if(!h)return Xe(r),Rn(e,null,new Error("navigation response did not parse as HTML")),{ok:!1,status:u,aborted:!1};if(Ms(h,t,!1,g,p),n&&history.pushState(null,"",g),n){let d=new URL(g);if(d.hash){let y=document.getElementById(d.hash.slice(1));y?y.scrollIntoView():(rs(),window.scrollTo({left:0,top:0,behavior:"instant"}))}else rs(),window.scrollTo({left:0,top:0,behavior:"instant"})}return f&&(f.reader||f.rest)&&Ds(f.reader,f.dec,f.rest,()=>a===j),document.dispatchEvent(new CustomEvent("webjs:navigate",{detail:{url:g,frameId:t,from:"navigate"}})),{ok:b,status:u,aborted:!1}}finally{m&&Ns(m,a)}}function Ts(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=Ft.has(n);return Ft.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 Ns(e,t){if(Ft.get(e)!==t)return;Ft.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 js(e,t,n){let r=Bt.has(e);return Bt.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 Rs(e,t,n,r){if(Bt.get(e)!==t)return;Bt.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 ss(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+=de(r);return n}function Ls(){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 Lt(e,t){let n=typeof document<"u"?document.startViewTransition:void 0;if(Ls()&&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 Os(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=ya(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 ya(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 wa(e){if(!(!e||!e.start))for(let t=e.start.nextSibling;t&&t!==e.end;t=t.nextSibling)t.nodeType===1&&Ne(t)}function Ms(e,t,n,r,s){try{jt(e)}catch{}try{typeof sessionStorage<"u"&&(!r||t||n)&&sessionStorage.removeItem("webjs:importmap-reload")}catch{}if(r&&!t&&!n){let f=document.querySelector('script[type="importmap"]'),p=f?f.getAttribute("data-webjs-build"):null,u=!1;if(s&&p&&(u=s!==p),!u&&e.head&&e.head.children.length>0){let b=ss(document),g=ss(e);b!==g&&(u=!0)}if(u&&typeof location<"u")try{let b="webjs:importmap-reload";if(sessionStorage&&sessionStorage.getItem(b))sessionStorage.removeItem(b);else{sessionStorage&&sessionStorage.setItem(b,"1"),location.href=r;return}}catch{location.href=r;return}else if(!u)try{typeof sessionStorage<"u"&&sessionStorage.removeItem("webjs:importmap-reload")}catch{}}if(t){let f=document.querySelector(`webjs-frame#${CSS.escape(t)}`),p=e.querySelector(`webjs-frame#${CSS.escape(t)}`);if(f&&p){$n(e.head),Lt(()=>{Aa(f,p),qt(f),Ne(f),Ot()},()=>Ne(f)),os(e.body);return}let u=new CustomEvent("webjs:frame-missing",{bubbles:!0,cancelable:!0,detail:{frameId:t,url:r||(typeof location<"u"?location.href:null),document:e}});(f||document).dispatchEvent(u),u.defaultPrevented||console.warn(`[webjs] frame "${t}" was not in the navigation response, leaving it unchanged. Handle "webjs:frame-missing" (preventDefault) to override.`);return}let o=Me(document.body),i=Me(e.body),c=ys(o,i);if(c){$n(e.head),Lt(()=>{_a(o.get(c),i.get(c),e),Ot()},()=>wa(o.get(c))),os(e.body);return}Fs(e.head),Os(document.body,e.body);let a=[...e.body.childNodes];Lt(()=>{document.body.replaceChildren(...a),qt(document.body),Ne(document.body),Ot()},()=>Ne(document.body))}function Ot(){let e=document.activeElement;!e||e===document.body||e===document.documentElement||typeof e.blur=="function"&&e.blur()}function _a(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),Sa(r,e.start,e.end,s,o);for(let i=e.start.nextSibling;i&&i!==e.end;i=i.nextSibling)i.nodeType===1&&(qt(i),Ne(i))}function Sa(e,t,n,r,s){let o=new Map;for(let a of r){if(a.nodeType!==1)continue;let l=Oe(a);l&&o.set(l,a)}let i=n,c=[];for(let a of s){if(a.nodeType===1){let l=Oe(a);if(l&&o.has(l)){let f=o.get(l);Ut(f,a),c.push(f),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 Ut(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),!In.has(r.name)&&e.getAttribute(r.name)!==r.value&&e.setAttribute(r.name,r.value);for(let r of[...e.attributes])In.has(r.name)||n.has(r.name)||e.removeAttribute(r.name);zn(e,t)}function zn(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=Oe(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=Oe(a);if(l&&s.has(l)){let p=s.get(l);Ut(p,a),o.push(p),s.delete(l);continue}let f=n[c];if(f&&f.nodeType===1&&!Oe(f)&&f.tagName===a.tagName){Ut(f,a),o.push(f);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 Oe(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=Me(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:j}}function Xe(e){if(!e||e.token!==j)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 Aa(e,t){zn(e,t)}function Is(){if(typeof document>"u")return"";let e=document.querySelector('meta[name="csp-nonce"]');return e&&e.getAttribute("content")||""}function Kn(e){let t=document.createElement("script");for(let r of e.attributes)r.name!=="nonce"&&t.setAttribute(r.name,r.value);let n=Is();return n&&t.setAttribute("nonce",n),t.textContent=e.textContent,t}function $s(e){if(!e.hasAttribute("nonce"))return e.cloneNode(!0);let t=e.cloneNode(!0),n=Is();return n?t.setAttribute("nonce",n):t.removeAttribute("nonce"),t}function de(e){if(!e.hasAttribute("nonce"))return e.outerHTML;let t=e.cloneNode(!0);return t.removeAttribute("nonce"),t.outerHTML}function $n(e){let t=e.querySelector("title");t&&(document.title=t.textContent||"");let n=new Set;for(let r of document.head.children)n.add(de(r));for(let r of e.children)r.tagName==="SCRIPT"&&r.getAttribute("type")==="importmap"||r.tagName!=="BASE"&&r.tagName!=="TITLE"&&(n.has(de(r))||(r.tagName==="SCRIPT"?document.head.appendChild(Kn(r)):document.head.appendChild($s(r))))}function Fs(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(de(o));let s=new Set;for(let o of e.children)o.tagName==="SCRIPT"&&o.getAttribute("type")==="importmap"||o.tagName!=="BASE"&&s.add(de(o));for(let o of[...t.children])o.tagName==="SCRIPT"&&o.getAttribute("type")==="importmap"||o.tagName!=="BASE"&&o.tagName!=="TITLE"&&(s.has(de(o))||o.remove());for(let o of e.children)o.tagName==="SCRIPT"&&o.getAttribute("type")==="importmap"||o.tagName!=="BASE"&&o.tagName!=="TITLE"&&(r.has(de(o))||(o.tagName==="SCRIPT"?t.appendChild(Kn(o)):t.appendChild($s(o))))}function Ne(e){typeof customElements>"u"||Gn(e)}function Gn(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&&Gn(n.shadowRoot))}function os(e){for(let t of e.querySelectorAll("template[data-webjs-resolve]"))document.body.appendChild(t.cloneNode(!0))}async function Bs(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 f=r.indexOf(s);if(f!==-1)return{shell:r.slice(0,f),streaming:!0,reader:a?null:t,dec:n,rest:r.slice(f)};if(a)return{shell:r,streaming:!1};let p=i.exec(r);if(p){let u=p.index+p[0].length;return{shell:r.slice(0,u),streaming:!0,reader:t,dec:n,rest:r.slice(u)}}}}function Us(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 qs(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&&Gn(o)}async function Ds(e,t,n,r){let s=n,o=()=>{let i;for(;i=Us(s);){if(!r())return!1;qs(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 qt(e){for(let t of e.querySelectorAll("script"))t.replaceWith(Kn(t))}function Ea(e){return L.get(pe(e))||null}function Ca(){return fe.size}function va(){L.clear(),fe.clear(),je.length=0,Qe.clear(),Ht(),Wn()}function ka(){return j}function xa(){return++j}function Ta(){return q}function Na(e){q=e}function ja(){Ln.clear(),On=!1}function Ra(e){return Dt.test(e)}var ns,Z,M,j,jn,q,Rt,Dt,bs,Ln,On,aa,O,ua,Ss,As,fa,da,pa,L,fe,je,Qe,Re,et,J,Te,tt,Ft,Bt,In,kn=X(()=>{vn();Nt();Nt();Xr();Nn();ns="text/vnd.webjs-stream.html";Z=!1,M=null,j=0,jn=null;q=null,Rt=null;Dt=/\.(?: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;bs="_top";Ln=new Set;On=!1;aa=16,O=new Map;ua=8,Ss=3e4,As=3,fa=24,da=100,pa=250,L=new Map,fe=new Set,je=[],Qe=new Set,Re=null,et=null,J=null,Te=new WeakMap,tt=new Set;Ft=new WeakMap;Bt=new WeakMap;In=new Set(["value","checked","selected","indeterminate","disabled","open","popover"]);(typeof window>"u"||window.__WEBJS_CLIENT_ROUTER__!==!1)&&Fn()});function Kt(e,...t){return{_$webjs:"template",strings:e,values:t}}function N(e){return!!e&&typeof e=="object"&&e._$webjs==="template"}var C="w$";function Js(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 me(e){return!!e&&typeof e=="object"&&e._$webjsCss===!0}function Gt(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 Ys=Object.defineProperty;var X=(e,t)=>()=>(e&&(t=e(e=0)),t);var Qn=(e,t)=>{for(var n in t)Ys(e,n,{get:t[n],enumerable:!0})};function Or(e,t,n){oi.has(t)?Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0}):e[t]=n}async function ze(e){return JSON.stringify(await Mr(e))}function D(e){return Pr(JSON.parse(e))}async function Mr(e){let t=ii();return await ai(e,t),le(e,t)}function Pr(e){return G(e,fi())}function ii(){return{refCount:new Map,idOf:new Map,emitted:new Set,nextId:0,blobBytes:new Map,fdEntries:new Map}}async function ai(e,t){let n=[e];for(;n.length;){let r=n.pop();if(!pi(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(hi(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 le(e,t){if(e===null)return null;if(e===void 0)return{[k]:"undef"};let n=typeof e;if(n==="string"||n==="boolean")return e;if(n==="number")return Number.isNaN(e)?{[k]:"NaN"}:e===1/0?{[k]:"Inf"}:e===-1/0?{[k]:"-Inf"}:Object.is(e,-0)?{[k]:"-0"}:e;if(n==="bigint")return{[k]:"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{[k]:"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{[k]:"Ref",v:r};r!==void 0&&t.emitted.add(r);let s;if(e instanceof Date)s={[k]:"Date",v:Number.isNaN(e.getTime())?null:e.toISOString()};else if(e instanceof Error)s={[k]:"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={[k]:"File",v:Ve(o),n:e.name,t:e.type||"",m:e.lastModified}:s={[k]:"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,le(a,t)]);s={[k]:"FD",v:i}}else if(ArrayBuffer.isView(e)||e instanceof ArrayBuffer)s=ci(e);else if(e instanceof Map){let o=[];for(let[i,c]of e)o.push([le(i,t),le(c,t)]);s={[k]:"Map",v:o}}else if(e instanceof Set){let o=[];for(let i of e)o.push(le(i,t));s={[k]:"Set",v:o}}else if(Array.isArray(e))s=e.map(o=>le(o,t));else{s={};for(let o in e){if(!Object.prototype.hasOwnProperty.call(e,o))continue;let i=mi(o)?"_"+o:o;Or(s,i,le(e[o],t))}}if(r!==void 0){if(Array.isArray(s))return{[k]:"Arr",_id:r,v:s};s._id=r}return s}function ci(e){if(e instanceof ArrayBuffer)return{[k]:"buf",v:Ve(new Uint8Array(e))};if(e instanceof DataView)return{[k]:"dv",v:Ve(new Uint8Array(e.buffer,e.byteOffset,e.byteLength))};let t=e.constructor.name,n=li[t];if(!n)throw new TypeError(`Unsupported typed array: ${t}`);let r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return{[k]:n,v:Ve(r)}}function fi(){return{refs:new Map}}function G(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(G(e[i],t));return o}let n=e[k];if(typeof n=="string")return di(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=bi(o)?o.slice(1):o;Or(r,i,G(e[o],t))}return r}function di(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(G(i,n),G(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(G(i,n));return o}case"Arr":{let o=[];typeof r=="number"&&n.refs.set(r,o);for(let i of e.v)o.push(G(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=We(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=We(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=G(c,n);o.append(i,a)}return o}default:{if(t==="buf"){let i=We(e.v);return s(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength))}if(t==="dv"){let i=We(e.v);return s(new DataView(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)))}let o=ui[t];if(o){let i=We(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 pi(e){return e!==null&&typeof e=="object"}function hi(e){if(e===null||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function mi(e){return/^_+\$wj$/.test(e)||/^_+id$/.test(e)}function bi(e){return/^__+\$wj$/.test(e)||/^__+id$/.test(e)}function Ve(e){if(Ir)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 We(e){if(Ir){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 k,oi,li,ui,Ir,ke=X(()=>{k="_$wj",oi=new Set(["__proto__","constructor","prototype"]);li={Int8Array:"i8",Uint8Array:"u8",Uint8ClampedArray:"u8c",Int16Array:"i16",Uint16Array:"u16",Int32Array:"i32",Uint32Array:"u32",Float32Array:"f32",Float64Array:"f64",BigInt64Array:"bi64",BigUint64Array:"bu64"},ui={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};Ir=typeof Buffer<"u"&&typeof Buffer.from=="function"});var Gr={};Qn(Gr,{observeLazy:()=>Xi,observeViewportOnce:()=>ta});function Kr(e){let t=En.get(e);return t||(t=import(e).finally(()=>En.delete(e)),En.set(e,t),t)}function Xi(e){for(let[t,n]of Object.entries(e))ue.set(t.toLowerCase(),n);if(typeof IntersectionObserver>"u"){for(let t of ue.values())Kr(t);ue.clear();return}Je||(Je=new IntersectionObserver(Qi,{rootMargin:"200px"})),zr(),typeof MutationObserver<"u"&&new MutationObserver(()=>zr()).observe(document.body,{childList:!0,subtree:!0})}function zr(){if(!(!Je||!ue.size))for(let e of ue.keys())for(let t of document.querySelectorAll(e))Je.observe(t)}function Qi(e){for(let t of e){if(!t.isIntersecting)continue;let n=t.target.tagName.toLowerCase(),r=ue.get(n);r&&(Kr(r),ue.delete(n),Je?.unobserve(t.target))}}function ea(e){for(let t of e){if(!t.isIntersecting)continue;let n=Tt.get(t.target);Tt.delete(t.target),Ye?.unobserve(t.target),n&&n()}}function ta(e,t){return typeof IntersectionObserver>"u"?(t(),()=>{}):(Ye||(Ye=new IntersectionObserver(ea,{rootMargin:"200px"})),Tt.set(e,t),Ye.observe(e),()=>{Tt.delete(e),Ye?.unobserve(e)})}var ue,Je,En,Ye,Tt,Yr=X(()=>{ue=new Map,Je=null,En=new Map;Ye=null,Tt=new WeakMap});var Cn,vn=X(()=>{Cn=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(()=>(Yr(),Gr)).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(()=>(kn(),Jr)).then(({loadFrame:n})=>{this._webjsLoadedSrc!==t||!this.isConnected||n(this,t)})}}:null;typeof customElements<"u"&&Cn&&!customElements.get("webjs-frame")&&customElements.define("webjs-frame",Cn)});function ra(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 Tn(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 na,xn,Nt=X(()=>{na=new Set(["append","prepend","before","after","replace","update"]);xn=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=na.has(t)?this.querySelector("template"):null;try{for(let i of r){let c=o?o.content.cloneNode(!0):null;ra(t,i,c)}}finally{this.remove()}}}:null;typeof customElements<"u"&&xn&&!customElements.get("webjs-stream")&&customElements.define("webjs-stream",xn)});var Zr,Xr=X(()=>{Zr=typeof HTMLElement<"u"?class extends HTMLElement{connectedCallback(){this.style.display||(this.style.display="contents")}}:null;typeof customElements<"u"&&Zr&&!customElements.get("webjs-suspense")&&customElements.define("webjs-suspense",Zr)});function jt(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]'))es(n.textContent,n);for(let n of t.querySelectorAll("[data-webjs-seed]"))es(n.getAttribute("data-webjs-seed"),n,()=>n.removeAttribute("data-webjs-seed"))}}function es(e,t,n){if(e)try{let r=D(e);if(r&&typeof r=="object")for(let s in r)Ze.has(s)||Ze.set(s,r[s])}catch{}n?n():t.remove?.()}function sa(e,t,n){Qr||(Qr=!0,jt());let r=`${e}/${t}/${n}`;if(Ze.has(r)){let s=Ze.get(r);return Ze.delete(r),s}return ts}var Ze,ts,Qr,Nn=X(()=>{ke();Ze=new Map,ts=Symbol("webjs.seed.miss"),Qr=!1});var Jr={};Qn(Jr,{_FRAME_TOP:()=>bs,_LIVE_ATTRS:()=>In,_activeFrameId:()=>ms,_addNewHeadElements:()=>$n,_applyStreamedResolve:()=>qs,_blurOutgoingFocus:()=>Ot,_buildSubmitFormData:()=>ps,_bumpNavToken:()=>xa,_clearFormBusy:()=>Rs,_clearFrameBusy:()=>Ns,_collectChildrenSlots:()=>Me,_currentPageUrl:()=>Ta,_diffElementInPlace:()=>Ut,_eligibleAnchorHref:()=>Pt,_findAnchorInPath:()=>hs,_getSubmitAction:()=>ds,_getSubmitMethod:()=>fs,_isNonHtmlPath:()=>Ra,_keyOf:()=>Oe,_longestSharedPath:()=>ys,_markFormBusy:()=>js,_markFrameBusy:()=>Ts,_mergeHead:()=>Fs,_navToken:()=>ka,_onPopState:()=>Bn,_onSubmit:()=>Un,_prefetch:()=>Pe,_prefetchHasHoverPointer:()=>Es,_prefetchInflightSize:()=>Ca,_prefetchMode:()=>It,_prefetchPeek:()=>Ea,_prefetchSaysSaveData:()=>Hn,_prefetchSuppressed:()=>Cs,_prefetchTake:()=>vs,_reactivateScripts:()=>qt,_readStreamedShell:()=>Bs,_reconcileChildren:()=>zn,_regraftPermanentElements:()=>Os,_regraftPermanentInSlice:()=>Vn,_resetPrefetch:()=>va,_resetWarnOnce:()=>ja,_resolveTargetFrameId:()=>qn,_restoreOptimistic:()=>Xe,_runWithTransition:()=>Lt,_setCurrentPageUrl:()=>Na,_snapshotCache:()=>O,_streamBoundariesProgressively:()=>Ds,_takeResolveUnit:()=>Us,_viewTransitionsEnabled:()=>Ls,collectChildrenSlots:()=>Me,disableClientRouter:()=>as,enableClientRouter:()=>Fn,loadFrame:()=>ia,longestSharedPath:()=>ys,navigate:()=>cs,revalidate:()=>ls});function is(e){return typeof Document<"u"&&typeof Document.parseHTMLUnsafe=="function"?Document.parseHTMLUnsafe(e):typeof DOMParser<"u"?new DOMParser().parseFromString(e,"text/html"):null}function oa(){jn||typeof MutationObserver>"u"||typeof customElements>"u"||(jn=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)}}),jn.observe(document.body,{childList:!0,subtree:!0}))}function Fn(){Z||typeof document>"u"||(Z=!0,document.addEventListener("click",us,!1),document.addEventListener("submit",Un,!1),window.addEventListener("popstate",Bn),document.addEventListener("pointerover",Le,!0),document.addEventListener("focusin",Le,!0),document.addEventListener("touchstart",Le,{capture:!0,passive:!0}),document.addEventListener("pointerout",ks,!0),document.addEventListener("webjs:navigate",Pn),oa(),Pn(),typeof history<"u"&&"scrollRestoration"in history&&(Rt=history.scrollRestoration,history.scrollRestoration="manual"),typeof location<"u"&&(q=location.href))}function as(){Z&&(Z=!1,document.removeEventListener("click",us,!1),document.removeEventListener("submit",Un,!1),window.removeEventListener("popstate",Bn),document.removeEventListener("pointerover",Le,!0),document.removeEventListener("focusin",Le,!0),document.removeEventListener("touchstart",Le,{capture:!0}),document.removeEventListener("pointerout",ks,!0),document.removeEventListener("webjs:navigate",Pn),Ht(),Wn(),J&&(J.disconnect(),J=null),typeof history<"u"&&Rt!==null&&(history.scrollRestoration=Rt,Rt=null),q=null)}async function cs(e,t){let n=new URL(e,location.href);if(n.origin!==location.origin){location.href=e;return}await Dn(n.href,t?.replace??!1,null)}async function ia(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};M&&M.abort(),M=new AbortController;let s=M.signal,o=++j;return $t(r.href,n,!1,null,"GET",null,s,o)}function ls(e){if(!e){O.clear(),L.clear();return}let t=new URL(e,location.href),n=t.pathname+t.search;O.delete(n),L.delete(n)}function us(e){if(!Z||e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;let t=hs(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||Dt.test(r.pathname))return;e.preventDefault();let s=qn(t);Dn(n,!1,s)}function Bn(e){Dn(location.href,!0,null)}function Un(e){if(!Z||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=fs(t,n);if(s==="dialog")return;let o=ds(t,n),i;try{i=new URL(o,location.href)}catch{return}if(i.origin!==location.origin||Dt.test(i.pathname))return;let c=ps(t,n);e.preventDefault();let a=qn(n||t);la(i.href,s,c,a,t)}function fs(e,t){return(t&&t.getAttribute("formmethod")||e.getAttribute("method")||"get").toLowerCase()}function ds(e,t){return t&&t.hasAttribute("formaction")?t.getAttribute("formaction")||"":e.getAttribute("action")||e.action||location.href}function ps(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 hs(e){for(let t of e.composedPath())if(t instanceof HTMLAnchorElement)return t;return null}function ms(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 qn(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===bs)return null;let r=typeof document<"u"?document.getElementById(n):null;return r&&r.tagName&&r.tagName.toLowerCase()==="webjs-frame"?n:(gs(`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 ms(e)}function gs(e,t){Ln.has(e)||(Ln.add(e),typeof console<"u"&&console.warn&&console.warn(t))}function rs(){if(typeof process<"u"&&process.env||On||typeof document>"u"||typeof getComputedStyle!="function")return;let e=document.documentElement;if(!e)return;On=!0;let t;try{t=getComputedStyle(e).scrollBehavior}catch{return}t==="smooth"&&gs("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 Mt(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 Me(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 ys(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 ws(e){let t=pe(e);document.dispatchEvent(new CustomEvent("webjs:before-cache",{detail:{url:e}})),O.has(t)&&O.delete(t);let n={html:document.documentElement.outerHTML,scrollX:typeof window<"u"&&window.scrollX||0,scrollY:typeof window<"u"&&window.scrollY||0};for(O.set(t,n);O.size>aa;){let r=O.keys().next().value;O.delete(r)}}function ca(e){let t=pe(e),n=O.get(t);return n==null?null:(O.delete(t),O.set(t,n),typeof n=="string"?{html:n,scrollX:0,scrollY:0}:n)}function pe(e){let t=new URL(e,location.href);return t.pathname+t.search}async function Dn(e,t,n){M&&M.abort(),M=new AbortController;let r=M.signal,s=++j;q&&ws(q);let o=setTimeout(()=>{Mt(!0),o=null},150),i=null;t||(i=Ps());try{if(t){let c=ca(e);if(c){let a=is(c.html);if(a){Ms(a,n,!0,null),typeof window<"u"&&window.scrollTo({left:c.scrollX,top:c.scrollY,behavior:"instant"}),$t(e,n,!1,i,"GET",null,r,s).catch(()=>{});return}}typeof window<"u"&&window.scrollTo({left:0,top:0,behavior:"instant"})}await $t(e,n,!t,i,"GET",null,r,s)}finally{o&&clearTimeout(o),s===j&&(Mt(!1),typeof location<"u"&&(q=location.href))}}async function la(e,t,n,r,s){M&&M.abort(),M=new AbortController;let o=M.signal,i=++j,c=t==="get"||t==="head",a=new URL(e,location.href);if(c){a.search="";for(let[b,g]of n)a.searchParams.append(b,typeof g=="string"?g:g.name)}q&&ws(q);let l=setTimeout(()=>{Mt(!0),l=null},150),f=Ps(),p=s?js(s,i,a.href):null,u=!1;try{let b=await $t(a.href,r,!0,f,c?"GET":t.toUpperCase(),c?null:n,o,i);u=!!(b&&b.ok),!c&&i===j&&(O.clear(),L.clear())}finally{p&&Rs(p,i,a.href,u),l&&clearTimeout(l),i===j&&(Mt(!1),typeof location<"u"&&(q=location.href))}}function _s(){return[...Me(document.body).keys()].join(",")}function Hn(){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 Es(){try{if(typeof matchMedia=="function")return matchMedia("(hover: hover) and (pointer: fine)").matches}catch{}return!0}function ha(e){let t=e.getAttribute("rel");return t?t.toLowerCase().split(/\s+/).filter(Boolean):[]}function Pt(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||Dt.test(n.pathname)?null:t}function Cs(e){if(e.hasAttribute("data-no-prefetch"))return!0;let t=ha(e);return t.includes("external")||t.includes("no-prefetch")}function It(e){if(Cs(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 Es()?"intent":"viewport"}}function Pe(e){if(!Z||typeof fetch!="function"||Hn())return;let t=pe(e);if(fe.has(t)||Qe.has(t))return;let n=L.get(t);if(n&&Mn()-n.at<Ss)return;if(fe.size>=As){for(Qe.add(t),je.push(e);je.length>fa;){let o=je.shift();Qe.delete(pe(o))}return}fe.add(t);let r={"x-webjs-router":"1","x-webjs-prefetch":"1"},s=_s();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.redirected&&o.url?o.url:e,l=await o.text();ba(t,{html:l,build:c,finalUrl:a,at:Mn()})}).catch(()=>{}).finally(()=>{fe.delete(t),ma()})}function ma(){for(;je.length&&fe.size<As;){let e=je.shift();Qe.delete(pe(e)),Pe(e)}}function ba(e,t){for(L.has(e)&&L.delete(e),L.set(e,t);L.size>ua;){let n=L.keys().next().value;L.delete(n)}typeof document<"u"&&document.dispatchEvent(new CustomEvent("webjs:prefetch",{detail:{url:t.finalUrl,key:e,from:"prefetch"}}))}function vs(e){let t=pe(e),n=L.get(t);return!n||(L.delete(t),Mn()-n.at>=Ss)?null:n}function Mn(){try{if(typeof performance<"u"&&typeof performance.now=="function")return performance.now()}catch{}return 0}function Le(e){if(!Z)return;let t=xs(e.target);if(!t)return;let n=It(t);if(n==="none"||n==="render")return;let r=Pt(t);if(r){if(e.type==="touchstart"){Pe(r);return}n==="intent"&&(et===t&&Re||(Ht(),et=t,Re=setTimeout(()=>{Re=null,et=null,Pe(r)},da)))}}function ks(e){let t=xs(e.target);t&&t===et&&Ht()}function Ht(){Re&&(clearTimeout(Re),Re=null),et=null}function Wn(){for(let e of tt)clearTimeout(e);tt.clear(),Te=new WeakMap}function xs(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 Pn(){if(typeof document>"u"||Hn())return;let e=typeof IntersectionObserver<"u";e&&(J?(J.disconnect(),Wn()):J=new IntersectionObserver(t=>{for(let n of t){let r=n.target;if(n.isIntersecting){if(Te.has(r))continue;let s=setTimeout(()=>{tt.delete(s),Te.delete(r),J.unobserve(r);let o=Pt(r);o&&It(r)==="viewport"&&Pe(o)},pa);Te.set(r,s),tt.add(s)}else{let s=Te.get(r);s&&(clearTimeout(s),tt.delete(s),Te.delete(r))}}},{threshold:.5}));for(let t of document.querySelectorAll("a[href]")){let n=It(t);if(n==="render"){let r=Pt(t);r&&Pe(r)}else n==="viewport"&&e&&J.observe(t)}}function ga(e){if(typeof document>"u"||!document.body)return!1;let t=Me(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 Rn(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||ga(t)||typeof location<"u"&&(location.href=e)}async function $t(e,t,n,r,s,o,i,c){s=s||"GET";let a=typeof c=="number"?c:j,l,f=null,p=null,u=null,b=!1,g=e,m=t?Ts(t,a):null;try{try{let d=s==="GET"&&!o&&!t?vs(e):null;if(d)l=d.html,p=d.build,g=d.finalUrl,u=200,b=!0;else{let y={"x-webjs-router":"1"},w=_s();w&&(y["x-webjs-have"]=w),t&&(y["x-webjs-frame"]=t),o!=null&&s!=="GET"&&s!=="HEAD"&&(y.accept=ns+", text/html");let S={method:s,headers:y,credentials:"same-origin"};i&&(S.signal=i),o!=null&&s!=="GET"&&s!=="HEAD"&&(S.body=o);let A=await fetch(e,S);u=A.status,b=A.ok;let v=A.headers.get("content-type")||"",T=/^text\/html\b/i.test(v);if(v.toLowerCase().indexOf(ns)===0){let _=await A.text();return a===j&&(Xe(r),Tn(_)),{ok:b,status:u,aborted:!1}}if(A.redirected&&A.url&&(g=A.url),A.status===204||A.status===205)return a===j&&n&&history.pushState(null,"",g),{ok:b,status:u,aborted:!1};if(!T)return a===j&&(Xe(r),Rn(e,A.status,null)),{ok:!1,status:u,aborted:!1};p=A.headers.get("x-webjs-build");let E=await Bs(A);l=E.shell,E.streaming&&(f=E)}}catch(d){return d&&d.name==="AbortError"?{ok:!1,status:null,aborted:!0}:a!==j?{ok:!1,status:null,aborted:!0}:(Xe(r),Rn(e,null,d instanceof Error?d:new Error(String(d))),{ok:!1,status:null,aborted:!1})}if(a!==j){if(f&&f.reader)try{f.reader.cancel()}catch{}return{ok:!1,status:u,aborted:!0}}let h=is(l);if(!h)return Xe(r),Rn(e,null,new Error("navigation response did not parse as HTML")),{ok:!1,status:u,aborted:!1};if(Ms(h,t,!1,g,p),n&&history.pushState(null,"",g),n){let d=new URL(g);if(d.hash){let y=document.getElementById(d.hash.slice(1));y?y.scrollIntoView():(rs(),window.scrollTo({left:0,top:0,behavior:"instant"}))}else rs(),window.scrollTo({left:0,top:0,behavior:"instant"})}return f&&(f.reader||f.rest)&&Ds(f.reader,f.dec,f.rest,()=>a===j),document.dispatchEvent(new CustomEvent("webjs:navigate",{detail:{url:g,frameId:t,from:"navigate"}})),{ok:b,status:u,aborted:!1}}finally{m&&Ns(m,a)}}function Ts(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=Ft.has(n);return Ft.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 Ns(e,t){if(Ft.get(e)!==t)return;Ft.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 js(e,t,n){let r=Bt.has(e);return Bt.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 Rs(e,t,n,r){if(Bt.get(e)!==t)return;Bt.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 ss(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+=de(r);return n}function Ls(){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 Lt(e,t){let n=typeof document<"u"?document.startViewTransition:void 0;if(Ls()&&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 Os(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=ya(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 ya(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 wa(e){if(!(!e||!e.start))for(let t=e.start.nextSibling;t&&t!==e.end;t=t.nextSibling)t.nodeType===1&&Ne(t)}function Ms(e,t,n,r,s){try{jt(e)}catch{}try{typeof sessionStorage<"u"&&(!r||t||n)&&sessionStorage.removeItem("webjs:importmap-reload")}catch{}if(r&&!t&&!n){let f=document.querySelector('script[type="importmap"]'),p=f?f.getAttribute("data-webjs-build"):null,u=!1;if(s&&p&&(u=s!==p),!u&&e.head&&e.head.children.length>0){let b=ss(document),g=ss(e);b!==g&&(u=!0)}if(u&&typeof location<"u")try{let b="webjs:importmap-reload";if(sessionStorage&&sessionStorage.getItem(b))sessionStorage.removeItem(b);else{sessionStorage&&sessionStorage.setItem(b,"1"),location.href=r;return}}catch{location.href=r;return}else if(!u)try{typeof sessionStorage<"u"&&sessionStorage.removeItem("webjs:importmap-reload")}catch{}}if(t){let f=document.querySelector(`webjs-frame#${CSS.escape(t)}`),p=e.querySelector(`webjs-frame#${CSS.escape(t)}`);if(f&&p){$n(e.head),Lt(()=>{Aa(f,p),qt(f),Ne(f),Ot()},()=>Ne(f)),os(e.body);return}let u=new CustomEvent("webjs:frame-missing",{bubbles:!0,cancelable:!0,detail:{frameId:t,url:r||(typeof location<"u"?location.href:null),document:e}});(f||document).dispatchEvent(u),u.defaultPrevented||console.warn(`[webjs] frame "${t}" was not in the navigation response, leaving it unchanged. Handle "webjs:frame-missing" (preventDefault) to override.`);return}let o=Me(document.body),i=Me(e.body),c=ys(o,i);if(c){$n(e.head),Lt(()=>{_a(o.get(c),i.get(c),e),Ot()},()=>wa(o.get(c))),os(e.body);return}Fs(e.head),Os(document.body,e.body);let a=[...e.body.childNodes];Lt(()=>{document.body.replaceChildren(...a),qt(document.body),Ne(document.body),Ot()},()=>Ne(document.body))}function Ot(){let e=document.activeElement;!e||e===document.body||e===document.documentElement||typeof e.blur=="function"&&e.blur()}function _a(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),Sa(r,e.start,e.end,s,o);for(let i=e.start.nextSibling;i&&i!==e.end;i=i.nextSibling)i.nodeType===1&&(qt(i),Ne(i))}function Sa(e,t,n,r,s){let o=new Map;for(let a of r){if(a.nodeType!==1)continue;let l=Oe(a);l&&o.set(l,a)}let i=n,c=[];for(let a of s){if(a.nodeType===1){let l=Oe(a);if(l&&o.has(l)){let f=o.get(l);Ut(f,a),c.push(f),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 Ut(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),!In.has(r.name)&&e.getAttribute(r.name)!==r.value&&e.setAttribute(r.name,r.value);for(let r of[...e.attributes])In.has(r.name)||n.has(r.name)||e.removeAttribute(r.name);zn(e,t)}function zn(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=Oe(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=Oe(a);if(l&&s.has(l)){let p=s.get(l);Ut(p,a),o.push(p),s.delete(l);continue}let f=n[c];if(f&&f.nodeType===1&&!Oe(f)&&f.tagName===a.tagName){Ut(f,a),o.push(f);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 Oe(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=Me(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:j}}function Xe(e){if(!e||e.token!==j)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 Aa(e,t){zn(e,t)}function Is(){if(typeof document>"u")return"";let e=document.querySelector('meta[name="csp-nonce"]');return e&&e.getAttribute("content")||""}function Kn(e){let t=document.createElement("script");for(let r of e.attributes)r.name!=="nonce"&&t.setAttribute(r.name,r.value);let n=Is();return n&&t.setAttribute("nonce",n),t.textContent=e.textContent,t}function $s(e){if(!e.hasAttribute("nonce"))return e.cloneNode(!0);let t=e.cloneNode(!0),n=Is();return n?t.setAttribute("nonce",n):t.removeAttribute("nonce"),t}function de(e){if(!e.hasAttribute("nonce"))return e.outerHTML;let t=e.cloneNode(!0);return t.removeAttribute("nonce"),t.outerHTML}function $n(e){let t=e.querySelector("title");t&&(document.title=t.textContent||"");let n=new Set;for(let r of document.head.children)n.add(de(r));for(let r of e.children)r.tagName==="SCRIPT"&&r.getAttribute("type")==="importmap"||r.tagName!=="BASE"&&r.tagName!=="TITLE"&&(n.has(de(r))||(r.tagName==="SCRIPT"?document.head.appendChild(Kn(r)):document.head.appendChild($s(r))))}function Fs(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(de(o));let s=new Set;for(let o of e.children)o.tagName==="SCRIPT"&&o.getAttribute("type")==="importmap"||o.tagName!=="BASE"&&s.add(de(o));for(let o of[...t.children])o.tagName==="SCRIPT"&&o.getAttribute("type")==="importmap"||o.tagName!=="BASE"&&o.tagName!=="TITLE"&&(s.has(de(o))||o.remove());for(let o of e.children)o.tagName==="SCRIPT"&&o.getAttribute("type")==="importmap"||o.tagName!=="BASE"&&o.tagName!=="TITLE"&&(r.has(de(o))||(o.tagName==="SCRIPT"?t.appendChild(Kn(o)):t.appendChild($s(o))))}function Ne(e){typeof customElements>"u"||Gn(e)}function Gn(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&&Gn(n.shadowRoot))}function os(e){for(let t of e.querySelectorAll("template[data-webjs-resolve]"))document.body.appendChild(t.cloneNode(!0))}async function Bs(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 f=r.indexOf(s);if(f!==-1)return{shell:r.slice(0,f),streaming:!0,reader:a?null:t,dec:n,rest:r.slice(f)};if(a)return{shell:r,streaming:!1};let p=i.exec(r);if(p){let u=p.index+p[0].length;return{shell:r.slice(0,u),streaming:!0,reader:t,dec:n,rest:r.slice(u)}}}}function Us(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 qs(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&&Gn(o)}async function Ds(e,t,n,r){let s=n,o=()=>{let i;for(;i=Us(s);){if(!r())return!1;qs(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 qt(e){for(let t of e.querySelectorAll("script"))t.replaceWith(Kn(t))}function Ea(e){return L.get(pe(e))||null}function Ca(){return fe.size}function va(){L.clear(),fe.clear(),je.length=0,Qe.clear(),Ht(),Wn()}function ka(){return j}function xa(){return++j}function Ta(){return q}function Na(e){q=e}function ja(){Ln.clear(),On=!1}function Ra(e){return Dt.test(e)}var ns,Z,M,j,jn,q,Rt,Dt,bs,Ln,On,aa,O,ua,Ss,As,fa,da,pa,L,fe,je,Qe,Re,et,J,Te,tt,Ft,Bt,In,kn=X(()=>{vn();Nt();Nt();Xr();Nn();ns="text/vnd.webjs-stream.html";Z=!1,M=null,j=0,jn=null;q=null,Rt=null;Dt=/\.(?: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;bs="_top";Ln=new Set;On=!1;aa=16,O=new Map;ua=8,Ss=3e4,As=3,fa=24,da=100,pa=250,L=new Map,fe=new Set,je=[],Qe=new Set,Re=null,et=null,J=null,Te=new WeakMap,tt=new Set;Ft=new WeakMap;Bt=new WeakMap;In=new Set(["value","checked","selected","indeterminate","disabled","open","popover"]);(typeof window>"u"||window.__WEBJS_CLIENT_ROUTER__!==!1)&&Fn()});function Kt(e,...t){return{_$webjs:"template",strings:e,values:t}}function N(e){return!!e&&typeof e=="object"&&e._$webjs==="template"}var C="wjm-";function Js(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 me(e){return!!e&&typeof e=="object"&&e._$webjsCss===!0}function Gt(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 st(e){return!e||!e.length?"":`<style>${e.map(t=>t.text).join(`
3
3
  `)}</style>`}function ot(e){return String(e).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function $(e){return String(e).replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;")}var er=Symbol.for("webjs.repeat");function tr(e,t,n){return{[er]:!0,items:[...e],keyFn:t,templateFn:n}}function Q(e){return!!e&&typeof e=="object"&&e[er]===!0}function Yt(e){return{_$webjs:"unsafe-html",value:String(e??"")}}function be(e){return!!e&&typeof e=="object"&&e._$webjs==="unsafe-html"}function Zs(e){return{_$webjs:"live",value:e}}function ge(e){return!!e&&typeof e=="object"&&e._$webjs==="live"}function Xs(e,t){return{_$webjs:"keyed",key:e,value:t}}function ee(e){return!!e&&typeof e=="object"&&e._$webjs==="keyed"}function Qs(e,t){return{_$webjs:"guard",deps:e,fn:t}}function te(e){return!!e&&typeof e=="object"&&e._$webjs==="guard"}function eo(e){return{_$webjs:"template-content",template:e}}function ye(e){return!!e&&typeof e=="object"&&e._$webjs==="template-content"}function to(e){return{_$webjs:"ref",target:e}}function ne(e){return!!e&&typeof e=="object"&&e._$webjs==="ref"}function no(){return{value:void 0}}function ro(e){return{_$webjs:"cache",value:e}}function re(e){return!!e&&typeof e=="object"&&e._$webjs==="cache"}function so(...e){return{_$webjs:"until",args:e}}function se(e){return!!e&&typeof e=="object"&&e._$webjs==="until"}function oo(e,t){return{_$webjs:"async-append",iterable:e,mapper:t}}function we(e){return!!e&&typeof e=="object"&&e._$webjs==="async-append"}function io(e,t){return{_$webjs:"async-replace",iterable:e,mapper:t}}function _e(e){return!!e&&typeof e=="object"&&e._$webjs==="async-replace"}function ao(e){return{_$webjs:"watch",signal:e}}function oe(e){return!!e&&typeof e=="object"&&e._$webjs==="watch"}var F=null,W=!1,Ae=0,Se=null,Jt=0,nr=(e,t)=>Object.is(e,t),at=()=>{},rr=()=>!1;function sr(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)sr(r,e);if(e.watched)try{e.watched.call(e.wrapper)}catch(r){console.error(r)}}}function $e(e,t){if(e.liveConsumers&&(e.liveConsumers.delete(t),e.liveConsumers.size===0)){if(e.producers&&e.producers.length>0)for(let n of e.producers)$e(n,e);if(e.unwatched)try{e.unwatched.call(e.wrapper)}catch(n){console.error(n)}}}function nn(e){if(W)throw new Error("Signal read during notification phase");if(F===null)return;let t=F,n=t.nextProducerIndex++;n<t.producers.length&&t.producers[n]!==e&&Qt(t)&&$e(t.producers[n],t),t.producers[n]!==e&&(t.producers[n]=e,Qt(t)&&sr(e,t)),t.producerLastReadVersions[n]=e.version}function Qt(e){return e.consumerIsAlwaysLive||e.liveConsumers&&e.liveConsumers.size>0}function or(e){if(!e.liveConsumers||e.liveConsumers.size===0)return;let t=W;W=!0;try{for(let n of e.liveConsumers)n.dirty||co(n)}finally{W=t}}function co(e){e.dirty=!0,or(e),e.consumerMarkedDirty.call(e.wrapper||e)}function ct(e){if(!(!e.dirty&&e.lastCleanEpoch===Ae)){if(!e.producerMustRecompute()&&!lo(e)){e.dirty=!1,e.lastCleanEpoch=Ae;return}e.producerRecomputeValue(),e.dirty=!1,e.lastCleanEpoch=Ae}}function lo(e){for(let t=0;t<e.producers.length;t++){let n=e.producers[t],r=e.producerLastReadVersions[t];if(r!==n.version||(ct(n),r!==n.version))return!0}return!1}function en(e){e&&(e.nextProducerIndex=0);let t=F;return F=e,t}function tn(e,t){if(F=t,!!e){if(Qt(e))for(let n=e.nextProducerIndex;n<e.producers.length;n++)$e(e.producers[n],e);for(;e.producers.length>e.nextProducerIndex;)e.producers.pop(),e.producerLastReadVersions.pop()}}var lt=class{constructor(t,n){this.__value=t,this.version=0,this.lastCleanEpoch=Ae,this.dirty=!1,this.producers=[],this.producerLastReadVersions=[],this.liveConsumers=void 0,this.consumerAllowSignalWrites=!0,this.consumerIsAlwaysLive=!1,this.producerMustRecompute=rr,this.producerRecomputeValue=at,this.consumerMarkedDirty=at,this.wrapper=this,this.__isSignal=!0,this.__equal=n?.equals||nr,this.watched=n?.[rn],this.unwatched=n?.[sn]}get(){return nn(this),this.__value}peek(){return this.__value}set(t){if(W)throw new Error("Signal write during notification phase");this.__equal.call(this,this.__value,t)||(this.__value=t,this.version++,Ae++,Se!==null?ir(this):or(this))}};function ir(e){let t=W;W=!0;try{if(!e.liveConsumers)return;for(let n of e.liveConsumers)n.dirty||(n.dirty=!0,n.__isWatcher?Se.add(n):ir(n))}finally{W=t}}var Zt=Symbol("unset"),Xt=Symbol("computing"),it=Symbol("errored"),Fe=class{constructor(t,n){this.__fn=t,this.__value=Zt,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||nr,this.watched=n?.[rn],this.unwatched=n?.[sn];let r=this;this.producerMustRecompute=function(){return r.__value===Zt||r.__value===Xt},this.producerRecomputeValue=function(){if(r.__value===Xt)throw new Error("Detected cycle in computations.");let s=r.__value;r.__value=Xt;let o=en(r),i,c=!1;try{i=r.__fn.call(r.wrapper)}catch(l){i=it,r.__error=l,c=!0}finally{tn(r,o)}if(!c&&(s!==Zt&&s!==it)&&r.__equal.call(r.wrapper,s,i)){r.__value=s;return}r.__value=i,r.version++},this.consumerMarkedDirty=at}get(){if(ct(this),nn(this),this.__value===it)throw this.__error;return this.__value}peek(){if(ct(this),this.__value===it)throw this.__error;return this.__value}},ut=class{constructor(t){this.__notify=t,this.version=0,this.lastCleanEpoch=Ae,this.dirty=!1,this.producers=[],this.producerLastReadVersions=[],this.nextProducerIndex=0,this.liveConsumers=void 0,this.consumerAllowSignalWrites=!1,this.consumerIsAlwaysLive=!0,this.producerMustRecompute=rr,this.producerRecomputeValue=at,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=en(this);try{for(let r of t)nn(r),r.__isComputed&&ct(r)}finally{tn(this,n)}this.dirty=!1}unwatch(...t){for(let n=this.producers.length-1;n>=0;n--)t.includes(this.producers[n])&&($e(this.producers[n],this),this.producers.splice(n,1),this.producerLastReadVersions.splice(n,1),this.nextProducerIndex=Math.min(this.nextProducerIndex,this.producers.length))}getPending(){return this.producers.filter(t=>t.__isComputed&&t.dirty)}observe(t){let n=en(this),r;try{r=t()}finally{tn(this,n)}return this.dirty=!1,r}dispose(){for(let t of this.producers)$e(t,this);this.producers=[],this.producerLastReadVersions=[],this.__notify=null}},rn=Symbol("watched"),sn=Symbol("unwatched");function uo(e){let t=F;F=null;try{return e()}finally{F=t}}function fo(e){return e.producers.slice()}function po(e){return e.liveConsumers?[...e.liveConsumers]:[]}function ho(e){return!!e.liveConsumers&&e.liveConsumers.size>0}function mo(e){return e.producers.length>0}function bo(){return F&&F.__isComputed?F:null}function go(e){Jt++,Se===null&&(Se=new Set);try{e()}finally{if(Jt--,Jt===0){let t=Se;Se=null;for(let n of t)n.__fire()}}}var Be={State:lt,Computed:Fe,subtle:{Watcher:ut,untrack:uo,introspectSources:fo,introspectSinks:po,hasSinks:ho,hasSources:mo,currentComputed:bo,watched:rn,unwatched:sn}};function yo(e,t){return new lt(e,t)}function wo(e,t){return new Fe(e,t)}function _o(e){return!!(e&&typeof e=="object"&&e.__isSignal===!0)}function So(e){let t=!1,n=!1,r=new Fe(e),s=new ut(()=>{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 Ao=`${C}s`,Eo=`${C}e`;function ar(e){if(!e||e.nodeType!==8)return!1;let t=e.nodeValue;return t===Ao||t===Eo}function Co(e){for(let t of e.addedNodes)if(ar(t))return!0;for(let t of e.removedNodes)if(ar(t))return!0;return!1}function dr(){return typeof HTMLElement<"u"&&typeof HTMLSlotElement<"u"}var qe=dr(),ie=Symbol("webjs.slot.state"),V="data-webjs-light",ae="data-projection",De="actual",pr="fallback",ht=Symbol("webjs.slot.fallbackFrag"),vo=64,Ue=null,on=null,ft=null,cr=!1;function ko(){cr||(qe=dr(),qe&&(Ue=HTMLSlotElement.prototype.assignedNodes,on=HTMLSlotElement.prototype.assignedElements,ft=Object.getOwnPropertyDescriptor(Element.prototype,"assignedSlot"),HTMLSlotElement.prototype.assignedNodes=function(t){return this.hasAttribute(V)&&!lr(this)?an(this,t):Ue?Ue.call(this,t):[]},HTMLSlotElement.prototype.assignedElements=function(t){return this.hasAttribute(V)&&!lr(this)?an(this,t).filter(n=>n.nodeType===1):on?on.call(this,t):[]},Object.defineProperty(Element.prototype,"assignedSlot",{configurable:!0,enumerable:!0,get:function(){let t=ft&&ft.get?ft.get.call(this):null;return t||xo(this)}}),cr=!0))}ko();function lr(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 an(e,t){if(e.getAttribute(ae)===pr)return[];let n=Array.from(e.childNodes);return!t||!t.flatten?n:cn(n,new Set,0)}function cn(e,t,n){if(n>=vo)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(V)){let i=an(o,{flatten:!1});if(i.length>0)for(let c of cn(i,t,n+1))r.push(c);else for(let c of cn(Array.from(o.childNodes),t,n+1))r.push(c)}else if(Ue){let i=Ue.call(o,{flatten:!0});for(let c of i)r.push(c)}else r.push(s)}else r.push(s);return r}function xo(e){let t=e.parentElement;for(;t;){if(t.tagName==="SLOT"&&t.hasAttribute(V))return t.getAttribute(ae)===De?t:null;t=t.parentElement}return null}function z(e){let t=e,n=t[ie];return n||(n={assignedByName:new Map,pendingByName:new Map,lastSnapshot:new WeakMap,nameObservers:new WeakMap,childObserver:null,scheduled:!1,ownedSlots:new Set},t[ie]=n),n}function ln(e){return!!e[ie]}function hr(e){let t=z(e);for(;e.firstChild;){let n=e.firstChild,r=dt(n);pt(t.assignedByName,r,n),e.removeChild(n)}}function mr(e){let t=z(e),n=e.querySelectorAll(`slot[${V}]`);for(let r of n){let s=r;if(s.getAttribute(ae)!==De)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 dt(e){if(e.nodeType!==1)return null;let n=e.getAttribute("slot");return n||null}function pt(e,t,n){let r=e.get(t);r||(r=[],e.set(t,r)),r.push(n)}function br(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 gr(e){if(!qe)return;let t=z(e);t.childObserver||(t.childObserver=new MutationObserver(n=>{let r=!1;for(let s of n)if(!Co(s)){if(s.type==="childList"){for(let o of s.addedNodes)o.parentElement===e&&(pt(t.assignedByName,dt(o),o),r=!0);for(let o of s.removedNodes)e.contains(o)||ur(t,o)&&(r=!0)}else if(s.type==="attributes"&&s.attributeName==="slot"){let o=s.target;(ur(t,o)||o.parentElement===e)&&(pt(t.assignedByName,dt(o),o),r=!0)}}r&&mt(e)}),t.childObserver.observe(e,{childList:!0,attributes:!0,attributeFilter:["slot"],subtree:!0}))}function yr(e){let t=e[ie];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 ur(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 mt(e){let t=z(e);t.scheduled||(t.scheduled=!0,queueMicrotask(()=>{t.scheduled=!1,To(e)}))}function To(e){if(!qe)return;let t=e[ie];if(!t)return;let n=Array.from(e.querySelectorAll(`slot[${V}]`)),r=new Set(n);for(let i of t.ownedSlots)r.has(i)||No(t,i);for(let i of r)t.ownedSlots.has(i)||Lo(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 f of c)l.push(f);for(let f of a)l.indexOf(f)===-1&&l.push(f);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 f=c[l];l===0&&a.length>0?jo(t,f,a)&&o.push(f):Ro(t,f)&&o.push(f)}}for(let i of o)Oo(i)}function No(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;br(e.pendingByName,s,r)}e.lastSnapshot.delete(t)}function jo(e,t,n){let r=t.getAttribute(ae)!==De,s=e.lastSnapshot.get(t)||[];if(!r&&Mo(s,n))return!1;let i=t[ht];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(ae,De),e.lastSnapshot.set(t,n.slice()),!0}function Ro(e,t){let n=t.getAttribute(ae)===De;if(t.setAttribute(ae,pr),!n)return fr(t),!1;for(e.lastSnapshot.delete(t);t.firstChild;)t.removeChild(t.firstChild);return fr(t),!0}function fr(e){let t=e[ht];!t||t.childNodes.length===0||e.appendChild(t)}function Lo(e,t){if(!qe)return;let n=z(e);if(n.nameObservers.has(t))return;let r=new MutationObserver(()=>mt(e));r.observe(t,{attributes:!0,attributeFilter:["name"]}),n.nameObservers.set(t,r)}function wr(e,t){if(!ln(e))return;let n=z(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);br(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 Oo(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 _r=new WeakMap,un=Symbol.for("webjs.instance");function ve(e,t){let n=t,r=n[un];if(N(e)){let s=e;if(r&&r.strings===s.strings){Ee(r,s.values);return}r&&Sr(r,t);let o=t.firstChild;o&&o.nodeType===8&&o.data==="webjs-hydrate"&&o.remove();let i=$o(s,t);n[un]=i;return}if(r&&Sr(r,t),n[un]=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 gt(e){let{strings:t}=e,n=_r.get(t);if(n)return n;let r=[],s="",o="text",i="",c=0,a="",l=0,f=null,p="",u="";for(let g=0;g<t.length;g++){let m=t[g];for(let h=0;h<m.length;h++){let d=m[h];switch(o){case"text":s+=d,d==="<"&&(o="tag-open");break;case"tag-open":s+=d,d==="!"?o="bang-1":d==="/"?(o="tag-name",p=""):/[a-zA-Z]/.test(d)?(o="tag-name",p=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=p==="script"||p==="style"?"rawtext":"text",o==="rawtext"&&(u="")):/\s/.test(d)?o="in-tag":p+=d.toLowerCase();break;case"in-tag":s+=d,d===">"?(o=p==="script"||p==="style"?"rawtext":"text",o==="rawtext"&&(u="")):!/\s/.test(d)&&d!=="/"&&(o="attr-name",i=d,c=s.length-1);break;case"rawtext":s+=d,u=(u+d.toLowerCase()).slice(-9),(u.endsWith("<\/script>")||u.endsWith("</style>"))&&(o="text",u="",p="");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(f){let y=f.firstPartIdx,w=[];for(let E=y;E<r.length;E++)(r[E].kind==="noop"||r[E].kind==="attr-mixed")&&w.push(E);let S=[],A=t[w[0]],v=A.lastIndexOf(a);S.push(v>=0?A.slice(v+1):A);for(let E=1;E<w.length;E++)S.push(t[w[E]]);let T=t[w[w.length-1]+1],P=T.indexOf(a);S.push(P>=0?T.slice(0,P):T),r[y]={kind:"attr-mixed",path:[],name:f.name,statics:S,group:w},f=null}o="in-tag",i=""}break}}if(g<t.length-1){let h=r.length;if(o==="comment"){l=0,r.push({kind:"noop",path:[]});continue}if(o==="rawtext"){u="",r.push({kind:"noop",path:[]});continue}if(o==="text")s+=`<!--${C}${h}-->`,r.push({kind:"child",path:[]});else if(o==="in-tag"){let d=`data-${C}${h}`;s+=`${d}=""`,r.push({kind:"element",path:[]})}else if(o==="after-eq"){let d=i[0],y=i.slice(1);if(d==="@"||d==="."||d==="?"){s=s.slice(0,c);let w=d==="@"?"event":d==="."?"prop":"bool",S=`data-${C}${h}`;s+=`${S}=""`,r.push({kind:w,path:[],name:y})}else{s=s.slice(0,c);let w=`data-${C}${h}`;s+=`${w}=""`,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-${C}${h}`;s+=`${d}=""`,f={name:i,firstPartIdx:h},r.push({kind:"noop",path:[]}),o="skip-attr"}else o==="skip-attr"&&r.push({kind:"noop",path:[]})}}let b=document.createElement("template");return b.innerHTML=s,Po(b.content,r),Io(b.content,r),n={templateEl:b,parts:r},_r.set(t,n),n}function Po(e,t){let n=e.querySelectorAll("slot");for(let r of n){r.setAttribute(V,"");let s=t.length;r.setAttribute(`data-${C}${s}`,""),t.push({kind:"slot",path:[]})}}function Io(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(C)){let a=Number(c.slice(C.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-${C}`)){let f=Number(l.name.slice(`data-${C}`.length));t[f]&&t[f].kind!=="child"&&(t[f].path=n.slice()),a.push(l.name)}for(let l of a)c.removeAttribute(l);r(i)}n.pop()}}r(e)}function $o(e,t){let{templateEl:n,parts:r}=gt(e),s=n.content.cloneNode(!0),o=document.createComment(`${C}s`),i=document.createComment(`${C}e`),c=r.map(l=>yt(l,s)),a=[];for(let l=0;l<e.values.length;l++)ce(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"&&ce(l,void 0,void 0,[]);return{strings:e.strings,bound:c,lastValues:a,startNode:o,endNode:i}}function yt(e,t){if(e.kind==="noop")return{kind:"noop"};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 Ee(e,t){for(let n=0;n<t.length;n++){let r=t[n];Object.is(r,e.lastValues[n])||(ce(e.bound[n],r,e.lastValues[n],t),e.lastValues[n]=r)}}function Sr(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=fn(n.slotEl);r&&wr(r,n.slotEl)}}t.replaceChildren()}function ce(e,t,n,r){if(ge(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":Uo(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":Bo(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=fn(s);if(!c||Fo(s))return;let a=document.createDocumentFragment();for(;s.firstChild;)a.appendChild(s.firstChild);s[ht]=a,mt(c)};fn(s)?o():queueMicrotask(o);break}case"noop":break}}function fn(e){let t=e.parentElement;for(;t;){if(t[ie])return t;t=t.parentElement}return null}function Fo(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 Bo(e,t){let n=e,r=ne(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 Uo(e,t){return Yo(e,t),B(e,t)}function B(e,t){let n=e.marker;if(be(t)){K(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(ee(t)){let s=t,o=e.__keyedKey;o!==void 0&&!Object.is(o,s.key)&&K(e),e.__keyedKey=s.key,B(e,s.value);return}if(te(t)){let s=t,o=e.__guardDeps,i=s.deps;if(o!==void 0&&(Array.isArray(o)&&Array.isArray(i)?Go(o,i):Object.is(o,i)))return;e.__guardDeps=Array.isArray(i)?i.slice():i,B(e,s.fn());return}if(ye(t)){K(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(ne(t))return;if(re(t))return Jo(e,t.value);if(se(t))return Zo(e,t.args);if(oe(t))return Xo(e,t.signal);if(we(t))return Qo(e,t);if(_e(t))return ei(e,t);if(Q(t)){if(e.child&&e.child.kind==="repeat"){Ho(e,t);return}K(e);let s={kind:"repeat",map:new Map};e.child=s,Do(n,s,t);return}if(Array.isArray(t)){if(e.child&&e.child.kind==="array"){zo(e,t);return}K(e);let s={kind:"array",items:[]};e.child=s,Vo(n,s,t);return}if(e.child){let s=e.child;if(s.kind==="repeat")Ar(s),e.child=void 0;else if(s.kind==="array")Cr(s),e.child=void 0;else if(s.kind==="async-stream")Tr(s),e.child=void 0;else if("strings"in e.child){let o=e.child;if(N(t)&&o.strings===t.strings){Ee(o,t.values);return}Ce(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(N(t)){let s=t,{templateEl:o,parts:i}=gt(s),c=o.content.cloneNode(!0),a=document.createComment(`${C}s`),l=document.createComment(`${C}e`),f=i.map(b=>yt(b,c)),p=[];for(let b=0;b<s.values.length;b++)ce(f[b],s.values[b],void 0,s.values),p.push(s.values[b]);let u=[a,...c.childNodes,l];n.parentNode?.insertBefore(qo(u),n);for(let b of f)b.kind==="slot"&&ce(b,void 0,void 0,[]);e.child={strings:s.strings,bound:f,lastValues:p,startNode:a,endNode:l};return}let r=document.createTextNode(String(t));n.parentNode?.insertBefore(r,n),e.child=[r]}function qo(e){let t=document.createDocumentFragment();for(let n of e)t.appendChild(n);return t}function Ce(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 pn(e){let{templateEl:t,parts:n}=gt(e),r=t.content.cloneNode(!0),s=document.createComment(`${C}s`),o=document.createComment(`${C}e`),i=n.map(l=>yt(l,r)),c=[];for(let l=0;l<e.values.length;l++)ce(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 He(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 Do(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),f=o(r[a],a);if(!N(f))continue;let{inst:p,frag:u}=pn(f);t.map.set(l,p),c.appendChild(u)}i.insertBefore(c,e)}function Ho(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 f=i(o[l],l),p=c(o[l],l);if(!N(p))continue;let u=s.map.get(f);if(u&&u.strings===p.strings)Ee(u,p.values),dn(u.startNode,u.endNode,r,n),a.set(f,u),s.map.delete(f);else{u&&(He(u),Ce(u.startNode,u.endNode),s.map.delete(f));let{inst:b,frag:g}=pn(p);r.insertBefore(g,n),a.set(f,b)}}for(let l of s.map.values())He(l),Ce(l.startNode,l.endNode);s.map=a}function Ar(e){for(let t of e.map.values())He(t),Ce(t.startNode,t.endNode);e.map.clear()}function Wo(e){return e.type==="tpl"?e.inst.startNode:e.type==="text"?e.node:null}function bt(e){e.type==="tpl"?(He(e.inst),Ce(e.inst.startNode,e.inst.endNode)):e.type==="text"&&e.node.parentNode?.removeChild(e.node)}function Er(e){if(N(e)){let{inst:t,frag:n}=pn(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 Vo(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}=Er(i);a&&s.appendChild(a),o.push(c)}r.insertBefore(s,e),t.items=o}function zo(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(N(a)){let u=a;if(l&&l.type==="tpl"&&l.inst.strings===u.strings){Ee(l.inst,u.values),i.push(l);continue}}else if(a!=null&&a!==!1&&a!==!0){if(l&&l.type==="text"){let u=String(a);l.node.data!==u&&(l.node.data=u),i.push(l);continue}}else{l&&bt(l),i.push({type:"empty"});continue}let{item:f,frag:p}=Er(a);p&&r.insertBefore(p,Ko(o,c,n)),l&&bt(l),i.push(f)}for(let c=t.length;c<o.length;c++)bt(o[c]);s.items=i}function Ko(e,t,n){for(let r=t;r<e.length;r++){let s=Wo(e[r]);if(s&&s.parentNode)return s}return n}function Cr(e){for(let t of e.items)bt(t);e.items=[]}function dn(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 Go(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 K(e){let t=e;if(t.__untilState&&(t.__untilState.aborted=!0,t.__untilState=void 0),t.__watchSub&&vr(t),!e.child)return;let n=e.child;if(n.kind==="repeat")Ar(n);else if(n.kind==="array")Cr(n);else if(n.kind==="async-stream")Tr(n);else if("strings"in n){let r=e.child;He(r),Ce(r.startNode,r.endNode)}else for(let r of e.child)r.parentNode&&r.parentNode.removeChild(r);e.child=void 0}function Yo(e,t){let n=e;n.__untilState&&!se(t)&&(n.__untilState.aborted=!0,n.__untilState=void 0),n.__guardDeps!==void 0&&!te(t)&&(n.__guardDeps=void 0),n.__cacheMap&&!re(t)&&(n.__cacheMap=void 0),n.__keyedKey!==void 0&&!ee(t)&&(n.__keyedKey=void 0),n.__watchSub&&!oe(t)&&vr(n)}function Jo(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(N(t)&&c.strings===t.strings){Ee(c,t.values);return}let a=document.createDocumentFragment();dn(c.startNode,c.endNode,a,null),s.set(c.strings,{inst:c,holder:a}),e.child=void 0}if(N(t)){let c=t,a=s.get(c.strings);if(a){s.delete(c.strings),e.child&&K(e),dn(a.inst.startNode,a.inst.endNode,n.parentNode,n),Ee(a.inst,c.values),e.child=a.inst;return}}B(e,t)}function Zo(e,t){let n=e,r=n.__untilState,s=n.__untilArgs,o=(u,b)=>!!(Object.is(u,b)||N(u)&&N(b)&&u.strings===b.strings),c=s&&s.length===t.length&&s.every((u,b)=>o(u,t[b]))&&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,f;for(let u=0;u<t.length;u++){let b=t[u];if(!b||typeof b.then!="function"){l=u,f=b;break}}l!==-1&&l<=a.highestResolved?(B(e,f),a.highestResolved=l):l===-1&&!n.__untilEverRendered&&B(e,""),n.__untilEverRendered=!0;let p=Math.min(l===-1?t.length:l,a.highestResolved);for(let u=0;u<p;u++){let b=t[u];!b||typeof b.then!="function"||Promise.resolve(b).then(g=>{a.aborted||u>=a.highestResolved||(a.highestResolved=u,B(e,g))},()=>{})}}function Xo(e,t){let n=e;if(n.__watchSig===t&&n.__watchSub){let o;n.__watchSub.observe(()=>{o=t.get()}),B(e,o);return}n.__watchSub&&(n.__watchSub.dispose(),n.__watchSub=void 0),n.__watchSig=t;let r=new Be.subtle.Watcher(()=>{queueMicrotask(()=>{if(n.__watchSub!==r)return;let o;r.observe(()=>{o=t.get()}),B(e,o)})});n.__watchSub=r;let s;r.observe(()=>{s=t.get()}),B(e,s)}function vr(e){e.__watchSub&&(e.__watchSub.dispose(),e.__watchSub=void 0,e.__watchSig=void 0)}function Qo(e,t){let n=e.child;if(n&&n.kind==="async-stream"&&n.mode==="append"&&n.iterable===t.iterable)return;K(e);let r=t.iterable[Symbol.asyncIterator](),s={kind:"async-stream",mode:"append",aborted:!1,iterable:t.iterable,iterator:r,nodes:[]};e.child=s,kr(s,e,t)}function ei(e,t){let n=e.child;if(n&&n.kind==="async-stream"&&n.mode==="replace"&&n.iterable===t.iterable)return;K(e);let r=t.iterable[Symbol.asyncIterator](),s={kind:"async-stream",mode:"replace",aborted:!1,iterable:t.iterable,iterator:r,nodes:[]};e.child=s,kr(s,e,t)}async function kr(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=xr(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 xr(e){if(e==null||e===!1||e===!0)return[];if(N(e)){let t=e,{templateEl:n,parts:r}=gt(t),s=n.content.cloneNode(!0),o=r.map(i=>yt(i,s));for(let i=0;i<t.values.length;i++)ce(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(...xr(n));return t}return[document.createTextNode(String(e))]}function Tr(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 Nr=null;function wt(e){Nr=e||null}function ti(){return Nr||void 0}var jr=Symbol.for("webjs:registry"),Rr=Symbol.for("webjs:classToTag"),_t=globalThis,U=_t[jr]||(_t[jr]=new Map),Lr=_t[Rr]||(_t[Rr]=new WeakMap),St=typeof window<"u"&&typeof customElements<"u";function hn(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=U.get(e);r?(r.cls=t,r.lazy=n):U.set(e,{cls:t,moduleUrl:null,lazy:n,tag:e}),Lr.set(t,e)}if(St){let e=customElements.define.bind(customElements);customElements.define=function(t,n,r){customElements.get(t)||e(t,n,r),hn(t,n)}}if(!St){let e=globalThis;e.customElements||(e.customElements={define(t,n){hn(t,n)},get(t){return U.get(t)?.cls},upgrade(){},whenDefined(t){let n=U.get(t);return Promise.resolve(n?.cls)}})}function mn(e,t){St?customElements.define(e,t):hn(e,t)}function ni(e,t){if(St)return;let n=U.get(e);if(n){n.moduleUrl=t;return}U.set(e,{cls:null,moduleUrl:t,lazy:!1,tag:e})}function bn(e){return U.get(e)?.cls}function ri(e){return U.get(e)?.moduleUrl||null}function si(e){return U.get(e)?.lazy===!0}function At(e){return Lr.get(e)}function gn(){return[...U.keys()]}ke();var Br=typeof window<"u"&&typeof HTMLElement<"u";function gi(e,t){return e!==t}function yi(){return{states:new Set,shadowRoot:null,form:null,labels:[],role:"",willValidate:!0,validity:{},validationMessage:"",setFormValue(){},setValidity(){},checkValidity(){return!0},reportValidity(){return!0}}}var Et=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=yi(),this.__internals}},wi=["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 wi){let t="aria-"+e.slice(4).toLowerCase();Object.defineProperty(Et.prototype,e,{configurable:!0,get(){return this.getAttribute(t)},set(n){n==null?this.removeAttribute(t):this.setAttribute(t,String(n))}})}var _i=Br?HTMLElement:Et,Ur=Symbol("webjs.factoryProps"),$r=new WeakSet,xe=class e extends _i{static shadow=!1;static hydrate=void 0;static properties={};static styles=null;static register(t){mn(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||yn(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($r.has(t))return;let n=t;for(;n&&n!==e;){if(Object.hasOwn(n,"properties")&&!Object.hasOwn(n,Ur)){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.com/docs/components.`)}n=Object.getPrototypeOf(n)}$r.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||gi)(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||yn(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(!Br)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=Fr(r.slice(16));try{this[o]=D(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:me(r)?[r]:[];if(s.length){if(n){let o=this.shadowRoot.querySelector("style");o&&o.remove()}Gt(this._renderRoot,s)}}else this._renderRoot=this,t.styles&&console.warn(`[webjs] <${At(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().`),ln(this)||(this.__isHydrating()?(z(this),mr(this)):hr(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&&gr(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&&yr(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[f,p]of Object.entries(o))if(((typeof p=="object"?p:{type:p}).attribute||yn(f))===t){i=f,c=p;break}if(c===void 0&&(i=Fr(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,wt(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{wt(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 Be.subtle.Watcher(()=>{this._connected&&this.requestUpdate()}));let n;if(this.__signalWatcher.observe(()=>{n=this.render()}),n&&typeof n.then=="function")return this._commitAsync(n);ve(n,this._renderRoot)}_commitAsync(t){let n=this.__renderToken;if(this.__firstRendered&&this._overridesRenderFallback())try{let r=this.renderFallback();r!==void 0&&ve(r,this._renderRoot)}catch(r){console.error("[webjs] renderFallback() threw:",r)}return Promise.resolve(t).then(r=>{n===this.__renderToken&&ve(r,this._renderRoot)},r=>{n===this.__renderToken&&this._handleRenderError(r instanceof Error?r:new Error(String(r)))})}_overridesRenderFallback(){return this.renderFallback!==Ct.prototype.renderFallback}_handleRenderError(t){console.error(`[webjs] render error in <${At(this.constructor)||this.tagName?.toLowerCase()}>:`,t);try{let n=this.renderError(t);n!==void 0&&ve(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 yn(e){return e.replace(/([A-Z])/g,"-$1").toLowerCase()}function Fr(e){return e.replace(/-([a-z])/g,(t,n)=>n.toUpperCase())}function Ct(e){return new.target?Reflect.construct(xe,arguments,new.target):class extends xe{static properties=e;static[Ur]=!0}}Object.setPrototypeOf(Ct,xe);Ct.prototype=xe.prototype;function Si(e,t={}){return e&&typeof e=="object"&&!("call"in e)&&(t=e,e=void 0),{...e?{type:e}:{},...t}}var xc=Symbol.for("webjs.suspense");function Ai(e){return{_$webjsSuspense:!0,fallback:e.fallback,children:e.children}}function vt(e){return!!e&&typeof e=="object"&&e._$webjsSuspense===!0}ke();var wn=null;function Ei(e){wn=e}function _n(){if(!wn)return"";try{return wn()||""}catch{return""}}async function Ci(e,t={ssr:!0}){let n=t&&t.suspenseCtx,r=t&&t.dev!==void 0?t.dev:n&&n.dev;n&&n.dev===void 0&&r!==void 0&&(n.dev=r);let s=await x(e,n);return t&&t.ssr===!1?s:await Y(s,n,[],r)}async function x(e,t){if(e==null||e===!1||e===!0)return"";if(e&&typeof e.then=="function")return e=await e,x(e,t);if(be(e))return String(e.value??"");if(ge(e))return x(e.value,t);if(oe(e))return x(e.signal.get(),t);if(ee(e))return x(e.value,t);if(te(e))return x(e.fn(),t);if(ye(e)){let n=e.template;return String(n?.innerHTML??"")}if(ne(e))return"";if(re(e))return x(e.value,t);if(se(e)){let n=e.args;for(let r of n)if(!r||typeof r.then!="function")return x(r,t);if(n.length>0)try{let r=await Promise.race(n.map(s=>Promise.resolve(s).catch(()=>{})));return x(r,t)}catch{return""}return""}if(we(e)||_e(e))return"";if(Array.isArray(e))return(await Promise.all(e.map(r=>x(r,t)))).join("");if(Q(e)){let n=e;return(await Promise.all(n.items.map((s,o)=>x(n.templateFn(s,o),t)))).join("")}if(vt(e)){let n=e,r=await x(n.fallback,t);if(t){let s=`s${t.nextId++}`;return t.pending.push({id:s,promise:Promise.resolve(n.children)}),`<webjs-boundary id="${s}">${r}</webjs-boundary>`}return r}return N(e)?vi(e,t):ot(String(e))}async function vi(e,t){let{strings:n,values:r}=e,s="",o="text",i="",c=0,a="",l=0,f="",p="";for(let u=0;u<n.length;u++){let b=n[u];for(let g=0;g<b.length;g++){let m=b[g];switch(o){case"text":s+=m,m==="<"&&(o="tag-open");break;case"tag-open":s+=m,m==="!"?o="bang-1":m==="/"?(o="tag-name",f=""):/[a-zA-Z]/.test(m)?(o="tag-name",f=m.toLowerCase()):o="text";break;case"bang-1":s+=m,o=m==="-"?"bang-dash":"tag-name";break;case"bang-dash":s+=m,m==="-"?(o="comment",l=0):o="tag-name";break;case"comment":s+=m,m==="-"?l+=1:(m===">"&&l>=2&&(o="text"),l=0);break;case"tag-name":s+=m,m===">"?(o=kt(f)?"rawtext":"text",o==="rawtext"&&(p="")):/\s/.test(m)?o="in-tag":f+=m.toLowerCase();break;case"in-tag":s+=m,m===">"?(o=kt(f)?"rawtext":"text",o==="rawtext"&&(p="")):!/\s/.test(m)&&m!=="/"&&(o="attr-name",i=m,c=s.length-1);break;case"rawtext":s+=m,p=(p+m.toLowerCase()).slice(-9),(p.endsWith("<\/script>")||p.endsWith("</style>"))&&(o="text",p="",f="");break;case"attr-name":m==="="?(o="after-eq",s+=m):/\s/.test(m)?(o="in-tag",i="",s+=m):m===">"?(o="text",i="",s+=m):(i+=m,s+=m);break;case"after-eq":m==='"'||m==="'"?(o="attr-quoted",a=m,s+=m):/\s/.test(m)?(o="in-tag",i="",s+=m):m===">"?(o="text",i="",s+=m):(o="attr-unquoted",s+=m);break;case"attr-unquoted":/\s/.test(m)?(o="in-tag",i="",s+=m):(m===">"&&(o="text",i=""),s+=m);break;case"attr-quoted":s+=m,m===a&&(o="in-tag",i="");break}}if(u<r.length){let g=r[u];if(g&&typeof g.then=="function"&&(g=await g),o==="comment")s+=String(g??""),l=0;else if(o==="rawtext")s+=String(g??""),p="";else if(o==="text")s+=await x(g,t);else if(o==="after-eq"){let m=i[0],h=i.slice(1);if(m==="@")s=s.slice(0,c),o="in-tag",i="";else if(m==="."){if(s=s.slice(0,c),f==="webjs-suspense"&&h==="fallback"){let d=await x(g,t);s+=`data-webjs-fallback="${$(d)}"`,o="in-tag",i="";continue}if(!f.includes("-")){o="in-tag",i="";continue}if(g===void 0){o="in-tag",i="";continue}try{let d=await ze(g);s+=`data-webjs-prop-${Ui(h)}="${$(d)}"`}catch(d){console.warn(`[webjs] property binding .${h} has an unserializable value during SSR. Dropping. The browser will see the property as undefined. Detail: ${d&&d.message}`)}o="in-tag",i=""}else m==="?"?(s=s.slice(0,c),g&&(s+=`${h}=""`),o="in-tag",i=""):(s+=`"${$(String(g??""))}"`,o="in-tag",i="")}else(o==="attr-quoted"||o==="attr-unquoted")&&(s+=$(String(g??"")))}}return s}var ki=new Set(["document","window","localStorage","sessionStorage","navigator","matchMedia","requestAnimationFrame","getComputedStyle","IntersectionObserver","MutationObserver","ResizeObserver"]),xi=new Set(["attachShadow","querySelector","querySelectorAll","getBoundingClientRect","focus","blur","scrollIntoView"]);function Ti(e){let t=e&&typeof e.message=="string"?e.message:"",n=/^(\w+) is not defined\b/.exec(t);return e instanceof ReferenceError&&n&&ki.has(n[1])?`\`${n[1]}\` is a browser-only global and is undefined during SSR.`:(n=/\.(\w+) is not a function\b/.exec(t),e instanceof TypeError&&n&&xi.has(n[1])?`\`${n[1]}\` is an HTMLElement method that does not exist on the server-side component instance during SSR.`:null)}function Ni(){return typeof process<"u"&&process.env&&!0}function Hr(e,t,n){if(!(n===void 0?!Ni():!!n))return"";let s=t&&t.message?t.message:String(t);return Kt`<div data-webjs-error="${e}" style="border:1px solid #f5c2c7;background:#f8d7da;color:#842029;padding:8px 12px;border-radius:6px;font:13px/1.4 system-ui,sans-serif">
4
4
  <strong>&lt;${e}&gt; failed to render</strong>