@webjsdev/core 0.7.22 → 0.7.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -1
- package/dist/webjs-core-browser.js +3 -3
- package/dist/webjs-core-browser.js.map +2 -2
- package/dist/webjs-core.js +3 -3
- package/dist/webjs-core.js.map +2 -2
- package/index-browser.js +9 -0
- package/package.json +1 -1
- package/src/component.d.ts +14 -13
- package/src/router-client.js +95 -27
- package/src/webjs-config.d.ts +21 -1
package/dist/webjs-core.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
var Vs=Object.defineProperty;var Z=(e,t)=>()=>(e&&(t=e(e=0)),t);var Yn=(e,t)=>{for(var n in t)Vs(e,n,{get:t[n],enumerable:!0})};function Nr(e,t,n){ti.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 jr(e))}function D(e){return Rr(JSON.parse(e))}async function jr(e){let t=ni();return await ri(e,t),le(e,t)}function Rr(e){return G(e,ai())}function ni(){return{refCount:new Map,idOf:new Map,emitted:new Set,nextId:0,blobBytes:new Map,fdEntries:new Map}}async function ri(e,t){let n=[e];for(;n.length;){let r=n.pop();if(!li(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(ui(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{[x]:"undef"};let n=typeof e;if(n==="string"||n==="boolean")return e;if(n==="number")return Number.isNaN(e)?{[x]:"NaN"}:e===1/0?{[x]:"Inf"}:e===-1/0?{[x]:"-Inf"}:Object.is(e,-0)?{[x]:"-0"}:e;if(n==="bigint")return{[x]:"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{[x]:"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{[x]:"Ref",v:r};r!==void 0&&t.emitted.add(r);let s;if(e instanceof Date)s={[x]:"Date",v:Number.isNaN(e.getTime())?null:e.toISOString()};else if(e instanceof Error)s={[x]:"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={[x]:"File",v:Ve(o),n:e.name,t:e.type||"",m:e.lastModified}:s={[x]:"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={[x]:"FD",v:i}}else if(ArrayBuffer.isView(e)||e instanceof ArrayBuffer)s=si(e);else if(e instanceof Map){let o=[];for(let[i,c]of e)o.push([le(i,t),le(c,t)]);s={[x]:"Map",v:o}}else if(e instanceof Set){let o=[];for(let i of e)o.push(le(i,t));s={[x]:"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=fi(o)?"_"+o:o;Nr(s,i,le(e[o],t))}}if(r!==void 0){if(Array.isArray(s))return{[x]:"Arr",_id:r,v:s};s._id=r}return s}function si(e){if(e instanceof ArrayBuffer)return{[x]:"buf",v:Ve(new Uint8Array(e))};if(e instanceof DataView)return{[x]:"dv",v:Ve(new Uint8Array(e.buffer,e.byteOffset,e.byteLength))};let t=e.constructor.name,n=oi[t];if(!n)throw new TypeError(`Unsupported typed array: ${t}`);let r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return{[x]:n,v:Ve(r)}}function ai(){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[x];if(typeof n=="string")return ci(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=di(o)?o.slice(1):o;Nr(r,i,G(e[o],t))}return r}function ci(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=ii[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 li(e){return e!==null&&typeof e=="object"}function ui(e){if(e===null||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function fi(e){return/^_+\$wj$/.test(e)||/^_+id$/.test(e)}function di(e){return/^__+\$wj$/.test(e)||/^__+id$/.test(e)}function Ve(e){if(Lr)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(Lr){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 x,ti,oi,ii,Lr,xe=Z(()=>{x="_$wj",ti=new Set(["__proto__","constructor","prototype"]);oi={Int8Array:"i8",Uint8Array:"u8",Uint8ClampedArray:"u8c",Int16Array:"i16",Uint16Array:"u16",Int32Array:"i32",Uint32Array:"u32",Float32Array:"f32",Float64Array:"f64",BigInt64Array:"bi64",BigUint64Array:"bu64"},ii={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};Lr=typeof Buffer<"u"&&typeof Buffer.from=="function"});var Vr={};Yn(Vr,{observeLazy:()=>Ki,observeViewportOnce:()=>Ji});function Wr(e){let t=Sn.get(e);return t||(t=import(e).finally(()=>Sn.delete(e)),Sn.set(e,t),t)}function Ki(e){for(let[t,n]of Object.entries(e))ue.set(t.toLowerCase(),n);if(typeof IntersectionObserver>"u"){for(let t of ue.values())Wr(t);ue.clear();return}Je||(Je=new IntersectionObserver(Gi,{rootMargin:"200px"})),Hr(),typeof MutationObserver<"u"&&new MutationObserver(()=>Hr()).observe(document.body,{childList:!0,subtree:!0})}function Hr(){if(!(!Je||!ue.size))for(let e of ue.keys())for(let t of document.querySelectorAll(e))Je.observe(t)}function Gi(e){for(let t of e){if(!t.isIntersecting)continue;let n=t.target.tagName.toLowerCase(),r=ue.get(n);r&&(Wr(r),ue.delete(n),Je?.unobserve(t.target))}}function Yi(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 Ji(e,t){return typeof IntersectionObserver>"u"?(t(),()=>{}):(Ye||(Ye=new IntersectionObserver(Yi,{rootMargin:"200px"})),Tt.set(e,t),Ye.observe(e),()=>{Tt.delete(e),Ye?.unobserve(e)})}var ue,Je,Sn,Ye,Tt,zr=Z(()=>{ue=new Map,Je=null,Sn=new Map;Ye=null,Tt=new WeakMap});var An,En=Z(()=>{An=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(()=>(zr(),Vr)).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(()=>(Cn(),Kr)).then(({loadFrame:n})=>{this._webjsLoadedSrc!==t||!this.isConnected||n(this,t)})}}:null;typeof customElements<"u"&&An&&!customElements.get("webjs-frame")&&customElements.define("webjs-frame",An)});function Zi(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 xn(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 Xi,vn,Nt=Z(()=>{Xi=new Set(["append","prepend","before","after","replace","update"]);vn=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=Xi.has(t)?this.querySelector("template"):null;try{for(let i of r){let c=o?o.content.cloneNode(!0):null;Zi(t,i,c)}}finally{this.remove()}}}:null;typeof customElements<"u"&&vn&&!customElements.get("webjs-stream")&&customElements.define("webjs-stream",vn)});var Gr,Yr=Z(()=>{Gr=typeof HTMLElement<"u"?class extends HTMLElement{connectedCallback(){this.style.display||(this.style.display="contents")}}:null;typeof customElements<"u"&&Gr&&!customElements.get("webjs-suspense")&&customElements.define("webjs-suspense",Gr)});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]'))Xr(n.textContent,n);for(let n of t.querySelectorAll("[data-webjs-seed]"))Xr(n.getAttribute("data-webjs-seed"),n,()=>n.removeAttribute("data-webjs-seed"))}}function Xr(e,t,n){if(e)try{let r=D(e);if(r&&typeof r=="object")for(let s in r)Xe.has(s)||Xe.set(s,r[s])}catch{}n?n():t.remove?.()}function Qi(e,t,n){Jr||(Jr=!0,jt());let r=`${e}/${t}/${n}`;if(Xe.has(r)){let s=Xe.get(r);return Xe.delete(r),s}return Zr}var Xe,Zr,Jr,kn=Z(()=>{xe();Xe=new Map,Zr=Symbol("webjs.seed.miss"),Jr=!1});var Kr={};Yn(Kr,{_FRAME_TOP:()=>ps,_LIVE_ATTRS:()=>Ln,_activeFrameId:()=>ds,_addNewHeadElements:()=>On,_applyStreamedResolve:()=>$s,_blurOutgoingFocus:()=>Ot,_buildSubmitFormData:()=>us,_bumpNavToken:()=>Ea,_clearFormBusy:()=>ks,_clearFrameBusy:()=>vs,_collectChildrenSlots:()=>Me,_currentPageUrl:()=>Ca,_diffElementInPlace:()=>Bt,_eligibleAnchorHref:()=>Mt,_findAnchorInPath:()=>fs,_getSubmitAction:()=>ls,_getSubmitMethod:()=>cs,_isNonHtmlPath:()=>xa,_keyOf:()=>Oe,_longestSharedPath:()=>hs,_markFormBusy:()=>xs,_markFrameBusy:()=>Cs,_mergeHead:()=>Ms,_navToken:()=>Aa,_onPopState:()=>Pn,_onSubmit:()=>In,_prefetch:()=>Pe,_prefetchHasHoverPointer:()=>ws,_prefetchInflightSize:()=>_a,_prefetchMode:()=>Pt,_prefetchPeek:()=>wa,_prefetchSaysSaveData:()=>Bn,_prefetchSuppressed:()=>_s,_prefetchTake:()=>Ss,_reactivateScripts:()=>Ut,_readStreamedShell:()=>Ps,_reconcileChildren:()=>Dn,_regraftPermanentElements:()=>Ns,_regraftPermanentInSlice:()=>qn,_resetPrefetch:()=>Sa,_resolveTargetFrameId:()=>$n,_restoreOptimistic:()=>Ze,_runWithTransition:()=>Lt,_setCurrentPageUrl:()=>va,_snapshotCache:()=>O,_streamBoundariesProgressively:()=>Fs,_takeResolveUnit:()=>Is,_viewTransitionsEnabled:()=>Ts,collectChildrenSlots:()=>Me,disableClientRouter:()=>ss,enableClientRouter:()=>Mn,loadFrame:()=>ta,longestSharedPath:()=>hs,navigate:()=>os,revalidate:()=>is});function rs(e){return typeof Document<"u"&&typeof Document.parseHTMLUnsafe=="function"?Document.parseHTMLUnsafe(e):typeof DOMParser<"u"?new DOMParser().parseFromString(e,"text/html"):null}function ea(){Tn||typeof MutationObserver>"u"||typeof customElements>"u"||(Tn=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)}}),Tn.observe(document.body,{childList:!0,subtree:!0}))}function Mn(){X||typeof document>"u"||(X=!0,document.addEventListener("click",as,!1),document.addEventListener("submit",In,!1),window.addEventListener("popstate",Pn),document.addEventListener("pointerover",Le,!0),document.addEventListener("focusin",Le,!0),document.addEventListener("touchstart",Le,{capture:!0,passive:!0}),document.addEventListener("pointerout",As,!0),document.addEventListener("webjs:navigate",Rn),ea(),Rn(),typeof history<"u"&&"scrollRestoration"in history&&(Rt=history.scrollRestoration,history.scrollRestoration="manual"),typeof location<"u"&&(q=location.href))}function ss(){X&&(X=!1,document.removeEventListener("click",as,!1),document.removeEventListener("submit",In,!1),window.removeEventListener("popstate",Pn),document.removeEventListener("pointerover",Le,!0),document.removeEventListener("focusin",Le,!0),document.removeEventListener("touchstart",Le,{capture:!0}),document.removeEventListener("pointerout",As,!0),document.removeEventListener("webjs:navigate",Rn),Dt(),Un(),J&&(J.disconnect(),J=null),typeof history<"u"&&Rt!==null&&(history.scrollRestoration=Rt,Rt=null),q=null)}async function os(e,t){let n=new URL(e,location.href);if(n.origin!==location.origin){location.href=e;return}await Fn(n.href,t?.replace??!1,null)}async function ta(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 It(r.href,n,!1,null,"GET",null,s,o)}function is(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 as(e){if(!X||e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;let t=fs(e);if(!t||t.hasAttribute("download")||t.hasAttribute("data-no-router")||t.target&&t.target!=="_self")return;let n=t.href;if(!n)return;let r=new URL(n);if(r.origin!==location.origin||r.pathname===location.pathname&&r.search===location.search&&r.hash||qt.test(r.pathname))return;e.preventDefault();let s=$n(t);Fn(n,!1,s)}function Pn(e){Fn(location.href,!0,null)}function In(e){if(!X||e.defaultPrevented)return;let t=e.target;if(!t||t.nodeType!==1||t.tagName!=="FORM"||t.hasAttribute("data-no-router"))return;let n=e.submitter??null;if(n&&n.hasAttribute("data-no-router"))return;let r=n&&n.getAttribute("formtarget")||t.getAttribute("target")||"";if(r&&r!=="_self")return;let s=cs(t,n);if(s==="dialog")return;let o=ls(t,n),i;try{i=new URL(o,location.href)}catch{return}if(i.origin!==location.origin||qt.test(i.pathname))return;let c=us(t,n);e.preventDefault();let a=$n(n||t);oa(i.href,s,c,a,t)}function cs(e,t){return(t&&t.getAttribute("formmethod")||e.getAttribute("method")||"get").toLowerCase()}function ls(e,t){return t&&t.hasAttribute("formaction")?t.getAttribute("formaction")||"":e.getAttribute("action")||e.action||location.href}function us(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 fs(e){for(let t of e.composedPath())if(t instanceof HTMLAnchorElement)return t;return null}function ds(e){let t=e;for(;t;){let n=t.closest("webjs-frame");if(n&&n.id)return n.id;let r=t.getRootNode();if(r&&r.host)t=r.host;else break}return null}function $n(e){if(!e)return null;let t=e.closest&&e.closest("[data-webjs-frame]"),n=t?t.dataset?t.dataset.webjsFrame:t.getAttribute("data-webjs-frame"):null;if(n!=null&&n!==""){if(n===ps)return null;let r=typeof document<"u"?document.getElementById(n):null;return r&&r.tagName&&r.tagName.toLowerCase()==="webjs-frame"?n:(na(`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 ds(e)}function na(e,t){es.has(e)||(es.add(e),typeof console<"u"&&console.warn&&console.warn(t))}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 hs(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 ms(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>ra;){let r=O.keys().next().value;O.delete(r)}}function sa(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 Fn(e,t,n){M&&M.abort(),M=new AbortController;let r=M.signal,s=++j;q&&ms(q);let o=setTimeout(()=>{document.documentElement.setAttribute("data-navigating",""),o=null},150),i=null;t||(i=Rs());try{if(t){let c=sa(e);if(c){let a=rs(c.html);if(a){js(a,n,!0,null),typeof window<"u"&&window.scrollTo(c.scrollX,c.scrollY),It(e,n,!1,i,"GET",null,r,s).catch(()=>{});return}}typeof window<"u"&&window.scrollTo(0,0)}await It(e,n,!t,i,"GET",null,r,s)}finally{o&&clearTimeout(o),s===j&&(document.documentElement.removeAttribute("data-navigating"),typeof location<"u"&&(q=location.href))}}async function oa(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&&ms(q);let l=setTimeout(()=>{document.documentElement.setAttribute("data-navigating",""),l=null},150),f=Rs(),p=s?xs(s,i,a.href):null,u=!1;try{let b=await It(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&&ks(p,i,a.href,u),l&&clearTimeout(l),i===j&&(document.documentElement.removeAttribute("data-navigating"),typeof location<"u"&&(q=location.href))}}function bs(){return[...Me(document.body).keys()].join(",")}function Bn(){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 ws(){try{if(typeof matchMedia=="function")return matchMedia("(hover: hover) and (pointer: fine)").matches}catch{}return!0}function ua(e){let t=e.getAttribute("rel");return t?t.toLowerCase().split(/\s+/).filter(Boolean):[]}function Mt(e){if(!e||!(e instanceof HTMLAnchorElement)||e.hasAttribute("download")||e.hasAttribute("data-no-router")||e.target&&e.target!=="_self")return null;let t=e.href;if(!t)return null;let n;try{n=new URL(t)}catch{return null}return n.origin!==location.origin||n.pathname===location.pathname&&n.search===location.search&&n.hash||qt.test(n.pathname)?null:t}function _s(e){if(e.hasAttribute("data-no-prefetch"))return!0;let t=ua(e);return t.includes("external")||t.includes("no-prefetch")}function Pt(e){if(_s(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 ws()?"intent":"viewport"}}function Pe(e){if(!X||typeof fetch!="function"||Bn())return;let t=pe(e);if(fe.has(t)||Qe.has(t))return;let n=L.get(t);if(n&&jn()-n.at<gs)return;if(fe.size>=ys){for(Qe.add(t),je.push(e);je.length>aa;){let o=je.shift();Qe.delete(pe(o))}return}fe.add(t);let r={"x-webjs-router":"1","x-webjs-prefetch":"1"},s=bs();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();da(t,{html:l,build:c,finalUrl:a,at:jn()})}).catch(()=>{}).finally(()=>{fe.delete(t),fa()})}function fa(){for(;je.length&&fe.size<ys;){let e=je.shift();Qe.delete(pe(e)),Pe(e)}}function da(e,t){for(L.has(e)&&L.delete(e),L.set(e,t);L.size>ia;){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 Ss(e){let t=pe(e),n=L.get(t);return!n||(L.delete(t),jn()-n.at>=gs)?null:n}function jn(){try{if(typeof performance<"u"&&typeof performance.now=="function")return performance.now()}catch{}return 0}function Le(e){if(!X)return;let t=Es(e.target);if(!t)return;let n=Pt(t);if(n==="none"||n==="render")return;let r=Mt(t);if(r){if(e.type==="touchstart"){Pe(r);return}n==="intent"&&(et===t&&Re||(Dt(),et=t,Re=setTimeout(()=>{Re=null,et=null,Pe(r)},ca)))}}function As(e){let t=Es(e.target);t&&t===et&&Dt()}function Dt(){Re&&(clearTimeout(Re),Re=null),et=null}function Un(){for(let e of tt)clearTimeout(e);tt.clear(),Te=new WeakMap}function Es(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 Rn(){if(typeof document>"u"||Bn())return;let e=typeof IntersectionObserver<"u";e&&(J?(J.disconnect(),Un()):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=Mt(r);o&&Pt(r)==="viewport"&&Pe(o)},la);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=Pt(t);if(n==="render"){let r=Mt(t);r&&Pe(r)}else n==="viewport"&&e&&J.observe(t)}}function pa(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 Nn(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||pa(t)||typeof location<"u"&&(location.href=e)}async function It(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?Cs(t,a):null;try{try{let d=s==="GET"&&!o&&!t?Ss(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=bs();w&&(y["x-webjs-have"]=w),t&&(y["x-webjs-frame"]=t),o!=null&&s!=="GET"&&s!=="HEAD"&&(y.accept=Qr+", 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(Qr)===0){let _=await A.text();return a===j&&(Ze(r),xn(_)),{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&&(Ze(r),Nn(e,A.status,null)),{ok:!1,status:u,aborted:!1};p=A.headers.get("x-webjs-build");let E=await Ps(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}:(Ze(r),Nn(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=rs(l);if(!h)return Ze(r),Nn(e,null,new Error("navigation response did not parse as HTML")),{ok:!1,status:u,aborted:!1};if(js(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():window.scrollTo(0,0)}else window.scrollTo(0,0)}return f&&(f.reader||f.rest)&&Fs(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&&vs(m,a)}}function Cs(e,t){if(typeof document>"u")return null;let n=null;try{n=document.querySelector(`webjs-frame#${CSS.escape(e)}`)}catch{n=document.getElementById(e)}if(!n)return null;let r=$t.has(n);return $t.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 vs(e,t){if($t.get(e)!==t)return;$t.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 xs(e,t,n){let r=Ft.has(e);return Ft.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 ks(e,t,n,r){if(Ft.get(e)!==t)return;Ft.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 ts(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 Ts(){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(Ts()&&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 Ns(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 qn(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=ha(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 ha(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 ma(e){if(!(!e||!e.start))for(let t=e.start.nextSibling;t&&t!==e.end;t=t.nextSibling)t.nodeType===1&&Ne(t)}function js(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=ts(document),g=ts(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){On(e.head),Lt(()=>{ya(f,p),Ut(f),Ne(f),Ot()},()=>Ne(f)),ns(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=hs(o,i);if(c){On(e.head),Lt(()=>{ba(o.get(c),i.get(c),e),Ot()},()=>ma(o.get(c))),ns(e.body);return}Ms(e.head),Ns(document.body,e.body);let a=[...e.body.childNodes];Lt(()=>{document.body.replaceChildren(...a),Ut(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 ba(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));qn(s,o),ga(r,e.start,e.end,s,o);for(let i=e.start.nextSibling;i&&i!==e.end;i=i.nextSibling)i.nodeType===1&&(Ut(i),Ne(i))}function ga(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);Bt(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 Bt(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),!Ln.has(r.name)&&e.getAttribute(r.name)!==r.value&&e.setAttribute(r.name,r.value);for(let r of[...e.attributes])Ln.has(r.name)||n.has(r.name)||e.removeAttribute(r.name);Dn(e,t)}function Dn(e,t){let n=[...e.childNodes],r=[...t.childNodes].map(c=>document.importNode(c,!0));qn(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);Bt(p,a),o.push(p),s.delete(l);continue}let f=n[c];if(f&&f.nodeType===1&&!Oe(f)&&f.tagName===a.tagName){Bt(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 Rs(){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 Ze(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 ya(e,t){Dn(e,t)}function Ls(){if(typeof document>"u")return"";let e=document.querySelector('meta[name="csp-nonce"]');return e&&e.getAttribute("content")||""}function Hn(e){let t=document.createElement("script");for(let r of e.attributes)r.name!=="nonce"&&t.setAttribute(r.name,r.value);let n=Ls();return n&&t.setAttribute("nonce",n),t.textContent=e.textContent,t}function Os(e){if(!e.hasAttribute("nonce"))return e.cloneNode(!0);let t=e.cloneNode(!0),n=Ls();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 On(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(Hn(r)):document.head.appendChild(Os(r))))}function Ms(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(Hn(o)):t.appendChild(Os(o))))}function Ne(e){typeof customElements>"u"||Wn(e)}function Wn(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&&Wn(n.shadowRoot))}function ns(e){for(let t of e.querySelectorAll("template[data-webjs-resolve]"))document.body.appendChild(t.cloneNode(!0))}async function Ps(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 Is(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 $s(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&&Wn(o)}async function Fs(e,t,n,r){let s=n,o=()=>{let i;for(;i=Is(s);){if(!r())return!1;$s(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 Ut(e){for(let t of e.querySelectorAll("script"))t.replaceWith(Hn(t))}function wa(e){return L.get(pe(e))||null}function _a(){return fe.size}function Sa(){L.clear(),fe.clear(),je.length=0,Qe.clear(),Dt(),Un()}function Aa(){return j}function Ea(){return++j}function Ca(){return q}function va(e){q=e}function xa(e){return qt.test(e)}var Qr,X,M,j,Tn,q,Rt,qt,ps,es,ra,O,ia,gs,ys,aa,ca,la,L,fe,je,Qe,Re,et,J,Te,tt,$t,Ft,Ln,Cn=Z(()=>{En();Nt();Nt();Yr();kn();Qr="text/vnd.webjs-stream.html";X=!1,M=null,j=0,Tn=null;q=null,Rt=null;qt=/\.(?:pdf|zip|tar|gz|7z|rar|dmg|exe|msi|deb|rpm|apk|ipa|xlsx?|docx?|pptx?|csv|odt|ods|odp|rtf|epub|mobi|xml|json|rss|atom|txt|md|wasm|mp3|mp4|mov|avi|webm|ogg|flac|wav|m4a|m4v|mkv|png|jpe?g|gif|webp|avif|bmp|ico|svg|tiff?|heic)$/i;ps="_top";es=new Set;ra=16,O=new Map;ia=8,gs=3e4,ys=3,aa=24,ca=100,la=250,L=new Map,fe=new Set,je=[],Qe=new Set,Re=null,et=null,J=null,Te=new WeakMap,tt=new Set;$t=new WeakMap;Ft=new WeakMap;Ln=new Set(["value","checked","selected","indeterminate","disabled","open","popover"]);Mn()});function zt(e,...t){return{_$webjs:"template",strings:e,values:t}}function N(e){return!!e&&typeof e=="object"&&e._$webjs==="template"}var C="w$";function zs(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 Kt(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 Z=(e,t)=>()=>(e&&(t=e(e=0)),t);var Zn=(e,t)=>{for(var n in t)Ys(e,n,{get:t[n],enumerable:!0})};function Lr(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 Or(e))}function D(e){return Mr(JSON.parse(e))}async function Or(e){let t=ii();return await ai(e,t),le(e,t)}function Mr(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;Lr(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;Lr(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=Z(()=>{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={};Zn(Gr,{observeLazy:()=>Xi,observeViewportOnce:()=>ea});function Kr(e){let t=An.get(e);return t||(t=import(e).finally(()=>An.delete(e)),An.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(Zi,{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 Zi(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 Qi(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 ea(e,t){return typeof IntersectionObserver>"u"?(t(),()=>{}):(Ye||(Ye=new IntersectionObserver(Qi,{rootMargin:"200px"})),Tt.set(e,t),Ye.observe(e),()=>{Tt.delete(e),Ye?.unobserve(e)})}var ue,Je,An,Ye,Tt,Yr=Z(()=>{ue=new Map,Je=null,An=new Map;Ye=null,Tt=new WeakMap});var En,vn=Z(()=>{En=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(()=>(Cn(),Jr)).then(({loadFrame:n})=>{this._webjsLoadedSrc!==t||!this.isConnected||n(this,t)})}}:null;typeof customElements<"u"&&En&&!customElements.get("webjs-frame")&&customElements.define("webjs-frame",En)});function na(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 xn(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 ta,kn,Nt=Z(()=>{ta=new Set(["append","prepend","before","after","replace","update"]);kn=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=ta.has(t)?this.querySelector("template"):null;try{for(let i of r){let c=o?o.content.cloneNode(!0):null;na(t,i,c)}}finally{this.remove()}}}:null;typeof customElements<"u"&&kn&&!customElements.get("webjs-stream")&&customElements.define("webjs-stream",kn)});var Xr,Zr=Z(()=>{Xr=typeof HTMLElement<"u"?class extends HTMLElement{connectedCallback(){this.style.display||(this.style.display="contents")}}:null;typeof customElements<"u"&&Xr&&!customElements.get("webjs-suspense")&&customElements.define("webjs-suspense",Xr)});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)Xe.has(s)||Xe.set(s,r[s])}catch{}n?n():t.remove?.()}function ra(e,t,n){Qr||(Qr=!0,jt());let r=`${e}/${t}/${n}`;if(Xe.has(r)){let s=Xe.get(r);return Xe.delete(r),s}return ts}var Xe,ts,Qr,Tn=Z(()=>{ke();Xe=new Map,ts=Symbol("webjs.seed.miss"),Qr=!1});var Jr={};Zn(Jr,{_FRAME_TOP:()=>bs,_LIVE_ATTRS:()=>In,_activeFrameId:()=>ms,_addNewHeadElements:()=>Pn,_applyStreamedResolve:()=>qs,_blurOutgoingFocus:()=>Ot,_buildSubmitFormData:()=>ps,_bumpNavToken:()=>ka,_clearFormBusy:()=>Rs,_clearFrameBusy:()=>Ns,_collectChildrenSlots:()=>Me,_currentPageUrl:()=>xa,_diffElementInPlace:()=>Ut,_eligibleAnchorHref:()=>It,_findAnchorInPath:()=>hs,_getSubmitAction:()=>ds,_getSubmitMethod:()=>fs,_isNonHtmlPath:()=>ja,_keyOf:()=>Oe,_longestSharedPath:()=>ys,_markFormBusy:()=>js,_markFrameBusy:()=>Ts,_mergeHead:()=>Fs,_navToken:()=>Ca,_onPopState:()=>Fn,_onSubmit:()=>Bn,_prefetch:()=>Ie,_prefetchHasHoverPointer:()=>Es,_prefetchInflightSize:()=>Ea,_prefetchMode:()=>Pt,_prefetchPeek:()=>Aa,_prefetchSaysSaveData:()=>Dn,_prefetchSuppressed:()=>vs,_prefetchTake:()=>Cs,_reactivateScripts:()=>qt,_readStreamedShell:()=>Bs,_reconcileChildren:()=>Vn,_regraftPermanentElements:()=>Os,_regraftPermanentInSlice:()=>Wn,_resetPrefetch:()=>va,_resetWarnOnce:()=>Na,_resolveTargetFrameId:()=>Un,_restoreOptimistic:()=>Ze,_runWithTransition:()=>Lt,_setCurrentPageUrl:()=>Ta,_snapshotCache:()=>O,_streamBoundariesProgressively:()=>Ds,_takeResolveUnit:()=>Us,_viewTransitionsEnabled:()=>Ls,collectChildrenSlots:()=>Me,disableClientRouter:()=>as,enableClientRouter:()=>$n,loadFrame:()=>oa,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 sa(){Nn||typeof MutationObserver>"u"||typeof customElements>"u"||(Nn=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)}}),Nn.observe(document.body,{childList:!0,subtree:!0}))}function $n(){X||typeof document>"u"||(X=!0,document.addEventListener("click",us,!1),document.addEventListener("submit",Bn,!1),window.addEventListener("popstate",Fn),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",Mn),sa(),Mn(),typeof history<"u"&&"scrollRestoration"in history&&(Rt=history.scrollRestoration,history.scrollRestoration="manual"),typeof location<"u"&&(q=location.href))}function as(){X&&(X=!1,document.removeEventListener("click",us,!1),document.removeEventListener("submit",Bn,!1),window.removeEventListener("popstate",Fn),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",Mn),Ht(),Hn(),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 qn(n.href,t?.replace??!1,null)}async function oa(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(!X||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=Un(t);qn(n,!1,s)}function Fn(e){qn(location.href,!0,null)}function Bn(e){if(!X||e.defaultPrevented)return;let t=e.target;if(!t||t.nodeType!==1||t.tagName!=="FORM"||t.hasAttribute("data-no-router"))return;let n=e.submitter??null;if(n&&n.hasAttribute("data-no-router"))return;let r=n&&n.getAttribute("formtarget")||t.getAttribute("target")||"";if(r&&r!=="_self")return;let 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=Un(n||t);ca(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 Un(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){Rn.has(e)||(Rn.add(e),typeof console<"u"&&console.warn&&console.warn(t))}function rs(){if(typeof process<"u"&&process.env||Ln||typeof document>"u"||typeof getComputedStyle!="function")return;let e=document.documentElement;if(!e)return;Ln=!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>ia;){let r=O.keys().next().value;O.delete(r)}}function aa(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 qn(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=Is());try{if(t){let c=aa(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 ca(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=Is(),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 Dn(){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 pa(e){let t=e.getAttribute("rel");return t?t.toLowerCase().split(/\s+/).filter(Boolean):[]}function It(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 vs(e){if(e.hasAttribute("data-no-prefetch"))return!0;let t=pa(e);return t.includes("external")||t.includes("no-prefetch")}function Pt(e){if(vs(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 Ie(e){if(!X||typeof fetch!="function"||Dn())return;let t=pe(e);if(fe.has(t)||Qe.has(t))return;let n=L.get(t);if(n&&On()-n.at<Ss)return;if(fe.size>=As){for(Qe.add(t),je.push(e);je.length>ua;){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();ma(t,{html:l,build:c,finalUrl:a,at:On()})}).catch(()=>{}).finally(()=>{fe.delete(t),ha()})}function ha(){for(;je.length&&fe.size<As;){let e=je.shift();Qe.delete(pe(e)),Ie(e)}}function ma(e,t){for(L.has(e)&&L.delete(e),L.set(e,t);L.size>la;){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 Cs(e){let t=pe(e),n=L.get(t);return!n||(L.delete(t),On()-n.at>=Ss)?null:n}function On(){try{if(typeof performance<"u"&&typeof performance.now=="function")return performance.now()}catch{}return 0}function Le(e){if(!X)return;let t=xs(e.target);if(!t)return;let n=Pt(t);if(n==="none"||n==="render")return;let r=It(t);if(r){if(e.type==="touchstart"){Ie(r);return}n==="intent"&&(et===t&&Re||(Ht(),et=t,Re=setTimeout(()=>{Re=null,et=null,Ie(r)},fa)))}}function ks(e){let t=xs(e.target);t&&t===et&&Ht()}function Ht(){Re&&(clearTimeout(Re),Re=null),et=null}function Hn(){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 Mn(){if(typeof document>"u"||Dn())return;let e=typeof IntersectionObserver<"u";e&&(J?(J.disconnect(),Hn()):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=It(r);o&&Pt(r)==="viewport"&&Ie(o)},da);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=Pt(t);if(n==="render"){let r=It(t);r&&Ie(r)}else n==="viewport"&&e&&J.observe(t)}}function ba(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 jn(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||ba(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?Cs(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 C=A.headers.get("content-type")||"",T=/^text\/html\b/i.test(C);if(C.toLowerCase().indexOf(ns)===0){let _=await A.text();return a===j&&(Ze(r),xn(_)),{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&&(Ze(r),jn(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}:(Ze(r),jn(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 Ze(r),jn(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 Wn(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=ga(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 ga(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 ya(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){Pn(e.head),Lt(()=>{Sa(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){Pn(e.head),Lt(()=>{wa(o.get(c),i.get(c),e),Ot()},()=>ya(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 wa(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));Wn(s,o),_a(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 _a(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);Vn(e,t)}function Vn(e,t){let n=[...e.childNodes],r=[...t.childNodes].map(c=>document.importNode(c,!0));Wn(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 Is(){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 Ze(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 Sa(e,t){Vn(e,t)}function Ps(){if(typeof document>"u")return"";let e=document.querySelector('meta[name="csp-nonce"]');return e&&e.getAttribute("content")||""}function zn(e){let t=document.createElement("script");for(let r of e.attributes)r.name!=="nonce"&&t.setAttribute(r.name,r.value);let n=Ps();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=Ps();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 Pn(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(zn(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(zn(o)):t.appendChild($s(o))))}function Ne(e){typeof customElements>"u"||Kn(e)}function Kn(e){let t=e instanceof Element?[e,...e.querySelectorAll("*")]:[...e.querySelectorAll("*")];for(let n of t)n.tagName&&n.tagName.includes("-")&&(customElements.upgrade(n),n.shadowRoot&&Kn(n.shadowRoot))}function 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&&Kn(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(zn(t))}function Aa(e){return L.get(pe(e))||null}function Ea(){return fe.size}function va(){L.clear(),fe.clear(),je.length=0,Qe.clear(),Ht(),Hn()}function Ca(){return j}function ka(){return++j}function xa(){return q}function Ta(e){q=e}function Na(){Rn.clear(),Ln=!1}function ja(e){return Dt.test(e)}var ns,X,M,j,Nn,q,Rt,Dt,bs,Rn,Ln,ia,O,la,Ss,As,ua,fa,da,L,fe,je,Qe,Re,et,J,Te,tt,Ft,Bt,In,Cn=Z(()=>{vn();Nt();Nt();Zr();Tn();ns="text/vnd.webjs-stream.html";X=!1,M=null,j=0,Nn=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";Rn=new Set;Ln=!1;ia=16,O=new Map;la=8,Ss=3e4,As=3,ua=24,fa=100,da=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)&&$n()});function Kt(e,...t){return{_$webjs:"template",strings:e,values:t}}function N(e){return!!e&&typeof e=="object"&&e._$webjs==="template"}var v="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(`
|
|
2
2
|
`),n.appendChild(r)}}function st(e){return!e||!e.length?"":`<style>${e.map(t=>t.text).join(`
|
|
3
|
-
`)}</style>`}function ot(e){return String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function $(e){return String(e).replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<")}var Jn=Symbol.for("webjs.repeat");function Xn(e,t,n){return{[Jn]:!0,items:[...e],keyFn:t,templateFn:n}}function Q(e){return!!e&&typeof e=="object"&&e[Jn]===!0}function Gt(e){return{_$webjs:"unsafe-html",value:String(e??"")}}function be(e){return!!e&&typeof e=="object"&&e._$webjs==="unsafe-html"}function Ks(e){return{_$webjs:"live",value:e}}function ge(e){return!!e&&typeof e=="object"&&e._$webjs==="live"}function Gs(e,t){return{_$webjs:"keyed",key:e,value:t}}function ee(e){return!!e&&typeof e=="object"&&e._$webjs==="keyed"}function Ys(e,t){return{_$webjs:"guard",deps:e,fn:t}}function te(e){return!!e&&typeof e=="object"&&e._$webjs==="guard"}function Js(e){return{_$webjs:"template-content",template:e}}function ye(e){return!!e&&typeof e=="object"&&e._$webjs==="template-content"}function Xs(e){return{_$webjs:"ref",target:e}}function ne(e){return!!e&&typeof e=="object"&&e._$webjs==="ref"}function Zs(){return{value:void 0}}function Qs(e){return{_$webjs:"cache",value:e}}function re(e){return!!e&&typeof e=="object"&&e._$webjs==="cache"}function eo(...e){return{_$webjs:"until",args:e}}function se(e){return!!e&&typeof e=="object"&&e._$webjs==="until"}function to(e,t){return{_$webjs:"async-append",iterable:e,mapper:t}}function we(e){return!!e&&typeof e=="object"&&e._$webjs==="async-append"}function no(e,t){return{_$webjs:"async-replace",iterable:e,mapper:t}}function _e(e){return!!e&&typeof e=="object"&&e._$webjs==="async-replace"}function ro(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,Yt=0,Zn=(e,t)=>Object.is(e,t),at=()=>{},Qn=()=>!1;function er(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)er(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 tn(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&&Zt(t)&&$e(t.producers[n],t),t.producers[n]!==e&&(t.producers[n]=e,Zt(t)&&er(e,t)),t.producerLastReadVersions[n]=e.version}function Zt(e){return e.consumerIsAlwaysLive||e.liveConsumers&&e.liveConsumers.size>0}function tr(e){if(!e.liveConsumers||e.liveConsumers.size===0)return;let t=W;W=!0;try{for(let n of e.liveConsumers)n.dirty||so(n)}finally{W=t}}function so(e){e.dirty=!0,tr(e),e.consumerMarkedDirty.call(e.wrapper||e)}function ct(e){if(!(!e.dirty&&e.lastCleanEpoch===Ae)){if(!e.producerMustRecompute()&&!oo(e)){e.dirty=!1,e.lastCleanEpoch=Ae;return}e.producerRecomputeValue(),e.dirty=!1,e.lastCleanEpoch=Ae}}function oo(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 Qt(e){e&&(e.nextProducerIndex=0);let t=F;return F=e,t}function en(e,t){if(F=t,!!e){if(Zt(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=Qn,this.producerRecomputeValue=at,this.consumerMarkedDirty=at,this.wrapper=this,this.__isSignal=!0,this.__equal=n?.equals||Zn,this.watched=n?.[nn],this.unwatched=n?.[rn]}get(){return tn(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?nr(this):tr(this))}};function nr(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):nr(n))}finally{W=t}}var Jt=Symbol("unset"),Xt=Symbol("computing"),it=Symbol("errored"),Fe=class{constructor(t,n){this.__fn=t,this.__value=Jt,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||Zn,this.watched=n?.[nn],this.unwatched=n?.[rn];let r=this;this.producerMustRecompute=function(){return r.__value===Jt||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=Qt(r),i,c=!1;try{i=r.__fn.call(r.wrapper)}catch(l){i=it,r.__error=l,c=!0}finally{en(r,o)}if(!c&&(s!==Jt&&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),tn(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=Qn,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=Qt(this);try{for(let r of t)tn(r),r.__isComputed&&ct(r)}finally{en(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=Qt(this),r;try{r=t()}finally{en(this,n)}return this.dirty=!1,r}dispose(){for(let t of this.producers)$e(t,this);this.producers=[],this.producerLastReadVersions=[],this.__notify=null}},nn=Symbol("watched"),rn=Symbol("unwatched");function io(e){let t=F;F=null;try{return e()}finally{F=t}}function ao(e){return e.producers.slice()}function co(e){return e.liveConsumers?[...e.liveConsumers]:[]}function lo(e){return!!e.liveConsumers&&e.liveConsumers.size>0}function uo(e){return e.producers.length>0}function fo(){return F&&F.__isComputed?F:null}function po(e){Yt++,Se===null&&(Se=new Set);try{e()}finally{if(Yt--,Yt===0){let t=Se;Se=null;for(let n of t)n.__fire()}}}var Be={State:lt,Computed:Fe,subtle:{Watcher:ut,untrack:io,introspectSources:ao,introspectSinks:co,hasSinks:lo,hasSources:uo,currentComputed:fo,watched:nn,unwatched:rn}};function ho(e,t){return new lt(e,t)}function mo(e,t){return new Fe(e,t)}function bo(e){return!!(e&&typeof e=="object"&&e.__isSignal===!0)}function go(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 yo=`${C}s`,wo=`${C}e`;function rr(e){if(!e||e.nodeType!==8)return!1;let t=e.nodeValue;return t===yo||t===wo}function _o(e){for(let t of e.addedNodes)if(rr(t))return!0;for(let t of e.removedNodes)if(rr(t))return!0;return!1}function cr(){return typeof HTMLElement<"u"&&typeof HTMLSlotElement<"u"}var qe=cr(),ie=Symbol("webjs.slot.state"),V="data-webjs-light",ae="data-projection",De="actual",lr="fallback",ht=Symbol("webjs.slot.fallbackFrag"),So=64,Ue=null,sn=null,ft=null,sr=!1;function Ao(){sr||(qe=cr(),qe&&(Ue=HTMLSlotElement.prototype.assignedNodes,sn=HTMLSlotElement.prototype.assignedElements,ft=Object.getOwnPropertyDescriptor(Element.prototype,"assignedSlot"),HTMLSlotElement.prototype.assignedNodes=function(t){return this.hasAttribute(V)&&!or(this)?on(this,t):Ue?Ue.call(this,t):[]},HTMLSlotElement.prototype.assignedElements=function(t){return this.hasAttribute(V)&&!or(this)?on(this,t).filter(n=>n.nodeType===1):sn?sn.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||Eo(this)}}),sr=!0))}Ao();function or(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 on(e,t){if(e.getAttribute(ae)===lr)return[];let n=Array.from(e.childNodes);return!t||!t.flatten?n:an(n,new Set,0)}function an(e,t,n){if(n>=So)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=on(o,{flatten:!1});if(i.length>0)for(let c of an(i,t,n+1))r.push(c);else for(let c of an(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 Eo(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 cn(e){return!!e[ie]}function ur(e){let t=z(e);for(;e.firstChild;){let n=e.firstChild,r=dt(n);pt(t.assignedByName,r,n),e.removeChild(n)}}function fr(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 dr(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 pr(e){if(!qe)return;let t=z(e);t.childObserver||(t.childObserver=new MutationObserver(n=>{let r=!1;for(let s of n)if(!_o(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)||ir(t,o)&&(r=!0)}else if(s.type==="attributes"&&s.attributeName==="slot"){let o=s.target;(ir(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 hr(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 ir(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,Co(e)}))}function Co(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)||vo(t,i);for(let i of r)t.ownedSlots.has(i)||To(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?xo(t,f,a)&&o.push(f):ko(t,f)&&o.push(f)}}for(let i of o)No(i)}function vo(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;dr(e.pendingByName,s,r)}e.lastSnapshot.delete(t)}function xo(e,t,n){let r=t.getAttribute(ae)!==De,s=e.lastSnapshot.get(t)||[];if(!r&&jo(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 ko(e,t){let n=t.getAttribute(ae)===De;if(t.setAttribute(ae,lr),!n)return ar(t),!1;for(e.lastSnapshot.delete(t);t.firstChild;)t.removeChild(t.firstChild);return ar(t),!0}function ar(e){let t=e[ht];!t||t.childNodes.length===0||e.appendChild(t)}function To(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 mr(e,t){if(!cn(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);dr(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 No(e){e.dispatchEvent(new Event("slotchange",{bubbles:!0,composed:!1}))}function jo(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 br=new WeakMap,ln=Symbol.for("webjs.instance");function ve(e,t){let n=t,r=n[ln];if(N(e)){let s=e;if(r&&r.strings===s.strings){Ee(r,s.values);return}r&&gr(r,t);let o=t.firstChild;o&&o.nodeType===8&&o.data==="webjs-hydrate"&&o.remove();let i=Oo(s,t);n[ln]=i;return}if(r&&gr(r,t),n[ln]=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=br.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,Ro(b.content,r),Lo(b.content,r),n={templateEl:b,parts:r},br.set(t,n),n}function Ro(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 Lo(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 Oo(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 gr(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=un(n.slotEl);r&&mr(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":Io(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":Po(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=un(s);if(!c||Mo(s))return;let a=document.createDocumentFragment();for(;s.firstChild;)a.appendChild(s.firstChild);s[ht]=a,mt(c)};un(s)?o():queueMicrotask(o);break}case"noop":break}}function un(e){let t=e.parentElement;for(;t;){if(t[ie])return t;t=t.parentElement}return null}function Mo(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 Po(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 Io(e,t){return Vo(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)?Wo(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 zo(e,t.value);if(se(t))return Ko(e,t.args);if(oe(t))return Go(e,t.signal);if(we(t))return Yo(e,t);if(_e(t))return Jo(e,t);if(Q(t)){if(e.child&&e.child.kind==="repeat"){Bo(e,t);return}K(e);let s={kind:"repeat",map:new Map};e.child=s,Fo(n,s,t);return}if(Array.isArray(t)){if(e.child&&e.child.kind==="array"){Do(e,t);return}K(e);let s={kind:"array",items:[]};e.child=s,qo(n,s,t);return}if(e.child){let s=e.child;if(s.kind==="repeat")yr(s),e.child=void 0;else if(s.kind==="array")_r(s),e.child=void 0;else if(s.kind==="async-stream")Cr(s),e.child=void 0;else if("strings"in e.child){let o=e.child;if(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($o(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 $o(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 dn(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 Fo(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}=dn(f);t.map.set(l,p),c.appendChild(u)}i.insertBefore(c,e)}function Bo(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),fn(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}=dn(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 yr(e){for(let t of e.map.values())He(t),Ce(t.startNode,t.endNode);e.map.clear()}function Uo(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 wr(e){if(N(e)){let{inst:t,frag:n}=dn(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 qo(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}=wr(i);a&&s.appendChild(a),o.push(c)}r.insertBefore(s,e),t.items=o}function Do(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}=wr(a);p&&r.insertBefore(p,Ho(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 Ho(e,t,n){for(let r=t;r<e.length;r++){let s=Uo(e[r]);if(s&&s.parentNode)return s}return n}function _r(e){for(let t of e.items)bt(t);e.items=[]}function fn(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 Wo(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&&Sr(t),!e.child)return;let n=e.child;if(n.kind==="repeat")yr(n);else if(n.kind==="array")_r(n);else if(n.kind==="async-stream")Cr(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 Vo(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)&&Sr(n)}function zo(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();fn(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),fn(a.inst.startNode,a.inst.endNode,n.parentNode,n),Ee(a.inst,c.values),e.child=a.inst;return}}B(e,t)}function Ko(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 Go(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 Sr(e){e.__watchSub&&(e.__watchSub.dispose(),e.__watchSub=void 0,e.__watchSig=void 0)}function Yo(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,Ar(s,e,t)}function Jo(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,Ar(s,e,t)}async function Ar(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=Er(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 Er(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(...Er(n));return t}return[document.createTextNode(String(e))]}function Cr(e){e.aborted=!0;for(let t of e.nodes)t.parentNode&&t.parentNode.removeChild(t);e.nodes=[];try{e.iterator.return?.()?.catch?.(()=>{})}catch{}}var vr=null;function wt(e){vr=e||null}function Xo(){return vr||void 0}var xr=Symbol.for("webjs:registry"),kr=Symbol.for("webjs:classToTag"),_t=globalThis,U=_t[xr]||(_t[xr]=new Map),Tr=_t[kr]||(_t[kr]=new WeakMap),St=typeof window<"u"&&typeof customElements<"u";function pn(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}),Tr.set(t,e)}if(St){let e=customElements.define.bind(customElements);customElements.define=function(t,n,r){customElements.get(t)||e(t,n,r),pn(t,n)}}if(!St){let e=globalThis;e.customElements||(e.customElements={define(t,n){pn(t,n)},get(t){return U.get(t)?.cls},upgrade(){},whenDefined(t){let n=U.get(t);return Promise.resolve(n?.cls)}})}function hn(e,t){St?customElements.define(e,t):pn(e,t)}function Zo(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 mn(e){return U.get(e)?.cls}function Qo(e){return U.get(e)?.moduleUrl||null}function ei(e){return U.get(e)?.lazy===!0}function At(e){return Tr.get(e)}function bn(){return[...U.keys()]}xe();var Ir=typeof window<"u"&&typeof HTMLElement<"u";function pi(e,t){return e!==t}function hi(){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=hi(),this.__internals}},mi=["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 mi){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 bi=Ir?HTMLElement:Et,$r=Symbol("webjs.factoryProps"),Or=new WeakSet,ke=class e extends bi{static shadow=!1;static hydrate=void 0;static properties={};static styles=null;static register(t){hn(t,this)}static get observedAttributes(){let t=this.properties||{};return Object.keys(t).filter(n=>!t[n].state).map(Mr)}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(Or.has(t))return;let n=t;for(;n&&n!==e;){if(Object.hasOwn(n,"properties")&&!Object.hasOwn(n,$r)){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 via the \`default\` option or in the constructor. See https://docs.webjs.com/docs/components.`)}n=Object.getPrototypeOf(n)}Or.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||pi)(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)}}}_reflectAttribute(t,n,r){let s=Mr(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(!Ir)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=Pr(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()}Kt(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().`),cn(this)||(this.__isHydrating()?(z(this),fr(this)):ur(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&&pr(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&&hr(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 s=this.constructor,o=Pr(t),i=s.properties&&(s.properties[o]||s.properties[t]);if(!i)return;let c=typeof i=="object"?i:{type:i},a;if(c.converter&&c.converter.fromAttribute)a=c.converter.fromAttribute(r,c.type);else if(c.type===Number)a=r==null?null:Number(r);else if(c.type===Boolean)a=r!=null&&r!=="false";else if(c.type===Object||c.type===Array)try{a=r==null?null:JSON.parse(r)}catch{a=r}else a=r;this[o]!==a&&(this[o]=a,this._connected&&this.requestUpdate())}requestUpdate(t,n){t!==void 0&&!this._changedProperties.has(t)&&this._changedProperties.set(t,n),this._scheduleUpdate()}_scheduleUpdate(){this._updateResolve===null&&(this._updatePromise=new Promise(t=>{this._updateResolve=t})),!this._isUpdating&&(this._scheduled||!this._connected||(this._scheduled=!0,queueMicrotask(()=>{this._scheduled=!1;try{this._performRender()}catch(t){console.error("[webjs] lifecycle hook threw during update cycle:",t)}})))}_performRender(){if(!this._renderRoot)return;let t=this._changedProperties;this._isUpdating=!0;let n=!1,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 Mr(e){return e.replace(/([A-Z])/g,"-$1").toLowerCase()}function Pr(e){return e.replace(/-([a-z])/g,(t,n)=>n.toUpperCase())}function Ct(e){return new.target?Reflect.construct(ke,arguments,new.target):class extends ke{static properties=e;static[$r]=!0}}Object.setPrototypeOf(Ct,ke);Ct.prototype=ke.prototype;function gi(e,t={}){return e&&typeof e=="object"&&!("call"in e)&&(t=e,e=void 0),{...e?{type:e}:{},...t}}var Ac=Symbol.for("webjs.suspense");function yi(e){return{_$webjsSuspense:!0,fallback:e.fallback,children:e.children}}function vt(e){return!!e&&typeof e=="object"&&e._$webjsSuspense===!0}xe();var gn=null;function wi(e){gn=e}function yn(){if(!gn)return"";try{return gn()||""}catch{return""}}async function _i(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 k(e,n);return t&&t.ssr===!1?s:await Y(s,n,[],r)}async function k(e,t){if(e==null||e===!1||e===!0)return"";if(e&&typeof e.then=="function")return e=await e,k(e,t);if(be(e))return String(e.value??"");if(ge(e))return k(e.value,t);if(oe(e))return k(e.signal.get(),t);if(ee(e))return k(e.value,t);if(te(e))return k(e.fn(),t);if(ye(e)){let n=e.template;return String(n?.innerHTML??"")}if(ne(e))return"";if(re(e))return k(e.value,t);if(se(e)){let n=e.args;for(let r of n)if(!r||typeof r.then!="function")return k(r,t);if(n.length>0)try{let r=await Promise.race(n.map(s=>Promise.resolve(s).catch(()=>{})));return k(r,t)}catch{return""}return""}if(we(e)||_e(e))return"";if(Array.isArray(e))return(await Promise.all(e.map(r=>k(r,t)))).join("");if(Q(e)){let n=e;return(await Promise.all(n.items.map((s,o)=>k(n.templateFn(s,o),t)))).join("")}if(vt(e)){let n=e,r=await k(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)?Si(e,t):ot(String(e))}async function Si(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=xt(f)?"rawtext":"text",o==="rawtext"&&(p="")):/\s/.test(m)?o="in-tag":f+=m.toLowerCase();break;case"in-tag":s+=m,m===">"?(o=xt(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 k(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 k(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-${Pi(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 Ai=new Set(["document","window","localStorage","sessionStorage","navigator","matchMedia","requestAnimationFrame","getComputedStyle","IntersectionObserver","MutationObserver","ResizeObserver"]),Ei=new Set(["attachShadow","querySelector","querySelectorAll","getBoundingClientRect","focus","blur","scrollIntoView"]);function Ci(e){let t=e&&typeof e.message=="string"?e.message:"",n=/^(\w+) is not defined\b/.exec(t);return e instanceof ReferenceError&&n&&Ai.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&&Ei.has(n[1])?`\`${n[1]}\` is an HTMLElement method that does not exist on the server-side component instance during SSR.`:null)}function vi(){return typeof process<"u"&&process.env&&!0}function Ur(e,t,n){if(!(n===void 0?!vi():!!n))return"";let s=t&&t.message?t.message:String(t);return zt`<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">
|
|
3
|
+
`)}</style>`}function ot(e){return String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function $(e){return String(e).replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<")}var Qn=Symbol.for("webjs.repeat");function er(e,t,n){return{[Qn]:!0,items:[...e],keyFn:t,templateFn:n}}function Q(e){return!!e&&typeof e=="object"&&e[Qn]===!0}function Yt(e){return{_$webjs:"unsafe-html",value:String(e??"")}}function be(e){return!!e&&typeof e=="object"&&e._$webjs==="unsafe-html"}function Xs(e){return{_$webjs:"live",value:e}}function ge(e){return!!e&&typeof e=="object"&&e._$webjs==="live"}function Zs(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,tr=(e,t)=>Object.is(e,t),at=()=>{},nr=()=>!1;function rr(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)rr(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)&&rr(e,t)),t.producerLastReadVersions[n]=e.version}function Qt(e){return e.consumerIsAlwaysLive||e.liveConsumers&&e.liveConsumers.size>0}function sr(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,sr(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=nr,this.producerRecomputeValue=at,this.consumerMarkedDirty=at,this.wrapper=this,this.__isSignal=!0,this.__equal=n?.equals||tr,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?or(this):sr(this))}};function or(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):or(n))}finally{W=t}}var Xt=Symbol("unset"),Zt=Symbol("computing"),it=Symbol("errored"),Fe=class{constructor(t,n){this.__fn=t,this.__value=Xt,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||tr,this.watched=n?.[rn],this.unwatched=n?.[sn];let r=this;this.producerMustRecompute=function(){return r.__value===Xt||r.__value===Zt},this.producerRecomputeValue=function(){if(r.__value===Zt)throw new Error("Detected cycle in computations.");let s=r.__value;r.__value=Zt;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!==Xt&&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=nr,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=`${v}s`,Eo=`${v}e`;function ir(e){if(!e||e.nodeType!==8)return!1;let t=e.nodeValue;return t===Ao||t===Eo}function vo(e){for(let t of e.addedNodes)if(ir(t))return!0;for(let t of e.removedNodes)if(ir(t))return!0;return!1}function fr(){return typeof HTMLElement<"u"&&typeof HTMLSlotElement<"u"}var qe=fr(),ie=Symbol("webjs.slot.state"),V="data-webjs-light",ae="data-projection",De="actual",dr="fallback",ht=Symbol("webjs.slot.fallbackFrag"),Co=64,Ue=null,on=null,ft=null,ar=!1;function ko(){ar||(qe=fr(),qe&&(Ue=HTMLSlotElement.prototype.assignedNodes,on=HTMLSlotElement.prototype.assignedElements,ft=Object.getOwnPropertyDescriptor(Element.prototype,"assignedSlot"),HTMLSlotElement.prototype.assignedNodes=function(t){return this.hasAttribute(V)&&!cr(this)?an(this,t):Ue?Ue.call(this,t):[]},HTMLSlotElement.prototype.assignedElements=function(t){return this.hasAttribute(V)&&!cr(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)}}),ar=!0))}ko();function cr(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)===dr)return[];let n=Array.from(e.childNodes);return!t||!t.flatten?n:cn(n,new Set,0)}function cn(e,t,n){if(n>=Co)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 pr(e){let t=z(e);for(;e.firstChild;){let n=e.firstChild,r=dt(n);pt(t.assignedByName,r,n),e.removeChild(n)}}function hr(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 mr(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 br(e){if(!qe)return;let t=z(e);t.childObserver||(t.childObserver=new MutationObserver(n=>{let r=!1;for(let s of n)if(!vo(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)||lr(t,o)&&(r=!0)}else if(s.type==="attributes"&&s.attributeName==="slot"){let o=s.target;(lr(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 gr(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 lr(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;mr(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,dr),!n)return ur(t),!1;for(e.lastSnapshot.delete(t);t.firstChild;)t.removeChild(t.firstChild);return ur(t),!0}function ur(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 yr(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);mr(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 wr=new WeakMap,un=Symbol.for("webjs.instance");function Ce(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&&_r(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&&_r(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=wr.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]],C=A.lastIndexOf(a);S.push(C>=0?A.slice(C+1):A);for(let E=1;E<w.length;E++)S.push(t[w[E]]);let T=t[w[w.length-1]+1],I=T.indexOf(a);S.push(I>=0?T.slice(0,I):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+=`<!--${v}${h}-->`,r.push({kind:"child",path:[]});else if(o==="in-tag"){let d=`data-${v}${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-${v}${h}`;s+=`${S}=""`,r.push({kind:w,path:[],name:y})}else{s=s.slice(0,c);let w=`data-${v}${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-${v}${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,Io(b.content,r),Po(b.content,r),n={templateEl:b,parts:r},wr.set(t,n),n}function Io(e,t){let n=e.querySelectorAll("slot");for(let r of n){r.setAttribute(V,"");let s=t.length;r.setAttribute(`data-${v}${s}`,""),t.push({kind:"slot",path:[]})}}function Po(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(v)){let a=Number(c.slice(v.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-${v}`)){let f=Number(l.name.slice(`data-${v}`.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(`${v}s`),i=document.createComment(`${v}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 _r(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&&yr(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 Xo(e,t.args);if(oe(t))return Zo(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")Sr(s),e.child=void 0;else if(s.kind==="array")Er(s),e.child=void 0;else if(s.kind==="async-stream")xr(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}ve(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(`${v}s`),l=document.createComment(`${v}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 ve(e,t){if(!e.parentNode)return;let n=e;for(;n&&n!==t;){let r=n.nextSibling;n.parentNode?.removeChild(n),n=r}t.parentNode===e.parentNode&&t.parentNode?.removeChild(t)}function pn(e){let{templateEl:t,parts:n}=gt(e),r=t.content.cloneNode(!0),s=document.createComment(`${v}s`),o=document.createComment(`${v}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),ve(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),ve(l.startNode,l.endNode);s.map=a}function Sr(e){for(let t of e.map.values())He(t),ve(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),ve(e.inst.startNode,e.inst.endNode)):e.type==="text"&&e.node.parentNode?.removeChild(e.node)}function Ar(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}=Ar(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}=Ar(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 Er(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")Sr(n);else if(n.kind==="array")Er(n);else if(n.kind==="async-stream")xr(n);else if("strings"in n){let r=e.child;He(r),ve(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 Xo(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 Zo(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,Cr(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,Cr(s,e,t)}async function Cr(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=kr(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 kr(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(...kr(n));return t}return[document.createTextNode(String(e))]}function xr(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 Tr=null;function wt(e){Tr=e||null}function ti(){return Tr||void 0}var Nr=Symbol.for("webjs:registry"),jr=Symbol.for("webjs:classToTag"),_t=globalThis,U=_t[Nr]||(_t[Nr]=new Map),Rr=_t[jr]||(_t[jr]=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}),Rr.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 Rr.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"),Pr=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=>!t[n].state).map($r)}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(Pr.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 via the \`default\` option or in the constructor. See https://docs.webjs.com/docs/components.`)}n=Object.getPrototypeOf(n)}Pr.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)}}}_reflectAttribute(t,n,r){let s=$r(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),hr(this)):pr(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&&br(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&&gr(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 s=this.constructor,o=Fr(t),i=s.properties&&(s.properties[o]||s.properties[t]);if(!i)return;let c=typeof i=="object"?i:{type:i},a;if(c.converter&&c.converter.fromAttribute)a=c.converter.fromAttribute(r,c.type);else if(c.type===Number)a=r==null?null:Number(r);else if(c.type===Boolean)a=r!=null&&r!=="false";else if(c.type===Object||c.type===Array)try{a=r==null?null:JSON.parse(r)}catch{a=r}else a=r;this[o]!==a&&(this[o]=a,this._connected&&this.requestUpdate())}requestUpdate(t,n){t!==void 0&&!this._changedProperties.has(t)&&this._changedProperties.set(t,n),this._scheduleUpdate()}_scheduleUpdate(){this._updateResolve===null&&(this._updatePromise=new Promise(t=>{this._updateResolve=t})),!this._isUpdating&&(this._scheduled||!this._connected||(this._scheduled=!0,queueMicrotask(()=>{this._scheduled=!1;try{this._performRender()}catch(t){console.error("[webjs] lifecycle hook threw during update cycle:",t)}})))}_performRender(){if(!this._renderRoot)return;let t=this._changedProperties;this._isUpdating=!0;let n=!1,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);Ce(n,this._renderRoot)}_commitAsync(t){let n=this.__renderToken;if(this.__firstRendered&&this._overridesRenderFallback())try{let r=this.renderFallback();r!==void 0&&Ce(r,this._renderRoot)}catch(r){console.error("[webjs] renderFallback() threw:",r)}return Promise.resolve(t).then(r=>{n===this.__renderToken&&Ce(r,this._renderRoot)},r=>{n===this.__renderToken&&this._handleRenderError(r instanceof Error?r:new Error(String(r)))})}_overridesRenderFallback(){return this.renderFallback!==vt.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&&Ce(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 $r(e){return e.replace(/([A-Z])/g,"-$1").toLowerCase()}function Fr(e){return e.replace(/-([a-z])/g,(t,n)=>n.toUpperCase())}function vt(e){return new.target?Reflect.construct(xe,arguments,new.target):class extends xe{static properties=e;static[Ur]=!0}}Object.setPrototypeOf(vt,xe);vt.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 kc=Symbol.for("webjs.suspense");function Ai(e){return{_$webjsSuspense:!0,fallback:e.fallback,children:e.children}}function Ct(e){return!!e&&typeof e=="object"&&e._$webjsSuspense===!0}ke();var yn=null;function Ei(e){yn=e}function wn(){if(!yn)return"";try{return yn()||""}catch{return""}}async function vi(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(Ct(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)?Ci(e,t):ot(String(e))}async function Ci(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-${Bi(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><${e}> failed to render</strong>
|
|
5
5
|
<div style="margin-top:4px;white-space:pre-wrap">${s}</div>
|
|
6
|
-
</div>`}async function Y(e,t,n=[],r){e=await Ti(e,t,n,r);let s=bn();if(!s.length)return e;let o=[...s].sort((p,u)=>u.length-p.length),i=new RegExp(`<(${o.map(Ke).join("|")})(?=[\\s>/])((?:"[^"]*"|'[^']*'|[^>])*?)(/?)>`,"g"),c=[];for(let p of e.matchAll(i)){let[u,b,g,m]=p,h=mn(b);if(!h)continue;t&&t.usedComponents&&t.usedComponents.add(b);let d=m?`<${b}${g}>`:u,y=null;try{let w=h.shadow===!0;y=new h,y.__ssrTag=b,y.__ssrAncestors=n;let S=Br(g),A=Ii(S),v=new Set(Object.keys(Br(g)).map(E=>E.toLowerCase()));Li(y,S),Mi(y,S,h);for(let[E,_]of Object.entries(A))y[E]=_;typeof y.performServerUpdate=="function"&&y.performServerUpdate();let T=y.render?y.render():"";T&&typeof T.then=="function"&&(T=await T),d=Oi(d,y,v);let P=await k(T,t);if(w){let E=await Y(P,t,[...n,y],r),_=h.styles,I=Array.isArray(_)?_:_&&me(_)?[_]:[],he=st(I);c.push({start:p.index,end:p.index+u.length,text:`${d}<template shadowrootmode="open">${he}${E}</template>`})}else{if(P.trim()===""){c.push({start:p.index,end:p.index+u.length,text:`${d}<!--webjs-hydrate-->`});continue}let _="",I=p.index+u.length;if(!m){let Vt=p.index+u.length,rt=Ge(e,Vt,b);if(rt!==-1){_=e.slice(Vt,rt);let Ds=new RegExp(`</${Ke(b)}\\s*>`,"i"),Hs=e.slice(rt),Gn=Ds.exec(Hs),Ws=Gn?Gn[0].length:`</${b}>`.length;I=rt+Ws}else _=e.slice(Vt),I=e.length}let he=ji(_),nt=Ri(P,he),qs=await Y(nt,t,[...n,y],r);c.push({start:p.index,end:I,text:`${d}<!--webjs-hydrate-->${qs}</${b}>`})}}catch(w){let S=Ci(w);console.error(S?`[webjs] SSR failed for <${b}>: ${S} It was touched in the component's constructor or render(), which run during SSR. Move browser-only work to connectedCallback() or a lifecycle hook (firstUpdated/updated), which SSR never calls; seed first-paint defaults in the constructor only from server-known inputs (attributes / props).`:`[webjs] SSR failed for <${b}>:`,w);let A=w instanceof Error?w:new Error(String(w)),v="";try{let _;y&&typeof y.renderError=="function"&&(_=y.renderError(A)),_===void 0&&(_=Ur(b,A,r)),v=await k(_,t),v.trim()&&(v=await Y(v,t,y?[...n,y]:n,r))}catch(_){console.error(`[webjs] renderError() for <${b}> also threw:`,_),v=""}let T=p.index+u.length;if(!m){let _=p.index+u.length,I=Ge(e,_,b);if(I!==-1){let nt=new RegExp(`</${Ke(b)}\\s*>`,"i").exec(e.slice(I));T=I+(nt?nt[0].length:`</${b}>`.length)}else T=e.length}let P=h.shadow===!0,E;if(P){let _=h.styles,I=Array.isArray(_)?_:_&&me(_)?[_]:[],he=st(I);E=`${d}<template shadowrootmode="open">${he}${v}</template>`}else E=`${d}<!--webjs-hydrate-->${v}</${b}>`;c.push({start:p.index,end:T,text:E})}}if(!c.length)return e;c.sort((p,u)=>p.start-u.start);let a=[],l=-1;for(let p of c)p.start>=l&&(a.push(p),l=p.end);let f=e;for(let p=a.length-1;p>=0;p--){let{start:u,end:b,text:g}=a[p];f=f.slice(0,u)+g+f.slice(b)}return f}var xi=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]);function ki(e){return xi.has(e.toLowerCase())}async function Ti(e,t,n=[],r){if(e.indexOf("<webjs-suspense")===-1)return e;let s=/<webjs-suspense((?:"[^"]*"|'[^']*'|[^>])*?)>/i,o="",i=e;for(let c=0;c<1e4;c++){let a=s.exec(i);if(!a){o+=i;break}let l=a.index,f=a.index+a[0].length;o+=i.slice(0,l);let p=a[1]||"",u=/data-webjs-fallback="([^"]*)"/i.exec(p),b=u?kt(u[1]):"",g=Ge(i,f,"webjs-suspense"),m,h;if(g===-1)m=i.slice(f),h="";else{m=i.slice(f,g);let d=/<\/webjs-suspense\s*>/i.exec(i.slice(g));h=i.slice(g+(d?d[0].length:17))}if(t){let d=`s${t.nextId++}`;t.pending.push({id:d,promise:Promise.resolve(Gt(m))}),o+=`<webjs-suspense id="${d}">${b}</webjs-suspense>`}else{let d=await Y(m,t,n,r);o+=`<webjs-suspense>${d}</webjs-suspense>`}i=h}return o}function Ge(e,t,n){let r=Ke(n),s=new RegExp(`<${r}(?:[\\s>/])`,"gi"),o=new RegExp(`</${r}\\s*>`,"gi");s.lastIndex=t,o.lastIndex=t;let i=1;for(;i>0;){let c=s.exec(e),a=o.exec(e);if(!a)return-1;if(c&&c.index<a.index)i++,o.lastIndex=c.index+1;else{if(i--,i===0)return a.index;s.lastIndex=a.index+1}}return-1}function Ni(e){let t=/\bslot\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s>]+))/i.exec(e);if(!t)return null;let n=t[1]??t[2]??t[3]??"";return n===""?null:n}function ji(e){let t=new Map,n="",r=0;for(;r<e.length;){let s=e.indexOf("<",r);if(s===-1){n+=e.slice(r);break}s>r&&(n+=e.slice(r,s));let o=e.slice(s);if(o.startsWith("<!--")){let h=e.indexOf("-->",s+4);if(h===-1){n+=o,r=e.length;break}n+=e.slice(s,h+3),r=h+3;continue}if(o.startsWith("<!")||o.startsWith("</")){let h=e.indexOf(">",s);if(h===-1){n+=o,r=e.length;break}n+=e.slice(s,h+1),r=h+1;continue}let i=/^<([a-zA-Z][\w-]*)((?:"[^"]*"|'[^']*'|[^>])*?)(\/?)>/.exec(o);if(!i){n+="<",r=s+1;continue}let[c,a,l,f]=i,p=a.toLowerCase(),u=!!f||ki(p),b=Ni(l),g;if(u)g=s+c.length;else{let h=s+c.length,d=Ge(e,h,p);if(d===-1){let v=e.slice(s);b!==null?Fr(t,b,v):n+=v,r=e.length;continue}let y=new RegExp(`</${Ke(p)}\\s*>`,"i"),w=e.slice(d),S=y.exec(w),A=S?S[0].length:`</${p}>`.length;g=d+A}let m=e.slice(s,g);b!==null?Fr(t,b,m):n+=m,r=g}return n.length>0&&t.set(null,n),t}function Fr(e,t,n){let r=e.get(t);r!==void 0?e.set(t,r+n):e.set(t,n)}function Ri(e,t){let n=new Set,r="",s=0,o=/<slot((?:"[^"]*"|'[^']*'|[^>])*?)(\/?)>/gi,i;for(;(i=o.exec(e))!==null;){r+=e.slice(s,i.index);let[c,a,l]=i,f=!!l,p=/\bname\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s>]+))/i.exec(a),u=p?p[1]??p[2]??p[3]:null,b=a.replace(/\bname\s*=\s*(?:"[^"]*"|'[^']*'|[^\s>]+)/i,"").trim(),g="",m;if(f)m=i.index+c.length;else{let w=i.index+c.length,S=Ge(e,w,"slot");if(S===-1)g=e.slice(w),m=e.length;else{g=e.slice(w,S);let A=/<\/slot\s*>/i,v=e.slice(S),T=A.exec(v),P=T?T[0].length:7;m=S+P}}let h=t.get(u),d=u!==null?` name="${$(u)}"`:"",y=b?` ${b}`:"";h!==void 0&&!n.has(u)?(n.add(u),r+=`<slot data-webjs-light data-projection="actual"${d}${y}>${h}</slot>`):r+=`<slot data-webjs-light data-projection="fallback"${d}${y}>${g}</slot>`,s=m,o.lastIndex=m}return r+=e.slice(s),r}function Ke(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function xt(e){return e==="script"||e==="style"}function Br(e){let t={},n=/([a-zA-Z_:][\w:.-]*)(?:\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s>]+)))?/g,r;for(;(r=n.exec(e))!==null;)t[r[1]]=r[2]??r[3]??r[4]??"";return t}function Li(e,t){if(!(!e||typeof e.setAttribute!="function"))for(let[n,r]of Object.entries(t))e.setAttribute(n,kt(r))}function Oi(e,t,n){if(!t||typeof t.getAttributeNames!="function")return e;let r="";for(let s of t.getAttributeNames()){let o=String(s).toLowerCase();if(n.has(o))continue;let i=t.getAttribute(s);r+=i===""?` ${o}`:` ${o}="${$(String(i))}"`}return r?`${e.slice(0,-1)}${r}>`:e}function Mi(e,t,n){let r=n.properties||{};for(let[s,o]of Object.entries(t)){let i=r[s]||r[wn(s)],c=r[s]?s:wn(s);if(!i){e[c]=o;continue}let a=typeof i=="object"?i:{type:i};if(a.type===Number)e[c]=Number(o);else if(a.type===Boolean)e[c]=o!=="false";else if(a.type===Object||a.type===Array)try{e[c]=JSON.parse(kt(o))}catch{e[c]=o}else e[c]=o}}function wn(e){return e.replace(/-([a-z])/g,(t,n)=>n.toUpperCase())}function Pi(e){return e.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}function kt(e){return e.replace(/</g,"<").replace(/"/g,'"').replace(/&/g,"&")}function Ii(e){let t={};for(let n of Object.keys(e)){if(!n.startsWith("data-webjs-prop-"))continue;let r=wn(n.slice(16));try{t[r]=D(kt(e[n]))}catch{}delete e[n]}return t}function $i(e,t={ssr:!0}){let n=t&&t.suspenseCtx,r=t&&t.dev!==void 0?t.dev:n&&n.dev;return n&&n.dev===void 0&&r!==void 0&&(n.dev=r),new ReadableStream({async start(s){try{if(t&&t.ssr===!1)await R(e,n,s);else{let o=await k(e,n),i=await Y(o,n,[],r);s.enqueue(i)}n&&n.pending.length&&await Bi(n,s,r),s.close()}catch(o){s.error(o)}}})}async function R(e,t,n){if(!(e==null||e===!1||e===!0)){if(e&&typeof e.then=="function")return e=await e,R(e,t,n);if(be(e)){n.enqueue(String(e.value??""));return}if(ge(e))return R(e.value,t,n);if(oe(e))return R(e.signal.get(),t,n);if(ee(e))return R(e.value,t,n);if(te(e))return R(e.fn(),t,n);if(ye(e)){let r=e.template;n.enqueue(String(r?.innerHTML??""));return}if(!ne(e)){if(re(e))return R(e.value,t,n);if(se(e)){let r=e.args;for(let s of r)if(!s||typeof s.then!="function")return R(s,t,n);if(r.length>0)try{let s=await Promise.race(r.map(o=>Promise.resolve(o).catch(()=>{})));return R(s,t,n)}catch{return}return}if(!(we(e)||_e(e))){if(Array.isArray(e)){for(let r of e)await R(r,t,n);return}if(Q(e)){let r=e;for(let s=0;s<r.items.length;s++)await R(r.templateFn(r.items[s],s),t,n);return}if(vt(e)){let r=e;if(t){let s=`s${t.nextId++}`;n.enqueue(`<webjs-boundary id="${s}">`),await R(r.fallback,t,n),n.enqueue("</webjs-boundary>"),t.pending.push({id:s,promise:Promise.resolve(r.children)})}else await R(r.fallback,t,n);return}if(N(e)){await Fi(e,t,n);return}n.enqueue(ot(String(e)))}}}}async function Fi(e,t,n){let{strings:r,values:s}=e,o="text",i="",c=0,a="",l=0,f="",p="",u="";for(let b=0;b<r.length;b++){let g=r[b];for(let m=0;m<g.length;m++){let h=g[m];switch(o){case"text":u+=h,h==="<"&&(o="tag-open");break;case"tag-open":u+=h,h==="!"?o="bang-1":h==="/"?(o="tag-name",f=""):/[a-zA-Z]/.test(h)?(o="tag-name",f=h.toLowerCase()):o="text";break;case"bang-1":u+=h,o=h==="-"?"bang-dash":"tag-name";break;case"bang-dash":u+=h,h==="-"?(o="comment",l=0):o="tag-name";break;case"comment":u+=h,h==="-"?l+=1:(h===">"&&l>=2&&(o="text"),l=0);break;case"tag-name":u+=h,h===">"?(o=xt(f)?"rawtext":"text",o==="rawtext"&&(p="")):/\s/.test(h)?o="in-tag":f+=h.toLowerCase();break;case"in-tag":u+=h,h===">"?(o=xt(f)?"rawtext":"text",o==="rawtext"&&(p="")):!/\s/.test(h)&&h!=="/"&&(o="attr-name",i=h,c=u.length-1);break;case"rawtext":u+=h,p=(p+h.toLowerCase()).slice(-9),(p.endsWith("<\/script>")||p.endsWith("</style>"))&&(o="text",p="",f="");break;case"attr-name":h==="="?(o="after-eq",u+=h):/\s/.test(h)?(o="in-tag",i="",u+=h):h===">"?(o="text",i="",u+=h):(i+=h,u+=h);break;case"after-eq":h==='"'||h==="'"?(o="attr-quoted",a=h,u+=h):/\s/.test(h)?(o="in-tag",i="",u+=h):h===">"?(o="text",i="",u+=h):(o="attr-unquoted",u+=h);break;case"attr-unquoted":/\s/.test(h)?(o="in-tag",i="",u+=h):(h===">"&&(o="text",i=""),u+=h);break;case"attr-quoted":u+=h,h===a&&(o="in-tag",i="");break}}if(b<s.length){let m=s[b];if(m&&typeof m.then=="function"&&(m=await m),o==="comment")u+=String(m??""),l=0;else if(o==="rawtext")u+=String(m??""),p="";else if(o==="text")u&&(n.enqueue(u),u=""),await R(m,t,n);else if(o==="after-eq"){let h=i[0],d=i.slice(1);h==="@"||h==="."?(u=u.slice(0,c),o="in-tag",i=""):h==="?"?(u=u.slice(0,c),m&&(u+=`${d}=""`),o="in-tag",i=""):(u+=`"${$(String(m??""))}"`,o="in-tag",i="")}else(o==="attr-quoted"||o==="attr-unquoted")&&(u+=$(String(m??"")))}}u&&n.enqueue(u)}async function Bi(e,t,n){let r=yn(),s=r?` nonce="${$(r)}"`:"";for(;e.pending.length;){let o=e.pending.splice(0);await Promise.all(o.map(async({id:i,promise:c})=>{try{let a=await c,l=await k(a,e),f=await Y(l,e,[],n);t.enqueue(`<template data-webjs-resolve="${i}">${f}</template><script${s}>(function(){var t=document.currentScript.previousElementSibling;var b=document.getElementById("${i}");if(b&&t){b.replaceWith(t.content.cloneNode(true));t.remove()}document.currentScript.remove()})()<\/script>`)}catch(a){console.error(`[webjs] Suspense boundary "${i}" rejected:`,a);try{let l=a instanceof Error?a:new Error(String(a)),f=await Y(await k(Ur("webjs-suspense",l,n),e),e,[],n);t.enqueue(`<template data-webjs-resolve="${i}">${f}</template><script${s}>(function(){var t=document.currentScript.previousElementSibling;var b=document.getElementById("${i}");if(b&&t){b.replaceWith(t.content.cloneNode(true));t.remove()}document.currentScript.remove()})()<\/script>`)}catch(l){console.error(`[webjs] Suspense boundary "${i}" error render also threw:`,l)}}}))}}var qr=Symbol.for("webjs.notFound"),Dr=Symbol.for("webjs.redirect");function Ui(){let e=new Error("webjs: notFound()");throw e.__webjs=qr,e}function qi(e,t){let n=typeof t=="object"&&t!==null?t.status:t,r=new Error(`webjs: redirect(${e})`);throw r.__webjs=Dr,r.url=e,r.status=typeof n=="number"?n:void 0,r}function Di(e){return!!e&&e.__webjs===qr}function Hi(e){return!!e&&e.__webjs===Dr}function Wi(e,t={}){let n=t.reconnect!==!1,r=0,s=!1,o=null,i=[];function c(){s||(o=new WebSocket(Vi(e),t.protocols),o.onopen=a=>{for(r=0;i.length&&o&&o.readyState===WebSocket.OPEN;)o.send(i.shift());t.onOpen?.(a)},o.onmessage=a=>{let l=a.data;if(typeof l=="string")try{l=JSON.parse(l)}catch{}t.onMessage?.(l,a)},o.onerror=a=>{t.onError?.(a)},o.onclose=a=>{if(t.onClose?.(a),!s&&n){let l=Math.min(1e3*2**r++,3e4);setTimeout(c,l)}})}return c(),{send(a){let l=typeof a=="string"||a instanceof ArrayBuffer||ArrayBuffer.isView(a)?a:JSON.stringify(a);o&&o.readyState===WebSocket.OPEN?o.send(l):i.push(l)},close(a,l){s=!0;try{o?.close(a,l)}catch{}},get socket(){return o},get readyState(){return o?.readyState??3}}}function Vi(e){if(/^wss?:\/\//i.test(e))return e;let t=typeof location<"u"&&location.protocol==="https:"?"wss:":"ws:",n=typeof location<"u"?location.host:"";return`${t}//${n}${e.startsWith("/")?e:"/"+e}`}xe();var _n="application/vnd.webjs+json";async function zi(e,t={}){let n=new Headers(t.headers||{});n.has("accept")||n.set("accept",_n);let r=t.body;r!=null&&typeof r=="object"&&!(r instanceof FormData)&&!(r instanceof Blob)&&!(r instanceof ArrayBuffer)&&!(r instanceof URLSearchParams)&&!(typeof ReadableStream<"u"&&r instanceof ReadableStream)&&!ArrayBuffer.isView(r)&&(r=await ze(r),n.has("content-type")||n.set("content-type",_n));let s=await fetch(e,{...t,headers:n,body:r}),o=s.headers.get("content-type")||"",i=await s.text(),c=o.includes(_n)?i?D(i):null:o.includes("application/json")?i?JSON.parse(i):null:i;if(!s.ok){let a=c&&c.error||`richFetch ${e} -> ${s.status}`,l=new Error(a);throw l.status=s.status,l.body=c,l}return c}xe();Cn();En();Nt();async function ka(e,t,n){let r=e.get();e.set(t);let s;try{s=await n()}catch(o){throw e.set(r),o}return s&&s.success===!1&&e.set(r),s}kn();var Ht=0,Bs=new Map,Ie=new Map,Ta=1e3;function Na(e){if(!(!Array.isArray(e)||!e.length)){Ht+=1;for(let t of e)t&&Bs.set(t,Ht)}}function ja(){return Ht}function Ra(e,t,n){if(!(!Array.isArray(t)||!t.length)&&(Ie.delete(e),Ie.set(e,{tags:t.slice(),since:typeof n=="number"?n:Ht}),Ie.size>Ta)){let r=Ie.keys().next().value;r!==void 0&&Ie.delete(r)}}function La(e){let t=Ie.get(e);if(!t)return!1;for(let n of t.tags)if((Bs.get(n)||0)>t.since)return!0;return!1}function Oa(e){return e?e.split(",").map(t=>t.trim()).filter(Boolean):[]}var Ma="application/vnd.webjs+stream",Pa=1,Ia=2,$a=3,Us=new Uint8Array(0);function Fa(e,t){let n=t||Us,r=n.length,s=new Uint8Array(5+r);return s[0]=e&255,s[1]=r>>>24&255,s[2]=r>>>16&255,s[3]=r>>>8&255,s[4]=r&255,r&&s.set(n,5),s}function Ba(){let e=Us;return{push(t){if(t&&t.length){let r=new Uint8Array(e.length+t.length);r.set(e,0),r.set(t,e.length),e=r}let n=[];for(;e.length>=5;){let r=e[0],s=(e[1]<<24|e[2]<<16|e[3]<<8|e[4])>>>0;if(e.length<5+s)break;let o=e.slice(5,5+s);n.push({type:r,payload:o}),e=e.slice(5+s)}return n}}}var Ua=Symbol.for("webjs.context");function qa(e){return{__context__:Ua,name:e}}var Wt=class extends Event{constructor(t,n,r=!1){super("context-request",{bubbles:!0,composed:!0}),this.context=t,this.callback=n,this.subscribe=r}},Vn=class{constructor(t,{context:n,initialValue:r}){this._host=t,this._context=n,this._value=r,this._subscriptions=new Set,this._onRequest=s=>{let o=s;if(o.context===this._context)if(s.stopPropagation(),o.subscribe){let i={callback:o.callback},c=()=>{this._subscriptions.delete(i)};this._subscriptions.add(i),o.callback(this._value,c)}else o.callback(this._value)},typeof t.addController=="function"&&t.addController(this)}get value(){return this._value}setValue(t){if(!Object.is(this._value,t)){this._value=t;for(let n of this._subscriptions){let r=()=>{this._subscriptions.delete(n)};n.callback(t,r)}}}hostConnected(){this._host.addEventListener("context-request",this._onRequest)}hostDisconnected(){this._host.removeEventListener("context-request",this._onRequest),this._subscriptions.clear()}},zn=class{constructor(t,{context:n,subscribe:r=!0}){this._host=t,this._context=n,this._subscribe=r,this._value=void 0,this._unsubscribe=void 0,typeof t.addController=="function"&&t.addController(this)}get value(){return this._value}hostConnected(){this._dispatchRequest()}hostDisconnected(){this._unsubscribe&&(this._unsubscribe(),this._unsubscribe=void 0)}_dispatchRequest(){let t=new Wt(this._context,(n,r)=>{let s=this._value;this._value=n,r&&(this._unsubscribe=r),!Object.is(s,n)&&typeof this._host.requestUpdate=="function"&&this._host.requestUpdate()},this._subscribe);this._host.dispatchEvent(t)}};function Da(){return typeof window<"u"}var H={INITIAL:0,PENDING:1,COMPLETE:2,ERROR:3},Kn=class{constructor(t,{task:n,args:r,autoRun:s=!0}){this._host=t,this._taskFn=n,this._argsFn=r||(()=>[]),this._autoRun=s,this._status=H.INITIAL,this._value=void 0,this._error=void 0,this._abortController=null,this._prevArgs=null,typeof t.addController=="function"&&t.addController(this)}get status(){return this._status}get value(){return this._value}get error(){return this._error}async run(){this.abort();let t=new AbortController;this._abortController=t;let n=this._argsFn();this._prevArgs=n,this._status=H.PENDING,this._error=void 0,this._requestHostUpdate();try{let r=await this._taskFn(...n,{signal:t.signal});if(t.signal.aborted)return;this._value=r,this._status=H.COMPLETE,this._error=void 0}catch(r){if(t.signal.aborted)return;this._error=r,this._status=H.ERROR,this._value=void 0}finally{this._abortController===t&&(this._abortController=null)}this._requestHostUpdate()}abort(){this._abortController&&(this._abortController.abort(),this._abortController=null)}render(t={}){switch(this._status){case H.INITIAL:return t.initial?.();case H.PENDING:return t.pending?.();case H.COMPLETE:return t.complete?.(this._value);case H.ERROR:return t.error?.(this._error);default:return}}hostUpdate(){if(!this._autoRun||!Da())return;let t=this._argsFn();this._argsEqual(this._prevArgs,t)||this.run()}hostUpdated(){}hostConnected(){}hostDisconnected(){this.abort()}_requestHostUpdate(){typeof this._host.requestUpdate=="function"&&this._host.requestUpdate()}_argsEqual(t,n){if(t===null||t.length!==n.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==n[r])return!1;return!0}};export{zn as ContextConsumer,Vn as ContextProvider,Wt as ContextRequestEvent,Pa as FRAME_CHUNK,Ia as FRAME_END,$a as FRAME_ERROR,C as MARKER,Zr as SEED_MISS,Ma as STREAM_CONTENT_TYPE,Be as Signal,yi as Suspense,Kn as Task,H as TaskStatus,Ct as WebComponent,An as WebjsFrame,vn as WebjsStream,Xo as activeActionSignal,Kt as adoptStyles,bn as allTags,to as asyncAppend,no as asyncReplace,po as batch,Qs as cache,mo as computed,Wi as connectWS,La as consumeStale,qa as createContext,Ba as createFrameDecoder,Zs as createRef,yn as cspNonce,zs as css,Rr as deserialize,ss as disableClientRouter,go as effect,Mn as enableClientRouter,Fa as encodeFrame,$ as escapeAttr,ot as escapeText,ja as fetchMark,Ys as guard,zt as html,we as isAsyncAppend,_e as isAsyncReplace,me as isCSS,re as isCache,te as isGuard,ee as isKeyed,ei as isLazy,ge as isLive,Di as isNotFound,Hi as isRedirect,ne as isRef,Q as isRepeat,bo as isSignal,vt as isSuspense,N as isTemplate,ye as isTemplateContent,be as isUnsafeHTML,se as isUntil,oe as isWatch,Gs as keyed,Ks as live,mn as lookup,Qo as lookupModuleUrl,Na as markStale,os as navigate,Ui as notFound,ka as optimistic,D as parse,Oa as parseTagHeader,Zo as primeModuleUrl,gi as prop,qi as redirect,Xs as ref,hn as register,Ra as registerKeyTags,ve as render,xn as renderStream,$i as renderToStream,_i as renderToString,Xn as repeat,is as revalidate,zi as richFetch,jt as scanSeeds,jr as serialize,wt as setActiveActionSignal,wi as setCspNonceProvider,ho as signal,ze as stringify,st as stylesToString,At as tagOf,Qi as takeSeed,Js as templateContent,Gt as unsafeHTML,eo as until,ro as watch};
|
|
6
|
+
</div>`}async function Y(e,t,n=[],r){e=await Li(e,t,n,r);let s=gn();if(!s.length)return e;let o=[...s].sort((p,u)=>u.length-p.length),i=new RegExp(`<(${o.map(Ke).join("|")})(?=[\\s>/])((?:"[^"]*"|'[^']*'|[^>])*?)(/?)>`,"g"),c=[];for(let p of e.matchAll(i)){let[u,b,g,m]=p,h=bn(b);if(!h)continue;t&&t.usedComponents&&t.usedComponents.add(b);let d=m?`<${b}${g}>`:u,y=null;try{let w=h.shadow===!0;y=new h,y.__ssrTag=b,y.__ssrAncestors=n;let S=Dr(g),A=Ui(S),C=new Set(Object.keys(Dr(g)).map(E=>E.toLowerCase()));Pi(y,S),Fi(y,S,h);for(let[E,_]of Object.entries(A))y[E]=_;typeof y.performServerUpdate=="function"&&y.performServerUpdate();let T=y.render?y.render():"";T&&typeof T.then=="function"&&(T=await T),d=$i(d,y,C);let I=await x(T,t);if(w){let E=await Y(I,t,[...n,y],r),_=h.styles,P=Array.isArray(_)?_:_&&me(_)?[_]:[],he=st(P);c.push({start:p.index,end:p.index+u.length,text:`${d}<template shadowrootmode="open">${he}${E}</template>`})}else{if(I.trim()===""){c.push({start:p.index,end:p.index+u.length,text:`${d}<!--webjs-hydrate-->`});continue}let _="",P=p.index+u.length;if(!m){let zt=p.index+u.length,rt=Ge(e,zt,b);if(rt!==-1){_=e.slice(zt,rt);let zs=new RegExp(`</${Ke(b)}\\s*>`,"i"),Ks=e.slice(rt),Xn=zs.exec(Ks),Gs=Xn?Xn[0].length:`</${b}>`.length;P=rt+Gs}else _=e.slice(zt),P=e.length}let he=Mi(_),nt=Ii(I,he),Vs=await Y(nt,t,[...n,y],r);c.push({start:p.index,end:P,text:`${d}<!--webjs-hydrate-->${Vs}</${b}>`})}}catch(w){let S=Ti(w);console.error(S?`[webjs] SSR failed for <${b}>: ${S} It was touched in the component's constructor or render(), which run during SSR. Move browser-only work to connectedCallback() or a lifecycle hook (firstUpdated/updated), which SSR never calls; seed first-paint defaults in the constructor only from server-known inputs (attributes / props).`:`[webjs] SSR failed for <${b}>:`,w);let A=w instanceof Error?w:new Error(String(w)),C="";try{let _;y&&typeof y.renderError=="function"&&(_=y.renderError(A)),_===void 0&&(_=Hr(b,A,r)),C=await x(_,t),C.trim()&&(C=await Y(C,t,y?[...n,y]:n,r))}catch(_){console.error(`[webjs] renderError() for <${b}> also threw:`,_),C=""}let T=p.index+u.length;if(!m){let _=p.index+u.length,P=Ge(e,_,b);if(P!==-1){let nt=new RegExp(`</${Ke(b)}\\s*>`,"i").exec(e.slice(P));T=P+(nt?nt[0].length:`</${b}>`.length)}else T=e.length}let I=h.shadow===!0,E;if(I){let _=h.styles,P=Array.isArray(_)?_:_&&me(_)?[_]:[],he=st(P);E=`${d}<template shadowrootmode="open">${he}${C}</template>`}else E=`${d}<!--webjs-hydrate-->${C}</${b}>`;c.push({start:p.index,end:T,text:E})}}if(!c.length)return e;c.sort((p,u)=>p.start-u.start);let a=[],l=-1;for(let p of c)p.start>=l&&(a.push(p),l=p.end);let f=e;for(let p=a.length-1;p>=0;p--){let{start:u,end:b,text:g}=a[p];f=f.slice(0,u)+g+f.slice(b)}return f}var ji=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]);function Ri(e){return ji.has(e.toLowerCase())}async function Li(e,t,n=[],r){if(e.indexOf("<webjs-suspense")===-1)return e;let s=/<webjs-suspense((?:"[^"]*"|'[^']*'|[^>])*?)>/i,o="",i=e;for(let c=0;c<1e4;c++){let a=s.exec(i);if(!a){o+=i;break}let l=a.index,f=a.index+a[0].length;o+=i.slice(0,l);let p=a[1]||"",u=/data-webjs-fallback="([^"]*)"/i.exec(p),b=u?xt(u[1]):"",g=Ge(i,f,"webjs-suspense"),m,h;if(g===-1)m=i.slice(f),h="";else{m=i.slice(f,g);let d=/<\/webjs-suspense\s*>/i.exec(i.slice(g));h=i.slice(g+(d?d[0].length:17))}if(t){let d=`s${t.nextId++}`;t.pending.push({id:d,promise:Promise.resolve(Yt(m))}),o+=`<webjs-suspense id="${d}">${b}</webjs-suspense>`}else{let d=await Y(m,t,n,r);o+=`<webjs-suspense>${d}</webjs-suspense>`}i=h}return o}function Ge(e,t,n){let r=Ke(n),s=new RegExp(`<${r}(?:[\\s>/])`,"gi"),o=new RegExp(`</${r}\\s*>`,"gi");s.lastIndex=t,o.lastIndex=t;let i=1;for(;i>0;){let c=s.exec(e),a=o.exec(e);if(!a)return-1;if(c&&c.index<a.index)i++,o.lastIndex=c.index+1;else{if(i--,i===0)return a.index;s.lastIndex=a.index+1}}return-1}function Oi(e){let t=/\bslot\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s>]+))/i.exec(e);if(!t)return null;let n=t[1]??t[2]??t[3]??"";return n===""?null:n}function Mi(e){let t=new Map,n="",r=0;for(;r<e.length;){let s=e.indexOf("<",r);if(s===-1){n+=e.slice(r);break}s>r&&(n+=e.slice(r,s));let o=e.slice(s);if(o.startsWith("<!--")){let h=e.indexOf("-->",s+4);if(h===-1){n+=o,r=e.length;break}n+=e.slice(s,h+3),r=h+3;continue}if(o.startsWith("<!")||o.startsWith("</")){let h=e.indexOf(">",s);if(h===-1){n+=o,r=e.length;break}n+=e.slice(s,h+1),r=h+1;continue}let i=/^<([a-zA-Z][\w-]*)((?:"[^"]*"|'[^']*'|[^>])*?)(\/?)>/.exec(o);if(!i){n+="<",r=s+1;continue}let[c,a,l,f]=i,p=a.toLowerCase(),u=!!f||Ri(p),b=Oi(l),g;if(u)g=s+c.length;else{let h=s+c.length,d=Ge(e,h,p);if(d===-1){let C=e.slice(s);b!==null?qr(t,b,C):n+=C,r=e.length;continue}let y=new RegExp(`</${Ke(p)}\\s*>`,"i"),w=e.slice(d),S=y.exec(w),A=S?S[0].length:`</${p}>`.length;g=d+A}let m=e.slice(s,g);b!==null?qr(t,b,m):n+=m,r=g}return n.length>0&&t.set(null,n),t}function qr(e,t,n){let r=e.get(t);r!==void 0?e.set(t,r+n):e.set(t,n)}function Ii(e,t){let n=new Set,r="",s=0,o=/<slot((?:"[^"]*"|'[^']*'|[^>])*?)(\/?)>/gi,i;for(;(i=o.exec(e))!==null;){r+=e.slice(s,i.index);let[c,a,l]=i,f=!!l,p=/\bname\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s>]+))/i.exec(a),u=p?p[1]??p[2]??p[3]:null,b=a.replace(/\bname\s*=\s*(?:"[^"]*"|'[^']*'|[^\s>]+)/i,"").trim(),g="",m;if(f)m=i.index+c.length;else{let w=i.index+c.length,S=Ge(e,w,"slot");if(S===-1)g=e.slice(w),m=e.length;else{g=e.slice(w,S);let A=/<\/slot\s*>/i,C=e.slice(S),T=A.exec(C),I=T?T[0].length:7;m=S+I}}let h=t.get(u),d=u!==null?` name="${$(u)}"`:"",y=b?` ${b}`:"";h!==void 0&&!n.has(u)?(n.add(u),r+=`<slot data-webjs-light data-projection="actual"${d}${y}>${h}</slot>`):r+=`<slot data-webjs-light data-projection="fallback"${d}${y}>${g}</slot>`,s=m,o.lastIndex=m}return r+=e.slice(s),r}function Ke(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function kt(e){return e==="script"||e==="style"}function Dr(e){let t={},n=/([a-zA-Z_:][\w:.-]*)(?:\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s>]+)))?/g,r;for(;(r=n.exec(e))!==null;)t[r[1]]=r[2]??r[3]??r[4]??"";return t}function Pi(e,t){if(!(!e||typeof e.setAttribute!="function"))for(let[n,r]of Object.entries(t))e.setAttribute(n,xt(r))}function $i(e,t,n){if(!t||typeof t.getAttributeNames!="function")return e;let r="";for(let s of t.getAttributeNames()){let o=String(s).toLowerCase();if(n.has(o))continue;let i=t.getAttribute(s);r+=i===""?` ${o}`:` ${o}="${$(String(i))}"`}return r?`${e.slice(0,-1)}${r}>`:e}function Fi(e,t,n){let r=n.properties||{};for(let[s,o]of Object.entries(t)){let i=r[s]||r[_n(s)],c=r[s]?s:_n(s);if(!i){e[c]=o;continue}let a=typeof i=="object"?i:{type:i};if(a.type===Number)e[c]=Number(o);else if(a.type===Boolean)e[c]=o!=="false";else if(a.type===Object||a.type===Array)try{e[c]=JSON.parse(xt(o))}catch{e[c]=o}else e[c]=o}}function _n(e){return e.replace(/-([a-z])/g,(t,n)=>n.toUpperCase())}function Bi(e){return e.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}function xt(e){return e.replace(/</g,"<").replace(/"/g,'"').replace(/&/g,"&")}function Ui(e){let t={};for(let n of Object.keys(e)){if(!n.startsWith("data-webjs-prop-"))continue;let r=_n(n.slice(16));try{t[r]=D(xt(e[n]))}catch{}delete e[n]}return t}function qi(e,t={ssr:!0}){let n=t&&t.suspenseCtx,r=t&&t.dev!==void 0?t.dev:n&&n.dev;return n&&n.dev===void 0&&r!==void 0&&(n.dev=r),new ReadableStream({async start(s){try{if(t&&t.ssr===!1)await R(e,n,s);else{let o=await x(e,n),i=await Y(o,n,[],r);s.enqueue(i)}n&&n.pending.length&&await Hi(n,s,r),s.close()}catch(o){s.error(o)}}})}async function R(e,t,n){if(!(e==null||e===!1||e===!0)){if(e&&typeof e.then=="function")return e=await e,R(e,t,n);if(be(e)){n.enqueue(String(e.value??""));return}if(ge(e))return R(e.value,t,n);if(oe(e))return R(e.signal.get(),t,n);if(ee(e))return R(e.value,t,n);if(te(e))return R(e.fn(),t,n);if(ye(e)){let r=e.template;n.enqueue(String(r?.innerHTML??""));return}if(!ne(e)){if(re(e))return R(e.value,t,n);if(se(e)){let r=e.args;for(let s of r)if(!s||typeof s.then!="function")return R(s,t,n);if(r.length>0)try{let s=await Promise.race(r.map(o=>Promise.resolve(o).catch(()=>{})));return R(s,t,n)}catch{return}return}if(!(we(e)||_e(e))){if(Array.isArray(e)){for(let r of e)await R(r,t,n);return}if(Q(e)){let r=e;for(let s=0;s<r.items.length;s++)await R(r.templateFn(r.items[s],s),t,n);return}if(Ct(e)){let r=e;if(t){let s=`s${t.nextId++}`;n.enqueue(`<webjs-boundary id="${s}">`),await R(r.fallback,t,n),n.enqueue("</webjs-boundary>"),t.pending.push({id:s,promise:Promise.resolve(r.children)})}else await R(r.fallback,t,n);return}if(N(e)){await Di(e,t,n);return}n.enqueue(ot(String(e)))}}}}async function Di(e,t,n){let{strings:r,values:s}=e,o="text",i="",c=0,a="",l=0,f="",p="",u="";for(let b=0;b<r.length;b++){let g=r[b];for(let m=0;m<g.length;m++){let h=g[m];switch(o){case"text":u+=h,h==="<"&&(o="tag-open");break;case"tag-open":u+=h,h==="!"?o="bang-1":h==="/"?(o="tag-name",f=""):/[a-zA-Z]/.test(h)?(o="tag-name",f=h.toLowerCase()):o="text";break;case"bang-1":u+=h,o=h==="-"?"bang-dash":"tag-name";break;case"bang-dash":u+=h,h==="-"?(o="comment",l=0):o="tag-name";break;case"comment":u+=h,h==="-"?l+=1:(h===">"&&l>=2&&(o="text"),l=0);break;case"tag-name":u+=h,h===">"?(o=kt(f)?"rawtext":"text",o==="rawtext"&&(p="")):/\s/.test(h)?o="in-tag":f+=h.toLowerCase();break;case"in-tag":u+=h,h===">"?(o=kt(f)?"rawtext":"text",o==="rawtext"&&(p="")):!/\s/.test(h)&&h!=="/"&&(o="attr-name",i=h,c=u.length-1);break;case"rawtext":u+=h,p=(p+h.toLowerCase()).slice(-9),(p.endsWith("<\/script>")||p.endsWith("</style>"))&&(o="text",p="",f="");break;case"attr-name":h==="="?(o="after-eq",u+=h):/\s/.test(h)?(o="in-tag",i="",u+=h):h===">"?(o="text",i="",u+=h):(i+=h,u+=h);break;case"after-eq":h==='"'||h==="'"?(o="attr-quoted",a=h,u+=h):/\s/.test(h)?(o="in-tag",i="",u+=h):h===">"?(o="text",i="",u+=h):(o="attr-unquoted",u+=h);break;case"attr-unquoted":/\s/.test(h)?(o="in-tag",i="",u+=h):(h===">"&&(o="text",i=""),u+=h);break;case"attr-quoted":u+=h,h===a&&(o="in-tag",i="");break}}if(b<s.length){let m=s[b];if(m&&typeof m.then=="function"&&(m=await m),o==="comment")u+=String(m??""),l=0;else if(o==="rawtext")u+=String(m??""),p="";else if(o==="text")u&&(n.enqueue(u),u=""),await R(m,t,n);else if(o==="after-eq"){let h=i[0],d=i.slice(1);h==="@"||h==="."?(u=u.slice(0,c),o="in-tag",i=""):h==="?"?(u=u.slice(0,c),m&&(u+=`${d}=""`),o="in-tag",i=""):(u+=`"${$(String(m??""))}"`,o="in-tag",i="")}else(o==="attr-quoted"||o==="attr-unquoted")&&(u+=$(String(m??"")))}}u&&n.enqueue(u)}async function Hi(e,t,n){let r=wn(),s=r?` nonce="${$(r)}"`:"";for(;e.pending.length;){let o=e.pending.splice(0);await Promise.all(o.map(async({id:i,promise:c})=>{try{let a=await c,l=await x(a,e),f=await Y(l,e,[],n);t.enqueue(`<template data-webjs-resolve="${i}">${f}</template><script${s}>(function(){var t=document.currentScript.previousElementSibling;var b=document.getElementById("${i}");if(b&&t){b.replaceWith(t.content.cloneNode(true));t.remove()}document.currentScript.remove()})()<\/script>`)}catch(a){console.error(`[webjs] Suspense boundary "${i}" rejected:`,a);try{let l=a instanceof Error?a:new Error(String(a)),f=await Y(await x(Hr("webjs-suspense",l,n),e),e,[],n);t.enqueue(`<template data-webjs-resolve="${i}">${f}</template><script${s}>(function(){var t=document.currentScript.previousElementSibling;var b=document.getElementById("${i}");if(b&&t){b.replaceWith(t.content.cloneNode(true));t.remove()}document.currentScript.remove()})()<\/script>`)}catch(l){console.error(`[webjs] Suspense boundary "${i}" error render also threw:`,l)}}}))}}var Wr=Symbol.for("webjs.notFound"),Vr=Symbol.for("webjs.redirect");function Wi(){let e=new Error("webjs: notFound()");throw e.__webjs=Wr,e}function Vi(e,t){let n=typeof t=="object"&&t!==null?t.status:t,r=new Error(`webjs: redirect(${e})`);throw r.__webjs=Vr,r.url=e,r.status=typeof n=="number"?n:void 0,r}function zi(e){return!!e&&e.__webjs===Wr}function Ki(e){return!!e&&e.__webjs===Vr}function Gi(e,t={}){let n=t.reconnect!==!1,r=0,s=!1,o=null,i=[];function c(){s||(o=new WebSocket(Yi(e),t.protocols),o.onopen=a=>{for(r=0;i.length&&o&&o.readyState===WebSocket.OPEN;)o.send(i.shift());t.onOpen?.(a)},o.onmessage=a=>{let l=a.data;if(typeof l=="string")try{l=JSON.parse(l)}catch{}t.onMessage?.(l,a)},o.onerror=a=>{t.onError?.(a)},o.onclose=a=>{if(t.onClose?.(a),!s&&n){let l=Math.min(1e3*2**r++,3e4);setTimeout(c,l)}})}return c(),{send(a){let l=typeof a=="string"||a instanceof ArrayBuffer||ArrayBuffer.isView(a)?a:JSON.stringify(a);o&&o.readyState===WebSocket.OPEN?o.send(l):i.push(l)},close(a,l){s=!0;try{o?.close(a,l)}catch{}},get socket(){return o},get readyState(){return o?.readyState??3}}}function Yi(e){if(/^wss?:\/\//i.test(e))return e;let t=typeof location<"u"&&location.protocol==="https:"?"wss:":"ws:",n=typeof location<"u"?location.host:"";return`${t}//${n}${e.startsWith("/")?e:"/"+e}`}ke();var Sn="application/vnd.webjs+json";async function Ji(e,t={}){let n=new Headers(t.headers||{});n.has("accept")||n.set("accept",Sn);let r=t.body;r!=null&&typeof r=="object"&&!(r instanceof FormData)&&!(r instanceof Blob)&&!(r instanceof ArrayBuffer)&&!(r instanceof URLSearchParams)&&!(typeof ReadableStream<"u"&&r instanceof ReadableStream)&&!ArrayBuffer.isView(r)&&(r=await ze(r),n.has("content-type")||n.set("content-type",Sn));let s=await fetch(e,{...t,headers:n,body:r}),o=s.headers.get("content-type")||"",i=await s.text(),c=o.includes(Sn)?i?D(i):null:o.includes("application/json")?i?JSON.parse(i):null:i;if(!s.ok){let a=c&&c.error||`richFetch ${e} -> ${s.status}`,l=new Error(a);throw l.status=s.status,l.body=c,l}return c}ke();Cn();vn();Nt();async function Ra(e,t,n){let r=e.get();e.set(t);let s;try{s=await n()}catch(o){throw e.set(r),o}return s&&s.success===!1&&e.set(r),s}Tn();var Wt=0,Hs=new Map,Pe=new Map,La=1e3;function Oa(e){if(!(!Array.isArray(e)||!e.length)){Wt+=1;for(let t of e)t&&Hs.set(t,Wt)}}function Ma(){return Wt}function Ia(e,t,n){if(!(!Array.isArray(t)||!t.length)&&(Pe.delete(e),Pe.set(e,{tags:t.slice(),since:typeof n=="number"?n:Wt}),Pe.size>La)){let r=Pe.keys().next().value;r!==void 0&&Pe.delete(r)}}function Pa(e){let t=Pe.get(e);if(!t)return!1;for(let n of t.tags)if((Hs.get(n)||0)>t.since)return!0;return!1}function $a(e){return e?e.split(",").map(t=>t.trim()).filter(Boolean):[]}var Fa="application/vnd.webjs+stream",Ba=1,Ua=2,qa=3,Ws=new Uint8Array(0);function Da(e,t){let n=t||Ws,r=n.length,s=new Uint8Array(5+r);return s[0]=e&255,s[1]=r>>>24&255,s[2]=r>>>16&255,s[3]=r>>>8&255,s[4]=r&255,r&&s.set(n,5),s}function Ha(){let e=Ws;return{push(t){if(t&&t.length){let r=new Uint8Array(e.length+t.length);r.set(e,0),r.set(t,e.length),e=r}let n=[];for(;e.length>=5;){let r=e[0],s=(e[1]<<24|e[2]<<16|e[3]<<8|e[4])>>>0;if(e.length<5+s)break;let o=e.slice(5,5+s);n.push({type:r,payload:o}),e=e.slice(5+s)}return n}}}var Wa=Symbol.for("webjs.context");function Va(e){return{__context__:Wa,name:e}}var Vt=class extends Event{constructor(t,n,r=!1){super("context-request",{bubbles:!0,composed:!0}),this.context=t,this.callback=n,this.subscribe=r}},Gn=class{constructor(t,{context:n,initialValue:r}){this._host=t,this._context=n,this._value=r,this._subscriptions=new Set,this._onRequest=s=>{let o=s;if(o.context===this._context)if(s.stopPropagation(),o.subscribe){let i={callback:o.callback},c=()=>{this._subscriptions.delete(i)};this._subscriptions.add(i),o.callback(this._value,c)}else o.callback(this._value)},typeof t.addController=="function"&&t.addController(this)}get value(){return this._value}setValue(t){if(!Object.is(this._value,t)){this._value=t;for(let n of this._subscriptions){let r=()=>{this._subscriptions.delete(n)};n.callback(t,r)}}}hostConnected(){this._host.addEventListener("context-request",this._onRequest)}hostDisconnected(){this._host.removeEventListener("context-request",this._onRequest),this._subscriptions.clear()}},Yn=class{constructor(t,{context:n,subscribe:r=!0}){this._host=t,this._context=n,this._subscribe=r,this._value=void 0,this._unsubscribe=void 0,typeof t.addController=="function"&&t.addController(this)}get value(){return this._value}hostConnected(){this._dispatchRequest()}hostDisconnected(){this._unsubscribe&&(this._unsubscribe(),this._unsubscribe=void 0)}_dispatchRequest(){let t=new Vt(this._context,(n,r)=>{let s=this._value;this._value=n,r&&(this._unsubscribe=r),!Object.is(s,n)&&typeof this._host.requestUpdate=="function"&&this._host.requestUpdate()},this._subscribe);this._host.dispatchEvent(t)}};function za(){return typeof window<"u"}var H={INITIAL:0,PENDING:1,COMPLETE:2,ERROR:3},Jn=class{constructor(t,{task:n,args:r,autoRun:s=!0}){this._host=t,this._taskFn=n,this._argsFn=r||(()=>[]),this._autoRun=s,this._status=H.INITIAL,this._value=void 0,this._error=void 0,this._abortController=null,this._prevArgs=null,typeof t.addController=="function"&&t.addController(this)}get status(){return this._status}get value(){return this._value}get error(){return this._error}async run(){this.abort();let t=new AbortController;this._abortController=t;let n=this._argsFn();this._prevArgs=n,this._status=H.PENDING,this._error=void 0,this._requestHostUpdate();try{let r=await this._taskFn(...n,{signal:t.signal});if(t.signal.aborted)return;this._value=r,this._status=H.COMPLETE,this._error=void 0}catch(r){if(t.signal.aborted)return;this._error=r,this._status=H.ERROR,this._value=void 0}finally{this._abortController===t&&(this._abortController=null)}this._requestHostUpdate()}abort(){this._abortController&&(this._abortController.abort(),this._abortController=null)}render(t={}){switch(this._status){case H.INITIAL:return t.initial?.();case H.PENDING:return t.pending?.();case H.COMPLETE:return t.complete?.(this._value);case H.ERROR:return t.error?.(this._error);default:return}}hostUpdate(){if(!this._autoRun||!za())return;let t=this._argsFn();this._argsEqual(this._prevArgs,t)||this.run()}hostUpdated(){}hostConnected(){}hostDisconnected(){this.abort()}_requestHostUpdate(){typeof this._host.requestUpdate=="function"&&this._host.requestUpdate()}_argsEqual(t,n){if(t===null||t.length!==n.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==n[r])return!1;return!0}};export{Yn as ContextConsumer,Gn as ContextProvider,Vt as ContextRequestEvent,Ba as FRAME_CHUNK,Ua as FRAME_END,qa as FRAME_ERROR,v as MARKER,ts as SEED_MISS,Fa as STREAM_CONTENT_TYPE,Be as Signal,Ai as Suspense,Jn as Task,H as TaskStatus,vt as WebComponent,En as WebjsFrame,kn as WebjsStream,ti as activeActionSignal,Gt as adoptStyles,gn as allTags,oo as asyncAppend,io as asyncReplace,go as batch,ro as cache,wo as computed,Gi as connectWS,Pa as consumeStale,Va as createContext,Ha as createFrameDecoder,no as createRef,wn as cspNonce,Js as css,Mr as deserialize,as as disableClientRouter,So as effect,$n as enableClientRouter,Da as encodeFrame,$ as escapeAttr,ot as escapeText,Ma as fetchMark,Qs as guard,Kt as html,we as isAsyncAppend,_e as isAsyncReplace,me as isCSS,re as isCache,te as isGuard,ee as isKeyed,si as isLazy,ge as isLive,zi as isNotFound,Ki as isRedirect,ne as isRef,Q as isRepeat,_o as isSignal,Ct as isSuspense,N as isTemplate,ye as isTemplateContent,be as isUnsafeHTML,se as isUntil,oe as isWatch,Zs as keyed,Xs as live,bn as lookup,ri as lookupModuleUrl,Oa as markStale,cs as navigate,Wi as notFound,Ra as optimistic,D as parse,$a as parseTagHeader,ni as primeModuleUrl,Si as prop,Vi as redirect,to as ref,mn as register,Ia as registerKeyTags,Ce as render,xn as renderStream,qi as renderToStream,vi as renderToString,er as repeat,ls as revalidate,Ji as richFetch,jt as scanSeeds,Or as serialize,wt as setActiveActionSignal,Ei as setCspNonceProvider,yo as signal,ze as stringify,st as stylesToString,At as tagOf,ra as takeSeed,eo as templateContent,Yt as unsafeHTML,so as until,ao as watch};
|
|
7
7
|
//# sourceMappingURL=webjs-core.js.map
|