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