diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 41863bb..f9c41af 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -101,3 +101,4 @@ jobs: node-version: "22" - run: npm install - run: npm run build + - run: npm test diff --git a/README.md b/README.md index 7e4e697..e4781fe 100644 --- a/README.md +++ b/README.md @@ -64,6 +64,24 @@ $this->app->bind(CheckoutTheme::class, fn () => Per-channel theming: bind a closure that resolves the theme from the current channel. Same seam. +### Head hook and analytics + +The checkout is its own document, so anything the store needs in its `` +(a tag manager, a consent script, verification meta tags) goes in +`resources/views/vendor/lunar-checkout/partials/head.blade.php`. It renders +last in the head and is empty by default. + +The checkout pushes three GA4 events to `window.dataLayer` when one exists: + +- `begin_checkout`, once per checkout session, when it first loads (so the + store doesn't send its own from the button that leads here); +- `add_shipping_info` with `shipping_tier`, when a delivery method or + collection is chosen (or at pay, if the server chose it); +- `add_payment_info` with `payment_type` (the payment method handle, e.g. `card` or `on-account`), when the customer pays. + +Both carry `currency`, `value` and `items`. Nothing is sent without a data +layer, so create it in the head hook only once the shopper has consented. + --- ## 4. Tier 2 — Add your own element or gateway (no publish, no rebuild) diff --git a/package.json b/package.json index 464ab66..c47af13 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,8 @@ "description": "Build toolchain for the self-contained Lunar checkout Inertia app (spec 0008).", "scripts": { "dev": "vite", - "build": "vite build" + "build": "vite build", + "test": "node --test tests/js/*.test.js" }, "dependencies": { "@inertiajs/vue3": "^3.0", diff --git a/resources/dist/build/assets/StripeExpress-B8vLxJvM.js b/resources/dist/build/assets/StripeExpress-B8vLxJvM.js deleted file mode 100644 index 62e08e5..0000000 --- a/resources/dist/build/assets/StripeExpress-B8vLxJvM.js +++ /dev/null @@ -1,92 +0,0 @@ -function Ns(e){const t=Object.create(null);for(const r of e.split(","))t[r]=1;return r=>r in t}const ee={},ir=[],at=()=>{},la=()=>!1,_n=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Ms=e=>e.startsWith("onUpdate:"),ae=Object.assign,io=(e,t)=>{const r=e.indexOf(t);r>-1&&e.splice(r,1)},Ku=Object.prototype.hasOwnProperty,oe=(e,t)=>Ku.call(e,t),W=Array.isArray,Xt=e=>kr(e)==="[object Map]",At=e=>kr(e)==="[object Set]",Jo=e=>kr(e)==="[object Date]",Wu=e=>kr(e)==="[object RegExp]",Q=e=>typeof e=="function",de=e=>typeof e=="string",rt=e=>typeof e=="symbol",le=e=>e!==null&&typeof e=="object",oo=e=>(le(e)||Q(e))&&Q(e.then)&&Q(e.catch),aa=Object.prototype.toString,kr=e=>aa.call(e),Xu=e=>kr(e).slice(8,-1),ks=e=>kr(e)==="[object Object]",Ds=e=>de(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,lr=Ns(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Hs=e=>{const t=Object.create(null);return(r=>t[r]||(t[r]=e(r)))},Gu=/-\w/g,xe=Hs(e=>e.replace(Gu,t=>t.slice(1).toUpperCase())),Ju=/\B([A-Z])/g,Je=Hs(e=>e.replace(Ju,"-$1").toLowerCase()),js=Hs(e=>e.charAt(0).toUpperCase()+e.slice(1)),Bn=Hs(e=>e?`on${js(e)}`:""),Re=(e,t)=>!Object.is(e,t),Or=(e,...t)=>{for(let r=0;r{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:n,value:r})},Ls=e=>{const t=parseFloat(e);return isNaN(t)?e:t},zn=e=>{const t=de(e)?Number(e):NaN;return isNaN(t)?e:t};let Qo;const Us=()=>Qo||(Qo=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}),Qu="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error,Symbol",Yu=Ns(Qu);function qs(e){if(W(e)){const t={};for(let r=0;rr.startsWith("/*")?"":r).split(zu).forEach(r=>{if(r){const n=r.split(Zu);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function $s(e){let t="";if(de(e))t=e;else if(W(e))for(let r=0;rct(r,t))}const fa=e=>!!(e&&e.__v_isRef===!0),da=e=>de(e)?e:e==null?"":W(e)||le(e)&&(e.toString===aa||!Q(e.toString))?fa(e)?da(e.value):JSON.stringify(e,ha,2):String(e),ha=(e,t)=>fa(t)?ha(e,t.value):Xt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((r,[n,s],i)=>(r[ci(n,i)+" =>"]=s,r),{})}:At(t)?{[`Set(${t.size})`]:[...t.values()].map(r=>ci(r))}:rt(t)?ci(t):le(t)&&!W(t)&&!ks(t)?String(t):t,ci=(e,t="")=>{var r;return rt(e)?`Symbol(${(r=e.description)!=null?r:t})`:e};function lf(e){return e==null?"initial":typeof e=="string"?e===""?" ":e:String(e)}let Ce;class pa{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!t&&Ce&&(Ce.active?(this.parent=Ce,this.index=(Ce.scopes||(Ce.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,r;if(this.scopes){const n=this.scopes.slice();for(t=0,r=n.length;t0&&--this._on===0){if(Ce===this)Ce=this.prevScope;else{let t=Ce;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let r,n;for(r=0,n=this.effects.length;r0)return;if(tn){let t=tn;for(tn=void 0;t;){const r=t.next;t.next=void 0,t.flags&=-9,t=r}}let e;for(;en;){let t=en;for(en=void 0;t;){const r=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(n){e||(e=n)}t=r}}if(e)throw e}function ya(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function ba(e){let t,r=e.depsTail,n=r;for(;n;){const s=n.prevDep;n.version===-1?(n===r&&(r=s),co(n),cf(n)):t=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=s}e.deps=t,e.depsTail=r}function Ti(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(wa(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function wa(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===an)||(e.globalVersion=an,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Ti(e))))return;e.flags|=2;const t=e.dep,r=pe,n=mt;pe=e,mt=!0;try{ya(e);const s=e.fn(e._value);(t.version===0||Re(s,e._value))&&(e.flags|=128,e._value=s,t.version++)}catch(s){throw t.version++,s}finally{pe=r,mt=n,ba(e),e.flags&=-3}}function co(e,t=!1){const{dep:r,prevSub:n,nextSub:s}=e;if(n&&(n.nextSub=s,e.prevSub=void 0),s&&(s.prevSub=n,e.nextSub=void 0),r.subs===e&&(r.subs=n,!n&&r.computed)){r.computed.flags&=-5;for(let i=r.computed.deps;i;i=i.nextDep)co(i,!0)}!t&&!--r.sc&&r.map&&r.map.delete(r.key)}function cf(e){const{prevDep:t,nextDep:r}=e;t&&(t.nextDep=r,e.prevDep=void 0),r&&(r.prevDep=t,e.nextDep=void 0)}function bm(e,t){e.effect instanceof Zn&&(e=e.effect.fn);const r=new Zn(e);t&&ae(r,t);try{r.run()}catch(s){throw r.stop(),s}const n=r.run.bind(r);return n.effect=r,n}function wm(e){e.effect.stop()}let mt=!0;const va=[];function jt(){va.push(mt),mt=!1}function Lt(){const e=va.pop();mt=e===void 0?!0:e}function Zo(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const r=pe;pe=void 0;try{t()}finally{pe=r}}}let an=0;class uf{constructor(t,r){this.sub=t,this.dep=r,this.version=r.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Vs{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!pe||!mt||pe===this.computed)return;let r=this.activeLink;if(r===void 0||r.sub!==pe)r=this.activeLink=new uf(pe,this),pe.deps?(r.prevDep=pe.depsTail,pe.depsTail.nextDep=r,pe.depsTail=r):pe.deps=pe.depsTail=r,_a(r);else if(r.version===-1&&(r.version=this.version,r.nextDep)){const n=r.nextDep;n.prevDep=r.prevDep,r.prevDep&&(r.prevDep.nextDep=n),r.prevDep=pe.depsTail,r.nextDep=void 0,pe.depsTail.nextDep=r,pe.depsTail=r,pe.deps===r&&(pe.deps=n)}return r}trigger(t){this.version++,an++,this.notify(t)}notify(t){lo();try{for(let r=this.subs;r;r=r.prevSub)r.sub.notify()&&r.sub.dep.notify()}finally{ao()}}}function _a(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let n=t.deps;n;n=n.nextDep)_a(n)}const r=e.dep.subs;r!==e&&(e.prevSub=r,r&&(r.nextSub=e)),e.dep.subs=e}}const es=new WeakMap,ar=Symbol(""),Ri=Symbol(""),cn=Symbol("");function Ne(e,t,r){if(mt&&pe){let n=es.get(e);n||es.set(e,n=new Map);let s=n.get(r);s||(n.set(r,s=new Vs),s.map=n,s.key=r),s.track()}}function Rt(e,t,r,n,s,i){const o=es.get(e);if(!o){an++;return}const l=a=>{a&&a.trigger()};if(lo(),t==="clear")o.forEach(l);else{const a=W(e),c=a&&Ds(r);if(a&&r==="length"){const u=Number(n);o.forEach((f,g)=>{(g==="length"||g===cn||!rt(g)&&g>=u)&&l(f)})}else switch((r!==void 0||o.has(void 0))&&l(o.get(r)),c&&l(o.get(cn)),t){case"add":a?c&&l(o.get("length")):(l(o.get(ar)),Xt(e)&&l(o.get(Ri)));break;case"delete":a||(l(o.get(ar)),Xt(e)&&l(o.get(Ri)));break;case"set":Xt(e)&&l(o.get(ar));break}}ao()}function ff(e,t){const r=es.get(e);return r&&r.get(t)}function br(e){const t=se(e);return t===e||(Ne(t,"iterate",cn),tt(e))?t:Ot(e)?kt(e)?t.map(r=>Qt(ut(r))):t.map(Qt):t.map(ut)}function Ks(e){return Ne(e=se(e),"iterate",cn),e}function Pt(e,t){return Ot(e)?Qt(kt(e)?ut(t):t):ut(t)}const df={__proto__:null,[Symbol.iterator](){return fi(this,Symbol.iterator,e=>Pt(this,e))},concat(...e){return br(this).concat(...e.map(t=>W(t)?br(t):t))},entries(){return fi(this,"entries",e=>(e[1]=Pt(this,e[1]),e))},every(e,t){return Ct(this,"every",e,t,void 0,arguments)},filter(e,t){return Ct(this,"filter",e,t,r=>r.map(n=>Pt(this,n)),arguments)},find(e,t){return Ct(this,"find",e,t,r=>Pt(this,r),arguments)},findIndex(e,t){return Ct(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Ct(this,"findLast",e,t,r=>Pt(this,r),arguments)},findLastIndex(e,t){return Ct(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Ct(this,"forEach",e,t,void 0,arguments)},includes(...e){return di(this,"includes",e)},indexOf(...e){return di(this,"indexOf",e)},join(e){return br(this).join(e)},lastIndexOf(...e){return di(this,"lastIndexOf",e)},map(e,t){return Ct(this,"map",e,t,void 0,arguments)},pop(){return Ur(this,"pop")},push(...e){return Ur(this,"push",e)},reduce(e,...t){return el(this,"reduce",e,t)},reduceRight(e,...t){return el(this,"reduceRight",e,t)},shift(){return Ur(this,"shift")},some(e,t){return Ct(this,"some",e,t,void 0,arguments)},splice(...e){return Ur(this,"splice",e)},toReversed(){return br(this).toReversed()},toSorted(e){return br(this).toSorted(e)},toSpliced(...e){return br(this).toSpliced(...e)},unshift(...e){return Ur(this,"unshift",e)},values(){return fi(this,"values",e=>Pt(this,e))}};function fi(e,t,r){const n=Ks(e),s=n[t]();return n!==e&&!tt(e)&&(s._next=s.next,s.next=()=>{const i=s._next();return i.done||(i.value=r(i.value)),i}),s}const hf=Array.prototype;function Ct(e,t,r,n,s,i){const o=Ks(e),l=o!==e&&!tt(e),a=o[t];if(a!==hf[t]){const f=a.apply(e,i);return l?ut(f):f}let c=r;o!==e&&(l?c=function(f,g){return r.call(this,Pt(e,f),g,e)}:r.length>2&&(c=function(f,g){return r.call(this,f,g,e)}));const u=a.call(o,c,n);return l&&s?s(u):u}function el(e,t,r,n){const s=Ks(e),i=s!==e&&!tt(e);let o=r,l=!1;s!==e&&(i?(l=n.length===0,o=function(c,u,f){return l&&(l=!1,c=Pt(e,c)),r.call(this,c,Pt(e,u),f,e)}):r.length>3&&(o=function(c,u,f){return r.call(this,c,u,f,e)}));const a=s[t](o,...n);return l?Pt(e,a):a}function di(e,t,r){const n=se(e);Ne(n,"iterate",cn);const s=n[t](...r);return(s===-1||s===!1)&&Gs(r[0])?(r[0]=se(r[0]),n[t](...r)):s}function Ur(e,t,r=[]){jt(),lo();const n=se(e)[t].apply(e,r);return ao(),Lt(),n}const pf=Ns("__proto__,__v_isRef,__isVue"),Pa=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(rt));function gf(e){rt(e)||(e=String(e));const t=se(this);return Ne(t,"has",e),t.hasOwnProperty(e)}class Sa{constructor(t=!1,r=!1){this._isReadonly=t,this._isShallow=r}get(t,r,n){if(r==="__v_skip")return t.__v_skip;const s=this._isReadonly,i=this._isShallow;if(r==="__v_isReactive")return!s;if(r==="__v_isReadonly")return s;if(r==="__v_isShallow")return i;if(r==="__v_raw")return n===(s?i?Ta:xa:i?Ca:Oa).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(n)?t:void 0;const o=W(t);if(!s){let a;if(o&&(a=df[r]))return a;if(r==="hasOwnProperty")return gf}const l=Reflect.get(t,r,Te(t)?t:n);if((rt(r)?Pa.has(r):pf(r))||(s||Ne(t,"get",r),i))return l;if(Te(l)){const a=o&&Ds(r)?l:l.value;return s&&le(a)?Fi(a):a}return le(l)?s?Fi(l):Dr(l):l}}class Ea extends Sa{constructor(t=!1){super(!1,t)}set(t,r,n,s){let i=t[r];const o=W(t)&&Ds(r);if(!this._isShallow){const c=Ot(i);if(!tt(n)&&!Ot(n)&&(i=se(i),n=se(n)),!o&&Te(i)&&!Te(n))return c||(i.value=n),!0}const l=o?Number(r)e,Rn=e=>Reflect.getPrototypeOf(e);function vf(e,t,r){return function(...n){const s=this.__v_raw,i=se(s),o=Xt(i),l=e==="entries"||e===Symbol.iterator&&o,a=e==="keys"&&o,c=s[e](...n),u=r?Ii:t?Qt:ut;return!t&&Ne(i,"iterate",a?Ri:ar),ae(Object.create(c),{next(){const{value:f,done:g}=c.next();return g?{value:f,done:g}:{value:l?[u(f[0]),u(f[1])]:u(f),done:g}}})}}function In(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function _f(e,t){const r={get(s){const i=this.__v_raw,o=se(i),l=se(s);e||(Re(s,l)&&Ne(o,"get",s),Ne(o,"get",l));const{has:a}=Rn(o),c=t?Ii:e?Qt:ut;if(a.call(o,s))return c(i.get(s));if(a.call(o,l))return c(i.get(l));i!==o&&i.get(s)},get size(){const s=this.__v_raw;return!e&&Ne(se(s),"iterate",ar),s.size},has(s){const i=this.__v_raw,o=se(i),l=se(s);return e||(Re(s,l)&&Ne(o,"has",s),Ne(o,"has",l)),s===l?i.has(s):i.has(s)||i.has(l)},forEach(s,i){const o=this,l=o.__v_raw,a=se(l),c=t?Ii:e?Qt:ut;return!e&&Ne(a,"iterate",ar),l.forEach((u,f)=>s.call(i,c(u),c(f),o))}};return ae(r,e?{add:In("add"),set:In("set"),delete:In("delete"),clear:In("clear")}:{add(s){const i=se(this),o=Rn(i),l=se(s),a=!t&&!tt(s)&&!Ot(s)?l:s;return o.has.call(i,a)||Re(s,a)&&o.has.call(i,s)||Re(l,a)&&o.has.call(i,l)||(i.add(a),Rt(i,"add",a,a)),this},set(s,i){!t&&!tt(i)&&!Ot(i)&&(i=se(i));const o=se(this),{has:l,get:a}=Rn(o);let c=l.call(o,s);c||(s=se(s),c=l.call(o,s));const u=a.call(o,s);return o.set(s,i),c?Re(i,u)&&Rt(o,"set",s,i):Rt(o,"add",s,i),this},delete(s){const i=se(this),{has:o,get:l}=Rn(i);let a=o.call(i,s);a||(s=se(s),a=o.call(i,s)),l&&l.call(i,s);const c=i.delete(s);return a&&Rt(i,"delete",s,void 0),c},clear(){const s=se(this),i=s.size!==0,o=s.clear();return i&&Rt(s,"clear",void 0,void 0),o}}),["keys","values","entries",Symbol.iterator].forEach(s=>{r[s]=vf(s,e,t)}),r}function Ws(e,t){const r=_f(e,t);return(n,s,i)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?n:Reflect.get(oe(r,s)&&s in n?r:n,s,i)}const Pf={get:Ws(!1,!1)},Sf={get:Ws(!1,!0)},Ef={get:Ws(!0,!1)},Af={get:Ws(!0,!0)},Oa=new WeakMap,Ca=new WeakMap,xa=new WeakMap,Ta=new WeakMap;function Of(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Dr(e){return Ot(e)?e:Xs(e,!1,mf,Pf,Oa)}function Cf(e){return Xs(e,!1,bf,Sf,Ca)}function Fi(e){return Xs(e,!0,yf,Ef,xa)}function vm(e){return Xs(e,!0,wf,Af,Ta)}function Xs(e,t,r,n,s){if(!le(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const i=s.get(e);if(i)return i;const o=Of(Xu(e));if(o===0)return e;const l=new Proxy(e,o===2?n:r);return s.set(e,l),l}function kt(e){return Ot(e)?kt(e.__v_raw):!!(e&&e.__v_isReactive)}function Ot(e){return!!(e&&e.__v_isReadonly)}function tt(e){return!!(e&&e.__v_isShallow)}function Gs(e){return e?!!e.__v_raw:!1}function se(e){const t=e&&e.__v_raw;return t?se(t):e}function ts(e){return!oe(e,"__v_skip")&&Object.isExtensible(e)&&ca(e,"__v_skip",!0),e}const ut=e=>le(e)?Dr(e):e,Qt=e=>le(e)?Fi(e):e;function Te(e){return e?e.__v_isRef===!0:!1}function Ze(e){return Ia(e,!1)}function Ra(e){return Ia(e,!0)}function Ia(e,t){return Te(e)?e:new xf(e,t)}class xf{constructor(t,r){this.dep=new Vs,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=r?t:se(t),this._value=r?t:ut(t),this.__v_isShallow=r}get value(){return this.dep.track(),this._value}set value(t){const r=this._rawValue,n=this.__v_isShallow||tt(t)||Ot(t);t=n?t:se(t),Re(t,r)&&(this._rawValue=t,this._value=n?t:ut(t),this.dep.trigger())}}function _m(e){e.dep&&e.dep.trigger()}function Js(e){return Te(e)?e.value:e}function Pm(e){return Q(e)?e():Js(e)}const Tf={get:(e,t,r)=>t==="__v_raw"?e:Js(Reflect.get(e,t,r)),set:(e,t,r,n)=>{const s=e[t];return Te(s)&&!Te(r)?(s.value=r,!0):Reflect.set(e,t,r,n)}};function Fa(e){return kt(e)?e:new Proxy(e,Tf)}class Rf{constructor(t){this.__v_isRef=!0,this._value=void 0;const r=this.dep=new Vs,{get:n,set:s}=t(r.track.bind(r),r.trigger.bind(r));this._get=n,this._set=s}get value(){return this._value=this._get()}set value(t){this._set(t)}}function If(e){return new Rf(e)}function Sm(e){const t=W(e)?new Array(e.length):{};for(const r in e)t[r]=Na(e,r);return t}class Ff{constructor(t,r,n){this._object=t,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0,this._key=rt(r)?r:String(r),this._raw=se(t);let s=!0,i=t;if(!W(t)||rt(this._key)||!Ds(this._key))do s=!Gs(i)||tt(i);while(s&&(i=i.__v_raw));this._shallow=s}get value(){let t=this._object[this._key];return this._shallow&&(t=Js(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&Te(this._raw[this._key])){const r=this._object[this._key];if(Te(r)){r.value=t;return}}this._object[this._key]=t}get dep(){return ff(this._raw,this._key)}}class Nf{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function Em(e,t,r){return Te(e)?e:Q(e)?new Nf(e):le(e)&&arguments.length>1?Na(e,t,r):Ze(e)}function Na(e,t,r){return new Ff(e,t,r)}class Mf{constructor(t,r,n){this.fn=t,this.setter=r,this._value=void 0,this.dep=new Vs(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=an-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!r,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&pe!==this)return ma(this,!0),!0}get value(){const t=this.dep.track();return wa(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function kf(e,t,r=!1){let n,s;return Q(e)?n=e:(n=e.get,s=e.set),new Mf(n,s,r)}const Am={GET:"get",HAS:"has",ITERATE:"iterate"},Om={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"},Fn={},rs=new WeakMap;let Kt;function Cm(){return Kt}function Df(e,t=!1,r=Kt){if(r){let n=rs.get(r);n||rs.set(r,n=[]),n.push(e)}}function Hf(e,t,r=ee){const{immediate:n,deep:s,once:i,scheduler:o,augmentJob:l,call:a}=r,c=p=>s?p:tt(p)||s===!1||s===0?It(p,1):It(p);let u,f,g,w,v=!1,E=!1;if(Te(e)?(f=()=>e.value,v=tt(e)):kt(e)?(f=()=>c(e),v=!0):W(e)?(E=!0,v=e.some(p=>kt(p)||tt(p)),f=()=>e.map(p=>{if(Te(p))return p.value;if(kt(p))return c(p);if(Q(p))return a?a(p,2):p()})):Q(e)?t?f=a?()=>a(e,2):e:f=()=>{if(g){jt();try{g()}finally{Lt()}}const p=Kt;Kt=u;try{return a?a(e,3,[w]):e(w)}finally{Kt=p}}:f=at,t&&s){const p=f,m=s===!0?1/0:s;f=()=>It(p(),m)}const I=af(),C=()=>{u.stop(),I&&I.active&&io(I.effects,u)};if(i&&t){const p=t;t=(...m)=>{const _=p(...m);return C(),_}}let b=E?new Array(e.length).fill(Fn):Fn;const d=p=>{if(!(!(u.flags&1)||!u.dirty&&!p))if(t){const m=u.run();if(p||s||v||(E?m.some((_,S)=>Re(_,b[S])):Re(m,b))){g&&g();const _=Kt;Kt=u;try{const S=[m,b===Fn?void 0:E&&b[0]===Fn?[]:b,w];b=m,a?a(t,3,S):t(...S)}finally{Kt=_}}}else u.run()};return l&&l(d),u=new Zn(f),u.scheduler=o?()=>o(d,!1):d,w=p=>Df(p,!1,u),g=u.onStop=()=>{const p=rs.get(u);if(p){if(a)a(p,4);else for(const m of p)m();rs.delete(u)}},t?n?d(!0):b=u.run():o?o(d.bind(null,!0),!0):u.run(),C.pause=u.pause.bind(u),C.resume=u.resume.bind(u),C.stop=C,C}function It(e,t=1/0,r){if(t<=0||!le(e)||e.__v_skip||(r=r||new Map,(r.get(e)||0)>=t))return e;if(r.set(e,t),t--,Te(e))It(e.value,t,r);else if(W(e))for(let n=0;n{It(n,t,r)});else if(ks(e)){for(const n in e)It(e[n],t,r);for(const n of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,n)&&It(e[n],t,r)}return e}const Ma=[];function jf(e){Ma.push(e)}function Lf(){Ma.pop()}function xm(e,t){}const Tm={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER",COMPONENT_UPDATE:15,15:"COMPONENT_UPDATE",APP_UNMOUNT_CLEANUP:16,16:"APP_UNMOUNT_CLEANUP"},Uf={sp:"serverPrefetch hook",bc:"beforeCreate hook",c:"created hook",bm:"beforeMount hook",m:"mounted hook",bu:"beforeUpdate hook",u:"updated",bum:"beforeUnmount hook",um:"unmounted hook",a:"activated hook",da:"deactivated hook",ec:"errorCaptured hook",rtc:"renderTracked hook",rtg:"renderTriggered hook",0:"setup function",1:"render function",2:"watcher getter",3:"watcher callback",4:"watcher cleanup function",5:"native event handler",6:"component event handler",7:"vnode hook",8:"directive hook",9:"transition hook",10:"app errorHandler",11:"app warnHandler",12:"ref function",13:"async component loader",14:"scheduler flush",15:"component update",16:"app unmount cleanup function"};function Pn(e,t,r,n){try{return n?e(...n):e()}catch(s){Hr(s,t,r)}}function ft(e,t,r,n){if(Q(e)){const s=Pn(e,t,r,n);return s&&oo(s)&&s.catch(i=>{Hr(i,t,r)}),s}if(W(e)){const s=[];for(let i=0;i>>1,s=qe[n],i=un(s);i=un(r)?qe.push(e):qe.splice($f(t),0,e),e.flags|=1,Da()}}function Da(){ns||(ns=ka.then(Ha))}function ss(e){if(!W(e))Wt&&e.id===-1?Wt.splice(Pr+1,0,e):e.flags&1||(Cr.push(e),e.flags|=1);else for(let t=0;tun(r)-un(n));if(Cr.length=0,Wt){for(let r=0;re.id==null?e.flags&2?-1:1/0:e.id;function Ha(e){try{for(wt=0;wtSr.emit(s,...i)),Nn=[]):typeof window<"u"&&window.HTMLElement&&!((n=(r=window.navigator)==null?void 0:r.userAgent)!=null&&n.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(i=>{ja(i,t)}),setTimeout(()=>{Sr||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,Nn=[])},3e3)):Nn=[]}let Fe=null,Qs=null;function fn(e){const t=Fe;return Fe=e,Qs=e&&e.type.__scopeId||null,t}function Rm(e){Qs=e}function Im(){Qs=null}const Fm=e=>La;function La(e,t=Fe,r){if(!t||e._n)return e;const n=(...s)=>{n._d&&ds(-1);const i=fn(t),o=Ht.length;let l;try{l=e(...s)}finally{for(let a=Ht.length;a>o;a--)ni();fn(i),n._d&&ds(1)}return l};return n._n=!0,n._c=!0,n._d=!0,n}function Nm(e,t){if(Fe===null)return e;const r=On(Fe),n=e.dirs||(e.dirs=[]);for(let s=0;s1)return r&&Q(t)?t.call(n&&n.proxy):t}}function Mm(){return!!(Qe()||cr)}const Bf=Symbol.for("v-scx"),Vf=()=>rn(Bf);function km(e,t){return Sn(e,null,t)}function Dm(e,t){return Sn(e,null,{flush:"post"})}function Kf(e,t){return Sn(e,null,{flush:"sync"})}function Gt(e,t,r){return Sn(e,t,r)}function Sn(e,t,r=ee){const{immediate:n,deep:s,flush:i,once:o}=r,l=ae({},r),a=t&&n||!t&&i!=="post";let c;if(pr){if(i==="sync"){const w=Vf();c=w.__watcherHandles||(w.__watcherHandles=[])}else if(!a){const w=()=>{};return w.stop=at,w.resume=at,w.pause=at,w}}const u=Ie;l.call=(w,v,E)=>ft(w,u,v,E);let f=!1;i==="post"?l.scheduler=w=>{Ee(w,u&&u.suspense)}:i!=="sync"&&(f=!0,l.scheduler=(w,v)=>{v?w():fo(w)}),l.augmentJob=w=>{t&&(w.flags|=4),f&&(w.flags|=2,u&&(w.id=u.uid,w.i=u))};const g=Hf(e,t,l);return pr&&(c?c.push(g):a&&g()),g}function Wf(e,t,r){const n=this.proxy,s=de(e)?e.includes(".")?qa(n,e):()=>n[e]:e.bind(n,n);let i;Q(t)?i=t:(i=t.handler,r=t);const o=jr(this),l=Sn(s,i.bind(n),r);return o(),l}function qa(e,t){const r=t.split(".");return()=>{let n=e;for(let s=0;se.__isTeleport,sr=e=>e&&(e.disabled||e.disabled===""),Xf=e=>e&&(e.defer||e.defer===""),rl=e=>typeof SVGElement<"u"&&e instanceof SVGElement,nl=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Ni=(e,t)=>{const r=e&&e.to;return de(r)?t?t(r):null:r},Gf={name:"Teleport",__isTeleport:!0,process(e,t,r,n,s,i,o,l,a,c){const{mc:u,pc:f,pbc:g,o:{insert:w,querySelector:v,createText:E,createComment:I,parentNode:C}}=c,b=sr(t.props);let{dynamicChildren:d}=t;const p=(S,x,A)=>{S.shapeFlag&16&&u(S.children,x,A,s,i,o,l,a)},m=(S=t)=>{const x=sr(S.props),A=S.target=Ni(S.props,v),R=Mi(A,S,E,w);A&&(o!=="svg"&&rl(A)?o="svg":o!=="mathml"&&nl(A)&&(o="mathml"),s&&s.isCE&&(s.ce._teleportTargets||(s.ce._teleportTargets=new Set)).add(A),x||(p(S,A,R),Gr(S,!1)))},_=S=>{const x=()=>{if(Bt.get(S)===x){if(Bt.delete(S),sr(S.props)){const A=C(S.el)||r;p(S,A,S.anchor),Gr(S,!0)}m(S)}};Bt.set(S,x),Ee(x,i)};if(e==null){const S=t.el=E(""),x=t.anchor=E("");if(w(S,r,n),w(x,r,n),Xf(t.props)||i&&i.pendingBranch){_(t);return}b&&(p(t,r,x),Gr(t,!0)),m()}else{t.el=e.el;const S=t.anchor=e.anchor,x=Bt.get(e);if(x){x.flags|=8,Bt.delete(e),_(t);return}t.targetStart=e.targetStart;const A=t.target=e.target,R=t.targetAnchor=e.targetAnchor,O=sr(e.props),P=O?r:A,k=O?S:R;if(o==="svg"||rl(A)?o="svg":(o==="mathml"||nl(A))&&(o="mathml"),d?(g(e.dynamicChildren,d,P,s,i,o,l),Eo(e,t,!0)):a||f(e,t,P,k,s,i,o,l,!1),b)O?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Mn(t,r,S,c,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const V=Ni(t.props,v);V&&(t.target=V,Mn(t,V,null,c,0))}else O&&Mn(t,A,R,c,1);Gr(t,b)}},remove(e,t,r,{um:n,o:{remove:s}},i){const{shapeFlag:o,children:l,anchor:a,targetStart:c,targetAnchor:u,target:f,props:g}=e,w=sr(g),v=i||!w,E=Bt.get(e);if(E&&(E.flags|=8,Bt.delete(e)),f&&(s(c),s(u)),i&&s(a),!E&&(w||f)&&o&16)for(let I=0;I{e.isMounted=!0}),Zs(()=>{e.isUnmounting=!0}),e}const nt=[Function,Array],Va={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:nt,onEnter:nt,onAfterEnter:nt,onEnterCancelled:nt,onBeforeLeave:nt,onLeave:nt,onAfterLeave:nt,onLeaveCancelled:nt,onBeforeAppear:nt,onAppear:nt,onAfterAppear:nt,onAppearCancelled:nt},Ka=e=>{const t=e.subTree;return t.component?Ka(t.component):t},Qf={name:"BaseTransition",props:Va,setup(e,{slots:t}){const r=Qe(),n=Ba();return()=>{const s=t.default&&ho(t.default(),!0),i=s&&s.length?Wa(s):r.subTree?vc():void 0;if(!i)return;const o=se(e),{mode:l}=o;if(n.isLeaving)return hi(i);const a=os(i);if(!a)return hi(i);let c=dn(a,o,n,r,f=>c=f);a.type!==_e&&Yt(a,c);let u=r.subTree&&os(r.subTree);if(u&&u.type!==_e&&!gt(u,a)&&Ka(r).type!==_e){let f=dn(u,o,n,r);if(Yt(u,f),l==="out-in"&&a.type!==_e)return n.isLeaving=!0,f.afterLeave=()=>{n.isLeaving=!1,r.job.flags&8||r.update(),delete f.afterLeave,u=void 0},hi(i);l==="in-out"&&a.type!==_e?f.delayLeave=(g,w,v)=>{const E=Xa(n,u);E[String(u.key)]=u,g[it]=()=>{w(),g[it]=void 0,delete c.delayedLeave,u=void 0},c.delayedLeave=()=>{v(),delete c.delayedLeave,u=void 0}}:u=void 0}else u&&(u=void 0);return i}}};function Wa(e){let t=e[0];if(e.length>1){for(const r of e)if(r.type!==_e){t=r;break}}return t}const Yf=Qf;function Xa(e,t){const{leavingVNodes:r}=e;let n=r.get(t.type);return n||(n=Object.create(null),r.set(t.type,n)),n}function dn(e,t,r,n,s){const{appear:i,mode:o,persisted:l=!1,onBeforeEnter:a,onEnter:c,onAfterEnter:u,onEnterCancelled:f,onBeforeLeave:g,onLeave:w,onAfterLeave:v,onLeaveCancelled:E,onBeforeAppear:I,onAppear:C,onAfterAppear:b,onAppearCancelled:d}=t,p=String(e.key),m=Xa(r,e),_=(A,R)=>{A&&ft(A,n,9,R)},S=(A,R)=>{const O=R[1];_(A,R),W(A)?A.every(P=>P.length<=1)&&O():A.length<=1&&O()},x={mode:o,persisted:l,beforeEnter(A){let R=a;if(!r.isMounted)if(i)R=I||a;else return;A[it]&&A[it](!0);const O=m[p];O&>(e,O)&&O.el[it]&&O.el[it](),_(R,[A])},enter(A){if(m[p]===e)return;let R=c,O=u,P=f;if(!r.isMounted)if(i)R=C||c,O=b||u,P=d||f;else return;let k=!1;A[qr]=z=>{k||(k=!0,z?_(P,[A]):_(O,[A]),x.delayedLeave&&x.delayedLeave(),A[qr]=void 0)};const V=A[qr].bind(null,!1);R?S(R,[A,V]):V()},leave(A,R){const O=String(e.key);if(A[qr]&&A[qr](!0),r.isUnmounting)return R();_(g,[A]);let P=!1;A[it]=V=>{P||(P=!0,R(),V?_(E,[A]):_(v,[A]),A[it]=void 0,m[O]===e&&delete m[O])};const k=A[it].bind(null,!1);m[O]=e,w?S(w,[A,k]):k()},clone(A){const R=dn(A,t,r,n,s);return s&&s(R),R}};return x}function hi(e){if(En(e))return e=Ut(e),e.children=null,e}function os(e){if(!En(e))return Ys(e.type)&&e.children?Wa(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:r}=e;if(r){if(t&16)return r[0];if(t&32&&Q(r.default))return r.default()}}function Yt(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const r=e.component.subTree;Yt(Ys(r.type)&&os(r)||r,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function ho(e,t=!1,r){let n=[],s=0;for(let i=0;i1)for(let i=0;ir.value,set:i=>r.value=i})}return r}function sl(e,t){let r;return!!((r=Object.getOwnPropertyDescriptor(e,t))&&!r.configurable)}const ls=new WeakMap;function xr(e,t,r,n,s=!1){if(W(e)){e.forEach((E,I)=>xr(E,t&&(W(t)?t[I]:t),r,n,s));return}if(Dt(n)&&!s){n.shapeFlag&512&&n.type.__asyncResolved&&n.component.subTree.component&&xr(e,t,r,n.component.subTree);return}const i=n.shapeFlag&4?On(n.component):n.el,o=s?null:i,{i:l,r:a}=e,c=t&&t.r,u=l.refs===ee?l.refs={}:l.refs,f=l.setupState,g=se(f),w=f===ee?la:E=>sl(u,E)?!1:oe(g,E),v=(E,I)=>!(I&&sl(u,I));if(c!=null&&c!==a){if(il(t),de(c))u[c]=null,w(c)&&(f[c]=null);else if(Te(c)){const E=t;v(c,E.k)&&(c.value=null),E.k&&(u[E.k]=null)}}if(Q(a))Pn(a,l,12,[o,u]);else{const E=de(a),I=Te(a);if(E||I){const C=()=>{if(e.f){const b=E?w(a)?f[a]:u[a]:v()||!e.k?a.value:u[e.k];if(s)W(b)&&io(b,i);else if(W(b))b.includes(i)||b.push(i);else if(E)u[a]=[i],w(a)&&(f[a]=u[a]);else{const d=[i];v(a,e.k)&&(a.value=d),e.k&&(u[e.k]=d)}}else E?(u[a]=o,w(a)&&(f[a]=o)):I&&(v(a,e.k)&&(a.value=o),e.k&&(u[e.k]=o))};if(o){const b=()=>{C(),ls.delete(e)};b.id=-1,ls.set(e,b),Ee(b,r)}else il(e),C()}}}function il(e){const t=ls.get(e);t&&(t.flags|=8,ls.delete(e))}let ol=!1;const wr=()=>{ol||(console.error("Hydration completed but contains mismatches."),ol=!0)},zf=e=>e.namespaceURI.includes("svg")&&e.tagName!=="foreignObject",Zf=e=>e.namespaceURI.includes("MathML"),kn=e=>{if(e.nodeType===1){if(zf(e))return"svg";if(Zf(e))return"mathml"}},Ar=e=>e.nodeType===8;function ed(e){const{mt:t,p:r,o:{patchProp:n,createText:s,nextSibling:i,parentNode:o,remove:l,insert:a,createComment:c}}=e,u=(d,p)=>{if(!p.hasChildNodes()){r(null,d,p),is(),p._vnode=d;return}f(p.firstChild,d,null,null,null),is(),p._vnode=d},f=(d,p,m,_,S,x=!1)=>{x=x||!!p.dynamicChildren;const A=Ar(d)&&d.data==="[",R=()=>E(d,p,m,_,S,A),{type:O,ref:P,shapeFlag:k,patchFlag:V}=p;let z=d.nodeType;p.el=d,V===-2&&(x=!1,p.dynamicChildren=null);let q=null;switch(O){case ur:z!==3?p.children===""?(a(p.el=s(""),o(d),d),q=d):q=R():(d.data!==p.children&&(wr(),d.data=p.children),q=i(d));break;case _e:b(d)?(q=i(d),C(p.el=d.content.firstChild,d,m)):z!==8||A?q=R():q=i(d);break;case fr:if(A&&(d=i(d),z=d.nodeType),z===1||z===3){q=d;const U=!p.children.length;for(let X=0;X{x=x||!!p.dynamicChildren;const{type:A,dynamicProps:R,props:O,patchFlag:P,shapeFlag:k,dirs:V,transition:z}=p,q=A==="input"||A==="option",U=!!R;if(q||U||P!==-1){V&&_t(p,null,m,"created");let X=!1;if(b(d)){X=dc(null,z)&&m&&m.vnode.props&&m.vnode.props.appear;const ie=d.content.firstChild;if(X){const Ae=ie.getAttribute("class");Ae&&(ie.$cls=Ae),z.beforeEnter(ie)}C(ie,d,m),p.el=d=ie}if(k&16&&!(O&&(O.innerHTML||O.textContent))){let ie=w(d.firstChild,p,d,m,_,S,x);for(ie&&!Vn(d,1)&&wr();ie;){const Ae=ie;ie=ie.nextSibling,l(Ae)}}else if(k&8){let ie=p.children;ie[0]===` -`&&(d.tagName==="PRE"||d.tagName==="TEXTAREA")&&(ie=ie.slice(1));const{textContent:Ae}=d;Ae!==ie&&Ae!==ie.replace(/\r\n|\r/g,` -`)&&(Vn(d,0)||wr(),d.textContent=p.children)}if(O){if(q||U||!x||P&48){const ie=d.tagName.includes("-"),Ae=d.namespaceURI.includes("svg")?"svg":d.namespaceURI.includes("MathML")?"mathml":void 0;for(const ce in O)if(q&&(ce.endsWith("value")||ce==="indeterminate")||_n(ce)&&!lr(ce)||ce[0]==="."||ie&&!lr(ce)||R&&R.includes(ce)){if(rd(d,ce,O[ce]))continue;n(d,ce,null,O[ce],Ae,m)}}else if(O.onClick)n(d,"onClick",null,O.onClick,void 0,m);else if(P&4&&kt(O.style))for(const ie in O.style)O.style[ie]}let te;(te=O&&O.onVnodeBeforeMount)&&Ke(te,m,p),V&&_t(p,null,m,"beforeMount"),((te=O&&O.onVnodeMounted)||V||X)&&mc(()=>{te&&Ke(te,m,p),X&&z.enter(d),V&&_t(p,null,m,"mounted")},_)}return d.nextSibling},w=(d,p,m,_,S,x,A)=>{A=A||!!p.dynamicChildren;const R=p.children,O=R.length;let P=!1;for(let k=0;k{const{slotScopeIds:A}=p;A&&(S=S?S.concat(A):A);const R=o(d),O=w(i(d),p,R,m,_,S,x);return O&&Ar(O)&&O.data==="]"?i(p.anchor=O):(wr(),a(p.anchor=c("]"),R,O),O)},E=(d,p,m,_,S,x)=>{if(sd(d,p)||wr(),p.el=null,x){const O=I(d);for(;;){const P=i(d);if(P&&P!==O)l(P);else break}}const A=i(d),R=o(d);return l(d),r(null,p,R,A,m,_,kn(R),S),m&&(m.vnode.el=p.el,ri(m,p.el)),A},I=(d,p="[",m="]")=>{let _=0;for(;d;)if(d=i(d),d&&Ar(d)&&(d.data===p&&_++,d.data===m)){if(_===0)return i(d);_--}return d},C=(d,p,m)=>{const _=p.parentNode;_&&_.replaceChild(d,p);let S=m;for(;S;)S.vnode.el===p&&(S.vnode.el=S.subTree.el=d),S=S.parent},b=d=>d.nodeType===1&&d.tagName==="TEMPLATE";return[u,f]}const td=new Set(["src","srcset","href","poster"]);function rd(e,t,r){return td.has(t)?e.getAttribute(t)===(r==null?null:`${r}`):!1}const as="data-allow-mismatch",nd={0:"text",1:"children",2:"class",3:"style",4:"attribute"};function Vn(e,t){if(t===0||t===1)for(;e&&!e.hasAttribute(as);)e=e.parentElement;return mo(e&&e.getAttribute(as),t)}function mo(e,t){if(e==null)return!1;if(e==="")return!0;{const r=e.split(",");return t===0&&r.includes("children")?!0:r.includes(nd[t])}}function sd(e,t){return Vn(e.parentElement,1)||id(e)||od(t)}function id(e){return e.nodeType===1&&mo(e.getAttribute(as),1)}function od({props:e}){const t=e&&e[as];return typeof t=="string"&&mo(t,1)}const ld=Us().requestIdleCallback||(e=>setTimeout(e,1)),ad=Us().cancelIdleCallback||(e=>clearTimeout(e)),Um=(e=1e4)=>t=>{const r=ld(t,{timeout:e});return()=>ad(r)};function cd(e){const{top:t,left:r,bottom:n,right:s}=e.getBoundingClientRect(),{innerHeight:i,innerWidth:o}=window;return(t>0&&t0&&n0&&r0&&s(t,r)=>{const n=new IntersectionObserver(s=>{for(const i of s)if(i.isIntersecting){n.disconnect(),t();break}},e);return r(s=>{if(s instanceof Element){if(cd(s))return t(),n.disconnect(),!1;n.observe(s)}}),()=>n.disconnect()},$m=e=>t=>{if(e){const r=matchMedia(e);if(r.matches)t();else return r.addEventListener("change",t,{once:!0}),()=>r.removeEventListener("change",t)}},Bm=(e=[])=>(t,r)=>{de(e)&&(e=[e]);let n=!1;const s=o=>{n||(n=!0,i(),t(),o.target.dispatchEvent(new o.constructor(o.type,o)))},i=()=>{r(o=>{for(const l of e)o.removeEventListener(l,s)})};return r(o=>{for(const l of e)o.addEventListener(l,s,{once:!0})}),i};function ud(e,t){if(Ar(e)&&e.data==="["){let r=1,n=e.nextSibling;for(;n;){if(n.nodeType===1){if(t(n)===!1)break}else if(Ar(n))if(n.data==="]"){if(--r===0)break}else n.data==="["&&r++;n=n.nextSibling}}else t(e)}const Dt=e=>!!e.type.__asyncLoader;function Vm(e){Q(e)&&(e={loader:e});const{loader:t,loadingComponent:r,errorComponent:n,delay:s=200,hydrate:i,timeout:o,suspensible:l=!0,onError:a}=e;let c=null,u,f=0;const g=()=>(f++,c=null,w()),w=()=>{let v;return c||(v=c=t().catch(E=>{if(E=E instanceof Error?E:new Error(String(E)),a)return new Promise((I,C)=>{a(E,()=>I(g()),()=>C(E),f+1)});throw E}).then(E=>v!==c&&c?c:(E&&(E.__esModule||E[Symbol.toStringTag]==="Module")&&(E=E.default),u=E,E)))};return po({name:"AsyncComponentWrapper",__asyncLoader:w,__asyncHydrate(v,E,I){const C=v.isConnected;let b=!1;(E.bu||(E.bu=[])).push(()=>b=!0);const d=()=>{b||!v.parentNode||C&&!v.isConnected||I()},p=i?()=>{const m=i(d,_=>ud(v,_));m&&(E.bum||(E.bum=[])).push(m)}:d;u?p():w().then(()=>!E.isUnmounted&&p())},get __asyncResolved(){return u},setup(){const v=Ie;if(go(v),u)return()=>Dn(u,v);const E=m=>{c=null,Hr(m,v,13,!n)};if(l&&v.suspense||pr)return w().then(m=>()=>Dn(m,v)).catch(m=>(E(m),()=>n?be(n,{error:m}):null));const I=Ze(!1),C=Ze(),b=Ze(!!s);let d,p;return ei(()=>{d!=null&&clearTimeout(d),p!=null&&clearTimeout(p)}),s&&(p=setTimeout(()=>{v.isUnmounted||(b.value=!1)},s)),o!=null&&(d=setTimeout(()=>{if(!v.isUnmounted&&!I.value&&!C.value){const m=new Error(`Async component timed out after ${o}ms.`);E(m),C.value=m}},o)),w().then(()=>{v.isUnmounted||(I.value=!0,v.parent&&En(v.parent.vnode)&&v.parent.update())}).catch(m=>{if(v.isUnmounted){c=null;return}E(m),C.value=m}),()=>{if(I.value&&u)return Dn(u,v);if(C.value&&n)return be(n,{error:C.value});if(r&&!b.value)return Dn(r,v)}}})}function Dn(e,t){const{ref:r,props:n,children:s,ce:i}=t.vnode,o=be(e,n,s);return o.ref=r,o.ce=i,delete t.vnode.ce,o}const En=e=>e.type.__isKeepAlive,fd={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const r=Qe(),n=r.ctx;if(!n.renderer)return()=>{const b=t.default&&t.default();return b&&b.length===1?b[0]:b};const s=new Map,i=new Set;let o=null;const l=r.suspense,{renderer:{p:a,m:c,um:u,o:{createElement:f}}}=n,g=f("div");n.activate=(b,d,p,m,_)=>{const S=b.component;c(b,d,p,0,l),a(S.vnode,b,d,p,S,l,m,b.slotScopeIds,_),Ee(()=>{S.isDeactivated=!1,S.a&&Or(S.a);const x=b.props&&b.props.onVnodeMounted;x&&Ke(x,S.parent,b)},l)},n.deactivate=b=>{const d=b.component;us(d.m),us(d.a),c(b,g,null,1,l),Ee(()=>{d.da&&Or(d.da);const p=b.props&&b.props.onVnodeUnmounted;p&&Ke(p,d.parent,b),d.isDeactivated=!0},l)};function w(b){pi(b),u(b,r,l,!0)}function v(b){s.forEach((d,p)=>{const m=Vi(Dt(d)?d.type.__asyncResolved||{}:d.type);m&&!b(m)&&E(p)})}function E(b){const d=s.get(b);d&&(!o||!gt(d,o))?w(d):o&&pi(o),s.delete(b),i.delete(b)}Gt(()=>[e.include,e.exclude],([b,d])=>{b&&v(p=>Jr(b,p)),d&&v(p=>!Jr(d,p))},{flush:"post",deep:!0});let I=null;const C=()=>{I!=null&&(fs(r.subTree.type)?Ee(()=>{const b=Hn(r.subTree);b.component&&s.set(I,b)},r.subTree.suspense):s.set(I,Hn(r.subTree)))};return An(C),yo(C),Zs(()=>{s.forEach(b=>{const{subTree:d,suspense:p}=r,m=Hn(d);if(b.type===m.type&&b.key===m.key){pi(m);const _=m.component.da;_&&Ee(_,p);return}w(b)})}),()=>{if(I=null,!t.default)return o=null;const b=t.default(),d=b[0];if(b.length>1)return o=null,b;if(!zt(d)||!(d.shapeFlag&4)&&!(d.shapeFlag&128))return o=null,d;let p=Hn(d);if(p.type===_e)return o=null,p;const m=p.type,_=Vi(Dt(p)?p.type.__asyncResolved||{}:m),{include:S,exclude:x,max:A}=e;if(S&&(!_||!Jr(S,_))||x&&_&&Jr(x,_))return p.shapeFlag&=-257,o=p,d;const R=p.key==null?m:p.key,O=s.get(R);return p.el&&(p=Ut(p),d.shapeFlag&128&&(d.ssContent=p)),I=R,O?(p.el=O.el,p.component=O.component,p.transition&&Yt(p,p.transition),p.shapeFlag|=512,i.delete(R),i.add(R)):(i.add(R),A&&i.size>parseInt(A,10)&&E(i.values().next().value)),p.shapeFlag|=256,o=p,fs(d.type)?d:p}}},Km=fd;function Jr(e,t){return W(e)?e.some(r=>Jr(r,t)):de(e)?e.split(",").includes(t):Wu(e)?(e.lastIndex=0,e.test(t)):!1}function dd(e,t){Ga(e,"a",t)}function hd(e,t){Ga(e,"da",t)}function Ga(e,t,r=Ie){const n=e.__wdc||(e.__wdc=()=>{let s=r;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(zs(t,n,r),r){let s=r.parent;for(;s&&s.parent;)En(s.parent.vnode)&&pd(n,t,r,s),s=s.parent}}function pd(e,t,r,n){const s=zs(t,e,n,!0);ei(()=>{io(n[t],s)},r)}function pi(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Hn(e){return e.shapeFlag&128?e.ssContent:e}function zs(e,t,r=Ie,n=!1){if(r){const s=r[e]||(r[e]=[]),i=t.__weh||(t.__weh=(...o)=>{jt();const l=jr(r),a=ft(t,r,e,o);return l(),Lt(),a});return n?s.unshift(i):s.push(i),i}}const qt=e=>(t,r=Ie)=>{(!pr||e==="sp")&&zs(e,(...n)=>t(...n),r)},gd=qt("bm"),An=qt("m"),Ja=qt("bu"),yo=qt("u"),Zs=qt("bum"),ei=qt("um"),md=qt("sp"),yd=qt("rtg"),bd=qt("rtc");function wd(e,t=Ie){zs("ec",e,t)}const bo="components",vd="directives";function Wm(e,t){return wo(bo,e,!0,t)||e}const Qa=Symbol.for("v-ndc");function Xm(e){return de(e)?wo(bo,e,!1)||e:e||Qa}function Gm(e){return wo(vd,e)}function wo(e,t,r=!0,n=!1){const s=Fe||Ie;if(s){const i=s.type;if(e===bo){const l=Vi(i,!1);if(l&&(l===t||l===xe(t)||l===js(xe(t))))return i}const o=ll(s[e]||i[e],t)||ll(s.appContext[e],t);return!o&&n?i:o}}function ll(e,t){return e&&(e[t]||e[xe(t)]||e[js(xe(t))])}function Jm(e,t,r,n){let s;const i=r&&r[n],o=W(e);if(o||de(e)){const l=o&&kt(e);let a=!1,c=!1;l&&(a=!tt(e),c=Ot(e),e=Ks(e)),s=new Array(e.length);for(let u=0,f=e.length;ut(l,a,void 0,i&&i[a]));else{const l=Object.keys(e);s=new Array(l.length);for(let a=0,c=l.length;a{const i=n.fn(...s);return i&&(i.key=n.key),i}:n.fn)}return e}function Ym(e,t,r,n,s,i){if(r==null&&(r={}),Fe.ce||Fe.parent&&Dt(Fe.parent)&&Fe.parent.ce){const c=i!=null&&r.key==null?ae({},r,{key:i}):r,u=Object.keys(c).length>0;return t!=="default"&&(c.name=t),Rr(),qi(Me,null,[be("slot",c,n&&n())],u?-2:64)}let o=e[t];o&&o._c&&(o._d=!1);const l=Ht.length;Rr();let a;try{const c=o&&vo(o(r)),u=r.key||i||c&&c.key;a=qi(Me,{key:(u&&!rt(u)?u:`_${t}`)+(!c&&n?"_fb":"")},c||(n?n():[]),c&&e._===1?64:-2)}catch(c){for(let u=Ht.length;u>l;u--)ni();throw c}finally{o&&o._c&&(o._d=!0)}return!s&&a.scopeId&&(a.slotScopeIds=[a.scopeId+"-s"]),a}function vo(e){return e.some(t=>zt(t)?!(t.type===_e||t.type===Me&&!vo(t.children)):!0)?e:null}function zm(e,t){const r={};for(const n in e)r[t&&/[A-Z]/.test(n)?`on:${n}`:Bn(n)]=e[n];return r}const ki=e=>e?Pc(e)?On(e):ki(e.parent):null,nn=ae(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>ki(e.parent),$root:e=>ki(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>_o(e),$forceUpdate:e=>e.f||(e.f=()=>{fo(e.update)}),$nextTick:e=>e.n||(e.n=uo.bind(e.proxy)),$watch:e=>Wf.bind(e)}),gi=(e,t)=>e!==ee&&!e.__isScriptSetup&&oe(e,t),Di={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:r,setupState:n,data:s,props:i,accessCache:o,type:l,appContext:a}=e;if(t[0]!=="$"){const g=o[t];if(g!==void 0)switch(g){case 1:return n[t];case 2:return s[t];case 4:return r[t];case 3:return i[t]}else{if(gi(n,t))return o[t]=1,n[t];if(s!==ee&&oe(s,t))return o[t]=2,s[t];if(oe(i,t))return o[t]=3,i[t];if(r!==ee&&oe(r,t))return o[t]=4,r[t];Hi&&(o[t]=0)}}const c=nn[t];let u,f;if(c)return t==="$attrs"&&Ne(e.attrs,"get",""),c(e);if((u=l.__cssModules)&&(u=u[t]))return u;if(r!==ee&&oe(r,t))return o[t]=4,r[t];if(f=a.config.globalProperties,oe(f,t))return f[t]},set({_:e},t,r){const{data:n,setupState:s,ctx:i}=e;return gi(s,t)?(s[t]=r,!0):n!==ee&&oe(n,t)?(n[t]=r,!0):oe(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=r,!0)},has({_:{data:e,setupState:t,accessCache:r,ctx:n,appContext:s,props:i,type:o}},l){let a;return!!(r[l]||e!==ee&&l[0]!=="$"&&oe(e,l)||gi(t,l)||oe(i,l)||oe(n,l)||oe(nn,l)||oe(s.config.globalProperties,l)||(a=o.__cssModules)&&a[l])},defineProperty(e,t,r){return r.get!=null?e._.accessCache[t]=0:oe(r,"value")&&this.set(e,t,r.value,null),Reflect.defineProperty(e,t,r)}},_d=ae({},Di,{get(e,t){if(t!==Symbol.unscopables)return Di.get(e,t,e)},has(e,t){return t[0]!=="_"&&!Yu(t)}});function Zm(){return null}function ey(){return null}function ty(e){}function ry(e){}function ny(){return null}function sy(){}function iy(e,t){return null}function oy(){return Ya().slots}function ly(){return Ya().attrs}function Ya(e){const t=Qe();return t.setupContext||(t.setupContext=Ac(t))}function hn(e){return W(e)?e.reduce((t,r)=>(t[r]=null,t),{}):e}function ay(e,t){const r=hn(e);for(const n in t){if(n.startsWith("__skip"))continue;let s=r[n];s?W(s)||Q(s)?s=r[n]={type:s,default:t[n]}:s.default=t[n]:s===null&&(s=r[n]={default:t[n]}),s&&t[`__skip_${n}`]&&(s.skipFactory=!0)}return r}function cy(e,t){return!e||!t?e||t:W(e)&&W(t)?e.concat(t):ae({},hn(e),hn(t))}function uy(e,t){const r={};for(const n in e)t.includes(n)||Object.defineProperty(r,n,{enumerable:!0,get:()=>e[n]});return r}function fy(e){const t=Qe(),r=pr;let n=e();gn(),r&&Jt(!1);const s=()=>{jr(t),r&&Jt(!0)},i=()=>{Qe()!==t&&t.scope.off(),gn(),r&&Jt(!1)};return oo(n)&&(n=n.catch(o=>{throw s(),Promise.resolve().then(()=>Promise.resolve().then(i)),o})),[n,()=>{s(),Promise.resolve().then(i)}]}let Hi=!0;function Pd(e){const t=_o(e),r=e.proxy,n=e.ctx;Hi=!1,t.beforeCreate&&al(t.beforeCreate,e,"bc");const{data:s,computed:i,methods:o,watch:l,provide:a,inject:c,created:u,beforeMount:f,mounted:g,beforeUpdate:w,updated:v,activated:E,deactivated:I,beforeDestroy:C,beforeUnmount:b,destroyed:d,unmounted:p,render:m,renderTracked:_,renderTriggered:S,errorCaptured:x,serverPrefetch:A,expose:R,inheritAttrs:O,components:P,directives:k,filters:V}=t;if(c&&Sd(c,n,null),o)for(const U in o){const X=o[U];Q(X)&&(n[U]=X.bind(r))}if(s){const U=s.call(r,r);le(U)&&(e.data=Dr(U))}if(Hi=!0,i)for(const U in i){const X=i[U],te=Q(X)?X.bind(r,r):Q(X.get)?X.get.bind(r,r):at,ie=!Q(X)&&Q(X.set)?X.set.bind(r):at,Ae=me({get:te,set:ie});Object.defineProperty(n,U,{enumerable:!0,configurable:!0,get:()=>Ae.value,set:ce=>Ae.value=ce})}if(l)for(const U in l)za(l[U],n,r,U);if(a){const U=Q(a)?a.call(r):a;Reflect.ownKeys(U).forEach(X=>{Ua(X,U[X])})}u&&al(u,e,"c");function q(U,X){W(X)?X.forEach(te=>U(te.bind(r))):X&&U(X.bind(r))}if(q(gd,f),q(An,g),q(Ja,w),q(yo,v),q(dd,E),q(hd,I),q(wd,x),q(bd,_),q(yd,S),q(Zs,b),q(ei,p),q(md,A),W(R))if(R.length){const U=e.exposed||(e.exposed={});R.forEach(X=>{Object.defineProperty(U,X,{get:()=>r[X],set:te=>r[X]=te,enumerable:!0})})}else e.exposed||(e.exposed={});m&&e.render===at&&(e.render=m),O!=null&&(e.inheritAttrs=O),P&&(e.components=P),k&&(e.directives=k),A&&go(e)}function Sd(e,t,r=at){W(e)&&(e=ji(e));for(const n in e){const s=e[n];let i;le(s)?"default"in s?i=rn(s.from||n,s.default,!0):i=rn(s.from||n):i=rn(s),Te(i)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>i.value,set:o=>i.value=o}):t[n]=i}}function al(e,t,r){ft(W(e)?e.map(n=>n.bind(t.proxy)):e.bind(t.proxy),t,r)}function za(e,t,r,n){let s=n.includes(".")?qa(r,n):()=>r[n];if(de(e)){const i=t[e];Q(i)&&Gt(s,i)}else if(Q(e))Gt(s,e.bind(r));else if(le(e))if(W(e))e.forEach(i=>za(i,t,r,n));else{const i=Q(e.handler)?e.handler.bind(r):t[e.handler];Q(i)&&Gt(s,i,e)}}function _o(e){const t=e.type,{mixins:r,extends:n}=t,{mixins:s,optionsCache:i,config:{optionMergeStrategies:o}}=e.appContext,l=i.get(t);let a;return l?a=l:!s.length&&!r&&!n?a=t:(a={},s.length&&s.forEach(c=>cs(a,c,o,!0)),cs(a,t,o)),le(t)&&i.set(t,a),a}function cs(e,t,r,n=!1){const{mixins:s,extends:i}=t;i&&cs(e,i,r,!0),s&&s.forEach(o=>cs(e,o,r,!0));for(const o in t)if(!(n&&o==="expose")){const l=Ed[o]||r&&r[o];e[o]=l?l(e[o],t[o]):t[o]}return e}const Ed={data:cl,props:ul,emits:ul,methods:Qr,computed:Qr,beforeCreate:He,created:He,beforeMount:He,mounted:He,beforeUpdate:He,updated:He,beforeDestroy:He,beforeUnmount:He,destroyed:He,unmounted:He,activated:He,deactivated:He,errorCaptured:He,serverPrefetch:He,components:Qr,directives:Qr,watch:Od,provide:cl,inject:Ad};function cl(e,t){return t?e?function(){return ae(Q(e)?e.call(this,this):e,Q(t)?t.call(this,this):t)}:t:e}function Ad(e,t){return Qr(ji(e),ji(t))}function ji(e){if(W(e)){const t={};for(let r=0;r{let u,f=ee,g;return Kf(()=>{const w=e[s];Re(u,w)&&(u=w,c())}),{get(){return a(),r.get?r.get(u):u},set(w){const v=r.set?r.set(w):w;if(!Re(v,u)&&!(f!==ee&&Re(w,f)))return;const E=n.vnode.props,I=!!(E&&(t in E||s in E||i in E)&&(`onUpdate:${t}`in E||`onUpdate:${s}`in E||`onUpdate:${i}`in E));I||(u=w,c()),n.emit(`update:${t}`,v),Re(w,f)&&(Re(w,v)&&!Re(v,g)||I&&f!==ee&&!Re(v,u))&&c(),f=w,g=v}}});return l[Symbol.iterator]=()=>{let a=0;return{next(){return a<2?{value:a++?o||ee:l,done:!1}:{done:!0}}}},l}const ec=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${xe(t)}Modifiers`]||e[`${Je(t)}Modifiers`];function Td(e,t,...r){if(e.isUnmounted)return;const n=e.vnode.props||ee;let s=r;const i=t.startsWith("update:"),o=i&&ec(n,t.slice(7));o&&(o.trim&&(s=r.map(u=>de(u)?u.trim():u)),o.number&&(s=s.map(Ls)));let l,a=n[l=Bn(t)]||n[l=Bn(xe(t))];!a&&i&&(a=n[l=Bn(Je(t))]),a&&ft(a,e,6,s);const c=n[l+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,ft(c,e,6,s)}}const Rd=new WeakMap;function tc(e,t,r=!1){const n=r?Rd:t.emitsCache,s=n.get(e);if(s!==void 0)return s;const i=e.emits;let o={},l=!1;if(!Q(e)){const a=c=>{const u=tc(c,t,!0);u&&(l=!0,ae(o,u))};!r&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}return!i&&!l?(le(e)&&n.set(e,null),null):(W(i)?i.forEach(a=>o[a]=null):ae(o,i),le(e)&&n.set(e,o),o)}function ti(e,t){return!e||!_n(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),oe(e,t[0].toLowerCase()+t.slice(1))||oe(e,Je(t))||oe(e,t))}function Kn(e){const{type:t,vnode:r,proxy:n,withProxy:s,propsOptions:[i],slots:o,attrs:l,emit:a,render:c,renderCache:u,props:f,data:g,setupState:w,ctx:v,inheritAttrs:E}=e,I=fn(e);let C,b;try{if(r.shapeFlag&4){const p=s||n,m=p;C=We(c.call(m,p,u,f,w,g,v)),b=l}else{const p=t;C=We(p.length>1?p(f,{attrs:l,slots:o,emit:a}):p(f,null)),b=t.props?l:Fd(l)}}catch(p){Ht.length=0,Hr(p,e,1),C=be(_e)}let d=C;if(b&&E!==!1){const p=Object.keys(b),{shapeFlag:m}=d;p.length&&m&7&&(i&&p.some(Ms)&&(b=Nd(b,i)),d=Ut(d,b,!1,!0))}if(r.dirs&&(d=Ut(d,null,!1,!0),d.dirs=d.dirs?d.dirs.concat(r.dirs):r.dirs),r.transition){const p=Ys(d.type)&&os(d)||d;Yt(p,r.transition)}return C=d,fn(I),C}function Id(e,t=!0){let r;for(let n=0;n{let t;for(const r in e)(r==="class"||r==="style"||_n(r))&&((t||(t={}))[r]=e[r]);return t},Nd=(e,t)=>{const r={};for(const n in e)(!Ms(n)||!(n.slice(9)in t))&&(r[n]=e[n]);return r};function Md(e,t,r){const{props:n,children:s,component:i}=e,{props:o,children:l,patchFlag:a}=t,c=i.emitsOptions;if(t.dirs||t.transition)return!0;if(r&&a>=0){if(a&1024)return!0;if(a&16)return n?fl(n,o,c):!!o;if(a&8){const u=t.dynamicProps;for(let f=0;fObject.create(nc),ic=e=>Object.getPrototypeOf(e)===nc;function kd(e,t,r,n=!1){const s={},i=sc();e.propsDefaults=Object.create(null),oc(e,t,s,i);for(const o in e.propsOptions[0])o in s||(s[o]=void 0);r?e.props=n?s:Cf(s):e.type.props?e.props=s:e.props=i,e.attrs=i}function Dd(e,t,r,n){const{props:s,attrs:i,vnode:{patchFlag:o}}=e,l=se(s),[a]=e.propsOptions;let c=!1;if((n||o>0)&&!(o&16)){if(o&8){const u=e.vnode.dynamicProps;for(let f=0;f{a=!0;const[g,w]=lc(f,t,!0);ae(o,g),w&&l.push(...w)};!r&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}if(!i&&!a)return le(e)&&n.set(e,ir),ir;if(W(i))for(let u=0;ue==="_"||e==="_ctx"||e==="$stable",So=e=>W(e)?e.map(We):[We(e)],jd=(e,t,r)=>{if(t._n)return t;const n=La((...s)=>So(t(...s)),r);return n._c=!1,n},ac=(e,t,r)=>{const n=e._ctx;for(const s in e){if(Po(s))continue;const i=e[s];if(Q(i))t[s]=jd(s,i,n);else if(i!=null){const o=So(i);t[s]=()=>o}}},cc=(e,t)=>{const r=So(t);e.slots.default=()=>r},uc=(e,t,r)=>{for(const n in t)(r||!Po(n))&&(e[n]=t[n])},Ld=(e,t,r)=>{const n=e.slots=sc();if(e.vnode.shapeFlag&32){const s=t._;s?(uc(n,t,r),r&&ca(n,"_",s,!0)):ac(t,n)}else t&&cc(e,t)},Ud=(e,t,r)=>{const{vnode:n,slots:s}=e;let i=!0,o=ee;if(n.shapeFlag&32){const l=t._;l?r&&l===1?i=!1:uc(s,t,r):(i=!t.$stable,ac(t,s)),o=t}else t&&(cc(e,t),o={default:1});if(i)for(const l in s)!Po(l)&&o[l]==null&&delete s[l]},Ee=mc;function qd(e){return fc(e)}function $d(e){return fc(e,ed)}function fc(e,t){const r=Us();r.__VUE__=!0;const{insert:n,remove:s,patchProp:i,createElement:o,createText:l,createComment:a,setText:c,setElementText:u,parentNode:f,nextSibling:g,setScopeId:w=at,insertStaticContent:v}=e,E=(h,y,T,D=null,F=null,M=null,B=void 0,$=null,L=!!y.dynamicChildren)=>{if(h===y)return;h&&!gt(h,y)&&(D=mr(h),ce(h,F,M,!0),h=null),y.patchFlag===-2&&(L=!1,y.dynamicChildren=null),y.dynamicChildren&&h&&h.dynamicChildren&&h.dynamicChildren.hasOnce&&(y.dynamicChildren===ir&&(y.dynamicChildren=[]),y.dynamicChildren.hasOnce=!0);const{type:N,ref:J,shapeFlag:K}=y;switch(N){case ur:I(h,y,T,D);break;case _e:C(h,y,T,D);break;case fr:h==null&&b(y,T,D,B);break;case Me:P(h,y,T,D,F,M,B,$,L);break;default:K&1?m(h,y,T,D,F,M,B,$,L):K&6?k(h,y,T,D,F,M,B,$,L):(K&64||K&128)&&N.process(h,y,T,D,F,M,B,$,L,Z)}J!=null&&F?xr(J,h&&h.ref,M,y||h,!y):J==null&&h&&h.ref!=null&&xr(h.ref,null,M,h,!0)},I=(h,y,T,D)=>{if(h==null)n(y.el=l(y.children),T,D);else{const F=y.el=h.el;y.children!==h.children&&c(F,y.children)}},C=(h,y,T,D)=>{h==null?n(y.el=a(y.children||""),T,D):y.el=h.el},b=(h,y,T,D)=>{[h.el,h.anchor]=v(h.children,y,T,D,h.el,h.anchor)},d=({el:h,anchor:y},T,D)=>{let F;for(;h&&h!==y;)F=g(h),n(h,T,D),h=F;n(y,T,D)},p=({el:h,anchor:y})=>{let T;for(;h&&h!==y;)T=g(h),s(h),h=T;s(y)},m=(h,y,T,D,F,M,B,$,L)=>{if(y.type==="svg"?B="svg":y.type==="math"&&(B="mathml"),h==null)_(y,T,D,F,M,B,$,L);else{const N=h.el&&h.el._isVueCE?h.el:null;try{N&&N._beginPatch(),A(h,y,F,M,B,$,L)}finally{N&&N._endPatch()}}},_=(h,y,T,D,F,M,B,$)=>{let L,N;const{props:J,shapeFlag:K,transition:G,dirs:Y}=h;if(L=h.el=o(h.type,M,J&&J.is,J),K&8?u(L,h.children):K&16&&x(h.children,L,null,D,F,mi(h,M),B,$),Y&&_t(h,null,D,"created"),S(L,h,h.scopeId,B,D),J){for(const he in J)he!=="value"&&!lr(he)&&i(L,he,null,J[he],M,D);"value"in J&&i(L,"value",null,J.value,M),(N=J.onVnodeBeforeMount)&&Ke(N,D,h)}Y&&_t(h,null,D,"beforeMount");const ne=dc(F,G);ne&&G.beforeEnter(L),n(L,y,T),((N=J&&J.onVnodeMounted)||ne||Y)&&Ee(()=>{N&&Ke(N,D,h),ne&&G.enter(L),Y&&_t(h,null,D,"mounted")},F)},S=(h,y,T,D,F)=>{if(T&&w(h,T),D)for(let M=0;M{for(let N=L;N{const $=y.el=h.el;let{patchFlag:L,dynamicChildren:N,dirs:J}=y;L|=h.patchFlag&16;const K=h.props||ee,G=y.props||ee;let Y;if(T&&rr(T,!1),(Y=G.onVnodeBeforeUpdate)&&Ke(Y,T,y,h),J&&_t(y,h,T,"beforeUpdate"),T&&rr(T,!0),N&&(!h.dynamicChildren||h.dynamicChildren.length!==N.length)&&(L=0,B=!1,N=null),(K.innerHTML&&G.innerHTML==null||K.textContent&&G.textContent==null)&&u($,""),N?R(h.dynamicChildren,N,$,T,D,mi(y,F),M):B||X(h,y,$,null,T,D,mi(y,F),M,!1),L>0){if(L&16)O($,K,G,T,F);else if(L&2&&K.class!==G.class&&i($,"class",null,G.class,F),L&4&&i($,"style",K.style,G.style,F),L&8){const ne=y.dynamicProps;for(let he=0;he{Y&&Ke(Y,T,y,h),J&&_t(y,h,T,"updated")},D)},R=(h,y,T,D,F,M,B)=>{for(let $=0;${if(y!==T){if(y!==ee)for(const M in y)!lr(M)&&!(M in T)&&i(h,M,y[M],null,F,D);for(const M in T){if(lr(M))continue;const B=T[M],$=y[M];B!==$&&M!=="value"&&i(h,M,$,B,F,D)}"value"in T&&i(h,"value",y.value,T.value,F)}},P=(h,y,T,D,F,M,B,$,L)=>{const N=y.el=h?h.el:l(""),J=y.anchor=h?h.anchor:l("");let{patchFlag:K,dynamicChildren:G,slotScopeIds:Y}=y;Y&&($=$?$.concat(Y):Y),h==null?(n(N,T,D),n(J,T,D),x(y.children||[],T,J,F,M,B,$,L)):K>0&&K&64&&G&&h.dynamicChildren&&h.dynamicChildren.length===G.length?(R(h.dynamicChildren,G,T,F,M,B,$),(y.key!=null||F&&y===F.subTree)&&Eo(h,y,!0)):X(h,y,T,J,F,M,B,$,L)},k=(h,y,T,D,F,M,B,$,L)=>{y.slotScopeIds=$,h==null?y.shapeFlag&512?F.ctx.activate(y,T,D,B,L):V(y,T,D,F,M,B,L):z(h,y,L)},V=(h,y,T,D,F,M,B)=>{const $=h.component=_c(h,D,F);if(En(h)&&($.ctx.renderer=Z),Sc($,!1,B),$.asyncDep){if(F&&F.registerDep($,q,B),!h.el){const L=$.subTree=be(_e);C(null,L,y,T),h.placeholder=L.el}}else q($,h,y,T,F,M,B)},z=(h,y,T)=>{const D=y.component=h.component;if(Md(h,y,T))if(D.asyncDep&&!D.asyncResolved){y.el=h.el,U(D,y,T);return}else D.next=y,D.update();else y.el=h.el,D.vnode=y},q=(h,y,T,D,F,M,B)=>{const $=()=>{if(h.isMounted){let{next:K,bu:G,u:Y,parent:ne,vnode:he}=h;{const Ye=hc(h);if(Ye){K&&(K.el=he.el,U(h,K,B)),Ye.asyncDep.then(()=>{Ee(()=>{h.isUnmounted||N()},F)});return}}let ue=K,Pe;rr(h,!1),K?(K.el=he.el,U(h,K,B)):K=he,G&&Or(G),(Pe=K.props&&K.props.onVnodeBeforeUpdate)&&Ke(Pe,ne,K,he),rr(h,!0);const Oe=Kn(h),dt=h.subTree;h.subTree=Oe,E(dt,Oe,f(dt.el),mr(dt),h,F,M),K.el=Oe.el,ue===null&&ri(h,Oe.el),Y&&Ee(Y,F),(Pe=K.props&&K.props.onVnodeUpdated)&&Ee(()=>Ke(Pe,ne,K,he),F)}else{let K;const{el:G,props:Y}=y,{bm:ne,m:he,parent:ue,root:Pe,type:Oe}=h,dt=Dt(y);if(rr(h,!1),ne&&Or(ne),!dt&&(K=Y&&Y.onVnodeBeforeMount)&&Ke(K,ue,y),rr(h,!0),G&&we){const Ye=()=>{h.subTree=Kn(h),we(G,h.subTree,h,F,null)};dt&&Oe.__asyncHydrate?Oe.__asyncHydrate(G,h,Ye):Ye()}else{Pe.ce&&Pe.ce._hasShadowRoot()&&Pe.ce._injectChildStyle(Oe,h.parent?h.parent.type:void 0);const Ye=h.subTree=Kn(h);E(null,Ye,T,D,h,F,M),y.el=Ye.el}if(he&&Ee(he,F),!dt&&(K=Y&&Y.onVnodeMounted)){const Ye=y;Ee(()=>Ke(K,ue,Ye),F)}(y.shapeFlag&256||ue&&Dt(ue.vnode)&&ue.vnode.shapeFlag&256)&&h.a&&Ee(h.a,F),h.isMounted=!0,y=T=D=null}};h.scope.on();const L=h.effect=new Zn($);h.scope.off();const N=h.update=L.run.bind(L),J=h.job=L.runIfDirty.bind(L);J.i=h,J.id=h.uid,L.scheduler=()=>fo(J),rr(h,!0),N()},U=(h,y,T)=>{y.component=h;const D=h.vnode.props;h.vnode=y,h.next=null,Dd(h,y.props,D,T),Ud(h,y.children,T),jt(),tl(h),Lt()},X=(h,y,T,D,F,M,B,$,L=!1)=>{const N=h&&h.children,J=h?h.shapeFlag:0,K=y.children,{patchFlag:G,shapeFlag:Y}=y;if(G>0){if(G&128){ie(N,K,T,D,F,M,B,$,L);return}else if(G&256){te(N,K,T,D,F,M,B,$,L);return}}Y&8?(J&16&&tr(N,F,M),K!==N&&u(T,K)):J&16?Y&16?ie(N,K,T,D,F,M,B,$,L):tr(N,F,M,!0):(J&8&&u(T,""),Y&16&&x(K,T,D,F,M,B,$,L))},te=(h,y,T,D,F,M,B,$,L)=>{h=h||ir,y=y||ir;const N=h.length,J=y.length,K=Math.min(N,J);let G;for(G=0;GJ?tr(h,F,M,!0,!1,K):x(y,T,D,F,M,B,$,L,K)},ie=(h,y,T,D,F,M,B,$,L)=>{let N=0;const J=y.length;let K=h.length-1,G=J-1;for(;N<=K&&N<=G;){const Y=h[N],ne=y[N]=L?Tt(y[N]):We(y[N]);if(gt(Y,ne))E(Y,ne,T,null,F,M,B,$,L);else break;N++}for(;N<=K&&N<=G;){const Y=h[K],ne=y[G]=L?Tt(y[G]):We(y[G]);if(gt(Y,ne))E(Y,ne,T,null,F,M,B,$,L);else break;K--,G--}if(N>K){if(N<=G){const Y=G+1,ne=YG)for(;N<=K;)ce(h[N],F,M,!0),N++;else{const Y=N,ne=N,he=new Map;for(N=ne;N<=G;N++){const ze=y[N]=L?Tt(y[N]):We(y[N]);ze.key!=null&&he.set(ze.key,N)}let ue,Pe=0;const Oe=G-ne+1;let dt=!1,Ye=0;const Lr=new Array(Oe);for(N=0;N=Oe){ce(ze,F,M,!0);continue}let yt;if(ze.key!=null)yt=he.get(ze.key);else for(ue=ne;ue<=G;ue++)if(Lr[ue-ne]===0&>(ze,y[ue])){yt=ue;break}yt===void 0?ce(ze,F,M,!0):(Lr[yt-ne]=N+1,yt>=Ye?Ye=yt:dt=!0,E(ze,y[yt],T,null,F,M,B,$,L),Pe++)}const Wo=dt?Bd(Lr):ir;for(ue=Wo.length-1,N=Oe-1;N>=0;N--){const ze=ne+N,yt=y[ze],Xo=y[ze+1],Go=ze+1{const{el:M,type:B,transition:$,children:L,shapeFlag:N}=h;if(N&6){Ae(h.component.subTree,y,T,D);return}if(N&128){h.suspense.move(y,T,D);return}if(N&64){B.move(h,y,T,Z);return}if(B===Me){n(M,y,T);for(let K=0;K$.enter(M),F));else{const{leave:K,delayLeave:G,afterLeave:Y}=$,ne=()=>{h.ctx.isUnmounted?s(M):n(M,y,T)},he=()=>{const ue=M._isLeaving||!!M[it];M._isLeaving&&M[it](!0),$.persisted&&!ue?ne():K(M,()=>{ne(),Y&&Y()})};G?G(M,ne,he):he()}else n(M,y,T)},ce=(h,y,T,D=!1,F=!1)=>{const{type:M,props:B,ref:$,children:L,dynamicChildren:N,shapeFlag:J,patchFlag:K,dirs:G,cacheIndex:Y,memo:ne}=h;if((K===-2||N&&N.hasOnce)&&(F=!1),$!=null&&(jt(),xr($,null,T,h,!0),Lt()),Y!=null&&(!h.ctx||h.ctx===y)&&(y.renderCache[Y]=void 0),J&256){y.ctx.deactivate(h);return}const he=J&1&&G,ue=!Dt(h);let Pe;if(ue&&(Pe=B&&B.onVnodeBeforeUnmount)&&Ke(Pe,y,h),J&6)ai(h.component,T,D);else{if(J&128){h.suspense.unmount(T,D);return}he&&_t(h,null,y,"beforeUnmount"),J&64?h.type.remove(h,y,T,Z,D):N&&!N.hasOnce&&(M!==Me||K>0&&K&64)?tr(N,y,T,!1,!0):(M===Me&&K&384||!F&&J&16)&&tr(L,y,T),D&&xn(h)}const Oe=ne!=null&&Y==null;(ue&&(Pe=B&&B.onVnodeUnmounted)||he||Oe)&&Ee(()=>{Pe&&Ke(Pe,y,h),he&&_t(h,null,y,"unmounted"),Oe&&(h.el=null)},T)},xn=h=>{const{type:y,el:T,anchor:D,transition:F}=h;if(y===Me){Tn(T,D);return}if(y===fr){p(h),F&&!F.persisted&&F.afterLeave&&F.afterLeave();return}const M=()=>{s(T),F&&!F.persisted&&F.afterLeave&&F.afterLeave()};if(h.shapeFlag&1&&F&&!F.persisted){const{leave:B,delayLeave:$}=F,L=()=>B(T,M);$?$(h.el,M,L):L()}else M()},Tn=(h,y)=>{let T;for(;h!==y;)T=g(h),s(h),h=T;s(y)},ai=(h,y,T)=>{const{bum:D,scope:F,job:M,subTree:B,um:$,m:L,a:N}=h;us(L),us(N),D&&Or(D),F.stop(),M?(M.flags|=8,ce(B,h,y,T)):h.vnode.el&&B&&(B.transition=h.vnode.transition,ce(B,h,y,T)),$&&Ee($,y),Ee(()=>{h.isUnmounted=!0},y)},tr=(h,y,T,D=!1,F=!1,M=0)=>{for(let B=M;B{if(h.shapeFlag&6)return mr(h.component.subTree);if(h.shapeFlag&128)return h.suspense.next();const y=g(h.anchor||h.el),T=y&&y[$a];return T?g(T):y};let yr=!1;const H=(h,y,T)=>{let D;h==null?y._vnode&&(ce(y._vnode,null,null,!0),D=y._vnode.component):E(y._vnode||null,h,y,null,null,null,T),y._vnode=h,yr||(yr=!0,tl(D),is(),yr=!1)},Z={p:E,um:ce,m:Ae,r:xn,mt:V,mc:x,pc:X,pbc:R,n:mr,o:e};let De,we;return t&&([De,we]=t(Z)),{render:H,hydrate:De,createApp:xd(H,De)}}function mi({type:e,props:t},r){return r==="svg"&&e==="foreignObject"||r==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:r}function rr({effect:e,job:t},r){r?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function dc(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Eo(e,t,r=!1){const n=e.children,s=t.children;if(W(n)&&W(s))for(let i=0;i>1,e[r[l]]0&&(t[n]=r[i-1]),r[i]=n)}}for(i=r.length,o=r[i-1];i-- >0;)r[i]=o,o=t[o];return r}function hc(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:hc(t)}function us(e){if(e)for(let t=0;te.__isSuspense;let Ui=0;const Vd={name:"Suspense",__isSuspense:!0,process(e,t,r,n,s,i,o,l,a,c){if(e==null)Kd(t,r,n,s,i,o,l,a,c);else{if(i&&i.deps>0&&!e.suspense.isInFallback&&!i.isHydrating){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}Wd(e,t,r,n,s,o,l,a,c)}},hydrate:Xd,normalize:Gd},hy=Vd;function pn(e,t){const r=e.props&&e.props[t];Q(r)&&r()}function Kd(e,t,r,n,s,i,o,l,a){const{p:c,o:{createElement:u}}=a,f=u("div"),g=e.suspense=gc(e,s,n,t,f,r,i,o,l,a);c(null,g.pendingBranch=e.ssContent,f,null,n,g,i,o),g.deps>0?(pn(e,"onPending"),pn(e,"onFallback"),c(null,e.ssFallback,t,r,n,null,i,o),Tr(g,e.ssFallback)):g.resolve(!1,!0)}function Wd(e,t,r,n,s,i,o,l,{p:a,um:c,o:{createElement:u}}){const f=t.suspense=e.suspense;f.vnode=t,t.el=e.el;const g=t.ssContent,w=t.ssFallback,{activeBranch:v,pendingBranch:E,isInFallback:I,isHydrating:C}=f;if(E)f.pendingBranch=g,gt(E,g)?(f.deps++,a(E,g,C?r:f.hiddenContainer,null,s,f,i,o,l),f.deps--,f.deps<=0?f.resolve():I&&!C&&!f.isFallbackMountPending&&(a(v,w,r,n,s,null,i,o,l),Tr(f,w))):(f.pendingId=Ui++,C?(f.isHydrating=!1,f.activeBranch=E):c(E,s,f),f.deps=0,f.effects.length=0,f.hiddenContainer=u("div"),I?(a(null,g,f.hiddenContainer,null,s,f,i,o,l),f.deps<=0?f.resolve():f.isFallbackMountPending||(a(v,w,r,n,s,null,i,o,l),Tr(f,w))):v&>(v,g)?(a(v,g,r,n,s,f,i,o,l),f.resolve(!0)):(a(null,g,f.hiddenContainer,null,s,f,i,o,l),f.deps<=0&&f.resolve()));else if(v&>(v,g))a(v,g,r,n,s,f,i,o,l),Tr(f,g);else if(pn(t,"onPending"),f.pendingBranch=g,g.shapeFlag&512?f.pendingId=g.component.suspenseId:f.pendingId=Ui++,a(null,g,f.hiddenContainer,null,s,f,i,o,l),f.deps<=0)f.resolve();else{const{timeout:b,pendingId:d}=f;b>0?setTimeout(()=>{f.pendingId===d&&f.fallback(w)},b):b===0&&f.fallback(w)}}function gc(e,t,r,n,s,i,o,l,a,c,u=!1){const{p:f,m:g,um:w,n:v,o:{parentNode:E,remove:I}}=c;let C;const b=Jd(e);b&&t&&t.pendingBranch&&(C=t.pendingId,t.deps++);const d=e.props?zn(e.props.timeout):void 0,p=i,m={vnode:e,parent:t,parentComponent:r,namespace:o,container:n,hiddenContainer:s,deps:0,pendingId:Ui++,timeout:typeof d=="number"?d:-1,activeBranch:null,isFallbackMountPending:!1,pendingBranch:null,isInFallback:!u,isHydrating:u,isUnmounted:!1,effects:[],resolve(_=!1,S=!1){const{vnode:x,activeBranch:A,pendingBranch:R,pendingId:O,effects:P,parentComponent:k,container:V,isInFallback:z}=m;let q=!1;if(m.isHydrating)m.isHydrating=!1;else if(!_){q=A&&R.transition&&R.transition.mode==="out-in";let te=!1;q&&(A.transition.afterLeave=()=>{O===m.pendingId&&(g(R,V,i===p&&!te?v(A):i,0),ss(P),z&&x.ssFallback&&(x.ssFallback.el=null))}),A&&!m.isFallbackMountPending&&(E(A.el)===V&&(i=v(A),te=!0),w(A,k,m,!0),!q&&z&&x.ssFallback&&Ee(()=>x.ssFallback.el=null,m)),q||g(R,V,i,0)}m.isFallbackMountPending=!1,Tr(m,R),m.pendingBranch=null,m.isInFallback=!1;let U=m.parent,X=!1;for(;U;){if(U.pendingBranch){for(let te=0;te{if(m.isFallbackMountPending=!1,!m.isInFallback)return;const z=m.vnode.ssFallback;f(null,z,R,P,A,null,O,l,a),Tr(m,z)},V=_.transition&&_.transition.mode==="out-in";V&&(m.isFallbackMountPending=!0,x.transition.afterLeave=k),m.isInFallback=!0,w(x,A,null,!0),V||k()},move(_,S,x){m.activeBranch&&g(m.activeBranch,_,S,x),m.container=_},next(){return m.activeBranch&&v(m.activeBranch)},registerDep(_,S,x){const A=!!m.pendingBranch;A&&m.deps++;const R=_.vnode.el;_.asyncDep.catch(O=>{Hr(O,_,0)}).then(O=>{if(_.isUnmounted||m.isUnmounted||m.pendingId!==_.suspenseId)return;if(gn(),R&&!_.scope.active){A&&--m.deps===0&&m.resolve();return}_.asyncResolved=!0;const{vnode:P}=_;$i(_,O,!1),R&&(P.el=R);const k=!R&&_.subTree.el;S(_,P,E(R||_.subTree.el),R?null:v(_.subTree),m,o,x),k&&(P.placeholder=null,I(k)),ri(_,P.el),A&&--m.deps===0&&m.resolve()})},unmount(_,S){m.isUnmounted=!0,m.activeBranch&&w(m.activeBranch,r,_,S),m.pendingBranch&&w(m.pendingBranch,r,_,S)}};return m}function Xd(e,t,r,n,s,i,o,l,a){const c=t.suspense=gc(t,n,r,e.parentNode,document.createElement("div"),null,s,i,o,l,!0),u=a(e,c.pendingBranch=t.ssContent,r,c,i,o);return c.deps===0&&c.resolve(!1,!0),u}function Gd(e){const{shapeFlag:t,children:r}=e,n=t&32;e.ssContent=hl(n?r.default:r),e.ssFallback=n?hl(r.fallback):be(_e)}function hl(e){let t;if(Q(e)){const r=hr&&e._c;r&&(e._d=!1,Rr()),e=e(),r&&(e._d=!0,t=ke,ni())}return W(e)&&(e=Id(e)),e=We(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(r=>r!==e)),e}function mc(e,t){t&&t.pendingBranch?W(e)?t.effects.push(...e):t.effects.push(e):ss(e)}function Tr(e,t){e.activeBranch=t;const{vnode:r,parentComponent:n}=e;let s=t.el;for(;!s&&t.component;)t=t.component.subTree,s=t.el;r.el=s,n&&n.subTree===r&&(n.vnode.el=s,ri(n,s))}function Jd(e){const t=e.props&&e.props.suspensible;return t!=null&&t!==!1}const Me=Symbol.for("v-fgt"),ur=Symbol.for("v-txt"),_e=Symbol.for("v-cmt"),fr=Symbol.for("v-stc"),Ht=[];let ke=null;function Rr(e=!1){Ht.push(ke=e?null:[])}function ni(){Ht.pop(),ke=Ht[Ht.length-1]||null}let hr=1;function ds(e,t=!1){hr+=e,e<0&&ke&&t&&(ke.hasOnce=!0)}function yc(e){return e.dynamicChildren=hr>0?ke||ir:null,ni(),hr>0&&ke&&ke.push(e),e}function pl(e,t,r,n,s,i){return yc(Ao(e,t,r,n,s,i,!0))}function qi(e,t,r,n,s){return yc(be(e,t,r,n,s,!0))}function zt(e){return e?e.__v_isVNode===!0:!1}function gt(e,t){return e.type===t.type&&e.key===t.key}function py(e){}const bc=({key:e})=>e??null,Wn=({ref:e,ref_key:t,ref_for:r})=>(typeof e=="number"&&(e=""+e),e!=null?de(e)||Te(e)||Q(e)?{i:Fe,r:e,k:t,f:!!r}:e:null);function Ao(e,t=null,r=null,n=0,s=null,i=e===Me?0:1,o=!1,l=!1){const a={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&bc(t),ref:t&&Wn(t),scopeId:Qs,slotScopeIds:null,children:r,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:n,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:Fe};return l?(hs(a,r),i&128&&e.normalize(a)):r&&(a.shapeFlag|=de(r)?8:16),hr>0&&!o&&ke&&(a.patchFlag>0||i&6)&&a.patchFlag!==32&&ke.push(a),a}const be=Qd;function Qd(e,t=null,r=null,n=0,s=null,i=!1){if((!e||e===Qa)&&(e=_e),zt(e)){const l=Ut(e,t,!0);return r&&hs(l,r),hr>0&&!i&&ke&&(l.shapeFlag&6?ke[ke.indexOf(e)]=l:ke.push(l)),l.patchFlag=-2,l}if(nh(e)&&(e=e.__vccOpts),t){t=Yd(t);let{class:l,style:a}=t;l&&!de(l)&&(t.class=$s(l)),le(a)&&(Gs(a)&&!W(a)&&(a=ae({},a)),t.style=qs(a))}const o=de(e)?1:fs(e)?128:Ys(e)?64:le(e)?4:Q(e)?2:0;return Ao(e,t,r,n,s,o,i,!0)}function Yd(e){return e?Gs(e)||ic(e)?ae({},e):e:null}function Ut(e,t,r=!1,n=!1){const{props:s,ref:i,patchFlag:o,children:l,transition:a}=e,c=t?zd(s||{},t):s,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&bc(c),ref:t&&t.ref?r&&i?W(i)?i.concat(Wn(t)):[i,Wn(t)]:Wn(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Me?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:a,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ut(e.ssContent),ssFallback:e.ssFallback&&Ut(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce,cacheIndex:e.cacheIndex};return a&&n&&Yt(u,a.clone(u)),u}function wc(e=" ",t=0){return be(ur,null,e,t)}function gy(e,t){const r=be(fr,null,e);return r.staticCount=t,r}function vc(e="",t=!1){return t?(Rr(),qi(_e,null,e)):be(_e,null,e)}function We(e){return e==null||typeof e=="boolean"?be(_e):W(e)?be(Me,null,e.slice()):zt(e)?Tt(e):be(ur,null,String(e))}function Tt(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Ut(e)}function hs(e,t){let r=0;const{shapeFlag:n}=e;if(t==null)t=null;else if(W(t))r=16;else if(typeof t=="object")if(n&65){const s=t.default;s&&(s._c&&(s._d=!1),hs(e,s()),s._c&&(s._d=!0));return}else{r=32;const s=t._;!s&&!ic(t)?t._ctx=Fe:s===3&&Fe&&(Fe.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(Q(t)){if(n&65){hs(e,{default:t});return}t={default:t,_ctx:Fe},r=32}else t=String(t),n&64?(r=16,t=[wc(t)]):r=8;e.children=t,e.shapeFlag|=r}function zd(...e){const t={};for(let r=0;rIe||Fe;let ps,Jt;{const e=Us(),t=(r,n)=>{let s;return(s=e[r])||(s=e[r]=[]),s.push(n),i=>{s.length>1?s.forEach(o=>o(i)):s[0](i)}};ps=t("__VUE_INSTANCE_SETTERS__",r=>Ie=r),Jt=t("__VUE_SSR_SETTERS__",r=>pr=r)}const jr=e=>{const t=Ie;return ps(e),e.scope.on(),()=>{e.scope.off(),ps(t)}},gn=()=>{Ie&&Ie.scope.off(),ps(null)};function Pc(e){return e.vnode.shapeFlag&4}let pr=!1;function Sc(e,t=!1,r=!1){t&&Jt(t);const{props:n,children:s}=e.vnode,i=Pc(e);kd(e,n,i,t),Ld(e,s,r||t);const o=i?th(e,t):void 0;return t&&Jt(!1),o}function th(e,t){const r=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Di);const{setup:n}=r;if(n){jt();const s=e.setupContext=n.length>1?Ac(e):null,i=jr(e),o=Pn(n,e,0,[e.props,s]),l=oo(o);if(Lt(),i(),(l||e.sp)&&!Dt(e)&&go(e),l){if(o.then(gn,gn),t)return o.then(a=>{Jt(!0);try{$i(e,a,t)}finally{Jt(!1)}}).catch(a=>{Hr(a,e,0)});e.asyncDep=o}else $i(e,o,t)}else Ec(e,t)}function $i(e,t,r){Q(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:le(t)&&(e.setupState=Fa(t)),Ec(e,r)}let gs,Bi;function my(e){gs=e,Bi=t=>{t.render._rc&&(t.withProxy=new Proxy(t.ctx,_d))}}const yy=()=>!gs;function Ec(e,t,r){const n=e.type;if(!e.render){if(!t&&gs&&!n.render){const s=n.template||_o(e).template;if(s){const{isCustomElement:i,compilerOptions:o}=e.appContext.config,{delimiters:l,compilerOptions:a}=n,c=ae(ae({isCustomElement:i,delimiters:l},o),a);n.render=gs(s,c)}}e.render=n.render||at,Bi&&Bi(e)}{const s=jr(e);jt();try{Pd(e)}finally{Lt(),s()}}}const rh={get(e,t){return Ne(e,"get",""),e[t]}};function Ac(e){const t=r=>{e.exposed=r||{}};return{attrs:new Proxy(e.attrs,rh),slots:e.slots,emit:e.emit,expose:t}}function On(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Fa(ts(e.exposed)),{get(t,r){if(r in t)return t[r];if(r in nn)return nn[r](e)},has(t,r){return r in t||r in nn}})):e.proxy}function Vi(e,t=!0){return Q(e)?e.displayName||e.name:e.name||t&&e.__name}function nh(e){return Q(e)&&"__vccOpts"in e}const me=(e,t)=>kf(e,t,pr);function dr(e,t,r){try{ds(-1);const n=arguments.length;return n===2?le(t)&&!W(t)?zt(t)?be(e,null,[t]):be(e,t):be(e,null,t):(n>3?r=Array.prototype.slice.call(arguments,2):n===3&&zt(r)&&(r=[r]),be(e,t,r))}finally{ds(1)}}function by(){}function wy(e,t,r,n){const s=r[n];if(s&&sh(s,e))return s;const i=t();return i.memo=e.slice(),i.cacheIndex=n,r[n]=i}function sh(e,t){const r=e.memo;if(r.length!=t.length)return!1;for(let n=0;n0&&ke&&ke.push(e),!0}const ih="3.5.43",vy=at,_y=Uf,Py=Sr,Sy=ja,oh={createComponentInstance:_c,setupComponent:Sc,renderComponentRoot:Kn,setCurrentRenderingInstance:fn,isVNode:zt,normalizeVNode:We,getComponentPublicInstance:On,ensureValidVNode:vo,pushWarningContext:jf,popWarningContext:Lf},Ey=oh,Ay=null,Oy=null,Cy=null;let Ki;const gl=typeof window<"u"&&window.trustedTypes;if(gl)try{Ki=gl.createPolicy("vue",{createHTML:e=>e})}catch{}const Oc=Ki?e=>Ki.createHTML(e):e=>e,lh="http://www.w3.org/2000/svg",ah="http://www.w3.org/1998/Math/MathML",xt=typeof document<"u"?document:null,ml=xt&&xt.createElement("template"),ch={insert:(e,t,r)=>{t.insertBefore(e,r||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,r,n)=>{const s=t==="svg"?xt.createElementNS(lh,e):t==="mathml"?xt.createElementNS(ah,e):r?xt.createElement(e,{is:r}):xt.createElement(e);return e==="select"&&n&&n.multiple!=null&&s.setAttribute("multiple",n.multiple),s},createText:e=>xt.createTextNode(e),createComment:e=>xt.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>xt.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,r,n,s,i){const o=r?r.previousSibling:t.lastChild;if(s&&(s===i||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),r),!(s===i||!(s=s.nextSibling)););else{ml.innerHTML=Oc(n==="svg"?`${e}`:n==="mathml"?`${e}`:e);const l=ml.content;if(n==="svg"||n==="mathml"){const a=l.firstChild;for(;a.firstChild;)l.appendChild(a.firstChild);l.removeChild(a)}t.insertBefore(l,r)}return[o?o.nextSibling:t.firstChild,r?r.previousSibling:t.lastChild]}},$t="transition",$r="animation",Ir=Symbol("_vtc"),Cc={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},xc=ae({},Va,Cc),uh=e=>(e.displayName="Transition",e.props=xc,e),xy=uh((e,{slots:t})=>dr(Yf,Tc(e),t)),nr=(e,t=[])=>{W(e)?e.forEach(r=>r(...t)):e&&e(...t)},yl=e=>e?W(e)?e.some(t=>t.length>1):e.length>1:!1;function Tc(e){const t={};for(const P in e)P in Cc||(t[P]=e[P]);if(e.css===!1)return t;const{name:r="v",type:n,duration:s,enterFromClass:i=`${r}-enter-from`,enterActiveClass:o=`${r}-enter-active`,enterToClass:l=`${r}-enter-to`,appearFromClass:a=i,appearActiveClass:c=o,appearToClass:u=l,leaveFromClass:f=`${r}-leave-from`,leaveActiveClass:g=`${r}-leave-active`,leaveToClass:w=`${r}-leave-to`}=e,v=fh(s),E=v&&v[0],I=v&&v[1],{onBeforeEnter:C,onEnter:b,onEnterCancelled:d,onLeave:p,onLeaveCancelled:m,onBeforeAppear:_=C,onAppear:S=b,onAppearCancelled:x=d}=t,A=(P,k,V,z)=>{P._enterCancelled=z,Vt(P,k?u:l),Vt(P,k?c:o),V&&V()},R=(P,k)=>{P._isLeaving=!1,Vt(P,f),Vt(P,w),Vt(P,g),k&&k()},O=P=>(k,V)=>{const z=P?S:b,q=()=>A(k,P,V);nr(z,[k,q]),bl(()=>{Vt(k,P?a:i),bt(k,P?u:l),yl(z)||wl(k,n,E,q)})};return ae(t,{onBeforeEnter(P){nr(C,[P]),bt(P,i),bt(P,o)},onBeforeAppear(P){nr(_,[P]),bt(P,a),bt(P,c)},onEnter:O(!1),onAppear:O(!0),onLeave(P,k){P._isLeaving=!0;const V=()=>R(P,k);bt(P,f),P._enterCancelled?(bt(P,g),Wi(P)):(Wi(P),bt(P,g)),bl(()=>{P._isLeaving&&(Vt(P,f),bt(P,w),yl(p)||wl(P,n,I,V))}),nr(p,[P,V])},onEnterCancelled(P){A(P,!1,void 0,!0),nr(d,[P])},onAppearCancelled(P){A(P,!0,void 0,!0),nr(x,[P])},onLeaveCancelled(P){R(P),nr(m,[P])}})}function fh(e){if(e==null)return null;if(le(e))return[yi(e.enter),yi(e.leave)];{const t=yi(e);return[t,t]}}function yi(e){return zn(e)}function bt(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.add(r)),(e[Ir]||(e[Ir]=new Set)).add(t)}function Vt(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.remove(n));const r=e[Ir];r&&(r.delete(t),r.size||(e[Ir]=void 0))}function bl(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let dh=0;function wl(e,t,r,n){const s=e._endId=++dh,i=()=>{s===e._endId&&n()};if(r!=null)return setTimeout(i,r);const{type:o,timeout:l,propCount:a}=Rc(e,t);if(!o)return n();const c=o+"end";let u=0;const f=()=>{e.removeEventListener(c,g),i()},g=w=>{w.target===e&&++u>=a&&f()};setTimeout(()=>{u(r[v]||"").split(", "),s=n(`${$t}Delay`),i=n(`${$t}Duration`),o=vl(s,i),l=n(`${$r}Delay`),a=n(`${$r}Duration`),c=vl(l,a);let u=null,f=0,g=0;t===$t?o>0&&(u=$t,f=o,g=i.length):t===$r?c>0&&(u=$r,f=c,g=a.length):(f=Math.max(o,c),u=f>0?o>c?$t:$r:null,g=u?u===$t?i.length:a.length:0);const w=u===$t&&/\b(?:transform|all)(?:,|$)/.test(n(`${$t}Property`).toString());return{type:u,timeout:f,propCount:g,hasTransform:w}}function vl(e,t){for(;e.length_l(r)+_l(e[n])))}function _l(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function Wi(e){return(e?e.ownerDocument:document).body.offsetHeight}function hh(e,t,r){const n=e[Ir];n&&(t=(t?[t,...n]:[...n]).join(" ")),t==null?e.removeAttribute("class"):r?e.setAttribute("class",t):e.className=t}const ms=Symbol("_vod"),Oo=Symbol("_vsh"),ph={name:"show",beforeMount(e,{value:t},{transition:r}){e[ms]=e.style.display==="none"?"":e.style.display,r&&t?r.beforeEnter(e):Br(e,t)},mounted(e,{value:t},{transition:r}){r&&t&&r.enter(e)},updated(e,{value:t,oldValue:r},{transition:n}){!t!=!r&&(n?t?(n.beforeEnter(e),Br(e,!0),n.enter(e)):n.leave(e,()=>{Br(e,!1)}):Br(e,t))},beforeUnmount(e,{value:t}){Br(e,t)}};function Br(e,t){e.style.display=t?e[ms]:"none",e[Oo]=!t}function gh(){ph.getSSRProps=({value:e})=>{if(!e)return{style:{display:"none"}}}}const Ic=Symbol("");function Ty(e){const t=Qe();if(!t)return;const r=t.ut=(s=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(i=>ys(i,s))},n=()=>{const s=e(t.proxy);t.ce?ys(t.ce,s):Xi(t.subTree,s),r(s)};Ja(()=>{ss(n)}),An(()=>{Gt(n,at,{flush:"post"});const s=new MutationObserver(n);s.observe(t.subTree.el.parentNode,{childList:!0}),ei(()=>s.disconnect())})}function Xi(e,t){if(e.shapeFlag&128){const r=e.suspense;e=r.activeBranch,r.pendingBranch&&!r.isHydrating&&r.effects.push(()=>{Xi(r.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)ys(e.el,t);else if(e.type===Me)e.children.forEach(r=>Xi(r,t));else if(e.type===fr){let{el:r,anchor:n}=e;for(;r&&(ys(r,t),r!==n);)r=r.nextSibling}}function ys(e,t){if(e.nodeType===1){const r=e.style;let n="";for(const s in t){const i=lf(t[s]);r.setProperty(`--${s}`,i),n+=`--${s}: ${i};`}r[Ic]=n}}const mh=/(?:^|;)\s*display\s*:/;function yh(e,t,r){const n=e.style,s=de(r);let i=!1;if(r&&!s){if(t)if(de(t))for(const o of t.split(";")){const l=o.slice(0,o.indexOf(":")).trim();r[l]==null&&Yr(n,l,"")}else for(const o in t)r[o]==null&&Yr(n,o,"");for(const o in r){o==="display"&&(i=!0);const l=r[o];l!=null?wh(e,o,!de(t)&&t?t[o]:void 0,l)||Yr(n,o,l):Yr(n,o,"")}}else if(s){if(t!==r){const o=n[Ic];o&&(r+=";"+o),n.cssText=r,i=mh.test(r)}}else t&&e.removeAttribute("style");ms in e&&(e[ms]=i?n.display:"",e[Oo]&&(n.display="none"))}const jn=/\s*!important$/;function Yr(e,t,r){if(W(r))r.forEach(n=>Yr(e,t,n));else if(r==null&&(r=""),t.startsWith("--"))jn.test(r)?e.setProperty(t,r.replace(jn,""),"important"):e.setProperty(t,r);else{const n=bh(e,t);jn.test(r)?e.setProperty(Je(n),r.replace(jn,""),"important"):e[n]=r}}const Pl=["Webkit","Moz","ms"],bi={};function bh(e,t){const r=bi[t];if(r)return r;let n=xe(t);if(n!=="filter"&&n in e)return bi[t]=n;n=js(n);for(let s=0;swi||(Ah.then(()=>wi=0),wi=Date.now());function Ch(e,t){const r=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=r.attached)return;const s=r.value;if(W(s)){const i=n.stopImmediatePropagation;n.stopImmediatePropagation=()=>{i.call(n),n._stopped=!0};const o=s.slice(),l=[n];for(let a=0;ae.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,xh=(e,t,r,n,s,i)=>{const o=s==="svg";t==="class"?hh(e,n,o):t==="style"?yh(e,r,n):_n(t)?Ms(t)||_h(e,t,r,n,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Th(e,t,n,o))?(Al(e,t,n),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&El(e,t,n,o,i,t!=="value")):e._isVueCE&&(Rh(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!de(n)))?Al(e,xe(t),n,i,t):(t==="true-value"?e._trueValue=n:t==="false-value"&&(e._falseValue=n),El(e,t,n,o))};function Th(e,t,r,n){if(n)return!!(t==="innerHTML"||t==="textContent"||t in e&&Cl(t)&&Q(r));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const s=e.tagName;if(s==="IMG"||s==="VIDEO"||s==="CANVAS"||s==="SOURCE")return!1}return Cl(t)&&de(r)?!1:t in e}function Rh(e,t){const r=e._def.props;if(!r)return!1;const n=xe(t);return Array.isArray(r)?r.some(s=>xe(s)===n):Object.keys(r).some(s=>xe(s)===n)}const xl={};function Ih(e,t,r){let n=po(e,t);ks(n)&&(n=ae({},n,t));class s extends Co{constructor(o){super(n,o,r)}}return s.def=n,s}const Ry=((e,t)=>Ih(e,t,Qi)),Fh=typeof HTMLElement<"u"?HTMLElement:class{};class Co extends Fh{constructor(t,r={},n=Ji){super(),this._def=t,this._props=r,this._createApp=n,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._styleAnchors=new WeakMap,this._ob=null,this.shadowRoot&&n!==Ji?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(ae({},t.shadowRootOptions,{mode:"open"})),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let t=this;for(;t=t&&(t.assignedSlot||t.parentNode||t.host);)if(t instanceof Co){this._parent=t;break}this._instance||(this._resolved?this._mount(this._def):t&&t._pendingResolve?this._pendingResolve=t._pendingResolve.then(()=>{if(this._pendingResolve=void 0,this.isConnected)return this._resolveDef()}):this._resolveDef())}_setParent(t=this._parent){t&&(this._instance.parent=t._instance,this._inheritParentContext(t))}_inheritParentContext(t=this._parent){t&&this._app&&Object.setPrototypeOf(this._app._context.provides,t._instance.provides)}disconnectedCallback(){this._connected=!1,uo(()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&(this._teleportTargets.clear(),this._teleportTargets=void 0))})}_processMutations(t){for(const r of t)this._setAttr(r.attributeName)}_resolveDef(){if(this._pendingResolve)return this._pendingResolve;for(let n=0;n{this._resolved=!0,this._pendingResolve=void 0;const{props:i,styles:o}=n;let l;if(i&&!W(i))for(const a in i){const c=i[a];(c===Number||c&&c.type===Number)&&(a in this._props&&(this._props[a]=zn(this._props[a])),(l||(l=Object.create(null)))[xe(a)]=!0)}this._numberProps=l,this._resolveProps(n),this.shadowRoot&&this._applyStyles(o),this._mount(n)},r=this._def.__asyncLoader;if(r)return this._pendingResolve=r().then(n=>{n.configureApp=this._def.configureApp,t(this._def=n,!0)}),this._pendingResolve;t(this._def)}_mount(t){this._app=this._createApp(t),this._inheritParentContext(),t.configureApp&&t.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);const r=this._instance&&this._instance.exposed;if(r)for(const n in r)oe(this,n)||Object.defineProperty(this,n,{get:()=>Js(r[n])})}_resolveProps(t){const{props:r}=t,n=W(r)?r:Object.keys(r||{});for(const s of Object.keys(this))s[0]!=="_"&&n.includes(s)&&this._setProp(s,this[s]);for(const s of n.map(xe))Object.defineProperty(this,s,{get(){return this._getProp(s)},set(i){this._setProp(s,i,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const r=this.hasAttribute(t);let n=r?this.getAttribute(t):xl;const s=xe(t);r&&this._numberProps&&this._numberProps[s]&&(n=zn(n)),this._setProp(s,n,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,r,n=!0,s=!1){if(r!==this._props[t]&&(this._dirty=!0,r===xl?delete this._props[t]:(this._props[t]=r,t==="key"&&this._app&&(this._app._ceVNode.key=r)),s&&this._instance&&this._update(),n)){const i=this._ob;i&&(this._processMutations(i.takeRecords()),i.disconnect()),r===!0?this.setAttribute(Je(t),""):typeof r=="string"||typeof r=="number"?this.setAttribute(Je(t),r+""):r||this.removeAttribute(Je(t)),i&&i.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),Gh(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const r=be(this._def,ae(t,this._props));return this._instance||(r.ce=n=>{this._instance=n,n.ce=this,n.isCE=!0;const s=(i,o)=>{this.dispatchEvent(new CustomEvent(i,ks(o[0])?ae({detail:o},o[0]):{detail:o}))};n.emit=(i,...o)=>{s(i,o),Je(i)!==i&&s(Je(i),o)},this._setParent()}),r}_applyStyles(t,r,n){if(!t)return;if(r){if(r===this._def||this._styleChildren.has(r))return;this._styleChildren.add(r)}const s=this._nonce,i=this.shadowRoot,o=n?this._getStyleAnchor(n)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(i);let l=null;for(let a=t.length-1;a>=0;a--){const c=document.createElement("style");s&&c.setAttribute("nonce",s),c.textContent=t[a],i.insertBefore(c,l||o),l=c,a===0&&(n||this._styleAnchors.set(this._def,c),r&&this._styleAnchors.set(r,c))}}_getStyleAnchor(t){if(!t)return null;const r=this._styleAnchors.get(t);return r&&r.parentNode===this.shadowRoot?r:(r&&this._styleAnchors.delete(t),null)}_getRootStyleInsertionAnchor(t){for(let r=0;r(delete e.props.mode,e),kh=Mh({name:"TransitionGroup",props:ae({},xc,{tag:String,moveClass:String}),setup(e,{slots:t}){const r=Qe(),n=Ba();let s,i;return yo(()=>{if(!s.length)return;const o=e.moveClass||`${e.name||"v"}-move`;if(!Lh(s[0].el,r.vnode.el,o)){s=[];return}s.forEach(Dh),s.forEach(Hh);const l=s.filter(jh);Wi(r.vnode.el),l.forEach(a=>{const c=a.el,u=c.style;bt(c,o),u.transform=u.webkitTransform=u.transitionDuration="";const f=c[bs]=g=>{g&&g.target!==c||(!g||g.propertyName.endsWith("transform"))&&(c.removeEventListener("transitionend",f),c[bs]=null,Vt(c,o))};c.addEventListener("transitionend",f)}),s=[]}),()=>{const o=se(e),l=Tc(o);let a=o.tag||Me;if(s=[],i)for(let c=0;c{l.split(/\s+/).forEach(a=>a&&n.classList.remove(a))}),r.split(/\s+/).forEach(l=>l&&n.classList.add(l)),n.style.display="none";const i=t.nodeType===1?t:t.parentNode;i.appendChild(n);const{hasTransform:o}=Rc(n);return i.removeChild(n),o}const Zt=e=>{const t=e.props["onUpdate:modelValue"]||!1;return W(t)?r=>Or(t,r):t};function Uh(e){e.target.composing=!0}function Rl(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const et=Symbol("_assign"),Ln=Symbol("_initialValue");function vi(e,t,r){return t&&(e=e.trim()),r&&(e=Ls(e)),e}const Gi={created(e,{modifiers:{lazy:t,trim:r,number:n}},s){e.parentNode&&(e.type==="text"?e[Ln]=e.defaultValue.replace(/[\r\n]/g,""):e.type==="textarea"&&(e[Ln]=e.defaultValue.replace(/\r\n?/g,` -`))),e[et]=Zt(s);const i=n||s.props&&s.props.type==="number";Ft(e,t?"change":"input",o=>{o.target.composing||e[et](vi(e.value,r,i))}),(r||i)&&Ft(e,"change",()=>{e.value=vi(e.value,r,i)}),t||(Ft(e,"compositionstart",Uh),Ft(e,"compositionend",Rl),Ft(e,"change",Rl))},mounted(e,{value:t,modifiers:{trim:r,number:n}}){const s=t??"",i=e[Ln];delete e[Ln],i!==void 0&&(e.type==="text"||e.type==="textarea")&&e.value!==i?e[et](vi(e.value,r,n)):e.value=s},beforeUpdate(e,{value:t,oldValue:r,modifiers:{lazy:n,trim:s,number:i}},o){if(e[et]=Zt(o),e.composing)return;const l=(i||e.type==="number")&&!/^0\d/.test(e.value)?Ls(e.value):e.value,a=t??"";if(l===a)return;const c=e.getRootNode();(c instanceof Document||c instanceof ShadowRoot)&&c.activeElement===e&&e.type!=="range"&&(n&&t===r||s&&e.value.trim()===a)||(e.value=a)}},kc={deep:!0,created(e,t,r){e[et]=Zt(r),Ft(e,"change",()=>{const n=e._modelValue,s=Fr(e),i=e.checked,o=e[et];if(W(n)){const l=Bs(n,s),a=l!==-1;if(i&&!a)o(n.concat(s));else if(!i&&a){const c=[...n];c.splice(l,1),o(c)}}else if(At(n)){const l=new Set(n);i?l.add(s):l.delete(s),o(l)}else o(Hc(e,i))})},mounted:Il,beforeUpdate(e,t,r){e[et]=Zt(r),Il(e,t,r)}};function Il(e,{value:t,oldValue:r},n){e._modelValue=t;let s;if(W(t))s=Bs(t,n.props.value)>-1;else if(At(t))s=t.has(n.props.value);else{if(t===r)return;s=ct(t,Hc(e,!0))}e.checked!==s&&(e.checked=s)}const Dc={created(e,{value:t},r){e.checked=ct(t,r.props.value),e[et]=Zt(r),Ft(e,"change",()=>{e[et](Fr(e))})},beforeUpdate(e,{value:t,oldValue:r},n){e[et]=Zt(n),t!==r&&(e.checked=ct(t,n.props.value))}},qh={deep:!0,created(e,{value:t,modifiers:{number:r}},n){e._modelValue=t,Ft(e,"change",()=>{const s=Array.prototype.filter.call(e.options,a=>a.selected).map(a=>r?Ls(Fr(a)):Fr(a)),i=e.multiple,o=i?At(e._modelValue)?new Set(s):s:s[0],l=e._pendingValue=[i,i?W(o)?s.slice():s:o];try{e[et](o)}finally{uo(()=>{e._pendingValue===l&&(e._pendingValue=void 0)})}}),e[et]=Zt(n)},mounted(e,{value:t}){Fl(e,t)},beforeUpdate(e,{value:t},r){e._modelValue=t,e[et]=Zt(r)},updated(e,{value:t}){const r=e._pendingValue;e._pendingValue=void 0,(!r||r[0]!==e.multiple||!$h(t,r[1],r[0]))&&Fl(e,t)}};function $h(e,t,r){if(!r||W(e))return ct(e,t);if(At(e)){if(e.size!==t.length)return!1;for(const n of t)if(!e.has(n))return!1;return!0}return!1}function Fl(e,t){const r=e.multiple,n=W(t);if(!(r&&!n&&!At(t))){for(let s=0,i=e.options.length;sString(c)===String(l)):o.selected=Bs(t,l)>-1}else o.selected=t.has(l);else if(ct(Fr(o),t)){e.selectedIndex!==s&&(e.selectedIndex=s);return}}!r&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Fr(e){return"_value"in e?e._value:e.value}function Hc(e,t){const r=t?"_trueValue":"_falseValue";return r in e?e[r]:t}const Bh={created(e,t,r){Un(e,t,r,null,"created")},mounted(e,t,r){Un(e,t,r,null,"mounted")},beforeUpdate(e,t,r,n){Un(e,t,r,n,"beforeUpdate")},updated(e,t,r,n){Un(e,t,r,n,"updated")}};function jc(e,t){switch(e){case"SELECT":return qh;case"TEXTAREA":return Gi;default:switch(t){case"checkbox":return kc;case"radio":return Dc;default:return Gi}}}function Un(e,t,r,n,s){const o=jc(e.tagName,r.props&&r.props.type)[s];o&&o(e,t,r,n)}function Vh(){Gi.getSSRProps=({value:e})=>({value:e}),Dc.getSSRProps=({value:e},t)=>{if(t.props&&ct(t.props.value,e))return{checked:!0}},kc.getSSRProps=({value:e},t)=>{if(W(e)){if(t.props&&Bs(e,t.props.value)>-1)return{checked:!0}}else if(At(e)){if(t.props&&e.has(t.props.value))return{checked:!0}}else if(e)return{checked:!0}},Bh.getSSRProps=(e,t)=>{if(typeof t.type!="string")return;const r=jc(t.type.toUpperCase(),t.props&&t.props.type);if(r.getSSRProps)return r.getSSRProps(e,t)}}const Kh=["ctrl","shift","alt","meta"],Wh={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>Kh.some(r=>e[`${r}Key`]&&!t.includes(r))},My=(e,t)=>{if(!e)return e;const r=e._withMods||(e._withMods={}),n=t.join(".");return r[n]||(r[n]=((s,...i)=>{for(let o=0;o{const r=e._withKeys||(e._withKeys={}),n=t.join(".");return r[n]||(r[n]=(s=>{if(!("key"in s))return;const i=Je(s.key);if(t.some(o=>o===i||Xh[o]===i))return e(s)}))},Lc=ae({patchProp:xh},ch);let sn,Nl=!1;function Uc(){return sn||(sn=qd(Lc))}function qc(){return sn=Nl?sn:$d(Lc),Nl=!0,sn}const Gh=((...e)=>{Uc().render(...e)}),Dy=((...e)=>{qc().hydrate(...e)}),Ji=((...e)=>{const t=Uc().createApp(...e),{mount:r}=t;return t.mount=n=>{const s=Bc(n);if(!s)return;const i=t._component;!Q(i)&&!i.render&&!i.template&&(i.template=s.innerHTML),s.nodeType===1&&(s.textContent="");const o=r(s,!1,$c(s));return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),o},t}),Qi=((...e)=>{const t=qc().createApp(...e),{mount:r}=t;return t.mount=n=>{const s=Bc(n);if(s)return r(s,!0,$c(s))},t});function $c(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Bc(e){return de(e)?document.querySelector(e):e}let Ml=!1;const Hy=()=>{Ml||(Ml=!0,Vh(),gh())},kl=typeof globalThis=="object"&&globalThis||typeof window=="object"&&window||typeof self=="object"&&self||typeof global=="object"&&global||(function(){return this})();function Jh(e,t,{signal:r,edges:n}={}){let s,i=null;const o=n!=null&&n.includes("leading"),l=n==null||n.includes("trailing"),a=()=>{i!==null&&(e.apply(s,i),s=void 0,i=null)},c=()=>{l&&a(),w()};let u=null;const f=()=>{u!=null&&clearTimeout(u),u=setTimeout(()=>{u=null,c()},t)},g=()=>{u!==null&&(clearTimeout(u),u=null)},w=()=>{g(),s=void 0,i=null},v=()=>{a()},E=function(...I){if(r?.aborted)return;s=this,i=I;const C=u==null;f(),o&&C&&a()};return E.schedule=f,E.cancel=w,E.flush=v,r?.addEventListener("abort",w,{once:!0}),E}function Vc(){}function xo(e){return e==null||typeof e!="object"&&typeof e!="function"}function To(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function Qh(e){if(xo(e))return e;if(Array.isArray(e)||To(e)||e instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer)return e.slice(0);const t=Object.getPrototypeOf(e);if(t==null)return Object.assign(Object.create(t),e);const r=t.constructor;if(e instanceof Date||e instanceof Map||e instanceof Set)return new r(e);if(e instanceof RegExp){const n=new r(e);return n.lastIndex=e.lastIndex,n}if(e instanceof DataView)return new r(e.buffer.slice(0));if(e instanceof Error){let n;return e instanceof AggregateError?n=new r(e.errors,e.message,{cause:e.cause}):n=new r(e.message,{cause:e.cause}),n.stack=e.stack,Object.assign(n,e),n}return typeof File<"u"&&e instanceof File?new r([e],e.name,{type:e.type,lastModified:e.lastModified}):typeof e=="object"?Object.assign(Object.create(t),e):e}function ws(e){return typeof kl.Buffer<"u"&&kl.Buffer.isBuffer(e)}function vs(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}function mn(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}const Kc="[object RegExp]",Ro="[object String]",Io="[object Number]",Fo="[object Boolean]",Wc="[object Arguments]",Xc="[object Symbol]",Gc="[object Date]",Jc="[object Map]",Qc="[object Set]",Yc="[object Array]",Yh="[object Function]",zc="[object ArrayBuffer]",Xn="[object Object]",zh="[object Error]",Zc="[object DataView]",eu="[object Uint8Array]",tu="[object Uint8ClampedArray]",ru="[object Uint16Array]",nu="[object Uint32Array]",Zh="[object BigUint64Array]",su="[object Int8Array]",iu="[object Int16Array]",ou="[object Int32Array]",ep="[object BigInt64Array]",lu="[object Float32Array]",au="[object Float64Array]";function tp(e,t){return or(e,void 0,e,new Map,t)}function or(e,t,r,n=new Map,s=void 0){const i=s?.(e,t,r,n);if(i!==void 0)return i;if(xo(e))return e;if(n.has(e))return n.get(e);if(Array.isArray(e)){const o=new Array(e.length);n.set(e,o);for(let l=0;lzr(f,w,void 0,e,t,r,n));if(g===-1)return!1;c.splice(g,1)}return!0}case Yc:case eu:case tu:case ru:case nu:case Zh:case su:case iu:case ou:case ep:case lu:case au:if(ws(e)!==ws(t)||e.length!==t.length)return!1;for(let a=0;a=0}function ip(e){return e!=null&&typeof e!="function"&&sp(e.length)}function uu(e){return typeof e=="symbol"||e instanceof Symbol}function op(e){return e==null?"":fu(e)}function fu(e){if(typeof e=="string")return e;if(Array.isArray(e))return e.map(fu).join(",");if(uu(e))return e.toString();const t=e+"";return t==="0"&&Object.is(Number(e),-0)?"-0":t}function si(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}function ii(e){if(Array.isArray(e))return e.map(si);if(typeof e=="symbol")return[e];e=op(e);const t=[],r=e.length;if(r===0)return t;let n=0,s="",i="",o=!1,l=!1;const a=/^-?\d+(?:\.\d+)?$/;for(e.charCodeAt(0)===46&&t.push("");n{if(typeof e=="object"){if(mn(e)==="[object Object]"&&typeof e.constructor!="function"){const o={};return i.set(e,o),pt(o,e,s,i),o}switch(Object.prototype.toString.call(e)){case Io:case Ro:case Fo:{const o=new e.constructor(e?.valueOf());return pt(o,e),o}case Wc:{const o={};return pt(o,e),o.length=e.length,o[Symbol.iterator]=e[Symbol.iterator],o}default:return}}})}function jl(e){return cp(e)}function Yi(e){return e!==null&&typeof e=="object"&&mn(e)==="[object Arguments]"}const up=/^(?:0|[1-9]\d*)$/;function hu(e,t=Number.MAX_SAFE_INTEGER){switch(typeof e){case"number":return Number.isInteger(e)&&e>=0&&e{const n=e[t];(!(Object.hasOwn(e,t)&&cu(n,r))||r===void 0&&!(t in e))&&(e[t]=r)};function mp(e){return e==="__proto__"||e==="constructor"||e==="prototype"}function yp(e,t,r,n){if(e==null&&!Hl(e))return e;let s;pp(t,e)?s=[t]:Array.isArray(t)?s=t:s=ii(t);const i=r(ye(e,s));let o=e;for(let l=0;lr,()=>{})}function bp(e,t=0,r={}){typeof r!="object"&&(r={});const{leading:n=!1,trailing:s=!0,maxWait:i}=r,o=Array(2);n&&(o[0]="leading"),s&&(o[1]="trailing");let l,a=null;const c=Jh(function(...g){l=e.apply(this,g),a=null},t,{edges:o}),u=function(...g){return i!=null&&(a===null&&(a=Date.now()),Date.now()-a>=i)?((n||s)&&(l=e.apply(this,g)),a=Date.now(),c.cancel(),c.schedule(),l):(c.apply(this,g),l)},f=()=>(c.flush(),l);return u.cancel=c.cancel,u.flush=f,u}function wp(e,...t){const r=t.slice(0,-1),n=t[t.length-1];let s=e;for(let i=0;itypeof File<"u"&&e instanceof File||e instanceof Blob||typeof FileList<"u"&&e instanceof FileList&&e.length>0,oi=e=>e instanceof FormData?!0:No(e)||typeof e=="object"&&e!==null&&Object.values(e).some(t=>oi(t));let Ss=class extends Error{response;constructor(t){super(`HTTP error ${t.status}`),this.name="HttpResponseError",this.response=t}},gu=class extends Error{constructor(t="Request was cancelled"){super(t),this.name="HttpCancelledError"}},vp=class extends Error{constructor(t="Network error"){super(t),this.name="HttpNetworkError"}};function _p(e){const t=new URLSearchParams;return Object.entries(e).forEach(([r,n])=>{n!=null&&(Array.isArray(n)?n.forEach(s=>t.append(`${r}[]`,String(s))):typeof n=="object"?t.append(r,JSON.stringify(n)):t.append(r,String(n)))}),t.toString()}function Pp(e,t,r){if(t&&!e.startsWith("http://")&&!e.startsWith("https://")&&(e=t.replace(/\/$/,"")+"/"+e.replace(/^\//,"")),r&&Object.keys(r).length>0){const n=_p(r);n&&(e+=(e.includes("?")?"&":"?")+n)}return e}function Sp(){return typeof window>"u"?null:window.axios?.defaults?.headers?.common?.["X-Requested-With"]??null}function mu(e,t=new FormData,r=null){for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&yu(t,r?`${r}[${n}]`:n,e[n]);return t}function yu(e,t,r){if(Array.isArray(r))return r.forEach((n,s)=>yu(e,`${t}[${s}]`,n));if(r instanceof Date)return e.append(t,r.toISOString());if(typeof File<"u"&&r instanceof File)return e.append(t,r,r.name);if(r instanceof Blob)return e.append(t,r);if(typeof r=="boolean")return e.append(t,r?"1":"0");if(typeof r=="string")return e.append(t,r);if(typeof r=="number")return e.append(t,`${r}`);if(r==null)return e.append(t,"");mu(r,e,t)}function Ep(e,t){if(e!=null)return e instanceof FormData?e:typeof e=="object"&&oi(e)?mu(e):typeof e=="object"||t["Content-Type"]?.includes("application/json")?JSON.stringify(e):String(e)}function Ap(e){const t={};return e.forEach((r,n)=>{t[n.toLowerCase()]=r}),t}function Op(e={}){let t=e.xsrfCookieName??"XSRF-TOKEN",r=e.xsrfHeaderName??"X-XSRF-TOKEN";function n(){if(typeof document>"u")return null;const s=document.cookie.match(new RegExp("(^|;\\s*)"+t+"=([^;]*)"));return s?decodeURIComponent(s[2]):null}return{setXsrfCookieName(s){t=s},setXsrfHeaderName(s){r=s},async request(s){const i=Pp(s.url,s.baseURL,s.params),o=s.method.toUpperCase(),l={},a=Sp();a&&(l["X-Requested-With"]=a),s.data!==void 0&&!["GET","DELETE"].includes(o)&&!(s.data instanceof FormData)&&!oi(s.data)&&(l["Content-Type"]="application/json"),s.headers&&Object.entries(s.headers).forEach(([v,E])=>{E!==void 0&&(l[v]=String(E))});const c=n();c&&!["GET","HEAD","OPTIONS"].includes(o)&&(l[r]=c);let u=s.signal,f;const g=s.timeout??3e4;if(g>0&&!u){const v=new AbortController;u=v.signal,f=setTimeout(()=>v.abort(),g)}const w=["GET","DELETE"].includes(o)?void 0:Ep(s.data,l);w instanceof FormData&&delete l["Content-Type"];try{const v=await fetch(i,{method:o,headers:l,body:w,signal:u,credentials:s.credentials??"same-origin"});f&&clearTimeout(f);let E;v.headers.get("content-type")?.includes("application/json")?E=await v.json():E=await v.text();const C={status:v.status,data:E,headers:Ap(v.headers)};if(!v.ok)throw new Ss(C);return C}catch(v){throw f&&clearTimeout(f),v instanceof Ss?v:v instanceof DOMException&&v.name==="AbortError"?new gu:v instanceof TypeError?new vp(v.message):v}}}}const Zi=Op();let Mo=Zi,ko,bu,wu="same-origin",vu=e=>`${e.method}:${e.baseURL??ko??""}${e.url}`,_u=e=>e.status===204&&e.headers["precognition-success"]==="true";const Es={},Ue={get:(e,t={},r={})=>Kr(Vr("get",e,t,r)),post:(e,t={},r={})=>Kr(Vr("post",e,t,r)),patch:(e,t={},r={})=>Kr(Vr("patch",e,t,r)),put:(e,t={},r={})=>Kr(Vr("put",e,t,r)),delete:(e,t={},r={})=>Kr(Vr("delete",e,t,r)),useHttpClient(e){return Mo=e,Ue},withBaseURL(e){return ko=e,Ue},withTimeout(e){return bu=e,Ue},withCredentials(e){return wu=typeof e=="string"?e:e?"include":"omit",Ue},fingerprintRequestsUsing(e){return vu=e===null?()=>null:e,Ue},determineSuccessUsing(e){return _u=e,Ue},withXsrfCookieName(e){return Zi.setXsrfCookieName(e),Ue},withXsrfHeaderName(e){return Zi.setXsrfHeaderName(e),Ue}},Vr=(e,t,r,n)=>({url:t,method:e,...n,...["get","delete"].includes(e)?{params:Ps({},r,n?.params)}:{data:Ps({},r,n?.data)}}),Kr=(e={})=>{const t=[Cp,Tp,Rp].reduce((r,n)=>n(r),e);return(t.onBefore??(()=>!0))()===!1?Promise.resolve(null):((t.onStart??(()=>null))(),Mo.request({method:t.method,url:t.url,baseURL:t.baseURL??ko,data:t.data,params:t.params,headers:t.headers,signal:t.signal,timeout:t.timeout,credentials:wu}).then(async r=>{t.precognitive&&Ll(r);const n=r.status;let s=r;return t.precognitive&&t.onPrecognitionSuccess&&_u(r)&&(s=await Promise.resolve(t.onPrecognitionSuccess(r)??s)),t.onSuccess&&xp(n)&&(s=await Promise.resolve(t.onSuccess(s)??s)),(Ul(t,n)??(o=>o))(s)??s},r=>{if(Ip(r))return Promise.reject(r);const n=r;return t.precognitive&&Ll(n.response),(Ul(t,n.response.status)??((i,o)=>Promise.reject(o)))(n.response,n)}).finally(t.onFinish??(()=>null)))},Cp=e=>{const t=e.only??e.validate;return{...e,timeout:e.timeout??bu,precognitive:e.precognitive!==!1,fingerprint:typeof e.fingerprint>"u"?vu(e,Mo):e.fingerprint,headers:{...e.headers,Accept:"application/json","Content-Type":Fp(e),...e.precognitive!==!1?{Precognition:!0}:{},...t?{"Precognition-Validate-Only":Array.from(t).join()}:{}}}},xp=e=>e>=200&&e<300,Tp=e=>(typeof e.fingerprint!="string"||(Es[e.fingerprint]?.abort(),delete Es[e.fingerprint]),e),Rp=e=>typeof e.fingerprint!="string"||e.signal||!e.precognitive?e:(Es[e.fingerprint]=new AbortController,{...e,signal:Es[e.fingerprint].signal}),Ll=e=>{if(e.headers?.precognition!=="true")throw Error("Did not receive a Precognition response. Ensure you have the Precognition middleware in place for the route.")},Ip=e=>!(e instanceof Ss)||typeof e.response?.status!="number",Ul=(e,t)=>({401:e.onUnauthorized,403:e.onForbidden,404:e.onNotFound,409:e.onConflict,422:e.onValidationError,423:e.onLocked})[t],Fp=e=>e.headers?.["Content-Type"]??e.headers?.["Content-type"]??e.headers?.["content-type"]??(oi(e.data)?"multipart/form-data":"application/json"),Np=(e,t)=>{if(!e.includes("*"))return[e];const r=e.split(".");let n=[""];for(const s of r)if(s==="*"){const i=[];for(const o of n){const l=o?ye(t,o):t;if(Array.isArray(l))for(let a=0;ai?`${i}.${s}`:s);return n},Mp=(e,t)=>t.includes("*")?new RegExp("^"+t.replace(/\./g,"\\.").replace(/\*/g,"[^.]+")+"$").test(e):e===t,ql=(e,t)=>Object.fromEntries(Object.entries(e).filter(([r])=>!t.some(n=>Mp(r,n)))),kp=(e,t={})=>{const r={errorsChanged:[],touchedChanged:[],validatingChanged:[],validatedChanged:[]};let n=!1,s=!1;const i=O=>O!==s?(s=O,r.validatingChanged):[];let o=[];const l=O=>{const P=[...new Set(O)];return o.length!==P.length||!P.every(k=>o.includes(k))?(o=P,r.validatedChanged):[]},a=()=>o.filter(O=>typeof f[O]>"u");let c=[];const u=O=>{const P=[...new Set(O)];return c.length!==P.length||!P.every(k=>c.includes(k))?(c=P,r.touchedChanged):[]};let f={};const g=O=>{const P=Dp(O);return Et(f,P)?[]:(f=P,r.errorsChanged)},w=O=>{const P={...f};return delete P[ln(O)],g(P)},v=()=>Object.keys(f).length>0;let E=1500;const I=O=>{E=O,_.cancel(),_=m()};let C=t,b=null,d=[],p=null;const m=()=>bp(O=>{e({get:(P,k={},V={})=>Ue.get(P,A(k),S(V,O,k)),post:(P,k={},V={})=>Ue.post(P,A(k),S(V,O,k)),patch:(P,k={},V={})=>Ue.patch(P,A(k),S(V,O,k)),put:(P,k={},V={})=>Ue.put(P,A(k),S(V,O,k)),delete:(P,k={},V={})=>Ue.delete(P,A(k),S(V,O,k))}).catch(P=>P instanceof gu||P instanceof Ss&&P.response?.status===422?null:Promise.reject(P))},E,{leading:!0,trailing:!0});let _=m();const S=(O,P,k={})=>{const V={...O,...P},z=Array.from(V.only??V.validate??c);return{...P,...Ps({},O,P),only:z,timeout:V.timeout??5e3,onValidationError:(q,U)=>([...l([...o,...z]),...g(Ps(ql({...f},z),q.data.errors))].forEach(X=>X()),V.onValidationError?V.onValidationError(q,U):Promise.reject(U)),onSuccess:q=>(l([...o,...z]).forEach(U=>U()),V.onSuccess?V.onSuccess(q):q),onPrecognitionSuccess:q=>([...l([...o,...z]),...g(ql({...f},z))].forEach(U=>U()),V.onPrecognitionSuccess?V.onPrecognitionSuccess(q):q),onBefore:()=>{const q=c.some(te=>te.includes("*")),U=q?[...new Set(c.flatMap(te=>Np(te,k)))]:c;return V.onBeforeValidation&&V.onBeforeValidation({data:k,touched:U},{data:C,touched:d})===!1||(V.onBefore||(()=>!0))()===!1?!1:(q&&u(U).forEach(te=>te()),p=c,b=k,!0)},onStart:()=>{i(!0).forEach(q=>q()),(V.onStart??(()=>null))()},onFinish:()=>{i(!1).forEach(q=>q()),d=p,C=b,p=b=null,(V.onFinish??(()=>null))()}}},x=(O,P,k)=>{if(typeof O>"u"){const V=Array.from(k?.only??k?.validate??[]);u([...c,...V]).forEach(z=>z()),_(k??{});return}if(No(P)&&!n){console.warn('Precognition file validation is not active. Call the "validateFiles" function on your form to enable it.');return}O=ln(O),(O.includes("*")||ye(C,O)!==P)&&(u([O,...c]).forEach(V=>V()),_(k??{}))},A=O=>n===!1?eo(O):O,R={touched:()=>c,validate(O,P,k){return typeof O=="object"&&!("target"in O)&&(k=O,O=P=void 0),x(O,P,k),R},touch(O){const P=Array.isArray(O)?O:[ln(O)];return u([...c,...P]).forEach(k=>k()),R},validating:()=>s,valid:a,errors:()=>f,hasErrors:v,setErrors(O){return g(O).forEach(P=>P()),R},forgetError(O){return w(O).forEach(P=>P()),R},defaults(O){return t=O,C=O,R},reset(...O){if(O.length===0)u([]).forEach(P=>P());else{const P=[...c];O.forEach(k=>{P.includes(k)&&P.splice(P.indexOf(k),1),ot(C,k,ye(t,k))}),u(P).forEach(k=>k())}return R},setTimeout(O){return I(O),R},on(O,P){return r[O].push(P),R},validateFiles(){return n=!0,R},withoutFileValidation(){return n=!1,R}};return R},Pu=e=>Object.keys(e).reduce((t,r)=>({...t,[r]:Array.isArray(e[r])?e[r][0]:e[r]}),{}),Dp=e=>Object.keys(e).reduce((t,r)=>({...t,[r]:typeof e[r]=="string"?[e[r]]:e[r]}),{}),ln=e=>typeof e!="string"?e.target.name:e,eo=e=>{const t={...e};return Object.keys(t).forEach(r=>{const n=t[r];if(n!==null){if(No(n)){delete t[r];return}if(Array.isArray(n)){t[r]=Object.values(eo({...n}));return}if(typeof n=="object"){t[r]=eo(t[r]);return}}}),t};var Hp=class{config={};defaults;constructor(e){this.defaults=e}extend(e){return e&&(this.defaults={...this.defaults,...e}),this}replace(e){this.config=e}get(e){return pu(this.config,e)?ye(this.config,e):ye(this.defaults,e)}set(e,t){typeof e=="string"?ot(this.config,e,t):Object.entries(e).forEach(([r,n])=>{ot(this.config,r,n)})}},Nr=new Hp({form:{recentlySuccessfulDuration:2e3,forceIndicesArrayFormatInFormData:!0,withAllErrors:!1},prefetch:{cacheFor:3e4,hoverDelay:75}});function to(e,t){let r;return function(...n){clearTimeout(r),r=setTimeout(()=>e.apply(this,n),t)}}function Be(e,t){return document.dispatchEvent(new CustomEvent(`inertia:${e}`,t))}var $l=e=>Be("before",{cancelable:!0,detail:{visit:e}}),jp=(e,{page:t,visitId:r}={})=>Be("error",{detail:{errors:e,page:t,visitId:r}}),Lp=e=>Be("networkError",{cancelable:!0,detail:{error:e}}),Up=e=>Be("finish",{detail:{visit:e}}),Bl=e=>Be("httpException",{cancelable:!0,detail:{response:e}}),qp=e=>Be("beforeUpdate",{detail:{page:e}}),As=(e,{cached:t=!1,visitId:r}={})=>Be("navigate",{detail:{page:e,cached:t,visitId:r}}),$p=(e,{replace:t,visitId:r})=>Be("clientVisit",{detail:{page:e,replace:t,visitId:r}}),Bp=e=>Be("progress",{detail:{progress:e}}),Vp=e=>Be("start",{detail:{visit:e}}),Kp=(e,{visitId:t}={})=>Be("success",{detail:{page:e,visitId:t}}),Wp=(e,t)=>Be("prefetched",{detail:{fetchedAt:Date.now(),response:e,visit:t}}),Xp=e=>Be("prefetching",{detail:{visit:e}}),Os=e=>Be("flash",{detail:{flash:e}}),Gp=(e,t)=>Be("location",{cancelable:!0,detail:{url:e,versionChange:t}}),Xe=class{static locationVisitKey="inertiaLocationVisit";static set(e,t){typeof window<"u"&&window.sessionStorage.setItem(e,JSON.stringify(t))}static get(e){if(typeof window<"u")return JSON.parse(window.sessionStorage.getItem(e)||"null")}static merge(e,t){const r=this.get(e);r===null?this.set(e,t):this.set(e,{...r,...t})}static remove(e){typeof window<"u"&&window.sessionStorage.removeItem(e)}static removeNested(e,t){const r=this.get(e);r!==null&&(delete r[t],this.set(e,r))}static exists(e){try{return this.get(e)!==null}catch{return!1}}static clear(){typeof window<"u"&&window.sessionStorage.clear()}},Jp=async e=>{if(typeof window>"u")throw new Error("Unable to encrypt history");const t=Su(),r=await Eu(),n=await tg(r);if(!n)throw new Error("Unable to encrypt history");return await Yp(t,n,e)},Mr={key:"historyKey",iv:"historyIv"},Qp=async e=>{const t=Su(),r=await Eu();if(!r)throw new Error("Unable to decrypt history");return await zp(t,r,e)},Yp=async(e,t,r)=>{if(typeof window>"u")throw new Error("Unable to encrypt history");if(typeof window.crypto.subtle>"u")return console.warn("Encryption is not supported in this environment. SSL is required."),Promise.resolve(r);const n=new TextEncoder,s=JSON.stringify(r),i=new Uint8Array(s.length*3),o=n.encodeInto(s,i);return window.crypto.subtle.encrypt({name:"AES-GCM",iv:e},t,i.subarray(0,o.written))},zp=async(e,t,r)=>{if(typeof window.crypto.subtle>"u")return console.warn("Decryption is not supported in this environment. SSL is required."),Promise.resolve(r);const n=await window.crypto.subtle.decrypt({name:"AES-GCM",iv:e},t,r);return JSON.parse(new TextDecoder().decode(n))},Su=()=>{const e=Xe.get(Mr.iv);if(e)return new Uint8Array(e);const t=window.crypto.getRandomValues(new Uint8Array(12));return Xe.set(Mr.iv,Array.from(t)),t},Zp=async()=>typeof window.crypto.subtle>"u"?(console.warn("Encryption is not supported in this environment. SSL is required."),Promise.resolve(null)):window.crypto.subtle.generateKey({name:"AES-GCM",length:256},!0,["encrypt","decrypt"]),eg=async e=>{if(typeof window.crypto.subtle>"u")return console.warn("Encryption is not supported in this environment. SSL is required."),Promise.resolve();const t=await window.crypto.subtle.exportKey("raw",e);Xe.set(Mr.key,Array.from(new Uint8Array(t)))},tg=async e=>{if(e)return e;const t=await Zp();return t?(await eg(t),t):null},Eu=async()=>{const e=Xe.get(Mr.key);return e?await window.crypto.subtle.importKey("raw",new Uint8Array(e),{name:"AES-GCM",length:256},!0,["encrypt","decrypt"]):null},Vl=e=>{const t={};for(const r of Object.keys(e))e[r]!==void 0&&(t[r]=e[r]);return t},Au=(e,t,r)=>{if(e===t)return!0;for(const n in e)if(!r.includes(n)&&e[n]!==t[n]&&!rg(e[n],t[n]))return!1;for(const n in t)if(!r.includes(n)&&!(n in e))return!1;return!0},rg=(e,t)=>{switch(typeof e){case"object":return Au(e,t,[]);case"function":return e.toString()===t.toString();default:return e===t}},ng=(e,t,r)=>{const n=ii(t);if(n.length===0)return e;const s=(i,o)=>{if(o===n.length)return r;const l=n[o],a=Array.isArray(i)?[...i]:i&&typeof i=="object"?{...i}:/^(?:0|[1-9]\d*)$/.test(l)?[]:{};return a[l]=s(i?.[l],o+1),a};return s(e,0)},sg={ms:1,s:1e3,m:1e3*60,h:1e3*60*60,d:1e3*60*60*24},Kl=e=>{if(typeof e=="number")return e;for(const[t,r]of Object.entries(sg))if(e.endsWith(t))return parseFloat(e)*r;return parseInt(e)},ig=class{cached=[];inFlightRequests=[];removalTimers=[];currentUseId=null;add(e,t,{cacheFor:r,cacheTags:n}){if(this.findInFlight(e))return Promise.resolve();const i=this.findCached(e);if(!e.fresh&&i&&i.staleTimestamp>Date.now())return Promise.resolve();const[o,l]=this.extractStaleValues(r),a=new Promise((c,u)=>{t({...e,onCancel:()=>{this.remove(e),e.onCancel(),u()},onError:f=>{this.remove(e),e.onError(f),u()},onPrefetching(f){e.onPrefetching(f)},onPrefetched(f,g){e.onPrefetched(f,g)},onPrefetchResponse(f){c(f)},onPrefetchError(f){vt.removeFromInFlight(e),u(f)}})}).then(c=>{this.remove(e);const u=c.getPageResponse();j.mergeOncePropsIntoResponse(u),this.cached.push({params:{...e},staleTimestamp:Date.now()+o,expiresAt:Date.now()+l,response:a,singleUse:l===0,timestamp:Date.now(),inFlight:!1,tags:Array.isArray(n)?n:[n]});const f=this.getShortestOncePropTtl(u);return this.scheduleForRemoval(e,f?Math.min(l,f):l),this.removeFromInFlight(e),c.handlePrefetch(),c});return this.inFlightRequests.push({params:{...e},response:a,staleTimestamp:null,inFlight:!0}),a}removeAll(){this.cached=[],this.removalTimers.forEach(e=>{clearTimeout(e.timer)}),this.removalTimers=[]}removeByTags(e){this.cached=this.cached.filter(t=>!t.tags.some(r=>e.includes(r)))}remove(e){this.cached=this.cached.filter(t=>!this.paramsAreEqual(t.params,e)),this.clearTimer(e)}removeFromInFlight(e){this.inFlightRequests=this.inFlightRequests.filter(t=>!this.paramsAreEqual(t.params,e))}extractStaleValues(e){const[t,r]=this.cacheForToStaleAndExpires(e);return[Kl(t),Kl(r)]}cacheForToStaleAndExpires(e){if(!Array.isArray(e))return[e,e];switch(e.length){case 0:return[0,0];case 1:return[e[0],e[0]];default:return[e[0],e[1]]}}clearTimer(e){const t=this.removalTimers.find(r=>this.paramsAreEqual(r.params,e));t&&(clearTimeout(t.timer),this.removalTimers=this.removalTimers.filter(r=>r!==t))}scheduleForRemoval(e,t){if(!(typeof window>"u")&&(this.clearTimer(e),t>0)){const r=window.setTimeout(()=>this.remove(e),t);this.removalTimers.push({params:e,timer:r})}}get(e){return this.findCached(e)||this.findInFlight(e)}use(e,t){const r=`${t.url.pathname}-${Date.now()}-${Math.random().toString(36).substring(7)}`;this.currentUseId=r;const n={...t,cached:!0};return e.response.then(s=>{if(this.currentUseId===r)return s.mergeParams({...n,onPrefetched:()=>{}}),this.removeSingleUseItems(t),s.handle()})}removeSingleUseItems(e){this.cached=this.cached.filter(t=>this.paramsAreEqual(t.params,e)?!t.singleUse:!0)}findCached(e){return this.cached.find(t=>this.paramsAreEqual(t.params,e))||null}findInFlight(e){return this.inFlightRequests.find(t=>this.paramsAreEqual(t.params,e))||null}withoutPurposePrefetchHeader(e){const t=fe(e);return t.headers.Purpose==="prefetch"&&delete t.headers.Purpose,t}paramsAreEqual(e,t){return Au(this.withoutPurposePrefetchHeader(e),this.withoutPurposePrefetchHeader(t),["id","showProgress","replace","prefetch","preserveScroll","preserveState","onBefore","onBeforeUpdate","onStart","onProgress","onFinish","onCancel","onSuccess","onError","onFlash","onPrefetched","onCancelToken","onPrefetching","async","viewTransition","optimistic","component","pageProps","cached"])}updateCachedOncePropsFromCurrentPage(){this.cached.forEach(e=>{e.response.then(t=>{const r=t.getPageResponse();j.mergeOncePropsIntoResponse(r,{force:!0});for(const[o,l]of Object.entries(r.deferredProps??{})){const a=l.filter(c=>ye(r.props,c)===void 0);a.length>0?r.deferredProps[o]=a:delete r.deferredProps[o]}const n=this.getShortestOncePropTtl(r);if(n===null)return;const s=e.expiresAt-Date.now(),i=Math.min(s,n);i>0?this.scheduleForRemoval(e.params,i):this.remove(e.params)})})}getShortestOncePropTtl(e){const t=Object.values(e.onceProps??{}).map(r=>r.expiresAt).filter(r=>!!r);return t.length===0?null:Math.min(...t)-Date.now()}},vt=new ig,Ou=(e,t=1)=>{window.requestAnimationFrame(()=>{t>1?Ou(e,t-1):e()})},og=e=>{if(typeof window>"u")return null;const t=document.querySelector(`script[data-page="${e}"][type="application/json"]`);return t?.textContent?JSON.parse(t.textContent):null},Zr=typeof window>"u",lg=!Zr&&/Firefox/i.test(window.navigator.userAgent),Ge=class{static save(){re.saveScrollPositions(this.getScrollRegions())}static getScrollRegions(){return Array.from(this.regions()).map(e=>({top:e.scrollTop,left:e.scrollLeft}))}static regions(){return document.querySelectorAll("[scroll-region]")}static scrollToTop(){if(lg&&getComputedStyle(document.documentElement).scrollBehavior==="smooth")return Ou(()=>window.scrollTo(0,0),2);window.scrollTo(0,0)}static reset(){!Zr&&window.location.hash||this.scrollToTop(),this.regions().forEach(t=>{typeof t.scrollTo=="function"?t.scrollTo(0,0):(t.scrollTop=0,t.scrollLeft=0)}),this.save(),this.scrollToAnchor()}static scrollToAnchor(){const e=Zr?null:window.location.hash;e&&setTimeout(()=>{const t=document.getElementById(e.slice(1));t?t.scrollIntoView():this.scrollToTop()})}static restore(e){Zr||window.requestAnimationFrame(()=>{this.restoreDocument(),this.restoreScrollRegions(e)})}static restoreScrollRegions(e){Zr||this.regions().forEach((t,r)=>{const n=e[r];n&&(typeof t.scrollTo=="function"?t.scrollTo(n.left,n.top):(t.scrollTop=n.top,t.scrollLeft=n.left))})}static restoreDocument(){const e=re.getDocumentScrollPosition();window.scrollTo(e.left,e.top)}static onScroll(e){const t=e.target;typeof t.hasAttribute=="function"&&t.hasAttribute("scroll-region")&&this.save()}static onWindowScroll(){re.saveDocumentScrollPosition({top:window.scrollY,left:window.scrollX})}},ag=e=>typeof File<"u"&&e instanceof File||e instanceof Blob||typeof FileList<"u"&&e instanceof FileList&&e.length>0;function Cs(e){return ag(e)||e instanceof FormData&&Array.from(e.values()).some(t=>Cs(t))||typeof e=="object"&&e!==null&&Object.values(e).some(t=>Cs(t))}var ro=e=>e instanceof FormData;function Do(e,t=new FormData,r=null,n="brackets"){e=e||{};for(const s in e)Object.prototype.hasOwnProperty.call(e,s)&&xu(t,Cu(r,s,"indices"),e[s],n);return t}function Cu(e,t,r){return e?r==="brackets"?`${e}[]`:`${e}[${t}]`:t}function xu(e,t,r,n){if(Array.isArray(r))return Array.from(r.keys()).forEach(s=>xu(e,Cu(t,s.toString(),n),r[s],n));if(r instanceof Date)return e.append(t,r.toISOString());if(r instanceof File)return e.append(t,r,r.name);if(r instanceof Blob)return e.append(t,r);if(typeof r=="boolean")return e.append(t,r?"1":"0");if(typeof r=="string")return e.append(t,r);if(typeof r=="number")return e.append(t,`${r}`);if(r==null)return e.append(t,"");Do(r,e,t,n)}function cg(e){return/\[\d+\]/.test(decodeURIComponent(e.search))}function ug(e){if(!e||e==="?")return{};const t={};return e.replace(/^\?/,"").split("&").filter(Boolean).forEach(r=>{const[n,s]=dg(r);hg(t,Wl(n),Wl(s))}),t}function fg(e,t){const r=[];return no(e,"",r,t),r.length?"?"+r.join("&"):""}function dg(e){const t=e.indexOf("=");return t===-1?[e,""]:[e.substring(0,t),e.substring(t+1)]}function Wl(e){return decodeURIComponent(e.replace(/\+/g," "))}function hg(e,t,r){const n=pg(t);if(n.some(o=>o==="__proto__"))return;let s=e;for(;n.length>1;){const o=n.shift(),l=n[0]==="";(typeof s[o]!="object"||s[o]===null)&&(s[o]=l?[]:{}),s=s[o]}const i=n.shift();i===""&&Array.isArray(s)?s.push(r):s[i]=r}function pg(e){const t=[],r=e.split("[")[0];r&&t.push(r);let n;const s=/\[([^\]]*)\]/g;for(;(n=s.exec(e))!==null;)t.push(n[1]);return t}function no(e,t,r,n){if(e!==void 0){if(e===null){r.push(`${t}=`);return}if(Array.isArray(e)){e.forEach((s,i)=>{const o=n==="indices"?`${t}[${i}]`:`${t}[]`;no(s,o,r,n)});return}if(typeof e=="object"){Object.keys(e).forEach(s=>{no(e[s],t?`${t}[${s}]`:s,r,n)});return}r.push(`${t}=${encodeURIComponent(String(e))}`)}}function Mt(e){return new URL(e.toString(),typeof window>"u"?void 0:window.location.toString())}var gg=(e,t,r,n,s)=>{let i=typeof e=="string"?Mt(e):e;if((Cs(t)||n)&&!ro(t)&&(Nr.get("form.forceIndicesArrayFormatInFormData")&&(s="indices"),t=Do(t,new FormData,null,s)),ro(t))return[i,t];const[o,l]=Ho(r,i,t,s);return[Mt(o),l]};function Ho(e,t,r,n="brackets"){const s=e==="get"&&!ro(r)&&Object.keys(r).length>0,i=mg(t.toString()),o=i||t.toString().startsWith("/")||t.toString()==="",l=!o&&!t.toString().startsWith("#")&&!t.toString().startsWith("?"),a=/^[.]{1,2}([/]|$)/.test(t.toString()),c=t.toString().includes("?")||s,u=t.toString().includes("#"),f=new URL(t.toString(),typeof window>"u"?"http://localhost":window.location.toString());if(s){const g=cg(f)?"indices":n;f.search=fg({...ug(f.search),...r},g)}return[[i?`${f.protocol}//${f.host}`:"",o?f.pathname:"",l?f.pathname.substring(a?0:1):"",c?f.search:"",u?f.hash:""].join(""),s?{}:r]}function xs(e){return e=new URL(e.href),e.hash="",e}var Xl=(e,t)=>{e.hash&&!t.hash&&xs(e).href===t.href&&(t.hash=e.hash)},Ts=(e,t)=>xs(e).href===xs(t).href,Gl=(e,t)=>e.origin===t.origin&&e.pathname===t.pathname;function Rs(e){return e!==null&&typeof e=="object"&&e!==void 0&&"url"in e&&"method"in e}function mg(e){return/^([a-z][a-z0-9+.-]*:)?\/\/[^/]/i.test(e)}var yg=class{page;swapComponent;resolveComponent;onFlashCallback;componentId={};listeners=[];isFirstPageLoad=!0;cleared=!1;pendingDeferredProps=null;historyQuotaExceeded=!1;optimisticBaseline={};pendingOptimistics=[];optimisticCounter=0;init({initialPage:e,swapComponent:t,resolveComponent:r,onFlash:n}){return this.page={...e,flash:e.flash??{},rescuedProps:e.rescuedProps??[]},this.swapComponent=t,this.resolveComponent=r,this.onFlashCallback=n,St.on("historyQuotaExceeded",()=>{this.historyQuotaExceeded=!0}),this}set(e,{replace:t=!1,preserveScroll:r=!1,preserveState:n=!1,viewTransition:s=!1,cached:i=!1,initialRender:o=!1,visitId:l}={}){Object.keys(e.deferredProps||{}).length&&(this.pendingDeferredProps={deferredProps:e.deferredProps,component:e.component,url:e.url},e.initialDeferredProps===void 0&&(e.initialDeferredProps=e.deferredProps)),this.componentId={};const a=this.componentId;return e.clearHistory&&re.clear(),this.resolve(e.component,e).then(c=>{if(a!==this.componentId)return;e.rememberedState??={};const u=typeof window>"u",f=u?new URL(e.url):window.location,g=!u&&r?Ge.getScrollRegions():[];t=t||Ts(Mt(e.url),f);const w={...e,flash:{}};return new Promise(v=>t?re.replaceState(w,v):re.pushState(w,v)).then(()=>{const v=!this.isTheSame(e);if(!v&&Object.keys(e.props.errors||{}).length>0&&(s=!1),this.page=e,this.cleared=!1,this.hasOnceProps()&&vt.updateCachedOncePropsFromCurrentPage(),v&&this.fireEventsFor("newComponent"),this.isFirstPageLoad&&this.fireEventsFor("firstLoad"),this.isFirstPageLoad=!1,this.historyQuotaExceeded){this.historyQuotaExceeded=!1;return}return this.swap({component:c,page:e,preserveState:n,viewTransition:s,initialRender:o}).then(()=>{r?window.requestAnimationFrame(()=>Ge.restoreScrollRegions(g)):Ge.reset(),this.pendingDeferredProps&&this.pendingDeferredProps.component===e.component&&this.pendingDeferredProps.url===e.url&&St.fireInternalEvent("loadDeferredProps",this.pendingDeferredProps.deferredProps),this.pendingDeferredProps=null,t||As(e,{cached:i,visitId:l})})})})}setQuietly(e,{preserveState:t=!1}={}){return this.resolve(e.component,e).then(r=>(this.page=e,this.cleared=!1,re.setCurrent(e),this.swap({component:r,page:e,preserveState:t,viewTransition:!1})))}clear(){this.cleared=!0}isCleared(){return this.cleared}get(){return this.page}getWithoutFlashData(){return{...this.page,flash:{}}}hasOnceProps(){return Object.keys(this.page.onceProps??{}).length>0}merge(e){this.page={...this.page,...e}}setPropsQuietly(e){return this.page={...this.page,props:e},this.resolve(this.page.component,this.page).then(t=>this.swap({component:t,page:this.page,preserveState:!0,viewTransition:!1}))}setFlash(e){this.page={...this.page,flash:e},this.onFlashCallback?.(e)}setUrlHash(e){this.page.url.includes(e)||(this.page.url+=e)}remember(e){this.page.rememberedState=e}swap({component:e,page:t,preserveState:r,viewTransition:n,initialRender:s=!1}){const i=()=>this.swapComponent({component:e,page:t,preserveState:r,initialRender:s});if(!n||!document?.startViewTransition||document.visibilityState==="hidden")return i();const o=typeof n=="boolean"?()=>null:n,l=a=>{a.catch(c=>{if(!(c instanceof DOMException))throw c})};return new Promise(a=>{const c=document.startViewTransition(()=>i().then(a));l(c.ready),l(c.finished),l(c.updateCallbackDone),o(c)})}resolve(e,t){return Promise.resolve(this.resolveComponent(e,t))}nextOptimisticId(){return++this.optimisticCounter}setBaseline(e,t){e in this.optimisticBaseline||(this.optimisticBaseline[e]=t)}updateBaseline(e,t){e in this.optimisticBaseline&&(this.optimisticBaseline[e]=t)}hasBaseline(e){return e in this.optimisticBaseline}registerOptimistic(e,t){this.pendingOptimistics.push({id:e,callback:t})}unregisterOptimistic(e){this.pendingOptimistics=this.pendingOptimistics.filter(t=>t.id!==e)}replayOptimistics(){const e=Object.keys(this.optimisticBaseline);if(e.length===0)return{};const t=fe(this.page.props);for(const n of e)t[n]=fe(this.optimisticBaseline[n]);for(const{callback:n}of this.pendingOptimistics){const s=n(fe(t));s&&Object.assign(t,s)}const r={};for(const n of e)r[n]=t[n];return r}pendingOptimisticCount(){return this.pendingOptimistics.length}clearOptimisticState(){this.optimisticBaseline={},this.pendingOptimistics=[]}isTheSame(e){return this.page.component===e.component}on(e,t){return this.listeners.push({event:e,callback:t}),()=>{this.listeners=this.listeners.filter(r=>r.event!==e&&r.callback!==t)}}fireEventsFor(e){this.listeners.filter(t=>t.event===e).forEach(t=>t.callback())}mergeOncePropsIntoResponse(e,{force:t=!1}={}){Object.entries(e.onceProps??{}).forEach(([r,n])=>{const s=this.page.onceProps?.[r];s!==void 0&&(t||ye(e.props,n.prop)===void 0)&&(ot(e.props,n.prop,ye(this.page.props,s.prop)),e.onceProps[r].expiresAt=s.expiresAt)})}},j=new yg,jo=class{items=[];processingPromise=null;add(e){return this.items.push(e),this.process()}process(){return this.processingPromise??=this.processNext().finally(()=>{this.processingPromise=null}),this.processingPromise}processNext(){const e=this.items.shift();return e?Promise.resolve(e()).then(()=>this.processNext()):Promise.resolve()}},Er=typeof window>"u",Wr=new jo,Jl=!Er&&/CriOS/.test(window.navigator.userAgent),bg=class{rememberedState="rememberedState";scrollRegions="scrollRegions";preserveUrl=!1;current={};initialState=null;remember(e,t){this.replaceState({...j.getWithoutFlashData(),rememberedState:{...j.get()?.rememberedState??{},[t]:e}})}restore(e){if(!Er)return this.current[this.rememberedState]?.[e]!==void 0?this.current[this.rememberedState]?.[e]:this.initialState?.[this.rememberedState]?.[e]}pushState(e,t=null){if(!Er){if(this.preserveUrl){t&&t();return}this.current=e,Wr.add(()=>this.getPageData(e).then(r=>{const n=()=>this.doPushState({page:r},e.url).then(()=>t?.());return Jl?new Promise(s=>{setTimeout(()=>n().then(s))}):n()}))}}clonePageProps(e){try{return structuredClone(e.props),e}catch{return{...e,props:fe(e.props)}}}getPageData(e){const t=this.clonePageProps(e);return new Promise(r=>e.encryptHistory?Jp(t).then(r):r(t))}processQueue(){return Wr.process()}decrypt(e=null){if(Er)return Promise.resolve(e??j.get());const t=e??window.history.state?.page;return this.decryptPageData(t).then(r=>{if(!r)throw new Error("Unable to decrypt history");return this.initialState===null?this.initialState=r??void 0:this.current=r??{},r})}decryptPageData(e){return e instanceof ArrayBuffer?Qp(e):Promise.resolve(e)}saveScrollPositions(e){Wr.add(()=>Promise.resolve().then(()=>{if(window.history.state?.page&&!Et(this.getScrollRegions(),e))return this.doReplaceState({page:window.history.state.page,scrollRegions:e})}))}saveDocumentScrollPosition(e){Wr.add(()=>Promise.resolve().then(()=>{if(window.history.state?.page&&!Et(this.getDocumentScrollPosition(),e))return this.doReplaceState({page:window.history.state.page,documentScrollPosition:e})}))}getScrollRegions(){return window.history.state?.scrollRegions||[]}getDocumentScrollPosition(){return window.history.state?.documentScrollPosition||{top:0,left:0}}replaceState(e,t=null){if(Et(this.current,e)){t&&t();return}const{flash:r,...n}=e;if(j.merge(n),!Er){if(this.preserveUrl){t&&t();return}this.current=e,Wr.add(()=>this.getPageData(e).then(s=>{const i=()=>this.doReplaceState({page:s},e.url).then(()=>t?.());return Jl?new Promise(o=>{setTimeout(()=>i().then(o))}):i()}))}}isHistoryThrottleError(e){return e instanceof Error&&e.name==="SecurityError"&&(e.message.includes("history.pushState")||e.message.includes("history.replaceState"))}isQuotaExceededError(e){return e instanceof Error&&e.name==="QuotaExceededError"}withThrottleProtection(e){return Promise.resolve().then(()=>{try{return e()}catch(t){if(!this.isHistoryThrottleError(t))throw t;console.error(t.message)}})}doReplaceState(e,t){return this.withThrottleProtection(()=>{window.history.replaceState({...e,scrollRegions:e.scrollRegions??window.history.state?.scrollRegions,documentScrollPosition:e.documentScrollPosition??window.history.state?.documentScrollPosition},"",t)})}doPushState(e,t){return this.withThrottleProtection(()=>{try{window.history.pushState(e,"",t)}catch(r){if(!this.isQuotaExceededError(r))throw r;St.fireInternalEvent("historyQuotaExceeded",t)}})}getState(e,t){return this.current?.[e]??t}deleteState(e){this.current[e]!==void 0&&(delete this.current[e],this.replaceState(this.current))}clearInitialState(e){this.initialState&&this.initialState[e]!==void 0&&delete this.initialState[e]}browserHasHistoryEntry(){return!Er&&!!window.history.state?.page}clear(){Xe.remove(Mr.key),Xe.remove(Mr.iv)}setCurrent(e){this.current=e}isValidState(e){return!!e.page}getAllState(){return this.current}};typeof window<"u"&&window.history.scrollRestoration&&(window.history.scrollRestoration="manual");var re=new bg,wg=class{internalListeners=[];init(){typeof window<"u"&&(window.addEventListener("popstate",this.handlePopstateEvent.bind(this)),window.addEventListener("pageshow",this.handlePageshowEvent.bind(this)),window.addEventListener("scroll",to(Ge.onWindowScroll.bind(Ge),100),!0)),typeof document<"u"&&document.addEventListener("scroll",to(Ge.onScroll.bind(Ge),100),!0)}onGlobalEvent(e,t){const r=(n=>{const s=t(n);n.cancelable&&!n.defaultPrevented&&s===!1&&n.preventDefault()});return this.registerListener(`inertia:${e}`,r)}on(e,t){return this.internalListeners.push({event:e,listener:t}),()=>{this.internalListeners=this.internalListeners.filter(r=>r.listener!==t)}}onMissingHistoryItem(){j.clear(),this.fireInternalEvent("missingHistoryItem")}fireInternalEvent(e,...t){this.internalListeners.filter(r=>r.event===e).forEach(r=>r.listener(...t))}registerListener(e,t){return document.addEventListener(e,t),()=>document.removeEventListener(e,t)}handlePageshowEvent(e){e.persisted&&re.decrypt().catch(()=>this.onMissingHistoryItem())}handlePopstateEvent(e){const t=e.state||null;if(t===null){const r=Mt(j.get().url);r.hash=window.location.hash,re.replaceState({...j.getWithoutFlashData(),url:r.href}),Ge.reset();return}if(!re.isValidState(t))return this.onMissingHistoryItem();re.decrypt(t.page).then(r=>{if(j.get().version!==r.version){this.onMissingHistoryItem();return}ge.cancelAll({prefetch:!1}),j.setQuietly(r,{preserveState:!1}).then(()=>{Ge.restore(re.getScrollRegions()),As(j.get());const n={},s=j.get().props;for(const[i,o]of Object.entries(r.initialDeferredProps??r.deferredProps??{})){const l=o.filter(a=>ye(s,a)===void 0);l.length>0&&(n[i]=l)}Object.keys(n).length>0&&this.fireInternalEvent("loadDeferredProps",n)})}).catch(()=>{this.onMissingHistoryItem()})}},St=new wg,vg=class{type;constructor(){this.type=this.resolveType()}resolveType(){return typeof window>"u"?"navigate":window.performance?.getEntriesByType("navigation")[0]?.type??"navigate"}get(){return this.type}isBackForward(){return this.type==="back_forward"}isReload(){return this.type==="reload"}},Si=new vg;function Jn(){const e=typeof window<"u"?window.crypto:void 0;if(e?.randomUUID)return e.randomUUID();const t=()=>e?.getRandomValues?e.getRandomValues(new Uint8Array(1))[0]:Math.floor(Math.random()*256);return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,r=>(+r^t()&15>>+r/4).toString(16))}var _g=class{static handle(){this.clearRememberedStateOnReload(),[this.handleBackForward,this.handleLocation,this.handleDefault].find(t=>t.bind(this)())}static clearRememberedStateOnReload(){Si.isReload()&&(re.deleteState(re.rememberedState),re.clearInitialState(re.rememberedState))}static handleBackForward(){if(!Si.isBackForward()||!re.browserHasHistoryEntry())return!1;const e=re.getScrollRegions();return re.decrypt().then(t=>{const r=Jn();j.set(t,{preserveScroll:!0,preserveState:!0,visitId:r}).then(()=>{Ge.restore(e),As(j.get(),{visitId:r})})}).catch(()=>{St.onMissingHistoryItem()}),!0}static handleLocation(){if(!Xe.exists(Xe.locationVisitKey))return!1;const e=Xe.get(Xe.locationVisitKey)||{};return Xe.remove(Xe.locationVisitKey),typeof window<"u"&&j.setUrlHash(window.location.hash),re.decrypt(j.get()).then(()=>{const t=Jn(),r=re.getState(re.rememberedState,{}),n=re.getScrollRegions();j.remember(r),j.set(j.get(),{preserveScroll:e.preserveScroll,preserveState:!0,initialRender:!0,visitId:t}).then(()=>{e.preserveScroll&&Ge.restore(n),this.fireInitialEvents(t)})}).catch(()=>{St.onMissingHistoryItem()}),!0}static handleDefault(){typeof window<"u"&&j.setUrlHash(window.location.hash);const e=Jn();j.set(j.get(),{preserveScroll:!0,preserveState:!0,initialRender:!0,visitId:e}).then(()=>{Si.isReload()?Ge.restore(re.getScrollRegions()):Ge.scrollToAnchor(),this.fireInitialEvents(e)})}static fireInitialEvents(e){const t=j.get();As(t,{visitId:e}),Object.keys(t.flash).length>0&&queueMicrotask(()=>Os(t.flash))}},Pg=class{intervalId=null;timeoutId=null;throttle=!1;keepAlive=!1;cb;interval;cbCount=0;mode;inFlight=!1;currentCancel=null;stopped=!0;instanceId=0;constructor(e,t,r){this.keepAlive=r.keepAlive??!1,this.mode=r.mode??"overlap",this.cb=t,this.interval=e,(r.autoStart??!0)&&this.start()}stop(){this.stopped=!0,this.instanceId++,this.inFlight=!1,this.currentCancel=null,this.intervalId&&(clearInterval(this.intervalId),this.intervalId=null),this.timeoutId&&(clearTimeout(this.timeoutId),this.timeoutId=null)}start(){if(!(typeof window>"u")){if(this.stop(),this.stopped=!1,this.mode==="rest"){this.scheduleNext();return}this.intervalId=window.setInterval(()=>this.tick(),this.interval)}}isInBackground(e){this.throttle=this.keepAlive?!1:e,this.throttle&&(this.cbCount=0)}scheduleNext(){this.stopped||(this.timeoutId=window.setTimeout(()=>{this.timeoutId=null,this.tick()},this.interval))}tick(){!this.throttle||this.cbCount%10===0?this.fire():this.mode==="rest"&&this.scheduleNext(),this.throttle&&this.cbCount++}fire(){this.inFlight&&this.mode==="cancel"&&this.currentCancel?.();const e=this.instanceId;this.cb({onStart:t=>{e===this.instanceId&&(this.inFlight=!0,this.currentCancel=t)},onFinish:()=>{e===this.instanceId&&(this.inFlight=!1,this.currentCancel=null,this.mode==="rest"&&this.scheduleNext())}})}},Sg=class{polls=[];constructor(){this.setupVisibilityListener()}get count(){return this.polls.length}add(e,t,r){const n=new Pg(e,t,r);return this.polls.push(n),{stop:()=>n.stop(),start:()=>n.start(),destroy:()=>{n.stop(),this.polls=this.polls.filter(s=>s!==n)}}}clear(){this.polls.forEach(e=>e.stop()),this.polls=[]}setupVisibilityListener(){typeof document>"u"||document.addEventListener("visibilitychange",()=>{this.polls.forEach(e=>e.isInBackground(document.hidden))},!1)}},Ql=new Sg,Eg=class{requestHandlers=[];responseHandlers=[];errorHandlers=[];onRequest(e){return this.requestHandlers.push(e),()=>{this.requestHandlers=this.requestHandlers.filter(t=>t!==e)}}onResponse(e){return this.responseHandlers.push(e),()=>{this.responseHandlers=this.responseHandlers.filter(t=>t!==e)}}onError(e){return this.errorHandlers.push(e),()=>{this.errorHandlers=this.errorHandlers.filter(t=>t!==e)}}async processRequest(e){let t=e;for(const r of this.requestHandlers)t=await r(t);return t}async processResponse(e){let t=e;for(const r of this.responseHandlers)t=await r(t);return t}async processError(e){for(const t of this.errorHandlers)await t(e)}},Le=new Eg,Lo=class extends Error{code;url;constructor(e,t,r){super(r?`${e} (${r})`:e),this.name="HttpError",this.code=t,this.url=r}},yn=class extends Lo{response;constructor(e,t,r){super(e,"ERR_HTTP_RESPONSE",r),this.name="HttpResponseError",this.response=t}},bn=class extends Lo{constructor(e="Request was cancelled",t){super(e,"ERR_CANCELLED",t),this.name="HttpCancelledError"}},Yl=class extends Lo{cause;constructor(e,t,r){super(e,"ERR_NETWORK",t),this.name="HttpNetworkError",this.cause=r}};function Ag(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null}function Og(e){const t={};return e.getAllResponseHeaders().split(`\r -`).forEach(r=>{const n=r.indexOf(":");n>0&&(t[r.slice(0,n).toLowerCase().trim()]=r.slice(n+1).trim())}),t}function Tu(e){return typeof FormData<"u"&&e instanceof FormData}function Cg(e){return typeof e=="string"||Tu(e)||typeof Blob<"u"&&e instanceof Blob||typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer||typeof ArrayBuffer<"u"&&ArrayBuffer.isView(e)||typeof URLSearchParams<"u"&&e instanceof URLSearchParams}function xg(e,t){if(!t.headers)return;const r=Tu(t.data);Object.entries(t.headers).forEach(([n,s])=>{(n.toLowerCase()!=="content-type"||!r)&&e.setRequestHeader(n,String(s))})}function Tg(e,t){if(!t||Object.keys(t).length===0)return e;const[r]=Ho("get",e,t);return r}var Ru=class{xsrfCookieName;xsrfHeaderName;constructor(e={}){this.xsrfCookieName=e.xsrfCookieName??"XSRF-TOKEN",this.xsrfHeaderName=e.xsrfHeaderName??"X-XSRF-TOKEN"}async request(e){const t=await Le.processRequest(e);try{const r=await this.doRequest(t);return await Le.processResponse(r)}catch(r){throw(r instanceof yn||r instanceof Yl||r instanceof bn)&&await Le.processError(r),r}}doRequest(e){return new Promise((t,r)=>{const n=new XMLHttpRequest,s=Tg(e.url,e.params);n.open(e.method.toUpperCase(),s,!0);const i=Ag(this.xsrfCookieName);i&&n.setRequestHeader(this.xsrfHeaderName,i),Object.keys(e.headers??{}).some(a=>a.toLowerCase()==="x-requested-with")||n.setRequestHeader("X-Requested-With","XMLHttpRequest");let l=null;e.data!==null&&e.data!==void 0&&(Cg(e.data)?l=e.data:typeof e.data=="object"?(l=JSON.stringify(e.data),!e.headers?.["Content-Type"]&&!e.headers?.["content-type"]&&n.setRequestHeader("Content-Type","application/json")):l=String(e.data)),xg(n,e),e.onUploadProgress&&(n.upload.onprogress=a=>{const c=a.lengthComputable?a.loaded/a.total:void 0;e.onUploadProgress({progress:c,percentage:c?Math.round(c*100):0,loaded:a.loaded,total:a.lengthComputable?a.total:void 0})}),e.signal&&e.signal.addEventListener("abort",()=>n.abort()),n.onabort=()=>r(new bn("Request was cancelled",e.url)),n.onerror=()=>r(new Yl("Network error",e.url)),n.onload=()=>{const a={status:n.status,data:n.responseText,headers:Og(n)};n.status>=400?r(new yn(`Request failed with status ${n.status}`,a,e.url)):t(a)},n.send(l)})}},Rg=new Ru,Ei=Rg;function Ig(e){return!("request"in e)}var Uo={getClient(){return Ei},setClient(e){if(!Ig(e)){Ei=e;return}Ei=new Ru(e),e.xsrfCookieName&&Ue.withXsrfCookieName(e.xsrfCookieName),e.xsrfHeaderName&&Ue.withXsrfHeaderName(e.xsrfHeaderName)},onRequest:Le.onRequest.bind(Le),onResponse:Le.onResponse.bind(Le),onError:Le.onError.bind(Le),processRequest:Le.processRequest.bind(Le),processResponse:Le.processResponse.bind(Le),processError:Le.processError.bind(Le)},Fg=class{requestHandlers=[];responseHandlers=[];onVisitRequest(e){return this.requestHandlers.push(e),()=>{this.requestHandlers=this.requestHandlers.filter(t=>t!==e)}}onVisitResponse(e){return this.responseHandlers.push(e),()=>{this.responseHandlers=this.responseHandlers.filter(t=>t!==e)}}async processRequest(e,t){let r=t;for(const n of this.requestHandlers)r=await n(e,r);return r}async processResponse(e,t){let r=t;for(const n of this.responseHandlers)r=await n(e,r);return r}},qo=new Fg;function Ng(){typeof window>"u"||(window.__inertia_interceptors__=qo)}var Qn=class Yn{callbacks=[];params;constructor(t){if(!t.prefetch)this.params=t;else{const r={onBefore:this.wrapCallback(t,"onBefore"),onBeforeUpdate:this.wrapCallback(t,"onBeforeUpdate"),onStart:this.wrapCallback(t,"onStart"),onProgress:this.wrapCallback(t,"onProgress"),onFinish:this.wrapCallback(t,"onFinish"),onCancel:this.wrapCallback(t,"onCancel"),onSuccess:this.wrapCallback(t,"onSuccess"),onError:this.wrapCallback(t,"onError"),onHttpException:this.wrapCallback(t,"onHttpException"),onNetworkError:this.wrapCallback(t,"onNetworkError"),onFlash:this.wrapCallback(t,"onFlash"),onCancelToken:this.wrapCallback(t,"onCancelToken"),onPrefetched:this.wrapCallback(t,"onPrefetched"),onPrefetching:this.wrapCallback(t,"onPrefetching")};this.params={...t,...r,onPrefetchResponse:t.onPrefetchResponse||(()=>{}),onPrefetchError:t.onPrefetchError||(()=>{})}}}static create(t){return new Yn(t)}data(){return this.params.method==="get"?null:this.params.data}queryParams(){return this.params.method==="get"?this.params.data:{}}isPartial(){return this.params.only.length>0||this.params.except.length>0||this.params.reset.length>0}isPrefetch(){return this.params.prefetch===!0}isDeferredPropsRequest(){return this.params.deferredProps===!0}isPollRequest(){return this.params.poll===!0}onCancelToken(t){this.params.onCancelToken({cancel:t})}markAsFinished(){this.params.completed=!0,this.params.cancelled=!1,this.params.interrupted=!1}markAsCancelled({cancelled:t=!0,interrupted:r=!1}){this.params.onCancel(),this.params.completed=!1,this.params.cancelled=t,this.params.interrupted=r}wasCancelledAtAll(){return this.params.cancelled||this.params.interrupted}onFinish(){this.params.onFinish(this.params)}onStart(){this.params.onStart(this.params)}onPrefetching(){this.params.onPrefetching(this.params)}onPrefetchResponse(t){this.params.onPrefetchResponse&&this.params.onPrefetchResponse(t)}onPrefetchError(t){this.params.onPrefetchError&&this.params.onPrefetchError(t)}all(){return this.params}headers(){const t={...this.params.headers};this.isPartial()&&(t["X-Inertia-Partial-Component"]=j.get().component);const r=this.params.only.concat(this.params.reset);return r.length>0&&(t["X-Inertia-Partial-Data"]=r.join(",")),this.params.except.length>0&&(t["X-Inertia-Partial-Except"]=this.params.except.join(",")),this.params.reset.length>0&&(t["X-Inertia-Reset"]=this.params.reset.join(",")),this.params.errorBag&&this.params.errorBag.length>0&&(t["X-Inertia-Error-Bag"]=this.params.errorBag),t}setPreserveOptions(t){this.params.preserveScroll=Yn.resolvePreserveOption(this.params.preserveScroll,t),this.params.preserveState=Yn.resolvePreserveOption(this.params.preserveState,t)}runCallbacks(){this.callbacks.forEach(({name:t,args:r})=>{this.params[t](...r)})}merge(t){this.params={...this.params,...t}}wrapCallback(t,r){return(...n)=>{this.recordCallback(r,n),t[r](...n)}}recordCallback(t,r){this.callbacks.push({name:t,args:r})}static resolvePreserveOption(t,r){return typeof t=="function"?t(r):t==="errors"?Object.keys(r.props.errors||{}).length>0:t}},Mg={createIframeAndPage(e){typeof e=="object"&&(e=`All Inertia requests must receive a valid Inertia response, however a plain JSON response was received.
${JSON.stringify(e)}`);const t=document.createElement("html");t.innerHTML=e,t.querySelectorAll("a").forEach(n=>n.setAttribute("target","_top"));const r=document.createElement("iframe");return r.style.backgroundColor="white",r.style.borderRadius="5px",r.style.width="100%",r.style.height="100%",r.setAttribute("sandbox","allow-scripts"),{iframe:r,page:t}},show(e){const{iframe:t,page:r}=this.createIframeAndPage(e);t.style.boxSizing="border-box",t.style.display="block";const n=document.createElement("dialog");n.id="inertia-error-dialog",Object.assign(n.style,{width:"calc(100vw - 100px)",height:"calc(100vh - 100px)",padding:"0",margin:"auto",border:"none",backgroundColor:"transparent"});const s=document.createElement("style");s.textContent=` - dialog#inertia-error-dialog::backdrop { - background-color: rgba(0, 0, 0, 0.6); - } - - dialog#inertia-error-dialog:focus { - outline: none; - } - `;const i=Nr.get("nonce");i&&(s.nonce=i),document.head.appendChild(s),n.addEventListener("click",o=>{o.target===n&&n.close()}),n.addEventListener("close",()=>{s.remove(),n.remove()}),n.appendChild(t),document.body.prepend(n),n.showModal(),n.focus(),t.srcdoc=r.outerHTML}},zl=(e,t)=>e===t||e.startsWith(`${t}.`),kg=(e,t)=>{const{only:r,except:n}=e;return!(r.length===0&&n.length===0||r.length>0&&!r.some(s=>zl(t,s))||n.length>0&&n.some(s=>zl(t,s)))},Dg=new jo,Zl=class Iu{constructor(t,r,n){this.requestParams=t,this.response=r,this.originatingPage=n}requestParams;response;originatingPage;wasPrefetched=!1;processed=!1;static create(t,r,n){return new Iu(t,r,n)}isProcessed(){return this.processed}async handlePrefetch(){Ts(this.requestParams.all().url,window.location)&&this.handle()}async handle(){return Dg.add(()=>this.process())}async process(){if(this.requestParams.all().prefetch)return this.wasPrefetched=!0,this.requestParams.all().prefetch=!1,this.requestParams.all().onPrefetched(this.response,this.requestParams.all()),Wp(this.response,this.requestParams.all()),Promise.resolve();if(this.requestParams.runCallbacks(),this.processed=!0,!this.isInertiaResponse())return this.handleNonInertiaResponse();if(this.isHttpException()){const n={...this.response,data:this.getDataFromResponse(this.response.data)};if(this.requestParams.all().onHttpException(n)===!1||!Bl(n))return}await re.processQueue(),re.preserveUrl=this.requestParams.all().preserveUrl,await this.setPage();const{flash:t}=j.get();Object.keys(t).length>0&&!this.requestParams.isDeferredPropsRequest()&&(Os(t),this.requestParams.all().onFlash(t));const r=j.get().props.errors||{};if(Object.keys(r).length>0){const n=this.getScopedErrors(r);return jp(n,{page:j.get(),visitId:this.requestParams.all().id}),this.requestParams.all().onError(n)}ge.flushByCacheTags(this.requestParams.all().invalidateCacheTags||[]),this.wasPrefetched||ge.flush(j.get().url),Kp(j.get(),{visitId:this.requestParams.all().id}),await this.requestParams.all().onSuccess(j.get()),re.preserveUrl=!1}mergeParams(t){this.requestParams.merge(t)}getPageResponse(){const t=this.getDataFromResponse(this.response.data);return typeof t=="object"?this.response.data={...t,flash:t.flash??{},rescuedProps:t.rescuedProps??[]}:this.response.data=t}async handleNonInertiaResponse(){if(this.isInertiaRedirect()){ge.visit(this.getHeader("x-inertia-redirect"),{...this.requestParams.all(),method:"get",data:{}});return}if(this.isLocationVisit()){const r=Mt(this.getHeader("x-inertia-location"));return Xl(this.requestParams.all().url,r),this.locationVisit(r)}const t={...this.response,data:this.getDataFromResponse(this.response.data)};if(this.requestParams.all().onHttpException(t)!==!1&&Bl(t))return Mg.show(t.data)}isInertiaResponse(){return this.hasHeader("x-inertia")}isHttpException(){return this.response.status>=400}hasStatus(t){return this.response.status===t}getHeader(t){return this.response.headers[t]}hasHeader(t){return this.getHeader(t)!==void 0}isInertiaRedirect(){return this.hasStatus(409)&&this.hasHeader("x-inertia-redirect")}isLocationVisit(){return this.hasStatus(409)&&this.hasHeader("x-inertia-location")}locationVisit(t){try{if(typeof window>"u")return;const r=this.getHeader("x-inertia-version"),n=!!r&&r!==j.get().version;if(!Gp(t,n)||n&&this.requestParams.all().async)return;Xe.set(Xe.locationVisitKey,{preserveScroll:this.requestParams.all().preserveScroll===!0}),Ts(window.location,t)?window.location.reload():window.location.href=t.href}catch{return!1}}async setPage(){const t=this.getPageResponse();return this.shouldSetPage(t)?(this.response=await qo.processResponse(this.requestParams.all(),this.response),this.mergeProps(t),j.mergeOncePropsIntoResponse(t),this.preserveOptimisticProps(t),this.preserveEqualProps(t),await this.setRememberedState(t),this.requestParams.setPreserveOptions(t),t.url=re.preserveUrl?j.get().url:this.pageUrl(t),this.requestParams.all().onBeforeUpdate(t),qp(t),j.set(t,{replace:this.requestParams.all().replace,preserveScroll:this.requestParams.all().preserveScroll,preserveState:this.requestParams.all().preserveState,viewTransition:this.requestParams.all().viewTransition,cached:this.requestParams.all().cached,visitId:this.requestParams.all().id})):Promise.resolve()}getDataFromResponse(t){if(typeof t!="string")return t;try{return JSON.parse(t)}catch{return t}}shouldSetPage(t){if(!this.requestParams.all().async||this.originatingPage.component!==t.component)return!0;if(this.originatingPage.component!==j.get().component)return!1;const r=Mt(this.originatingPage.url),n=Mt(j.get().url);return r.origin===n.origin&&r.pathname===n.pathname}pageUrl(t){const r=Mt(t.url);return t.preserveFragment?r.hash=this.requestParams.all().url.hash:Xl(this.requestParams.all().url,r),r.pathname+r.search+r.hash}preserveOptimisticProps(t){if(ge.hasPendingOptimistic())for(const r of Object.keys(t.props))j.hasBaseline(r)&&(j.updateBaseline(r,t.props[r]),t.props[r]=j.get().props[r])}preserveEqualProps(t){if(t.component!==j.get().component)return;const r=j.get().props;Object.entries(t.props).forEach(([n,s])=>{Et(s,r[n])&&(t.props[n]=r[n])})}mergeProps(t){if(!this.requestParams.isPartial()||t.component!==j.get().component)return;const r=t.mergeProps||[],n=t.prependProps||[],s=t.deepMergeProps||[],i=t.matchPropsOn||[],o=(c,u)=>{const f=ye(j.get().props,c),g=ye(t.props,c);if(Array.isArray(g)){const w=this.mergeOrMatchItems(f||[],g,c,i,u);ot(t.props,c,w)}else if(typeof g=="object"&&g!==null){const w={...f||{},...g};ot(t.props,c,w)}};r.forEach(c=>o(c,!0)),n.forEach(c=>o(c,!1)),s.forEach(c=>{const u=ye(j.get().props,c),f=ye(t.props,c),g=(w,v,E)=>Array.isArray(v)?this.mergeOrMatchItems(w,v,E,i):typeof v=="object"&&v!==null?Object.keys(v).reduce((I,C)=>(I[C]=g(w?w[C]:void 0,v[C],`${E}.${C}`),I),{...w}):v;ot(t.props,c,g(u,f,c))});const l=new Set([...this.requestParams.all().only,...this.requestParams.all().except].filter(c=>c.includes(".")).map(c=>c.split(".")[0]));for(const c of l){const u=j.get().props[c];this.isObject(u)&&this.isObject(t.props[c])&&(t.props[c]=this.deepMergeObjects(u,t.props[c]))}t.props={...j.get().props,...t.props},this.shouldPreserveErrors(t)&&(t.props.errors=j.get().props.errors),j.get().scrollProps&&(t.scrollProps={...j.get().scrollProps||{},...t.scrollProps||{}}),j.hasOnceProps()&&(t.onceProps={...j.get().onceProps||{},...t.onceProps||{}}),this.requestParams.isDeferredPropsRequest()&&(t.flash={...j.get().flash});const a=j.get().initialDeferredProps;a&&Object.keys(a).length>0&&(t.initialDeferredProps=a),t.rescuedProps=this.mergeRescuedProps(t)}mergeRescuedProps(t){const r=j.get().rescuedProps??[],n=t.rescuedProps??[],s=new Set(r.filter(i=>!kg(this.requestParams.all(),i)));return n.forEach(i=>s.add(i)),Array.from(s)}shouldPreserveErrors(t){if(!this.requestParams.all().preserveErrors)return!1;const r=j.get().props.errors;if(!r||Object.keys(r).length===0)return!1;const n=t.props.errors;return!(n&&Object.keys(n).length>0)}isObject(t){return t&&typeof t=="object"&&!Array.isArray(t)}deepMergeObjects(t,r){const n={...t};for(const s of Object.keys(r)){const i=t[s],o=r[s];this.isObject(i)&&this.isObject(o)?n[s]=this.deepMergeObjects(i,o):n[s]=o}return n}mergeOrMatchItems(t,r,n,s,i=!0){const o=Array.isArray(t)?t:[],l=s.find(u=>u.split(".").slice(0,-1).join(".")===n);if(!l)return i?[...o,...r]:[...r,...o];const a=l.split(".").pop()||"",c=new Map;return r.forEach(u=>{this.hasUniqueProperty(u,a)&&c.set(u[a],u)}),i?this.appendWithMatching(o,r,c,a):this.prependWithMatching(o,r,c,a)}appendWithMatching(t,r,n,s){const i=t.map(l=>this.hasUniqueProperty(l,s)&&n.has(l[s])?n.get(l[s]):l),o=r.filter(l=>this.hasUniqueProperty(l,s)?!t.some(a=>this.hasUniqueProperty(a,s)&&a[s]===l[s]):!0);return[...i,...o]}prependWithMatching(t,r,n,s){const i=t.filter(o=>this.hasUniqueProperty(o,s)?!n.has(o[s]):!0);return[...r,...i]}hasUniqueProperty(t,r){return t&&typeof t=="object"&&r in t}async setRememberedState(t){const r=await re.getState(re.rememberedState,{});this.requestParams.all().preserveState&&r&&t.component===j.get().component&&(t.rememberedState=r)}getScopedErrors(t){return this.requestParams.all().errorBag?t[this.requestParams.all().errorBag||""]||{}:t}},ea=class Fu{constructor(t,r,{optimistic:n=!1}={}){this.page=r,this.requestParams=Qn.create(t),this.cancelToken=new AbortController,this.optimistic=n}page;response;cancelToken;requestParams;requestHasFinished=!1;optimistic;static create(t,r,n){return new Fu(t,r,n)}isPrefetch(){return this.requestParams.isPrefetch()}getUrl(){return this.requestParams.all().url}isOptimistic(){return this.optimistic}isPendingOptimistic(){return this.isOptimistic()&&(!this.response||!this.response.isProcessed())}async send(){this.requestParams.onCancelToken(()=>{this.response||this.cancel({cancelled:!0})}),Vp(this.requestParams.all()),this.requestParams.onStart(),this.requestParams.all().prefetch&&(this.requestParams.onPrefetching(),Xp(this.requestParams.all()));const t=this.requestParams.all().prefetch,r={method:this.requestParams.all().method,url:xs(this.requestParams.all().url).href,data:this.requestParams.data(),signal:this.cancelToken.signal,headers:this.getHeaders(),onUploadProgress:this.onProgress.bind(this)},n=await qo.processRequest(this.requestParams.all(),r);return Uo.getClient().request(n).then(s=>(this.response=Zl.create(this.requestParams,s,this.page),this.response.handle())).catch(s=>s instanceof yn?(this.response=Zl.create(this.requestParams,s.response,this.page),this.response.handle()):Promise.reject(s)).catch(s=>{if(!(s instanceof bn)&&this.requestParams.all().onNetworkError(s)!==!1&&Lp(s))return t&&this.requestParams.onPrefetchError(s),Promise.reject(s)}).finally(()=>{this.finish(),t&&this.response&&this.requestParams.onPrefetchResponse(this.response)})}finish(){this.requestParams.wasCancelledAtAll()||(this.requestParams.markAsFinished(),this.fireFinishEvents())}fireFinishEvents(){this.requestHasFinished||(this.requestHasFinished=!0,Up(this.requestParams.all()),this.requestParams.onFinish())}cancel({cancelled:t=!1,interrupted:r=!1}){this.requestHasFinished||(this.cancelToken.abort(),this.requestParams.markAsCancelled({cancelled:t,interrupted:r}),this.fireFinishEvents())}onProgress(t){this.requestParams.data()instanceof FormData&&(Bp(t),this.requestParams.all().onProgress(t))}getHeaders(){const t={...this.requestParams.headers(),Accept:"text/html, application/xhtml+xml","X-Requested-With":"XMLHttpRequest","X-Inertia":!0},r=j.get();r.version&&(t["X-Inertia-Version"]=r.version);const n=Object.entries(r.onceProps||{}).filter(([,s])=>ye(r.props,s.prop)===void 0?!1:!s.expiresAt||s.expiresAt>Date.now()).map(([s])=>s);return n.length>0&&(t["X-Inertia-Except-Once-Props"]=n.join(",")),t}},ta=class{requests=[];maxConcurrent;interruptible;constructor({maxConcurrent:e,interruptible:t}){this.maxConcurrent=e,this.interruptible=t}send(e){this.requests.push(e),e.send().finally(()=>{this.requests=this.requests.filter(t=>t!==e)})}interruptInFlight(){this.cancel({interrupted:!0},!1)}cancelInFlight(e={}){const t=typeof e=="function"?e:r=>{const{prefetch:n=!0,optimistic:s=!0}=e;return(n||!r.isPrefetch())&&(s||!r.isOptimistic())};this.requests.filter(t).forEach(r=>r.cancel({cancelled:!0}))}cancel({cancelled:e=!1,interrupted:t=!1}={},r=!1){if(!r&&!this.shouldCancel())return;this.requests.shift()?.cancel({cancelled:e,interrupted:t})}shouldCancel(){return this.interruptible&&this.requests.length>=this.maxConcurrent}hasPendingOptimistic(){return this.requests.some(e=>e.isPendingOptimistic())}},Ve=()=>{},Hg=class{syncRequestStream=new ta({maxConcurrent:1,interruptible:!0});asyncRequestStream=new ta({maxConcurrent:1/0,interruptible:!1});clientVisitQueue=new jo;pendingOptimisticCallback=void 0;init({initialPage:e,resolveComponent:t,swapComponent:r,onFlash:n}){j.init({initialPage:e,resolveComponent:t,swapComponent:r,onFlash:n}),_g.handle(),St.init(),St.on("missingHistoryItem",()=>{typeof window<"u"&&this.visit(window.location.href,{preserveState:!0,preserveScroll:!0,replace:!0})}),St.on("loadDeferredProps",s=>{this.loadDeferredProps(s)}),St.on("historyQuotaExceeded",s=>{window.location.href=s})}optimistic(e){return this.pendingOptimisticCallback=e,this}get(e,t={},r={}){return this.visit(e,{...r,method:"get",data:t})}post(e,t={},r={}){return this.visit(e,{preserveState:!0,...r,method:"post",data:t})}put(e,t={},r={}){return this.visit(e,{preserveState:!0,...r,method:"put",data:t})}patch(e,t={},r={}){return this.visit(e,{preserveState:!0,...r,method:"patch",data:t})}delete(e,t={}){return this.visit(e,{preserveState:!0,...t,method:"delete"})}reload(e={}){return this.doReload(e)}doReload(e={}){if(!(typeof window>"u"))return this.visit(window.location.href,{...e,preserveScroll:!0,preserveState:!0,async:!0,headers:{...e.headers||{},"Cache-Control":"no-cache"}})}remember(e,t="default"){re.remember(e,t)}restore(e="default"){return re.restore(e)}on(e,t){return typeof window>"u"?()=>{}:St.onGlobalEvent(e,t)}once(e,t){if(typeof window>"u")return()=>{};const r=this.on(e,n=>(r(),t(n)));return r}hasPendingOptimistic(){return this.asyncRequestStream.hasPendingOptimistic()}get activePolls(){return Ql.count}cancelAll({async:e=!0,prefetch:t=!0,sync:r=!0}={}){e&&this.asyncRequestStream.cancelInFlight({prefetch:t}),r&&this.syncRequestStream.cancelInFlight()}poll(e,t={},r={}){return Ql.add(e,({onStart:n,onFinish:s})=>{const i=typeof t=="function"?t():t;this.doReload({poll:!0,preserveErrors:!0,...i,onCancelToken:o=>{n(o.cancel),i.onCancelToken?.(o)},onFinish:o=>{s(),i.onFinish?.(o)}})},{autoStart:r.autoStart??!0,keepAlive:r.keepAlive??!1,mode:r.mode})}visit(e,t={}){t.optimistic=t.optimistic??this.pendingOptimisticCallback,this.pendingOptimisticCallback=void 0,t.optimistic&&(t.async=t.async??!0);const r=this.getPendingVisit(e,{...t,showProgress:t.showProgress??(!t.async||!!t.optimistic)}),n=this.getVisitEvents(t);if(n.onBefore(r)===!1||!$l(r))return;const s=Mt(j.get().url);(r.only.length>0||r.except.length>0||r.reset.length>0?Gl(r.url,s):Ts(r.url,s))||this.asyncRequestStream.cancelInFlight(c=>!c.isPrefetch()&&!c.isOptimistic()&&Gl(c.getUrl(),s)),r.async||this.syncRequestStream.interruptInFlight(),t.optimistic&&this.applyOptimisticUpdate(t.optimistic,n),!j.isCleared()&&!r.preserveUrl&&Ge.save();const l={...r,...n},a=()=>{const c=vt.get(l);c?(lt.reveal(c.inFlight),vt.use(c,l)):(lt.reveal(!0),(r.async?this.asyncRequestStream:this.syncRequestStream).send(ea.create(l,j.get(),{optimistic:!!t.optimistic})))};Array.isArray(r.component)&&(console.error(`The "component" prop received an array of components (${r.component.join(", ")}), but only a single component string is supported for instant visits. Pass an explicit component name instead.`),r.component=null),r.component?re.processQueue().then(()=>{this.performInstantSwap(r).then(()=>{l.preserveScroll=!0,l.preserveState=!0,l.replace=!0,l.viewTransition=!1,a()})}):a()}getCached(e,t={}){return vt.findCached(this.getPrefetchParams(e,t))}flush(e,t={}){vt.remove(this.getPrefetchParams(e,t))}flushAll(){vt.removeAll()}flushByCacheTags(e){vt.removeByTags(Array.isArray(e)?e:[e])}getPrefetching(e,t={}){return vt.findInFlight(this.getPrefetchParams(e,t))}prefetch(e,t={},r={}){if((t.method??(Rs(e)?e.method:"get"))!=="get")throw new Error("Prefetch requests must use the GET method");const s=this.getPendingVisit(e,{...t,async:!0,showProgress:!1,prefetch:!0,viewTransition:!1}),i=s.url.origin+s.url.pathname+s.url.search,o=window.location.origin+window.location.pathname+window.location.search;if(i===o)return;const l=this.getVisitEvents(t);if(l.onBefore(s)===!1||!$l(s))return;lt.hide(),this.asyncRequestStream.interruptInFlight();const a={...s,...l};new Promise(u=>{const f=()=>{j.get()?u():setTimeout(f,50)};f()}).then(()=>{vt.add(a,u=>{this.asyncRequestStream.send(ea.create(u,j.get()))},{cacheFor:Nr.get("prefetch.cacheFor"),cacheTags:[],...r})})}clearHistory(){re.clear()}decryptHistory(){return re.decrypt()}resolveComponent(e,t){return j.resolve(e,t)}replace(e){this.clientVisit(e,{replace:!0})}replaceProp(e,t,r){this.replace({preserveScroll:!0,preserveState:!0,props(n){const s=typeof t=="function"?t(ye(n,e),n):t;return ng(n,e,s)},...r||{}})}appendToProp(e,t,r){this.replaceProp(e,(n,s)=>{const i=typeof t=="function"?t(n,s):t;return Array.isArray(n)||(n=n!==void 0?[n]:[]),[...n,i]},r)}prependToProp(e,t,r){this.replaceProp(e,(n,s)=>{const i=typeof t=="function"?t(n,s):t;return Array.isArray(n)||(n=n!==void 0?[n]:[]),[i,...n]},r)}push(e){this.clientVisit(e)}flash(e,t){const r=j.get().flash;let n;if(typeof e=="function")n=e(r);else if(typeof e=="string")n={...r,[e]:t};else if(e&&Object.keys(e).length)n={...r,...e};else return;j.setFlash(n),Object.keys(n).length&&Os(n)}clientVisit(e,{replace:t=!1}={}){this.clientVisitQueue.add(()=>this.performClientVisit(e,{replace:t}))}performClientVisit(e,{replace:t=!1}={}){const r=j.get(),n=typeof e.props=="function"?Object.fromEntries(Object.values(r.onceProps??{}).map(I=>[I.prop,ye(r.props,I.prop)])):{},s=typeof e.props=="function"?e.props(r.props,n):e.props??r.props,i=typeof e.flash=="function"?e.flash(r.flash):e.flash,{viewTransition:o,onError:l,onFinish:a,onFlash:c,onSuccess:u,...f}=e,g={...r,...f,flash:i??{},props:s},w=Qn.resolvePreserveOption(e.preserveScroll??!1,g),v=Qn.resolvePreserveOption(e.preserveState??!1,g),E=this.createVisitId();return j.set(g,{replace:t,preserveScroll:w,preserveState:v,viewTransition:o,visitId:E}).then(()=>{$p(j.get(),{replace:t,visitId:E});const I=j.get().flash;Object.keys(I).length>0&&(Os(I),c?.(I));const C=j.get().props.errors||{};if(Object.keys(C).length===0){u?.(j.get());return}const b=e.errorBag?C[e.errorBag||""]||{}:C;l?.(b)}).finally(()=>a?.(e))}performInstantSwap(e){const t=j.get(),r=Object.fromEntries((t.sharedProps??[]).filter(l=>l in t.props).map(l=>[l,t.props[l]])),n=typeof e.pageProps=="function"?e.pageProps(fe(t.props),fe(r)):e.pageProps,s=n!==null?{...n}:{...r},i=this.preserveOncePropsOnInstantVisit(t,s),o={component:e.component,url:e.url.pathname+e.url.search+e.url.hash,version:t.version,props:{...s,errors:{}},flash:{},rescuedProps:[],clearHistory:!1,encryptHistory:t.encryptHistory,sharedProps:t.sharedProps,onceProps:i,rememberedState:{}};return j.set(o,{replace:e.replace,preserveScroll:Qn.resolvePreserveOption(e.preserveScroll,o),preserveState:!1,viewTransition:e.viewTransition,visitId:e.id})}preserveOncePropsOnInstantVisit(e,t){const r={};return Object.entries(e.onceProps??{}).forEach(([n,s])=>{if(ye(t,s.prop)!==void 0)return;const i=ye(e.props,s.prop);i!==void 0&&(ot(t,s.prop,i),r[n]=s)}),r}getPrefetchParams(e,t){return{...this.getPendingVisit(e,{...t,async:!0,showProgress:!1,prefetch:!0,viewTransition:!1}),...this.getVisitEvents(t)}}createVisitId(){return Jn()}getPendingVisit(e,t){if(Rs(e)){const a=e;e=a.url,t.method=t.method??a.method}const r=Nr.get("visitOptions"),n=r?r(e.toString(),fe(t))||{}:{},s={method:"get",data:{},replace:!1,preserveScroll:!1,preserveState:!1,only:[],except:[],headers:{},errorBag:"",forceFormData:!1,queryStringArrayFormat:"brackets",async:!1,showProgress:!0,fresh:!1,reset:[],preserveUrl:!1,preserveErrors:!1,prefetch:!1,invalidateCacheTags:[],viewTransition:!1,component:null,pageProps:null,cached:!1,...Vl(t),...Vl(n)},[i,o]=gg(e,s.data,s.method,s.forceFormData,s.queryStringArrayFormat),l={id:this.createVisitId(),cancelled:!1,completed:!1,interrupted:!1,...s,url:i,data:o};return l.prefetch&&(l.headers.Purpose="prefetch"),l}getVisitEvents(e){return{onCancelToken:e.onCancelToken||Ve,onBefore:e.onBefore||Ve,onBeforeUpdate:e.onBeforeUpdate||Ve,onStart:e.onStart||Ve,onProgress:e.onProgress||Ve,onFinish:e.onFinish||Ve,onCancel:e.onCancel||Ve,onSuccess:e.onSuccess||Ve,onError:e.onError||Ve,onHttpException:e.onHttpException||Ve,onNetworkError:e.onNetworkError||Ve,onFlash:e.onFlash||Ve,onPrefetched:e.onPrefetched||Ve,onPrefetching:e.onPrefetching||Ve}}applyOptimisticUpdate(e,t){const r=j.get().props,n=e(fe(r));if(!n)return;const s=[];for(const u of Object.keys(n))Et(r[u],n[u])||s.push(u);if(s.length===0)return;const i=j.nextOptimisticId(),o=j.get().component;for(const u of s)j.setBaseline(u,fe(r[u]));j.registerOptimistic(i,e),j.setPropsQuietly({...r,...n});let l=!0;const a=t.onSuccess;t.onSuccess=u=>(l=!1,a(u));const c=t.onFinish;t.onFinish=u=>{if(j.unregisterOptimistic(i),l&&j.get().component===o){const f=j.replayOptimistics();Object.keys(f).length>0&&j.setPropsQuietly({...j.get().props,...f})}return j.pendingOptimisticCount()===0&&j.clearOptimisticState(),c(u)}}loadDeferredProps(e){e&&Object.values(e).forEach(t=>{this.doReload({only:t,deferredProps:!0,preserveErrors:!0})})}},wn=class{static createWayfinderCallback(...e){return()=>e.length===1?Rs(e[0])?e[0]:e[0]():{method:typeof e[0]=="function"?e[0]():e[0],url:typeof e[1]=="function"?e[1]():e[1]}}static parseUseFormArguments(...e){return e.length===0?{rememberKey:null,data:{},precognitionEndpoint:null}:e.length===1?{rememberKey:null,data:e[0],precognitionEndpoint:null}:e.length===2?typeof e[0]=="string"?{rememberKey:e[0],data:e[1],precognitionEndpoint:null}:{rememberKey:null,data:e[1],precognitionEndpoint:this.createWayfinderCallback(e[0])}:{rememberKey:null,data:e[2],precognitionEndpoint:this.createWayfinderCallback(e[0],e[1])}}static parseSubmitArguments(e,t){return e.length===3||e.length===2&&typeof e[0]=="string"?{method:e[0],url:e[1],options:e[2]??{}}:Rs(e[0])?{...e[0],options:e[1]??{}}:{...t(),options:e[0]??{}}}static mergeHeadersForValidation(e,t,r){const n=s=>(s.headers={...r??{},...s.headers??{}},s);return e&&typeof e=="object"&&!("target"in e)?e=n(e):t&&typeof t=="object"?t=n(t):typeof e=="string"?t=n(t??{}):e=n(e??{}),[e,t]}},Xr="server";function jg(e,t){return e.match(/\sdata-inertia(=|\s|>)/)?e:e.replace(/^<([a-zA-Z][^\s/>]*)/,`<$1 data-inertia="server-head-${t}"`)}function ra(e,t){if(!t)return[];const r=typeof t=="function"?t(e):e.props[t===!0?"head":t];return Array.isArray(r)?r.map(n=>typeof n=="string"?n.trim():n).filter(n=>typeof n=="string"&&n.length>0).map(jg):[]}var Lg={buildDOMElement(e){const t=document.createElement("template");t.innerHTML=e;const r=t.content.firstChild;if(!e.startsWith("'); + + View::prependNamespace('lunar-checkout', $views); + + $cart = CheckoutCart::orderable(); + $session = CheckoutCart::session($cart); + + $this->withoutVite()->get(route('lunar.checkout.show', $session->uuid)) + ->assertOk() + ->assertSee('', false); +}); + +it('adds nothing to the head when the store leaves the hook alone', function () { + $cart = CheckoutCart::orderable(); + $session = CheckoutCart::session($cart); + + $this->withoutVite()->get(route('lunar.checkout.show', $session->uuid)) + ->assertOk() + ->assertDontSee('dataLayer', false) + ->assertDontSee('googletagmanager', false); +}); diff --git a/tests/js/analytics.test.js b/tests/js/analytics.test.js new file mode 100644 index 0000000..e650902 --- /dev/null +++ b/tests/js/analytics.test.js @@ -0,0 +1,85 @@ +// GA4 checkout step events (resources/js/utils/analytics.js). +// Run with: npm test +import { afterEach, test } from 'node:test' +import assert from 'node:assert/strict' +import { analyticsItems, fromMinor, trackCheckoutEvent, trackCheckoutStart } from '../../resources/js/utils/analytics.js' + +const items = [ + { id: 1, sku: 'PUMP-1', title: 'Pump', qty: 2, price: 1299 }, + { id: 2, sku: null, title: 'Seal', qty: 1, price: 50 }, +] + +afterEach(() => { + delete globalThis.window +}) + +test('converts minor units by the currency', () => { + assert.equal(fromMinor(1299, 'GBP'), 12.99) + assert.equal(fromMinor(1299, 'JPY'), 1299) + assert.equal(fromMinor(12999, 'KWD'), 12.999) +}) + +test('maps checkout lines to GA4 items, falling back to the line id', () => { + assert.deepEqual(analyticsItems(items, 'GBP'), [ + { item_id: 'PUMP-1', item_name: 'Pump', price: 12.99, quantity: 2 }, + { item_id: '2', item_name: 'Seal', price: 0.5, quantity: 1 }, + ]) +}) + +test('pushes the event with value, extras and items when a data layer exists', () => { + globalThis.window = { dataLayer: [] } + + const sent = trackCheckoutEvent('add_shipping_info', { items, currency: 'GBP', shipping_tier: 'Next day' }) + + assert.equal(sent, true) + assert.deepEqual(globalThis.window.dataLayer, [ + { ecommerce: null }, + { + event: 'add_shipping_info', + ecommerce: { + currency: 'GBP', + value: 26.48, + shipping_tier: 'Next day', + items: analyticsItems(items, 'GBP'), + }, + }, + ]) +}) + +test('sends nothing without a data layer (no tag manager, or no consent)', () => { + globalThis.window = {} + + assert.equal(trackCheckoutEvent('add_payment_info', { items, currency: 'GBP', payment_type: 'card' }), false) + assert.equal(globalThis.window.dataLayer, undefined) +}) + +function storage() { + const values = new Map() + + return { + getItem: (key) => values.get(key) ?? null, + setItem: (key, value) => values.set(key, String(value)), + } +} + +test('sends begin_checkout once per checkout session', () => { + globalThis.window = { dataLayer: [], sessionStorage: storage() } + + assert.equal(trackCheckoutStart('session-1', { items, currency: 'GBP' }), true) + assert.equal(trackCheckoutStart('session-1', { items, currency: 'GBP' }), false) + assert.equal(trackCheckoutStart('session-2', { items, currency: 'GBP' }), true) + + const events = globalThis.window.dataLayer.filter((entry) => entry.event) + assert.deepEqual(events.map((entry) => entry.event), ['begin_checkout', 'begin_checkout']) + assert.equal(events[0].ecommerce.value, 26.48) +}) + +test('does not mark the session begun when nothing could be sent', () => { + globalThis.window = { sessionStorage: storage() } + + assert.equal(trackCheckoutStart('session-1', { items, currency: 'GBP' }), false) + + globalThis.window.dataLayer = [] + + assert.equal(trackCheckoutStart('session-1', { items, currency: 'GBP' }), true) +})