598cecad5f
Co-authored-by: Cursor <cursoragent@cursor.com>
41 lines
133 KiB
JavaScript
41 lines
133 KiB
JavaScript
(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const l of document.querySelectorAll('link[rel="modulepreload"]'))s(l);new MutationObserver(l=>{for(const r of l)if(r.type==="childList")for(const i of r.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&s(i)}).observe(document,{childList:!0,subtree:!0});function n(l){const r={};return l.integrity&&(r.integrity=l.integrity),l.referrerPolicy&&(r.referrerPolicy=l.referrerPolicy),l.crossOrigin==="use-credentials"?r.credentials="include":l.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function s(l){if(l.ep)return;l.ep=!0;const r=n(l);fetch(l.href,r)}})();/**
|
||
* @vue/shared v3.5.43
|
||
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
||
* @license MIT
|
||
**/function Js(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const fe={},jt=[],ct=()=>{},pr=()=>!1,Zn=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),es=e=>e.startsWith("onUpdate:"),Ae=Object.assign,zs=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Di=Object.prototype.hasOwnProperty,re=(e,t)=>Di.call(e,t),K=Array.isArray,Nt=e=>An(e)==="[object Map]",Wt=e=>An(e)==="[object Set]",yl=e=>An(e)==="[object Date]",z=e=>typeof e=="function",me=e=>typeof e=="string",Xe=e=>typeof e=="symbol",ie=e=>e!==null&&typeof e=="object",hr=e=>(ie(e)||z(e))&&z(e.then)&&z(e.catch),mr=Object.prototype.toString,An=e=>mr.call(e),$i=e=>An(e).slice(8,-1),gr=e=>An(e)==="[object Object]",Ys=e=>me(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,pn=Js(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),ts=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Mi=/-\w/g,Me=ts(e=>e.replace(Mi,t=>t.slice(1).toUpperCase())),Vi=/\B([A-Z])/g,Jt=ts(e=>e.replace(Vi,"-$1").toLowerCase()),ns=ts(e=>e.charAt(0).toUpperCase()+e.slice(1)),vs=ts(e=>e?`on${ns(e)}`:""),ut=(e,t)=>!Object.is(e,t),Ln=(e,...t)=>{for(let n=0;n<e.length;n++)e[n](...t)},vr=(e,t,n,s=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},ss=e=>{const t=parseFloat(e);return isNaN(t)?e:t};let bl;const ls=()=>bl||(bl=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Rn(e){if(K(e)){const t={};for(let n=0;n<e.length;n++){const s=e[n],l=me(s)?ji(s):Rn(s);if(l)for(const r in l)t[r]=l[r]}return t}else if(me(e)||ie(e))return e}const Li=/;(?![^(]*\))/g,Ui=/:([^]+)/,Fi=/"(?:[^"\\]|\\[^])*"|'(?:[^'\\]|\\[^])*'|\\[^]|\/\*[^]*?\*\//g;function ji(e){const t={};return e.replace(Fi,n=>n.startsWith("/*")?"":n).split(Li).forEach(n=>{if(n){const s=n.split(Ui);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function he(e){let t="";if(me(e))t=e;else if(K(e))for(let n=0;n<e.length;n++){const s=he(e[n]);s&&(t+=s+" ")}else if(ie(e))for(const n in e)e[n]&&(t+=n+" ");return t.trim()}const Hi="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",Bi=Js(Hi);function _r(e){return!!e||e===""}function Ki(e,t,n){if(e.length!==t.length)return!1;let s=!0;for(let l=0;s&&l<e.length;l++)s=$t(e[l],t[l],n);return s}function wl(e,t,n){if(e.size!==t.size)return!1;const s=Array.from(t),l=new Uint8Array(s.length);for(const r of e){let i=-1;for(let a=0;a<s.length;a++)if(!l[a]&&$t(r,s[a],n)){i=a;break}if(i<0)return!1;l[i]=1}return!0}function Gi(e,t,n){let s=Nt(e),l=Nt(t);if(s||l||(s=Wt(e),l=Wt(t),s||l))return s&&l?wl(e,t,n):!1;const r=Object.keys(e).length,i=Object.keys(t).length;if(r!==i)return!1;for(const a in e){const u=e.hasOwnProperty(a),d=t.hasOwnProperty(a);if(u&&!d||!u&&d||!$t(e[a],t[a],n))return!1}return String(e)===String(t)}function Sl(e,t,n,s){n||(n=[new Map,new Map]);const[l,r]=n;if(l.has(e)||r.has(t))return l.get(e)===t&&r.get(t)===e;l.set(e,t),r.set(t,e);const i=s(e,t,n);return l.delete(e),r.delete(t),i}function $t(e,t,n){if(e===t)return!0;let s=yl(e),l=yl(t);return s||l?s&&l?e.getTime()===t.getTime():!1:(s=Xe(e),l=Xe(t),s||l?e===t:(s=K(e),l=K(t),s||l?s&&l?Sl(e,t,n,Ki):!1:(s=ie(e),l=ie(t),s||l?!s||!l?!1:Sl(e,t,n,Gi):String(e)===String(t))))}function Wi(e,t){return e.findIndex(n=>$t(n,t))}const yr=e=>!!(e&&e.__v_isRef===!0),C=e=>me(e)?e:e==null?"":K(e)||ie(e)&&(e.toString===mr||!z(e.toString))?yr(e)?C(e.value):JSON.stringify(e,br,2):String(e),br=(e,t)=>yr(t)?br(e,t.value):Nt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,l],r)=>(n[_s(s,r)+" =>"]=l,n),{})}:Wt(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>_s(n))}:Xe(t)?_s(t):ie(t)&&!K(t)&&!gr(t)?String(t):t,_s=(e,t="")=>{var n;return Xe(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/**
|
||
* @vue/reactivity v3.5.43
|
||
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
||
* @license MIT
|
||
**/let Ee;class qi{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&&Ee&&(Ee.active?(this.parent=Ee,this.index=(Ee.scopes||(Ee.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes){const s=this.scopes.slice();for(t=0,n=s.length;t<n;t++)s[t].pause()}for(t=0,n=this.effects.length;t<n;t++)this.effects[t].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let t,n;if(this.scopes){const l=this.scopes.slice();for(t=0,n=l.length;t<n;t++)l[t].resume()}const s=this.effects.slice();for(t=0,n=s.length;t<n;t++)s[t].resume()}}run(t){if(this._active){const n=Ee;try{return Ee=this,t()}finally{Ee=n}}}on(){++this._on===1&&(this.prevScope=Ee,Ee=this)}off(){if(this._on>0&&--this._on===0){if(Ee===this)Ee=this.prevScope;else{let t=Ee;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 n,s;for(n=0,s=this.effects.length;n<s;n++)this.effects[n].stop();for(this.effects.length=0,n=0,s=this.cleanups.length;n<s;n++)this.cleanups[n]();if(this.cleanups.length=0,this.scopes){const l=this.scopes.slice();for(n=0,s=l.length;n<s;n++)l[n].stop(!0);this.scopes.length=0}if(!this.detached&&this.parent&&!t){const l=this.parent.scopes.pop();l&&l!==this&&(this.parent.scopes[this.index]=l,l.index=this.index)}this.parent=void 0}}}function Ji(){return Ee}let de;const ys=new WeakSet;class wr{constructor(t){this.fn=t,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,Ee&&(Ee.active?Ee.effects.push(this):this.flags&=-2)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,ys.has(this)&&(ys.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||xr(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,xl(this),Er(this);const t=de,n=Ye;de=this,Ye=!0;try{return this.fn()}finally{Cr(this),de=t,Ye=n,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)Zs(t);this.deps=this.depsTail=void 0,xl(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?ys.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){Ns(this)&&this.run()}get dirty(){return Ns(this)}}let Sr=0,hn,mn;function xr(e,t=!1){if(e.flags|=8,t){e.next=mn,mn=e;return}e.next=hn,hn=e}function Qs(){Sr++}function Xs(){if(--Sr>0)return;if(mn){let t=mn;for(mn=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;hn;){let t=hn;for(hn=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(s){e||(e=s)}t=n}}if(e)throw e}function Er(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Cr(e){let t,n=e.depsTail,s=n;for(;s;){const l=s.prevDep;s.version===-1?(s===n&&(n=l),Zs(s),zi(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=l}e.deps=t,e.depsTail=n}function Ns(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Tr(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Tr(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===yn)||(e.globalVersion=yn,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Ns(e))))return;e.flags|=2;const t=e.dep,n=de,s=Ye;de=e,Ye=!0;try{Er(e);const l=e.fn(e._value);(t.version===0||ut(l,e._value))&&(e.flags|=128,e._value=l,t.version++)}catch(l){throw t.version++,l}finally{de=n,Ye=s,Cr(e),e.flags&=-3}}function Zs(e,t=!1){const{dep:n,prevSub:s,nextSub:l}=e;if(s&&(s.nextSub=l,e.prevSub=void 0),l&&(l.prevSub=s,e.nextSub=void 0),n.subs===e&&(n.subs=s,!s&&n.computed)){n.computed.flags&=-5;for(let r=n.computed.deps;r;r=r.nextDep)Zs(r,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function zi(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Ye=!0;const Ar=[];function xt(){Ar.push(Ye),Ye=!1}function Et(){const e=Ar.pop();Ye=e===void 0?!0:e}function xl(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=de;de=void 0;try{t()}finally{de=n}}}let yn=0;class Yi{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class el{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(!de||!Ye||de===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==de)n=this.activeLink=new Yi(de,this),de.deps?(n.prevDep=de.depsTail,de.depsTail.nextDep=n,de.depsTail=n):de.deps=de.depsTail=n,Rr(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=de.depsTail,n.nextDep=void 0,de.depsTail.nextDep=n,de.depsTail=n,de.deps===n&&(de.deps=s)}return n}trigger(t){this.version++,yn++,this.notify(t)}notify(t){Qs();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Xs()}}}function Rr(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let s=t.deps;s;s=s.nextDep)Rr(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const ks=new WeakMap,Kt=Symbol(""),Ds=Symbol(""),bn=Symbol("");function Re(e,t,n){if(Ye&&de){let s=ks.get(e);s||ks.set(e,s=new Map);let l=s.get(n);l||(s.set(n,l=new el),l.map=s,l.key=n),l.track()}}function yt(e,t,n,s,l,r){const i=ks.get(e);if(!i){yn++;return}const a=u=>{u&&u.trigger()};if(Qs(),t==="clear")i.forEach(a);else{const u=K(e),d=u&&Ys(n);if(u&&n==="length"){const c=Number(s);i.forEach((h,y)=>{(y==="length"||y===bn||!Xe(y)&&y>=c)&&a(h)})}else switch((n!==void 0||i.has(void 0))&&a(i.get(n)),d&&a(i.get(bn)),t){case"add":u?d&&a(i.get("length")):(a(i.get(Kt)),Nt(e)&&a(i.get(Ds)));break;case"delete":u||(a(i.get(Kt)),Nt(e)&&a(i.get(Ds)));break;case"set":Nt(e)&&a(i.get(Kt));break}}Xs()}function zt(e){const t=le(e);return t===e||(Re(t,"iterate",bn),We(e))?t:ft(e)?kt(e)?t.map(n=>Mt(qe(n))):t.map(Mt):t.map(qe)}function rs(e){return Re(e=le(e),"iterate",bn),e}function ot(e,t){return ft(e)?Mt(kt(e)?qe(t):t):qe(t)}const Qi={__proto__:null,[Symbol.iterator](){return bs(this,Symbol.iterator,e=>ot(this,e))},concat(...e){return zt(this).concat(...e.map(t=>K(t)?zt(t):t))},entries(){return bs(this,"entries",e=>(e[1]=ot(this,e[1]),e))},every(e,t){return mt(this,"every",e,t,void 0,arguments)},filter(e,t){return mt(this,"filter",e,t,n=>n.map(s=>ot(this,s)),arguments)},find(e,t){return mt(this,"find",e,t,n=>ot(this,n),arguments)},findIndex(e,t){return mt(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return mt(this,"findLast",e,t,n=>ot(this,n),arguments)},findLastIndex(e,t){return mt(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return mt(this,"forEach",e,t,void 0,arguments)},includes(...e){return ws(this,"includes",e)},indexOf(...e){return ws(this,"indexOf",e)},join(e){return zt(this).join(e)},lastIndexOf(...e){return ws(this,"lastIndexOf",e)},map(e,t){return mt(this,"map",e,t,void 0,arguments)},pop(){return an(this,"pop")},push(...e){return an(this,"push",e)},reduce(e,...t){return El(this,"reduce",e,t)},reduceRight(e,...t){return El(this,"reduceRight",e,t)},shift(){return an(this,"shift")},some(e,t){return mt(this,"some",e,t,void 0,arguments)},splice(...e){return an(this,"splice",e)},toReversed(){return zt(this).toReversed()},toSorted(e){return zt(this).toSorted(e)},toSpliced(...e){return zt(this).toSpliced(...e)},unshift(...e){return an(this,"unshift",e)},values(){return bs(this,"values",e=>ot(this,e))}};function bs(e,t,n){const s=rs(e),l=s[t]();return s!==e&&!We(e)&&(l._next=l.next,l.next=()=>{const r=l._next();return r.done||(r.value=n(r.value)),r}),l}const Xi=Array.prototype;function mt(e,t,n,s,l,r){const i=rs(e),a=i!==e&&!We(e),u=i[t];if(u!==Xi[t]){const h=u.apply(e,r);return a?qe(h):h}let d=n;i!==e&&(a?d=function(h,y){return n.call(this,ot(e,h),y,e)}:n.length>2&&(d=function(h,y){return n.call(this,h,y,e)}));const c=u.call(i,d,s);return a&&l?l(c):c}function El(e,t,n,s){const l=rs(e),r=l!==e&&!We(e);let i=n,a=!1;l!==e&&(r?(a=s.length===0,i=function(d,c,h){return a&&(a=!1,d=ot(e,d)),n.call(this,d,ot(e,c),h,e)}):n.length>3&&(i=function(d,c,h){return n.call(this,d,c,h,e)}));const u=l[t](i,...s);return a?ot(e,u):u}function ws(e,t,n){const s=le(e);Re(s,"iterate",bn);const l=s[t](...n);return(l===-1||l===!1)&&sl(n[0])?(n[0]=le(n[0]),s[t](...n)):l}function an(e,t,n=[]){xt(),Qs();const s=le(e)[t].apply(e,n);return Xs(),Et(),s}const Zi=Js("__proto__,__v_isRef,__isVue"),Or=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Xe));function eo(e){Xe(e)||(e=String(e));const t=le(this);return Re(t,"has",e),t.hasOwnProperty(e)}class Pr{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){if(n==="__v_skip")return t.__v_skip;const l=this._isReadonly,r=this._isShallow;if(n==="__v_isReactive")return!l;if(n==="__v_isReadonly")return l;if(n==="__v_isShallow")return r;if(n==="__v_raw")return s===(l?r?co:Dr:r?kr:Nr).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const i=K(t);if(!l){let u;if(i&&(u=Qi[n]))return u;if(n==="hasOwnProperty")return eo}const a=Reflect.get(t,n,Pe(t)?t:s);if((Xe(n)?Or.has(n):Zi(n))||(l||Re(t,"get",n),r))return a;if(Pe(a)){const u=i&&Ys(n)?a:a.value;return l&&ie(u)?Ms(u):u}return ie(a)?l?Ms(a):is(a):a}}class Ir extends Pr{constructor(t=!1){super(!1,t)}set(t,n,s,l){let r=t[n];const i=K(t)&&Ys(n);if(!this._isShallow){const d=ft(r);if(!We(s)&&!ft(s)&&(r=le(r),s=le(s)),!i&&Pe(r)&&!Pe(s))return d||(r.value=s),!0}const a=i?Number(n)<t.length:re(t,n),u=Reflect.set(t,n,s,Pe(t)?t:l);return t===le(l)&&u&&(a?ut(s,r)&&yt(t,"set",n,s):yt(t,"add",n,s)),u}deleteProperty(t,n){const s=re(t,n);t[n];const l=Reflect.deleteProperty(t,n);return l&&s&&yt(t,"delete",n,void 0),l}has(t,n){const s=Reflect.has(t,n);return(!Xe(n)||!Or.has(n))&&Re(t,"has",n),s}ownKeys(t){return Re(t,"iterate",K(t)?"length":Kt),Reflect.ownKeys(t)}}class to extends Pr{constructor(t=!1){super(!0,t)}set(t,n){return!0}deleteProperty(t,n){return!0}}const no=new Ir,so=new to,lo=new Ir(!0);const $s=e=>e,kn=e=>Reflect.getPrototypeOf(e);function ro(e,t,n){return function(...s){const l=this.__v_raw,r=le(l),i=Nt(r),a=e==="entries"||e===Symbol.iterator&&i,u=e==="keys"&&i,d=l[e](...s),c=n?$s:t?Mt:qe;return!t&&Re(r,"iterate",u?Ds:Kt),Ae(Object.create(d),{next(){const{value:h,done:y}=d.next();return y?{value:h,done:y}:{value:a?[c(h[0]),c(h[1])]:c(h),done:y}}})}}function Dn(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function io(e,t){const n={get(l){const r=this.__v_raw,i=le(r),a=le(l);e||(ut(l,a)&&Re(i,"get",l),Re(i,"get",a));const{has:u}=kn(i),d=t?$s:e?Mt:qe;if(u.call(i,l))return d(r.get(l));if(u.call(i,a))return d(r.get(a));r!==i&&r.get(l)},get size(){const l=this.__v_raw;return!e&&Re(le(l),"iterate",Kt),l.size},has(l){const r=this.__v_raw,i=le(r),a=le(l);return e||(ut(l,a)&&Re(i,"has",l),Re(i,"has",a)),l===a?r.has(l):r.has(l)||r.has(a)},forEach(l,r){const i=this,a=i.__v_raw,u=le(a),d=t?$s:e?Mt:qe;return!e&&Re(u,"iterate",Kt),a.forEach((c,h)=>l.call(r,d(c),d(h),i))}};return Ae(n,e?{add:Dn("add"),set:Dn("set"),delete:Dn("delete"),clear:Dn("clear")}:{add(l){const r=le(this),i=kn(r),a=le(l),u=!t&&!We(l)&&!ft(l)?a:l;return i.has.call(r,u)||ut(l,u)&&i.has.call(r,l)||ut(a,u)&&i.has.call(r,a)||(r.add(u),yt(r,"add",u,u)),this},set(l,r){!t&&!We(r)&&!ft(r)&&(r=le(r));const i=le(this),{has:a,get:u}=kn(i);let d=a.call(i,l);d||(l=le(l),d=a.call(i,l));const c=u.call(i,l);return i.set(l,r),d?ut(r,c)&&yt(i,"set",l,r):yt(i,"add",l,r),this},delete(l){const r=le(this),{has:i,get:a}=kn(r);let u=i.call(r,l);u||(l=le(l),u=i.call(r,l)),a&&a.call(r,l);const d=r.delete(l);return u&&yt(r,"delete",l,void 0),d},clear(){const l=le(this),r=l.size!==0,i=l.clear();return r&&yt(l,"clear",void 0,void 0),i}}),["keys","values","entries",Symbol.iterator].forEach(l=>{n[l]=ro(l,e,t)}),n}function tl(e,t){const n=io(e,t);return(s,l,r)=>l==="__v_isReactive"?!e:l==="__v_isReadonly"?e:l==="__v_raw"?s:Reflect.get(re(n,l)&&l in s?n:s,l,r)}const oo={get:tl(!1,!1)},ao={get:tl(!1,!0)},uo={get:tl(!0,!1)};const Nr=new WeakMap,kr=new WeakMap,Dr=new WeakMap,co=new WeakMap;function fo(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function is(e){return ft(e)?e:nl(e,!1,no,oo,Nr)}function $r(e){return nl(e,!1,lo,ao,kr)}function Ms(e){return nl(e,!0,so,uo,Dr)}function nl(e,t,n,s,l){if(!ie(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const r=l.get(e);if(r)return r;const i=fo($i(e));if(i===0)return e;const a=new Proxy(e,i===2?s:n);return l.set(e,a),a}function kt(e){return ft(e)?kt(e.__v_raw):!!(e&&e.__v_isReactive)}function ft(e){return!!(e&&e.__v_isReadonly)}function We(e){return!!(e&&e.__v_isShallow)}function sl(e){return e?!!e.__v_raw:!1}function le(e){const t=e&&e.__v_raw;return t?le(t):e}function po(e){return!re(e,"__v_skip")&&Object.isExtensible(e)&&vr(e,"__v_skip",!0),e}const qe=e=>ie(e)?is(e):e,Mt=e=>ie(e)?Ms(e):e;function Pe(e){return e?e.__v_isRef===!0:!1}function Z(e){return Mr(e,!1)}function ho(e){return Mr(e,!0)}function Mr(e,t){return Pe(e)?e:new mo(e,t)}class mo{constructor(t,n){this.dep=new el,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:le(t),this._value=n?t:qe(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,s=this.__v_isShallow||We(t)||ft(t);t=s?t:le(t),ut(t,n)&&(this._rawValue=t,this._value=s?t:qe(t),this.dep.trigger())}}function q(e){return Pe(e)?e.value:e}const go={get:(e,t,n)=>t==="__v_raw"?e:q(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const l=e[t];return Pe(l)&&!Pe(n)?(l.value=n,!0):Reflect.set(e,t,n,s)}};function Vr(e){return kt(e)?e:new Proxy(e,go)}class vo{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new el(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=yn-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&de!==this)return xr(this,!0),!0}get value(){const t=this.dep.track();return Tr(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function _o(e,t,n=!1){let s,l;return z(e)?s=e:(s=e.get,l=e.set),new vo(s,l,n)}const $n={},Hn=new WeakMap;let Ut;function yo(e,t=!1,n=Ut){if(n){let s=Hn.get(n);s||Hn.set(n,s=[]),s.push(e)}}function bo(e,t,n=fe){const{immediate:s,deep:l,once:r,scheduler:i,augmentJob:a,call:u}=n,d=U=>l?U:We(U)||l===!1||l===0?bt(U,1):bt(U);let c,h,y,b,E=!1,P=!1;if(Pe(e)?(h=()=>e.value,E=We(e)):kt(e)?(h=()=>d(e),E=!0):K(e)?(P=!0,E=e.some(U=>kt(U)||We(U)),h=()=>e.map(U=>{if(Pe(U))return U.value;if(kt(U))return d(U);if(z(U))return u?u(U,2):U()})):z(e)?t?h=u?()=>u(e,2):e:h=()=>{if(y){xt();try{y()}finally{Et()}}const U=Ut;Ut=c;try{return u?u(e,3,[b]):e(b)}finally{Ut=U}}:h=ct,t&&l){const U=h,F=l===!0?1/0:l;h=()=>bt(U(),F)}const G=Ji(),j=()=>{c.stop(),G&&G.active&&zs(G.effects,c)};if(r&&t){const U=t;t=(...F)=>{const w=U(...F);return j(),w}}let O=P?new Array(e.length).fill($n):$n;const k=U=>{if(!(!(c.flags&1)||!c.dirty&&!U))if(t){const F=c.run();if(U||l||E||(P?F.some((w,te)=>ut(w,O[te])):ut(F,O))){y&&y();const w=Ut;Ut=c;try{const te=[F,O===$n?void 0:P&&O[0]===$n?[]:O,b];O=F,u?u(t,3,te):t(...te)}finally{Ut=w}}}else c.run()};return a&&a(k),c=new wr(h),c.scheduler=i?()=>i(k,!1):k,b=U=>yo(U,!1,c),y=c.onStop=()=>{const U=Hn.get(c);if(U){if(u)u(U,4);else for(const F of U)F();Hn.delete(c)}},t?s?k(!0):O=c.run():i?i(k.bind(null,!0),!0):c.run(),j.pause=c.pause.bind(c),j.resume=c.resume.bind(c),j.stop=j,j}function bt(e,t=1/0,n){if(t<=0||!ie(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,Pe(e))bt(e.value,t,n);else if(K(e))for(let s=0;s<e.length;s++)bt(e[s],t,n);else if(Wt(e)||Nt(e))e.forEach(s=>{bt(s,t,n)});else if(gr(e)){for(const s in e)bt(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&bt(e[s],t,n)}return e}/**
|
||
* @vue/runtime-core v3.5.43
|
||
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
||
* @license MIT
|
||
**/function On(e,t,n,s){try{return s?e(...s):e()}catch(l){os(l,t,n)}}function Ze(e,t,n,s){if(z(e)){const l=On(e,t,n,s);return l&&hr(l)&&l.catch(r=>{os(r,t,n)}),l}if(K(e)){const l=[];for(let r=0;r<e.length;r++)l.push(Ze(e[r],t,n,s));return l}}function os(e,t,n,s=!0){const l=t?t.vnode:null,{errorHandler:r,throwUnhandledErrorInProduction:i}=t&&t.appContext.config||fe;if(t){let a=t.parent;const u=t.proxy,d=`https://vuejs.org/error-reference/#runtime-${n}`;for(;a;){const c=a.ec;if(c){for(let h=0;h<c.length;h++)if(c[h](e,u,d)===!1)return}a=a.parent}if(r){xt(),On(r,null,10,[e,u,d]),Et();return}}wo(e,n,l,s,i)}function wo(e,t,n,s=!0,l=!1){if(l)throw e;console.error(e)}const $e=[];let it=-1;const Zt=[];let Pt=null,Yt=0;const Lr=Promise.resolve();let Bn=null;function ll(e){const t=Bn||Lr;return e?t.then(this?e.bind(this):e):t}function So(e){let t=it+1,n=$e.length;for(;t<n;){const s=t+n>>>1,l=$e[s],r=wn(l);r<e||r===e&&l.flags&2?t=s+1:n=s}return t}function rl(e){if(!(e.flags&1)){const t=wn(e),n=$e[$e.length-1];!n||!(e.flags&2)&&t>=wn(n)?$e.push(e):$e.splice(So(t),0,e),e.flags|=1,Ur()}}function Ur(){Bn||(Bn=Lr.then(jr))}function xo(e){if(!K(e))Pt&&e.id===-1?Pt.splice(Yt+1,0,e):e.flags&1||(Zt.push(e),e.flags|=1);else for(let t=0;t<e.length;t++)Zt.push(e[t]);Ur()}function Cl(e,t,n=it+1){for(;n<$e.length;n++){const s=$e[n];if(s&&s.flags&2){if(e&&s.id!==e.uid)continue;$e.splice(n,1),n--,s.flags&4&&(s.flags&=-2),s(),s.flags&4||(s.flags&=-2)}}}function Fr(e){if(Zt.length){const t=[...new Set(Zt)].sort((n,s)=>wn(n)-wn(s));if(Zt.length=0,Pt){for(let n=0;n<t.length;n++)Pt.push(t[n]);return}for(Pt=t,Yt=0;Yt<Pt.length;Yt++){const n=Pt[Yt];n.flags&4&&(n.flags&=-2),n.flags&8||n(),n.flags&=-2}Pt=null,Yt=0}}const wn=e=>e.id==null?e.flags&2?-1:1/0:e.id;function jr(e){try{for(it=0;it<$e.length;it++){const t=$e[it];t&&!(t.flags&8)&&(t.flags&4&&(t.flags&=-2),On(t,t.i,t.i?15:14),t.flags&4||(t.flags&=-2))}}finally{for(;it<$e.length;it++){const t=$e[it];t&&(t.flags&=-2)}it=-1,$e.length=0,Fr(),Bn=null,($e.length||Zt.length)&&jr()}}let Te=null,Hr=null;function Kn(e){const t=Te;return Te=e,Hr=e&&e.type.__scopeId||null,t}function Dt(e,t=Te,n){if(!t||e._n)return e;const s=(...l)=>{s._d&&qn(-1);const r=Kn(t),i=St.length;let a;try{a=e(...l)}finally{for(let u=St.length;u>i;u--)cl();Kn(r),s._d&&qn(1)}return a};return s._n=!0,s._c=!0,s._d=!0,s}function we(e,t){if(Te===null)return e;const n=ps(Te),s=e.dirs||(e.dirs=[]);for(let l=0;l<t.length;l++){let[r,i,a,u=fe]=t[l];r&&(z(r)&&(r={mounted:r,updated:r}),r.deep&&bt(i),s.push({dir:r,instance:n,value:i,oldValue:void 0,arg:a,modifiers:u}))}return e}function Vt(e,t,n,s){const l=e.dirs,r=t&&t.dirs;for(let i=0;i<l.length;i++){const a=l[i];r&&(a.oldValue=r[i].value);let u=a.dir[s];u&&(xt(),Ze(u,n,8,[e.el,a,e,t]),Et())}}function Un(e,t){if(Oe){let n=Oe.provides;const s=Oe.parent&&Oe.parent.provides;s===n&&(n=Oe.provides=Object.create(s)),n[e]=t}}function Qe(e,t,n=!1){const s=xa();if(s||nn){let l=nn?nn._context.provides:s?s.parent==null||s.ce?s.vnode.appContext&&s.vnode.appContext.provides:s.parent.provides:void 0;if(l&&e in l)return l[e];if(arguments.length>1)return n&&z(t)?t.call(s&&s.proxy):t}}const Eo=Symbol.for("v-scx"),Co=()=>Qe(Eo);function en(e,t,n){return Br(e,t,n)}function Br(e,t,n=fe){const{immediate:s,deep:l,flush:r,once:i}=n,a=Ae({},n),u=t&&s||!t&&r!=="post";let d;if(Cn){if(r==="sync"){const b=Co();d=b.__watcherHandles||(b.__watcherHandles=[])}else if(!u){const b=()=>{};return b.stop=ct,b.resume=ct,b.pause=ct,b}}const c=Oe;a.call=(b,E,P)=>Ze(b,c,E,P);let h=!1;r==="post"?a.scheduler=b=>{Le(b,c&&c.suspense)}:r!=="sync"&&(h=!0,a.scheduler=(b,E)=>{E?b():rl(b)}),a.augmentJob=b=>{t&&(b.flags|=4),h&&(b.flags|=2,c&&(b.id=c.uid,b.i=c))};const y=bo(e,t,a);return Cn&&(d?d.push(y):u&&y()),y}function To(e,t,n){const s=this.proxy,l=me(e)?e.includes(".")?Kr(s,e):()=>s[e]:e.bind(s,s);let r;z(t)?r=t:(r=t.handler,n=t);const i=Nn(this),a=Br(l,r.bind(s),n);return i(),a}function Kr(e,t){const n=t.split(".");return()=>{let s=e;for(let l=0;l<n.length&&s;l++)s=s[n[l]];return s}}const Ao=Symbol("_vte"),as=e=>e.__isTeleport,Ss=Symbol("_leaveCb");function Ro(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==dt){t=n;break}}return t}function Gr(e){if(!ol(e))return as(e.type)&&e.children?Ro(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&z(n.default))return n.default()}}function il(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const n=e.component.subTree;il(as(n.type)&&Gr(n)||n,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Wr(e,t){return z(e)?Ae({name:e.name},t,{setup:e}):e}function qr(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Tl(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}const Gn=new WeakMap;function gn(e,t,n,s,l=!1){if(K(e)){e.forEach((P,G)=>gn(P,t&&(K(t)?t[G]:t),n,s,l));return}if(tn(s)&&!l){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&gn(e,t,n,s.component.subTree);return}const r=s.shapeFlag&4?ps(s.component):s.el,i=l?null:r,{i:a,r:u}=e,d=t&&t.r,c=a.refs===fe?a.refs={}:a.refs,h=a.setupState,y=le(h),b=h===fe?pr:P=>Tl(c,P)?!1:re(y,P),E=(P,G)=>!(G&&Tl(c,G));if(d!=null&&d!==u){if(Al(t),me(d))c[d]=null,b(d)&&(h[d]=null);else if(Pe(d)){const P=t;E(d,P.k)&&(d.value=null),P.k&&(c[P.k]=null)}}if(z(u))On(u,a,12,[i,c]);else{const P=me(u),G=Pe(u);if(P||G){const j=()=>{if(e.f){const O=P?b(u)?h[u]:c[u]:E()||!e.k?u.value:c[e.k];if(l)K(O)&&zs(O,r);else if(K(O))O.includes(r)||O.push(r);else if(P)c[u]=[r],b(u)&&(h[u]=c[u]);else{const k=[r];E(u,e.k)&&(u.value=k),e.k&&(c[e.k]=k)}}else P?(c[u]=i,b(u)&&(h[u]=i)):G&&(E(u,e.k)&&(u.value=i),e.k&&(c[e.k]=i))};if(i){const O=()=>{j(),Gn.delete(e)};O.id=-1,Gn.set(e,O),Le(O,n)}else Al(e),j()}}}function Al(e){const t=Gn.get(e);t&&(t.flags|=8,Gn.delete(e))}ls().requestIdleCallback;ls().cancelIdleCallback;const tn=e=>!!e.type.__asyncLoader,ol=e=>e.type.__isKeepAlive;function Oo(e,t){Jr(e,"a",t)}function Po(e,t){Jr(e,"da",t)}function Jr(e,t,n=Oe){const s=e.__wdc||(e.__wdc=()=>{let l=n;for(;l;){if(l.isDeactivated)return;l=l.parent}return e()});if(us(t,s,n),n){let l=n.parent;for(;l&&l.parent;)ol(l.parent.vnode)&&Io(s,t,n,l),l=l.parent}}function Io(e,t,n,s){const l=us(t,e,s,!0);In(()=>{zs(s[t],l)},n)}function us(e,t,n=Oe,s=!1){if(n){const l=n[e]||(n[e]=[]),r=t.__weh||(t.__weh=(...i)=>{xt();const a=Nn(n),u=Ze(t,n,e,i);return a(),Et(),u});return s?l.unshift(r):l.push(r),r}}const Ct=e=>(t,n=Oe)=>{(!Cn||e==="sp")&&us(e,(...s)=>t(...s),n)},No=Ct("bm"),Pn=Ct("m"),ko=Ct("bu"),Do=Ct("u"),$o=Ct("bum"),In=Ct("um"),Mo=Ct("sp"),Vo=Ct("rtg"),Lo=Ct("rtc");function Uo(e,t=Oe){us("ec",e,t)}const Fo="components";function cs(e,t){return Ho(Fo,e,!0,t)||e}const jo=Symbol.for("v-ndc");function Ho(e,t,n=!0,s=!1){const l=Te||Oe;if(l){const r=l.type;{const a=Ra(r,!1);if(a&&(a===t||a===Me(t)||a===ns(Me(t))))return r}const i=Rl(l[e]||r[e],t)||Rl(l.appContext[e],t);return!i&&s?r:i}}function Rl(e,t){return e&&(e[t]||e[Me(t)]||e[ns(Me(t))])}function Ne(e,t,n,s){let l;const r=n,i=K(e);if(i||me(e)){const a=i&&kt(e);let u=!1,d=!1;a&&(u=!We(e),d=ft(e),e=rs(e)),l=new Array(e.length);for(let c=0,h=e.length;c<h;c++)l[c]=t(u?d?Mt(qe(e[c])):qe(e[c]):e[c],c,void 0,r)}else if(typeof e=="number"){l=new Array(e);for(let a=0;a<e;a++)l[a]=t(a+1,a,void 0,r)}else if(ie(e))if(e[Symbol.iterator])l=Array.from(e,(a,u)=>t(a,u,void 0,r));else{const a=Object.keys(e);l=new Array(a.length);for(let u=0,d=a.length;u<d;u++){const c=a[u];l[u]=t(e[c],c,u,r)}}else l=[];return l}function Bo(e,t,n,s,l,r){if(n==null&&(n={}),Te.ce||Te.parent&&tn(Te.parent)&&Te.parent.ce){const d=n,c=Object.keys(d).length>0;return I(),qt(ce,null,[be("slot",d,s)],c?-2:64)}let i=e[t];i&&i._c&&(i._d=!1);const a=St.length;I();let u;try{const d=i&&zr(i(n)),c=n.key||r||d&&d.key;u=qt(ce,{key:(c&&!Xe(c)?c:`_${t}`)+(!d&&s?"_fb":"")},d||(s?s():[]),d&&e._===1?64:-2)}catch(d){for(let c=St.length;c>a;c--)cl();throw d}finally{i&&i._c&&(i._d=!0)}return u.scopeId&&(u.slotScopeIds=[u.scopeId+"-s"]),u}function zr(e){return e.some(t=>xn(t)?!(t.type===dt||t.type===ce&&!zr(t.children)):!0)?e:null}const Vs=e=>e?mi(e)?ps(e):Vs(e.parent):null,vn=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=>Vs(e.parent),$root:e=>Vs(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Qr(e),$forceUpdate:e=>e.f||(e.f=()=>{rl(e.update)}),$nextTick:e=>e.n||(e.n=ll.bind(e.proxy)),$watch:e=>To.bind(e)}),xs=(e,t)=>e!==fe&&!e.__isScriptSetup&&re(e,t),Ko={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:l,props:r,accessCache:i,type:a,appContext:u}=e;if(t[0]!=="$"){const y=i[t];if(y!==void 0)switch(y){case 1:return s[t];case 2:return l[t];case 4:return n[t];case 3:return r[t]}else{if(xs(s,t))return i[t]=1,s[t];if(l!==fe&&re(l,t))return i[t]=2,l[t];if(re(r,t))return i[t]=3,r[t];if(n!==fe&&re(n,t))return i[t]=4,n[t];Ls&&(i[t]=0)}}const d=vn[t];let c,h;if(d)return t==="$attrs"&&Re(e.attrs,"get",""),d(e);if((c=a.__cssModules)&&(c=c[t]))return c;if(n!==fe&&re(n,t))return i[t]=4,n[t];if(h=u.config.globalProperties,re(h,t))return h[t]},set({_:e},t,n){const{data:s,setupState:l,ctx:r}=e;return xs(l,t)?(l[t]=n,!0):s!==fe&&re(s,t)?(s[t]=n,!0):re(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(r[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:s,appContext:l,props:r,type:i}},a){let u;return!!(n[a]||e!==fe&&a[0]!=="$"&&re(e,a)||xs(t,a)||re(r,a)||re(s,a)||re(vn,a)||re(l.config.globalProperties,a)||(u=i.__cssModules)&&u[a])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:re(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Ol(e){return K(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Ls=!0;function Go(e){const t=Qr(e),n=e.proxy,s=e.ctx;Ls=!1,t.beforeCreate&&Pl(t.beforeCreate,e,"bc");const{data:l,computed:r,methods:i,watch:a,provide:u,inject:d,created:c,beforeMount:h,mounted:y,beforeUpdate:b,updated:E,activated:P,deactivated:G,beforeDestroy:j,beforeUnmount:O,destroyed:k,unmounted:U,render:F,renderTracked:w,renderTriggered:te,errorCaptured:R,serverPrefetch:Be,expose:Ke,inheritAttrs:tt,components:pt,directives:Ue,filters:Tt}=t;if(d&&Wo(d,s,null),i)for(const ne in i){const X=i[ne];z(X)&&(s[ne]=X.bind(n))}if(l){const ne=l.call(n,n);ie(ne)&&(e.data=is(ne))}if(Ls=!0,r)for(const ne in r){const X=r[ne],Je=z(X)?X.bind(n,n):z(X.get)?X.get.bind(n,n):ct,ze=!z(X)&&z(X.set)?X.set.bind(n):ct,Ge=je({get:Je,set:ze});Object.defineProperty(s,ne,{enumerable:!0,configurable:!0,get:()=>Ge.value,set:Se=>Ge.value=Se})}if(a)for(const ne in a)Yr(a[ne],s,n,ne);if(u){const ne=z(u)?u.call(n):u;Reflect.ownKeys(ne).forEach(X=>{Un(X,ne[X])})}c&&Pl(c,e,"c");function ge(ne,X){K(X)?X.forEach(Je=>ne(Je.bind(n))):X&&ne(X.bind(n))}if(ge(No,h),ge(Pn,y),ge(ko,b),ge(Do,E),ge(Oo,P),ge(Po,G),ge(Uo,R),ge(Lo,w),ge(Vo,te),ge($o,O),ge(In,U),ge(Mo,Be),K(Ke))if(Ke.length){const ne=e.exposed||(e.exposed={});Ke.forEach(X=>{Object.defineProperty(ne,X,{get:()=>n[X],set:Je=>n[X]=Je,enumerable:!0})})}else e.exposed||(e.exposed={});F&&e.render===ct&&(e.render=F),tt!=null&&(e.inheritAttrs=tt),pt&&(e.components=pt),Ue&&(e.directives=Ue),Be&&qr(e)}function Wo(e,t,n=ct){K(e)&&(e=Us(e));for(const s in e){const l=e[s];let r;ie(l)?"default"in l?r=Qe(l.from||s,l.default,!0):r=Qe(l.from||s):r=Qe(l),Pe(r)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>r.value,set:i=>r.value=i}):t[s]=r}}function Pl(e,t,n){Ze(K(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function Yr(e,t,n,s){let l=s.includes(".")?Kr(n,s):()=>n[s];if(me(e)){const r=t[e];z(r)&&en(l,r)}else if(z(e))en(l,e.bind(n));else if(ie(e))if(K(e))e.forEach(r=>Yr(r,t,n,s));else{const r=z(e.handler)?e.handler.bind(n):t[e.handler];z(r)&&en(l,r,e)}}function Qr(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:l,optionsCache:r,config:{optionMergeStrategies:i}}=e.appContext,a=r.get(t);let u;return a?u=a:!l.length&&!n&&!s?u=t:(u={},l.length&&l.forEach(d=>Wn(u,d,i,!0)),Wn(u,t,i)),ie(t)&&r.set(t,u),u}function Wn(e,t,n,s=!1){const{mixins:l,extends:r}=t;r&&Wn(e,r,n,!0),l&&l.forEach(i=>Wn(e,i,n,!0));for(const i in t)if(!(s&&i==="expose")){const a=qo[i]||n&&n[i];e[i]=a?a(e[i],t[i]):t[i]}return e}const qo={data:Il,props:Nl,emits:Nl,methods:fn,computed:fn,beforeCreate:Ie,created:Ie,beforeMount:Ie,mounted:Ie,beforeUpdate:Ie,updated:Ie,beforeDestroy:Ie,beforeUnmount:Ie,destroyed:Ie,unmounted:Ie,activated:Ie,deactivated:Ie,errorCaptured:Ie,serverPrefetch:Ie,components:fn,directives:fn,watch:zo,provide:Il,inject:Jo};function Il(e,t){return t?e?function(){return Ae(z(e)?e.call(this,this):e,z(t)?t.call(this,this):t)}:t:e}function Jo(e,t){return fn(Us(e),Us(t))}function Us(e){if(K(e)){const t={};for(let n=0;n<e.length;n++)t[e[n]]=e[n];return t}return e}function Ie(e,t){return e?[...new Set([].concat(e,t))]:t}function fn(e,t){return e?Ae(Object.create(null),e,t):t}function Nl(e,t){return e?K(e)&&K(t)?[...new Set([...e,...t])]:Ae(Object.create(null),Ol(e),Ol(t??{})):t}function zo(e,t){if(!e)return t;if(!t)return e;const n=Ae(Object.create(null),e);for(const s in t)n[s]=Ie(e[s],t[s]);return n}function Xr(){return{app:null,config:{isNativeTag:pr,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let Yo=0;function Qo(e,t){return function(s,l=null){z(s)||(s=Ae({},s)),l!=null&&!ie(l)&&(l=null);const r=Xr(),i=new WeakSet,a=[];let u=!1;const d=r.app={_uid:Yo++,_component:s,_props:l,_container:null,_context:r,_instance:null,version:Pa,get config(){return r.config},set config(c){},use(c,...h){return i.has(c)||(c&&z(c.install)?(i.add(c),c.install(d,...h)):z(c)&&(i.add(c),c(d,...h))),d},mixin(c){return r.mixins.includes(c)||r.mixins.push(c),d},component(c,h){return h?(r.components[c]=h,d):r.components[c]},directive(c,h){return h?(r.directives[c]=h,d):r.directives[c]},mount(c,h,y){if(!u){const b=d._ceVNode||be(s,l);return b.appContext=r,y===!0?y="svg":y===!1&&(y=void 0),e(b,c,y),u=!0,d._container=c,c.__vue_app__=d,ps(b.component)}},onUnmount(c){a.push(c)},unmount(){u&&(Ze(a,d._instance,16),e(null,d._container),delete d._container.__vue_app__)},provide(c,h){return r.provides[c]=h,d},runWithContext(c){const h=nn;nn=d;try{return c()}finally{nn=h}}};return d}}let nn=null;const Xo=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Me(t)}Modifiers`]||e[`${Jt(t)}Modifiers`];function Zo(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||fe;let l=n;const r=t.startsWith("update:"),i=r&&Xo(s,t.slice(7));i&&(i.trim&&(l=n.map(c=>me(c)?c.trim():c)),i.number&&(l=l.map(ss)));let a,u=s[a=vs(t)]||s[a=vs(Me(t))];!u&&r&&(u=s[a=vs(Jt(t))]),u&&Ze(u,e,6,l);const d=s[a+"Once"];if(d){if(!e.emitted)e.emitted={};else if(e.emitted[a])return;e.emitted[a]=!0,Ze(d,e,6,l)}}const ea=new WeakMap;function Zr(e,t,n=!1){const s=n?ea:t.emitsCache,l=s.get(e);if(l!==void 0)return l;const r=e.emits;let i={},a=!1;if(!z(e)){const u=d=>{const c=Zr(d,t,!0);c&&(a=!0,Ae(i,c))};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}return!r&&!a?(ie(e)&&s.set(e,null),null):(K(r)?r.forEach(u=>i[u]=null):Ae(i,r),ie(e)&&s.set(e,i),i)}function fs(e,t){return!e||!Zn(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),re(e,t[0].toLowerCase()+t.slice(1))||re(e,Jt(t))||re(e,t))}function kl(e){const{type:t,vnode:n,proxy:s,withProxy:l,propsOptions:[r],slots:i,attrs:a,emit:u,render:d,renderCache:c,props:h,data:y,setupState:b,ctx:E,inheritAttrs:P}=e,G=Kn(e);let j,O;try{if(n.shapeFlag&4){const U=l||s,F=U;j=at(d.call(F,U,c,h,b,y,E)),O=a}else{const U=t;j=at(U.length>1?U(h,{attrs:a,slots:i,emit:u}):U(h,null)),O=t.props?a:ta(a)}}catch(U){St.length=0,os(U,e,1),j=be(dt)}let k=j;if(O&&P!==!1){const U=Object.keys(O),{shapeFlag:F}=k;U.length&&F&7&&(r&&U.some(es)&&(O=na(O,r)),k=sn(k,O,!1,!0))}if(n.dirs&&(k=sn(k,null,!1,!0),k.dirs=k.dirs?k.dirs.concat(n.dirs):n.dirs),n.transition){const U=as(k.type)&&Gr(k)||k;il(U,n.transition)}return j=k,Kn(G),j}const ta=e=>{let t;for(const n in e)(n==="class"||n==="style"||Zn(n))&&((t||(t={}))[n]=e[n]);return t},na=(e,t)=>{const n={};for(const s in e)(!es(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function sa(e,t,n){const{props:s,children:l,component:r}=e,{props:i,children:a,patchFlag:u}=t,d=r.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&u>=0){if(u&1024)return!0;if(u&16)return s?Dl(s,i,d):!!i;if(u&8){const c=t.dynamicProps;for(let h=0;h<c.length;h++){const y=c[h];if(ei(i,s,y)&&!fs(d,y))return!0}}}else return(l||a)&&(!a||!a.$stable)?!0:s===i?!1:s?i?Dl(s,i,d):!0:!!i;return!1}function Dl(e,t,n){const s=Object.keys(t);if(s.length!==Object.keys(e).length)return!0;for(let l=0;l<s.length;l++){const r=s[l];if(ei(t,e,r)&&!fs(n,r))return!0}return!1}function ei(e,t,n){const s=e[n],l=t[n];return n==="style"&&ie(s)&&ie(l)?!$t(s,l):s!==l}function la({vnode:e,parent:t,suspense:n},s){for(;t;){const l=t.subTree;if(l.suspense&&l.suspense.activeBranch===e&&(l.suspense.vnode.el=l.el=s,e=l),l===e)(e=t.vnode).el=s,t=t.parent;else break}n&&n.activeBranch===e&&(n.vnode.el=s)}const ti={},ni=()=>Object.create(ti),si=e=>Object.getPrototypeOf(e)===ti;function ra(e,t,n,s=!1){const l={},r=ni();e.propsDefaults=Object.create(null),li(e,t,l,r);for(const i in e.propsOptions[0])i in l||(l[i]=void 0);n?e.props=s?l:$r(l):e.type.props?e.props=l:e.props=r,e.attrs=r}function ia(e,t,n,s){const{props:l,attrs:r,vnode:{patchFlag:i}}=e,a=le(l),[u]=e.propsOptions;let d=!1;if((s||i>0)&&!(i&16)){if(i&8){const c=e.vnode.dynamicProps;for(let h=0;h<c.length;h++){let y=c[h];if(fs(e.emitsOptions,y))continue;const b=t[y];if(u)if(re(r,y))b!==r[y]&&(r[y]=b,d=!0);else{const E=Me(y);l[E]=Fs(u,a,E,b,e,!1)}else b!==r[y]&&(r[y]=b,d=!0)}}}else{li(e,t,l,r)&&(d=!0);let c;for(const h in a)(!t||!re(t,h)&&((c=Jt(h))===h||!re(t,c)))&&(u?n&&(n[h]!==void 0||n[c]!==void 0)&&(l[h]=Fs(u,a,h,void 0,e,!0)):delete l[h]);if(r!==a)for(const h in r)(!t||!re(t,h))&&(delete r[h],d=!0)}d&&yt(e.attrs,"set","")}function li(e,t,n,s){const[l,r]=e.propsOptions;let i=!1,a;if(t)for(let u in t){if(pn(u))continue;const d=t[u];let c;l&&re(l,c=Me(u))?!r||!r.includes(c)?n[c]=d:(a||(a={}))[c]=d:fs(e.emitsOptions,u)||(!(u in s)||d!==s[u])&&(s[u]=d,i=!0)}if(r){const u=le(n),d=a||fe;for(let c=0;c<r.length;c++){const h=r[c];n[h]=Fs(l,u,h,d[h],e,!re(d,h))}}return i}function Fs(e,t,n,s,l,r){const i=e[n];if(i!=null){const a=re(i,"default");if(a&&s===void 0){const u=i.default;if(i.type!==Function&&!i.skipFactory&&z(u)){const{propsDefaults:d}=l;if(n in d)s=d[n];else{const c=Nn(l);s=d[n]=u.call(null,t),c()}}else s=u;l.ce&&l.ce._setProp(n,s)}i[0]&&(r&&!a?s=!1:i[1]&&(s===""||s===Jt(n))&&(s=!0))}return s}const oa=new WeakMap;function ri(e,t,n=!1){const s=n?oa:t.propsCache,l=s.get(e);if(l)return l;const r=e.props,i={},a=[];let u=!1;if(!z(e)){const c=h=>{u=!0;const[y,b]=ri(h,t,!0);Ae(i,y),b&&a.push(...b)};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}if(!r&&!u)return ie(e)&&s.set(e,jt),jt;if(K(r))for(let c=0;c<r.length;c++){const h=Me(r[c]);$l(h)&&(i[h]=fe)}else if(r)for(const c in r){const h=Me(c);if($l(h)){const y=r[c],b=i[h]=K(y)||z(y)?{type:y}:Ae({},y),E=b.type;let P=!1,G=!0;if(K(E))for(let j=0;j<E.length;++j){const O=E[j],k=z(O)&&O.name;if(k==="Boolean"){P=!0;break}else k==="String"&&(G=!1)}else P=z(E)&&E.name==="Boolean";b[0]=P,b[1]=G,(P||re(b,"default"))&&a.push(h)}}const d=[i,a];return ie(e)&&s.set(e,d),d}function $l(e){return e[0]!=="$"&&!pn(e)}const al=e=>e==="_"||e==="_ctx"||e==="$stable",ul=e=>K(e)?e.map(at):[at(e)],aa=(e,t,n)=>{if(t._n)return t;const s=Dt((...l)=>ul(t(...l)),n);return s._c=!1,s},ii=(e,t,n)=>{const s=e._ctx;for(const l in e){if(al(l))continue;const r=e[l];if(z(r))t[l]=aa(l,r,s);else if(r!=null){const i=ul(r);t[l]=()=>i}}},oi=(e,t)=>{const n=ul(t);e.slots.default=()=>n},ai=(e,t,n)=>{for(const s in t)(n||!al(s))&&(e[s]=t[s])},ua=(e,t,n)=>{const s=e.slots=ni();if(e.vnode.shapeFlag&32){const l=t._;l?(ai(s,t,n),n&&vr(s,"_",l,!0)):ii(t,s)}else t&&oi(e,t)},ca=(e,t,n)=>{const{vnode:s,slots:l}=e;let r=!0,i=fe;if(s.shapeFlag&32){const a=t._;a?n&&a===1?r=!1:ai(l,t,n):(r=!t.$stable,ii(t,l)),i=t}else t&&(oi(e,t),i={default:1});if(r)for(const a in l)!al(a)&&i[a]==null&&delete l[a]},Le=ma;function fa(e){return da(e)}function da(e,t){const n=ls();n.__VUE__=!0;const{insert:s,remove:l,patchProp:r,createElement:i,createText:a,createComment:u,setText:d,setElementText:c,parentNode:h,nextSibling:y,setScopeId:b=ct,insertStaticContent:E}=e,P=(f,p,_,x=null,T=null,S=null,V=void 0,M=null,$=!!p.dynamicChildren)=>{if(f===p)return;f&&!un(f,p)&&(x=v(f),Se(f,T,S,!0),f=null),p.patchFlag===-2&&($=!1,p.dynamicChildren=null),p.dynamicChildren&&f&&f.dynamicChildren&&f.dynamicChildren.hasOnce&&(p.dynamicChildren===jt&&(p.dynamicChildren=[]),p.dynamicChildren.hasOnce=!0);const{type:A,ref:B,shapeFlag:L}=p;switch(A){case ds:G(f,p,_,x);break;case dt:j(f,p,_,x);break;case Fn:f==null&&O(p,_,x,V);break;case ce:pt(f,p,_,x,T,S,V,M,$);break;default:L&1?F(f,p,_,x,T,S,V,M,$):L&6?Ue(f,p,_,x,T,S,V,M,$):(L&64||L&128)&&A.process(f,p,_,x,T,S,V,M,$,g)}B!=null&&T?gn(B,f&&f.ref,S,p||f,!p):B==null&&f&&f.ref!=null&&gn(f.ref,null,S,f,!0)},G=(f,p,_,x)=>{if(f==null)s(p.el=a(p.children),_,x);else{const T=p.el=f.el;p.children!==f.children&&d(T,p.children)}},j=(f,p,_,x)=>{f==null?s(p.el=u(p.children||""),_,x):p.el=f.el},O=(f,p,_,x)=>{[f.el,f.anchor]=E(f.children,p,_,x,f.el,f.anchor)},k=({el:f,anchor:p},_,x)=>{let T;for(;f&&f!==p;)T=y(f),s(f,_,x),f=T;s(p,_,x)},U=({el:f,anchor:p})=>{let _;for(;f&&f!==p;)_=y(f),l(f),f=_;l(p)},F=(f,p,_,x,T,S,V,M,$)=>{if(p.type==="svg"?V="svg":p.type==="math"&&(V="mathml"),f==null)w(p,_,x,T,S,V,M,$);else{const A=f.el&&f.el._isVueCE?f.el:null;try{A&&A._beginPatch(),Be(f,p,T,S,V,M,$)}finally{A&&A._endPatch()}}},w=(f,p,_,x,T,S,V,M)=>{let $,A;const{props:B,shapeFlag:L,transition:H,dirs:J}=f;if($=f.el=i(f.type,S,B&&B.is,B),L&8?c($,f.children):L&16&&R(f.children,$,null,x,T,Es(f,S),V,M),J&&Vt(f,null,x,"created"),te($,f,f.scopeId,V,x),B){for(const ue in B)ue!=="value"&&!pn(ue)&&r($,ue,null,B[ue],S,x);"value"in B&&r($,"value",null,B.value,S),(A=B.onVnodeBeforeMount)&&rt(A,x,f)}J&&Vt(f,null,x,"beforeMount");const Q=pa(T,H);Q&&H.beforeEnter($),s($,p,_),((A=B&&B.onVnodeMounted)||Q||J)&&Le(()=>{try{A&&rt(A,x,f),Q&&H.enter($),J&&Vt(f,null,x,"mounted")}finally{}},T)},te=(f,p,_,x,T)=>{if(_&&b(f,_),x)for(let S=0;S<x.length;S++)b(f,x[S]);if(T){let S=T.subTree;if(p===S||di(S.type)&&(S.ssContent===p||S.ssFallback===p)){const V=T.vnode;te(f,V,V.scopeId,V.slotScopeIds,T.parent)}}},R=(f,p,_,x,T,S,V,M,$=0)=>{for(let A=$;A<f.length;A++){const B=f[A]=M?_t(f[A]):at(f[A]);P(null,B,p,_,x,T,S,V,M)}},Be=(f,p,_,x,T,S,V)=>{const M=p.el=f.el;let{patchFlag:$,dynamicChildren:A,dirs:B}=p;$|=f.patchFlag&16;const L=f.props||fe,H=p.props||fe;let J;if(_&&Lt(_,!1),(J=H.onVnodeBeforeUpdate)&&rt(J,_,p,f),B&&Vt(p,f,_,"beforeUpdate"),_&&Lt(_,!0),A&&(!f.dynamicChildren||f.dynamicChildren.length!==A.length)&&($=0,V=!1,A=null),(L.innerHTML&&H.innerHTML==null||L.textContent&&H.textContent==null)&&c(M,""),A?Ke(f.dynamicChildren,A,M,_,x,Es(p,T),S):V||X(f,p,M,null,_,x,Es(p,T),S,!1),$>0){if($&16)tt(M,L,H,_,T);else if($&2&&L.class!==H.class&&r(M,"class",null,H.class,T),$&4&&r(M,"style",L.style,H.style,T),$&8){const Q=p.dynamicProps;for(let ue=0;ue<Q.length;ue++){const oe=Q[ue],ve=L[oe],xe=H[oe];(xe!==ve||oe==="value")&&r(M,oe,ve,xe,T,_)}}$&1&&f.children!==p.children&&c(M,p.children)}else!V&&A==null&&tt(M,L,H,_,T);((J=H.onVnodeUpdated)||B)&&Le(()=>{J&&rt(J,_,p,f),B&&Vt(p,f,_,"updated")},x)},Ke=(f,p,_,x,T,S,V)=>{for(let M=0;M<p.length;M++){const $=f[M],A=p[M],B=$.el&&($.type===ce||!un($,A)||$.shapeFlag&198)?h($.el):_;P($,A,B,null,x,T,S,V,!0)}},tt=(f,p,_,x,T)=>{if(p!==_){if(p!==fe)for(const S in p)!pn(S)&&!(S in _)&&r(f,S,p[S],null,T,x);for(const S in _){if(pn(S))continue;const V=_[S],M=p[S];V!==M&&S!=="value"&&r(f,S,M,V,T,x)}"value"in _&&r(f,"value",p.value,_.value,T)}},pt=(f,p,_,x,T,S,V,M,$)=>{const A=p.el=f?f.el:a(""),B=p.anchor=f?f.anchor:a("");let{patchFlag:L,dynamicChildren:H,slotScopeIds:J}=p;J&&(M=M?M.concat(J):J),f==null?(s(A,_,x),s(B,_,x),R(p.children||[],_,B,T,S,V,M,$)):L>0&&L&64&&H&&f.dynamicChildren&&f.dynamicChildren.length===H.length?(Ke(f.dynamicChildren,H,_,T,S,V,M),(p.key!=null||T&&p===T.subTree)&&ui(f,p,!0)):X(f,p,_,B,T,S,V,M,$)},Ue=(f,p,_,x,T,S,V,M,$)=>{p.slotScopeIds=M,f==null?p.shapeFlag&512?T.ctx.activate(p,_,x,V,$):Tt(p,_,x,T,S,V,$):_e(f,p,$)},Tt=(f,p,_,x,T,S,V)=>{const M=f.component=Sa(f,x,T);if(ol(f)&&(M.ctx.renderer=g),Ea(M,!1,V),M.asyncDep){if(T&&T.registerDep(M,ge,V),!f.el){const $=M.subTree=be(dt);j(null,$,p,_),f.placeholder=$.el}}else ge(M,f,p,_,T,S,V)},_e=(f,p,_)=>{const x=p.component=f.component;if(sa(f,p,_))if(x.asyncDep&&!x.asyncResolved){p.el=f.el,ne(x,p,_);return}else x.next=p,x.update();else p.el=f.el,x.vnode=p},ge=(f,p,_,x,T,S,V)=>{const M=()=>{if(f.isMounted){let{next:L,bu:H,u:J,parent:Q,vnode:ue}=f;{const st=ci(f);if(st){L&&(L.el=ue.el,ne(f,L,V)),st.asyncDep.then(()=>{Le(()=>{f.isUnmounted||A()},T)});return}}let oe=L,ve;Lt(f,!1),L?(L.el=ue.el,ne(f,L,V)):L=ue,H&&Ln(H),(ve=L.props&&L.props.onVnodeBeforeUpdate)&&rt(ve,Q,L,ue),Lt(f,!0);const xe=kl(f),nt=f.subTree;f.subTree=xe,P(nt,xe,h(nt.el),v(nt),f,T,S),L.el=xe.el,oe===null&&la(f,xe.el),J&&Le(J,T),(ve=L.props&&L.props.onVnodeUpdated)&&Le(()=>rt(ve,Q,L,ue),T)}else{let L;const{el:H,props:J}=p,{bm:Q,m:ue,parent:oe,root:ve,type:xe}=f,nt=tn(p);Lt(f,!1),Q&&Ln(Q),!nt&&(L=J&&J.onVnodeBeforeMount)&&rt(L,oe,p),Lt(f,!0);{ve.ce&&ve.ce._hasShadowRoot()&&ve.ce._injectChildStyle(xe,f.parent?f.parent.type:void 0);const st=f.subTree=kl(f);P(null,st,_,x,f,T,S),p.el=st.el}if(ue&&Le(ue,T),!nt&&(L=J&&J.onVnodeMounted)){const st=p;Le(()=>rt(L,oe,st),T)}(p.shapeFlag&256||oe&&tn(oe.vnode)&&oe.vnode.shapeFlag&256)&&f.a&&Le(f.a,T),f.isMounted=!0,p=_=x=null}};f.scope.on();const $=f.effect=new wr(M);f.scope.off();const A=f.update=$.run.bind($),B=f.job=$.runIfDirty.bind($);B.i=f,B.id=f.uid,$.scheduler=()=>rl(B),Lt(f,!0),A()},ne=(f,p,_)=>{p.component=f;const x=f.vnode.props;f.vnode=p,f.next=null,ia(f,p.props,x,_),ca(f,p.children,_),xt(),Cl(f),Et()},X=(f,p,_,x,T,S,V,M,$=!1)=>{const A=f&&f.children,B=f?f.shapeFlag:0,L=p.children,{patchFlag:H,shapeFlag:J}=p;if(H>0){if(H&128){ze(A,L,_,x,T,S,V,M,$);return}else if(H&256){Je(A,L,_,x,T,S,V,M,$);return}}J&8?(B&16&&Ve(A,T,S),L!==A&&c(_,L)):B&16?J&16?ze(A,L,_,x,T,S,V,M,$):Ve(A,T,S,!0):(B&8&&c(_,""),J&16&&R(L,_,x,T,S,V,M,$))},Je=(f,p,_,x,T,S,V,M,$)=>{f=f||jt,p=p||jt;const A=f.length,B=p.length,L=Math.min(A,B);let H;for(H=0;H<L;H++){const J=p[H]=$?_t(p[H]):at(p[H]);P(f[H],J,_,null,T,S,V,M,$)}A>B?Ve(f,T,S,!0,!1,L):R(p,_,x,T,S,V,M,$,L)},ze=(f,p,_,x,T,S,V,M,$)=>{let A=0;const B=p.length;let L=f.length-1,H=B-1;for(;A<=L&&A<=H;){const J=f[A],Q=p[A]=$?_t(p[A]):at(p[A]);if(un(J,Q))P(J,Q,_,null,T,S,V,M,$);else break;A++}for(;A<=L&&A<=H;){const J=f[L],Q=p[H]=$?_t(p[H]):at(p[H]);if(un(J,Q))P(J,Q,_,null,T,S,V,M,$);else break;L--,H--}if(A>L){if(A<=H){const J=H+1,Q=J<B?p[J].el:x;for(;A<=H;)P(null,p[A]=$?_t(p[A]):at(p[A]),_,Q,T,S,V,M,$),A++}}else if(A>H)for(;A<=L;)Se(f[A],T,S,!0),A++;else{const J=A,Q=A,ue=new Map;for(A=Q;A<=H;A++){const Fe=p[A]=$?_t(p[A]):at(p[A]);Fe.key!=null&&ue.set(Fe.key,A)}let oe,ve=0;const xe=H-Q+1;let nt=!1,st=0;const on=new Array(xe);for(A=0;A<xe;A++)on[A]=0;for(A=J;A<=L;A++){const Fe=f[A];if(ve>=xe){Se(Fe,T,S,!0);continue}let lt;if(Fe.key!=null)lt=ue.get(Fe.key);else for(oe=Q;oe<=H;oe++)if(on[oe-Q]===0&&un(Fe,p[oe])){lt=oe;break}lt===void 0?Se(Fe,T,S,!0):(on[lt-Q]=A+1,lt>=st?st=lt:nt=!0,P(Fe,p[lt],_,null,T,S,V,M,$),ve++)}const gl=nt?ha(on):jt;for(oe=gl.length-1,A=xe-1;A>=0;A--){const Fe=Q+A,lt=p[Fe],vl=p[Fe+1],_l=Fe+1<B?vl.el||fi(vl):x;on[A]===0?P(null,lt,_,_l,T,S,V,M,$):nt&&(oe<0||A!==gl[oe]?Ge(lt,_,_l,2):oe--)}}},Ge=(f,p,_,x,T=null)=>{const{el:S,type:V,transition:M,children:$,shapeFlag:A}=f;if(A&6){Ge(f.component.subTree,p,_,x);return}if(A&128){f.suspense.move(p,_,x);return}if(A&64){V.move(f,p,_,g);return}if(V===ce){s(S,p,_);for(let L=0;L<$.length;L++)Ge($[L],p,_,x);s(f.anchor,p,_);return}if(V===Fn){k(f,p,_);return}if(x!==2&&A&1&&M)if(x===0)M.persisted&&!S[Ss]?s(S,p,_):(M.beforeEnter(S),s(S,p,_),Le(()=>M.enter(S),T));else{const{leave:L,delayLeave:H,afterLeave:J}=M,Q=()=>{f.ctx.isUnmounted?l(S):s(S,p,_)},ue=()=>{const oe=S._isLeaving||!!S[Ss];S._isLeaving&&S[Ss](!0),M.persisted&&!oe?Q():L(S,()=>{Q(),J&&J()})};H?H(S,Q,ue):ue()}else s(S,p,_)},Se=(f,p,_,x=!1,T=!1)=>{const{type:S,props:V,ref:M,children:$,dynamicChildren:A,shapeFlag:B,patchFlag:L,dirs:H,cacheIndex:J,memo:Q}=f;if((L===-2||A&&A.hasOnce)&&(T=!1),M!=null&&(xt(),gn(M,null,_,f,!0),Et()),J!=null&&(!f.ctx||f.ctx===p)&&(p.renderCache[J]=void 0),B&256){p.ctx.deactivate(f);return}const ue=B&1&&H,oe=!tn(f);let ve;if(oe&&(ve=V&&V.onVnodeBeforeUnmount)&&rt(ve,p,f),B&6)ht(f.component,_,x);else{if(B&128){f.suspense.unmount(_,x);return}ue&&Vt(f,null,p,"beforeUnmount"),B&64?f.type.remove(f,p,_,g,x):A&&!A.hasOnce&&(S!==ce||L>0&&L&64)?Ve(A,p,_,!1,!0):(S===ce&&L&384||!T&&B&16)&&Ve($,p,_),x&&At(f)}const xe=Q!=null&&J==null;(oe&&(ve=V&&V.onVnodeUnmounted)||ue||xe)&&Le(()=>{ve&&rt(ve,p,f),ue&&Vt(f,null,p,"unmounted"),xe&&(f.el=null)},_)},At=f=>{const{type:p,el:_,anchor:x,transition:T}=f;if(p===ce){Rt(_,x);return}if(p===Fn){U(f),T&&!T.persisted&&T.afterLeave&&T.afterLeave();return}const S=()=>{l(_),T&&!T.persisted&&T.afterLeave&&T.afterLeave()};if(f.shapeFlag&1&&T&&!T.persisted){const{leave:V,delayLeave:M}=T,$=()=>V(_,S);M?M(f.el,S,$):$()}else S()},Rt=(f,p)=>{let _;for(;f!==p;)_=y(f),l(f),f=_;l(p)},ht=(f,p,_)=>{const{bum:x,scope:T,job:S,subTree:V,um:M,m:$,a:A}=f;Ml($),Ml(A),x&&Ln(x),T.stop(),S?(S.flags|=8,Se(V,f,p,_)):f.vnode.el&&V&&(V.transition=f.vnode.transition,Se(V,f,p,_)),M&&Le(M,p),Le(()=>{f.isUnmounted=!0},p)},Ve=(f,p,_,x=!1,T=!1,S=0)=>{for(let V=S;V<f.length;V++)Se(f[V],p,_,x,T)},v=f=>{if(f.shapeFlag&6)return v(f.component.subTree);if(f.shapeFlag&128)return f.suspense.next();const p=y(f.anchor||f.el),_=p&&p[Ao];return _?y(_):p};let m=!1;const D=(f,p,_)=>{let x;f==null?p._vnode&&(Se(p._vnode,null,null,!0),x=p._vnode.component):P(p._vnode||null,f,p,null,null,null,_),p._vnode=f,m||(m=!0,Cl(x),Fr(),m=!1)},g={p:P,um:Se,m:Ge,r:At,mt:Tt,mc:R,pc:X,pbc:Ke,n:v,o:e};return{render:D,hydrate:void 0,createApp:Qo(D)}}function Es({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Lt({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function pa(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function ui(e,t,n=!1){const s=e.children,l=t.children;if(K(s)&&K(l))for(let r=0;r<s.length;r++){const i=s[r];let a=l[r];a.shapeFlag&1&&!a.dynamicChildren&&((a.patchFlag<=0||a.patchFlag===32)&&(a=l[r]=_t(l[r]),a.el=i.el),!n&&a.patchFlag!==-2&&ui(i,a)),a.type===ds&&(a.patchFlag===-1&&(a=l[r]=_t(a)),a.el=i.el),a.type===dt&&!a.el&&(a.el=i.el)}}function ha(e){const t=e.slice(),n=[0];let s,l,r,i,a;const u=e.length;for(s=0;s<u;s++){const d=e[s];if(d!==0){if(l=n[n.length-1],e[l]<d){t[s]=l,n.push(s);continue}for(r=0,i=n.length-1;r<i;)a=r+i>>1,e[n[a]]<d?r=a+1:i=a;d<e[n[r]]&&(r>0&&(t[s]=n[r-1]),n[r]=s)}}for(r=n.length,i=n[r-1];r-- >0;)n[r]=i,i=t[i];return n}function ci(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:ci(t)}function Ml(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}function fi(e){if(e.placeholder)return e.placeholder;const t=e.component;return t?fi(t.subTree):null}const di=e=>e.__isSuspense;function ma(e,t){t&&t.pendingBranch?K(e)?t.effects.push(...e):t.effects.push(e):xo(e)}const ce=Symbol.for("v-fgt"),ds=Symbol.for("v-txt"),dt=Symbol.for("v-cmt"),Fn=Symbol.for("v-stc"),St=[];let He=null;function I(e=!1){St.push(He=e?null:[])}function cl(){St.pop(),He=St[St.length-1]||null}let Sn=1;function qn(e,t=!1){Sn+=e,e<0&&He&&t&&(He.hasOnce=!0)}function pi(e){return e.dynamicChildren=Sn>0?He||jt:null,cl(),Sn>0&&He&&He.push(e),e}function N(e,t,n,s,l,r){return pi(o(e,t,n,s,l,r,!0))}function qt(e,t,n,s,l){return pi(be(e,t,n,s,l,!0))}function xn(e){return e?e.__v_isVNode===!0:!1}function un(e,t){return e.type===t.type&&e.key===t.key}const hi=({key:e})=>e??null,jn=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?me(e)||Pe(e)||z(e)?{i:Te,r:e,k:t,f:!!n}:e:null);function o(e,t=null,n=null,s=0,l=null,r=e===ce?0:1,i=!1,a=!1){const u={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&hi(t),ref:t&&jn(t),scopeId:Hr,slotScopeIds:null,children:n,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:r,patchFlag:s,dynamicProps:l,dynamicChildren:null,appContext:null,ctx:Te};return a?(Jn(u,n),r&128&&e.normalize(u)):n&&(u.shapeFlag|=me(n)?8:16),Sn>0&&!i&&He&&(u.patchFlag>0||r&6)&&u.patchFlag!==32&&He.push(u),u}const be=ga;function ga(e,t=null,n=null,s=0,l=null,r=!1){if((!e||e===jo)&&(e=dt),xn(e)){const a=sn(e,t,!0);return n&&Jn(a,n),Sn>0&&!r&&He&&(a.shapeFlag&6?He[He.indexOf(e)]=a:He.push(a)),a.patchFlag=-2,a}if(Oa(e)&&(e=e.__vccOpts),t){t=va(t);let{class:a,style:u}=t;a&&!me(a)&&(t.class=he(a)),ie(u)&&(sl(u)&&!K(u)&&(u=Ae({},u)),t.style=Rn(u))}const i=me(e)?1:di(e)?128:as(e)?64:ie(e)?4:z(e)?2:0;return o(e,t,n,s,l,i,r,!0)}function va(e){return e?sl(e)||si(e)?Ae({},e):e:null}function sn(e,t,n=!1,s=!1){const{props:l,ref:r,patchFlag:i,children:a,transition:u}=e,d=t?ya(l||{},t):l,c={__v_isVNode:!0,__v_skip:!0,type:e.type,props:d,key:d&&hi(d),ref:t&&t.ref?n&&r?K(r)?r.concat(jn(t)):[r,jn(t)]:jn(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:a,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==ce?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:u,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&sn(e.ssContent),ssFallback:e.ssFallback&&sn(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce,cacheIndex:e.cacheIndex};return u&&s&&il(c,u.clone(c)),c}function ee(e=" ",t=0){return be(ds,null,e,t)}function _a(e,t){const n=be(Fn,null,e);return n.staticCount=t,n}function Y(e="",t=!1){return t?(I(),qt(dt,null,e)):be(dt,null,e)}function at(e){return e==null||typeof e=="boolean"?be(dt):K(e)?be(ce,null,e.slice()):xn(e)?_t(e):be(ds,null,String(e))}function _t(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:sn(e)}function Jn(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(K(t))n=16;else if(typeof t=="object")if(s&65){const l=t.default;l&&(l._c&&(l._d=!1),Jn(e,l()),l._c&&(l._d=!0));return}else{n=32;const l=t._;!l&&!si(t)?t._ctx=Te:l===3&&Te&&(Te.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(z(t)){if(s&65){Jn(e,{default:t});return}t={default:t,_ctx:Te},n=32}else t=String(t),s&64?(n=16,t=[ee(t)]):n=8;e.children=t,e.shapeFlag|=n}function ya(...e){const t={};for(let n=0;n<e.length;n++){const s=e[n];for(const l in s)if(l==="class")t.class!==s.class&&(t.class=he([t.class,s.class]));else if(l==="style")t.style=Rn([t.style,s.style]);else if(Zn(l)){const r=t[l],i=s[l];i&&r!==i&&!(K(r)&&r.includes(i))?t[l]=r?[].concat(r,i):i:i==null&&r==null&&!es(l)&&(t[l]=i)}else l!==""&&(t[l]=s[l])}return t}function rt(e,t,n,s=null){Ze(e,t,7,[n,s])}const ba=Xr();let wa=0;function Sa(e,t,n){const s=e.type,l=(t?t.appContext:e.appContext)||ba,r={uid:wa++,vnode:e,type:s,parent:t,appContext:l,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new qi(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(l.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:ri(s,l),emitsOptions:Zr(s,l),emit:null,emitted:null,propsDefaults:fe,inheritAttrs:s.inheritAttrs,ctx:fe,data:fe,props:fe,attrs:fe,slots:fe,refs:fe,setupState:fe,setupContext:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return r.ctx={_:r},r.root=t?t.root:r,r.emit=Zo.bind(null,r),e.ce&&e.ce(r),r}let Oe=null;const xa=()=>Oe||Te;let zn,En;{const e=ls(),t=(n,s)=>{let l;return(l=e[n])||(l=e[n]=[]),l.push(s),r=>{l.length>1?l.forEach(i=>i(r)):l[0](r)}};zn=t("__VUE_INSTANCE_SETTERS__",n=>Oe=n),En=t("__VUE_SSR_SETTERS__",n=>Cn=n)}const Nn=e=>{const t=Oe;return zn(e),e.scope.on(),()=>{e.scope.off(),zn(t)}},Vl=()=>{Oe&&Oe.scope.off(),zn(null)};function mi(e){return e.vnode.shapeFlag&4}let Cn=!1;function Ea(e,t=!1,n=!1){t&&En(t);const{props:s,children:l}=e.vnode,r=mi(e);ra(e,s,r,t),ua(e,l,n||t);const i=r?Ca(e,t):void 0;return t&&En(!1),i}function Ca(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Ko);const{setup:s}=n;if(s){xt();const l=e.setupContext=s.length>1?Aa(e):null,r=Nn(e),i=On(s,e,0,[e.props,l]),a=hr(i);if(Et(),r(),(a||e.sp)&&!tn(e)&&qr(e),a){if(i.then(Vl,Vl),t)return i.then(u=>{En(!0);try{Ll(e,u,t)}finally{En(!1)}}).catch(u=>{os(u,e,0)});e.asyncDep=i}else Ll(e,i)}else gi(e)}function Ll(e,t,n){z(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ie(t)&&(e.setupState=Vr(t)),gi(e)}function gi(e,t,n){const s=e.type;e.render||(e.render=s.render||ct);{const l=Nn(e);xt();try{Go(e)}finally{Et(),l()}}}const Ta={get(e,t){return Re(e,"get",""),e[t]}};function Aa(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Ta),slots:e.slots,emit:e.emit,expose:t}}function ps(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Vr(po(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in vn)return vn[n](e)},has(t,n){return n in t||n in vn}})):e.proxy}function Ra(e,t=!0){return z(e)?e.displayName||e.name:e.name||t&&e.__name}function Oa(e){return z(e)&&"__vccOpts"in e}const je=(e,t)=>_o(e,t,Cn);function vi(e,t,n){try{qn(-1);const s=arguments.length;return s===2?ie(t)&&!K(t)?xn(t)?be(e,null,[t]):be(e,t):be(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&xn(n)&&(n=[n]),be(e,t,n))}finally{qn(1)}}const Pa="3.5.43";/**
|
||
* @vue/runtime-dom v3.5.43
|
||
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
||
* @license MIT
|
||
**/let js;const Ul=typeof window<"u"&&window.trustedTypes;if(Ul)try{js=Ul.createPolicy("vue",{createHTML:e=>e})}catch{}const _i=js?e=>js.createHTML(e):e=>e,Ia="http://www.w3.org/2000/svg",Na="http://www.w3.org/1998/Math/MathML",vt=typeof document<"u"?document:null,Fl=vt&&vt.createElement("template"),ka={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const l=t==="svg"?vt.createElementNS(Ia,e):t==="mathml"?vt.createElementNS(Na,e):n?vt.createElement(e,{is:n}):vt.createElement(e);return e==="select"&&s&&s.multiple!=null&&l.setAttribute("multiple",s.multiple),l},createText:e=>vt.createTextNode(e),createComment:e=>vt.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>vt.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,l,r){const i=n?n.previousSibling:t.lastChild;if(l&&(l===r||l.nextSibling))for(;t.insertBefore(l.cloneNode(!0),n),!(l===r||!(l=l.nextSibling)););else{Fl.innerHTML=_i(s==="svg"?`<svg>${e}</svg>`:s==="mathml"?`<math>${e}</math>`:e);const a=Fl.content;if(s==="svg"||s==="mathml"){const u=a.firstChild;for(;u.firstChild;)a.appendChild(u.firstChild);a.removeChild(u)}t.insertBefore(a,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Da=Symbol("_vtc");function $a(e,t,n){const s=e[Da];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const jl=Symbol("_vod"),Ma=Symbol("_vsh"),Va=Symbol(""),La=/(?:^|;)\s*display\s*:/;function Ua(e,t,n){const s=e.style,l=me(n);let r=!1;if(n&&!l){if(t)if(me(t))for(const i of t.split(";")){const a=i.slice(0,i.indexOf(":")).trim();n[a]==null&&dn(s,a,"")}else for(const i in t)n[i]==null&&dn(s,i,"");for(const i in n){i==="display"&&(r=!0);const a=n[i];a!=null?ja(e,i,!me(t)&&t?t[i]:void 0,a)||dn(s,i,a):dn(s,i,"")}}else if(l){if(t!==n){const i=s[Va];i&&(n+=";"+i),s.cssText=n,r=La.test(n)}}else t&&e.removeAttribute("style");jl in e&&(e[jl]=r?s.display:"",e[Ma]&&(s.display="none"))}const Mn=/\s*!important$/;function dn(e,t,n){if(K(n))n.forEach(s=>dn(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))Mn.test(n)?e.setProperty(t,n.replace(Mn,""),"important"):e.setProperty(t,n);else{const s=Fa(e,t);Mn.test(n)?e.setProperty(Jt(s),n.replace(Mn,""),"important"):e[s]=n}}const Hl=["Webkit","Moz","ms"],Cs={};function Fa(e,t){const n=Cs[t];if(n)return n;let s=Me(t);if(s!=="filter"&&s in e)return Cs[t]=s;s=ns(s);for(let l=0;l<Hl.length;l++){const r=Hl[l]+s;if(r in e)return Cs[t]=r}return t}function ja(e,t,n,s){return e.tagName==="TEXTAREA"&&(t==="width"||t==="height")&&me(s)&&n===s}const Bl="http://www.w3.org/1999/xlink";function Kl(e,t,n,s,l,r=Bi(t)){s&&t.startsWith("xlink:")?n==null?e.removeAttributeNS(Bl,t.slice(6,t.length)):e.setAttributeNS(Bl,t,n):n==null||r&&!_r(n)?e.removeAttribute(t):e.setAttribute(t,r?"":Xe(n)?String(n):n)}function Gl(e,t,n,s,l){if(t==="innerHTML"||t==="textContent"){n!=null&&(e[t]=t==="innerHTML"?_i(n):n);return}const r=e.tagName;if(t==="value"&&r!=="PROGRESS"&&!r.includes("-")){const a=r==="OPTION"?e.getAttribute("value")||"":e.value,u=n==null?e.type==="checkbox"?"on":"":String(n);(a!==u||!("_value"in e))&&(e.value=u),n==null&&e.removeAttribute(t),e._value=n;return}let i=!1;if(n===""||n==null){const a=typeof e[t];a==="boolean"?n=_r(n):n==null&&a==="string"?(n="",i=!0):a==="number"&&(n=0,i=!0)}try{e[t]=n}catch{}i&&e.removeAttribute(l||t)}function Ft(e,t,n,s){e.addEventListener(t,n,s)}function Ha(e,t,n,s){e.removeEventListener(t,n,s)}const Wl=Symbol("_vei");function Ba(e,t,n,s,l=null){const r=e[Wl]||(e[Wl]={}),i=r[t];if(s&&i)i.value=s;else{const[a,u]=Wa(t);if(s){const d=r[t]=za(s,l);Ft(e,a,d,u)}else i&&(Ha(e,a,i,u),r[t]=void 0)}}const Ka=/(Once|Passive|Capture)$/,Ga=/^on:?(?:Once|Passive|Capture)$/;function Wa(e){let t,n;for(;(n=e.match(Ka))&&!Ga.test(e);)t||(t={}),e=e.slice(0,e.length-n[1].length),t[n[1].toLowerCase()]=!0;return[e[2]===":"?e.slice(3):Jt(e.slice(2)),t]}let Ts=0;const qa=Promise.resolve(),Ja=()=>Ts||(qa.then(()=>Ts=0),Ts=Date.now());function za(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;const l=n.value;if(K(l)){const r=s.stopImmediatePropagation;s.stopImmediatePropagation=()=>{r.call(s),s._stopped=!0};const i=l.slice(),a=[s];for(let u=0;u<i.length&&!s._stopped;u++){const d=i[u];d&&Ze(d,t,5,a)}}else Ze(l,t,5,[s])};return n.value=e,n.attached=Ja(),n}const ql=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Ya=(e,t,n,s,l,r)=>{const i=l==="svg";t==="class"?$a(e,s,i):t==="style"?Ua(e,n,s):Zn(t)?es(t)||Ba(e,t,n,s,r):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Qa(e,t,s,i))?(Gl(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Kl(e,t,s,i,r,t!=="value")):e._isVueCE&&(Xa(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!me(s)))?Gl(e,Me(t),s,r,t):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),Kl(e,t,s,i))};function Qa(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&ql(t)&&z(n));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 l=e.tagName;if(l==="IMG"||l==="VIDEO"||l==="CANVAS"||l==="SOURCE")return!1}return ql(t)&&me(n)?!1:t in e}function Xa(e,t){const n=e._def.props;if(!n)return!1;const s=Me(t);return Array.isArray(n)?n.some(l=>Me(l)===s):Object.keys(n).some(l=>Me(l)===s)}const Yn=e=>{const t=e.props["onUpdate:modelValue"]||!1;return K(t)?n=>Ln(t,n):t};function Za(e){e.target.composing=!0}function Jl(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Ht=Symbol("_assign"),Vn=Symbol("_initialValue");function As(e,t,n){return t&&(e=e.trim()),n&&(e=ss(e)),e}const De={created(e,{modifiers:{lazy:t,trim:n,number:s}},l){e.parentNode&&(e.type==="text"?e[Vn]=e.defaultValue.replace(/[\r\n]/g,""):e.type==="textarea"&&(e[Vn]=e.defaultValue.replace(/\r\n?/g,`
|
||
`))),e[Ht]=Yn(l);const r=s||l.props&&l.props.type==="number";Ft(e,t?"change":"input",i=>{i.target.composing||e[Ht](As(e.value,n,r))}),(n||r)&&Ft(e,"change",()=>{e.value=As(e.value,n,r)}),t||(Ft(e,"compositionstart",Za),Ft(e,"compositionend",Jl),Ft(e,"change",Jl))},mounted(e,{value:t,modifiers:{trim:n,number:s}}){const l=t??"",r=e[Vn];delete e[Vn],r!==void 0&&(e.type==="text"||e.type==="textarea")&&e.value!==r?e[Ht](As(e.value,n,s)):e.value=l},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:l,number:r}},i){if(e[Ht]=Yn(i),e.composing)return;const a=(r||e.type==="number")&&!/^0\d/.test(e.value)?ss(e.value):e.value,u=t??"";if(a===u)return;const d=e.getRootNode();(d instanceof Document||d instanceof ShadowRoot)&&d.activeElement===e&&e.type!=="range"&&(s&&t===n||l&&e.value.trim()===u)||(e.value=u)}},Hs={deep:!0,created(e,{value:t,modifiers:{number:n}},s){e._modelValue=t,Ft(e,"change",()=>{const l=Array.prototype.filter.call(e.options,u=>u.selected).map(u=>n?ss(Qn(u)):Qn(u)),r=e.multiple,i=r?Wt(e._modelValue)?new Set(l):l:l[0],a=e._pendingValue=[r,r?K(i)?l.slice():l:i];try{e[Ht](i)}finally{ll(()=>{e._pendingValue===a&&(e._pendingValue=void 0)})}}),e[Ht]=Yn(s)},mounted(e,{value:t}){zl(e,t)},beforeUpdate(e,{value:t},n){e._modelValue=t,e[Ht]=Yn(n)},updated(e,{value:t}){const n=e._pendingValue;e._pendingValue=void 0,(!n||n[0]!==e.multiple||!eu(t,n[1],n[0]))&&zl(e,t)}};function eu(e,t,n){if(!n||K(e))return $t(e,t);if(Wt(e)){if(e.size!==t.length)return!1;for(const s of t)if(!e.has(s))return!1;return!0}return!1}function zl(e,t){const n=e.multiple,s=K(t);if(!(n&&!s&&!Wt(t))){for(let l=0,r=e.options.length;l<r;l++){const i=e.options[l],a=Qn(i);if(n)if(s){const u=typeof a;u==="string"||u==="number"?i.selected=t.some(d=>String(d)===String(a)):i.selected=Wi(t,a)>-1}else i.selected=t.has(a);else if($t(Qn(i),t)){e.selectedIndex!==l&&(e.selectedIndex=l);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Qn(e){return"_value"in e?e._value:e.value}const tu=["ctrl","shift","alt","meta"],nu={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)=>tu.some(n=>e[`${n}Key`]&&!t.includes(n))},Gt=(e,t)=>{if(!e)return e;const n=e._withMods||(e._withMods={}),s=t.join(".");return n[s]||(n[s]=(l,...r)=>{for(let i=0;i<t.length;i++){const a=nu[t[i]];if(a&&a(l,t))return}return e(l,...r)})},su=Ae({patchProp:Ya},ka);let Yl;function lu(){return Yl||(Yl=fa(su))}const ru=(...e)=>{const t=lu().createApp(...e),{mount:n}=t;return t.mount=s=>{const l=ou(s);if(!l)return;const r=t._component;!z(r)&&!r.render&&!r.template&&(r.template=l.innerHTML),l.nodeType===1&&(l.textContent="");const i=n(l,!1,iu(l));return l instanceof Element&&(l.removeAttribute("v-cloak"),l.setAttribute("data-v-app","")),i},t};function iu(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function ou(e){return me(e)?document.querySelector(e):e}const au=(e,t)=>{const n=e.__vccOpts||e;for(const[s,l]of t)n[s]=l;return n},uu={};function cu(e,t){const n=cs("router-view");return I(),qt(n)}const fu=au(uu,[["render",cu]]);/*!
|
||
* vue-router v4.6.4
|
||
* (c) 2025 Eduardo San Martin Morote
|
||
* @license MIT
|
||
*/const Qt=typeof document<"u";function yi(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function du(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&yi(e.default)}const se=Object.assign;function Rs(e,t){const n={};for(const s in t){const l=t[s];n[s]=et(l)?l.map(e):e(l)}return n}const _n=()=>{},et=Array.isArray;function Ql(e,t){const n={};for(const s in e)n[s]=s in t?t[s]:e[s];return n}const bi=/#/g,pu=/&/g,hu=/\//g,mu=/=/g,gu=/\?/g,wi=/\+/g,vu=/%5B/g,_u=/%5D/g,Si=/%5E/g,yu=/%60/g,xi=/%7B/g,bu=/%7C/g,Ei=/%7D/g,wu=/%20/g;function fl(e){return e==null?"":encodeURI(""+e).replace(bu,"|").replace(vu,"[").replace(_u,"]")}function Su(e){return fl(e).replace(xi,"{").replace(Ei,"}").replace(Si,"^")}function Bs(e){return fl(e).replace(wi,"%2B").replace(wu,"+").replace(bi,"%23").replace(pu,"%26").replace(yu,"`").replace(xi,"{").replace(Ei,"}").replace(Si,"^")}function xu(e){return Bs(e).replace(mu,"%3D")}function Eu(e){return fl(e).replace(bi,"%23").replace(gu,"%3F")}function Cu(e){return Eu(e).replace(hu,"%2F")}function Tn(e){if(e==null)return null;try{return decodeURIComponent(""+e)}catch{}return""+e}const Tu=/\/$/,Au=e=>e.replace(Tu,"");function Os(e,t,n="/"){let s,l={},r="",i="";const a=t.indexOf("#");let u=t.indexOf("?");return u=a>=0&&u>a?-1:u,u>=0&&(s=t.slice(0,u),r=t.slice(u,a>0?a:t.length),l=e(r.slice(1))),a>=0&&(s=s||t.slice(0,a),i=t.slice(a,t.length)),s=Iu(s??t,n),{fullPath:s+r+i,path:s,query:l,hash:Tn(i)}}function Ru(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function Xl(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function Ou(e,t,n){const s=t.matched.length-1,l=n.matched.length-1;return s>-1&&s===l&&ln(t.matched[s],n.matched[l])&&Ci(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function ln(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Ci(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!Pu(e[n],t[n]))return!1;return!0}function Pu(e,t){return et(e)?Zl(e,t):et(t)?Zl(t,e):(e==null?void 0:e.valueOf())===(t==null?void 0:t.valueOf())}function Zl(e,t){return et(t)?e.length===t.length&&e.every((n,s)=>n===t[s]):e.length===1&&e[0]===t}function Iu(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),s=e.split("/"),l=s[s.length-1];(l===".."||l===".")&&s.push("");let r=n.length-1,i,a;for(i=0;i<s.length;i++)if(a=s[i],a!==".")if(a==="..")r>1&&r--;else break;return n.slice(0,r).join("/")+"/"+s.slice(i).join("/")}const Ot={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};let Ks=function(e){return e.pop="pop",e.push="push",e}({}),Ps=function(e){return e.back="back",e.forward="forward",e.unknown="",e}({});function Nu(e){if(!e)if(Qt){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),Au(e)}const ku=/^[^#]+#/;function Du(e,t){return e.replace(ku,"#")+t}function $u(e,t){const n=document.documentElement.getBoundingClientRect(),s=e.getBoundingClientRect();return{behavior:t.behavior,left:s.left-n.left-(t.left||0),top:s.top-n.top-(t.top||0)}}const hs=()=>({left:window.scrollX,top:window.scrollY});function Mu(e){let t;if("el"in e){const n=e.el,s=typeof n=="string"&&n.startsWith("#"),l=typeof n=="string"?s?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!l)return;t=$u(l,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function er(e,t){return(history.state?history.state.position-t:-1)+e}const Gs=new Map;function Vu(e,t){Gs.set(e,t)}function Lu(e){const t=Gs.get(e);return Gs.delete(e),t}function Uu(e){return typeof e=="string"||e&&typeof e=="object"}function Ti(e){return typeof e=="string"||typeof e=="symbol"}let pe=function(e){return e[e.MATCHER_NOT_FOUND=1]="MATCHER_NOT_FOUND",e[e.NAVIGATION_GUARD_REDIRECT=2]="NAVIGATION_GUARD_REDIRECT",e[e.NAVIGATION_ABORTED=4]="NAVIGATION_ABORTED",e[e.NAVIGATION_CANCELLED=8]="NAVIGATION_CANCELLED",e[e.NAVIGATION_DUPLICATED=16]="NAVIGATION_DUPLICATED",e}({});const Ai=Symbol("");pe.MATCHER_NOT_FOUND+"",pe.NAVIGATION_GUARD_REDIRECT+"",pe.NAVIGATION_ABORTED+"",pe.NAVIGATION_CANCELLED+"",pe.NAVIGATION_DUPLICATED+"";function rn(e,t){return se(new Error,{type:e,[Ai]:!0},t)}function gt(e,t){return e instanceof Error&&Ai in e&&(t==null||!!(e.type&t))}const Fu=["params","query","hash"];function ju(e){if(typeof e=="string")return e;if(e.path!=null)return e.path;const t={};for(const n of Fu)n in e&&(t[n]=e[n]);return JSON.stringify(t,null,2)}function Hu(e){const t={};if(e===""||e==="?")return t;const n=(e[0]==="?"?e.slice(1):e).split("&");for(let s=0;s<n.length;++s){const l=n[s].replace(wi," "),r=l.indexOf("="),i=Tn(r<0?l:l.slice(0,r)),a=r<0?null:Tn(l.slice(r+1));if(i in t){let u=t[i];et(u)||(u=t[i]=[u]),u.push(a)}else t[i]=a}return t}function tr(e){let t="";for(let n in e){const s=e[n];if(n=xu(n),s==null){s!==void 0&&(t+=(t.length?"&":"")+n);continue}(et(s)?s.map(l=>l&&Bs(l)):[s&&Bs(s)]).forEach(l=>{l!==void 0&&(t+=(t.length?"&":"")+n,l!=null&&(t+="="+l))})}return t}function Bu(e){const t={};for(const n in e){const s=e[n];s!==void 0&&(t[n]=et(s)?s.map(l=>l==null?null:""+l):s==null?s:""+s)}return t}const Ku=Symbol(""),nr=Symbol(""),ms=Symbol(""),dl=Symbol(""),Ws=Symbol("");function cn(){let e=[];function t(s){return e.push(s),()=>{const l=e.indexOf(s);l>-1&&e.splice(l,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function It(e,t,n,s,l,r=i=>i()){const i=s&&(s.enterCallbacks[l]=s.enterCallbacks[l]||[]);return()=>new Promise((a,u)=>{const d=y=>{y===!1?u(rn(pe.NAVIGATION_ABORTED,{from:n,to:t})):y instanceof Error?u(y):Uu(y)?u(rn(pe.NAVIGATION_GUARD_REDIRECT,{from:t,to:y})):(i&&s.enterCallbacks[l]===i&&typeof y=="function"&&i.push(y),a())},c=r(()=>e.call(s&&s.instances[l],t,n,d));let h=Promise.resolve(c);e.length<3&&(h=h.then(d)),h.catch(y=>u(y))})}function Is(e,t,n,s,l=r=>r()){const r=[];for(const i of e)for(const a in i.components){let u=i.components[a];if(!(t!=="beforeRouteEnter"&&!i.instances[a]))if(yi(u)){const d=(u.__vccOpts||u)[t];d&&r.push(It(d,n,s,i,a,l))}else{let d=u();r.push(()=>d.then(c=>{if(!c)throw new Error(`Couldn't resolve component "${a}" at "${i.path}"`);const h=du(c)?c.default:c;i.mods[a]=c,i.components[a]=h;const y=(h.__vccOpts||h)[t];return y&&It(y,n,s,i,a,l)()}))}}return r}function Gu(e,t){const n=[],s=[],l=[],r=Math.max(t.matched.length,e.matched.length);for(let i=0;i<r;i++){const a=t.matched[i];a&&(e.matched.find(d=>ln(d,a))?s.push(a):n.push(a));const u=e.matched[i];u&&(t.matched.find(d=>ln(d,u))||l.push(u))}return[n,s,l]}/*!
|
||
* vue-router v4.6.4
|
||
* (c) 2025 Eduardo San Martin Morote
|
||
* @license MIT
|
||
*/let Wu=()=>location.protocol+"//"+location.host;function Ri(e,t){const{pathname:n,search:s,hash:l}=t,r=e.indexOf("#");if(r>-1){let i=l.includes(e.slice(r))?e.slice(r).length:1,a=l.slice(i);return a[0]!=="/"&&(a="/"+a),Xl(a,"")}return Xl(n,e)+s+l}function qu(e,t,n,s){let l=[],r=[],i=null;const a=({state:y})=>{const b=Ri(e,location),E=n.value,P=t.value;let G=0;if(y){if(n.value=b,t.value=y,i&&i===E){i=null;return}G=P?y.position-P.position:0}else s(b);l.forEach(j=>{j(n.value,E,{delta:G,type:Ks.pop,direction:G?G>0?Ps.forward:Ps.back:Ps.unknown})})};function u(){i=n.value}function d(y){l.push(y);const b=()=>{const E=l.indexOf(y);E>-1&&l.splice(E,1)};return r.push(b),b}function c(){if(document.visibilityState==="hidden"){const{history:y}=window;if(!y.state)return;y.replaceState(se({},y.state,{scroll:hs()}),"")}}function h(){for(const y of r)y();r=[],window.removeEventListener("popstate",a),window.removeEventListener("pagehide",c),document.removeEventListener("visibilitychange",c)}return window.addEventListener("popstate",a),window.addEventListener("pagehide",c),document.addEventListener("visibilitychange",c),{pauseListeners:u,listen:d,destroy:h}}function sr(e,t,n,s=!1,l=!1){return{back:e,current:t,forward:n,replaced:s,position:window.history.length,scroll:l?hs():null}}function Ju(e){const{history:t,location:n}=window,s={value:Ri(e,n)},l={value:t.state};l.value||r(s.value,{back:null,current:s.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function r(u,d,c){const h=e.indexOf("#"),y=h>-1?(n.host&&document.querySelector("base")?e:e.slice(h))+u:Wu()+e+u;try{t[c?"replaceState":"pushState"](d,"",y),l.value=d}catch(b){console.error(b),n[c?"replace":"assign"](y)}}function i(u,d){r(u,se({},t.state,sr(l.value.back,u,l.value.forward,!0),d,{position:l.value.position}),!0),s.value=u}function a(u,d){const c=se({},l.value,t.state,{forward:u,scroll:hs()});r(c.current,c,!0),r(u,se({},sr(s.value,u,null),{position:c.position+1},d),!1),s.value=u}return{location:s,state:l,push:a,replace:i}}function zu(e){e=Nu(e);const t=Ju(e),n=qu(e,t.state,t.location,t.replace);function s(r,i=!0){i||n.pauseListeners(),history.go(r)}const l=se({location:"",base:e,go:s,createHref:Du.bind(null,e)},t,n);return Object.defineProperty(l,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(l,"state",{enumerable:!0,get:()=>t.state.value}),l}let Bt=function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.Group=2]="Group",e}({});var ye=function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.ParamRegExp=2]="ParamRegExp",e[e.ParamRegExpEnd=3]="ParamRegExpEnd",e[e.EscapeNext=4]="EscapeNext",e}(ye||{});const Yu={type:Bt.Static,value:""},Qu=/[a-zA-Z0-9_]/;function Xu(e){if(!e)return[[]];if(e==="/")return[[Yu]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(b){throw new Error(`ERR (${n})/"${d}": ${b}`)}let n=ye.Static,s=n;const l=[];let r;function i(){r&&l.push(r),r=[]}let a=0,u,d="",c="";function h(){d&&(n===ye.Static?r.push({type:Bt.Static,value:d}):n===ye.Param||n===ye.ParamRegExp||n===ye.ParamRegExpEnd?(r.length>1&&(u==="*"||u==="+")&&t(`A repeatable param (${d}) must be alone in its segment. eg: '/:ids+.`),r.push({type:Bt.Param,value:d,regexp:c,repeatable:u==="*"||u==="+",optional:u==="*"||u==="?"})):t("Invalid state to consume buffer"),d="")}function y(){d+=u}for(;a<e.length;){if(u=e[a++],u==="\\"&&n!==ye.ParamRegExp){s=n,n=ye.EscapeNext;continue}switch(n){case ye.Static:u==="/"?(d&&h(),i()):u===":"?(h(),n=ye.Param):y();break;case ye.EscapeNext:y(),n=s;break;case ye.Param:u==="("?n=ye.ParamRegExp:Qu.test(u)?y():(h(),n=ye.Static,u!=="*"&&u!=="?"&&u!=="+"&&a--);break;case ye.ParamRegExp:u===")"?c[c.length-1]=="\\"?c=c.slice(0,-1)+u:n=ye.ParamRegExpEnd:c+=u;break;case ye.ParamRegExpEnd:h(),n=ye.Static,u!=="*"&&u!=="?"&&u!=="+"&&a--,c="";break;default:t("Unknown state");break}}return n===ye.ParamRegExp&&t(`Unfinished custom RegExp for param "${d}"`),h(),i(),l}const lr="[^/]+?",Zu={sensitive:!1,strict:!1,start:!0,end:!0};var ke=function(e){return e[e._multiplier=10]="_multiplier",e[e.Root=90]="Root",e[e.Segment=40]="Segment",e[e.SubSegment=30]="SubSegment",e[e.Static=40]="Static",e[e.Dynamic=20]="Dynamic",e[e.BonusCustomRegExp=10]="BonusCustomRegExp",e[e.BonusWildcard=-50]="BonusWildcard",e[e.BonusRepeatable=-20]="BonusRepeatable",e[e.BonusOptional=-8]="BonusOptional",e[e.BonusStrict=.7000000000000001]="BonusStrict",e[e.BonusCaseSensitive=.25]="BonusCaseSensitive",e}(ke||{});const ec=/[.+*?^${}()[\]/\\]/g;function tc(e,t){const n=se({},Zu,t),s=[];let l=n.start?"^":"";const r=[];for(const d of e){const c=d.length?[]:[ke.Root];n.strict&&!d.length&&(l+="/");for(let h=0;h<d.length;h++){const y=d[h];let b=ke.Segment+(n.sensitive?ke.BonusCaseSensitive:0);if(y.type===Bt.Static)h||(l+="/"),l+=y.value.replace(ec,"\\$&"),b+=ke.Static;else if(y.type===Bt.Param){const{value:E,repeatable:P,optional:G,regexp:j}=y;r.push({name:E,repeatable:P,optional:G});const O=j||lr;if(O!==lr){b+=ke.BonusCustomRegExp;try{`${O}`}catch(U){throw new Error(`Invalid custom RegExp for param "${E}" (${O}): `+U.message)}}let k=P?`((?:${O})(?:/(?:${O}))*)`:`(${O})`;h||(k=G&&d.length<2?`(?:/${k})`:"/"+k),G&&(k+="?"),l+=k,b+=ke.Dynamic,G&&(b+=ke.BonusOptional),P&&(b+=ke.BonusRepeatable),O===".*"&&(b+=ke.BonusWildcard)}c.push(b)}s.push(c)}if(n.strict&&n.end){const d=s.length-1;s[d][s[d].length-1]+=ke.BonusStrict}n.strict||(l+="/?"),n.end?l+="$":n.strict&&!l.endsWith("/")&&(l+="(?:/|$)");const i=new RegExp(l,n.sensitive?"":"i");function a(d){const c=d.match(i),h={};if(!c)return null;for(let y=1;y<c.length;y++){const b=c[y]||"",E=r[y-1];h[E.name]=b&&E.repeatable?b.split("/"):b}return h}function u(d){let c="",h=!1;for(const y of e){(!h||!c.endsWith("/"))&&(c+="/"),h=!1;for(const b of y)if(b.type===Bt.Static)c+=b.value;else if(b.type===Bt.Param){const{value:E,repeatable:P,optional:G}=b,j=E in d?d[E]:"";if(et(j)&&!P)throw new Error(`Provided param "${E}" is an array but it is not repeatable (* or + modifiers)`);const O=et(j)?j.join("/"):j;if(!O)if(G)y.length<2&&(c.endsWith("/")?c=c.slice(0,-1):h=!0);else throw new Error(`Missing required param "${E}"`);c+=O}}return c||"/"}return{re:i,score:s,keys:r,parse:a,stringify:u}}function nc(e,t){let n=0;for(;n<e.length&&n<t.length;){const s=t[n]-e[n];if(s)return s;n++}return e.length<t.length?e.length===1&&e[0]===ke.Static+ke.Segment?-1:1:e.length>t.length?t.length===1&&t[0]===ke.Static+ke.Segment?1:-1:0}function Oi(e,t){let n=0;const s=e.score,l=t.score;for(;n<s.length&&n<l.length;){const r=nc(s[n],l[n]);if(r)return r;n++}if(Math.abs(l.length-s.length)===1){if(rr(s))return 1;if(rr(l))return-1}return l.length-s.length}function rr(e){const t=e[e.length-1];return e.length>0&&t[t.length-1]<0}const sc={strict:!1,end:!0,sensitive:!1};function lc(e,t,n){const s=tc(Xu(e.path),n),l=se(s,{record:e,parent:t,children:[],alias:[]});return t&&!l.record.aliasOf==!t.record.aliasOf&&t.children.push(l),l}function rc(e,t){const n=[],s=new Map;t=Ql(sc,t);function l(h){return s.get(h)}function r(h,y,b){const E=!b,P=or(h);P.aliasOf=b&&b.record;const G=Ql(t,h),j=[P];if("alias"in h){const U=typeof h.alias=="string"?[h.alias]:h.alias;for(const F of U)j.push(or(se({},P,{components:b?b.record.components:P.components,path:F,aliasOf:b?b.record:P})))}let O,k;for(const U of j){const{path:F}=U;if(y&&F[0]!=="/"){const w=y.record.path,te=w[w.length-1]==="/"?"":"/";U.path=y.record.path+(F&&te+F)}if(O=lc(U,y,G),b?b.alias.push(O):(k=k||O,k!==O&&k.alias.push(O),E&&h.name&&!ar(O)&&i(h.name)),Pi(O)&&u(O),P.children){const w=P.children;for(let te=0;te<w.length;te++)r(w[te],O,b&&b.children[te])}b=b||O}return k?()=>{i(k)}:_n}function i(h){if(Ti(h)){const y=s.get(h);y&&(s.delete(h),n.splice(n.indexOf(y),1),y.children.forEach(i),y.alias.forEach(i))}else{const y=n.indexOf(h);y>-1&&(n.splice(y,1),h.record.name&&s.delete(h.record.name),h.children.forEach(i),h.alias.forEach(i))}}function a(){return n}function u(h){const y=ac(h,n);n.splice(y,0,h),h.record.name&&!ar(h)&&s.set(h.record.name,h)}function d(h,y){let b,E={},P,G;if("name"in h&&h.name){if(b=s.get(h.name),!b)throw rn(pe.MATCHER_NOT_FOUND,{location:h});G=b.record.name,E=se(ir(y.params,b.keys.filter(k=>!k.optional).concat(b.parent?b.parent.keys.filter(k=>k.optional):[]).map(k=>k.name)),h.params&&ir(h.params,b.keys.map(k=>k.name))),P=b.stringify(E)}else if(h.path!=null)P=h.path,b=n.find(k=>k.re.test(P)),b&&(E=b.parse(P),G=b.record.name);else{if(b=y.name?s.get(y.name):n.find(k=>k.re.test(y.path)),!b)throw rn(pe.MATCHER_NOT_FOUND,{location:h,currentLocation:y});G=b.record.name,E=se({},y.params,h.params),P=b.stringify(E)}const j=[];let O=b;for(;O;)j.unshift(O.record),O=O.parent;return{name:G,path:P,params:E,matched:j,meta:oc(j)}}e.forEach(h=>r(h));function c(){n.length=0,s.clear()}return{addRoute:r,resolve:d,removeRoute:i,clearRoutes:c,getRoutes:a,getRecordMatcher:l}}function ir(e,t){const n={};for(const s of t)s in e&&(n[s]=e[s]);return n}function or(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:ic(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function ic(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const s in e.components)t[s]=typeof n=="object"?n[s]:n;return t}function ar(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function oc(e){return e.reduce((t,n)=>se(t,n.meta),{})}function ac(e,t){let n=0,s=t.length;for(;n!==s;){const r=n+s>>1;Oi(e,t[r])<0?s=r:n=r+1}const l=uc(e);return l&&(s=t.lastIndexOf(l,s-1)),s}function uc(e){let t=e;for(;t=t.parent;)if(Pi(t)&&Oi(e,t)===0)return t}function Pi({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function ur(e){const t=Qe(ms),n=Qe(dl),s=je(()=>{const u=q(e.to);return t.resolve(u)}),l=je(()=>{const{matched:u}=s.value,{length:d}=u,c=u[d-1],h=n.matched;if(!c||!h.length)return-1;const y=h.findIndex(ln.bind(null,c));if(y>-1)return y;const b=cr(u[d-2]);return d>1&&cr(c)===b&&h[h.length-1].path!==b?h.findIndex(ln.bind(null,u[d-2])):y}),r=je(()=>l.value>-1&&hc(n.params,s.value.params)),i=je(()=>l.value>-1&&l.value===n.matched.length-1&&Ci(n.params,s.value.params));function a(u={}){if(pc(u)){const d=t[q(e.replace)?"replace":"push"](q(e.to)).catch(_n);return e.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>d),d}return Promise.resolve()}return{route:s,href:je(()=>s.value.href),isActive:r,isExactActive:i,navigate:a}}function cc(e){return e.length===1?e[0]:e}const fc=Wr({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"},viewTransition:Boolean},useLink:ur,setup(e,{slots:t}){const n=is(ur(e)),{options:s}=Qe(ms),l=je(()=>({[fr(e.activeClass,s.linkActiveClass,"router-link-active")]:n.isActive,[fr(e.exactActiveClass,s.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const r=t.default&&cc(t.default(n));return e.custom?r:vi("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:l.value},r)}}}),dc=fc;function pc(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function hc(e,t){for(const n in t){const s=t[n],l=e[n];if(typeof s=="string"){if(s!==l)return!1}else if(!et(l)||l.length!==s.length||s.some((r,i)=>r.valueOf()!==l[i].valueOf()))return!1}return!0}function cr(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const fr=(e,t,n)=>e??t??n,mc=Wr({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const s=Qe(Ws),l=je(()=>e.route||s.value),r=Qe(nr,0),i=je(()=>{let d=q(r);const{matched:c}=l.value;let h;for(;(h=c[d])&&!h.components;)d++;return d}),a=je(()=>l.value.matched[i.value]);Un(nr,je(()=>i.value+1)),Un(Ku,a),Un(Ws,l);const u=Z();return en(()=>[u.value,a.value,e.name],([d,c,h],[y,b,E])=>{c&&(c.instances[h]=d,b&&b!==c&&d&&d===y&&(c.leaveGuards.size||(c.leaveGuards=b.leaveGuards),c.updateGuards.size||(c.updateGuards=b.updateGuards))),d&&c&&(!b||!ln(c,b)||!y)&&(c.enterCallbacks[h]||[]).forEach(P=>P(d))},{flush:"post"}),()=>{const d=l.value,c=e.name,h=a.value,y=h&&h.components[c];if(!y)return dr(n.default,{Component:y,route:d});const b=h.props[c],E=b?b===!0?d.params:typeof b=="function"?b(d):b:null,G=vi(y,se({},E,t,{onVnodeUnmounted:j=>{j.component.isUnmounted&&(h.instances[c]=null)},ref:u}));return dr(n.default,{Component:G,route:d})||G}}});function dr(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const gc=mc;function vc(e){const t=rc(e.routes,e),n=e.parseQuery||Hu,s=e.stringifyQuery||tr,l=e.history,r=cn(),i=cn(),a=cn(),u=ho(Ot);let d=Ot;Qt&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const c=Rs.bind(null,v=>""+v),h=Rs.bind(null,Cu),y=Rs.bind(null,Tn);function b(v,m){let D,g;return Ti(v)?(D=t.getRecordMatcher(v),g=m):g=v,t.addRoute(g,D)}function E(v){const m=t.getRecordMatcher(v);m&&t.removeRoute(m)}function P(){return t.getRoutes().map(v=>v.record)}function G(v){return!!t.getRecordMatcher(v)}function j(v,m){if(m=se({},m||u.value),typeof v=="string"){const _=Os(n,v,m.path),x=t.resolve({path:_.path},m),T=l.createHref(_.fullPath);return se(_,x,{params:y(x.params),hash:Tn(_.hash),redirectedFrom:void 0,href:T})}let D;if(v.path!=null)D=se({},v,{path:Os(n,v.path,m.path).path});else{const _=se({},v.params);for(const x in _)_[x]==null&&delete _[x];D=se({},v,{params:h(_)}),m.params=h(m.params)}const g=t.resolve(D,m),W=v.hash||"";g.params=c(y(g.params));const f=Ru(s,se({},v,{hash:Su(W),path:g.path})),p=l.createHref(f);return se({fullPath:f,hash:W,query:s===tr?Bu(v.query):v.query||{}},g,{redirectedFrom:void 0,href:p})}function O(v){return typeof v=="string"?Os(n,v,u.value.path):se({},v)}function k(v,m){if(d!==v)return rn(pe.NAVIGATION_CANCELLED,{from:m,to:v})}function U(v){return te(v)}function F(v){return U(se(O(v),{replace:!0}))}function w(v,m){const D=v.matched[v.matched.length-1];if(D&&D.redirect){const{redirect:g}=D;let W=typeof g=="function"?g(v,m):g;return typeof W=="string"&&(W=W.includes("?")||W.includes("#")?W=O(W):{path:W},W.params={}),se({query:v.query,hash:v.hash,params:W.path!=null?{}:v.params},W)}}function te(v,m){const D=d=j(v),g=u.value,W=v.state,f=v.force,p=v.replace===!0,_=w(D,g);if(_)return te(se(O(_),{state:typeof _=="object"?se({},W,_.state):W,force:f,replace:p}),m||D);const x=D;x.redirectedFrom=m;let T;return!f&&Ou(s,g,D)&&(T=rn(pe.NAVIGATION_DUPLICATED,{to:x,from:g}),Ge(g,g,!0,!1)),(T?Promise.resolve(T):Ke(x,g)).catch(S=>gt(S)?gt(S,pe.NAVIGATION_GUARD_REDIRECT)?S:ze(S):X(S,x,g)).then(S=>{if(S){if(gt(S,pe.NAVIGATION_GUARD_REDIRECT))return te(se({replace:p},O(S.to),{state:typeof S.to=="object"?se({},W,S.to.state):W,force:f}),m||x)}else S=pt(x,g,!0,p,W);return tt(x,g,S),S})}function R(v,m){const D=k(v,m);return D?Promise.reject(D):Promise.resolve()}function Be(v){const m=Rt.values().next().value;return m&&typeof m.runWithContext=="function"?m.runWithContext(v):v()}function Ke(v,m){let D;const[g,W,f]=Gu(v,m);D=Is(g.reverse(),"beforeRouteLeave",v,m);for(const _ of g)_.leaveGuards.forEach(x=>{D.push(It(x,v,m))});const p=R.bind(null,v,m);return D.push(p),Ve(D).then(()=>{D=[];for(const _ of r.list())D.push(It(_,v,m));return D.push(p),Ve(D)}).then(()=>{D=Is(W,"beforeRouteUpdate",v,m);for(const _ of W)_.updateGuards.forEach(x=>{D.push(It(x,v,m))});return D.push(p),Ve(D)}).then(()=>{D=[];for(const _ of f)if(_.beforeEnter)if(et(_.beforeEnter))for(const x of _.beforeEnter)D.push(It(x,v,m));else D.push(It(_.beforeEnter,v,m));return D.push(p),Ve(D)}).then(()=>(v.matched.forEach(_=>_.enterCallbacks={}),D=Is(f,"beforeRouteEnter",v,m,Be),D.push(p),Ve(D))).then(()=>{D=[];for(const _ of i.list())D.push(It(_,v,m));return D.push(p),Ve(D)}).catch(_=>gt(_,pe.NAVIGATION_CANCELLED)?_:Promise.reject(_))}function tt(v,m,D){a.list().forEach(g=>Be(()=>g(v,m,D)))}function pt(v,m,D,g,W){const f=k(v,m);if(f)return f;const p=m===Ot,_=Qt?history.state:{};D&&(g||p?l.replace(v.fullPath,se({scroll:p&&_&&_.scroll},W)):l.push(v.fullPath,W)),u.value=v,Ge(v,m,D,p),ze()}let Ue;function Tt(){Ue||(Ue=l.listen((v,m,D)=>{if(!ht.listening)return;const g=j(v),W=w(g,ht.currentRoute.value);if(W){te(se(W,{replace:!0,force:!0}),g).catch(_n);return}d=g;const f=u.value;Qt&&Vu(er(f.fullPath,D.delta),hs()),Ke(g,f).catch(p=>gt(p,pe.NAVIGATION_ABORTED|pe.NAVIGATION_CANCELLED)?p:gt(p,pe.NAVIGATION_GUARD_REDIRECT)?(te(se(O(p.to),{force:!0}),g).then(_=>{gt(_,pe.NAVIGATION_ABORTED|pe.NAVIGATION_DUPLICATED)&&!D.delta&&D.type===Ks.pop&&l.go(-1,!1)}).catch(_n),Promise.reject()):(D.delta&&l.go(-D.delta,!1),X(p,g,f))).then(p=>{p=p||pt(g,f,!1),p&&(D.delta&&!gt(p,pe.NAVIGATION_CANCELLED)?l.go(-D.delta,!1):D.type===Ks.pop&>(p,pe.NAVIGATION_ABORTED|pe.NAVIGATION_DUPLICATED)&&l.go(-1,!1)),tt(g,f,p)}).catch(_n)}))}let _e=cn(),ge=cn(),ne;function X(v,m,D){ze(v);const g=ge.list();return g.length?g.forEach(W=>W(v,m,D)):console.error(v),Promise.reject(v)}function Je(){return ne&&u.value!==Ot?Promise.resolve():new Promise((v,m)=>{_e.add([v,m])})}function ze(v){return ne||(ne=!v,Tt(),_e.list().forEach(([m,D])=>v?D(v):m()),_e.reset()),v}function Ge(v,m,D,g){const{scrollBehavior:W}=e;if(!Qt||!W)return Promise.resolve();const f=!D&&Lu(er(v.fullPath,0))||(g||!D)&&history.state&&history.state.scroll||null;return ll().then(()=>W(v,m,f)).then(p=>p&&Mu(p)).catch(p=>X(p,v,m))}const Se=v=>l.go(v);let At;const Rt=new Set,ht={currentRoute:u,listening:!0,addRoute:b,removeRoute:E,clearRoutes:t.clearRoutes,hasRoute:G,getRoutes:P,resolve:j,options:e,push:U,replace:F,go:Se,back:()=>Se(-1),forward:()=>Se(1),beforeEach:r.add,beforeResolve:i.add,afterEach:a.add,onError:ge.add,isReady:Je,install(v){v.component("RouterLink",dc),v.component("RouterView",gc),v.config.globalProperties.$router=ht,Object.defineProperty(v.config.globalProperties,"$route",{enumerable:!0,get:()=>q(u)}),Qt&&!At&&u.value===Ot&&(At=!0,U(l.location).catch(g=>{}));const m={};for(const g in Ot)Object.defineProperty(m,g,{get:()=>u.value[g],enumerable:!0});v.provide(ms,ht),v.provide(dl,$r(m)),v.provide(Ws,u);const D=v.unmount;Rt.add(v),v.unmount=function(){Rt.delete(v),Rt.size<1&&(d=Ot,Ue&&Ue(),Ue=null,u.value=Ot,At=!1,ne=!1),D()}}};function Ve(v){return v.reduce((m,D)=>m.then(()=>Be(D)),Promise.resolve())}return ht}function gs(){return Qe(ms)}function pl(e){return Qe(dl)}const _c=["token","role","wallet","username"];function hl(){return{token:localStorage.getItem("token")||"",role:localStorage.getItem("role")||"",wallet:localStorage.getItem("wallet")||"",username:localStorage.getItem("username")||""}}function yc(e){localStorage.setItem("token",e.access_token),localStorage.setItem("role",e.role),localStorage.setItem("wallet",e.wallet_address),localStorage.setItem("username",e.username||"")}function ml(){_c.forEach(e=>localStorage.removeItem(e))}async function ae(e,t={}){const n={...t.headers||{}};t.body&&!n["Content-Type"]&&(n["Content-Type"]="application/json");const s=localStorage.getItem("token");s&&(n.Authorization=`Bearer ${s}`);const l=await fetch(`/api/v1${e}`,{...t,headers:n}),r=await l.text(),i=r?JSON.parse(r):null;if(l.status===401)throw ml(),location.pathname!=="/login"&&location.assign("/login"),new Error(qs(i)||"登录已失效");if(!l.ok)throw new Error(qs(i)||"请求失败");return i}async function bc(e,t){const n={},s=localStorage.getItem("token");s&&(n.Authorization=`Bearer ${s}`);const l=await fetch(`/api/v1${e}`,{headers:n});if(l.status===401)throw ml(),location.pathname!=="/login"&&location.assign("/login"),new Error("登录已失效");if(!l.ok){const u=await l.text(),d=u?JSON.parse(u):null;throw new Error(qs(d)||"下载失败")}const r=await l.blob(),i=URL.createObjectURL(r),a=document.createElement("a");a.href=i,a.download=t,a.click(),URL.revokeObjectURL(i)}function qs(e){return e?typeof e.detail=="string"?e.detail:Array.isArray(e.detail)?e.detail.map(t=>t.msg).filter(Boolean).join(";"):"":""}const wc={class:"gate"},Sc={class:"gate-copy"},xc={key:0,class:"network-line"},Ec={class:"switch"},Cc={key:0,class:"switch slim"},Tc={key:1},Ac={key:2},Rc={key:3},Oc={key:4},Pc={key:5,class:"form-error"},Ic=["disabled"],Nc={class:"hint"},kc={class:"panel agreement-sheet"},Dc={__name:"Login",setup(e){const t=gs(),n=Z("login"),s=Z("wallet"),l=Z(""),r=Z(!1),i=Z({wallet_address:"",username:"",password:"",confirm:""}),a=Z(!1),u=Z(null),d=Z(null);Pn(async()=>{try{const b=await ae("/network");u.value=b.nodes,d.value=b.online}catch{u.value=null}});async function c(){if(l.value="",n.value==="register"&&i.value.password!==i.value.confirm){l.value="两次密码不一致";return}r.value=!0;try{const b=n.value==="register"?await y():await h();yc(b),t.push(b.role==="admin"?"/admin":"/dashboard")}catch(b){l.value=b.message}finally{r.value=!1}}function h(){return s.value==="wallet"?ae("/auth/login",{method:"POST",body:JSON.stringify({wallet_address:i.value.wallet_address.trim()})}):ae("/auth/login",{method:"POST",body:JSON.stringify({username:i.value.username.trim(),password:i.value.password})})}function y(){return ae("/auth/register",{method:"POST",body:JSON.stringify({wallet_address:i.value.wallet_address.trim(),username:i.value.username.trim(),password:i.value.password})})}return(b,E)=>(I(),N("div",wc,[o("section",Sc,[E[11]||(E[11]=o("p",{class:"eyebrow"},"HyperNode",-1)),E[12]||(E[12]=o("h1",null,"连接全球 DePIN 分布式算力网络",-1)),E[13]||(E[13]=o("p",null,"基于去中心化节点的推理验证与任务调度平台。连接您的算力节点,实时监控质押释放与算力收益。",-1)),u.value!==null?(I(),N("p",xc,"全网节点 "+C(u.value)+" · 在线 "+C(d.value),1)):Y("",!0)]),o("form",{class:"gate-card",onSubmit:Gt(c,["prevent"])},[o("div",Ec,[o("button",{type:"button",class:he({on:n.value==="login"}),onClick:E[0]||(E[0]=P=>n.value="login")},"登录",2),o("button",{type:"button",class:he({on:n.value==="register"}),onClick:E[1]||(E[1]=P=>n.value="register")},"注册",2)]),n.value==="login"?(I(),N("div",Cc,[o("button",{type:"button",class:he({on:s.value==="wallet"}),onClick:E[2]||(E[2]=P=>s.value="wallet")},"钱包地址",2),o("button",{type:"button",class:he({on:s.value==="account"}),onClick:E[3]||(E[3]=P=>s.value="account")},"账号密码",2)])):Y("",!0),n.value==="register"||s.value==="wallet"?(I(),N("label",Tc,[E[14]||(E[14]=ee(" 钱包地址 ",-1)),we(o("input",{"onUpdate:modelValue":E[4]||(E[4]=P=>i.value.wallet_address=P),required:"",minlength:"4",placeholder:"请填写您的 USDT (TRC20/ERC20) 收益接收地址",autocomplete:"username"},null,512),[[De,i.value.wallet_address]])])):Y("",!0),n.value==="register"||s.value==="account"?(I(),N("label",Ac,[E[15]||(E[15]=ee(" 用户名 ",-1)),we(o("input",{"onUpdate:modelValue":E[5]||(E[5]=P=>i.value.username=P),required:"",minlength:"3",maxlength:"32",placeholder:"miner",autocomplete:"username"},null,512),[[De,i.value.username]])])):Y("",!0),n.value==="register"||s.value==="account"?(I(),N("label",Rc,[E[16]||(E[16]=ee(" 密码 ",-1)),we(o("input",{"onUpdate:modelValue":E[6]||(E[6]=P=>i.value.password=P),required:"",minlength:"6",type:"password",autocomplete:"current-password"},null,512),[[De,i.value.password]])])):Y("",!0),n.value==="register"?(I(),N("label",Oc,[E[17]||(E[17]=ee(" 确认密码 ",-1)),we(o("input",{"onUpdate:modelValue":E[7]||(E[7]=P=>i.value.confirm=P),required:"",minlength:"6",type:"password",autocomplete:"new-password"},null,512),[[De,i.value.confirm]])])):Y("",!0),l.value?(I(),N("p",Pc,C(l.value),1)):Y("",!0),o("button",{class:"gold wide",type:"submit",disabled:r.value},C(r.value?"请稍候":n.value==="login"?"进入":"创建账号"),9,Ic),o("p",Nc,[E[18]||(E[18]=ee(" 注册即代表您已阅读并同意 ",-1)),o("button",{type:"button",class:"agreement-link",onClick:E[8]||(E[8]=P=>a.value=!0)},"《算力节点质押与服务协议》")])],32),a.value?(I(),N("div",{key:0,class:"agreement-mask",onClick:E[10]||(E[10]=Gt(P=>a.value=!1,["self"]))},[o("article",kc,[E[19]||(E[19]=_a('<p class="eyebrow">HyperNode</p><h2>算力节点质押与服务协议</h2><p class="sub">生效日期:2026年10月 · 协议版本:v1.2</p><p>欢迎您申请参与 HyperNode 去中心化 AI 算力网络(以下简称“本网络”或“平台”)。在您勾选“同意协议”或完成 USDT 质押激活节点之前,请务必仔细阅读本协议的所有条款。</p><h3>一、定义与说明</h3><p>算力节点(Compute Node):指由用户运行或绑定的、通过轻量级客户端接入 HyperNode 网络的边缘计算节点。</p><p>节点履约质押金(Collateral Stake):指用户为保障节点运行质量(SLA)、防止网络作弊或恶意掉线,向平台系统质押的 1500 USDT 保证金。</p><p>节点 Token(Node Token):平台下发给已激活节点的专属加密凭证,用于客户端与网络服务端的鉴权与通信。</p><p>算力积分与收益(Yield / Points):指节点通过维持在线、响应网络数据推理验证与任务调度所获得的贡献奖励。</p><h3>二、质押与激活规则</h3><p>门槛与额度:激活单个标准 AI 算力节点需提交 1500 USDT 作为履约质押金。</p><p>审核与开通:用户提交链上交易哈希(TxID)后,需经系统及管理员清算审核。审核通过后,节点正式进入 12 个月的授权运行周期,并解锁客户端下载及 Node Token 绑定权限。</p><p>质押金优先抵扣与赎回:节点每日产生的算力收益,将优先计入“质押金赎回额度”。当累计释放收益达到 1500 USDT(即本金全额解锁)后,后续产生的收益自动转为“网络算力激励”。</p><h3>三、节点运行规范与 SLA 服务质量考核</h3><p>在线率要求:节点需保持每天不少于规定时长的在线状态,并正常响应服务端的随机任务下发与心跳检测。</p><p>收益衰减与扣罚机制:每日算力收益由“网络在线率”与“任务响应率”共同决定。若节点频繁离线、断网或拒绝响应计算任务,当天的表现系数将自动降低,导致当日算力收益缩减或清零,质押金赎回周期将相应顺延。</p><p>全网算力难度调整:平台根据全网总激活节点数量与每日总奖池,动态调整分配系数。节点收益受全网总算力竞争影响。</p><h3>四、提现与清算机制</h3><p>提现申请:用户可在控制台申请将已解冻的积分/USDT 提现至指定的个人加密钱包地址(TRC20 / ERC20)。</p><p>人工审核与安全排查:为防范 Sybil 攻击(女巫攻击)与自动化作弊,所有提现申请需经过平台安全清算与管理员审核。平台有权在发现异常流量或欺诈挂机时冻结相关节点。</p><h3>五、免责声明与风险提示</h3><p>网络与硬件风险:用户需自行承担因个人宽带中断、设备损坏、电力故障或客户端被防火墙拦截导致的节点掉线损失。</p><p>区块链与资产风险:请务必确认填写的 USDT 接收地址准确无误。因用户个人地址填写错误导致的资产损失,平台概不负责。</p><p>协议修改:平台保留根据网络发展与技术升级对本协议条款、产出算法进行微调的权利,更新后的条款将于控制台公示后生效。</p><p>点击“同意”或继续提交质押申请,即代表您已完全理解并接受上述所有条款与风险提示。</p>',25)),o("button",{class:"gold",type:"button",onClick:E[9]||(E[9]=P=>a.value=!1)},"同意")])])):Y("",!0)]))}},$c={class:"shell"},Mc={class:"rail"},Vc={class:"nav"},Lc={class:"rail-foot"},Uc={class:"who"},Fc={class:"stage"},jc={class:"top"},Hc={class:"eyebrow"},Bc={class:"clock"},Kc={class:"view"},Ii={__name:"Shell",props:{eyebrow:{type:String,default:"控制面"},title:{type:String,required:!0}},setup(e){const t=gs(),n=pl(),s=hl(),l=Z("--:--:--");let r=0;function i(){l.value=new Intl.DateTimeFormat("zh-CN",{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1,timeZone:"Asia/Shanghai"}).format(new Date)}function a(){ml(),t.push("/login")}return Pn(()=>{i(),r=window.setInterval(i,1e3)}),In(()=>window.clearInterval(r)),(u,d)=>{const c=cs("router-link");return I(),N("div",$c,[o("aside",Mc,[be(c,{class:"brand",to:"/"},{default:Dt(()=>[...d[0]||(d[0]=[o("span",{class:"mark","aria-hidden":"true"},[o("svg",{viewBox:"0 0 32 32",width:"28",height:"28"},[o("path",{d:"M16 3 L27 9.5 V22.5 L16 29 L5 22.5 V9.5 Z",fill:"none",stroke:"currentColor","stroke-width":"1.4"}),o("circle",{cx:"16",cy:"16",r:"2.2",fill:"currentColor"})])],-1),o("span",null,[o("strong",null,"HyperNode"),o("em",null,"Compute Atelier")],-1)])]),_:1}),o("nav",Vc,[be(c,{to:"/dashboard/nodes",class:he({"router-link-active":q(n).path.startsWith("/dashboard")})},{default:Dt(()=>[...d[1]||(d[1]=[ee("我的节点",-1)])]),_:1},8,["class"]),q(s).role==="admin"?(I(),qt(c,{key:0,to:"/admin/orders",class:he({"router-link-active":q(n).path.startsWith("/admin")})},{default:Dt(()=>[...d[2]||(d[2]=[ee("管理后台",-1)])]),_:1},8,["class"])):Y("",!0)]),o("div",Lc,[o("span",Uc,C(q(s).username||q(s).wallet),1),o("button",{type:"button",class:"texty",onClick:a},"退出")])]),o("div",Fc,[o("header",jc,[o("div",null,[o("p",Hc,C(e.eyebrow),1),o("h1",null,C(e.title),1)]),o("div",Bc,[d[3]||(d[3]=o("span",null,"北京时间",-1)),o("strong",null,C(l.value),1)])]),o("main",Kc,[Bo(u.$slots,"default")])])])}}},Gc=.95;function Ni(e){const t=Number(e);return Number.isFinite(t)?Ce(t*Gc):"—"}function Ce(e){const[t,n=""]=String(e??"0").split("."),s=t.replace(/\B(?=(\d{3})+(?!\d))/g,","),l=n.replace(/0+$/,"");return l?`${s}.${l}`:s}function Xn(e){const t=Number(e)*100;return Number.isFinite(t)?`${t.toFixed(t>=10?0:1)}%`:"0%"}function Xt(e){if(!e)return"—";const t=new Date(e);return Number.isNaN(t.getTime())?"—":new Intl.DateTimeFormat("zh-CN",{month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}).format(t)}const wt={online:"在线",offline:"离线",pending:"待审核",approved:"已开通",completed:"已打款",rejected:"已拒绝",failed:"失败",settled:"已入账",user:"用户",admin:"管理员"},Wc={key:0,class:"form-error banner"},qc={key:1,class:"banner ok"},Jc={key:2,class:"metrics"},zc={class:"metric"},Yc={class:"metric"},Qc={class:"metric"},Xc={class:"admin-tabs",role:"tablist","aria-label":"我的节点"},Zc={class:"tab-panel",role:"tabpanel"},ef={key:0,class:"empty"},tf={key:1,class:"board admin-board"},nf={key:0,class:"genesis-tag"},sf={key:1,class:"sub"},lf={class:"rate"},rf=["value"],of={class:"actions"},af=["disabled","onClick"],uf=["disabled","onClick"],cf={key:0,class:"empty"},ff={key:2},df={class:"sub"},pf={class:"board"},hf={class:"wallet"},mf={key:0,class:"sub"},gf={key:1,class:"sub"},vf={key:0,class:"empty"},_f={key:3},yf={class:"table-wrap"},bf={key:0},wf={key:4},Sf={class:"forms"},xf={class:"span-2"},Ef={class:"table-wrap"},Cf={class:"mono"},Tf={key:0},Af={__name:"Dashboard",setup(e){const t=[{id:"nodes",label:"我的节点"},{id:"orders",label:"授权订单"},{id:"withdrawals",label:"申请提现"},{id:"datacenter",label:"机房申请"}],n=pl(),s=gs(),l=je(()=>{const F=String(n.params.tab||"");return t.some(w=>w.id===F)?F:""}),r=Z(null),i=Z(""),a=Z(""),u=Z(""),d=Z({amount:"",asset_symbol:"POINT"}),c=Z({contact:"",node_count:"5",subnet_ip:"",hardware_proof:"",gpu_generation:"40"});let h=0;async function y(){r.value=await ae("/me/dashboard")}async function b(F,w){i.value="",a.value="";try{await F(),a.value=w,await y()}catch(te){i.value=te.message}}function E(F){return F.gpu_model?F.vram_gb?`${F.gpu_model} · ${F.vram_gb} GB`:F.gpu_model:"未上报"}function P(F){return F.gpu_generation==="40"?"40系及以上":F.gpu_generation==="30"?"30系":"10系及以下"}function G(){return b(async()=>{await ae("/me/orders",{method:"POST",body:JSON.stringify({tx_id:u.value.trim()})}),u.value=""},"支付凭证已提交,等待审核")}async function j(F){i.value="";try{await navigator.clipboard.writeText(F),a.value="Token 已复制"}catch{i.value="复制失败,请手动选择 Token"}}function O(F){return b(()=>bc(`/me/nodes/${encodeURIComponent(F.sn)}/client`,`hypernode-${F.sn}.py`),"客户端已开始下载")}function k(){return b(async()=>{await ae("/me/datacenter-applications",{method:"POST",body:JSON.stringify({contact:c.value.contact.trim(),node_count:Number(c.value.node_count),subnet_ip:c.value.subnet_ip.trim(),hardware_proof:c.value.hardware_proof.trim(),gpu_generation:c.value.gpu_generation})}),c.value.subnet_ip="",c.value.hardware_proof=""},"机房申请已提交,等待审核")}function U(){return b(async()=>{await ae("/me/withdrawals",{method:"POST",body:JSON.stringify({amount:d.value.amount,asset_symbol:d.value.asset_symbol||"POINT"})}),d.value.amount=""},"提现申请已提交")}return en(l,F=>{F||s.replace("/dashboard/nodes")},{immediate:!0}),Pn(async()=>{try{await y()}catch(F){i.value=F.message}h=window.setInterval(()=>{y().catch(F=>{i.value=F.message})},1e4)}),In(()=>window.clearInterval(h)),(F,w)=>{const te=cs("router-link");return I(),qt(Ii,{eyebrow:"用户控制台",title:"我的算力"},{default:Dt(()=>[i.value?(I(),N("p",Wc,C(i.value),1)):Y("",!0),a.value?(I(),N("p",qc,C(a.value),1)):Y("",!0),r.value?(I(),N("section",Jc,[o("article",zc,[w[8]||(w[8]=o("span",null,"可用积分",-1)),o("strong",null,C(q(Ce)(r.value.available_points)),1),o("em",null,"已入账 "+C(q(Ce)(r.value.settled_points)),1)]),o("article",Yc,[w[9]||(w[9]=o("span",null,"今日预计",-1)),o("strong",null,C(q(Ce)(r.value.today_points)),1),w[10]||(w[10]=o("em",null,"按当前在线实时估算",-1))]),o("article",Qc,[w[11]||(w[11]=o("span",null,"全网节点",-1)),o("strong",null,C(r.value.network_nodes),1),o("em",null,"在线 "+C(r.value.network_online),1)]),w[12]||(w[12]=o("p",{class:"fine"},"* 算力积分兑换汇率:1 积分 = 0.8 ~ 1.0 USDT(根据全网算力动态浮动,当前基准约 0.95 USDT)",-1))])):Y("",!0),o("nav",Xc,[(I(),N(ce,null,Ne(t,R=>be(te,{key:R.id,role:"tab",to:`/dashboard/${R.id}`,"aria-selected":l.value===R.id,class:he({on:l.value===R.id})},{default:Dt(()=>[ee(C(R.label),1)]),_:2},1032,["to","aria-selected","class"])),64))]),o("section",Zc,[r.value?l.value==="nodes"?(I(),N("section",tf,[(I(!0),N(ce,null,Ne(r.value.nodes,R=>(I(),N("article",{key:R.sn,class:"plate"},[o("header",null,[o("strong",null,C(R.display_node_id||R.sn),1),o("span",{class:he(["pill",R.is_banned?"rejected":R.activated?R.status:"pending"])},[w[13]||(w[13]=o("i",null,null,-1)),ee(C(R.is_banned?"已封禁":R.activated?q(wt)[R.status]:"待审核"),1)],2)]),R.genesis?(I(),N("p",nf,"[Genesis Special Node - 30 Days Recovery]")):Y("",!0),R.genesis?(I(),N("p",sf,"创世特权节点 - 30天回本")):Y("",!0),o("p",lf,[o("b",{style:Rn({width:q(Xn)(R.online_rate)})},null,4),ee(C(q(Xn)(R.online_rate))+" 今日在线",1)]),o("dl",null,[o("div",null,[w[14]||(w[14]=o("dt",null,"购买金额",-1)),o("dd",null,C(q(Ce)(R.purchase_amount)),1)]),o("div",null,[w[15]||(w[15]=o("dt",null,"今日积分",-1)),o("dd",null,C(q(Ce)(R.today_points)),1)]),o("div",null,[w[16]||(w[16]=o("dt",null,"最近心跳",-1)),o("dd",null,C(q(Xt)(R.last_heartbeat_at)),1)]),o("div",null,[w[17]||(w[17]=o("dt",null,"显卡",-1)),o("dd",null,C(E(R)),1)]),o("div",null,[w[18]||(w[18]=o("dt",null,"硬件权重",-1)),o("dd",null,C(R.hardware_weight),1)]),o("div",null,[w[19]||(w[19]=o("dt",null,"显卡世代",-1)),o("dd",null,C(P(R)),1)]),o("div",null,[w[20]||(w[20]=o("dt",null,"回本周期",-1)),o("dd",null,C(R.recovery_days)+" 天",1)]),o("div",null,[w[21]||(w[21]=o("dt",null,"待返还质押",-1)),o("dd",null,C(q(Ce)(R.recoverable_stake_amount||0)),1)])]),o("label",null,[w[22]||(w[22]=ee("挂机 Token",-1)),o("input",{class:"token-box",value:R.activated?R.node_token:"审核通过后发放",readonly:""},null,8,rf)]),o("div",of,[o("button",{class:"gold",type:"button",disabled:!R.activated,onClick:Be=>j(R.node_token)},"复制 Token",8,af),o("button",{class:"texty",type:"button",disabled:!R.activated,onClick:Be=>O(R)},"下载客户端",8,uf)])]))),128)),r.value.nodes.length?Y("",!0):(I(),N("p",cf,"还没有节点。到「授权订单」提交支付凭证。"))])):l.value==="orders"?(I(),N("div",ff,[o("form",{class:"panel",onSubmit:Gt(G,["prevent"])},[w[24]||(w[24]=o("h2",null,"购买节点授权",-1)),o("p",df,C(q(Ce)(r.value.license_price))+" "+C(r.value.license_asset||"USDT")+"。提交链上 TxID 后进入待审核,通过后开通 12 个月并签发 Token。",1),o("label",null,[w[23]||(w[23]=ee("TxID",-1)),we(o("input",{"onUpdate:modelValue":w[0]||(w[0]=R=>u.value=R),required:"",minlength:"6",placeholder:"链上交易哈希"},null,512),[[De,u.value]])]),w[25]||(w[25]=o("button",{class:"gold",type:"submit"},"提交支付凭证",-1))],32),o("section",pf,[(I(!0),N(ce,null,Ne(r.value.orders,R=>(I(),N("article",{key:R.id,class:he(["plate",{locked:R.status!=="approved"}])},[o("header",null,[o("strong",null,"订单 #"+C(R.id),1),o("span",{class:he(["pill",R.status])},[w[26]||(w[26]=o("i",null,null,-1)),ee(C(q(wt)[R.status]),1)],2)]),o("p",hf,C(q(Ce)(R.amount))+" "+C(R.asset_symbol)+" · "+C(R.tx_id),1),R.status==="pending"?(I(),N("p",mf,"审核通过前不能复制 Token,也不能下载客户端。")):R.display_node_id?(I(),N("p",gf,"节点 "+C(R.display_node_id),1)):Y("",!0)],2))),128)),r.value.orders.length?Y("",!0):(I(),N("p",vf,"还没有授权订单。"))])])):l.value==="withdrawals"?(I(),N("div",_f,[o("form",{class:"panel",onSubmit:Gt(U,["prevent"])},[w[29]||(w[29]=o("h2",null,"申请提现",-1)),w[30]||(w[30]=o("p",{class:"sub"},"提交申请后,相应积分进入锁定。审核通过后打到注册时填写的 USDT 地址。折算按当前基准 1 积分 ≈ 0.95 USDT。",-1)),o("label",null,[w[27]||(w[27]=ee("积分数量",-1)),we(o("input",{"onUpdate:modelValue":w[1]||(w[1]=R=>d.value.amount=R),required:"",placeholder:"1.25"},null,512),[[De,d.value.amount]])]),o("label",null,[w[28]||(w[28]=ee("资产",-1)),we(o("input",{"onUpdate:modelValue":w[2]||(w[2]=R=>d.value.asset_symbol=R)},null,512),[[De,d.value.asset_symbol]])]),w[31]||(w[31]=o("button",{class:"gold",type:"submit"},"提交申请",-1))],32),o("div",yf,[o("table",null,[w[33]||(w[33]=o("thead",null,[o("tr",null,[o("th",null,"单号"),o("th",null,"积分"),o("th",null,"折算金额"),o("th",null,"状态"),o("th",null,"时间")])],-1)),o("tbody",null,[(I(!0),N(ce,null,Ne(r.value.withdrawals,R=>(I(),N("tr",{key:R.id},[o("td",null,"#"+C(R.id),1),o("td",null,C(q(Ce)(R.amount))+" "+C(R.asset_symbol),1),o("td",null,C(q(Ni)(R.amount))+" USDT",1),o("td",null,[o("span",{class:he(["pill",R.status])},C(q(wt)[R.status]),3)]),o("td",null,C(q(Xt)(R.created_at)),1)]))),128)),r.value.withdrawals.length?Y("",!0):(I(),N("tr",bf,[...w[32]||(w[32]=[o("td",{colspan:"5",class:"empty"},"还没有提现申请。",-1)])]))])])])])):l.value==="datacenter"?(I(),N("div",wf,[o("form",{class:"panel",onSubmit:Gt(k,["prevent"])},[w[40]||(w[40]=o("h2",null,"机房白名单申请",-1)),w[41]||(w[41]=o("p",{class:"sub"},"同一公网出口批量接入,需至少 5 台且全部为 30 系或 40 系显卡。审核通过后,该网段内硬件指纹不同的机器可以一起挂载。",-1)),o("div",Sf,[o("label",null,[w[34]||(w[34]=ee("联系方式",-1)),we(o("input",{"onUpdate:modelValue":w[3]||(w[3]=R=>c.value.contact=R),required:"",minlength:"4",placeholder:"Telegram / 邮箱 / 手机"},null,512),[[De,c.value.contact]])]),o("label",null,[w[35]||(w[35]=ee("预估节点数",-1)),we(o("input",{"onUpdate:modelValue":w[4]||(w[4]=R=>c.value.node_count=R),required:"",type:"number",min:"5",placeholder:"5"},null,512),[[De,c.value.node_count]])]),o("label",null,[w[36]||(w[36]=ee("出口网段",-1)),we(o("input",{"onUpdate:modelValue":w[5]||(w[5]=R=>c.value.subnet_ip=R),required:"",placeholder:"203.0.113.0/24"},null,512),[[De,c.value.subnet_ip]])]),o("label",null,[w[38]||(w[38]=ee("显卡世代 ",-1)),we(o("select",{"onUpdate:modelValue":w[6]||(w[6]=R=>c.value.gpu_generation=R)},[...w[37]||(w[37]=[o("option",{value:"40"},"40 系及以上",-1),o("option",{value:"30"},"30 系",-1)])],512),[[Hs,c.value.gpu_generation]])]),o("label",xf,[w[39]||(w[39]=ee("硬件配置证明",-1)),we(o("textarea",{"onUpdate:modelValue":w[7]||(w[7]=R=>c.value.hardware_proof=R),required:"",minlength:"4",placeholder:"例如 8 台 RTX 4090,附采购或机房照片说明"},null,512),[[De,c.value.hardware_proof]])])]),w[42]||(w[42]=o("button",{class:"gold",type:"submit"},"提交机房申请",-1))],32),o("div",Ef,[o("table",null,[w[44]||(w[44]=o("thead",null,[o("tr",null,[o("th",null,"单号"),o("th",null,"网段"),o("th",null,"节点数"),o("th",null,"显卡"),o("th",null,"状态")])],-1)),o("tbody",null,[(I(!0),N(ce,null,Ne(r.value.datacenter_applications,R=>(I(),N("tr",{key:R.id},[o("td",null,"#"+C(R.id),1),o("td",Cf,C(R.subnet_ip),1),o("td",null,C(R.node_count),1),o("td",null,C(R.gpu_generation)+" 系",1),o("td",null,[o("span",{class:he(["pill",R.status])},C(q(wt)[R.status]),3)])]))),128)),r.value.datacenter_applications.length?Y("",!0):(I(),N("tr",Tf,[...w[43]||(w[43]=[o("td",{colspan:"5",class:"empty"},"还没有机房申请。",-1)])]))])])])])):Y("",!0):(I(),N("p",ef,"正在读取…"))])]),_:1})}}},Rf={key:0,class:"form-error banner"},Of={key:1,class:"banner ok"},Pf={key:2,class:"metrics"},If={class:"metric"},Nf={class:"metric"},kf={class:"metric"},Df={class:"metric"},$f={class:"admin-tabs",role:"tablist","aria-label":"管理分类"},Mf={key:3,class:"banner confirm-ban"},Vf={class:"tab-panel",role:"tabpanel"},Lf={key:0,class:"empty"},Uf={key:1,class:"table-wrap"},Ff={class:"mono"},jf={class:"mono"},Hf={key:0,class:"actions"},Bf=["onClick"],Kf=["onClick"],Gf={key:1},Wf={key:0},qf={key:2,class:"board admin-board"},Jf={class:"whitelist-row"},zf={key:0,class:"pill pending"},Yf={class:"toggle"},Qf=["checked","onChange"],Xf=["onClick"],Zf=["onClick"],ed={key:0,class:"genesis-tag"},td={key:1,class:"sub"},nd={class:"wallet"},sd={class:"sub"},ld={class:"rate"},rd={key:0,class:"empty"},id={key:3},od={class:"forms"},ad=["value"],ud=["value"],cd={class:"span-2"},fd={class:"table-wrap"},dd=["title"],pd={class:"mono"},hd={key:0},md={key:4,class:"panel whitelist-panel"},gd={class:"table-wrap"},vd={class:"mono"},_d={class:"actions"},yd=["onClick"],bd={key:0},wd={key:5,class:"table-wrap"},Sd={class:"mono"},xd={class:"mono"},Ed={key:0,class:"actions"},Cd=["onClick"],Td=["onClick"],Ad={key:1},Rd={key:0},Od={key:6},Pd={class:"table-wrap"},Id={class:"mono"},Nd=["onUpdate:modelValue"],kd={key:1,class:"mono"},Dd={key:0,class:"actions"},$d=["onClick"],Md=["onClick"],Vd={key:1},Ld={key:0},Ud={key:7,class:"table-wrap"},Fd={class:"mono"},jd={key:0},Hd={__name:"AdminOverview",setup(e){const t=[{id:"orders",label:"授权订单"},{id:"nodes",label:"节点监控"},{id:"tasks",label:"任务调度"},{id:"whitelist",label:"IP 白名单"},{id:"datacenter-apps",label:"机房大客户申请"},{id:"withdrawals",label:"提现审核"},{id:"users",label:"用户"}],n=pl(),s=gs(),l=Z(null),r=Z([]),i=Z([]),a=Z([]),u=Z([]),d=Z({}),c=Z([]),h=Z([]),y=Z([]),b=[{id:"alpha_mining",label:"量化因子挖掘",sample:`{
|
||
"operators": ["ts_mean", "rank"],
|
||
"population": 64
|
||
}`},{id:"llm_inference",label:"大模型推理",sample:`{
|
||
"model": "qwen2.5-7b",
|
||
"prompt": "summarize the brief",
|
||
"max_tokens": 256
|
||
}`},{id:"lora_training",label:"QLoRA 微调",sample:`{
|
||
"base_model": "qwen2.5-7b",
|
||
"rank": 16,
|
||
"steps": 100
|
||
}`},{id:"stress_test",label:"简易压测",sample:`{
|
||
"duration_seconds": 60,
|
||
"matrix": 4096
|
||
}`}],E=Z({task_type:"alpha_mining",target_node_sn:"",payloadText:b[0].sample}),P=Z(!1),G={pending:"待领取",processing:"执行中",completed:"已完成",failed:"失败",expired:"已过期"},j=Z({ip_address:"",note:""}),O=Z(""),k=Z(""),U=Z(!1),F=Z(null);let w=0,te=0;const R=je(()=>{const v=String(n.params.tab||"");return t.some(m=>m.id===v)?v:""});function Be(v){return v.gpu_generation==="40"?"40 系":v.gpu_generation==="30"?"30 系":"10 系及以下"}function Ke(v){const m=b.find(D=>D.id===v);return m?m.label:v==="simulated_compute"?"模拟计算":v}function tt(){if(P.value)return;const v=b.find(m=>m.id===E.value.task_type);E.value.payloadText=v?v.sample:"{}"}function pt(v){return v.gpu_model?v.vram_gb?`${v.gpu_model} · ${v.vram_gb} GB`:v.gpu_model:"未上报"}async function Ue(){l.value=await ae("/admin/summary")}async function Tt(v,m=!1){const g={orders:async()=>{u.value=await ae("/admin/orders")},nodes:async()=>{i.value=await ae("/admin/nodes")},tasks:async()=>{const[f,p]=await Promise.all([ae("/admin/tasks/list"),ae("/admin/nodes")]);y.value=f,i.value=p},whitelist:async()=>{c.value=await ae("/admin/ip-whitelist")},"datacenter-apps":async()=>{h.value=await ae("/admin/datacenter-applications")},withdrawals:async()=>{a.value=await ae("/admin/withdrawals")},users:async()=>{r.value=await ae("/admin/users")}}[v];if(!g)return;const W=++te;m||(U.value=!0);try{await g()}finally{W===te&&(U.value=!1)}}async function _e(){await Ue(),R.value&&await Tt(R.value,!0)}async function ge(v){O.value="",k.value="";try{const m=await ae(`/admin/orders/${v.id}/approve`,{method:"POST"});k.value=`订单 #${v.id} 已开通,节点 ${m.display_node_id||m.sn}`,await _e()}catch(m){O.value=m.message}}async function ne(v){O.value="",k.value="";try{await ae(`/admin/orders/${v.id}/reject`,{method:"POST",body:JSON.stringify({note:"支付凭证未通过"})}),k.value=`订单 #${v.id} 已拒绝`,await _e()}catch(m){O.value=m.message}}async function X(v){const m=(d.value[v.id]||"").trim();if(!m){O.value="请先填写链上哈希";return}O.value="",k.value="";try{await ae(`/admin/withdrawals/${v.id}/confirm`,{method:"POST",body:JSON.stringify({tx_hash:m})}),k.value=`提现 #${v.id} 已打款`,await _e()}catch(D){O.value=D.message}}async function Je(v){O.value="",k.value="";const m=!v.is_whitelist;try{await ae(`/admin/nodes/${encodeURIComponent(v.sn)}/whitelist`,{method:"POST",body:JSON.stringify({is_whitelist:m})}),k.value=m?`节点 ${v.display_node_id||v.sn} 已加入白名单`:`节点 ${v.display_node_id||v.sn} 已取消白名单`,await _e()}catch(D){O.value=D.message}}async function ze(v,m){O.value="",k.value="",F.value=null;try{await ae(`/admin/nodes/${encodeURIComponent(v.sn)}/ban`,{method:"POST",body:JSON.stringify({is_banned:m})}),k.value=m?`节点 ${v.display_node_id||v.sn} 已封禁`:`节点 ${v.display_node_id||v.sn} 已解除封禁`,await _e()}catch(D){O.value=D.message}}async function Ge(){O.value="",k.value="";let v;try{v=JSON.parse(E.value.payloadText)}catch{O.value="Payload 不是合法 JSON";return}if(!v||Array.isArray(v)||typeof v!="object"){O.value="Payload 需要是 JSON 对象";return}try{const m=await ae("/admin/tasks/create",{method:"POST",body:JSON.stringify({task_type:E.value.task_type,target_node_sn:E.value.target_node_sn||null,payload:v})});k.value=`已下发 ${m.length} 个任务`,await _e()}catch(m){O.value=m.message}}async function Se(){O.value="",k.value="";try{await ae("/admin/ip-whitelist",{method:"POST",body:JSON.stringify({ip_address:j.value.ip_address.trim(),note:j.value.note.trim()})}),j.value={ip_address:"",note:""},k.value="白名单 IP 已添加",await _e()}catch(v){O.value=v.message}}async function At(v){O.value="",k.value="";try{await ae(`/admin/datacenter-applications/${v.id}/approve`,{method:"POST"}),k.value=`机房申请 #${v.id} 已通过,网段 ${v.subnet_ip} 已加入白名单`,await _e()}catch(m){O.value=m.message}}async function Rt(v){O.value="",k.value="";try{await ae(`/admin/datacenter-applications/${v.id}/reject`,{method:"POST",body:JSON.stringify({note:"未达到机房门槛"})}),k.value=`机房申请 #${v.id} 已拒绝`,await _e()}catch(m){O.value=m.message}}async function ht(v){O.value="",k.value="";try{await ae(`/admin/ip-whitelist/${v.id}`,{method:"DELETE"}),k.value=`${v.ip_address} 已移出白名单`,await _e()}catch(m){O.value=m.message}}async function Ve(v){O.value="",k.value="";try{await ae(`/admin/withdrawals/${v.id}/reject`,{method:"POST",body:JSON.stringify({note:"管理后台拒绝"})}),k.value=`提现 #${v.id} 已拒绝`,await _e()}catch(m){O.value=m.message}}return en(R,async v=>{if(!v){s.replace("/admin/orders");return}try{await Tt(v)}catch(m){U.value=!1,O.value=m.message}},{immediate:!0}),Pn(async()=>{try{await Ue()}catch(v){O.value=v.message}w=window.setInterval(()=>{_e().catch(v=>{O.value=v.message})},1e4)}),In(()=>window.clearInterval(w)),(v,m)=>{const D=cs("router-link");return I(),qt(Ii,{eyebrow:"管理后台",title:"全网概览"},{default:Dt(()=>[O.value?(I(),N("p",Rf,C(O.value),1)):Y("",!0),k.value?(I(),N("p",Of,C(k.value),1)):Y("",!0),l.value?(I(),N("section",Pf,[o("article",If,[m[8]||(m[8]=o("span",null,"用户",-1)),o("strong",null,C(l.value.users),1),m[9]||(m[9]=o("em",null,"已注册钱包",-1))]),o("article",Nf,[m[10]||(m[10]=o("span",null,"全网节点",-1)),o("strong",null,C(l.value.nodes),1),o("em",null,"在线 "+C(l.value.online)+" · 离线 "+C(l.value.offline),1)]),o("article",kf,[m[11]||(m[11]=o("span",null,"总产出",-1)),o("strong",null,C(q(Ce)(l.value.settled_points)),1),o("em",null,"授权 "+C(q(Ce)(l.value.authorized_amount)),1)]),o("article",Df,[m[12]||(m[12]=o("span",null,"待审核",-1)),o("strong",null,C(q(Ce)(l.value.pending_withdrawals)),1),m[13]||(m[13]=o("em",null,"占用中的提现",-1))])])):Y("",!0),o("nav",$f,[(I(),N(ce,null,Ne(t,g=>be(D,{key:g.id,role:"tab",to:`/admin/${g.id}`,"aria-selected":R.value===g.id,class:he({on:R.value===g.id})},{default:Dt(()=>[ee(C(g.label),1)]),_:2},1032,["to","aria-selected","class"])),64))]),F.value?(I(),N("p",Mf,[ee(" 确认封禁节点 "+C(F.value.display_node_id||F.value.sn)+"?封禁后心跳会被拒绝。 ",1),o("button",{class:"danger",type:"button",onClick:m[0]||(m[0]=g=>ze(F.value,!0))},"确认封禁"),o("button",{class:"texty",type:"button",onClick:m[1]||(m[1]=g=>F.value=null)},"取消")])):Y("",!0),o("section",Vf,[U.value?(I(),N("p",Lf,"正在读取…")):R.value==="orders"?(I(),N("div",Uf,[o("table",null,[m[15]||(m[15]=o("thead",null,[o("tr",null,[o("th",null,"单号"),o("th",null,"钱包"),o("th",null,"金额"),o("th",null,"TxID"),o("th",null,"状态"),o("th",null,"节点"),o("th")])],-1)),o("tbody",null,[(I(!0),N(ce,null,Ne(u.value,g=>(I(),N("tr",{key:g.id},[o("td",null,"#"+C(g.id),1),o("td",Ff,C(g.wallet_address),1),o("td",null,C(q(Ce)(g.amount))+" "+C(g.asset_symbol),1),o("td",jf,C(g.tx_id),1),o("td",null,[o("span",{class:he(["pill",g.status])},C(q(wt)[g.status]),3)]),o("td",null,C(g.display_node_id||g.sn||"—"),1),g.status==="pending"?(I(),N("td",Hf,[o("button",{class:"gold",type:"button",onClick:W=>ge(g)},"审核开通",8,Bf),o("button",{class:"texty",type:"button",onClick:W=>ne(g)},"拒绝",8,Kf)])):(I(),N("td",Gf))]))),128)),u.value.length?Y("",!0):(I(),N("tr",Wf,[...m[14]||(m[14]=[o("td",{colspan:"7",class:"empty"},"还没有授权订单。",-1)])]))])])])):R.value==="nodes"?(I(),N("section",qf,[(I(!0),N(ce,null,Ne(i.value,g=>(I(),N("article",{key:g.sn,class:"plate"},[o("header",null,[o("strong",null,C(g.display_node_id||g.sn),1),o("span",{class:he(["pill",g.is_banned?"rejected":g.status])},[m[16]||(m[16]=o("i",null,null,-1)),ee(C(g.is_banned?"已封禁":q(wt)[g.status]),1)],2)]),o("div",Jf,[g.is_whitelist?(I(),N("span",zf,"白名单")):Y("",!0),o("label",Yf,[o("input",{type:"checkbox",checked:g.is_whitelist,onChange:W=>Je(g)},null,40,Qf),m[17]||(m[17]=o("span",null,null,-1)),m[18]||(m[18]=ee(" 白名单 ",-1))]),g.is_banned?(I(),N("button",{key:1,class:"texty",type:"button",onClick:W=>ze(g,!1)},"解除封禁",8,Xf)):(I(),N("button",{key:2,class:"danger",type:"button",onClick:W=>F.value=g},"封禁",8,Zf))]),g.genesis?(I(),N("p",ed,"[Genesis Special Node - 30 Days Recovery]")):Y("",!0),g.genesis?(I(),N("p",td,"创世特权节点 - 30天回本")):Y("",!0),o("p",nd,C(g.wallet_address),1),o("p",sd,C(g.sn),1),o("p",ld,[o("b",{style:Rn({width:q(Xn)(g.online_rate)})},null,4),ee(C(q(Xn)(g.online_rate))+" 今日在线率",1)]),o("dl",null,[o("div",null,[m[19]||(m[19]=o("dt",null,"显卡",-1)),o("dd",null,C(pt(g)),1)]),o("div",null,[m[20]||(m[20]=o("dt",null,"CPU",-1)),o("dd",null,C(g.cpu_count?`${g.cpu_count} 核`:"—"),1)]),o("div",null,[m[21]||(m[21]=o("dt",null,"内存",-1)),o("dd",null,C(g.memory_gb?`${g.memory_gb} GB`:"—"),1)]),o("div",null,[m[22]||(m[22]=o("dt",null,"权重",-1)),o("dd",null,C(g.hardware_weight),1)]),o("div",null,[m[23]||(m[23]=o("dt",null,"世代",-1)),o("dd",null,C(Be(g)),1)]),o("div",null,[m[24]||(m[24]=o("dt",null,"绑定 IP",-1)),o("dd",null,C(g.client_ip||"—"),1)]),o("div",null,[m[25]||(m[25]=o("dt",null,"今日积分",-1)),o("dd",null,C(q(Ce)(g.today_points)),1)]),o("div",null,[m[26]||(m[26]=o("dt",null,"心跳",-1)),o("dd",null,C(q(Xt)(g.last_heartbeat_at)),1)])])]))),128)),i.value.length?Y("",!0):(I(),N("p",rd,"还没有节点。"))])):R.value==="tasks"?(I(),N("div",id,[o("form",{class:"panel",onSubmit:Gt(Ge,["prevent"])},[m[31]||(m[31]=o("h2",null,"发布任务",-1)),m[32]||(m[32]=o("p",{class:"sub"},"指定节点会进入该节点的领取队列。选择全部在线节点时,当前每个在线节点各收到一条。",-1)),o("div",od,[o("label",null,[m[27]||(m[27]=ee("任务类型 ",-1)),we(o("select",{"onUpdate:modelValue":m[2]||(m[2]=g=>E.value.task_type=g),onChange:tt},[(I(),N(ce,null,Ne(b,g=>o("option",{key:g.id,value:g.id},C(g.label),9,ad)),64))],544),[[Hs,E.value.task_type]])]),o("label",null,[m[29]||(m[29]=ee("目标节点 ",-1)),we(o("select",{"onUpdate:modelValue":m[3]||(m[3]=g=>E.value.target_node_sn=g)},[m[28]||(m[28]=o("option",{value:""},"全部在线节点",-1)),(I(!0),N(ce,null,Ne(i.value,g=>(I(),N("option",{key:g.sn,value:g.sn},C(g.display_node_id||g.sn)+" · "+C(g.sn),9,ud))),128))],512),[[Hs,E.value.target_node_sn]])]),o("label",cd,[m[30]||(m[30]=ee("Payload ",-1)),we(o("textarea",{"onUpdate:modelValue":m[4]||(m[4]=g=>E.value.payloadText=g),required:"",spellcheck:"false",onInput:m[5]||(m[5]=g=>P.value=!0)},null,544),[[De,E.value.payloadText]])])]),m[33]||(m[33]=o("button",{class:"gold",type:"submit"},"立即下发任务",-1))],32),o("div",fd,[o("table",null,[m[35]||(m[35]=o("thead",null,[o("tr",null,[o("th",null,"任务"),o("th",null,"类型"),o("th",null,"节点"),o("th",null,"状态"),o("th",null,"完成时间"),o("th",null,"结果")])],-1)),o("tbody",null,[(I(!0),N(ce,null,Ne(y.value,g=>(I(),N("tr",{key:g.task_id},[o("td",{class:"mono",title:g.task_id},C(g.task_id.slice(0,8)),9,dd),o("td",null,C(Ke(g.task_type)),1),o("td",null,C(g.target_node_sn?`${g.display_node_id||"—"} · ${g.target_node_sn}`:"排队中"),1),o("td",null,[o("span",{class:he(["pill",g.status])},C(G[g.status]||g.status),3)]),o("td",null,C(q(Xt)(g.responded_at)),1),o("td",pd,C(g.result_preview||"—"),1)]))),128)),y.value.length?Y("",!0):(I(),N("tr",hd,[...m[34]||(m[34]=[o("td",{colspan:"6",class:"empty"},"还没有任务。",-1)])]))])])])])):R.value==="whitelist"?(I(),N("section",md,[m[41]||(m[41]=o("p",{class:"sub"},"可以填写单 IP,或整个机房网段,例如 203.0.113.0/24。网段内的地址都可以挂载多台设备。",-1)),o("form",{class:"ip-form",onSubmit:Gt(Se,["prevent"])},[o("label",null,[m[36]||(m[36]=ee("豁免 IP / 网段",-1)),we(o("input",{"onUpdate:modelValue":m[6]||(m[6]=g=>j.value.ip_address=g),required:"",placeholder:"203.0.113.0/24"},null,512),[[De,j.value.ip_address]])]),o("label",null,[m[37]||(m[37]=ee("备注",-1)),we(o("input",{"onUpdate:modelValue":m[7]||(m[7]=g=>j.value.note=g),placeholder:"自营机房出口"},null,512),[[De,j.value.note]])]),m[38]||(m[38]=o("button",{class:"gold",type:"submit"},"添加豁免 IP",-1))],32),o("div",gd,[o("table",null,[m[40]||(m[40]=o("thead",null,[o("tr",null,[o("th",null,"IP"),o("th",null,"备注"),o("th",null,"添加时间"),o("th")])],-1)),o("tbody",null,[(I(!0),N(ce,null,Ne(c.value,g=>(I(),N("tr",{key:g.id},[o("td",vd,C(g.ip_address),1),o("td",null,C(g.note||"—"),1),o("td",null,C(q(Xt)(g.created_at)),1),o("td",_d,[o("button",{class:"texty",type:"button",onClick:W=>ht(g)},"移除",8,yd)])]))),128)),c.value.length?Y("",!0):(I(),N("tr",bd,[...m[39]||(m[39]=[o("td",{colspan:"4",class:"empty"},"还没有豁免 IP。",-1)])]))])])])])):R.value==="datacenter-apps"?(I(),N("div",wd,[o("table",null,[m[43]||(m[43]=o("thead",null,[o("tr",null,[o("th",null,"单号"),o("th",null,"钱包"),o("th",null,"联系方式"),o("th",null,"节点数"),o("th",null,"网段"),o("th",null,"显卡"),o("th",null,"证明"),o("th",null,"状态"),o("th")])],-1)),o("tbody",null,[(I(!0),N(ce,null,Ne(h.value,g=>(I(),N("tr",{key:g.id},[o("td",null,"#"+C(g.id),1),o("td",Sd,C(g.wallet_address),1),o("td",null,C(g.contact),1),o("td",null,[ee(C(g.node_count)+" ",1),o("span",{class:he(["pill",g.node_count>=5?"pending":"rejected"])},C(g.node_count>=5?"≥ 5 台":"不足 5 台"),3)]),o("td",xd,C(g.subnet_ip),1),o("td",null,C(g.gpu_generation)+" 系",1),o("td",null,C(g.hardware_proof),1),o("td",null,[o("span",{class:he(["pill",g.status])},C(q(wt)[g.status]),3)]),g.status==="pending"?(I(),N("td",Ed,[o("button",{class:"gold",type:"button",onClick:W=>At(g)},"审批通过",8,Cd),o("button",{class:"texty",type:"button",onClick:W=>Rt(g)},"拒绝",8,Td)])):(I(),N("td",Ad))]))),128)),h.value.length?Y("",!0):(I(),N("tr",Rd,[...m[42]||(m[42]=[o("td",{colspan:"9",class:"empty"},"还没有机房申请。",-1)])]))])])])):R.value==="withdrawals"?(I(),N("div",Od,[m[46]||(m[46]=o("p",{class:"sub tab-note"},"折算金额按当前基准 1 积分 ≈ 0.95 USDT。实际打款以链上哈希为准。",-1)),o("div",Pd,[o("table",null,[m[45]||(m[45]=o("thead",null,[o("tr",null,[o("th",null,"单号"),o("th",null,"USDT 地址"),o("th",null,"积分"),o("th",null,"折算金额"),o("th",null,"状态"),o("th",null,"链上哈希"),o("th")])],-1)),o("tbody",null,[(I(!0),N(ce,null,Ne(a.value,g=>(I(),N("tr",{key:g.id},[o("td",null,"#"+C(g.id),1),o("td",Id,C(g.wallet_address),1),o("td",null,C(q(Ce)(g.amount))+" "+C(g.asset_symbol),1),o("td",null,C(q(Ni)(g.amount))+" USDT",1),o("td",null,[o("span",{class:he(["pill",g.status])},C(q(wt)[g.status]),3)]),o("td",null,[g.status==="pending"?we((I(),N("input",{key:0,"onUpdate:modelValue":W=>d.value[g.id]=W,placeholder:"交易哈希"},null,8,Nd)),[[De,d.value[g.id]]]):(I(),N("span",kd,C(g.tx_hash||"—"),1))]),g.status==="pending"?(I(),N("td",Dd,[o("button",{class:"gold",type:"button",onClick:W=>X(g)},"确认打款",8,$d),o("button",{class:"texty",type:"button",onClick:W=>Ve(g)},"拒绝",8,Md)])):(I(),N("td",Vd))]))),128)),a.value.length?Y("",!0):(I(),N("tr",Ld,[...m[44]||(m[44]=[o("td",{colspan:"7",class:"empty"},"还没有提现申请。",-1)])]))])])])])):R.value==="users"?(I(),N("div",Ud,[o("table",null,[m[48]||(m[48]=o("thead",null,[o("tr",null,[o("th",null,"钱包"),o("th",null,"用户名"),o("th",null,"角色"),o("th",null,"节点"),o("th",null,"可用积分"),o("th",null,"注册")])],-1)),o("tbody",null,[(I(!0),N(ce,null,Ne(r.value,g=>(I(),N("tr",{key:g.id},[o("td",Fd,C(g.wallet_address),1),o("td",null,C(g.username||"—"),1),o("td",null,C(q(wt)[g.role]),1),o("td",null,C(g.node_count),1),o("td",null,C(q(Ce)(g.available_points)),1),o("td",null,C(q(Xt)(g.created_at)),1)]))),128)),r.value.length?Y("",!0):(I(),N("tr",jd,[...m[47]||(m[47]=[o("td",{colspan:"6",class:"empty"},"还没有用户。",-1)])]))])])])):Y("",!0)])]),_:1})}}},ki=vc({history:zu(),routes:[{path:"/",redirect:()=>hl().role==="admin"?"/admin":"/dashboard"},{path:"/login",component:Dc},{path:"/dashboard",redirect:"/dashboard/nodes"},{path:"/dashboard/:tab",component:Af,meta:{auth:!0}},{path:"/admin",redirect:"/admin/orders"},{path:"/admin/:tab",component:Hd,meta:{auth:!0,admin:!0}}]});ki.beforeEach(e=>{const t=hl();return e.meta.auth&&!t.token?"/login":e.meta.admin&&t.role!=="admin"?"/dashboard":e.path==="/login"&&t.token?t.role==="admin"?"/admin":"/dashboard":!0});ru(fu).use(ki).mount("#app");
|