@webjsdev/core 0.7.45 → 0.7.47
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 +5 -5
- package/dist/webjs-core-browser.js.map +3 -3
- package/dist/webjs-core-testing.js +22 -21
- package/dist/webjs-core-testing.js.map +3 -3
- package/dist/webjs-core.js +7 -6
- package/dist/webjs-core.js.map +3 -3
- package/index-browser.js +5 -0
- package/index.d.ts +4 -0
- package/index.js +5 -0
- package/package.json +2 -2
- package/src/asset-url.d.ts +3 -0
- package/src/asset-url.js +99 -0
- package/src/component.js +137 -2
- package/src/form-action.d.ts +16 -0
- package/src/form-action.js +1257 -0
- package/src/optimistic.js +7 -2
- package/src/render-client.js +1004 -107
- package/src/render-server.js +847 -70
- package/src/router-client.js +338 -23
- package/src/webjs-config.d.ts +49 -17
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
var _s=Object.defineProperty;var G=(e,t)=>()=>(e&&(t=e(e=0)),t);var gr=(e,t)=>{for(var n in t)_s(e,n,{get:t[n],enumerable:!0})};function Rr(){return typeof HTMLElement<"u"&&typeof HTMLSlotElement<"u"}function Zs(){if(Nr||(Q=Rr(),!Q))return;De=HTMLSlotElement.prototype.assignedNodes,gn=HTMLSlotElement.prototype.assignedElements,ft=Object.getOwnPropertyDescriptor(Element.prototype,"assignedSlot"),HTMLSlotElement.prototype.assignedNodes=function(n){return this.hasAttribute(E)&&!wn(this)?Cn(this,n):De?De.call(this,n):[]},HTMLSlotElement.prototype.assignedElements=function(n){return this.hasAttribute(E)&&!wn(this)?Cn(this,n).filter(r=>r.nodeType===1):gn?gn.call(this,n):[]},Object.defineProperty(Element.prototype,"assignedSlot",{configurable:!0,enumerable:!0,get:function(){let n=ft&&ft.get?ft.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)}}),_n=HTMLSlotElement.prototype.assign,HTMLSlotElement.prototype.assign=function(...n){if(this.hasAttribute(E)&&!wn(this)){let r=ei(this);if(r){let o=W(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 u=l.deref();return u!==void 0&&s.indexOf(u)===-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);_e(o),z(r)}return}return _n?_n.apply(this,n):void 0},Nr=!0}function jn(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 ei(e){for(let t=e.parentElement;t;t=t.parentElement)if(t[A])return V(t,e)?t:null;return null}function wn(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 Cn(e,t){if(e.getAttribute(L)!==F)return[];let n=Array.from(e.childNodes);return!t||!t.flatten?n:Tn(n,new Set,0)}function Tn(e,t,n){if(n>=Qs)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(E)){let i=Cn(s,{flatten:!1});if(i.length>0)for(let c of Tn(i,t,n+1))r.push(c);else for(let c of Tn(Array.from(s.childNodes),t,n+1))r.push(c)}else if(De){let i=De.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(E)&&t.getAttribute(L)===F?t:null}function W(e){let t=e,n=t[A];return n||(n={host:e,authored:[],assignedByName:new Map,lastSnapshot:new WeakMap},t[A]=n),n}function Rn(e){return!!e[A]}function Or(e){let t=W(e);for(;e.firstChild;){let n=e.firstChild;t.authored.push(n),g.add(n),e.removeChild(n)}_e(t)}function _e(e){let t=e.assignedByName;t.clear();for(let n of e.authored)ti(t,se(e,n),n)}function se(e,t){let n=jn(e,t);if(n)return D(n.getAttribute("name"));if(e.adoptedKey){let r=e.adoptedKey.get(t);if(r!==void 0)return r}return Mr(t)}function Lr(e){let t=W(e);t.adopted=!0;let n=new Set,r=e.querySelectorAll(`slot[${E}]`);for(let o of r){let s=o;if(!V(e,s)||s.getAttribute(L)!==F||bt(t,e,s))continue;let i=D(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),Mr(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(V(e,o)){for(let s of Array.from(o.childNodes))g.add(s),t.authored.push(s);o.remove()}_e(t)}function D(e){return e==null||e===""||e==="default"?null:e}function Mr(e){return e.nodeType!==1?null:D(e.getAttribute("slot"))}function ti(e,t,n){let r=e.get(t);r||(r=[],e.set(t,r)),r.push(n)}function ce(e,t,n){let r=W(e),o=D(t),s=Array.isArray(n)?n.filter(Boolean):n?[n]:[],i=r.authored.findIndex(a=>se(r,a)===o),c=r.authored.filter(a=>se(r,a)===o);r.authored=r.authored.filter(a=>se(r,a)!==o),(i===-1||i>r.authored.length)&&(i=r.authored.length);for(let a of s)a.nodeType===1&&!jn(r,a)&&(o==null?a.removeAttribute("slot"):a.setAttribute("slot",o)),g.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)}_e(r),z(e)}function ni(){X||!Q||(X=Node.prototype.appendChild,Pr=Node.prototype.insertBefore,ge=Node.prototype.removeChild,Nn=Node.prototype.replaceChild,Ir=Element.prototype.append,Dr=Element.prototype.prepend,Fr=Element.prototype.replaceChildren,dt=Object.getOwnPropertyDescriptor(Element.prototype,"innerHTML"),kn=Object.getOwnPropertyDescriptor(Node.prototype,"textContent"))}function mt(e,t){let n=e[k];e[k]=!0;try{return t()}finally{e[k]=n,n||On(e)}}function Br(e){if(!Q)return;let t=e,n=W(e);n.backstop||(n.backstop=new MutationObserver(r=>yt(e,n,r)),n.backstop.observe(e,{childList:!0,subtree:!1}),n.flipSensor=new MutationObserver(r=>Ur(e,r)),n.flipSensor.observe(e,{attributes:!0,attributeFilter:["slot","name"],subtree:!0}))}function yt(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&&qr(s,l))){if(t.authored.indexOf(l)!==-1){i=!0;continue}g.add(l),t.authored.push(l),i=!0}for(let l of a.removedNodes){let u=t.authored.indexOf(l);if(u===-1||e.contains(l))continue;g.has(l)&&l.parentNode==null&&!c.has(l)||(t.authored.splice(u,1),i=!0)}}i&&z(e)}function On(e){let t=e,n=t[A];if(!(n&&n.backstop))return;let r=n.backstop.takeRecords();(!(Symbol.for("webjs.instance")in t)||t[Symbol.for("webjs.instance")])&&yt(e,n,r)}function Ur(e,t){let n=e[A];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(E)&&V(e,s)&&(r=!0):o.attributeName==="slot"&&(n.adoptedKey&&n.adoptedKey.delete(s),n.authored.indexOf(s)!==-1&&(r=!0))}r&&z(e)}function $r(e){let t=e[A];t&&(t.backstop&&(yt(e,t,t.backstop.takeRecords()),t.backstop.disconnect(),t.backstop=void 0),t.flipSensor&&(Ur(e,t.flipSensor.takeRecords()),t.flipSensor.disconnect(),t.flipSensor=void 0))}function Hr(e){if(!Q)return;let t=e,n=t[A];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||qr(r,c))||!o&&s||(g.add(c),n.authored.push(c),i=!0)}i&&z(e)}function qr(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 ri(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),mt(e,()=>X.call(e,n))),n}function ie(e){return e instanceof Node||!!(e&&typeof e=="object"&&e.ownerDocument&&e.ownerDocument.defaultView&&e instanceof e.ownerDocument.defaultView.Node)}function Sn(e,t,n){if(n&&!ie(t))return[e.ownerDocument.createTextNode(`${t}`)];if(!ie(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);pt(e,r);for(let o of r)ge.call(t,o);return r}return pt(e,[t]),[t]}function pt(e,t){be(e,t);for(let n of t){if(!ie(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 be(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 An(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 Vr(e,t){let n=e[A];return n?bt(n,e,t):!1}function bt(e,t,n){for(let r=n;r&&r!==t;r=r.parentNode)if(e.authored.indexOf(r)!==-1)return!0;return!1}function vn(e,t){if(g.has(t))return!0;let n=t.parentNode;if(n==null)return!1;if(n===e||n===e[ae])return!0;let r=e[A];return n.nodeType===1&&n.tagName==="SLOT"&&n.hasAttribute(E)&&(r&&r.lastSnapshot.has(n)||e.contains(n)&&V(e,n))}function En(e,t){let n=[];for(let s of t)ie(s)?s.nodeType===11?n.push({frag:s}):n.push({node:s}):n.push({text:`${s}`});for(let s of n)s.frag?be(e,Array.from(s.frag.childNodes)):s.node&&pt(e,[s.node]);let r=e.ownerDocument.createDocumentFragment();for(let s of n)if(s.text!==void 0)X.call(r,e.ownerDocument.createTextNode(s.text));else if(s.frag){let i=Array.from(s.frag.childNodes);pt(e,i);for(let c of i)X.call(r,c)}else s.node&&(be(e,[s.node]),X.call(r,s.node));let o=Array.from(r.childNodes);be(e,o);for(let s of o)ge.call(r,s);return o}function q(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);_e(t),z(e)}function Wr(e){if(!Q)return;let t=e;if(t[xr])return;ni(),t[xr]=!0;let n=W(e);t.appendChild=function(r){if(t[k])return X.call(this,r);let o=Sn(e,r,!1);for(let s of o)g.add(s);return An(n,o,null),q(e,n,o),r},t.insertBefore=function(r,o){if(t[k])return Pr.call(this,r,o);if(!ie(r))throw new TypeError("Failed to execute insertBefore on the host: parameter 1 is not of type Node.");if(o!=null&&!ie(o))throw new TypeError("Failed to execute insertBefore on the host: parameter 2 is not of type Node.");if(be(e,r.nodeType===11?Array.from(r.childNodes):[r]),o!=null&&(n.authored.indexOf(o)===-1||!vn(e,o)))throw new DOMException("insertBefore: reference node is not an assigned child of this host","NotFoundError");if(r===o)return r;let s=Sn(e,r,!1);for(let i of s)g.add(i);return An(n,s,o||null),q(e,n,s),r},t.removeChild=function(r){if(t[k])return ge.call(this,r);let o=n.authored.indexOf(r);if(o===-1)return ge.call(this,r);if(!vn(e,r))throw new DOMException("removeChild: the node is not an assigned child of this host","NotFoundError");return n.authored.splice(o,1),q(e,n,[r]),r},t.replaceChild=function(r,o){if(t[k])return Nn.call(this,r,o);if(n.authored.indexOf(o)===-1)return Nn.call(this,r,o);if(!ie(r))throw new TypeError("Failed to execute replaceChild on the host: parameter 1 is not of type Node.");if(be(e,r.nodeType===11?Array.from(r.childNodes):[r]),!vn(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=Sn(e,r,!1);for(let a of i)g.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),q(e,n,[...i,o]),o},t.append=function(...r){if(t[k])return Ir.apply(this,r);let o=En(e,r);for(let s of o)g.add(s);An(n,o,null),q(e,n,o)},t.prepend=function(...r){if(t[k])return Dr.apply(this,r);let o=En(e,r);for(let s of o)g.add(s);for(let s of o){let i=n.authored.indexOf(s);i!==-1&&n.authored.splice(i,1)}n.authored.unshift(...o),q(e,n,o)},t.replaceChildren=function(...r){if(t[k])return Fr.apply(this,r);let o=En(e,r);for(let i of o)g.add(i);let s=n.authored;n.authored=o.slice(),q(e,n,[...s,...o])},Object.defineProperty(t,"innerHTML",{configurable:!0,get(){return dt.get.call(this)},set(r){if(t[k]){dt.set.call(this,r);return}let o=e.ownerDocument.createElement("div");dt.set.call(o,r===null?"":`${r}`);let s=Array.from(o.childNodes);for(let c of s)g.add(c);let i=n.authored;n.authored=s,q(e,n,[...i,...s])}}),Object.defineProperty(t,"textContent",{configurable:!0,get(){return kn.get.call(this)},set(r){if(t[k]){kn.set.call(this,r);return}let o=r==null||r===""?[]:[e.ownerDocument.createTextNode(`${r}`)];for(let i of o)g.add(i);let s=n.authored;n.authored=o,q(e,n,[...s,...o])}})}function z(e){if(!Q)return;let t=e[A];if(t){if(t.applying){t.reapply=!0;return}t.applying=!0;try{do{t.reapply=!1;let n=t.pendingRecordNodes||oi;t.pendingRecordNodes=void 0,si(e,t,n),ii(e,t),_e(t);let r=[],o=new Set;for(let u of e.querySelectorAll(`slot[${E}]`))if(V(e,u)&&!bt(t,e,u)){if(!u.hasAttribute(L)&&!(Fe in u)){o.add(D(u.getAttribute("name")));continue}r.push(u)}let s=new Map;for(let u of r){let f=D(u.getAttribute("name")),d=s.get(f);d||(d=[],s.set(f,d)),d.push(u)}let i=[];for(let[u,f]of s){let d=t.assignedByName.get(u)||[];for(let h=0;h<f.length;h++){let m=f[h],S=d.filter(p=>{let j=jn(t,p);return j?j===m:h===0}),y=S.filter(p=>p===e||p.nodeType===1&&p.contains(e));if(y.length){for(let p of y)g.delete(p);S=S.filter(p=>y.indexOf(p)===-1)}S.length>0?ci(t,m,S)&&i.push(m):li(t,m)&&i.push(m)}}for(let u of i)fi(t,u);let c=new Set(s.keys());for(let u of o)c.add(u);let a=new Set;for(let u of t.authored)c.has(se(t,u))||a.add(u);let l=e[ae];if(l)for(let u of Array.from(l.childNodes))a.has(u)||ge.call(l,u);if(a.size){let u=ri(e);for(let f of a)f.parentNode!==u&&(g.delete(f),mt(e,()=>X.call(u,f)))}if(t.backstop){let u=t.backstop.takeRecords();u.length&&yt(e,t,u)}}while(t.reapply)}finally{t.applying=!1}}}function si(e,t,n){for(let r of e.querySelectorAll(`slot[${E}][${L}="${F}"]`)){if(!V(e,r)||bt(t,e,r))continue;let o=r,s=t.lastSnapshot.get(o);if(!s)continue;let i=Array.from(o.childNodes);if(xn(i,s))continue;let c=t.authored,a=D(o.getAttribute("name")),l=i.filter(m=>!n.has(m));for(let m of l)c.indexOf(m)===-1&&se(t,m)!==a&&(t.adoptedKey||(t.adoptedKey=new WeakMap),t.adoptedKey.set(m,a));for(let m of c){if(l.indexOf(m)!==-1||se(t,m)!==a)continue;let S=c.indexOf(m),y=0;for(let p=0;p<l.length;p++){let j=c.indexOf(l[p]);j!==-1&&j<S&&(y=p+1)}l.splice(y,0,m)}let u=new Set(l);for(let m of s)u.add(m);let f=-1,d=0;for(let m of c){if(u.has(m)){f===-1&&(f=d);continue}d+=1}let h=c.filter(m=>!u.has(m));(f===-1||f>h.length)&&(f=h.length),h.splice(f,0,...l),t.authored=h}}function ii(e,t){let n=e[ae];t.authored=t.authored.filter(r=>{if(g.has(r))return!0;let o=r.parentNode;return o==null?!1:!!(o===e||o===n||o.nodeType===1&&o.tagName==="SLOT"&&o.hasAttribute(E)&&(t.lastSnapshot.has(o)||e.contains(o)&&V(e,o)))})}function zr(e){if(!Q)return!1;for(let t of e.querySelectorAll(`slot[${E}][${L}]`))if(V(e,t))return!0;return!1}function V(e,t){let n=t[ht];if(n)return n===e;let r=typeof t.getAttribute=="function"?t.getAttribute(Xs):null;if(r){let o=ai(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 ai(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)g.delete(l);let r=t.getAttribute(L)!==F,o=e.lastSnapshot.get(t)||[],s=r||!xn(o,n);if(!r&&xn(Array.from(t.childNodes),n))return e.lastSnapshot.set(t,n.slice()),s;let i=t[Fe];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(L,F),e.lastSnapshot.set(t,n.slice()),s}function li(e,t){let n=t.getAttribute(L)===F;if(t.setAttribute(L,Js),!n)return jr(t),!1;for(e.lastSnapshot.delete(t);t.firstChild;)t.removeChild(t.firstChild);return jr(t),!0}function jr(e){let t=e[Fe];!t||t.childNodes.length===0||e.appendChild(t)}function Kr(e,t){if(!Rn(e))return;let n=W(e),r=D(t.getAttribute("name")),o=n.assignedByName.get(r);if(o)for(let s of o)s.parentNode===t&&(g.add(s),t.removeChild(s));n.lastSnapshot.delete(t)}function ui(e){e.dispatchEvent(new Event("slotchange",{bubbles:!0,composed:!1}))}function fi(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)ui(r)}))}function xn(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 Q,A,E,L,F,Js,Fe,ht,Xs,Qs,De,gn,ft,_n,Nr,k,xr,ae,g,X,Pr,ge,Nn,Ir,Dr,Fr,dt,kn,oi,gt=G(()=>{Q=Rr(),A=Symbol("webjs.slot.state"),E="data-webjs-light",L="data-projection",F="actual",Js="fallback",Fe=Symbol("webjs.slot.fallbackFrag"),ht=Symbol("webjs.slot.templateOwner"),Xs="data-wj-slot-owner",Qs=64,De=null,gn=null,ft=null,_n=null,Nr=!1;Zs();k=Symbol("webjs.slot.rendering"),xr=Symbol("webjs.slot.intercepted"),ae=Symbol("webjs.slot.park"),g=new WeakSet,X=null,Pr=null,ge=null,Nn=null,Ir=null,Dr=null,Fr=null,dt=null,kn=null;oi=new Set});function co(e,t,n){Bi.has(t)?Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0}):e[t]=n}async function Dn(e){return JSON.stringify(await lo(e))}function ue(e){return uo(JSON.parse(e))}async function lo(e){let t=Ui();return await $i(e,t),le(e,t)}function uo(e){return ee(e,Wi())}function Ui(){return{refCount:new Map,idOf:new Map,emitted:new Set,nextId:0,blobBytes:new Map,fdEntries:new Map}}async function $i(e,t){let n=[e];for(;n.length;){let r=n.pop();if(!Ki(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(Yi(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 le(e,t){if(e===null)return null;if(e===void 0)return{[_]:"undef"};let n=typeof e;if(n==="string"||n==="boolean")return e;if(n==="number")return Number.isNaN(e)?{[_]:"NaN"}:e===1/0?{[_]:"Inf"}:e===-1/0?{[_]:"-Inf"}:Object.is(e,-0)?{[_]:"-0"}:e;if(n==="bigint")return{[_]:"BigInt",v:e.toString()};if(n==="symbol"){let s=Symbol.keyFor(e);if(s===void 0)throw new TypeError("Cannot serialize a local Symbol; only Symbol.for() registered symbols are supported.");return{[_]:"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{[_]:"Ref",v:r};r!==void 0&&t.emitted.add(r);let o;if(e instanceof Date)o={[_]:"Date",v:Number.isNaN(e.getTime())?null:e.toISOString()};else if(e instanceof Error)o={[_]:"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={[_]:"File",v:He(s),n:e.name,t:e.type||"",m:e.lastModified}:o={[_]:"Blob",v:He(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,le(a,t)]);o={[_]:"FD",v:i}}else if(ArrayBuffer.isView(e)||e instanceof ArrayBuffer)o=Hi(e);else if(e instanceof Map){let s=[];for(let[i,c]of e)s.push([le(i,t),le(c,t)]);o={[_]:"Map",v:s}}else if(e instanceof Set){let s=[];for(let i of e)s.push(le(i,t));o={[_]:"Set",v:s}}else if(Array.isArray(e))o=e.map(s=>le(s,t));else{o={};for(let s in e){if(!Object.prototype.hasOwnProperty.call(e,s))continue;let i=Gi(s)?"_"+s:s;co(o,i,le(e[s],t))}}if(r!==void 0){if(Array.isArray(o))return{[_]:"Arr",_id:r,v:o};o._id=r}return o}function Hi(e){if(e instanceof ArrayBuffer)return{[_]:"buf",v:He(new Uint8Array(e))};if(e instanceof DataView)return{[_]:"dv",v:He(new Uint8Array(e.buffer,e.byteOffset,e.byteLength))};let t=e.constructor.name,n=qi[t];if(!n)throw new TypeError(`Unsupported typed array: ${t}`);let r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return{[_]:n,v:He(r)}}function Wi(){return{refs:new Map}}function ee(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(ee(e[i],t));return s}let n=e[_];if(typeof n=="string")return zi(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=Ji(s)?s.slice(1):s;co(r,i,ee(e[s],t))}return r}function zi(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(ee(i,n),ee(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(ee(i,n));return s}case"Arr":{let s=[];typeof r=="number"&&n.refs.set(r,s);for(let i of e.v)s.push(ee(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=$e(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=$e(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=ee(c,n);s.append(i,a)}return s}default:{if(t==="buf"){let i=$e(e.v);return o(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength))}if(t==="dv"){let i=$e(e.v);return o(new DataView(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)))}let s=Vi[t];if(s){let i=$e(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 Ki(e){return e!==null&&typeof e=="object"}function Yi(e){if(e===null||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function Gi(e){return/^_+\$wj$/.test(e)||/^_+id$/.test(e)}function Ji(e){return/^__+\$wj$/.test(e)||/^__+id$/.test(e)}function He(e){if(fo)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 $e(e){if(fo){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 _,Bi,qi,Vi,fo,qe=G(()=>{_="_$wj",Bi=new Set(["__proto__","constructor","prototype"]);qi={Int8Array:"i8",Uint8Array:"u8",Uint8ClampedArray:"u8c",Int16Array:"i16",Uint16Array:"u16",Int32Array:"i32",Uint32Array:"u32",Float32Array:"f32",Float64Array:"f64",BigInt64Array:"bi64",BigUint64Array:"bu64"},Vi={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};fo=typeof Buffer<"u"&&typeof Buffer.from=="function"});var Eo={};gr(Eo,{observeLazy:()=>ya,observeViewportOnce:()=>_a});function vo(e){let t=Un.get(e);return t||(t=import(e).finally(()=>Un.delete(e)),Un.set(e,t),t)}function ya(e){for(let[t,n]of Object.entries(e))fe.set(t.toLowerCase(),n);if(typeof IntersectionObserver>"u"){for(let t of fe.values())vo(t);fe.clear();return}We||(We=new IntersectionObserver(ba,{rootMargin:"200px"})),Ao(),typeof MutationObserver<"u"&&new MutationObserver(()=>Ao()).observe(document.body,{childList:!0,subtree:!0})}function Ao(){if(!(!We||!fe.size))for(let e of fe.keys())for(let t of document.querySelectorAll(e))We.observe(t)}function ba(e){for(let t of e){if(!t.isIntersecting)continue;let n=t.target.tagName.toLowerCase(),r=fe.get(n);r&&(vo(r),fe.delete(n),We?.unobserve(t.target))}}function ga(e){for(let t of e){if(!t.isIntersecting)continue;let n=xt.get(t.target);xt.delete(t.target),Ve?.unobserve(t.target),n&&n()}}function _a(e,t){return typeof IntersectionObserver>"u"?(t(),()=>{}):(Ve||(Ve=new IntersectionObserver(ga,{rootMargin:"200px"})),xt.set(e,t),Ve.observe(e),()=>{xt.delete(e),Ve?.unobserve(e)})}var fe,We,Un,Ve,xt,Co=G(()=>{fe=new Map,We=null,Un=new Map;Ve=null,xt=new WeakMap});var $n,Hn=G(()=>{$n=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(()=>(Co(),Eo)).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(()=>(jt(),To)).then(({loadFrame:n})=>{this._webjsLoadedSrc!==t||!this.isConnected||n(this,t)})}}:null;typeof customElements<"u"&&$n&&!customElements.get("webjs-frame")&&customElements.define("webjs-frame",$n)});function Sa(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 Vn(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 wa,qn,Rt=G(()=>{wa=new Set(["append","prepend","before","after","replace","update"]);qn=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=wa.has(t)?this.querySelector("template"):null;try{for(let i of r){let c=s?s.content.cloneNode(!0):null;Sa(t,i,c)}}finally{this.remove()}}}:null;typeof customElements<"u"&&qn&&!customElements.get("webjs-stream")&&customElements.define("webjs-stream",qn)});var No,ko=G(()=>{No=typeof HTMLElement<"u"?class extends HTMLElement{connectedCallback(){this.style.display||(this.style.display="contents")}}:null;typeof customElements<"u"&&No&&!customElements.get("webjs-suspense")&&customElements.define("webjs-suspense",No)});function Ot(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]'))jo(n.textContent,n);for(let n of t.querySelectorAll("[data-webjs-seed]"))jo(n.getAttribute("data-webjs-seed"),n,()=>n.removeAttribute("data-webjs-seed"))}}function jo(e,t,n){if(e)try{let r=ue(e);if(r&&typeof r=="object")for(let o in r)ze.has(o)||ze.set(o,r[o])}catch{}n?n():t.remove?.()}function Aa(e,t,n){xo||(xo=!0,Ot());let r=`${e}/${t}/${n}`;if(ze.has(r)){let o=ze.get(r);return ze.delete(r),o}return Ro}var ze,Ro,xo,Wn=G(()=>{qe();ze=new Map,Ro=Symbol("webjs.seed.miss"),xo=!1});var To={};gr(To,{_FRAME_TOP:()=>Wo,_LIVE_ATTRS:()=>Qn,_activeFrameId:()=>Vo,_addNewHeadElements:()=>er,_applyOptimisticLoading:()=>ur,_applyStreamedResolve:()=>ps,_applySwap:()=>lr,_blurOutgoingFocus:()=>It,_buildHaveHeader:()=>Qe,_buildSubmitFormData:()=>Ho,_bumpNavToken:()=>nc,_clearFormBusy:()=>is,_clearFrameBusy:()=>os,_collectBoundaries:()=>je,_currentPageUrl:()=>rc,_diffElementInPlace:()=>qt,_eligibleAnchorHref:()=>Ft,_findAnchorInPath:()=>qo,_getSubmitAction:()=>$o,_getSubmitMethod:()=>Uo,_isNonHtmlPath:()=>ac,_keyOf:()=>xe,_markFormBusy:()=>ss,_markFrameBusy:()=>rs,_mergeHead:()=>us,_navToken:()=>tc,_onPopState:()=>rr,_onSubmit:()=>or,_parseHTML:()=>tr,_planBoundarySwap:()=>Ko,_prefetch:()=>Re,_prefetchAnchor:()=>Zo,_prefetchCache:()=>w,_prefetchHasHoverPointer:()=>Xo,_prefetchInflightSize:()=>Za,_prefetchMode:()=>Bt,_prefetchPeek:()=>Qa,_prefetchSaysSaveData:()=>ar,_prefetchSuppressed:()=>Qo,_prefetchTake:()=>es,_reactivateScripts:()=>Xe,_readStreamedShell:()=>fs,_reconcileChildren:()=>Jt,_regraftPermanentElements:()=>cs,_regraftPermanentInSlice:()=>Gt,_resetParseProbe:()=>Ea,_resetPrefetch:()=>ec,_resetWarnOnce:()=>sc,_resolveTargetFrameId:()=>sr,_restoreOptimistic:()=>Ke,_runWithTransition:()=>Mt,_setCurrentPageUrl:()=>oc,_shouldFullLoadDuringParse:()=>ic,_snapshotCache:()=>x,_streamBoundariesProgressively:()=>hs,_takeResolveUnit:()=>ds,_viewTransitionsEnabled:()=>as,collectBoundaries:()=>je,disableClientRouter:()=>Io,enableClientRouter:()=>nr,loadFrame:()=>Na,navigate:()=>Do,planBoundarySwap:()=>Ko,revalidate:()=>Fo});function tr(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"&&va()?Document.parseHTMLUnsafe(e):Ca(e)}function va(){if(Ee!==null)return Ee;try{Ee=Document.parseHTMLUnsafe("<!doctype html><body><!--c--><i></i>")?.body?.firstChild?.nodeType===8}catch{Ee=!1}return Ee}function Ea(){Ee=null}function Ca(e){return typeof DOMParser>"u"?null:new DOMParser().parseFromString(e,"text/html")}function Ta(){zn||typeof MutationObserver>"u"||typeof customElements>"u"||(zn=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)}}),zn.observe(document.body,{childList:!0,subtree:!0}))}function nr(){re||typeof document>"u"||(re=!0,document.addEventListener("click",Bo,!1),document.addEventListener("submit",or,!1),window.addEventListener("popstate",rr),document.addEventListener("pointerover",ke,!0),document.addEventListener("focusin",ke,!0),document.addEventListener("touchstart",ke,{capture:!0,passive:!0}),document.addEventListener("pointerout",ts,!0),document.addEventListener("webjs:navigate",Xn),Ta(),Xn(),typeof history<"u"&&"scrollRestoration"in history&&(Lt=history.scrollRestoration,history.scrollRestoration="manual"),typeof location<"u"&&(H=location.href))}function Io(){re&&(re=!1,document.removeEventListener("click",Bo,!1),document.removeEventListener("submit",or,!1),window.removeEventListener("popstate",rr),document.removeEventListener("pointerover",ke,!0),document.removeEventListener("focusin",ke,!0),document.removeEventListener("touchstart",ke,{capture:!0}),document.removeEventListener("pointerout",ts,!0),document.removeEventListener("webjs:navigate",Xn),Yt(),cr(),te&&(te.disconnect(),te=null),typeof history<"u"&&Lt!==null&&(history.scrollRestoration=Lt,Lt=null),H=null)}async function Do(e,t){let n=new URL(e,location.href);if(n.origin!==location.origin){location.href=e;return}await ir(n.href,t?.replace??!1,null)}async function Na(e,t){if(typeof location>"u")return{ok:!1,status:null,aborted:!1};let n=e&&e.id;if(!n)return{ok:!1,status:null,aborted:!1};let r=new URL(t,location.href);if(r.origin!==location.origin)return{ok:!1,status:null,aborted:!1};M&&M.abort(),M=new AbortController;let o=M.signal,s=++C;return Ut(r.href,n,!1,null,"GET",null,o,s)}function Fo(e){if(!e){x.clear(),w.clear();return}let t=new URL(e,location.href),n=t.pathname+t.search;x.delete(n),w.delete(n)}function Bo(e){if(!re||e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;let t=qo(e);if(!t||t.hasAttribute("download")||t.hasAttribute("data-no-router")||t.target&&t.target!=="_self")return;let n=t.href;if(!n)return;let r=new URL(n);if(r.origin!==location.origin||r.pathname===location.pathname&&r.search===location.search&&r.hash||zt.test(r.pathname))return;e.preventDefault();let o=sr(t);ir(n,!1,o)}function rr(e){ir(location.href,!0,null)}function or(e){if(!re||e.defaultPrevented)return;let t=e.target;if(!t||t.nodeType!==1||t.tagName!=="FORM"||t.hasAttribute("data-no-router"))return;let n=e.submitter??null;if(n&&n.hasAttribute("data-no-router"))return;let r=n&&n.getAttribute("formtarget")||t.getAttribute("target")||"";if(r&&r!=="_self")return;let o=Uo(t,n);if(o==="dialog")return;let s=$o(t,n),i;try{i=new URL(s,location.href)}catch{return}if(i.origin!==location.origin||zt.test(i.pathname))return;let c=Ho(t,n);e.preventDefault();let a=sr(n||t);Ra(i.href,o,c,a,t)}function Uo(e,t){return(t&&t.getAttribute("formmethod")||e.getAttribute("method")||"get").toLowerCase()}function $o(e,t){return t&&t.hasAttribute("formaction")?t.getAttribute("formaction")||"":e.getAttribute("action")||e.action||location.href}function Ho(e,t){try{return new FormData(e,t||void 0)}catch{let n=new FormData(e);return t&&t.getAttribute("name")&&n.append(t.getAttribute("name"),t.getAttribute("value")||""),n}}function qo(e){for(let t of e.composedPath())if(t instanceof HTMLAnchorElement)return t;return null}function Vo(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 sr(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===Wo)return null;let r=typeof document<"u"?document.getElementById(n):null;return r&&r.tagName&&r.tagName.toLowerCase()==="webjs-frame"?n:(Kt(`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 Vo(e)}function Kt(e,t){Yn.has(e)||(Yn.add(e),typeof console<"u"&&console.warn&&console.warn(t))}function zo(e,t){return!e&&!t&&typeof document<"u"&&document.readyState==="loading"}function de(e,t,n=!0){if(typeof document<"u"&&typeof CustomEvent<"u")try{document.dispatchEvent(new CustomEvent("webjs:navigation-fallback",{detail:{cause:e,href:t,willReload:n}}))}catch{}typeof process<"u"&&process.env||Kt(`fallback:${e}`,n?`[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.`:`[webjs] client router degraded a soft navigation (${e}) for ${t}, without a full page load.`)}function ka(e){typeof process<"u"&&process.env||Kt(`stream-drop:${e}`,`[webjs] dropped a streamed Suspense resolve for "${e}": no #${e} boundary in the DOM. Benign if this navigation was superseded or degraded. A stuck skeleton here means the shell swap did not place the boundary.`)}function Lo(){if(typeof process<"u"&&process.env||Gn||typeof document>"u"||typeof getComputedStyle!="function")return;let e=document.documentElement;if(!e)return;Gn=!0;let t;try{t=getComputedStyle(e).scrollBehavior}catch{return}t==="smooth"&&Kt("scroll-behavior-smooth-html","[webjs] Detected `scroll-behavior: smooth` on <html>. The client router scrolls to the top instantly on navigation (like a native page load), so route transitions are not affected by it. It still applies to in-page #anchor links. Pairing it with a sticky `backdrop-filter` header can also flash on iOS during navigation.")}function Dt(e){if(typeof document>"u")return;let t=document.documentElement;if(!(!t||!t.hasAttribute("data-webjs-nav-progress")))try{e?t.setAttribute("data-navigating",""):t.removeAttribute("data-navigating")}catch{}}function je(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),u=c.slice(a+1);if(t.has(l)||n.some(f=>f.segment===l)){r=!0;return}n.push({segment:l,routeKey:u,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 Ko(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 Yo(e){let t=ne(e);document.dispatchEvent(new CustomEvent("webjs:before-cache",{detail:{url:e}})),x.has(t)&&x.delete(t);let n={html:document.documentElement.outerHTML,scrollX:typeof window<"u"&&window.scrollX||0,scrollY:typeof window<"u"&&window.scrollY||0};for(x.set(t,n);x.size>xa;){let r=x.keys().next().value;x.delete(r)}}function ja(e){let t=ne(e),n=x.get(t);return n==null?null:(x.delete(t),x.set(t,n),typeof n=="string"?{html:n,scrollX:0,scrollY:0}:n)}function ne(e){let t=new URL(e,location.href);return t.pathname+t.search}async function ir(e,t,n){if(zo(t,n)&&typeof location<"u"){de("readyState-loading",e),location.href=e;return}M&&M.abort(),M=new AbortController;let r=M.signal,o=++C;H&&Yo(H);let s=setTimeout(()=>{Dt(!0),s=null},150),i=null;t||(i=ur());try{if(t){let c=ja(e);if(c){let a=tr(c.html);if(a){lr(a,n,!0,null),typeof window<"u"&&window.scrollTo({left:c.scrollX,top:c.scrollY,behavior:"instant"}),Ut(e,n,!1,i,"GET",null,r,o,!0).catch(()=>{});return}}typeof window<"u"&&window.scrollTo({left:0,top:0,behavior:"instant"})}await Ut(e,n,!t,i,"GET",null,r,o)}finally{s&&clearTimeout(s),o===C&&(Dt(!1),typeof location<"u"&&(H=location.href))}}async function Ra(e,t,n,r,o){M&&M.abort(),M=new AbortController;let s=M.signal,i=++C,c=t==="get"||t==="head",a=new URL(e,location.href);if(c){a.search="";for(let[h,m]of n)a.searchParams.append(h,typeof m=="string"?m:m.name)}H&&Yo(H);let l=setTimeout(()=>{Dt(!0),l=null},150),u=ur(),f=o?ss(o,i,a.href):null,d=!1;try{let h=await Ut(a.href,r,!0,u,c?"GET":t.toUpperCase(),c?null:n,s,i);d=!!(h&&h.ok),!c&&i===C&&(x.clear(),w.clear())}finally{f&&is(f,i,a.href,d),l&&clearTimeout(l),i===C&&(Dt(!1),typeof location<"u"&&(H=location.href))}}function Qe(){let e=je(document.body);return e?[...e.entries()].map(([t,n])=>`${t}:${n.routeKey}`).join(","):""}function ar(){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 Xo(){try{if(typeof matchMedia=="function")return matchMedia("(hover: hover) and (pointer: fine)").matches}catch{}return!0}function Ia(e){let t=e.getAttribute("rel");return t?t.toLowerCase().split(/\s+/).filter(Boolean):[]}function Ft(e){if(!e||!(e instanceof HTMLAnchorElement)||e.hasAttribute("download")||e.hasAttribute("data-no-router")||e.target&&e.target!=="_self")return null;let t=e.href;if(!t)return null;let n;try{n=new URL(t)}catch{return null}return n.origin!==location.origin||n.pathname===location.pathname&&n.search===location.search&&n.hash||zt.test(n.pathname)?null:t}function Qo(e){if(e.hasAttribute("data-no-prefetch"))return!0;let t=Ia(e);return t.includes("external")||t.includes("no-prefetch")}function Bt(e){if(Qo(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 Xo()?"intent":"viewport"}}function Re(e){if(!re||typeof fetch!="function"||ar())return;let t=ne(e);if(typeof location<"u"&&t===ne(location.href)||pe.has(t)||Ye.has(t))return;let n=w.get(t);if(n&&Jn()-n.at<Go)return;if(pe.size>=Jo){for(Ye.add(t),Te.push(e);Te.length>La;){let s=Te.shift();Ye.delete(ne(s))}return}let r=Qe();if(!r&&typeof document<"u"&&document.readyState==="loading")return;pe.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,u=l?l.getAttribute("data-webjs-build"):null,f=l?l.getAttribute("data-webjs-src"):null;(c&&u&&c!==u||a&&f&&a!==f)&&(x.clear(),w.clear());let d=s.redirected&&s.url?s.url:e,h=await s.text();Fa(t,{html:h,build:c,src:a,finalUrl:d,at:Jn()})}).catch(()=>{}).finally(()=>{pe.delete(t),Da()})}function Da(){for(;Te.length&&pe.size<Jo;){let e=Te.shift();Ye.delete(ne(e)),Re(e)}}function Fa(e,t){for(w.has(e)&&w.delete(e),w.set(e,t);w.size>Oa;){let n=w.keys().next().value;w.delete(n)}typeof document<"u"&&document.dispatchEvent(new CustomEvent("webjs:prefetch",{detail:{url:t.finalUrl,key:e,from:"prefetch"}}))}function Zo(e){let t=/<!--wj:children:([^>]*?)-->/.exec(e||"");return t?t[1]:null}function es(e,t){let n=ne(e),r=w.get(n);if(!r)return null;if(Jn()-r.at>=Go)return w.delete(n),null;let o=Zo(r.html);return o&&!new Set(String(t??(Qe()||"")).split(",").filter(Boolean)).has(o)?(w.delete(n),null):(w.delete(n),r)}function Jn(){try{if(typeof performance<"u"&&typeof performance.now=="function")return performance.now()}catch{}return 0}function ke(e){if(!re)return;let t=ns(e.target);if(!t)return;let n=Bt(t);if(n==="none"||n==="render")return;let r=Ft(t);if(r){if(e.type==="touchstart"){Re(r);return}n==="intent"&&(Ge===t&&Ne||(Yt(),Ge=t,Ne=setTimeout(()=>{Ne=null,Ge=null,Re(r)},Ma)))}}function ts(e){let t=ns(e.target);t&&t===Ge&&Yt()}function Yt(){Ne&&(clearTimeout(Ne),Ne=null),Ge=null}function cr(){for(let e of Je)clearTimeout(e);Je.clear(),Ce=new WeakMap}function ns(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 Xn(){if(typeof document>"u"||ar())return;let e=typeof IntersectionObserver<"u";e&&(te?(te.disconnect(),cr()):te=new IntersectionObserver(t=>{for(let n of t){let r=n.target;if(n.isIntersecting){if(Ce.has(r))continue;let o=setTimeout(()=>{Je.delete(o),Ce.delete(r),te.unobserve(r);let s=Ft(r);s&&Bt(r)==="viewport"&&Re(s)},Pa);Ce.set(r,o),Je.add(o)}else{let o=Ce.get(r);o&&(clearTimeout(o),Je.delete(o),Ce.delete(r))}}},{threshold:.5}));for(let t of document.querySelectorAll("a[href]")){let n=Bt(t);if(n==="render"){let r=Ft(t);r&&Re(r)}else n==="viewport"&&e&&te.observe(t)}}function Ba(e){if(typeof document>"u"||!document.body)return!1;let t=je(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 Kn(e,t,n){let r=new CustomEvent("webjs:navigation-error",{bubbles:!0,cancelable:!0,detail:{url:e,status:t??null,error:n||null}});if(typeof document<"u")try{document.dispatchEvent(r)}catch{}r.defaultPrevented||Ba(t)||typeof location<"u"&&(de("navigation-error-unrecoverable",e),location.href=e)}async function Ut(e,t,n,r,o,s,i,c,a){o=o||"GET";let l=typeof c=="number"?c:C,u,f=null,d=null,h=null,m=null,S=!1,y=e,p=t?rs(t,l):null;try{try{let b=o==="GET"&&!s&&!t?es(e,r?r.haveKeys:void 0):null;if(b)u=b.html,d=b.build,h=b.src,y=b.finalUrl,m=200,S=!0;else{let P={"x-webjs-router":"1"},Le=Qe();Le&&(P["x-webjs-have"]=Le),t&&(P["x-webjs-frame"]=t),s!=null&&o!=="GET"&&o!=="HEAD"&&(P.accept=Oo+", text/html");let oe={method:o,headers:P,credentials:"same-origin"};i&&(oe.signal=i),s!=null&&o!=="GET"&&o!=="HEAD"&&(oe.body=s);let T=await fetch(e,oe);m=T.status,S=T.ok;let N=T.headers.get("content-type")||"",bs=/^text\/html\b/i.test(N);if(N.toLowerCase().indexOf(Oo)===0){let gs=await T.text();return l===C&&(Ke(r),Vn(gs)),{ok:S,status:m,aborted:!1}}if(T.redirected&&T.url&&(y=T.url),T.status===204||T.status===205)return l===C&&n&&history.pushState(null,"",y),{ok:S,status:m,aborted:!1};if(!bs)return l===C&&(Ke(r),Kn(e,T.status,null)),{ok:!1,status:m,aborted:!1};d=T.headers.get("x-webjs-build"),h=T.headers.get("x-webjs-src");let Zt=await fs(T);u=Zt.shell,Zt.streaming&&(f=Zt)}}catch(b){return b&&b.name==="AbortError"?{ok:!1,status:null,aborted:!0}:l!==C?{ok:!1,status:null,aborted:!0}:(Ke(r),Kn(e,null,b instanceof Error?b:new Error(String(b))),{ok:!1,status:null,aborted:!1})}if(l!==C){if(f&&f.reader)try{f.reader.cancel()}catch{}return{ok:!1,status:m,aborted:!0}}let j=tr(u);if(!j)return Ke(r),Kn(e,null,new Error("navigation response did not parse as HTML")),{ok:!1,status:m,aborted:!1};if(lr(j,t,!!a,y,d,h)==="discard"){if(f&&f.reader)try{f.reader.cancel()}catch{}return{ok:S,status:m,aborted:!1}}if(n&&history.pushState(null,"",y),n){let b=new URL(y);if(b.hash){let P=document.getElementById(b.hash.slice(1));P?P.scrollIntoView():(Lo(),window.scrollTo({left:0,top:0,behavior:"instant"}))}else Lo(),window.scrollTo({left:0,top:0,behavior:"instant"})}return f&&(f.reader||f.rest)&&Pt.then(()=>hs(f.reader,f.dec,f.rest,()=>l===C)),document.dispatchEvent(new CustomEvent("webjs:navigate",{detail:{url:y,frameId:t,from:"navigate"}})),{ok:S,status:m,aborted:!1}}finally{p&&os(p,l)}}function rs(e,t){if(typeof document>"u")return null;let n=null;try{n=document.querySelector(`webjs-frame#${CSS.escape(e)}`)}catch{n=document.getElementById(e)}if(!n)return null;let r=$t.has(n);return $t.set(n,t),n.setAttribute("aria-busy","true"),r||n.dispatchEvent(new CustomEvent("webjs:frame-busy",{bubbles:!0,detail:{frameId:e,busy:!0}})),n}function os(e,t){if($t.get(e)!==t)return;$t.delete(e),e.setAttribute("aria-busy","false");let n=e.id||null;e.dispatchEvent(new CustomEvent("webjs:frame-busy",{bubbles:!0,detail:{frameId:n,busy:!1}}))}function ss(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 is(e,t,n,r){if(Ht.get(e)!==t)return;Ht.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 Mo(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+=K(r);return n}function as(){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 Mt(e,t){let n=typeof document<"u"?document.startViewTransition:void 0;if(as()&&typeof n=="function"){let r=n.call(document,e);return r&&r.finished&&typeof r.finished.then=="function"?r.finished.then(()=>{t&&t()}).catch(()=>{}):t&&t(),r&&r.updateCallbackDone&&typeof r.updateCallbackDone.then=="function"?r.updateCallbackDone.catch(()=>{}):Promise.resolve()}return e(),t&&t(),Promise.resolve()}function cs(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 Gt(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=Ua(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 Ua(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 $a(e){if(!(!e||!e.start))for(let t=e.start.nextSibling;t&&t!==e.end;t=t.nextSibling)t.nodeType===1&&he(t)}function lr(e,t,n,r,o,s){try{Ot(e)}catch{}try{for(let f of e.querySelectorAll("[data-wj-host]"))f.setAttribute("data-wj-serialized","")}catch{}try{typeof sessionStorage<"u"&&(!r||t||n)&&sessionStorage.removeItem("webjs:importmap-reload")}catch{}if(r&&!t&&!n){let f=document.querySelector('script[type="importmap"]'),d=f?f.getAttribute("data-webjs-build"):null,h=!1;if(o&&d&&(h=o!==d),!h&&e.head&&e.head.children.length>0){let m=Mo(document),S=Mo(e);m!==S&&(h=!0)}if(h&&typeof location<"u"){x.clear(),w.clear();try{let m="webjs:importmap-reload";if(sessionStorage&&sessionStorage.getItem(m))sessionStorage.removeItem(m),de("deploy-mismatch-reload-suppressed",r,!1);else{sessionStorage&&sessionStorage.setItem(m,"1"),de("deploy-mismatch",r),location.href=r;return}}catch{de("deploy-mismatch",r),location.href=r;return}}else if(!h){let m=f?f.getAttribute("data-webjs-src"):null;s&&m&&s!==m&&(x.clear(),w.clear(),f&&f.setAttribute("data-webjs-src",s));try{typeof sessionStorage<"u"&&sessionStorage.removeItem("webjs:importmap-reload")}catch{}}}if(t){let f=document.querySelector(`webjs-frame#${CSS.escape(t)}`),d=e.querySelector(`webjs-frame#${CSS.escape(t)}`);if(f&&d){er(e.head),Pt=Mt(()=>{Ga(f,d),Xe(f),he(f),Po(e.body),It()},()=>he(f));return}let h=new CustomEvent("webjs:frame-missing",{bubbles:!0,cancelable:!0,detail:{frameId:t,url:r||(typeof location<"u"?location.href:null),document:e}});(f||document).dispatchEvent(h),h.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=je(document.body),c=je(e.body),a=i&&c?Ko(i,c):null;if(a){let{mode:f,live:d,incoming:h}=a;er(e.head),Pt=Mt(()=>{f==="replace"?Ha(d,h):qa(d,h,e),Ka(d.start,h.start),Po(e.body),It()},()=>$a(d));return}if(r&&!n&&typeof location<"u"){de(i?c?"no-shared-boundary":"incoming-boundaries-malformed":"live-boundaries-malformed",r),location.href=r;return}if(r&&n)return de("revalidation-discarded",r,!1),"discard";us(e.head),cs(document.body,e.body);let l=[...e.body.childNodes];Pt=Mt(()=>{document.body.replaceChildren(...l),Xe(document.body),he(document.body),It()},()=>he(document.body))}function It(){let e=document.activeElement;!e||e===document.body||e===document.documentElement||typeof e.blur=="function"&&e.blur()}function Ha(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));Gt(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&&(Xe(s),he(s))}function qa(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));Gt(o,s),Va(r,e.start,e.end,o,s);for(let i=e.start.nextSibling;i&&i!==e.end;i=i.nextSibling)i.nodeType===1&&(Xe(i),he(i))}function Va(e,t,n,r,o){let s=new Map;for(let a of r){if(a.nodeType!==1)continue;let l=xe(a);l&&s.set(l,a)}let i=n,c=[];for(let a of o){if(a.nodeType===1){let l=xe(a);if(l&&s.has(l)){let u=s.get(l);qt(u,a),c.push(u),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 qt(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),!Qn.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])Qn.has(r.name)||n.has(r.name)||e.removeAttribute(r.name);if(Wa(e)){Ya(e,t);return}Jt(e,t)}function Wa(e){let t=e;return t[Symbol.for("webjs.instance")]!=null||t[A]!=null}function za(e,t){for(let n=e.parentElement;n&&n!==t;n=n.parentElement)if(n.tagName.includes("-"))return!1;return!0}function Vt(e){let t=new Map,n=`slot[${E}][${L}="${F}"]`;for(let r of e.querySelectorAll(n)){let o=r;if(!za(o,e)||Vr(e,o))continue;let s=!1;for(let c=o.parentElement;c&&c!==e;c=c.parentElement)if(c.tagName==="SLOT"&&c.hasAttribute(E)&&c.getAttribute(L)===F){s=!0;break}if(s)continue;let i=D(o.getAttribute("name"));t.has(i)||t.set(i,o)}return t}function Ka(e,t){let n=e.parentNode;if(!n||n.nodeType!==1)return;let r=n;if(r.tagName!=="SLOT"||!r.hasAttribute(E))return;let o=null;for(let f=r.parentElement;f;f=f.parentElement){if(f[A]){o=f;break}if(f.tagName.includes("-"))return}if(!o)return;let s=D(r.getAttribute("name"));ce(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 f=c.parentElement;f;f=f.parentElement)if(f.tagName.includes("-")){a=f;break}if(!a||a.tagName!==o.tagName)return;let l=Vt(o),u=Vt(a);for(let f of new Set([...l.keys(),...u.keys()])){if(f===s)continue;let d=u.get(f);d?ce(o,f,[...d.childNodes].map(h=>document.importNode(h,!0))):l.get(f)&&ce(o,f,null)}}function Ya(e,t){if(!e[A])return;let n=Vt(e),r=Vt(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?(Jt(i,c),ce(e,s,[...i.childNodes])):c?ce(e,s,[...c.childNodes].map(a=>document.importNode(a,!0))):ce(e,s,null)}}function Jt(e,t){let n=[...e.childNodes],r=[...t.childNodes].map(c=>document.importNode(c,!0));Gt(n,r);let o=new Map;for(let c of n){if(c.nodeType!==1)continue;let a=xe(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=xe(a);if(l&&o.has(l)){let f=o.get(l);qt(f,a),s.push(f),o.delete(l);continue}let u=n[c];if(u&&u.nodeType===1&&!xe(u)&&u.tagName===a.tagName){qt(u,a),s.push(u);continue}}else if(a.nodeType===3){let l=n[c];if(l&&l.nodeType===3){l.nodeValue!==a.nodeValue&&(l.nodeValue=a.nodeValue),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 xe(e){let t=e.getAttribute("data-key");return t?`${e.tagName}:k:${t}`:e.id?`${e.tagName}:i:${e.id}`:null}function ur(){let e=je(document.body);if(!e||e.size===0)return null;let t=[...e.keys()].sort((a,l)=>l.length-a.length),n=null,r=null;for(let a of t){let l=document.getElementById(`wj-loading:${a}`);if(l instanceof HTMLTemplateElement){n=a,r=l;break}}if(n===null||r===null)return null;let o=e.get(n),s=Qe(),i=[];for(let a=o.start.nextSibling;a&&a!==o.end;a=a.nextSibling)i.push(a);let c=document.createRange();return c.setStartAfter(o.start),c.setEndBefore(o.end),c.deleteContents(),o.start.parentNode.insertBefore(r.content.cloneNode(!0),o.end),{slot:o,oldChildren:i,token:C,haveKeys:s}}function Ke(e){if(!e||e.token!==C)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 Ga(e,t){Jt(e,t)}function ls(){if(typeof document>"u")return"";let e=document.querySelector('meta[name="csp-nonce"]');return e&&e.getAttribute("content")||""}function fr(e){let t=document.createElement("script");for(let r of e.attributes)r.name!=="nonce"&&t.setAttribute(r.name,r.value);let n=ls();return n&&t.setAttribute("nonce",n),t.textContent=e.textContent,t}function dr(e){if(!e.hasAttribute("nonce"))return e.cloneNode(!0);let t=e.cloneNode(!0),n=ls();return n?t.setAttribute("nonce",n):t.removeAttribute("nonce"),t}function K(e){if(!e.hasAttribute("nonce"))return e.outerHTML;let t=e.cloneNode(!0);return t.removeAttribute("nonce"),t.outerHTML}function Wt(e){let t=e.getAttribute("name");if(t)return"name="+t;let n=e.getAttribute("property");if(n)return"property="+n;let r=e.getAttribute("http-equiv");return r?"http-equiv="+r:e.hasAttribute("charset")?"charset":null}function Ja(e){if(!e.querySelector("meta"))return;let t=o=>{let s=new Map;for(let i of o.querySelectorAll("meta")){let c=Wt(i);if(!c||c===Zn)continue;let a=s.get(c);a?a.push(i):s.set(c,[i])}return s},n=t(e),r=t(document.head);for(let[o,s]of n){let i=r.get(o)||[],c=s.map(K).join(`
|
|
2
|
-
`),
|
|
3
|
-
`);if(c
|
|
4
|
-
`),n.appendChild(r)}}function
|
|
5
|
-
`)}</style>`}var nn=Object.freeze({"@":"event",".":"prop","?":"bool"});function _r(e){return Object.prototype.hasOwnProperty.call(nn,e)}function vs(e){return String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function Es(e){return String(e).replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<")}var wr=Symbol.for("webjs.repeat");function Sr(e,t,n){return{[wr]:!0,items:[...e],keyFn:t,templateFn:n}}function Ze(e){return!!e&&typeof e=="object"&&e[wr]===!0}function Cs(e){return{_$webjs:"unsafe-html",value:String(e??"")}}function rn(e){return!!e&&typeof e=="object"&&e._$webjs==="unsafe-html"}function Ts(e){return{_$webjs:"live",value:e}}function on(e){return!!e&&typeof e=="object"&&e._$webjs==="live"}function Ns(e,t){return{_$webjs:"keyed",key:e,value:t}}function et(e){return!!e&&typeof e=="object"&&e._$webjs==="keyed"}function ks(e,t){return{_$webjs:"guard",deps:e,fn:t}}function tt(e){return!!e&&typeof e=="object"&&e._$webjs==="guard"}function xs(e){return{_$webjs:"template-content",template:e}}function sn(e){return!!e&&typeof e=="object"&&e._$webjs==="template-content"}function js(e){return{_$webjs:"ref",target:e}}function nt(e){return!!e&&typeof e=="object"&&e._$webjs==="ref"}function Rs(){return{value:void 0}}function Os(e){return{_$webjs:"cache",value:e}}function rt(e){return!!e&&typeof e=="object"&&e._$webjs==="cache"}function Ls(...e){return{_$webjs:"until",args:e}}function ot(e){return!!e&&typeof e=="object"&&e._$webjs==="until"}function Ms(e,t){return{_$webjs:"async-append",iterable:e,mapper:t}}function an(e){return!!e&&typeof e=="object"&&e._$webjs==="async-append"}function Ps(e,t){return{_$webjs:"async-replace",iterable:e,mapper:t}}function cn(e){return!!e&&typeof e=="object"&&e._$webjs==="async-replace"}function Is(e){return{_$webjs:"watch",signal:e}}function st(e){return!!e&&typeof e=="object"&&e._$webjs==="watch"}var I=null,J=!1,ye=0,me=null,ln=0,Ar=(e,t)=>Object.is(e,t),at=()=>{},vr=()=>!1;function Er(e,t){e.liveConsumers||(e.liveConsumers=new Set);let n=e.liveConsumers.size===0;if(e.liveConsumers.add(t),n){if(e.producers&&e.producers.length>0)for(let r of e.producers)Er(r,e);if(e.watched)try{e.watched.call(e.wrapper)}catch(r){console.error(r)}}}function Me(e,t){if(e.liveConsumers&&(e.liveConsumers.delete(t),e.liveConsumers.size===0)){if(e.producers&&e.producers.length>0)for(let n of e.producers)Me(n,e);if(e.unwatched)try{e.unwatched.call(e.wrapper)}catch(n){console.error(n)}}}function mn(e){if(J)throw new Error("Signal read during notification phase");if(I===null)return;let t=I,n=t.nextProducerIndex++;n<t.producers.length&&t.producers[n]!==e&&dn(t)&&Me(t.producers[n],t),t.producers[n]!==e&&(t.producers[n]=e,dn(t)&&Er(e,t)),t.producerLastReadVersions[n]=e.version}function dn(e){return e.consumerIsAlwaysLive||e.liveConsumers&&e.liveConsumers.size>0}function Cr(e){if(!e.liveConsumers||e.liveConsumers.size===0)return;let t=J;J=!0;try{for(let n of e.liveConsumers)n.dirty||Ds(n)}finally{J=t}}function Ds(e){e.dirty=!0,Cr(e),e.consumerMarkedDirty.call(e.wrapper||e)}function ct(e){if(!(!e.dirty&&e.lastCleanEpoch===ye)){if(!e.producerMustRecompute()&&!Fs(e)){e.dirty=!1,e.lastCleanEpoch=ye;return}e.producerRecomputeValue(),e.dirty=!1,e.lastCleanEpoch=ye}}function Fs(e){for(let t=0;t<e.producers.length;t++){let n=e.producers[t],r=e.producerLastReadVersions[t];if(r!==n.version||(ct(n),r!==n.version))return!0}return!1}function pn(e){e&&(e.nextProducerIndex=0);let t=I;return I=e,t}function hn(e,t){if(I=t,!!e){if(dn(e))for(let n=e.nextProducerIndex;n<e.producers.length;n++)Me(e.producers[n],e);for(;e.producers.length>e.nextProducerIndex;)e.producers.pop(),e.producerLastReadVersions.pop()}}var lt=class{constructor(t,n){this.__value=t,this.version=0,this.lastCleanEpoch=ye,this.dirty=!1,this.producers=[],this.producerLastReadVersions=[],this.liveConsumers=void 0,this.consumerAllowSignalWrites=!0,this.consumerIsAlwaysLive=!1,this.producerMustRecompute=vr,this.producerRecomputeValue=at,this.consumerMarkedDirty=at,this.wrapper=this,this.__isSignal=!0,this.__equal=n?.equals||Ar,this.watched=n?.[yn],this.unwatched=n?.[bn]}get(){return mn(this),this.__value}peek(){return this.__value}set(t){if(J)throw new Error("Signal write during notification phase");this.__equal.call(this,this.__value,t)||(this.__value=t,this.version++,ye++,me!==null?Tr(this):Cr(this))}};function Tr(e){let t=J;J=!0;try{if(!e.liveConsumers)return;for(let n of e.liveConsumers)n.dirty||(n.dirty=!0,n.__isWatcher?me.add(n):Tr(n))}finally{J=t}}var un=Symbol("unset"),fn=Symbol("computing"),it=Symbol("errored"),Pe=class{constructor(t,n){this.__fn=t,this.__value=un,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||Ar,this.watched=n?.[yn],this.unwatched=n?.[bn];let r=this;this.producerMustRecompute=function(){return r.__value===un||r.__value===fn},this.producerRecomputeValue=function(){if(r.__value===fn)throw new Error("Detected cycle in computations.");let o=r.__value;r.__value=fn;let s=pn(r),i,c=!1;try{i=r.__fn.call(r.wrapper)}catch(l){i=it,r.__error=l,c=!0}finally{hn(r,s)}if(!c&&(o!==un&&o!==it)&&r.__equal.call(r.wrapper,o,i)){r.__value=o;return}r.__value=i,r.version++},this.consumerMarkedDirty=at}get(){if(ct(this),mn(this),this.__value===it)throw this.__error;return this.__value}peek(){if(ct(this),this.__value===it)throw this.__error;return this.__value}},ut=class{constructor(t){this.__notify=t,this.version=0,this.lastCleanEpoch=ye,this.dirty=!1,this.producers=[],this.producerLastReadVersions=[],this.nextProducerIndex=0,this.liveConsumers=void 0,this.consumerAllowSignalWrites=!1,this.consumerIsAlwaysLive=!0,this.producerMustRecompute=vr,this.producerRecomputeValue=at,this.wrapper=this,this.__isWatcher=!0;let n=this;this.consumerMarkedDirty=function(){n.__fire()}}__fire(){this.__notify&&this.__notify.call(this)}watch(...t){if(t.length===0){this.dirty=!1;return}let n=pn(this);try{for(let r of t)mn(r),r.__isComputed&&ct(r)}finally{hn(this,n)}this.dirty=!1}unwatch(...t){for(let n=this.producers.length-1;n>=0;n--)t.includes(this.producers[n])&&(Me(this.producers[n],this),this.producers.splice(n,1),this.producerLastReadVersions.splice(n,1),this.nextProducerIndex=Math.min(this.nextProducerIndex,this.producers.length))}getPending(){return this.producers.filter(t=>t.__isComputed&&t.dirty)}observe(t){let n=pn(this),r;try{r=t()}finally{hn(this,n)}return this.dirty=!1,r}dispose(){for(let t of this.producers)Me(t,this);this.producers=[],this.producerLastReadVersions=[],this.__notify=null}},yn=Symbol("watched"),bn=Symbol("unwatched");function Bs(e){let t=I;I=null;try{return e()}finally{I=t}}function Us(e){return e.producers.slice()}function $s(e){return e.liveConsumers?[...e.liveConsumers]:[]}function Hs(e){return!!e.liveConsumers&&e.liveConsumers.size>0}function qs(e){return e.producers.length>0}function Vs(){return I&&I.__isComputed?I:null}function Ws(e){ln++,me===null&&(me=new Set);try{e()}finally{if(ln--,ln===0){let t=me;me=null;for(let n of t)n.__fire()}}}var Ie={State:lt,Computed:Pe,subtle:{Watcher:ut,untrack:Bs,introspectSources:Us,introspectSinks:$s,hasSinks:Hs,hasSources:qs,currentComputed:Vs,watched:yn,unwatched:bn}};function zs(e,t){return new lt(e,t)}function Ks(e,t){return new Pe(e,t)}function Ys(e){return!!(e&&typeof e=="object"&&e.__isSignal===!0)}function Gs(e){let t=!1,n=!1,r=new Pe(e),o=new ut(()=>{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())}}gt();function Jr(e,t){let n=e&&e[A]?e:null;return n?mt(n,t):t()}var Yr=new WeakMap,_t=Symbol.for("webjs.instance");function Ae(e,t){let n=t,r=n[k];n[k]=!0;try{let o=n[_t];if(O(e)){let s=e;if(o&&o.strings===s.strings){we(o,s.values);return}o&&Gr(o,t);let i=t.firstChild;i&&i.nodeType===8&&i.data==="webjs-hydrate"&&i.remove(),n[_t]=null;let c=hi(s,t);n[_t]=c;return}if(o&&Gr(o,t),n[_t]=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[k]=r,r||On(n)}}function St(e){let{strings:t}=e,n=Yr.get(t);if(n)return n;let r=[],o="",s="text",i="",c=0,a="",l=0,u=null,f="",d="";for(let m=0;m<t.length;m++){let S=t[m];for(let y=0;y<S.length;y++){let p=S[y];switch(s){case"text":o+=p,p==="<"&&(s="tag-open");break;case"tag-open":o+=p,p==="!"?s="bang-1":p==="/"?(s="tag-name",f=""):/[a-zA-Z]/.test(p)?(s="tag-name",f=p.toLowerCase()):s="text";break;case"bang-1":o+=p,s=p==="-"?"bang-dash":"tag-name";break;case"bang-dash":o+=p,p==="-"?(s="comment",l=0):s="tag-name";break;case"comment":o+=p,p==="-"?l+=1:(p===">"&&l>=2&&(s="text"),l=0);break;case"tag-name":o+=p,p===">"?(s=f==="script"||f==="style"?"rawtext":"text",s==="rawtext"&&(d="")):/\s/.test(p)?s="in-tag":f+=p.toLowerCase();break;case"in-tag":o+=p,p===">"?(s=f==="script"||f==="style"?"rawtext":"text",s==="rawtext"&&(d="")):!/\s/.test(p)&&p!=="/"&&(s="attr-name",i=p,c=o.length-1);break;case"rawtext":o+=p,d=(d+p.toLowerCase()).slice(-9),(d.endsWith("<\/script>")||d.endsWith("</style>"))&&(s="text",d="",f="");break;case"attr-name":p==="="?(s="after-eq",o+=p):/\s/.test(p)?(s="in-tag",i="",o+=p):p===">"?(s="text",i="",o+=p):(i+=p,o+=p);break;case"after-eq":p==='"'||p==="'"?(s="attr-quoted",a=p,o+=p):/\s/.test(p)?(s="in-tag",i="",o+=p):p===">"?(s="text",i="",o+=p):(s="attr-unquoted",o+=p);break;case"attr-unquoted":/\s/.test(p)?(s="in-tag",i="",o+=p):(p===">"&&(s="text",i=""),o+=p);break;case"attr-quoted":o+=p,p===a&&(s="in-tag",i="");break;case"skip-attr":if(p===a){if(u){let j=u.firstPartIdx,R=[];for(let N=j;N<r.length;N++)(r[N].kind==="noop"||r[N].kind==="attr-mixed")&&R.push(N);let b=[],P=t[R[0]],Le=P.lastIndexOf(a);b.push(Le>=0?P.slice(Le+1):P);for(let N=1;N<R.length;N++)b.push(t[R[N]]);let oe=t[R[R.length-1]+1],T=oe.indexOf(a);b.push(T>=0?oe.slice(0,T):oe),r[j]={kind:"attr-mixed",path:[],name:u.name,statics:b,group:R};for(let N=1;N<R.length;N++)r[R[N]]={kind:"noop",path:[],mixedAnchor:j};u=null}s="in-tag",i=""}break}}if(m<t.length-1){let y=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+=`<!--${v}${y}-->`,r.push({kind:"child",path:[]});else if(s==="in-tag"){let p=`data-${v}${y}`;o+=`${p}=""`,r.push({kind:"element",path:[]})}else if(s==="after-eq"){let p=i[0],j=i.slice(1);if(_r(p)){o=o.slice(0,c);let R=nn[p],b=`data-${v}${y}`;o+=`${b}=""`,r.push({kind:R,path:[],name:j})}else{o=o.slice(0,c);let R=`data-${v}${y}`;o+=`${R}=""`,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 p=`data-${v}${y}`;o+=`${p}=""`,u={name:i,firstPartIdx:y},r.push({kind:"noop",path:[]}),s="skip-attr"}else s==="skip-attr"&&r.push({kind:"noop",path:[]})}}let h=document.createElement("template");return h.innerHTML=o,di(h.content,r),pi(h.content,r),n={templateEl:h,parts:r},Yr.set(t,n),n}function di(e,t){let n=e.querySelectorAll("slot");for(let r of n){r.setAttribute(E,"");let o=t.length;r.setAttribute(`data-${v}${o}`,""),t.push({kind:"slot",path:[]})}}function pi(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(v)){let a=Number(c.slice(v.length));t[a]&&t[a].kind==="child"&&(t[a].path=n.slice())}}else if(i.nodeType===1){let c=i,a=[];for(let l of c.attributes)if(l.name.startsWith(`data-${v}`)){let u=Number(l.name.slice(`data-${v}`.length));t[u]&&t[u].kind!=="child"&&(t[u].path=n.slice()),a.push(l.name)}for(let l of a)c.removeAttribute(l);r(i)}n.pop()}}r(e)}function hi(e,t){let{templateEl:n,parts:r}=St(e),o=n.content.cloneNode(!0),s=document.createComment(`${v}s`),i=document.createComment(`${v}e`),c=r.map(u=>At(u,o)),a=[];for(let u=0;u<e.values.length;u++)U(c[u],e.values[u],void 0,e.values),a.push(e.values[u]);t.replaceChildren(s,...o.childNodes,i);let l=t.nodeType===1&&t[A]?t:null;for(let u of c)u.kind==="slot"&&(l&&u.slotEl&&(u.slotEl[ht]=l),U(u,void 0,void 0,[]));return{strings:e.strings,bound:c,lastValues:a,startNode:s,endNode:i}}function At(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 we(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?U(e.bound[s],t[s],e.lastValues[s],t):U(o,r,e.lastValues[n],t),e.lastValues[n]=r}}function Gr(e,t){for(let n of e.bound){if(n.kind==="event"&&n.el.removeEventListener(n.name,n.dispatcher),n.kind==="element"){let r=n.lastTarget;if(r){if(typeof r=="function")try{r(void 0)}catch{}else typeof r=="object"&&(r.value=void 0);n.lastTarget=void 0,n.__lastEl=void 0}}if(n.kind==="slot"){let r=Be(n.slotEl);r&&Kr(r,n.slotEl)}}t.replaceChildren()}function U(e,t,n,r){if(on(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":bi(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":yi(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=Be(o);if(!c){e.applied=!0;return}if(!c.contains(o)){c.isConnected?queueMicrotask(s):e.applied=!0;return}if(e.applied=!0,mi(o))return;let a=document.createDocumentFragment();for(;o.firstChild;)a.appendChild(o.firstChild);o[Fe]=a,queueMicrotask(()=>z(c))},i=Be(o);i&&i.contains(o)?s():queueMicrotask(s);break}case"noop":break}}function Be(e){let t=e[ht];if(t&&t.isConnected)return t;let n=e.parentElement;for(;n;){if(n[A])return n;n=n.parentElement}return null}function mi(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 yi(e,t){let n=e,r=nt(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 bi(e,t){return Ni(e,t),B(e,t)}function B(e,t){return Jr(e.marker&&e.marker.parentNode,()=>gi(e,t))}function gi(e,t){let n=e.marker;if(rn(t)){Z(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(et(t)){let o=t,s=e.__keyedKey;s!==void 0&&!Object.is(s,o.key)&&Z(e),e.__keyedKey=o.key,B(e,o.value);return}if(tt(t)){let o=t,s=e.__guardDeps,i=o.deps;if(s!==void 0&&(Array.isArray(s)&&Array.isArray(i)?Ti(s,i):Object.is(s,i)))return;e.__guardDeps=Array.isArray(i)?i.slice():i,B(e,o.fn());return}if(sn(t)){Z(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(nt(t))return;if(rt(t))return ki(e,t.value);if(ot(t))return xi(e,t.args);if(st(t))return ji(e,t.signal);if(an(t))return Ri(e,t);if(cn(t))return Oi(e,t);if(Ze(t)){if(e.child&&e.child.kind==="repeat"){Si(e,t);return}Z(e);let o={kind:"repeat",map:new Map};e.child=o,wi(n,o,t);return}if(Array.isArray(t)){if(e.child&&e.child.kind==="array"){Ei(e,t);return}Z(e);let o={kind:"array",items:[]};e.child=o,vi(n,o,t);return}if(e.child){let o=e.child;if(o.kind==="repeat")Xr(o),e.child=void 0;else if(o.kind==="array")Zr(o),e.child=void 0;else if(o.kind==="async-stream")ro(o),e.child=void 0;else if("strings"in e.child){let s=e.child;if(O(t)&&s.strings===t.strings){we(s,t.values);return}Se(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(O(t)){let o=t,{templateEl:s,parts:i}=St(o),c=s.content.cloneNode(!0),a=document.createComment(`${v}s`),l=document.createComment(`${v}e`),u=i.map(h=>At(h,c)),f=[];for(let h=0;h<o.values.length;h++)U(u[h],o.values[h],void 0,o.values),f.push(o.values[h]);let d=[a,...c.childNodes,l];n.parentNode?.insertBefore(_i(d),n);for(let h of u)h.kind==="slot"&&U(h,void 0,void 0,[]);e.child={strings:o.strings,bound:u,lastValues:f,startNode:a,endNode:l};return}let r=document.createTextNode(String(t));n.parentNode?.insertBefore(r,n),e.child=[r]}function _i(e){let t=document.createDocumentFragment();for(let n of e)t.appendChild(n);return t}function Se(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 Mn(e){let{templateEl:t,parts:n}=St(e),r=t.content.cloneNode(!0),o=document.createComment(`${v}s`),s=document.createComment(`${v}e`),i=n.map(l=>At(l,r)),c=[];for(let l=0;l<e.values.length;l++)U(i[l],e.values[l],void 0,e.values),c.push(e.values[l]);for(let l of i)l.kind==="slot"&&U(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 Ue(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 wi(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),u=s(r[a],a);if(!O(u))continue;let{inst:f,frag:d}=Mn(u);t.map.set(l,f),c.appendChild(d)}i.insertBefore(c,e)}function Si(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 u=i(s[l],l),f=c(s[l],l);if(!O(f))continue;let d=o.map.get(u);if(d&&d.strings===f.strings)we(d,f.values),Ln(d.startNode,d.endNode,r,n),a.set(u,d),o.map.delete(u);else{d&&(Ue(d),Se(d.startNode,d.endNode),o.map.delete(u));let{inst:h,frag:m}=Mn(f);r.insertBefore(m,n),a.set(u,h)}}for(let l of o.map.values())Ue(l),Se(l.startNode,l.endNode);o.map=a}function Xr(e){for(let t of e.map.values())Ue(t),Se(t.startNode,t.endNode);e.map.clear()}function Ai(e){return e.type==="tpl"?e.inst.startNode:e.type==="text"?e.node:null}function wt(e){e.type==="tpl"?(Ue(e.inst),Se(e.inst.startNode,e.inst.endNode)):e.type==="text"&&e.node.parentNode?.removeChild(e.node)}function Qr(e){if(O(e)){let{inst:t,frag:n}=Mn(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 vi(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}=Qr(i);a&&o.appendChild(a),s.push(c)}r.insertBefore(o,e),t.items=s}function Ei(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(O(a)){let d=a;if(l&&l.type==="tpl"&&l.inst.strings===d.strings){we(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&&wt(l),i.push({type:"empty"});continue}let{item:u,frag:f}=Qr(a);f&&r.insertBefore(f,Ci(s,c,n)),l&&wt(l),i.push(u)}for(let c=t.length;c<s.length;c++)wt(s[c]);o.items=i}function Ci(e,t,n){for(let r=t;r<e.length;r++){let o=Ai(e[r]);if(o&&o.parentNode)return o}return n}function Zr(e){for(let t of e.items)wt(t);e.items=[]}function Ln(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 Ti(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 Z(e){let t=e;if(t.__untilState&&(t.__untilState.aborted=!0,t.__untilState=void 0),t.__watchSub&&eo(t),!e.child)return;let n=e.child;if(n.kind==="repeat")Xr(n);else if(n.kind==="array")Zr(n);else if(n.kind==="async-stream")ro(n);else if("strings"in n){let r=e.child;Ue(r),Se(r.startNode,r.endNode)}else for(let r of e.child)r.parentNode&&r.parentNode.removeChild(r);e.child=void 0}function Ni(e,t){let n=e;n.__untilState&&!ot(t)&&(n.__untilState.aborted=!0,n.__untilState=void 0),n.__guardDeps!==void 0&&!tt(t)&&(n.__guardDeps=void 0),n.__cacheMap&&!rt(t)&&(n.__cacheMap=void 0),n.__keyedKey!==void 0&&!et(t)&&(n.__keyedKey=void 0),n.__watchSub&&!st(t)&&eo(n)}function ki(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(O(t)&&c.strings===t.strings){we(c,t.values);return}let a=document.createDocumentFragment();Ln(c.startNode,c.endNode,a,null),o.set(c.strings,{inst:c,holder:a}),e.child=void 0}if(O(t)){let c=t,a=o.get(c.strings);if(a){o.delete(c.strings),e.child&&Z(e),Ln(a.inst.startNode,a.inst.endNode,n.parentNode,n),we(a.inst,c.values),e.child=a.inst;let l=new Set;for(let u=a.inst.startNode.nextSibling;u&&u!==a.inst.endNode;u=u.nextSibling){if(u.nodeType!==1)continue;let f=u;if(f.matches("slot[data-webjs-light]")){let d=Be(f);d&&l.add(d)}for(let d of f.querySelectorAll("slot[data-webjs-light]")){let h=Be(d);h&&l.add(h)}}for(let u of l)z(u);return}}B(e,t)}function xi(e,t){let n=e,r=n.__untilState,o=n.__untilArgs,s=(d,h)=>!!(Object.is(d,h)||O(d)&&O(h)&&d.strings===h.strings),c=o&&o.length===t.length&&o.every((d,h)=>s(d,t[h]))&&r?r.highestResolved:1/0;r&&(r.aborted=!0),n.__untilArgs=t.slice();let a={aborted:!1,highestResolved:c};n.__untilState=a;let l=-1,u;for(let d=0;d<t.length;d++){let h=t[d];if(!h||typeof h.then!="function"){l=d,u=h;break}}l!==-1&&l<=a.highestResolved?(B(e,u),a.highestResolved=l):l===-1&&!n.__untilEverRendered&&B(e,""),n.__untilEverRendered=!0;let f=Math.min(l===-1?t.length:l,a.highestResolved);for(let d=0;d<f;d++){let h=t[d];!h||typeof h.then!="function"||Promise.resolve(h).then(m=>{a.aborted||d>=a.highestResolved||(a.highestResolved=d,B(e,m))},()=>{})}}function ji(e,t){let n=e;if(n.__watchSig===t&&n.__watchSub){let s;n.__watchSub.observe(()=>{s=t.get()}),B(e,s);return}n.__watchSub&&(n.__watchSub.dispose(),n.__watchSub=void 0),n.__watchSig=t;let r=new Ie.subtle.Watcher(()=>{queueMicrotask(()=>{if(n.__watchSub!==r)return;let s;r.observe(()=>{s=t.get()}),B(e,s)})});n.__watchSub=r;let o;r.observe(()=>{o=t.get()}),B(e,o)}function eo(e){e.__watchSub&&(e.__watchSub.dispose(),e.__watchSub=void 0,e.__watchSig=void 0)}function Ri(e,t){let n=e.child;if(n&&n.kind==="async-stream"&&n.mode==="append"&&n.iterable===t.iterable)return;Z(e);let r=t.iterable[Symbol.asyncIterator](),o={kind:"async-stream",mode:"append",aborted:!1,iterable:t.iterable,iterator:r,nodes:[]};e.child=o,to(o,e,t)}function Oi(e,t){let n=e.child;if(n&&n.kind==="async-stream"&&n.mode==="replace"&&n.iterable===t.iterable)return;Z(e);let r=t.iterable[Symbol.asyncIterator](),o={kind:"async-stream",mode:"replace",aborted:!1,iterable:t.iterable,iterator:r,nodes:[]};e.child=o,to(o,e,t)}async function to(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=no(i);Jr(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 no(e){if(e==null||e===!1||e===!0)return[];if(O(e)){let t=e,{templateEl:n,parts:r}=St(t),o=n.content.cloneNode(!0),s=r.map(i=>At(i,o));for(let i=0;i<t.values.length;i++)U(s[i],t.values[i],void 0,t.values);for(let i of s)i.kind==="slot"&&U(i,void 0,void 0,[]);return[...o.childNodes]}if(Array.isArray(e)){let t=[];for(let n of e)t.push(...no(n));return t}return[document.createTextNode(String(e))]}function ro(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 oo=null;function vt(e){oo=e||null}function Li(){return oo||void 0}var so=Symbol.for("webjs:registry"),io=Symbol.for("webjs:classToTag"),Et=globalThis,$=Et[so]||(Et[so]=new Map),ao=Et[io]||(Et[io]=new WeakMap),Ct=typeof window<"u"&&typeof customElements<"u";function Pn(e,t){if(!e||typeof e!="string"||!e.includes("-"))throw new Error(`customElements.define: tag "${e}" must contain a hyphen (HTML spec)`);let n=t.lazy===!0,r=$.get(e);r?(r.cls=t,r.lazy=n):$.set(e,{cls:t,moduleUrl:null,lazy:n,tag:e}),ao.set(t,e)}if(Ct){let e=customElements.define.bind(customElements);customElements.define=function(t,n,r){customElements.get(t)||e(t,n,r),Pn(t,n)}}if(!Ct){let e=globalThis;e.customElements||(e.customElements={define(t,n){Pn(t,n)},get(t){return $.get(t)?.cls},upgrade(){},whenDefined(t){let n=$.get(t);return Promise.resolve(n?.cls)}})}function In(e,t){Ct?customElements.define(e,t):Pn(e,t)}function Mi(e,t){if(Ct)return;let n=$.get(e);if(n){n.moduleUrl=t;return}$.set(e,{cls:null,moduleUrl:t,lazy:!1,tag:e})}function Pi(e){return $.get(e)?.cls}function Ii(e){return $.get(e)?.moduleUrl||null}function Di(e){return $.get(e)?.lazy===!0}function Tt(e){return ao.get(e)}function Fi(){return[...$.keys()]}qe();gt();var mo=typeof window<"u"&&typeof HTMLElement<"u";function Xi(e,t){return e!==t}function Qi(){return{states:new Set,shadowRoot:null,form:null,labels:[],role:"",willValidate:!0,validity:{},validationMessage:"",setFormValue(){},setValidity(){},checkValidity(){return!0},reportValidity(){return!0}}}var Nt=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=Qi(),this.__internals}},Zi=["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 Zi){let t="aria-"+e.slice(4).toLowerCase();Object.defineProperty(Nt.prototype,e,{configurable:!0,get(){return this.getAttribute(t)},set(n){n==null?this.removeAttribute(t):this.setAttribute(t,String(n))}})}var ea=mo?HTMLElement:Nt,yo=Symbol("webjs.factoryProps"),po=new WeakSet,ve=class e extends ea{static shadow=!1;static hydrate=void 0;static properties={};static styles=null;static register(t){In(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||Fn(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(po.has(t))return;let n=t;for(;n&&n!==e;){if(Object.hasOwn(n,"properties")&&!Object.hasOwn(n,yo)){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://webjs.dev/docs/components.`)}n=Object.getPrototypeOf(n)}po.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||Xi)(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||Fn(t);if(!this.__reflectingAttribute){this.__reflectingAttribute=!0;try{if(r.converter&&r.converter.toAttribute){let s=r.converter.toAttribute(n,r.type);s==null?this.removeAttribute(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(!mo)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=ho(r.slice(16));try{this[s]=ue(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:en(r)?[r]:[];if(o.length){if(n){let s=this.shadowRoot.querySelector("style");s&&s.remove()}tn(this._renderRoot,o)}}else this._renderRoot=this,t.styles&&console.warn(`[webjs] <${Tt(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().`),Rn(this)?Hr(this):this.__isHydrating()||this.hasAttribute("data-wj-serialized")||zr(this)?(this.removeAttribute("data-wj-serialized"),W(this),Lr(this)):Or(this),Wr(this),Br(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),$r(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[u,f]of Object.entries(s))if(((typeof f=="object"?f:{type:f}).attribute||Fn(u))===t){i=u,c=f;break}if(c===void 0&&(i=ho(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,vt(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{vt(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 Ie.subtle.Watcher(()=>{this._connected&&this.requestUpdate()}));let n;if(this.__signalWatcher.observe(()=>{n=this.render()}),n&&typeof n.then=="function")return this._commitAsync(n);Ae(n,this._renderRoot)}_commitAsync(t){let n=this.__renderToken;if(this.__firstRendered&&this._overridesRenderFallback())try{let r=this.renderFallback();r!==void 0&&Ae(r,this._renderRoot)}catch(r){console.error("[webjs] renderFallback() threw:",r)}return Promise.resolve(t).then(r=>{n===this.__renderToken&&Ae(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 <${Tt(this.constructor)||this.tagName?.toLowerCase()}>:`,t);try{let n=this.renderError(t);n!==void 0&&Ae(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 Fn(e){return e.replace(/([A-Z])/g,"-$1").toLowerCase()}function ho(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[yo]=!0}}Object.setPrototypeOf(kt,ve);kt.prototype=ve.prototype;function ta(e,t={}){return e&&typeof e=="object"&&!("call"in e)&&(t=e,e=void 0),{...e?{type:e}:{},...t}}var bo=Symbol.for("webjs.notFound"),go=Symbol.for("webjs.redirect"),_o=Symbol.for("webjs.forbidden"),wo=Symbol.for("webjs.unauthorized");function na(){let e=new Error("webjs: notFound()");throw e.__webjs=bo,e}function ra(){let e=new Error("webjs: forbidden()");throw e.__webjs=_o,e}function oa(){let e=new Error("webjs: unauthorized()");throw e.__webjs=wo,e}function sa(e,t){let n=typeof t=="object"&&t!==null?t.status:t,r=new Error(`webjs: redirect(${e})`);throw r.__webjs=go,r.url=e,r.status=typeof n=="number"?n:void 0,r}function ia(e){return!!e&&e.__webjs===bo}function aa(e){return!!e&&e.__webjs===go}function ca(e){return!!e&&e.__webjs===_o}function la(e){return!!e&&e.__webjs===wo}var So=null;function ua(){if(!So)return"";try{return So()||""}catch{return""}}var al=Symbol.for("webjs.suspense");function fa(e){return{_$webjsSuspense:!0,fallback:e.fallback,children:e.children}}function da(e){return!!e&&typeof e=="object"&&e._$webjsSuspense===!0}function pa(e,t={}){let n=t.reconnect!==!1,r=0,o=!1,s=null,i=[];function c(){o||(s=new WebSocket(ha(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 ha(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}`}qe();var Bn="application/vnd.webjs+json";async function ma(e,t={}){let n=new Headers(t.headers||{});n.has("accept")||n.set("accept",Bn);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 Dn(r),n.has("content-type")||n.set("content-type",Bn));let o=await fetch(e,{...t,headers:n,body:r}),s=o.headers.get("content-type")||"",i=await o.text(),c=s.includes(Bn)?i?ue(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}qe();jt();jt();Hn();Rt();var hr=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 cc(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 lc(e,t,n){return e&&typeof e.get=="function"&&typeof e.set=="function"?cc(e,t,n):new hr(e,t)}Wn();var Xt=0,ms=new Map,Oe=new Map,uc=1e3;function fc(e){if(!(!Array.isArray(e)||!e.length)){Xt+=1;for(let t of e)t&&ms.set(t,Xt)}}function dc(){return Xt}function pc(e,t,n){if(!(!Array.isArray(t)||!t.length)&&(Oe.delete(e),Oe.set(e,{tags:t.slice(),since:typeof n=="number"?n:Xt}),Oe.size>uc)){let r=Oe.keys().next().value;r!==void 0&&Oe.delete(r)}}function hc(e){let t=Oe.get(e);if(!t)return!1;for(let n of t.tags)if((ms.get(n)||0)>t.since)return!0;return!1}function mc(e){return e?e.split(",").map(t=>t.trim()).filter(Boolean):[]}var yc="application/vnd.webjs+stream",bc=1,gc=2,_c=3,ys=new Uint8Array(0);function wc(e,t){let n=t||ys,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 Sc(){let e=ys;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 Ac=Symbol.for("webjs.context");function vc(e){return{__context__:Ac,name:e}}var Qt=class extends Event{constructor(t,n,r=!1){super("context-request",{bubbles:!0,composed:!0}),this.context=t,this.callback=n,this.subscribe=r}},mr=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()}},yr=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 Qt(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 Ec(){return typeof window<"u"}var Y={INITIAL:0,PENDING:1,COMPLETE:2,ERROR:3},br=class{constructor(t,{task:n,args:r,autoRun:o=!0}){this._host=t,this._taskFn=n,this._argsFn=r||(()=>[]),this._autoRun=o,this._status=Y.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=Y.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=Y.COMPLETE,this._error=void 0}catch(r){if(t.signal.aborted)return;this._error=r,this._status=Y.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 Y.INITIAL:return t.initial?.();case Y.PENDING:return t.pending?.();case Y.COMPLETE:return t.complete?.(this._value);case Y.ERROR:return t.error?.(this._error);default:return}}hostUpdate(){if(!this._autoRun||!Ec())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{yr as ContextConsumer,mr as ContextProvider,Qt as ContextRequestEvent,bc as FRAME_CHUNK,gc as FRAME_END,_c as FRAME_ERROR,v as MARKER,Ro as SEED_MISS,yc as STREAM_CONTENT_TYPE,Ie as Signal,fa as Suspense,br as Task,Y as TaskStatus,kt as WebComponent,$n as WebjsFrame,qn as WebjsStream,Li as activeActionSignal,tn as adoptStyles,Fi as allTags,Ms as asyncAppend,Ps as asyncReplace,Ws as batch,Os as cache,Ks as computed,pa as connectWS,hc as consumeStale,vc as createContext,Sc as createFrameDecoder,Rs as createRef,ua as cspNonce,Ss as css,uo as deserialize,Io as disableClientRouter,Gs as effect,nr as enableClientRouter,wc as encodeFrame,Es as escapeAttr,vs as escapeText,dc as fetchMark,ra as forbidden,ks as guard,ws as html,an as isAsyncAppend,cn as isAsyncReplace,en as isCSS,rt as isCache,ca as isForbidden,tt as isGuard,et as isKeyed,Di as isLazy,on as isLive,ia as isNotFound,aa as isRedirect,nt as isRef,Ze as isRepeat,Ys as isSignal,da as isSuspense,O as isTemplate,sn as isTemplateContent,la as isUnauthorized,rn as isUnsafeHTML,ot as isUntil,st as isWatch,Ns as keyed,Ts as live,Pi as lookup,Ii as lookupModuleUrl,fc as markStale,Do as navigate,na as notFound,lc as optimistic,ue as parse,mc as parseTagHeader,Mi as primeModuleUrl,ta as prop,sa as redirect,js as ref,In as register,pc as registerKeyTags,Ae as render,Vn as renderStream,Sr as repeat,Fo as revalidate,ma as richFetch,Ot as scanSeeds,lo as serialize,vt as setActiveActionSignal,zs as signal,Dn as stringify,As as stylesToString,Tt as tagOf,Aa as takeSeed,xs as templateContent,oa as unauthorized,Cs as unsafeHTML,Ls as until,Is as watch};
|
|
1
|
+
var ds=Object.defineProperty;var W=(e,t)=>()=>(e&&(t=e(e=0)),t);var Kr=(e,t)=>{for(var n in t)ds(e,n,{get:t[n],enumerable:!0})};function _o(){return typeof HTMLElement<"u"&&typeof HTMLSlotElement<"u"}function Zs(){if(bo||(ee=_o(),!ee))return;Ke=HTMLSlotElement.prototype.assignedNodes,$n=HTMLSlotElement.prototype.assignedElements,Et=Object.getOwnPropertyDescriptor(Element.prototype,"assignedSlot"),HTMLSlotElement.prototype.assignedNodes=function(n){return this.hasAttribute(N)&&!Bn(this)?Kn(this,n):Ke?Ke.call(this,n):[]},HTMLSlotElement.prototype.assignedElements=function(n){return this.hasAttribute(N)&&!Bn(this)?Kn(this,n).filter(r=>r.nodeType===1):$n?$n.call(this,n):[]},Object.defineProperty(Element.prototype,"assignedSlot",{configurable:!0,enumerable:!0,get:function(){let n=Et&&Et.get?Et.get.call(this):null;return n||yo(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||yo(this)}}),Dn=HTMLSlotElement.prototype.assign,HTMLSlotElement.prototype.assign=function(...n){if(this.hasAttribute(N)&&!Bn(this)){let r=ea(this);if(r){let o=z(r);o.manualAssign||(o.manualAssign=new Map);let i=n.filter(Boolean);for(let[s,a]of o.manualAssign){if(s===this)continue;let c=a.filter(l=>{let u=l.deref();return u!==void 0&&i.indexOf(u)===-1});c.length!==a.length&&(c.length?o.manualAssign.set(s,c):o.manualAssign.delete(s))}if(i.length?o.manualAssign.set(this,i.map(s=>new WeakRef(s))):o.manualAssign.delete(this),o.applying&&o.pendingRecordNodes)for(let s of i)o.pendingRecordNodes.add(s);else o.pendingRecordNodes=new Set(i);Ee(o),Y(r)}return}return Dn?Dn.apply(this,n):void 0},bo=!0}function Jn(e,t){let n=e.manualAssign;if(!n||!n.size)return null;for(let[r,o]of n){let i=!1,s=o.filter(a=>{let c=a.deref();return c===void 0?!1:(c===t&&(i=!0),!0)});if(s.length!==o.length&&(s.length?n.set(r,s):n.delete(r)),i){let a=e.host;return a&&(r===a||a.contains(r))?r:null}}return null}function ea(e){for(let t=e.parentElement;t;t=t.parentElement)if(t[v])return V(t,e)?t:null;return null}function Bn(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 Kn(e,t){if(e.getAttribute(I)!==D)return[];let n=Array.from(e.childNodes);return!t||!t.flatten?n:Vn(n,new Set,0)}function Vn(e,t,n){if(n>=Qs)return e.slice();let r=[];for(let o of e)if(o.nodeType===1&&o.tagName==="SLOT"){let i=o;if(t.has(i))continue;if(t.add(i),i.hasAttribute(N)){let s=Kn(i,{flatten:!1});if(s.length>0)for(let a of Vn(s,t,n+1))r.push(a);else for(let a of Vn(Array.from(i.childNodes),t,n+1))r.push(a)}else if(Ke){let s=Ke.call(i,{flatten:!0});for(let a of s)r.push(a)}else r.push(o)}else r.push(o);return r}function yo(e){let t=e.parentElement;return t&&t.tagName==="SLOT"&&t.hasAttribute(N)&&t.getAttribute(I)===D?t:null}function z(e){let t=e,n=t[v];return n||(n={host:e,authored:[],assignedByName:new Map,lastSnapshot:new WeakMap},t[v]=n),n}function Xn(e){return!!e[v]}function Ao(e){let t=z(e);for(;e.firstChild;){let n=e.firstChild;t.authored.push(n),_.add(n),e.removeChild(n)}Ee(t)}function Ee(e){let t=e.assignedByName;t.clear();for(let n of e.authored)ta(t,ae(e,n),n)}function ae(e,t){let n=Jn(e,t);if(n)return $(n.getAttribute("name"));if(e.adoptedKey){let r=e.adoptedKey.get(t);if(r!==void 0)return r}return vo(t)}function So(e){let t=z(e);t.adopted=!0;let n=new Set,r=e.querySelectorAll(`slot[${N}]`);for(let o of r){let i=o;if(!V(e,i)||i.getAttribute(I)!==D||jt(t,e,i))continue;let s=$(i.getAttribute("name"));if(!n.has(s)){n.add(s);let a=Array.from(i.childNodes);for(let c of a)t.authored.push(c),vo(c)!==s&&(t.adoptedKey||(t.adoptedKey=new WeakMap),t.adoptedKey.set(c,s));t.lastSnapshot.set(i,a.slice())}}for(let o of e.querySelectorAll("wj-slot-park"))if(V(e,o)){for(let i of Array.from(o.childNodes))_.add(i),t.authored.push(i);o.remove()}Ee(t)}function $(e){return e==null||e===""||e==="default"?null:e}function vo(e){return e.nodeType!==1?null:$(e.getAttribute("slot"))}function ta(e,t,n){let r=e.get(t);r||(r=[],e.set(t,r)),r.push(n)}function ue(e,t,n){let r=z(e),o=$(t),i=Array.isArray(n)?n.filter(Boolean):n?[n]:[],s=r.authored.findIndex(c=>ae(r,c)===o),a=r.authored.filter(c=>ae(r,c)===o);r.authored=r.authored.filter(c=>ae(r,c)!==o),(s===-1||s>r.authored.length)&&(s=r.authored.length);for(let c of i)c.nodeType===1&&!Jn(r,c)&&(o==null?c.removeAttribute("slot"):c.setAttribute("slot",o)),_.add(c);if(r.authored.splice(s,0,...i),r.applying&&r.pendingRecordNodes){for(let c of a)r.pendingRecordNodes.add(c);for(let c of i)r.pendingRecordNodes.add(c)}else r.pendingRecordNodes=new Set([...a,...i]);if(r.adoptedKey){for(let c of a)r.adoptedKey.delete(c);for(let c of i)r.adoptedKey.delete(c)}Ee(r),Y(e)}function na(){Z||!ee||(Z=Node.prototype.appendChild,Eo=Node.prototype.insertBefore,ve=Node.prototype.removeChild,zn=Node.prototype.replaceChild,Co=Element.prototype.append,No=Element.prototype.prepend,xo=Element.prototype.replaceChildren,Ct=Object.getOwnPropertyDescriptor(Element.prototype,"innerHTML"),Yn=Object.getOwnPropertyDescriptor(Node.prototype,"textContent"))}function kt(e,t){let n=e[T];e[T]=!0;try{return t()}finally{e[T]=n,n||Qn(e)}}function ko(e){if(!ee)return;let t=e,n=z(e);n.backstop||(n.backstop=new MutationObserver(r=>Tt(e,n,r)),n.backstop.observe(e,{childList:!0,subtree:!1}),n.flipSensor=new MutationObserver(r=>To(e,r)),n.flipSensor.observe(e,{attributes:!0,attributeFilter:["slot","name"],subtree:!0}))}function Tt(e,t,n){let r=e,o=r[le],i=r[Symbol.for("webjs.instance")],s=!1,a=new Set;for(let c of n){for(let l of c.addedNodes)if(a.add(l),l!==o&&!(i&&Oo(i,l))){if(t.authored.indexOf(l)!==-1){s=!0;continue}_.add(l),t.authored.push(l),s=!0}for(let l of c.removedNodes){let u=t.authored.indexOf(l);if(u===-1||e.contains(l))continue;_.has(l)&&l.parentNode==null&&!a.has(l)||(t.authored.splice(u,1),s=!0)}}s&&Y(e)}function Qn(e){let t=e,n=t[v];if(!(n&&n.backstop))return;let r=n.backstop.takeRecords();(!(Symbol.for("webjs.instance")in t)||t[Symbol.for("webjs.instance")])&&Tt(e,n,r)}function To(e,t){let n=e[v];if(!n)return;let r=!1;for(let o of t){if(o.type!=="attributes")continue;let i=o.target;o.attributeName==="name"?i.tagName==="SLOT"&&i.hasAttribute(N)&&V(e,i)&&(r=!0):o.attributeName==="slot"&&(n.adoptedKey&&n.adoptedKey.delete(i),n.authored.indexOf(i)!==-1&&(r=!0))}r&&Y(e)}function jo(e){let t=e[v];t&&(t.backstop&&(Tt(e,t,t.backstop.takeRecords()),t.backstop.disconnect(),t.backstop=void 0),t.flipSensor&&(To(e,t.flipSensor.takeRecords()),t.flipSensor.disconnect(),t.flipSensor=void 0))}function Ro(e){if(!ee)return;let t=e,n=t[v];if(!n)return;let r=t[Symbol.for("webjs.instance")],o=Symbol.for("webjs.instance")in t,i=!o&&n.adopted===!0,s=!1;for(let a of Array.from(e.childNodes))if(a!==t[le]){if(n.authored.indexOf(a)!==-1){s=!0;continue}o&&(!r||Oo(r,a))||!o&&i||(_.add(a),n.authored.push(a),s=!0)}s&&Y(e)}function Oo(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 ra(e){let t=e,n=t[le];return(!n||!n.isConnected)&&(n||(n=e.ownerDocument.createElement("wj-slot-park"),n.setAttribute("hidden",""),n.style.display="none",t[le]=n),kt(e,()=>Z.call(e,n))),n}function ce(e){return e instanceof Node||!!(e&&typeof e=="object"&&e.ownerDocument&&e.ownerDocument.defaultView&&e instanceof e.ownerDocument.defaultView.Node)}function Un(e,t,n){if(n&&!ce(t))return[e.ownerDocument.createTextNode(`${t}`)];if(!ce(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);Nt(e,r);for(let o of r)ve.call(t,o);return r}return Nt(e,[t]),[t]}function Nt(e,t){Se(e,t);for(let n of t){if(!ce(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 Se(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 Hn(e,t,n){let r=e.authored;for(let i of t){let s=r.indexOf(i);s!==-1&&r.splice(s,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[v];return n?jt(n,e,t):!1}function jt(e,t,n){for(let r=n;r&&r!==t;r=r.parentNode)if(e.authored.indexOf(r)!==-1)return!0;return!1}function qn(e,t){if(_.has(t))return!0;let n=t.parentNode;if(n==null)return!1;if(n===e||n===e[le])return!0;let r=e[v];return n.nodeType===1&&n.tagName==="SLOT"&&n.hasAttribute(N)&&(r&&r.lastSnapshot.has(n)||e.contains(n)&&V(e,n))}function Wn(e,t){let n=[];for(let i of t)ce(i)?i.nodeType===11?n.push({frag:i}):n.push({node:i}):n.push({text:`${i}`});for(let i of n)i.frag?Se(e,Array.from(i.frag.childNodes)):i.node&&Nt(e,[i.node]);let r=e.ownerDocument.createDocumentFragment();for(let i of n)if(i.text!==void 0)Z.call(r,e.ownerDocument.createTextNode(i.text));else if(i.frag){let s=Array.from(i.frag.childNodes);Nt(e,s);for(let a of s)Z.call(r,a)}else i.node&&(Se(e,[i.node]),Z.call(r,i.node));let o=Array.from(r.childNodes);Se(e,o);for(let i of o)ve.call(r,i);return o}function K(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);Ee(t),Y(e)}function Po(e){if(!ee)return;let t=e;if(t[go])return;na(),t[go]=!0;let n=z(e);t.appendChild=function(r){if(t[T])return Z.call(this,r);let o=Un(e,r,!1);for(let i of o)_.add(i);return Hn(n,o,null),K(e,n,o),r},t.insertBefore=function(r,o){if(t[T])return Eo.call(this,r,o);if(!ce(r))throw new TypeError("Failed to execute insertBefore on the host: parameter 1 is not of type Node.");if(o!=null&&!ce(o))throw new TypeError("Failed to execute insertBefore on the host: parameter 2 is not of type Node.");if(Se(e,r.nodeType===11?Array.from(r.childNodes):[r]),o!=null&&(n.authored.indexOf(o)===-1||!qn(e,o)))throw new DOMException("insertBefore: reference node is not an assigned child of this host","NotFoundError");if(r===o)return r;let i=Un(e,r,!1);for(let s of i)_.add(s);return Hn(n,i,o||null),K(e,n,i),r},t.removeChild=function(r){if(t[T])return ve.call(this,r);let o=n.authored.indexOf(r);if(o===-1)return ve.call(this,r);if(!qn(e,r))throw new DOMException("removeChild: the node is not an assigned child of this host","NotFoundError");return n.authored.splice(o,1),K(e,n,[r]),r},t.replaceChild=function(r,o){if(t[T])return zn.call(this,r,o);if(n.authored.indexOf(o)===-1)return zn.call(this,r,o);if(!ce(r))throw new TypeError("Failed to execute replaceChild on the host: parameter 1 is not of type Node.");if(Se(e,r.nodeType===11?Array.from(r.childNodes):[r]),!qn(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 s=Un(e,r,!1);for(let c of s)_.add(c);for(let c of s){if(c===o)continue;let l=n.authored.indexOf(c);l!==-1&&n.authored.splice(l,1)}let a=n.authored.indexOf(o);return n.authored.splice(a,1,...s),K(e,n,[...s,o]),o},t.append=function(...r){if(t[T])return Co.apply(this,r);let o=Wn(e,r);for(let i of o)_.add(i);Hn(n,o,null),K(e,n,o)},t.prepend=function(...r){if(t[T])return No.apply(this,r);let o=Wn(e,r);for(let i of o)_.add(i);for(let i of o){let s=n.authored.indexOf(i);s!==-1&&n.authored.splice(s,1)}n.authored.unshift(...o),K(e,n,o)},t.replaceChildren=function(...r){if(t[T])return xo.apply(this,r);let o=Wn(e,r);for(let s of o)_.add(s);let i=n.authored;n.authored=o.slice(),K(e,n,[...i,...o])},Object.defineProperty(t,"innerHTML",{configurable:!0,get(){return Ct.get.call(this)},set(r){if(t[T]){Ct.set.call(this,r);return}let o=e.ownerDocument.createElement("div");Ct.set.call(o,r===null?"":`${r}`);let i=Array.from(o.childNodes);for(let a of i)_.add(a);let s=n.authored;n.authored=i,K(e,n,[...s,...i])}}),Object.defineProperty(t,"textContent",{configurable:!0,get(){return Yn.get.call(this)},set(r){if(t[T]){Yn.set.call(this,r);return}let o=r==null||r===""?[]:[e.ownerDocument.createTextNode(`${r}`)];for(let s of o)_.add(s);let i=n.authored;n.authored=o,K(e,n,[...i,...o])}})}function Y(e){if(!ee)return;let t=e[v];if(t){if(t.applying){t.reapply=!0;return}t.applying=!0;try{do{t.reapply=!1;let n=t.pendingRecordNodes||oa;t.pendingRecordNodes=void 0,ia(e,t,n),sa(e,t),Ee(t);let r=[],o=new Set;for(let u of e.querySelectorAll(`slot[${N}]`))if(V(e,u)&&!jt(t,e,u)){if(!u.hasAttribute(I)&&!(Ve in u)){o.add($(u.getAttribute("name")));continue}r.push(u)}let i=new Map;for(let u of r){let f=$(u.getAttribute("name")),d=i.get(f);d||(d=[],i.set(f,d)),d.push(u)}let s=[];for(let[u,f]of i){let d=t.assignedByName.get(u)||[];for(let h=0;h<f.length;h++){let p=f[h],y=d.filter(b=>{let m=Jn(t,b);return m?m===p:h===0}),w=y.filter(b=>b===e||b.nodeType===1&&b.contains(e));if(w.length){for(let b of w)_.delete(b);y=y.filter(b=>w.indexOf(b)===-1)}y.length>0?ca(t,p,y)&&s.push(p):la(t,p)&&s.push(p)}}for(let u of s)fa(t,u);let a=new Set(i.keys());for(let u of o)a.add(u);let c=new Set;for(let u of t.authored)a.has(ae(t,u))||c.add(u);let l=e[le];if(l)for(let u of Array.from(l.childNodes))c.has(u)||ve.call(l,u);if(c.size){let u=ra(e);for(let f of c)f.parentNode!==u&&(_.delete(f),kt(e,()=>Z.call(u,f)))}if(t.backstop){let u=t.backstop.takeRecords();u.length&&Tt(e,t,u)}}while(t.reapply)}finally{t.applying=!1}}}function ia(e,t,n){for(let r of e.querySelectorAll(`slot[${N}][${I}="${D}"]`)){if(!V(e,r)||jt(t,e,r))continue;let o=r,i=t.lastSnapshot.get(o);if(!i)continue;let s=Array.from(o.childNodes);if(Gn(s,i))continue;let a=t.authored,c=$(o.getAttribute("name")),l=s.filter(p=>!n.has(p));for(let p of l)a.indexOf(p)===-1&&ae(t,p)!==c&&(t.adoptedKey||(t.adoptedKey=new WeakMap),t.adoptedKey.set(p,c));for(let p of a){if(l.indexOf(p)!==-1||ae(t,p)!==c)continue;let y=a.indexOf(p),w=0;for(let b=0;b<l.length;b++){let m=a.indexOf(l[b]);m!==-1&&m<y&&(w=b+1)}l.splice(w,0,p)}let u=new Set(l);for(let p of i)u.add(p);let f=-1,d=0;for(let p of a){if(u.has(p)){f===-1&&(f=d);continue}d+=1}let h=a.filter(p=>!u.has(p));(f===-1||f>h.length)&&(f=h.length),h.splice(f,0,...l),t.authored=h}}function sa(e,t){let n=e[le];t.authored=t.authored.filter(r=>{if(_.has(r))return!0;let o=r.parentNode;return o==null?!1:!!(o===e||o===n||o.nodeType===1&&o.tagName==="SLOT"&&o.hasAttribute(N)&&(t.lastSnapshot.has(o)||e.contains(o)&&V(e,o)))})}function Io(e){if(!ee)return!1;for(let t of e.querySelectorAll(`slot[${N}][${I}]`))if(V(e,t))return!0;return!1}function V(e,t){let n=t[xt];if(n)return n===e;let r=typeof t.getAttribute=="function"?t.getAttribute(Xs):null;if(r){let o=aa(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 aa(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 ca(e,t,n){for(let l of n)_.delete(l);let r=t.getAttribute(I)!==D,o=e.lastSnapshot.get(t)||[],i=r||!Gn(o,n);if(!r&&Gn(Array.from(t.childNodes),n))return e.lastSnapshot.set(t,n.slice()),i;let s=t[Ve];if(r&&s)for(;t.firstChild;)s.appendChild(t.firstChild);let a=new Set(n);for(let l of Array.from(t.childNodes))a.has(l)||t.removeChild(l);let c=t.firstChild;for(let l of n){if(l===c){c=c.nextSibling;continue}t.insertBefore(l,c)}return t.setAttribute(I,D),e.lastSnapshot.set(t,n.slice()),i}function la(e,t){let n=t.getAttribute(I)===D;if(t.setAttribute(I,Js),!n)return wo(t),!1;for(e.lastSnapshot.delete(t);t.firstChild;)t.removeChild(t.firstChild);return wo(t),!0}function wo(e){let t=e[Ve];!t||t.childNodes.length===0||e.appendChild(t)}function Mo(e,t){if(!Xn(e))return;let n=z(e),r=$(t.getAttribute("name")),o=n.assignedByName.get(r);if(o)for(let i of o)i.parentNode===t&&(_.add(i),t.removeChild(i));n.lastSnapshot.delete(t)}function ua(e){e.dispatchEvent(new Event("slotchange",{bubbles:!0,composed:!1}))}function fa(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)ua(r)}))}function Gn(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 ee,v,N,I,D,Js,Ve,xt,Xs,Qs,Ke,$n,Et,Dn,bo,T,go,le,_,Z,Eo,ve,zn,Co,No,xo,Ct,Yn,oa,Rt=W(()=>{ee=_o(),v=Symbol("webjs.slot.state"),N="data-webjs-light",I="data-projection",D="actual",Js="fallback",Ve=Symbol("webjs.slot.fallbackFrag"),xt=Symbol("webjs.slot.templateOwner"),Xs="data-wj-slot-owner",Qs=64,Ke=null,$n=null,Et=null,Dn=null,bo=!1;Zs();T=Symbol("webjs.slot.rendering"),go=Symbol("webjs.slot.intercepted"),le=Symbol("webjs.slot.park"),_=new WeakSet,Z=null,Eo=null,ve=null,zn=null,Co=null,No=null,xo=null,Ct=null,Yn=null;oa=new Set});function Qo(e,t,n){qa.has(t)?Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0}):e[t]=n}async function ar(e){return JSON.stringify(await Zo(e))}function pe(e){return ei(JSON.parse(e))}async function Zo(e){let t=Wa();return await Ka(e,t),de(e,t)}function ei(e){return ne(e,Ga())}function Wa(){return{refCount:new Map,idOf:new Map,emitted:new Set,nextId:0,blobBytes:new Map,fdEntries:new Map}}async function Ka(e,t){let n=[e];for(;n.length;){let r=n.pop();if(!Xa(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 i=new Uint8Array(await r.arrayBuffer());t.blobBytes.set(r,i);continue}if(typeof FormData<"u"&&r instanceof FormData){let i=t.fdEntries.get(r)||[...r.entries()];t.fdEntries.set(r,i);for(let[,s]of i)typeof s!="string"&&n.push(s);continue}if(Array.isArray(r))for(let i=0;i<r.length;i++)n.push(r[i]);else if(r instanceof Map)for(let[i,s]of r)n.push(i),n.push(s);else if(r instanceof Set)for(let i of r)n.push(i);else if(Qa(r))for(let i in r)Object.prototype.hasOwnProperty.call(r,i)&&n.push(r[i])}}for(let[r,o]of t.refCount)o>1&&t.idOf.set(r,t.nextId++)}function de(e,t){if(e===null)return null;if(e===void 0)return{[A]:"undef"};let n=typeof e;if(n==="string"||n==="boolean")return e;if(n==="number")return Number.isNaN(e)?{[A]:"NaN"}:e===1/0?{[A]:"Inf"}:e===-1/0?{[A]:"-Inf"}:Object.is(e,-0)?{[A]:"-0"}:e;if(n==="bigint")return{[A]:"BigInt",v:e.toString()};if(n==="symbol"){let i=Symbol.keyFor(e);if(i===void 0)throw new TypeError("Cannot serialize a local Symbol; only Symbol.for() registered symbols are supported.");return{[A]:"Sym",v:i}}if(n==="function")throw new TypeError("Cannot serialize a function.");let r=t.idOf.get(e);if(r!==void 0&&t.emitted.has(r))return{[A]:"Ref",v:r};r!==void 0&&t.emitted.add(r);let o;if(e instanceof Date)o={[A]:"Date",v:Number.isNaN(e.getTime())?null:e.toISOString()};else if(e instanceof Error)o={[A]:"Error",v:{name:e.name,message:e.message,stack:e.stack||null}};else if(typeof Blob<"u"&&e instanceof Blob){let i=t.blobBytes.get(e);typeof File<"u"&&e instanceof File?o={[A]:"File",v:Qe(i),n:e.name,t:e.type||"",m:e.lastModified}:o={[A]:"Blob",v:Qe(i),t:e.type||""}}else if(typeof FormData<"u"&&e instanceof FormData){let i=t.fdEntries.get(e)||[...e.entries()],s=[];for(let[a,c]of i)s.push([a,de(c,t)]);o={[A]:"FD",v:s}}else if(ArrayBuffer.isView(e)||e instanceof ArrayBuffer)o=Va(e);else if(e instanceof Map){let i=[];for(let[s,a]of e)i.push([de(s,t),de(a,t)]);o={[A]:"Map",v:i}}else if(e instanceof Set){let i=[];for(let s of e)i.push(de(s,t));o={[A]:"Set",v:i}}else if(Array.isArray(e))o=e.map(i=>de(i,t));else{o={};for(let i in e){if(!Object.prototype.hasOwnProperty.call(e,i))continue;let s=Za(i)?"_"+i:i;Qo(o,s,de(e[i],t))}}if(r!==void 0){if(Array.isArray(o))return{[A]:"Arr",_id:r,v:o};o._id=r}return o}function Va(e){if(e instanceof ArrayBuffer)return{[A]:"buf",v:Qe(new Uint8Array(e))};if(e instanceof DataView)return{[A]:"dv",v:Qe(new Uint8Array(e.buffer,e.byteOffset,e.byteLength))};let t=e.constructor.name,n=za[t];if(!n)throw new TypeError(`Unsupported typed array: ${t}`);let r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return{[A]:n,v:Qe(r)}}function Ga(){return{refs:new Map}}function ne(e,t){if(e===null||typeof e!="object")return e;if(Array.isArray(e)){let i=[];for(let s=0;s<e.length;s++)i.push(ne(e[s],t));return i}let n=e[A];if(typeof n=="string")return Ja(e,n,t);let r={},o=e._id;typeof o=="number"&&t.refs.set(o,r);for(let i in e){if(!Object.prototype.hasOwnProperty.call(e,i)||i==="_id")continue;let s=ec(i)?i.slice(1):i;Qo(r,s,ne(e[i],t))}return r}function Ja(e,t,n){let r=e._id,o=i=>(typeof r=="number"&&n.refs.set(r,i),i);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 i=new Error(e.v.message);return i.name=e.v.name,e.v.stack&&(i.stack=e.v.stack),typeof r=="number"&&n.refs.set(r,i),i}case"Map":{let i=new Map;typeof r=="number"&&n.refs.set(r,i);for(let[s,a]of e.v)i.set(ne(s,n),ne(a,n));return i}case"Set":{let i=new Set;typeof r=="number"&&n.refs.set(r,i);for(let s of e.v)i.add(ne(s,n));return i}case"Arr":{let i=[];typeof r=="number"&&n.refs.set(r,i);for(let s of e.v)i.push(ne(s,n));return i}case"Ref":{let i=n.refs.get(e.v);if(i===void 0)throw new TypeError(`Dangling reference: id=${e.v}`);return i}case"Blob":{if(typeof Blob>"u")throw new TypeError("Blob is not available in this environment.");let i=Xe(e.v);return o(new Blob([i],{type:e.t||""}))}case"File":{if(typeof File>"u")throw new TypeError("File is not available in this environment.");let i=Xe(e.v);return o(new File([i],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 i=new FormData;o(i);for(let[s,a]of e.v){let c=ne(a,n);i.append(s,c)}return i}default:{if(t==="buf"){let s=Xe(e.v);return o(s.buffer.slice(s.byteOffset,s.byteOffset+s.byteLength))}if(t==="dv"){let s=Xe(e.v);return o(new DataView(s.buffer.slice(s.byteOffset,s.byteOffset+s.byteLength)))}let i=Ya[t];if(i){let s=Xe(e.v),a=s.buffer.slice(s.byteOffset,s.byteOffset+s.byteLength);return o(new i(a))}throw new TypeError(`Unknown serialization tag: ${t}`)}}}function Xa(e){return e!==null&&typeof e=="object"}function Qa(e){if(e===null||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function Za(e){return/^_+\$wj$/.test(e)||/^_+id$/.test(e)}function ec(e){return/^__+\$wj$/.test(e)||/^__+id$/.test(e)}function Qe(e){if(ti)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 Xe(e){if(ti){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 A,qa,za,Ya,ti,Ze=W(()=>{A="_$wj",qa=new Set(["__proto__","constructor","prototype"]);za={Int8Array:"i8",Uint8Array:"u8",Uint8ClampedArray:"u8c",Int16Array:"i16",Uint16Array:"u16",Int32Array:"i32",Uint32Array:"u32",Float32Array:"f32",Float64Array:"f64",BigInt64Array:"bi64",BigUint64Array:"bu64"},Ya={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};ti=typeof Buffer<"u"&&typeof Buffer.from=="function"});var mi={};Kr(mi,{observeLazy:()=>Sc,observeViewportOnce:()=>Cc});function hi(e){let t=ur.get(e);return t||(t=import(e).finally(()=>ur.delete(e)),ur.set(e,t),t)}function Sc(e){for(let[t,n]of Object.entries(e))he.set(t.toLowerCase(),n);if(typeof IntersectionObserver>"u"){for(let t of he.values())hi(t);he.clear();return}tt||(tt=new IntersectionObserver(vc,{rootMargin:"200px"})),pi(),typeof MutationObserver<"u"&&new MutationObserver(()=>pi()).observe(document.body,{childList:!0,subtree:!0})}function pi(){if(!(!tt||!he.size))for(let e of he.keys())for(let t of document.querySelectorAll(e))tt.observe(t)}function vc(e){for(let t of e){if(!t.isIntersecting)continue;let n=t.target.tagName.toLowerCase(),r=he.get(n);r&&(hi(r),he.delete(n),tt?.unobserve(t.target))}}function Ec(e){for(let t of e){if(!t.isIntersecting)continue;let n=qt.get(t.target);qt.delete(t.target),et?.unobserve(t.target),n&&n()}}function Cc(e,t){return typeof IntersectionObserver>"u"?(t(),()=>{}):(et||(et=new IntersectionObserver(Ec,{rootMargin:"200px"})),qt.set(e,t),et.observe(e),()=>{qt.delete(e),et?.unobserve(e)})}var he,tt,ur,et,qt,bi=W(()=>{he=new Map,tt=null,ur=new Map;et=null,qt=new WeakMap});var fr,dr=W(()=>{fr=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(()=>(bi(),mi)).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(()=>(Wt(),yi)).then(({loadFrame:n})=>{this._webjsLoadedSrc!==t||!this.isConnected||n(this,t)})}}:null;typeof customElements<"u"&&fr&&!customElements.get("webjs-frame")&&customElements.define("webjs-frame",fr)});function xc(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 hr(e,t){let n=t||(typeof document<"u"?document:null);if(!n)return;let r=null;if(typeof e=="string"){let i=n.createElement("template");i.innerHTML=e,r=i.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 i of o)n.body.append(i);else n.body.append(r)}var Nc,pr,Kt=W(()=>{Nc=new Set(["append","prepend","before","after","replace","update"]);pr=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 s=n.getElementById(o);s&&(r=[s])}else{let s=this.getAttribute("targets");if(s)try{r=Array.from(n.querySelectorAll(s))}catch{r=[]}}let i=Nc.has(t)?this.querySelector("template"):null;try{for(let s of r){let a=i?i.content.cloneNode(!0):null;xc(t,s,a)}}finally{this.remove()}}}:null;typeof customElements<"u"&&pr&&!customElements.get("webjs-stream")&&customElements.define("webjs-stream",pr)});var gi,wi=W(()=>{gi=typeof HTMLElement<"u"?class extends HTMLElement{connectedCallback(){this.style.display||(this.style.display="contents")}}:null;typeof customElements<"u"&&gi&&!customElements.get("webjs-suspense")&&customElements.define("webjs-suspense",gi)});function Vt(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]'))Ai(n.textContent,n);for(let n of t.querySelectorAll("[data-webjs-seed]"))Ai(n.getAttribute("data-webjs-seed"),n,()=>n.removeAttribute("data-webjs-seed"))}}function Ai(e,t,n){if(e)try{let r=pe(e);if(r&&typeof r=="object")for(let o in r)nt.has(o)||nt.set(o,r[o])}catch{}n?n():t.remove?.()}function kc(e,t,n){_i||(_i=!0,Vt());let r=`${e}/${t}/${n}`;if(nt.has(r)){let o=nt.get(r);return nt.delete(r),o}return Si}var nt,Si,_i,mr=W(()=>{Ze();nt=new Map,Si=Symbol("webjs.seed.miss"),_i=!1});function br(e){if(!(!Array.isArray(e)||!e.length)){zt+=1;for(let t of e)t&&vi.set(t,zt)}}function jc(){return zt}function Rc(e,t,n){if(!(!Array.isArray(t)||!t.length)&&(Te.delete(e),Te.set(e,{tags:t.slice(),since:typeof n=="number"?n:zt}),Te.size>Tc)){let r=Te.keys().next().value;r!==void 0&&Te.delete(r)}}function Oc(e){let t=Te.get(e);if(!t)return!1;for(let n of t.tags)if((vi.get(n)||0)>t.since)return!0;return!1}function yr(e){return e?e.split(",").map(t=>t.trim()).filter(Boolean):[]}var zt,vi,Te,Tc,gr=W(()=>{zt=0,vi=new Map,Te=new Map,Tc=1e3});var yi={};Kr(yi,{_FALLBACK_MARKER_KEY:()=>Qt,_FRAME_TOP:()=>$i,_LIVE_ATTRS:()=>Cr,_activateSwappedRange:()=>Br,_activeFrameId:()=>Fi,_addNewHeadElements:()=>xr,_applyOptimisticLoading:()=>Fr,_applyStreamedResolve:()=>as,_applySwap:()=>Mr,_blurOutgoingFocus:()=>Xt,_buildHaveHeader:()=>ct,_buildSubmitFormData:()=>Ii,_bumpNavToken:()=>hl,_clearFormBusy:()=>es,_clearFrameBusy:()=>Qi,_collectBoundaries:()=>Fe,_currentPageUrl:()=>ml,_diffElementInPlace:()=>sn,_eligibleAnchorHref:()=>en,_findAnchorInPath:()=>Mi,_getSubmitAction:()=>Pi,_getSubmitMethod:()=>Li,_isNonHtmlPath:()=>wl,_isPreBootNavigation:()=>Bi,_keyOf:()=>Me,_markFormBusy:()=>Zi,_markFrameBusy:()=>Xi,_mergeHead:()=>os,_navToken:()=>pl,_onPopState:()=>jr,_onSubmit:()=>Rr,_parseHTML:()=>kr,_planBoundarySwap:()=>Ui,_prefetch:()=>$e,_prefetchAnchor:()=>zi,_prefetchCache:()=>S,_prefetchHasHoverPointer:()=>Ki,_prefetchInflightSize:()=>ul,_prefetchMode:()=>tn,_prefetchPeek:()=>ll,_prefetchSaysSaveData:()=>Pr,_prefetchSuppressed:()=>Vi,_prefetchTake:()=>Yi,_reactivateScripts:()=>un,_readStreamedShell:()=>is,_reconcileChildren:()=>mn,_regraftPermanentElements:()=>ns,_regraftPermanentInSlice:()=>hn,_resetParseProbe:()=>Pc,_resetPrefetch:()=>fl,_resetWarnOnce:()=>yl,_resolveTargetFrameId:()=>Or,_restoreOptimistic:()=>rt,_runWithTransition:()=>Gt,_setCurrentPageUrl:()=>bl,_setHardNavigate:()=>dl,_shouldFullLoadDuringParse:()=>gl,_snapshotCache:()=>j,_streamBoundariesProgressively:()=>cs,_takeResolveUnit:()=>ss,_viewTransitionsEnabled:()=>ts,collectBoundaries:()=>Fe,disableClientRouter:()=>Ti,enableClientRouter:()=>Tr,loadFrame:()=>Fc,navigate:()=>ji,planBoundarySwap:()=>Ui,revalidate:()=>Ri});function kr(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"&&Lc()?Document.parseHTMLUnsafe(e):Ic(e)}function Lc(){if(je!==null)return je;try{je=Document.parseHTMLUnsafe("<!doctype html><body><!--c--><i></i>")?.body?.firstChild?.nodeType===8}catch{je=!1}return je}function Pc(){je=null}function Ic(e){return typeof DOMParser>"u"?null:new DOMParser().parseFromString(e,"text/html")}function Mc(){wr||typeof MutationObserver>"u"||typeof customElements>"u"||(wr=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)}}),wr.observe(document.body,{childList:!0,subtree:!0}))}function Tr(){se||typeof document>"u"||(se=!0,document.addEventListener("click",Oi,!1),document.addEventListener("submit",Rr,!1),window.addEventListener("popstate",jr),document.addEventListener("pointerover",Ie,!0),document.addEventListener("focusin",Ie,!0),document.addEventListener("touchstart",Ie,{capture:!0,passive:!0}),document.addEventListener("pointerout",Gi,!0),document.addEventListener("webjs:navigate",Er),Mc(),Er(),typeof history<"u"&&"scrollRestoration"in history&&(Yt=history.scrollRestoration,history.scrollRestoration="manual"),typeof location<"u"&&(q=location.href),$c())}function Ti(){se&&(se=!1,document.removeEventListener("click",Oi,!1),document.removeEventListener("submit",Rr,!1),window.removeEventListener("popstate",jr),document.removeEventListener("pointerover",Ie,!0),document.removeEventListener("focusin",Ie,!0),document.removeEventListener("touchstart",Ie,{capture:!0}),document.removeEventListener("pointerout",Gi,!0),document.removeEventListener("webjs:navigate",Er),pn(),Ir(),oe&&(oe.disconnect(),oe=null),typeof history<"u"&&Yt!==null&&(history.scrollRestoration=Yt,Yt=null),q=null)}async function ji(e,t){let n=new URL(e,location.href);if(n.origin!==location.origin){be(e);return}await Lr(n.href,t?.replace??!1,null)}async function Fc(e,t){if(typeof location>"u")return{ok:!1,status:null,aborted:!1};let n=e&&e.id;if(!n)return{ok:!1,status:null,aborted:!1};let r=new URL(t,location.href);if(r.origin!==location.origin)return{ok:!1,status:null,aborted:!1};M&&M.abort(),M=new AbortController;let o=M.signal,i=++x;return nn(r.href,n,!1,null,"GET",null,o,i)}function Ri(e){if(!e){j.clear(),S.clear();return}let t=new URL(e,location.href),n=t.pathname+t.search;j.delete(n),S.delete(n)}function Oi(e){if(!se||e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;let t=Mi(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||fn.test(r.pathname))return;e.preventDefault();let o=Or(t);Lr(n,!1,o)}function jr(e){Lr(location.href,!0,null)}function Rr(e){if(!se||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=Li(t,n);if(o==="dialog")return;let i=Pi(t,n),s;try{s=new URL(i,location.href)}catch{return}if(s.origin!==location.origin||fn.test(s.pathname))return;let a=Ii(t,n);e.preventDefault();let c=Or(n||t);Hc(s.href,o,a,c,t)}function Li(e,t){return(t&&t.getAttribute("formmethod")||e.getAttribute("method")||"get").toLowerCase()}function Pi(e,t){return t&&t.hasAttribute("formaction")?t.getAttribute("formaction")||"":e.getAttribute("action")||e.action||location.href}function Ii(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 Mi(e){for(let t of e.composedPath())if(t instanceof HTMLAnchorElement)return t;return null}function Fi(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 Or(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===$i)return null;let r=typeof document<"u"?document.getElementById(n):null;return r&&r.tagName&&r.tagName.toLowerCase()==="webjs-frame"?n:(dn(`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 Fi(e)}function dn(e,t){Ar.has(e)||(Ar.add(e),typeof console<"u"&&console.warn&&console.warn(t))}function Di(e,t){return!e&&!t&&typeof document<"u"&&document.readyState==="loading"}function Bi(e,t,n,r){if(e!=="navigate"||!t||r&&r===n)return!1;try{return new URL(t).origin===new URL(n).origin}catch{return!1}}function $c(){if(typeof location>"u"||Ci)return;Ci=!0;let e=null;try{e=sessionStorage.getItem(Qt),sessionStorage.removeItem(Qt)}catch{}let t="";try{let n=performance.getEntriesByType("navigation")[0];t=n?n.type:""}catch{}Bi(t,document.referrer,location.href,e)&&re("pre-boot-navigation",location.href,!1)}function re(e,t,n=!0){if(n)try{sessionStorage.setItem(Qt,t)}catch{}if(typeof document<"u"&&typeof CustomEvent<"u")try{document.dispatchEvent(new CustomEvent("webjs:navigation-fallback",{detail:{cause:e,href:t,willReload:n}}))}catch{}typeof process<"u"&&process.env||dn(`fallback:${e}`,n?`[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.`:`[webjs] client router degraded a soft navigation (${e}) for ${t}, without a full page load.`)}function Dc(e){typeof process<"u"&&process.env||dn(`stream-drop:${e}`,`[webjs] dropped a streamed Suspense resolve for "${e}": no #${e} boundary in the DOM. Benign if this navigation was superseded or degraded. A stuck skeleton here means the shell swap did not place the boundary.`)}function Ni(){if(typeof process<"u"&&process.env||Sr||typeof document>"u"||typeof getComputedStyle!="function")return;let e=document.documentElement;if(!e)return;Sr=!0;let t;try{t=getComputedStyle(e).scrollBehavior}catch{return}t==="smooth"&&dn("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 Zt(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 Fe(e){let t=new Map,n=[],r=!1;function o(i){if(!r){if(i.nodeType===8){let s=i.data.trim();if(s.startsWith("wj:children:")){let a=s.slice(12),c=a.lastIndexOf(":");if(c<=0||c===a.length-1){r=!0;return}let l=a.slice(0,c),u=a.slice(c+1);if(t.has(l)||n.some(f=>f.segment===l)){r=!0;return}n.push({segment:l,routeKey:u,start:i});return}if(s.startsWith("/wj:children")){let a=s.slice(12).replace(/^:/,""),c=n.pop();if(!c||c.segment!==a){r=!0;return}if(c.start.parentNode!==i.parentNode){r=!0;return}{let l=c.start.parentNode.tagName;if(l==="TABLE"||l==="TBODY"||l==="THEAD"||l==="TFOOT"||l==="TR"){r=!0;return}}t.set(c.segment,{routeKey:c.routeKey,start:c.start,end:i});return}return}if(i.hasChildNodes&&i.hasChildNodes())for(let s=i.firstChild;s&&!r;s=s.nextSibling)o(s)}}return o(e),r||n.length>0?null:t}function Ui(e,t){let n=[...e.keys()].filter(s=>t.has(s)).sort((s,a)=>s.length-a.length);if(n.length===0)return null;for(let s of n)if(e.get(s).routeKey!==t.get(s).routeKey){let a=null;for(let c of n){if(c===s)break;s.startsWith(c==="/"?c:c+"/")&&(a=c)}return a?{mode:"replace",segment:a,live:e.get(a),incoming:t.get(a)}:null}let r=n[n.length-1],o=s=>{let a=null;for(let c of s.keys())(a===null||c.length>a.length)&&(a=c);return a};return{mode:o(e)===r&&o(t)===r?"morph":"replace",segment:r,live:e.get(r),incoming:t.get(r)}}function Hi(e){let t=ie(e);document.dispatchEvent(new CustomEvent("webjs:before-cache",{detail:{url:e}})),j.has(t)&&j.delete(t);let n={html:document.documentElement.outerHTML,scrollX:typeof window<"u"&&window.scrollX||0,scrollY:typeof window<"u"&&window.scrollY||0};for(j.set(t,n);j.size>Bc;){let r=j.keys().next().value;j.delete(r)}}function Uc(e){let t=ie(e),n=j.get(t);return n==null?null:(j.delete(t),j.set(t,n),typeof n=="string"?{html:n,scrollX:0,scrollY:0}:n)}function ie(e){let t=new URL(e,location.href);return t.pathname+t.search}async function Lr(e,t,n){if(Di(t,n)&&typeof location<"u"){re("readyState-loading",e),be(e);return}M&&M.abort(),M=new AbortController;let r=M.signal,o=++x;q&&Hi(q);let i=setTimeout(()=>{Zt(!0),i=null},150),s=null;t||(s=Fr());try{if(t){let a=Uc(e);if(a){let c=kr(a.html);if(c){Mr(c,n,!0,null),typeof window<"u"&&window.scrollTo({left:a.scrollX,top:a.scrollY,behavior:"instant"}),nn(e,n,!1,s,"GET",null,r,o,!0).catch(()=>{});return}}typeof window<"u"&&window.scrollTo({left:0,top:0,behavior:"instant"})}await nn(e,n,!t,s,"GET",null,r,o)}finally{i&&clearTimeout(i),o===x&&(Zt(!1),typeof location<"u"&&(q=location.href))}}async function Hc(e,t,n,r,o){M&&M.abort(),M=new AbortController;let i=M.signal,s=++x,a=t==="get"||t==="head",c=new URL(e,location.href);if(a){c.search="";for(let[h,p]of n)c.searchParams.append(h,typeof p=="string"?p:p.name)}q&&Hi(q);let l=setTimeout(()=>{Zt(!0),l=null},150),u=Fr(),f=o?Zi(o,s,c.href):null,d=!1;try{let h=await nn(c.href,r,!0,u,a?"GET":t.toUpperCase(),a?null:n,i,s);d=!!(h&&h.ok),!a&&s===x&&(j.clear(),S.clear())}finally{f&&es(f,s,c.href,d),l&&clearTimeout(l),s===x&&(Zt(!1),typeof location<"u"&&(q=location.href))}}function ct(){let e=Fe(document.body);return e?[...e.entries()].map(([t,n])=>`${t}:${n.routeKey}`).join(","):""}function Pr(){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 Ki(){try{if(typeof matchMedia=="function")return matchMedia("(hover: hover) and (pointer: fine)").matches}catch{}return!0}function zc(e){let t=e.getAttribute("rel");return t?t.toLowerCase().split(/\s+/).filter(Boolean):[]}function en(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||fn.test(n.pathname)?null:t}function Vi(e){if(e.hasAttribute("data-no-prefetch"))return!0;let t=zc(e);return t.includes("external")||t.includes("no-prefetch")}function tn(e){if(Vi(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 Ki()?"intent":"viewport"}}function $e(e){if(!se||typeof fetch!="function"||Pr())return;let t=ie(e);if(typeof location<"u"&&t===ie(location.href)||me.has(t)||ot.has(t))return;let n=S.get(t);if(n&&vr()-n.at<qi)return;if(me.size>=Wi){for(ot.add(t),Le.push(e);Le.length>Wc;){let i=Le.shift();ot.delete(ie(i))}return}let r=ct();if(!r&&typeof document<"u"&&document.readyState==="loading")return;me.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",cache:"no-cache"}).then(async i=>{let s=i.headers.get("content-type")||"";if(!/^text\/html\b/i.test(s)||i.status>=400)return;let a=i.headers.get("x-webjs-build"),c=i.headers.get("x-webjs-src"),l=typeof document<"u"?document.querySelector('script[type="importmap"]'):null,u=l?l.getAttribute("data-webjs-build"):null,f=l?l.getAttribute("data-webjs-src"):null;(a&&u&&a!==u||c&&f&&c!==f)&&(j.clear(),S.clear());let d=i.redirected&&i.url?i.url:e,h=await i.text();Gc(t,{html:h,build:a,src:c,finalUrl:d,at:vr()})}).catch(()=>{}).finally(()=>{me.delete(t),Yc()})}function Yc(){for(;Le.length&&me.size<Wi;){let e=Le.shift();ot.delete(ie(e)),$e(e)}}function Gc(e,t){for(S.has(e)&&S.delete(e),S.set(e,t);S.size>qc;){let n=S.keys().next().value;S.delete(n)}typeof document<"u"&&document.dispatchEvent(new CustomEvent("webjs:prefetch",{detail:{url:t.finalUrl,key:e,from:"prefetch"}}))}function zi(e){let t=/<!--wj:children:([^>]*?)-->/.exec(e||"");return t?t[1]:null}function Yi(e,t){let n=ie(e),r=S.get(n);if(!r)return null;if(vr()-r.at>=qi)return S.delete(n),null;let o=zi(r.html);return o&&!new Set(String(t??(ct()||"")).split(",").filter(Boolean)).has(o)?(S.delete(n),null):(S.delete(n),r)}function vr(){try{if(typeof performance<"u"&&typeof performance.now=="function")return performance.now()}catch{}return 0}function Ie(e){if(!se)return;let t=Ji(e.target);if(!t)return;let n=tn(t);if(n==="none"||n==="render")return;let r=en(t);if(r){if(e.type==="touchstart"){$e(r);return}n==="intent"&&(it===t&&Pe||(pn(),it=t,Pe=setTimeout(()=>{Pe=null,it=null,$e(r)},Kc)))}}function Gi(e){let t=Ji(e.target);t&&t===it&&pn()}function pn(){Pe&&(clearTimeout(Pe),Pe=null),it=null}function Ir(){for(let e of st)clearTimeout(e);st.clear(),Re=new WeakMap}function Ji(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 Er(){if(typeof document>"u"||Pr())return;let e=typeof IntersectionObserver<"u";e&&(oe?(oe.disconnect(),Ir()):oe=new IntersectionObserver(t=>{for(let n of t){let r=n.target;if(n.isIntersecting){if(Re.has(r))continue;let o=setTimeout(()=>{st.delete(o),Re.delete(r),oe.unobserve(r);let i=en(r);i&&tn(r)==="viewport"&&$e(i)},Vc);Re.set(r,o),st.add(o)}else{let o=Re.get(r);o&&(clearTimeout(o),st.delete(o),Re.delete(r))}}},{threshold:.5}));for(let t of document.querySelectorAll("a[href]")){let n=tn(t);if(n==="render"){let r=en(t);r&&$e(r)}else n==="viewport"&&e&&oe.observe(t)}}function Jc(e){if(typeof document>"u"||!document.body)return!1;let t=Fe(document.body);if(!t)return!1;let n,r=-1;for(let[c,l]of t)c.length>r&&(r=c.length,n=l);if(!n)return!1;let o=n.start.parentNode;if(!o||n.start.parentNode!==n.end.parentNode)return!1;let i=document.createElement("div");i.setAttribute("role","alert"),i.setAttribute("data-webjs-nav-error","");let s=e?`This page could not be loaded. (status ${e})`:"This page could not be loaded.";i.textContent=s;let a=document.createRange();return a.setStartAfter(n.start),a.setEndBefore(n.end),a.deleteContents(),o.insertBefore(i,n.end),!0}function _r(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||Jc(t)||typeof location<"u"&&(re("navigation-error-unrecoverable",e),be(e))}async function nn(e,t,n,r,o,i,s,a,c){o=o||"GET";let l=typeof a=="number"?a:x,u,f=null,d=null,h=null,p=null,y=!1,w=e,b=t?Xi(t,l):null;try{try{let g=o==="GET"&&!i&&!t?Yi(e,r?r.haveKeys:void 0):null;if(g)u=g.html,d=g.build,h=g.src,w=g.finalUrl,p=200,y=!0;else{let O={"x-webjs-router":"1"},ge=ct();ge&&(O["x-webjs-have"]=ge),t&&(O["x-webjs-frame"]=t),i!=null&&o!=="GET"&&o!=="HEAD"&&(O.accept=Ei+", text/html");let we={method:o,headers:O,credentials:"same-origin",cache:"no-cache"};s&&(we.signal=s),i!=null&&o!=="GET"&&o!=="HEAD"&&(we.body=i);let E=await fetch(e,we);p=E.status,y=E.ok;let De=yr(E.headers.get("x-webjs-invalidate"));De.length&&br(De);let k=E.headers.get("content-type")||"",us=/^text\/html\b/i.test(k);if(k.toLowerCase().indexOf(Ei)===0){let fs=await E.text();return l===x&&(rt(r),hr(fs)),{ok:y,status:p,aborted:!1}}if(E.redirected&&E.url&&(w=E.url),E.status===204||E.status===205)return l===x&&n&&history.pushState(null,"",w),{ok:y,status:p,aborted:!1};if(!us)return l===x&&(rt(r),_r(e,E.status,null)),{ok:!1,status:p,aborted:!1};d=E.headers.get("x-webjs-build"),h=E.headers.get("x-webjs-src");let yn=await is(E);u=yn.shell,yn.streaming&&(f=yn)}}catch(g){return g&&g.name==="AbortError"?{ok:!1,status:null,aborted:!0}:l!==x?{ok:!1,status:null,aborted:!0}:(rt(r),_r(e,null,g instanceof Error?g:new Error(String(g))),{ok:!1,status:null,aborted:!1})}if(l!==x){if(f&&f.reader)try{f.reader.cancel()}catch{}return{ok:!1,status:p,aborted:!0}}let m=kr(u);if(!m)return rt(r),_r(e,null,new Error("navigation response did not parse as HTML")),{ok:!1,status:p,aborted:!1};if(Mr(m,t,!!c,w,d,h)==="discard"){if(f&&f.reader)try{f.reader.cancel()}catch{}return{ok:y,status:p,aborted:!1}}if(n&&history.pushState(null,"",w),n){let g=new URL(w);if(g.hash){let O=document.getElementById(g.hash.slice(1));O?O.scrollIntoView():(Ni(),window.scrollTo({left:0,top:0,behavior:"instant"}))}else Ni(),window.scrollTo({left:0,top:0,behavior:"instant"})}return f&&(f.reader||f.rest)&&Jt.then(()=>cs(f.reader,f.dec,f.rest,()=>l===x)),document.dispatchEvent(new CustomEvent("webjs:navigate",{detail:{url:w,frameId:t,from:"navigate"}})),{ok:y,status:p,aborted:!1}}finally{b&&Qi(b,l)}}function Xi(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=rn.has(n);return rn.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 Qi(e,t){if(rn.get(e)!==t)return;rn.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 Zi(e,t,n){let r=on.has(e);return on.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 es(e,t,n,r){if(on.get(e)!==t)return;on.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 xi(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+=G(r);return n}function ts(){if(typeof document>"u")return!1;let e=document.querySelector('meta[name="view-transition"]');return e?(e.getAttribute("content")||"").trim().toLowerCase()==="same-origin":!1}function Gt(e,t){let n=typeof document<"u"?document.startViewTransition:void 0;if(ts()&&typeof n=="function"){let r=n.call(document,e);return r&&r.finished&&typeof r.finished.then=="function"?r.finished.then(()=>{t&&t()}).catch(()=>{}):t&&t(),r&&r.updateCallbackDone&&typeof r.updateCallbackDone.then=="function"?r.updateCallbackDone.catch(()=>{}):Promise.resolve()}return e(),t&&t(),Promise.resolve()}function ns(e,t){if(!e||!t||typeof e.querySelectorAll!="function")return;let n=e.querySelectorAll("[data-webjs-permanent][id]");for(let r of n){let o=r.id;if(!o)continue;let i=null;try{i=t.querySelector(`#${CSS.escape(o)}`)}catch{i=null}if(!i||!r.hasAttribute||!r.hasAttribute("data-webjs-permanent"))continue;let s=i.parentNode;s&&i!==r&&(s.replaceChild(r,i),at.add(r))}}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 i of o.querySelectorAll("[data-webjs-permanent][id]"))n.push(i)}if(n.length)for(let r of n){let o=r.id;if(!o)continue;let i=Xc(t,o);if(!i||i===r)continue;let s=i.parentNode;if(s)s.replaceChild(r,i),at.add(r);else{let a=t.indexOf(i);a!==-1&&(t[a]=r,at.add(r))}}}function Xc(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 Qc(e){if(!(!e||!e.start))for(let t=e.start.nextSibling;t&&t!==e.end;t=t.nextSibling)t.nodeType===1&&Oe(t)}function Mr(e,t,n,r,o,i){try{Vt(e)}catch{}try{for(let f of e.querySelectorAll("[data-wj-host]"))f.setAttribute("data-wj-serialized","")}catch{}try{typeof sessionStorage<"u"&&(!r||t||n)&&sessionStorage.removeItem("webjs:importmap-reload")}catch{}if(r&&!t&&!n){let f=document.querySelector('script[type="importmap"]'),d=f?f.getAttribute("data-webjs-build"):null,h=!1;if(o&&d&&(h=o!==d),!h&&e.head&&e.head.children.length>0){let p=xi(document),y=xi(e);p!==y&&(h=!0)}if(h&&typeof location<"u"){j.clear(),S.clear();try{let p="webjs:importmap-reload";if(sessionStorage&&sessionStorage.getItem(p))sessionStorage.removeItem(p),re("deploy-mismatch-reload-suppressed",r,!1);else{sessionStorage&&sessionStorage.setItem(p,"1"),re("deploy-mismatch",r),be(r);return}}catch{re("deploy-mismatch",r),be(r);return}}else if(!h){let p=f?f.getAttribute("data-webjs-src"):null;i&&p&&i!==p&&(j.clear(),S.clear(),f&&f.setAttribute("data-webjs-src",i));try{typeof sessionStorage<"u"&&sessionStorage.removeItem("webjs:importmap-reload")}catch{}}}if(t){let f=document.querySelector(`webjs-frame#${CSS.escape(t)}`),d=e.querySelector(`webjs-frame#${CSS.escape(t)}`);if(f&&d){xr(e.head),Jt=Gt(()=>{sl(f,d),un(f),Oe(f),ki(e.body),Xt()},()=>Oe(f));return}let h=new CustomEvent("webjs:frame-missing",{bubbles:!0,cancelable:!0,detail:{frameId:t,url:r||(typeof location<"u"?location.href:null),document:e}});(f||document).dispatchEvent(h),h.defaultPrevented||console.warn(`[webjs] frame "${t}" was not in the navigation response, leaving it unchanged. Handle "webjs:frame-missing" (preventDefault) to override.`);return}let s=Fe(document.body),a=Fe(e.body),c=s&&a?Ui(s,a):null;if(c){let{mode:f,live:d,incoming:h}=c;xr(e.head),Jt=Gt(()=>{f==="replace"?Zc(d,h):el(d,h,e),ol(d.start,h.start),ki(e.body),Xt()},()=>Qc(d));return}if(r&&!n&&typeof location<"u"){re(s?a?"no-shared-boundary":"incoming-boundaries-malformed":"live-boundaries-malformed",r),be(r);return}if(r&&n)return re("revalidation-discarded",r,!1),"discard";os(e.head),ns(document.body,e.body);let l=[...e.body.childNodes];Jt=Gt(()=>{document.body.replaceChildren(...l),un(document.body),Oe(document.body),Xt()},()=>Oe(document.body))}function Xt(){let e=document.activeElement;!e||e===document.body||e===document.documentElement||typeof e.blur=="function"&&e.blur()}function Zc(e,t){let n=e.start.parentNode;if(!n)return;let r=[];for(let i=e.start.nextSibling;i&&i!==e.end;i=i.nextSibling)r.push(i);let o=[];for(let i=t.start.nextSibling;i&&i!==t.end;i=i.nextSibling)o.push(document.importNode(i,!0));hn(r,o);for(let i of r)i.parentNode===n&&n.removeChild(i);for(let i of o)n.insertBefore(i,e.end);Br(e)}function el(e,t,n){if(!e||!t)return;let r=e.start.parentNode;if(!r)return;let o=[];for(let s=e.start.nextSibling;s&&s!==e.end;s=s.nextSibling)o.push(s);let i=[];for(let s=t.start.nextSibling;s&&s!==t.end;s=s.nextSibling)i.push(document.importNode(s,!0));hn(o,i),tl(r,e.start,e.end,o,i),Br(e)}function tl(e,t,n,r,o){let i=new Map;for(let c of r){if(c.nodeType!==1)continue;let l=Me(c);l&&i.set(l,c)}let s=n,a=[];for(let c of o){if(c.nodeType===1){let l=Me(c);if(l&&i.has(l)){let u=i.get(l);sn(u,c),a.push(u),i.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,s)}function sn(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),!Cr.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])Cr.has(r.name)||n.has(r.name)||e.removeAttribute(r.name);if(nl(e)){il(e,t);return}mn(e,t)}function nl(e){let t=e;return t[Symbol.for("webjs.instance")]!=null||t[v]!=null}function rl(e,t){for(let n=e.parentElement;n&&n!==t;n=n.parentElement)if(n.tagName.includes("-"))return!1;return!0}function an(e){let t=new Map,n=`slot[${N}][${I}="${D}"]`;for(let r of e.querySelectorAll(n)){let o=r;if(!rl(o,e)||Lo(e,o))continue;let i=!1;for(let a=o.parentElement;a&&a!==e;a=a.parentElement)if(a.tagName==="SLOT"&&a.hasAttribute(N)&&a.getAttribute(I)===D){i=!0;break}if(i)continue;let s=$(o.getAttribute("name"));t.has(s)||t.set(s,o)}return t}function ol(e,t){let n=e.parentNode;if(!n||n.nodeType!==1)return;let r=n;if(r.tagName!=="SLOT"||!r.hasAttribute(N))return;let o=null;for(let f=r.parentElement;f;f=f.parentElement){if(f[v]){o=f;break}if(f.tagName.includes("-"))return}if(!o)return;let i=$(r.getAttribute("name"));ue(o,i,[...r.childNodes]);let s=t.parentNode;if(!s||s.nodeType!==1)return;let a=s;if(a.tagName!=="SLOT")return;let c=null;for(let f=a.parentElement;f;f=f.parentElement)if(f.tagName.includes("-")){c=f;break}if(!c||c.tagName!==o.tagName)return;let l=an(o),u=an(c);for(let f of new Set([...l.keys(),...u.keys()])){if(f===i)continue;let d=u.get(f);d?ue(o,f,[...d.childNodes].map(h=>document.importNode(h,!0))):l.get(f)&&ue(o,f,null)}}function il(e,t){if(!e[v])return;let n=an(e),r=an(t);if(n.size===0&&r.size===0)return;let o=new Set([...n.keys(),...r.keys()]);for(let i of o){let s=n.get(i),a=r.get(i);s&&a?(mn(s,a),ue(e,i,[...s.childNodes])):a?ue(e,i,[...a.childNodes].map(c=>document.importNode(c,!0))):ue(e,i,null)}}function mn(e,t){let n=[...e.childNodes],r=[...t.childNodes].map(a=>document.importNode(a,!0));hn(n,r);let o=new Map;for(let a of n){if(a.nodeType!==1)continue;let c=Me(a);c&&o.set(c,a)}let i=[];for(let a=0;a<r.length;a++){let c=r[a];if(c.nodeType===1){let l=Me(c);if(l&&o.has(l)){let f=o.get(l);sn(f,c),i.push(f),o.delete(l);continue}let u=n[a];if(u&&u.nodeType===1&&!Me(u)&&u.tagName===c.tagName){sn(u,c),i.push(u);continue}}else if(c.nodeType===3){let l=n[a];if(l&&l.nodeType===3){l.nodeValue!==c.nodeValue&&(l.nodeValue=c.nodeValue),i.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),i.push(l);continue}}i.push(c)}let s=new Set(i);for(let a of n)!s.has(a)&&a.parentNode===e&&e.removeChild(a);for(let a=0;a<i.length;a++){let c=i[a];(c.parentNode!==e||e.childNodes[a]!==c)&&e.insertBefore(c,e.childNodes[a]||null)}}function Me(e){let t=e.getAttribute("data-key");return t?`${e.tagName}:k:${t}`:e.id?`${e.tagName}:i:${e.id}`:null}function Fr(){let e=Fe(document.body);if(!e||e.size===0)return null;let t=[...e.keys()].sort((c,l)=>l.length-c.length),n=null,r=null;for(let c of t){let l=document.getElementById(`wj-loading:${c}`);if(l instanceof HTMLTemplateElement){n=c,r=l;break}}if(n===null||r===null)return null;let o=e.get(n),i=ct(),s=[];for(let c=o.start.nextSibling;c&&c!==o.end;c=c.nextSibling)s.push(c);let a=document.createRange();return a.setStartAfter(o.start),a.setEndBefore(o.end),a.deleteContents(),o.start.parentNode.insertBefore(r.content.cloneNode(!0),o.end),{slot:o,oldChildren:s,token:x,haveKeys:i}}function rt(e){if(!e||e.token!==x)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 sl(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 cn(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 $r(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 G(e){if(!e.hasAttribute("nonce"))return e.outerHTML;let t=e.cloneNode(!0);return t.removeAttribute("nonce"),t.outerHTML}function ln(e){let t=e.getAttribute("name");if(t)return"name="+t;let n=e.getAttribute("property");if(n)return"property="+n;let r=e.getAttribute("http-equiv");return r?"http-equiv="+r:e.hasAttribute("charset")?"charset":null}function al(e){if(!e.querySelector("meta"))return;let t=o=>{let i=new Map;for(let s of o.querySelectorAll("meta")){let a=ln(s);if(!a||a===Nr)continue;let c=i.get(a);c?c.push(s):i.set(a,[s])}return i},n=t(e),r=t(document.head);for(let[o,i]of n){let s=r.get(o)||[],a=i.map(G).join(`
|
|
2
|
+
`),c=s.map(G).join(`
|
|
3
|
+
`);if(a!==c){if(i.length===1&&s.length===1){let l=s[0];for(let u of[...l.attributes])l.removeAttribute(u.name);for(let u of i[0].attributes)l.setAttribute(u.name,u.value);continue}for(let l of s)l.remove();for(let l of i)document.head.appendChild($r(l))}}for(let[o,i]of r)if(!n.has(o))for(let s of i)s.remove()}function xr(e){let t=e.querySelector("title");t&&(document.title=t.textContent||"");let n=new Set;for(let r of document.head.children)n.add(G(r));for(let r of e.children)r.tagName==="SCRIPT"&&r.getAttribute("type")==="importmap"||r.tagName!=="BASE"&&r.tagName!=="TITLE"&&(r.tagName==="META"&&ln(r)||n.has(G(r))||(r.tagName==="SCRIPT"?document.head.appendChild(cn(r)):document.head.appendChild($r(r))));al(e)}function cl(e){return e.tagName==="STYLE"?!0:e.tagName==="LINK"&&(e.getAttribute("rel")||"").toLowerCase().split(/\s+/).includes("stylesheet")}function os(e){let t=document.head,n=e.querySelector("title");n&&(document.title=n.textContent||"");let r=new Set;for(let i of t.children)i.tagName==="SCRIPT"&&i.getAttribute("type")==="importmap"||i.tagName!=="BASE"&&r.add(G(i));let o=new Set;for(let i of e.children)i.tagName==="SCRIPT"&&i.getAttribute("type")==="importmap"||i.tagName!=="BASE"&&o.add(G(i));for(let i of[...t.children])i.tagName==="SCRIPT"&&i.getAttribute("type")==="importmap"||i.tagName!=="BASE"&&i.tagName!=="TITLE"&&(cl(i)||i.tagName==="META"&&ln(i)===Nr||o.has(G(i))||i.remove());for(let i of e.children)i.tagName==="SCRIPT"&&i.getAttribute("type")==="importmap"||i.tagName!=="BASE"&&i.tagName!=="TITLE"&&(i.tagName==="META"&&ln(i)===Nr||r.has(G(i))||(i.tagName==="SCRIPT"?t.appendChild(cn(i)):t.appendChild($r(i))))}function Oe(e){typeof customElements>"u"||Dr(e)}function Dr(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&&Dr(n.shadowRoot))}function ki(e){for(let t of e.querySelectorAll("template[data-webjs-resolve]")){let n=t.cloneNode(!0);document.body.appendChild(n);let r=n.getAttribute("data-webjs-resolve"),o=window.__webjsResolve;r&&typeof o=="function"&&o(r)}}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",i="<!--wj-stream-shell-->",s=/<\/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(i);if(l!==-1)return{shell:r.slice(0,l),streaming:!0,reader:c?null:t,dec:n,rest:r.slice(l+i.length)};let u=r.indexOf(o);if(u!==-1)return{shell:r.slice(0,u),streaming:!0,reader:c?null:t,dec:n,rest:r.slice(u)};if(c)return{shell:r,streaming:!1};let f=s.exec(r);if(f){let d=f.index+f[0].length;return{shell:r.slice(0,d),streaming:!0,reader:t,dec:n,rest:r.slice(d)}}}}function ss(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 i=1,s;for(;s=o.exec(e);)if(s[1]==="/"){if(i--,i===0)return{id:n,content:e.slice(r,s.index),rest:e.slice(s.index+s[0].length)}}else i++;return null}function as(e,t){let n=document.getElementById(e);if(!n){Dc(e);return}let r=document.createElement("template");r.innerHTML=t;let o=[...r.content.childNodes];n.replaceWith(r.content);for(let i of o)i.nodeType===1&&Dr(i)}async function cs(e,t,n,r){let o=n,i=()=>{let s;for(;s=ss(o);){if(!r())return!1;as(s.id,s.content),o=s.rest}return!0};if(!e){i();return}try{for(;;){if(!i()){try{await e.cancel()}catch{}return}let{value:s,done:a}=await e.read();if(s&&(o+=t.decode(s,{stream:!0})),a){o+=t.decode(),i();return}}}catch{}}function un(e){if(e.tagName==="SCRIPT"){let n=cn(e);return e.replaceWith(n),n}let t=[];at.has(e)&&t.push(e);for(let n of e.querySelectorAll("[data-webjs-permanent]"))at.has(n)&&t.push(n);for(let n of e.querySelectorAll("script"))t.length&&t.some(r=>r!==n&&r.contains(n))||n.replaceWith(cn(n));return e}function Br(e){let t=[];for(let n=e.start.nextSibling;n&&n!==e.end;n=n.nextSibling)n.nodeType===1&&t.push(n);for(let n of t){let r=un(n);r.isConnected!==!1&&Oe(r)}}function ll(e){return S.get(ie(e))||null}function ul(){return me.size}function fl(){S.clear(),me.clear(),Le.length=0,ot.clear(),pn(),Ir()}function dl(e){be=e||(t=>{location.href=t})}function pl(){return x}function hl(){return++x}function ml(){return q}function bl(e){q=e}function yl(){Ar.clear(),Sr=!1}function gl(e,t){return Di(e,t)}function wl(e){return fn.test(e)}var Ei,je,se,M,x,wr,q,Yt,fn,be,$i,Ar,Qt,Ci,Sr,Bc,j,qc,qi,Wi,Wc,Kc,Vc,S,me,Le,ot,Pe,it,oe,Re,st,rn,on,at,Jt,Cr,Nr,Wt=W(()=>{dr();Kt();Kt();wi();mr();gr();Rt();Ei="text/vnd.webjs-stream.html";je=null;se=!1,M=null,x=0,wr=null;q=null,Yt=null;fn=/\.(?: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,be=e=>{location.href=e};$i="_top";Ar=new Set;Qt="webjs:nav-fallback",Ci=!1;Sr=!1;Bc=16,j=new Map;qc=8,qi=3e4,Wi=3,Wc=24,Kc=100,Vc=250,S=new Map,me=new Set,Le=[],ot=new Set,Pe=null,it=null,oe=null,Re=new WeakMap,st=new Set;rn=new WeakMap;on=new WeakMap;at=new WeakSet;Jt=Promise.resolve();Cr=new Set(["value","checked","selected","indeterminate","disabled","open","popover"]);Nr="name=csp-nonce";(typeof window>"u"||window.__WEBJS_CLIENT_ROUTER__!==!1)&&Tr()});function ps(e,...t){return{_$webjs:"template",strings:e,values:t}}function L(e){return!!e&&typeof e=="object"&&e._$webjs==="template"}var C="wjm-";function hs(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 gn(e){return!!e&&typeof e=="object"&&e._$webjsCss===!0}function wn(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(`
|
|
4
|
+
`),n.appendChild(r)}}function ms(e){return!e||!e.length?"":`<style>${e.map(t=>t.text).join(`
|
|
5
|
+
`)}</style>`}var _n=Object.freeze({"@":"event",".":"prop","?":"bool"});function Be(e){return Object.prototype.hasOwnProperty.call(_n,e)}function bs(e){return String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function Vr(e){return String(e).replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<")}var R="__webjs_action",Yr="$$webjsAction";function lt(e){if(typeof e!="function")return null;let t=e[Yr];return typeof t=="string"&&t?t:null}function An(e,t,n){if(typeof e!="function")return!1;let r=String(t).toLowerCase(),o=String(n||"").toLowerCase();return r==="action"?o==="form":r==="formaction"?o==="button"||o==="input":!1}function Gr(e,t,n=!0){if(!e||e===R&&n)return;let r=e===R?'a second "name" attribute':`name="${e}"`;throw new Error(`[webjs] formaction=\${action} on <${t||"button"}> cannot be used when the element already carries a "name" attribute (found ${r}). The action identity is submitted as the button's own name/value pair, so there is no room for a second one. Move the action to the enclosing <form action=\${action}> or drop the submitter's "name".`)}function Jr(e,t){let n=String(e||"").toLowerCase(),r=t==null?null:String(t).toLowerCase();if(Xr(n,r)){if(n==="input"&&r==="image")throw new Error('[webjs] formaction=${action} is not supported on <input type="image"> because image submitters submit coordinate pairs (name.x/name.y) instead of name=value, so the action identity would never arrive. Use a <button> instead.');if(n==="input")throw new Error('[webjs] formaction=${action} is not supported on <input type="submit"> because the action identity has to occupy the submitter\'s "value", which on this control is also its visible label, so the button would render captioned with the action\'s id and could not be given a real one. Use <button formaction=${action}>Publish</button>, whose label is its children.');return}throw new Error(`[webjs] formaction=\${action} on <${n}>${r?` type="${r}"`:""} requires a submitter control, and formaction is inert on anything else. Use <button formaction=\${action}>.`)}function Xr(e,t){let n=t==null?null:String(t).toLowerCase();return e==="button"?n==null||n===""||n==="submit":e==="input"?n==="submit"||n==="image":!1}function Qr(e){throw new Error(`[webjs] formaction=\${action} on <${e||"button"}> cannot be used when the element already carries a "value" attribute. The action identity is submitted as the button's own name/value pair, so both halves are taken. Drop the "value", or dispatch on it from one form-level action instead.`)}function Zr(e){throw new Error(`[webjs] a bound formaction=\${action} on <${e||"button"}> cannot also carry a plain formaction attribute: the two name different targets and the renderers resolve them differently. Drop the static attribute.`)}function eo(e){throw new Error(`[webjs] formaction=\${action} on <${e||"button"}> cannot be used with a "form" attribute, which re-points the submitter at a form other than the bound one it sits in. Keep the submitter inside its bound <form>.`)}function to(e,t){if(e)throw new Error(`[webjs] two formaction=\${action} holes were found on one <${t||"button"}>. Only one can win, and the two renderers pick differently, so bind exactly one action per submitter.`)}function no(e,t){if(!e)throw new Error(`[webjs] formaction=\${action} on <${t||"button"}> requires the enclosing <form> to also be bound to a server action (e.g. <form action=\${formAction}>). The enclosing <form> must carry an action binding so method="post" and the enctype are set at form start, which is too late to add from the button.`)}function ro(e,t,n){let o=(e||[]).filter(i=>n?Sn(i):/^form(action|method|enctype)$/i.test(String(i)))[0];if(o)throw new Error(`[webjs] a <${t||"button"}> submitter binds .${o}=. That property is a reflected IDL attribute on a submitter, so a property binding is dropped at SSR and written to the attribute in the browser: the page would render on the server and throw on hydration. Write it as a plain attribute.`)}function Sn(e){let t=String(e).toLowerCase();return t==="name"||t==="value"||t==="formaction"||t==="formmethod"||t==="formenctype"}function vn(e,t,n,r){let o=!!(r&&r.bound),i=!!(r&&r.retargeted),s=t==null?null:String(t),a=n==null?null:String(n);if(s!=null&&/^dialog$/i.test(s)){if(!o)return;throw new Error(`[webjs] formaction=\${action} on <${e}> cannot be combined with formmethod="dialog", which dismisses a <dialog> instead of submitting, so the bound action would never run. Drop one of the two.`)}if(!i){if(s!=null&&!/^post$/i.test(s))throw new Error(`[webjs] <${e} formmethod="${s}"> inside a bound <form action=\${action}> cannot work: a bound server action is submitted as a POST body, and a "${s}" submission sends none, so the action would never run. Drop the formmethod attribute, or point the button elsewhere with a plain formaction="/url".`);if(a!=null&&!io.has(a.toLowerCase()))throw new Error(`[webjs] <${e} formenctype="${a}"> inside a bound <form action=\${action}> cannot work: a form submission is parsed as multipart/form-data or application/x-www-form-urlencoded, and a "${a}" body is neither, so the submission would run under JS and 405 without it. Drop the formenctype attribute (WebJs emits multipart/form-data on the form).`)}}function Ue(e,t,n){if(ut(e)&&vs(t))throw new Error(Es(t,n))}function oo(e,t,n){Ss(t,n)&&Ue(e,t,n)}function En(e,t){if(e)return e;let n=t==="button"||t==="input"?"formaction=":"action=";throw new Error(`[webjs] the function in ${n} on <${t||"form"}> is not a server action. Only a function imported from a 'use server' *.server.{js,ts} module can be bound to a form or a submitter, because the identity the browser submits has to resolve back to something the server can run. Move the handler into a server action and import it, or pass a url string.`)}var io=new Set(["multipart/form-data","application/x-www-form-urlencoded"]);function ys(e,t){if(e!=null&&!/^post$/i.test(e))throw new Error(`[webjs] <form method="${e}" action=\${action}> cannot work: a bound server action is submitted as a POST body, and a "${e}" form sends no body. Drop the method attribute (WebJs emits method="post") or remove the bound action.`);if(t!=null&&!io.has(t.toLowerCase()))throw new Error(`[webjs] <form enctype="${t}" action=\${action}> cannot work: a form submission is parsed as multipart/form-data or application/x-www-form-urlencoded, and a "${t}" body is neither, so the submission would run under JS and do nothing without it. Drop the enctype attribute (WebJs emits multipart/form-data).`)}function gs(e){if(e.duplicateAction)throw new Error("[webjs] two action=${...} holes were found on one <form>. A form can carry only one action binding. Move one to a submit button's formaction=${action} or remove the duplicate.");if(e.staticAction)throw new Error('[webjs] a bound <form action=${action}> also carries a plain action="..." attribute. A bound form posts to the page\'s own url, so the two say different things: without JS the browser would post to the written url and with JS it would not. Drop the action attribute, or drop the binding.');let t=e.propAttrs&&e.propAttrs[0];if(t)throw new Error(`[webjs] a bound <form action=\${action}> also binds .${t}=. A property binding on a native element is dropped at SSR and applied in the browser, so the form would submit one way with JS and another way without it. Write it as a plain attribute.`)}var X=Symbol("webjs.attr.absent");function ws(e,t){let n=e!==X&&e!=null,r=t!==X&&t!=null;return ys(n?e:null,r?t:null),{method:n?null:"post",enctype:r?null:"multipart/form-data"}}function so(e,t,n,r,o){let i=typeof t=="function"?lt(t):null;if(!i){typeof t=="function"&&En(null,e.localName),As(e,n,r,o.propAttrs);return}gs(o);let s=ws(n,r);e.removeAttribute("action"),zr(e,"method",n,s.method),zr(e,"enctype",r,s.enctype),_s(e,i)}function zr(e,t,n,r){if(r!==null){e.setAttribute(t,r);return}n!==X&&e.getAttribute(t)!==n&&e.setAttribute(t,n)}function _s(e,t){let n=e.firstElementChild,r=n&&n.localName==="input"&&n.getAttribute("name")===R?n:null;if(!r){for(let o of e.children)if(o.localName==="input"&&o.getAttribute("name")===R){r=o;break}}r||(r=e.ownerDocument.createElement("input"),r.setAttribute("type","hidden"),r.setAttribute("name",R),e.insertBefore(r,e.firstChild)),r.getAttribute("value")!==t&&r.setAttribute("value",t)}function ao(e){for(let t of e.querySelectorAll("button, input")){let n=t.localName;if(!Xr(n,t.getAttribute("type")))continue;let r=t.getAttribute("formmethod"),o=t.getAttribute("formenctype");r==null&&o==null||vn(n,r,o,{bound:t.getAttribute("name")===R,retargeted:t.hasAttribute("formaction")})}}function As(e,t,n,r){let o=e.firstElementChild;if(o&&o.localName==="input"&&o.getAttribute("name")===R)o.remove();else for(let s of e.children)if(s.localName==="input"&&s.getAttribute("name")===R){s.remove();break}let i=s=>(r||[]).some(a=>{let c=String(a).toLowerCase();return c===s||s==="enctype"&&c==="encoding"});t===X&&!i("method")&&e.removeAttribute("method"),n===X&&!i("enctype")&&e.removeAttribute("enctype")}function Ss(e,t){let n=String(e).toLowerCase();Be(n[0])&&(n=n.slice(1));let r=String(t||"").toLowerCase();return n==="action"?r==="form":n==="formaction"?r==="button"||r==="input":!1}function ut(e,t){if(typeof e=="function")return!0;if(!Array.isArray(e))return!1;let n=t||new Set;return n.has(e)?!1:(n.add(e),e.some(r=>ut(r,n)))}function vs(e){let t=String(e).toLowerCase();return Be(t[0])&&(t=t.slice(1)),t==="action"||t==="formaction"}function Es(e,t){return`[webjs] a function was interpolated into ${String(e).toLowerCase()}= on <${t||"form"}>. Stringifying a function into HTML would leak its source (a 'use server' action's body included) to every visitor, so this is refused. To run a server action from a form, write an unquoted action=\${action} on the <form> itself or a formaction=\${action} on a <button> inside a bound form. Anywhere else, pass a URL string.`}var co=Symbol.for("webjs.repeat");function lo(e,t,n){return{[co]:!0,items:[...e],keyFn:t,templateFn:n}}function ft(e){return!!e&&typeof e=="object"&&e[co]===!0}function Cs(e){return{_$webjs:"unsafe-html",value:String(e??"")}}function Cn(e){return!!e&&typeof e=="object"&&e._$webjs==="unsafe-html"}function Ns(e){return{_$webjs:"live",value:e}}function dt(e){return!!e&&typeof e=="object"&&e._$webjs==="live"}function xs(e,t){return{_$webjs:"keyed",key:e,value:t}}function pt(e){return!!e&&typeof e=="object"&&e._$webjs==="keyed"}function ks(e,t){return{_$webjs:"guard",deps:e,fn:t}}function ht(e){return!!e&&typeof e=="object"&&e._$webjs==="guard"}function Ts(e){return{_$webjs:"template-content",template:e}}function Nn(e){return!!e&&typeof e=="object"&&e._$webjs==="template-content"}function js(e){return{_$webjs:"ref",target:e}}function mt(e){return!!e&&typeof e=="object"&&e._$webjs==="ref"}function Rs(){return{value:void 0}}function Os(e){return{_$webjs:"cache",value:e}}function bt(e){return!!e&&typeof e=="object"&&e._$webjs==="cache"}function Ls(...e){return{_$webjs:"until",args:e}}function yt(e){return!!e&&typeof e=="object"&&e._$webjs==="until"}function Ps(e,t){return{_$webjs:"async-append",iterable:e,mapper:t}}function xn(e){return!!e&&typeof e=="object"&&e._$webjs==="async-append"}function Is(e,t){return{_$webjs:"async-replace",iterable:e,mapper:t}}function kn(e){return!!e&&typeof e=="object"&&e._$webjs==="async-replace"}function Ms(e){return{_$webjs:"watch",signal:e}}function gt(e){return!!e&&typeof e=="object"&&e._$webjs==="watch"}var F=null,Q=!1,Ae=0,_e=null,Tn=0,uo=(e,t)=>Object.is(e,t),_t=()=>{},fo=()=>!1;function po(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)po(r,e);if(e.watched)try{e.watched.call(e.wrapper)}catch(r){console.error(r)}}}function He(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)He(n,e);if(e.unwatched)try{e.unwatched.call(e.wrapper)}catch(n){console.error(n)}}}function In(e){if(Q)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&&On(t)&&He(t.producers[n],t),t.producers[n]!==e&&(t.producers[n]=e,On(t)&&po(e,t)),t.producerLastReadVersions[n]=e.version}function On(e){return e.consumerIsAlwaysLive||e.liveConsumers&&e.liveConsumers.size>0}function ho(e){if(!e.liveConsumers||e.liveConsumers.size===0)return;let t=Q;Q=!0;try{for(let n of e.liveConsumers)n.dirty||Fs(n)}finally{Q=t}}function Fs(e){e.dirty=!0,ho(e),e.consumerMarkedDirty.call(e.wrapper||e)}function At(e){if(!(!e.dirty&&e.lastCleanEpoch===Ae)){if(!e.producerMustRecompute()&&!$s(e)){e.dirty=!1,e.lastCleanEpoch=Ae;return}e.producerRecomputeValue(),e.dirty=!1,e.lastCleanEpoch=Ae}}function $s(e){for(let t=0;t<e.producers.length;t++){let n=e.producers[t],r=e.producerLastReadVersions[t];if(r!==n.version||(At(n),r!==n.version))return!0}return!1}function Ln(e){e&&(e.nextProducerIndex=0);let t=F;return F=e,t}function Pn(e,t){if(F=t,!!e){if(On(e))for(let n=e.nextProducerIndex;n<e.producers.length;n++)He(e.producers[n],e);for(;e.producers.length>e.nextProducerIndex;)e.producers.pop(),e.producerLastReadVersions.pop()}}var St=class{constructor(t,n){this.__value=t,this.version=0,this.lastCleanEpoch=Ae,this.dirty=!1,this.producers=[],this.producerLastReadVersions=[],this.liveConsumers=void 0,this.consumerAllowSignalWrites=!0,this.consumerIsAlwaysLive=!1,this.producerMustRecompute=fo,this.producerRecomputeValue=_t,this.consumerMarkedDirty=_t,this.wrapper=this,this.__isSignal=!0,this.__equal=n?.equals||uo,this.watched=n?.[Mn],this.unwatched=n?.[Fn]}get(){return In(this),this.__value}peek(){return this.__value}set(t){if(Q)throw new Error("Signal write during notification phase");this.__equal.call(this,this.__value,t)||(this.__value=t,this.version++,Ae++,_e!==null?mo(this):ho(this))}};function mo(e){let t=Q;Q=!0;try{if(!e.liveConsumers)return;for(let n of e.liveConsumers)n.dirty||(n.dirty=!0,n.__isWatcher?_e.add(n):mo(n))}finally{Q=t}}var jn=Symbol("unset"),Rn=Symbol("computing"),wt=Symbol("errored"),qe=class{constructor(t,n){this.__fn=t,this.__value=jn,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||uo,this.watched=n?.[Mn],this.unwatched=n?.[Fn];let r=this;this.producerMustRecompute=function(){return r.__value===jn||r.__value===Rn},this.producerRecomputeValue=function(){if(r.__value===Rn)throw new Error("Detected cycle in computations.");let o=r.__value;r.__value=Rn;let i=Ln(r),s,a=!1;try{s=r.__fn.call(r.wrapper)}catch(l){s=wt,r.__error=l,a=!0}finally{Pn(r,i)}if(!a&&(o!==jn&&o!==wt)&&r.__equal.call(r.wrapper,o,s)){r.__value=o;return}r.__value=s,r.version++},this.consumerMarkedDirty=_t}get(){if(At(this),In(this),this.__value===wt)throw this.__error;return this.__value}peek(){if(At(this),this.__value===wt)throw this.__error;return this.__value}},vt=class{constructor(t){this.__notify=t,this.version=0,this.lastCleanEpoch=Ae,this.dirty=!1,this.producers=[],this.producerLastReadVersions=[],this.nextProducerIndex=0,this.liveConsumers=void 0,this.consumerAllowSignalWrites=!1,this.consumerIsAlwaysLive=!0,this.producerMustRecompute=fo,this.producerRecomputeValue=_t,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=Ln(this);try{for(let r of t)In(r),r.__isComputed&&At(r)}finally{Pn(this,n)}this.dirty=!1}unwatch(...t){for(let n=this.producers.length-1;n>=0;n--)t.includes(this.producers[n])&&(He(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=Ln(this),r;try{r=t()}finally{Pn(this,n)}return this.dirty=!1,r}dispose(){for(let t of this.producers)He(t,this);this.producers=[],this.producerLastReadVersions=[],this.__notify=null}},Mn=Symbol("watched"),Fn=Symbol("unwatched");function Ds(e){let t=F;F=null;try{return e()}finally{F=t}}function Bs(e){return e.producers.slice()}function Us(e){return e.liveConsumers?[...e.liveConsumers]:[]}function Hs(e){return!!e.liveConsumers&&e.liveConsumers.size>0}function qs(e){return e.producers.length>0}function Ws(){return F&&F.__isComputed?F:null}function Ks(e){Tn++,_e===null&&(_e=new Set);try{e()}finally{if(Tn--,Tn===0){let t=_e;_e=null;for(let n of t)n.__fire()}}}var We={State:St,Computed:qe,subtle:{Watcher:vt,untrack:Ds,introspectSources:Bs,introspectSinks:Us,hasSinks:Hs,hasSources:qs,currentComputed:Ws,watched:Mn,unwatched:Fn}};function Vs(e,t){return new St(e,t)}function zs(e,t){return new qe(e,t)}function Ys(e){return!!(e&&typeof e=="object"&&e.__isSignal===!0)}function Gs(e){let t=!1,n=!1,r=new qe(e),o=new vt(()=>{t||n||(t=!0,queueMicrotask(()=>{if(t=!1,!n){try{r.get()}catch(i){console.error(i)}o.watch()}}))});o.watch(r);try{r.get()}catch(i){console.error(i)}return()=>{n||(n=!0,o.dispose())}}Rt();function Bo(e,t){let n=e&&e[v]?e:null;return n?kt(n,t):t()}var Zn=new WeakMap,er=new WeakMap,Pt=new WeakMap,Ot=Symbol.for("webjs.instance"),P=null;function It(e){return e?e.nodeType===11&&e.host?e.host:e:null}function nr(e,t){let n=e.__commitOwner,r=P;n&&(P=n);try{t()}finally{P=r}}function xe(e,t){let n=t,r=n[T];n[T]=!0;let o=P;P=t;try{let i=n[Ot];if(L(e)){let s=e;if(i&&i.strings===s.strings){Ce(i,s.values);return}i&&$o(i,t);let a=t.firstChild;a&&a.nodeType===8&&a.data==="webjs-hydrate"&&a.remove(),n[Ot]=null;let c=ga(s,t);n[Ot]=c;return}if(i&&$o(i,t),n[Ot]=null,t.replaceChildren(),e==null||e===!1||e===!0)return;if(Array.isArray(e)){for(let s of e){let a=document.createTextNode(String(s??""));t.appendChild(a)}return}t.appendChild(document.createTextNode(String(e)))}finally{P=o,n[T]=r,r||Qn(n)}}function Mt(e){let{strings:t}=e,n=Zn.get(t);if(n)return n;let r=[],o="",i="text",s="",a=0,c="",l=0,u=null,f="",d="";for(let y=0;y<t.length;y++){let w=t[y];for(let b=0;b<w.length;b++){let m=w[b];switch(i){case"text":o+=m,m==="<"&&(i="tag-open");break;case"tag-open":o+=m,m==="!"?i="bang-1":m==="/"?(i="tag-name",f=""):/[a-zA-Z]/.test(m)?(i="tag-name",f=m.toLowerCase()):i="text";break;case"bang-1":o+=m,i=m==="-"?"bang-dash":"tag-name";break;case"bang-dash":o+=m,m==="-"?(i="comment",l=0):i="tag-name";break;case"comment":o+=m,m==="-"?l+=1:(m===">"&&l>=2&&(i="text"),l=0);break;case"tag-name":o+=m,m===">"?(i=f==="script"||f==="style"?"rawtext":"text",i==="rawtext"&&(d="")):/\s/.test(m)?i="in-tag":f+=m.toLowerCase();break;case"in-tag":o+=m,m===">"?(i=f==="script"||f==="style"?"rawtext":"text",i==="rawtext"&&(d="")):!/\s/.test(m)&&m!=="/"&&(i="attr-name",s=m,a=o.length-1);break;case"rawtext":o+=m,d=(d+m.toLowerCase()).slice(-9),(d.endsWith("<\/script>")||d.endsWith("</style>"))&&(i="text",d="",f="");break;case"attr-name":m==="="?(i="after-eq",o+=m):/\s/.test(m)?(i="in-tag",s="",o+=m):m===">"?(i="text",s="",o+=m):(s+=m,o+=m);break;case"after-eq":m==='"'||m==="'"?(i="attr-quoted",c=m,o+=m):/\s/.test(m)?(i="in-tag",s="",o+=m):m===">"?(i="text",s="",o+=m):(i="attr-unquoted",o+=m);break;case"attr-unquoted":/\s/.test(m)?(i="in-tag",s="",o+=m):(m===">"&&(i="text",s=""),o+=m);break;case"attr-quoted":o+=m,m===c&&(i="in-tag",s="");break;case"skip-attr":if(m===c){if(u){let ye=u.firstPartIdx,g=[];for(let k=ye;k<r.length;k++)(r[k].kind==="noop"||r[k].kind==="attr-mixed")&&g.push(k);let O=[],ge=t[g[0]],we=ge.lastIndexOf(c);O.push(we>=0?ge.slice(we+1):ge);for(let k=1;k<g.length;k++)O.push(t[g[k]]);let E=t[g[g.length-1]+1],De=E.indexOf(c);O.push(De>=0?E.slice(0,De):E),r[ye]={kind:"attr-mixed",path:[],name:u.name,statics:O,group:g};for(let k=1;k<g.length;k++)r[g[k]]={kind:"noop",path:[],mixedAnchor:ye};u=null}i="in-tag",s=""}break}}if(y<t.length-1){let b=r.length;if(i==="comment"){l=0,r.push({kind:"noop",path:[]});continue}if(i==="rawtext"){d="",r.push({kind:"noop",path:[]});continue}if(i==="text")o+=`<!--${C}${b}-->`,r.push({kind:"child",path:[]});else if(i==="in-tag"){let m=`data-${C}${b}`;o+=`${m}=""`,r.push({kind:"element",path:[]})}else if(i==="after-eq"){let m=s[0],ye=s.slice(1);if(Be(m)){o=o.slice(0,a);let g=_n[m],O=`data-${C}${b}`;o+=`${O}=""`,r.push({kind:g,path:[],name:ye})}else{o=o.slice(0,a);let g=`data-${C}${b}`;o+=`${g}=""`,r.push({kind:"attr",path:[],name:s})}i="in-tag",s=""}else if(i==="attr-quoted"||i==="attr-unquoted"){o=o.slice(0,a);let m=`data-${C}${b}`;o+=`${m}=""`,u={name:s,firstPartIdx:b},r.push({kind:"noop",path:[]}),i="skip-attr"}else i==="skip-attr"&&r.push({kind:"noop",path:[]})}}let h=document.createElement("template");h.innerHTML=o,da(h.content,r);let p=pa(h.content,r);return n={templateEl:h,parts:r,formActions:p},Zn.set(t,n),n}function da(e,t){let n=e.querySelectorAll("slot");for(let r of n){r.setAttribute(N,"");let o=t.length;r.setAttribute(`data-${C}${o}`,""),t.push({kind:"slot",path:[]})}}function pa(e,t){let n=[],r=[];function o(i){for(let s=0;s<i.childNodes.length;s++){let a=i.childNodes[s];if(n.push(s),a.nodeType===8){let c=a.data;if(c.startsWith(C)){let l=Number(c.slice(C.length));t[l]&&t[l].kind==="child"&&(t[l].path=n.slice())}}else if(a.nodeType===1){let c=a,l=[],u=[];for(let f of c.attributes)if(f.name.startsWith(`data-${C}`)){let d=Number(f.name.slice(`data-${C}`.length));t[d]&&t[d].kind!=="child"&&(t[d].path=n.slice(),u.push({idx:d,kind:t[d].kind,name:t[d].name||""})),l.push(f.name)}if(c.localName==="form"||c.localName==="button"||c.localName==="input"){let f=ha(c,u,t);f&&r.push(f)}for(let f of l)c.removeAttribute(f);o(a)}n.pop()}}return o(e),r.length?r:null}function ha(e,t,n){let r=e.localName==="form",o=r?"action":"formaction",i=t.filter(p=>p.kind==="attr"&&p.name.toLowerCase()===o);if(!i.length)return null;let s=[],a=[],c=[],l=r?[]:t.filter(p=>p.name.toLowerCase()==="name"&&(p.kind==="attr"||p.kind==="attr-mixed"||p.kind==="bool")).map(p=>({i:p.idx,kind:p.kind})),u=!r&&e.hasAttribute("name"),f=!r&&e.hasAttribute("form"),d=!r&&e.hasAttribute("value"),h=r?[]:t.filter(p=>p.name.toLowerCase()==="value"&&(p.kind==="attr"||p.kind==="attr-mixed"||p.kind==="bool")).map(p=>({i:p.idx,kind:p.kind}));for(let p of t){let y=String(p.name).toLowerCase();if(p.kind==="prop"){r?(y==="method"||y==="enctype"||y==="encoding")&&c.push(p.name):Sn(y)&&c.push(p.name);continue}if(y!=="method"&&y!=="enctype"||p.kind!=="attr"&&p.kind!=="attr-mixed"&&p.kind!=="bool")continue;let w=n[p.idx],b={i:p.idx,kind:p.kind};p.kind==="attr-mixed"&&(b.statics=w.statics||[],b.group=w.group||[]),(y==="method"?s:a).push(b)}return{isForm:r,tag:e.localName,actionIdxs:i.map(p=>p.idx),duplicateAction:i.length>1,staticAction:e.getAttribute(o)!=null,authoredName:u,authoredValue:d,authoredForm:f,propAttrs:c,nameParts:l,valueParts:h,staticMethod:e.getAttribute("method"),staticEnctype:e.getAttribute("enctype"),methodParts:s,enctypeParts:a}}function Ge(e,t,n){if(!e)return;let r=[];for(let o of[!0,!1])for(let i of e){if(i.isForm!==o)continue;let s=i.actionIdxs[0],a=i.isForm?"action":"formaction";for(let u of i.actionIdxs)if(An(fe(n[u]),a,i.tag)){s=u;break}let c=t[s];if(!c||!c.el)continue;let l=fe(n[s]);if(i.isForm)so(c.el,l,Do(i.methodParts,i.staticMethod,n),Do(i.enctypeParts,i.staticEnctype,n),i),typeof l=="function"&<(l)&&r.push(c.el);else{let u=f=>f.some(d=>d.kind==="bool"?!!fe(n[d.i]):!0);ya(c.el,l,i,u(i.nameParts),u(i.valueParts))}}for(let o of r)ao(o)}function ma(e){(Pt.has(e)||e.getAttribute("name")===R)&&(e.getAttribute("name")===R&&e.removeAttribute("name"),e.removeAttribute("value"),Pt.delete(e))}function ba(e){let t=e.parentNode;for(;t;){if(t.nodeType===1&&t.localName==="form")return t;t=t.parentNode}return null}function ya(e,t,n,r,o){let i=typeof t=="function"?lt(t):null;if(!i){typeof t=="function"&&En(null,e.localName),ma(e);return}to(n.duplicateAction,e.localName),ro(n.propAttrs,e.localName,!0),n.staticAction&&Zr(e.localName),(n.authoredValue||o)&&Qr(e.localName),(n.authoredName||r)&&Gr(e.getAttribute("name")||R,e.localName,!1),(n.authoredForm||e.hasAttribute("form"))&&eo(e.localName),Jr(e.localName,e.getAttribute("type"));let s=ba(e);if(s&&!Pt.has(e)){let a=!!(s.querySelector(`input[name="${R}"]`)||er.has(s));no(a,e.localName)}vn(e.localName,e.getAttribute("formmethod"),e.getAttribute("formenctype"),{bound:!0}),e.removeAttribute("formaction"),e.setAttribute("name",R),e.setAttribute("value",i),Pt.set(e,i)}function ga(e,t){let{templateEl:n,parts:r,formActions:o}=Mt(e),i=n.content.cloneNode(!0),s=document.createComment(`${C}s`),a=document.createComment(`${C}e`),c=r.map(f=>Ft(f,i)),l=[];for(let f=0;f<e.values.length;f++)U(c[f],e.values[f],void 0,e.values),l.push(e.values[f]);Ge(o,c,e.values),t.replaceChildren(s,...i.childNodes,a);let u=t.nodeType===1&&t[v]?t:null;for(let f of c)f.kind==="slot"&&(u&&f.slotEl&&(f.slotEl[xt]=u),U(f,void 0,void 0,[]));return{strings:e.strings,bound:c,lastValues:l,startNode:s,endNode:a}}function Ft(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(i){o.handler?.(i)}};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}`)}var Fo=Symbol("webjs.commitFailed");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 o=e.bound[n],i=o.mixedAnchor;try{o.kind==="noop"&&i!=null?U(e.bound[i],t[i],e.lastValues[i],t):U(o,r,e.lastValues[n],t)}catch(s){throw e.lastValues[n]=Fo,o.kind==="noop"&&i!=null&&(e.lastValues[i]=Fo),s}e.lastValues[n]=r}Ge(Zn.get(e.strings)?.formActions??null,e.bound,t)}function $o(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 if(typeof r=="object")try{r.value=void 0}catch{}n.lastTarget=void 0,n.__lastEl=void 0}}if(n.kind==="slot"){let r=ze(n.slotEl);r&&Mo(r,n.slotEl)}}t.replaceChildren()}function Do(e,t,n){for(let r of e){if(r.kind==="bool")return fe(n[r.i])?"":X;if(r.kind==="attr"){let a=fe(n[r.i]);return a==null?"":String(a)}let o=r.statics||[],i=r.group||[],s=o[0]||"";for(let a=0;a<i.length;a++)s+=String(fe(n[i[a]])??""),s+=o[a+1]||"";return s}return t??X}function fe(e){return dt(e)?e.value:e}function U(e,t,n,r){if(dt(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":Aa(e,t);break;case"attr":{if(e.el.localName==="form"&&e.name.toLowerCase()==="action"){let o=fe(t);typeof o=="function"?er.set(e.el,o):er.delete(e.el)}t==null||t===!1?e.el.removeAttribute(e.name):An(t,e.name,e.el.localName)||(Ue(t,e.name,e.el.localName),e.el.setAttribute(e.name,String(t)));break}case"prop":oo(t,e.name,e.el.localName),e.el[e.name]=t;break;case"bool":Ue(t,e.name,e.el.localName),t?e.el.setAttribute(e.name,""):e.el.removeAttribute(e.name);break;case"event":e.handler=typeof t=="function"?t:null;break;case"element":_a(e,t);break;case"attr-mixed":{let o=e,i=o.statics[0];for(let s=0;s<o.group.length;s++){let a=r?r[o.group[s]]:t;Ue(a,e.name,e.el.localName),i+=String(a??""),i+=o.statics[s+1]||""}e.el.setAttribute(e.name,i);break}case"slot":{if(e.applied)break;let o=e.slotEl,i=()=>{let a=ze(o);if(!a){e.applied=!0;return}if(!a.contains(o)){a.isConnected?queueMicrotask(i):e.applied=!0;return}if(e.applied=!0,wa(o))return;let c=document.createDocumentFragment();for(;o.firstChild;)c.appendChild(o.firstChild);o[Ve]=c,queueMicrotask(()=>Y(a))},s=ze(o);s&&s.contains(o)?i():queueMicrotask(i);break}case"noop":break}}function ze(e){let t=e[xt];if(t&&t.isConnected)return t;let n=e.parentElement;for(;n;){if(n[v])return n;n=n.parentElement}return null}function wa(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 _a(e,t){let n=e,r=mt(t)?t.target:void 0,o=n.__refTarget,i=r!==o;if(i&&o)if(typeof o=="function")try{o(void 0)}catch{}else typeof o=="object"&&(o.value=void 0);if(i||n.__refElement!==e.el){if(n.__refTarget=r,r)if(typeof r=="function"){if(!i&&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 Aa(e,t){return Ra(e,t),B(e,t)}function B(e,t){return Bo(e.marker&&e.marker.parentNode,()=>Sa(e,t))}function Sa(e,t){let n=e.marker;if(Cn(t)){te(e);let o=String(t.value??""),i=document.createElement("template");i.innerHTML=o;let s=[...i.content.childNodes],a=document.createDocumentFragment();for(let c of s)a.appendChild(c);n.parentNode?.insertBefore(a,n),e.child=s;return}if(pt(t)){let o=t,i=e.__keyedKey;i!==void 0&&!Object.is(i,o.key)&&te(e),e.__keyedKey=o.key,B(e,o.value);return}if(ht(t)){let o=t,i=e.__guardDeps,s=o.deps;if(i!==void 0&&(Array.isArray(i)&&Array.isArray(s)?ja(i,s):Object.is(i,s)))return;let a=Array.isArray(s)?s.slice():s;B(e,o.fn()),e.__guardDeps=a;return}if(Nn(t)){te(e);let o=t.template;if(o&&o.content){let i=o.content.cloneNode(!0),s=[...i.childNodes];n.parentNode?.insertBefore(i,n),e.child=s}return}if(mt(t))return;if(bt(t))return Oa(e,t.value);if(yt(t))return La(e,t.args);if(gt(t))return Pa(e,t.signal);if(xn(t))return Ia(e,t);if(kn(t))return Ma(e,t);if(ft(t)){if(e.child&&e.child.kind==="repeat"){Ca(e,t);return}te(e);let o={kind:"repeat",map:new Map};e.child=o,Ea(n,o,t);return}if(Array.isArray(t)){if(e.child&&e.child.kind==="array"){ka(e,t);return}te(e);let o={kind:"array",items:[]};e.child=o,xa(n,o,t);return}if(e.child){let o=e.child;if(o.kind==="repeat")Uo(o),e.child=void 0;else if(o.kind==="array")qo(o),e.child=void 0;else if(o.kind==="async-stream")zo(o),e.child=void 0;else if("strings"in e.child){let i=e.child;if(L(t)&&i.strings===t.strings){Ce(i,t.values);return}Ne(i.startNode,i.endNode),e.child=void 0}else{for(let i of e.child)i.parentNode&&i.parentNode.removeChild(i);e.child=void 0}}if(t==null||t===!1||t===!0)return;if(L(t)){let o=t,{templateEl:i,parts:s,formActions:a}=Mt(o),c=i.content.cloneNode(!0),l=document.createComment(`${C}s`),u=document.createComment(`${C}e`),f=s.map(p=>Ft(p,c)),d=[];for(let p=0;p<o.values.length;p++)U(f[p],o.values[p],void 0,o.values),d.push(o.values[p]);Ge(a,f,o.values);let h=[l,...c.childNodes,u];n.parentNode?.insertBefore(va(h),n);for(let p of f)p.kind==="slot"&&U(p,void 0,void 0,[]);e.child={strings:o.strings,bound:f,lastValues:d,startNode:l,endNode:u};return}let r=document.createTextNode(String(t));n.parentNode?.insertBefore(r,n),e.child=[r]}function va(e){let t=document.createDocumentFragment();for(let n of e)t.appendChild(n);return t}function Ne(e,t){if(!e.parentNode)return;let n=e;for(;n&&n!==t;){let r=n.nextSibling;n.parentNode?.removeChild(n),n=r}t.parentNode===e.parentNode&&t.parentNode?.removeChild(t)}function rr(e){let{templateEl:t,parts:n,formActions:r}=Mt(e),o=t.content.cloneNode(!0),i=document.createComment(`${C}s`),s=document.createComment(`${C}e`),a=n.map(u=>Ft(u,o)),c=[];for(let u=0;u<e.values.length;u++)U(a[u],e.values[u],void 0,e.values),c.push(e.values[u]);Ge(r,a,e.values);for(let u of a)u.kind==="slot"&&U(u,void 0,void 0,[]);let l=document.createDocumentFragment();for(l.appendChild(i);o.firstChild;)l.appendChild(o.firstChild);return l.appendChild(s),{inst:{strings:e.strings,bound:a,lastValues:c,startNode:i,endNode:s},frag:l}}function Ye(e){for(let t of e.bound)if(t.kind==="event"&&t.el.removeEventListener(t.name,t.dispatcher),t.kind==="element"){let n=t.lastTarget;if(n){if(typeof n=="function")try{n(void 0)}catch{}else if(typeof n=="object")try{n.value=void 0}catch{}t.lastTarget=void 0,t.__lastEl=void 0}}}function Ea(e,t,n){let{items:r,keyFn:o,templateFn:i}=n,s=e.parentNode;if(!s)return;let a=document.createDocumentFragment();for(let c=0;c<r.length;c++){let l=o(r[c],c),u=i(r[c],c);if(!L(u))continue;let{inst:f,frag:d}=rr(u);t.map.set(l,f),a.appendChild(d)}s.insertBefore(a,e)}function Ca(e,t){let n=e.marker,r=n.parentNode;if(!r)return;let o=e.child,{items:i,keyFn:s,templateFn:a}=t,c=new Map;try{for(let l=0;l<i.length;l++){let u=s(i[l],l),f=a(i[l],l);if(!L(f))continue;let d=o.map.get(u);if(d&&d.strings===f.strings)Ce(d,f.values),tr(d.startNode,d.endNode,r,n),c.set(u,d),o.map.delete(u);else{d&&(o.map.delete(u),Ye(d),Ne(d.startNode,d.endNode));let{inst:h,frag:p}=rr(f);r.insertBefore(p,n),c.set(u,h)}}for(let[l,u]of[...o.map]){o.map.delete(l);try{Ye(u)}finally{Ne(u.startNode,u.endNode)}}o.map=c}catch(l){for(let[u,f]of c)o.map.set(u,f);throw l}}function Uo(e){for(let[t,n]of[...e.map]){e.map.delete(t);try{Ye(n)}finally{Ne(n.startNode,n.endNode)}}e.map.clear()}function Na(e){return e.type==="tpl"?e.inst.startNode:e.type==="text"?e.node:null}function Lt(e){e.type==="tpl"?(Ye(e.inst),Ne(e.inst.startNode,e.inst.endNode)):e.type==="text"&&e.node.parentNode?.removeChild(e.node)}function Ho(e){if(L(e)){let{inst:t,frag:n}=rr(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 xa(e,t,n){let r=e.parentNode;if(!r)return;let o=document.createDocumentFragment(),i=[];for(let s of n){let{item:a,frag:c}=Ho(s);c&&o.appendChild(c),i.push(a)}r.insertBefore(o,e),t.items=i}function ka(e,t){let n=e.marker,r=n.parentNode;if(!r)return;let o=e.child,i=o.items,s=[],a=0;try{for(let c=0;c<t.length;c++){let l=t[c],u=i[c];if(L(l)){let h=l;if(u&&u.type==="tpl"&&u.inst.strings===h.strings){Ce(u.inst,h.values),s.push(u),a=c+1;continue}}else if(l!=null&&l!==!1&&l!==!0){if(u&&u.type==="text"){let h=String(l);u.node.data!==h&&(u.node.data=h),s.push(u),a=c+1;continue}}else{u&&Lt(u),s.push({type:"empty"}),a=c+1;continue}let{item:f,frag:d}=Ho(l);d&&r.insertBefore(d,Ta(i,c,n)),s.push(f),u&&Lt(u),a=c+1}for(let c=t.length;c<i.length;c++)Lt(i[c]),a=c+1;o.items=s}catch(c){throw o.items=s.concat(i.slice(a)),c}}function Ta(e,t,n){for(let r=t;r<e.length;r++){let o=Na(e[r]);if(o&&o.parentNode)return o}return n}function qo(e){for(let t of e.items)Lt(t);e.items=[]}function tr(e,t,n,r){if(t.nextSibling===r&&e.parentNode===n)return;let o=document.createDocumentFragment(),i=e;for(;i;){let s=i.nextSibling;if(o.appendChild(i),i===t)break;i=s}n.insertBefore(o,r)}function ja(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 te(e){let t=e;if(t.__untilState&&(t.__untilState.aborted=!0,t.__untilState=void 0),t.__watchSub&&Wo(t),!e.child)return;let n=e.child;if(n.kind==="repeat")Uo(n);else if(n.kind==="array")qo(n);else if(n.kind==="async-stream")zo(n);else if("strings"in n){let r=e.child;Ye(r),Ne(r.startNode,r.endNode)}else for(let r of e.child)r.parentNode&&r.parentNode.removeChild(r);e.child=void 0}function Ra(e,t){let n=e;n.__untilState&&!yt(t)&&(n.__untilState.aborted=!0,n.__untilState=void 0),n.__guardDeps!==void 0&&!ht(t)&&(n.__guardDeps=void 0),n.__cacheMap&&!bt(t)&&(n.__cacheMap=void 0),n.__keyedKey!==void 0&&!pt(t)&&(n.__keyedKey=void 0),n.__watchSub&&!gt(t)&&Wo(n)}function Oa(e,t){let n=e.marker,r=e,o=r.__cacheMap;o||(o=new Map,r.__cacheMap=o);let i=e.child;if(i&&"strings"in i){let a=i;if(L(t)&&a.strings===t.strings){Ce(a,t.values);return}let c=document.createDocumentFragment();tr(a.startNode,a.endNode,c,null),o.set(a.strings,{inst:a,holder:c}),e.child=void 0}if(L(t)){let a=t,c=o.get(a.strings);if(c){o.delete(a.strings),e.child&&te(e),tr(c.inst.startNode,c.inst.endNode,n.parentNode,n),Ce(c.inst,a.values),e.child=c.inst;let l=new Set;for(let u=c.inst.startNode.nextSibling;u&&u!==c.inst.endNode;u=u.nextSibling){if(u.nodeType!==1)continue;let f=u;if(f.matches("slot[data-webjs-light]")){let d=ze(f);d&&l.add(d)}for(let d of f.querySelectorAll("slot[data-webjs-light]")){let h=ze(d);h&&l.add(h)}}for(let u of l)Y(u);return}}B(e,t)}function La(e,t){let n=e;P&&(n.__commitOwner=It(P));let r=n.__untilState,o=n.__untilArgs,i=(d,h)=>!!(Object.is(d,h)||L(d)&&L(h)&&d.strings===h.strings),a=o&&o.length===t.length&&o.every((d,h)=>i(d,t[h]))&&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,u;for(let d=0;d<t.length;d++){let h=t[d];if(!h||typeof h.then!="function"){l=d,u=h;break}}l!==-1&&l<=c.highestResolved?(B(e,u),c.highestResolved=l):l===-1&&!n.__untilEverRendered&&B(e,""),n.__untilEverRendered=!0;let f=Math.min(l===-1?t.length:l,c.highestResolved);for(let d=0;d<f;d++){let h=t[d];!h||typeof h.then!="function"||Promise.resolve(h).then(p=>{if(!c.aborted&&!(d>=c.highestResolved)){try{nr(e,()=>B(e,p))}catch(y){or(e,y);return}c.highestResolved=d}},()=>{})}}function or(e,t){let n;try{n=t instanceof Error?t:new Error(String(t))}catch{n=new Error("render error (unstringifiable thrown value)")}let r=e.__commitOwner;if(r&&typeof r._handleRenderError=="function"){r._handleRenderError(n);return}throw n}function Pa(e,t){let n=e;if(P&&(n.__commitOwner=It(P)),n.__watchSig===t&&n.__watchSub){let i;n.__watchSub.observe(()=>{i=t.get()}),B(e,i);return}n.__watchSub&&(n.__watchSub.dispose(),n.__watchSub=void 0),n.__watchSig=t;let r=new We.subtle.Watcher(()=>{queueMicrotask(()=>{if(n.__watchSub!==r)return;let i;try{r.observe(()=>{i=t.get()}),nr(e,()=>B(e,i))}catch(s){or(e,s)}})});n.__watchSub=r;let o;r.observe(()=>{o=t.get()}),B(e,o)}function Wo(e){e.__watchSub&&(e.__watchSub.dispose(),e.__watchSub=void 0,e.__watchSig=void 0)}function Ia(e,t){let n=e;P&&(n.__commitOwner=It(P));let r=e.child;if(r&&r.kind==="async-stream"&&r.mode==="append"&&r.iterable===t.iterable)return;te(e);let o=t.iterable[Symbol.asyncIterator](),i={kind:"async-stream",mode:"append",aborted:!1,iterable:t.iterable,iterator:o,nodes:[]};e.child=i,Ko(i,e,t)}function Ma(e,t){let n=e;P&&(n.__commitOwner=It(P));let r=e.child;if(r&&r.kind==="async-stream"&&r.mode==="replace"&&r.iterable===t.iterable)return;te(e);let o=t.iterable[Symbol.asyncIterator](),i={kind:"async-stream",mode:"replace",aborted:!1,iterable:t.iterable,iterator:o,nodes:[]};e.child=i,Ko(i,e,t)}async function Ko(e,t,n){let r=t.marker,o=0;for(;!e.aborted;){let i,s;try{if(i=await e.iterator.next(),e.aborted||i.done)break;s=n.mapper?n.mapper(i.value,o):i.value}catch(a){typeof console<"u"&&console.error("[webjs] asyncStream error:",a);return}try{nr(t,()=>{let a=Vo(s);Bo(r.parentNode,()=>{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)})})}catch(a){e.aborted=!0;try{e.iterator.return?.()?.catch?.(()=>{})}catch{}or(t,a);return}o++}}function Vo(e){if(e==null||e===!1||e===!0)return[];if(L(e)){let t=e,{templateEl:n,parts:r,formActions:o}=Mt(t),i=n.content.cloneNode(!0),s=r.map(a=>Ft(a,i));for(let a=0;a<t.values.length;a++)U(s[a],t.values[a],void 0,t.values);Ge(o,s,t.values);for(let a of s)a.kind==="slot"&&U(a,void 0,void 0,[]);return[...i.childNodes]}if(Array.isArray(e)){let t=[];for(let n of e)t.push(...Vo(n));return t}return[document.createTextNode(String(e))]}function zo(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 Yo=null;function $t(e){Yo=e||null}function Fa(){return Yo||void 0}var Go=Symbol.for("webjs:registry"),Jo=Symbol.for("webjs:classToTag"),Dt=globalThis,H=Dt[Go]||(Dt[Go]=new Map),Xo=Dt[Jo]||(Dt[Jo]=new WeakMap),Bt=typeof window<"u"&&typeof customElements<"u";function ir(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=H.get(e);r?(r.cls=t,r.lazy=n):H.set(e,{cls:t,moduleUrl:null,lazy:n,tag:e}),Xo.set(t,e)}if(Bt){let e=customElements.define.bind(customElements);customElements.define=function(t,n,r){customElements.get(t)||e(t,n,r),ir(t,n)}}if(!Bt){let e=globalThis;e.customElements||(e.customElements={define(t,n){ir(t,n)},get(t){return H.get(t)?.cls},upgrade(){},whenDefined(t){let n=H.get(t);return Promise.resolve(n?.cls)}})}function sr(e,t){Bt?customElements.define(e,t):ir(e,t)}function $a(e,t){if(Bt)return;let n=H.get(e);if(n){n.moduleUrl=t;return}H.set(e,{cls:null,moduleUrl:t,lazy:!1,tag:e})}function Da(e){return H.get(e)?.cls}function Ba(e){return H.get(e)?.moduleUrl||null}function Ua(e){return H.get(e)?.lazy===!0}function Je(e){return Xo.get(e)}function Ha(){return[...H.keys()]}Ze();Rt();var ii=typeof window<"u"&&typeof HTMLElement<"u";function tc(e,t){return e!==t}function nc(e){try{return String(e)}catch{return Object.prototype.toString.call(e)}}function ni(e,t,n){if(typeof console>"u"||!console.warn)return;let r=Je(e.constructor)||e.tagName?.toLowerCase()||"unknown";console.warn(`[webjs] reflect:true property "${t}" on <${r}> holds a function (or an array carrying one), which has no HTML attribute representation. Removing "${n}" instead of stringifying it (a stringified function writes its source into the page, so a server action's body would ship to the browser). Pass a string, or drop reflect on this property.`)}function rc(){return{states:new Set,shadowRoot:null,form:null,labels:[],role:"",willValidate:!0,validity:{},validationMessage:"",setFormValue(){},setValidity(){},checkValidity(){return!0},reportValidity(){return!0}}}var Ut=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 i=t.getAttribute(n(o));return i===null?void 0:i},set(r,o,i){return typeof o=="string"&&t.setAttribute(n(o),i),!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,i)=>i.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=rc(),this.__internals}},oc=["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 oc){let t="aria-"+e.slice(4).toLowerCase();Object.defineProperty(Ut.prototype,e,{configurable:!0,get(){return this.getAttribute(t)},set(n){n==null?this.removeAttribute(t):this.setAttribute(t,String(n))}})}var ic=ii?HTMLElement:Ut,si=Symbol("webjs.factoryProps"),ri=new WeakSet,ke=class e extends ic{static shadow=!1;static hydrate=void 0;static properties={};static styles=null;static register(t){sr(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||cr(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(ri.has(t))return;let n=t;for(;n&&n!==e;){if(Object.hasOwn(n,"properties")&&!Object.hasOwn(n,si)){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://webjs.dev/docs/components.`)}n=Object.getPrototypeOf(n)}ri.add(t)}_initializeProperties(){let n=this.constructor.properties;if(!(!n||typeof n!="object")){this.__propValues={};for(let[r,o]of Object.entries(n)){let i=typeof o=="object"?o:{type:o},s=this[r];Object.defineProperty(this,r,{configurable:!0,enumerable:!0,get:()=>this.__propValues[r],set:a=>{let c=this.__propValues[r];(i.hasChanged||tc)(a,c)&&(this.__propValues[r]=a,i.reflect&&!i.state&&this._connected&&this._reflectAttribute(r,a,i),this.requestUpdate(r,c))}}),s!==void 0?this.__propValues[r]=s:i.default!==void 0&&(this.__propValues[r]=typeof i.default=="function"?i.default():i.default)}}}_reflectAttribute(t,n,r){let o=r.attribute||cr(t);if(!this.__reflectingAttribute){this.__reflectingAttribute=!0;try{if(r.converter&&r.converter.toAttribute){let i=r.converter.toAttribute(n,r.type);i==null?this.removeAttribute(o):this.setAttribute(o,i)}else typeof n=="function"?(this.removeAttribute(o),ni(this,t,o)):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)):ut(n)?(this.removeAttribute(o),ni(this,t,o)):this.setAttribute(o,String(n))}finally{this.__reflectingAttribute=!1}}}connectedCallback(){if(!ii)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 i=oi(r.slice(16));try{this[i]=pe(o)}catch(s){console.warn(`[webjs] failed to decode ${r} on <${this.tagName.toLowerCase()}>: ${s&&s.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:gn(r)?[r]:[];if(o.length){if(n){let i=this.shadowRoot.querySelector("style");i&&i.remove()}wn(this._renderRoot,o)}}else this._renderRoot=this,t.styles&&console.warn(`[webjs] <${Je(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().`),Xn(this)?Ro(this):this.__isHydrating()||this.hasAttribute("data-wj-serialized")||Io(this)?(this.removeAttribute("data-wj-serialized"),z(this),So(this)):Ao(this),Po(this),ko(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),jo(this),this.__signalWatcher&&(this.__signalWatcher.dispose(),this.__signalWatcher=void 0);for(let t of this.__controllers)t.hostDisconnected&&t.hostDisconnected()}attributeChangedCallback(t,n,r){if(this.__reflectingAttribute)return;let i=this.constructor.properties||{},s,a;for(let[u,f]of Object.entries(i))if(((typeof f=="object"?f:{type:f}).attribute||cr(u))===t){s=u,a=f;break}if(a===void 0&&(s=oi(t),a=i[s]||i[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[s]!==l&&(this[s]=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,$t(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{$t(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;let i=()=>{if(this.__pendingAsyncCommits--,o===this.__renderToken){for(let s of this.__controllers)s.hostUpdated&&s.hostUpdated();this._postCommit(t)}};r.then(i,s=>{try{o===this.__renderToken&&this._handleRenderError(s instanceof Error?s:new Error(nc(s)))}finally{i()}});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 We.subtle.Watcher(()=>{this._connected&&this.requestUpdate()}));let n;if(this.__signalWatcher.observe(()=>{n=this.render()}),n&&typeof n.then=="function")return this._commitAsync(n);xe(n,this._renderRoot)}_commitAsync(t){let n=this.__renderToken;if(this.__firstRendered&&this._overridesRenderFallback())try{let r=this.renderFallback();r!==void 0&&xe(r,this._renderRoot)}catch(r){console.error("[webjs] renderFallback() threw:",r)}return Promise.resolve(t).then(r=>{if(n===this.__renderToken)try{xe(r,this._renderRoot)}catch(o){this._handleRenderError(o instanceof Error?o:new Error(String(o)))}},r=>{n===this.__renderToken&&this._handleRenderError(r instanceof Error?r:new Error(String(r)))})}_overridesRenderFallback(){return this.renderFallback!==Ht.prototype.renderFallback}_handleRenderError(t){console.error(`[webjs] render error in <${Je(this.constructor)||this.tagName?.toLowerCase()}>:`,t);try{let n=this.renderError(t);n!==void 0&&xe(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 cr(e){return e.replace(/([A-Z])/g,"-$1").toLowerCase()}function oi(e){return e.replace(/-([a-z])/g,(t,n)=>n.toUpperCase())}function Ht(e){return new.target?Reflect.construct(ke,arguments,new.target):class extends ke{static properties=e;static[si]=!0}}Object.setPrototypeOf(Ht,ke);Ht.prototype=ke.prototype;function sc(e,t={}){return e&&typeof e=="object"&&!("call"in e)&&(t=e,e=void 0),{...e?{type:e}:{},...t}}var ai=Symbol.for("webjs.notFound"),ci=Symbol.for("webjs.redirect"),li=Symbol.for("webjs.forbidden"),ui=Symbol.for("webjs.unauthorized");function ac(){let e=new Error("webjs: notFound()");throw e.__webjs=ai,e}function cc(){let e=new Error("webjs: forbidden()");throw e.__webjs=li,e}function lc(){let e=new Error("webjs: unauthorized()");throw e.__webjs=ui,e}function uc(e,t){let n=typeof t=="object"&&t!==null?t.status:t,r=new Error(`webjs: redirect(${e})`);throw r.__webjs=ci,r.url=e,r.status=typeof n=="number"?n:void 0,r}function fc(e){return!!e&&e.__webjs===ai}function dc(e){return!!e&&e.__webjs===ci}function pc(e){return!!e&&e.__webjs===li}function hc(e){return!!e&&e.__webjs===ui}var fi=null;function mc(){if(!fi)return"";try{return fi()||""}catch{return""}}var di=null;function bc(e){if(typeof e!="string"||!e||!di)return e;try{return di(e)||e}catch{return e}}var wu=Symbol.for("webjs.suspense");function yc(e){return{_$webjsSuspense:!0,fallback:e.fallback,children:e.children}}function gc(e){return!!e&&typeof e=="object"&&e._$webjsSuspense===!0}function wc(e,t={}){let n=t.reconnect!==!1,r=0,o=!1,i=null,s=[];function a(){o||(i=new WebSocket(_c(e),t.protocols),i.onopen=c=>{for(r=0;s.length&&i&&i.readyState===WebSocket.OPEN;)i.send(s.shift());t.onOpen?.(c)},i.onmessage=c=>{let l=c.data;if(typeof l=="string")try{l=JSON.parse(l)}catch{}t.onMessage?.(l,c)},i.onerror=c=>{t.onError?.(c)},i.onclose=c=>{if(t.onClose?.(c),!o&&n){let l=Math.min(1e3*2**r++,3e4);setTimeout(a,l)}})}return a(),{send(c){let l=typeof c=="string"||c instanceof ArrayBuffer||ArrayBuffer.isView(c)?c:JSON.stringify(c);i&&i.readyState===WebSocket.OPEN?i.send(l):s.push(l)},close(c,l){o=!0;try{i?.close(c,l)}catch{}},get socket(){return i},get readyState(){return i?.readyState??3}}}function _c(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 lr="application/vnd.webjs+json";async function Ac(e,t={}){let n=new Headers(t.headers||{});n.has("accept")||n.set("accept",lr);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 ar(r),n.has("content-type")||n.set("content-type",lr));let o=await fetch(e,{...t,headers:n,body:r}),i=o.headers.get("content-type")||"",s=await o.text(),a=i.includes(lr)?s?pe(s):null:i.includes("application/json")?s?JSON.parse(s):null:s;if(!o.ok){let c=a&&a.error||`richFetch ${e} -> ${o.status}`,l=new Error(c);throw l.status=o.status,l.body=a,l}return a}Ze();Wt();Wt();dr();Kt();var Ur=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 i=this.updates.findIndex(s=>s.id===r);i!==-1&&(this.updates.splice(i,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 _l(e,t,n){let r=e.get();e.set(t);let o;try{o=await n()}catch(i){throw e.set(r),i}return o&&o.success===!1&&e.set(r),o}function Al(e,t,n){return e&&typeof e.get=="function"&&typeof e.set=="function"?_l(e,t,n):new Ur(e,t)}mr();gr();var Sl="application/vnd.webjs+stream",vl=1,El=2,Cl=3,ls=new Uint8Array(0);function Nl(e,t){let n=t||ls,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 xl(){let e=ls;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 i=e.slice(5,5+o);n.push({type:r,payload:i}),e=e.slice(5+o)}return n}}}var kl=Symbol.for("webjs.context");function Tl(e){return{__context__:kl,name:e}}var bn=class extends Event{constructor(t,n,r=!1){super("context-request",{bubbles:!0,composed:!0}),this.context=t,this.callback=n,this.subscribe=r}},Hr=class{constructor(t,{context:n,initialValue:r}){this._host=t,this._context=n,this._value=r,this._subscriptions=new Set,this._onRequest=o=>{let i=o;if(i.context===this._context)if(o.stopPropagation(),i.subscribe){let s={callback:i.callback},a=()=>{this._subscriptions.delete(s)};this._subscriptions.add(s),i.callback(this._value,a)}else i.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()}},qr=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 bn(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 jl(){return typeof window<"u"}var J={INITIAL:0,PENDING:1,COMPLETE:2,ERROR:3},Wr=class{constructor(t,{task:n,args:r,autoRun:o=!0}){this._host=t,this._taskFn=n,this._argsFn=r||(()=>[]),this._autoRun=o,this._status=J.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=J.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=J.COMPLETE,this._error=void 0}catch(r){if(t.signal.aborted)return;this._error=r,this._status=J.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 J.INITIAL:return t.initial?.();case J.PENDING:return t.pending?.();case J.COMPLETE:return t.complete?.(this._value);case J.ERROR:return t.error?.(this._error);default:return}}hostUpdate(){if(!this._autoRun||!jl())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{qr as ContextConsumer,Hr as ContextProvider,bn as ContextRequestEvent,R as FORM_ACTION_FIELD,Yr as FORM_ACTION_ID_KEY,vl as FRAME_CHUNK,El as FRAME_END,Cl as FRAME_ERROR,C as MARKER,Si as SEED_MISS,Sl as STREAM_CONTENT_TYPE,We as Signal,yc as Suspense,Wr as Task,J as TaskStatus,Ht as WebComponent,fr as WebjsFrame,pr as WebjsStream,Fa as activeActionSignal,wn as adoptStyles,Ha as allTags,bc as asset,Ps as asyncAppend,Is as asyncReplace,Ks as batch,Os as cache,zs as computed,wc as connectWS,Oc as consumeStale,Tl as createContext,xl as createFrameDecoder,Rs as createRef,mc as cspNonce,hs as css,ei as deserialize,Ti as disableClientRouter,Gs as effect,Tr as enableClientRouter,Nl as encodeFrame,Vr as escapeAttr,bs as escapeText,jc as fetchMark,cc as forbidden,ks as guard,ps as html,xn as isAsyncAppend,kn as isAsyncReplace,gn as isCSS,bt as isCache,pc as isForbidden,ht as isGuard,pt as isKeyed,Ua as isLazy,dt as isLive,fc as isNotFound,dc as isRedirect,mt as isRef,ft as isRepeat,Ys as isSignal,gc as isSuspense,L as isTemplate,Nn as isTemplateContent,hc as isUnauthorized,Cn as isUnsafeHTML,yt as isUntil,gt as isWatch,xs as keyed,Ns as live,Da as lookup,Ba as lookupModuleUrl,br as markStale,ji as navigate,ac as notFound,Al as optimistic,pe as parse,yr as parseTagHeader,$a as primeModuleUrl,sc as prop,uc as redirect,js as ref,sr as register,Rc as registerKeyTags,xe as render,hr as renderStream,lo as repeat,Ri as revalidate,Ac as richFetch,Vt as scanSeeds,Zo as serialize,$t as setActiveActionSignal,Vs as signal,ar as stringify,ms as stylesToString,Je as tagOf,kc as takeSeed,Ts as templateContent,lc as unauthorized,Cs as unsafeHTML,Ls as until,Ms as watch};
|
|
6
6
|
//# sourceMappingURL=webjs-core-browser.js.map
|