@surenkid/acli-hub 1.0.3 → 1.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/server/public/assets/{PreviewDialog-KhgmouUP.js → PreviewDialog-BppcTU53.js} +1 -1
- package/server/public/assets/index-CLdUq5sK.js +7 -0
- package/server/public/assets/{index-BvpTactz.css → index-CZV0DmzP.css} +1 -1
- package/server/public/index.html +2 -2
- package/server/public/assets/index-STBAhoUs.js +0 -7
package/package.json
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/core-DchA7RCO.js","assets/_commonjsHelpers-Cpj98o6Y.js","assets/mammoth.browser-C_M0wsD2.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{e as H,_ as e,a as S,u as U,r as u,p as N,o as K,b as G,c as t,d as J,f as i,t as c,g as $,h as I,i as z,n as Q,j as s,k as V,F as D,l as B,w as W,T as X,s as q,m as Y,q as Z,v as ee}from"./index-
|
|
2
|
+
import{e as H,_ as e,a as S,u as U,r as u,p as N,o as K,b as G,c as t,d as J,f as i,t as c,g as $,h as I,i as z,n as Q,j as s,k as V,F as D,l as B,w as W,T as X,s as q,m as Y,q as Z,v as ee}from"./index-CLdUq5sK.js";const te={javascript:()=>e(()=>import("./javascript-DUNaicwC.js"),[]),typescript:()=>e(()=>import("./typescript-5pldp2kO.js"),[]),xml:()=>e(()=>import("./xml-FcirFJJ2.js"),[]),css:()=>e(()=>import("./css-AVCICof-.js"),[]),scss:()=>e(()=>import("./scss-UZl0Ag-9.js"),[]),json:()=>e(()=>import("./json-DdsocbVI.js"),[]),python:()=>e(()=>import("./python-CXf-_D6G.js"),[]),bash:()=>e(()=>import("./bash-I8pq0VWm.js"),[]),yaml:()=>e(()=>import("./yaml-drsDnIKT.js"),[]),ini:()=>e(()=>import("./ini-B3BVgEsG.js"),[]),markdown:()=>e(()=>import("./markdown-fzgiUVUV.js"),[]),go:()=>e(()=>import("./go-4VmnRw3R.js"),[]),rust:()=>e(()=>import("./rust-DsMvwcVK.js"),[]),java:()=>e(()=>import("./java-DUnkFH8J.js"),[]),c:()=>e(()=>import("./c-D87IyN5J.js"),[]),cpp:()=>e(()=>import("./cpp-BFCWVspj.js"),[]),csharp:()=>e(()=>import("./csharp-D-6syieo.js"),[]),ruby:()=>e(()=>import("./ruby-CcVTKuP4.js"),[]),php:()=>e(()=>import("./php-kjAv1gW4.js"),[]),sql:()=>e(()=>import("./sql-BC88IN-V.js"),[]),swift:()=>e(()=>import("./swift-jkyvy0ac.js"),[]),kotlin:()=>e(()=>import("./kotlin-Za0-TyUR.js"),[]),lua:()=>e(()=>import("./lua-CD7o2Ci6.js"),[]),perl:()=>e(()=>import("./perl-BWtAWCfC.js"),[]),r:()=>e(()=>import("./r-DWz4c2Y4.js"),[]),dart:()=>e(()=>import("./dart-DbQNmsdu.js"),[]),dockerfile:()=>e(()=>import("./dockerfile-Co-AyC30.js"),[]),makefile:()=>e(()=>import("./makefile-BoJC05FH.js"),[]),diff:()=>e(()=>import("./diff-BLTryEFx.js"),[]),plaintext:()=>e(()=>import("./plaintext-CPM70vnn.js"),[])},se={js:"javascript",mjs:"javascript",cjs:"javascript",jsx:"javascript",ts:"typescript",tsx:"typescript",vue:"xml",svelte:"xml",html:"xml",htm:"xml",xml:"xml",svg:"xml",css:"css",scss:"scss",sass:"scss",less:"css",json:"json",jsonc:"json",py:"python",sh:"bash",zsh:"bash",bash:"bash",fish:"bash",yml:"yaml",yaml:"yaml",toml:"ini",ini:"ini",cfg:"ini",conf:"ini",md:"markdown",markdown:"markdown",go:"go",rs:"rust",java:"java",c:"c",h:"c",cpp:"cpp",cc:"cpp",hpp:"cpp",cs:"csharp",rb:"ruby",php:"php",sql:"sql",swift:"swift",kt:"kotlin",kts:"kotlin",lua:"lua",pl:"perl",r:"r",dart:"dart",diff:"diff",patch:"diff"};async function ae(r,k){if(new TextEncoder().encode(r).length>200*1024)return null;const d=k.toLowerCase(),_=d==="dockerfile"?"dockerfile":d==="makefile"?"makefile":se[H(k)];if(!_)return null;const[{default:h},{default:y}]=await Promise.all([e(()=>import("./core-DchA7RCO.js"),__vite__mapDeps([0,1])),te[_]()]);return h.getLanguage(_)||h.registerLanguage(_,y),h.highlight(r,{language:_,ignoreIllegals:!0}).value}const oe={class:"preview-layout"},re={class:"preview-header"},le={class:"preview-heading"},ie={id:"preview-title"},ne=["title"],ue=["href","download"],_e={key:0,class:"preview-message",role:"status"},ce={key:1,class:"preview-message error",role:"alert"},de={key:0,class:"preview-note"},ve={key:0,class:"preview-note"},me={class:"source"},pe=["innerHTML"],fe={key:1},he=["innerHTML"],ye=["srcdoc","title"],Ee=["src","alt"],we=["src"],ge=["src"],ke=["src","title"],be={key:8,class:"table-preview"},Te={class:"preview-note"},Le={class:"row-number"},De={key:9,class:"preview-message"},Pe={__name:"PreviewDialog",props:{entry:{type:Object,required:!0}},emits:["close"],setup(r,{emit:k}){const d=r,_=k,h=U(),y=u(null),a=u(N(d.entry.name)),P=u(!1),f=u(""),v=u(""),A=u(null),E=u(""),w=u([]),b=u(1e3),O=u(!1),g=ee(()=>z(d.entry.path)),R=new AbortController;let x;async function j(n){if(d.entry.size>n)throw new Error(`预览上限为 ${I(n)},请下载文件查看。`);const l=(await h.apiRequest(g.value,{signal:R.signal})).body.getReader(),m=[];let p=0;try{for(;;){const{done:L,value:M}=await l.read();if(L)break;if(p+=M.length,p>n)throw new Error(`预览上限为 ${I(n)},请下载文件查看。`);m.push(M)}}finally{await l.cancel().catch(()=>{})}const T=new Uint8Array(p);let C=0;for(const L of m)T.set(L,C),C+=L.length;return T}async function F(){if(["text","markdown","html","docx","table"].includes(a.value)){P.value=!0;try{if(a.value==="docx"){const n=await j(10485760),{default:o}=await e(async()=>{const{default:m}=await import("./mammoth.browser-C_M0wsD2.js").then(p=>p.m);return{default:m}},__vite__mapDeps([2,1])),l=await o.convertToHtml({arrayBuffer:n.buffer},{externalFileAccess:!1});E.value=q(l.value)}else{if(v.value=new TextDecoder().decode(await j(2*1024*1024)),v.value.includes("\0")){a.value="unsupported";return}if(a.value==="html")E.value=q(v.value);else if(a.value==="markdown")E.value=await Y(v.value);else if(a.value==="table"){const n=await Z(v.value,d.entry.name);n?w.value=n:(O.value=!0,a.value="text")}a.value==="text"&&(A.value=await ae(v.value,d.entry.name).catch(()=>null))}}catch(n){R.signal.aborted||(f.value=n.message)}finally{P.value=!1}}}return K(()=>{x=document.activeElement,y.value.showModal(),F()}),G(()=>{R.abort(),x?.focus()}),(n,o)=>(t(),J(X,{to:"body"},[i("dialog",{ref_key:"dialog",ref:y,class:"preview-dialog","aria-labelledby":"preview-title",onCancel:o[5]||(o[5]=W(l=>_("close"),["prevent"])),onClick:o[6]||(o[6]=l=>{l.target===y.value&&_("close")})},[i("div",oe,[i("header",re,[i("div",le,[i("h3",ie,c(r.entry.name),1),i("p",{title:r.entry.path},c(r.entry.path)+" · "+c($(I)(r.entry.size)),9,ne)]),i("a",{class:"btn",href:$(z)(r.entry.path,!0),download:r.entry.name},"下载",8,ue),i("button",{class:"close","aria-label":"关闭预览",autofocus:"",onClick:o[0]||(o[0]=l=>_("close"))},"×")]),i("main",{class:Q(["preview-body",{"frame-body":["html","docx","pdf"].includes(a.value)}])},[P.value?(t(),s("p",_e,"加载预览…")):f.value?(t(),s("p",ce,c(f.value),1)):(t(),s(D,{key:2},[O.value?(t(),s("p",de,"表格解析失败,已显示原始文本。")):V("",!0),a.value==="text"?(t(),s(D,{key:1},[r.entry.size>200*1024?(t(),s("p",ve,"文件超过 200 KiB,已使用纯文本预览。")):V("",!0),i("pre",me,[A.value!==null?(t(),s("code",{key:0,class:"hljs",innerHTML:A.value},null,8,pe)):(t(),s("code",fe,c(v.value),1))])],64)):a.value==="markdown"?(t(),s("article",{key:2,class:"markdown-body",innerHTML:E.value},null,8,he)):a.value==="html"||a.value==="docx"?(t(),s("iframe",{key:3,srcdoc:E.value,sandbox:"allow-scripts",referrerpolicy:"no-referrer",title:r.entry.name,class:"document-frame"},null,8,ye)):a.value==="image"?(t(),s("img",{key:4,src:g.value,alt:r.entry.name,class:"image-preview",onError:o[1]||(o[1]=l=>f.value="浏览器无法显示这张图片,请下载查看。")},null,40,Ee)):a.value==="audio"?(t(),s("audio",{key:5,src:g.value,controls:"",class:"media-preview",onError:o[2]||(o[2]=l=>f.value="浏览器不支持此音频格式,请下载查看。")},null,40,we)):a.value==="video"?(t(),s("video",{key:6,src:g.value,controls:"",playsinline:"",class:"media-preview",onError:o[3]||(o[3]=l=>f.value="浏览器不支持此视频格式,请下载查看。")},null,40,ge)):a.value==="pdf"?(t(),s("iframe",{key:7,src:g.value,title:r.entry.name,class:"document-frame"},null,8,ke)):a.value==="table"?(t(),s("div",be,[i("p",Te,"已显示 "+c(Math.min(b.value,w.value.length))+" / "+c(w.value.length)+" 行",1),i("table",null,[i("tbody",null,[(t(!0),s(D,null,B(w.value.slice(0,b.value),(l,m)=>(t(),s("tr",{key:m},[i("td",Le,c(m+1),1),(t(!0),s(D,null,B(l,(p,T)=>(t(),s("td",{key:T},c(p),1))),128))]))),128))])]),b.value<w.value.length?(t(),s("button",{key:0,class:"btn btn-primary show-more",onClick:o[4]||(o[4]=l=>b.value+=1e3)},"显示更多(1000 行)")):V("",!0)])):(t(),s("p",De,"此文件类型暂不支持预览,请下载查看。"))],64))],2)])],544)]))}},Re=S(Pe,[["__scopeId","data-v-c613172c"]]);export{Re as default};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/papaparse.min-DBcLlWLv.js","assets/_commonjsHelpers-Cpj98o6Y.js","assets/PreviewDialog-BppcTU53.js","assets/PreviewDialog-mYkQ2B4R.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))s(o);new MutationObserver(o=>{for(const r of o)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(o){const r={};return o.integrity&&(r.integrity=o.integrity),o.referrerPolicy&&(r.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?r.credentials="include":o.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function s(o){if(o.ep)return;o.ep=!0;const r=n(o);fetch(o.href,r)}})();function js(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const fe={},Ut=[],nt=()=>{},nr=()=>!1,Gn=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Hs=e=>e.startsWith("onUpdate:"),xe=Object.assign,Ks=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Ei=Object.prototype.hasOwnProperty,ce=(e,t)=>Ei.call(e,t),G=Array.isArray,Bt=e=>yn(e)==="[object Map]",Jn=e=>yn(e)==="[object Set]",co=e=>yn(e)==="[object Date]",Q=e=>typeof e=="function",be=e=>typeof e=="string",ot=e=>typeof e=="symbol",de=e=>e!==null&&typeof e=="object",sr=e=>(de(e)||Q(e))&&Q(e.then)&&Q(e.catch),or=Object.prototype.toString,yn=e=>or.call(e),Ti=e=>yn(e).slice(8,-1),rr=e=>yn(e)==="[object Object]",Xn=e=>be(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,sn=js(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),zn=e=>{const t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},$i=/-\w/g,Ke=zn(e=>e.replace($i,t=>t.slice(1).toUpperCase())),ki=/\B([A-Z])/g,Et=zn(e=>e.replace(ki,"-$1").toLowerCase()),Zn=zn(e=>e.charAt(0).toUpperCase()+e.slice(1)),fs=zn(e=>e?`on${Zn(e)}`:""),Ct=(e,t)=>!Object.is(e,t),On=(e,...t)=>{for(let n=0;n<e.length;n++)e[n](...t)},ir=(e,t,n,s=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},Qn=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Ai=e=>{const t=be(e)?Number(e):NaN;return isNaN(t)?e:t};let uo;const es=()=>uo||(uo=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function bn(e){if(G(e)){const t={};for(let n=0;n<e.length;n++){const s=e[n],o=be(s)?Ii(s):bn(s);if(o)for(const r in o)t[r]=o[r]}return t}else if(be(e)||de(e))return e}const Pi=/;(?![^(]*\))/g,Mi=/:([^]+)/,Oi=/\/\*[^]*?\*\//g;function Ii(e){const t={};return e.replace(Oi,"").split(Pi).forEach(n=>{if(n){const s=n.split(Mi);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function rt(e){let t="";if(be(e))t=e;else if(G(e))for(let n=0;n<e.length;n++){const s=rt(e[n]);s&&(t+=s+" ")}else if(de(e))for(const n in e)e[n]&&(t+=n+" ");return t.trim()}const Ri="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",Di=js(Ri);function lr(e){return!!e||e===""}function Li(e,t){if(e.length!==t.length)return!1;let n=!0;for(let s=0;n&&s<e.length;s++)n=ts(e[s],t[s]);return n}function ts(e,t){if(e===t)return!0;let n=co(e),s=co(t);if(n||s)return n&&s?e.getTime()===t.getTime():!1;if(n=ot(e),s=ot(t),n||s)return e===t;if(n=G(e),s=G(t),n||s)return n&&s?Li(e,t):!1;if(n=de(e),s=de(t),n||s){if(!n||!s)return!1;const o=Object.keys(e).length,r=Object.keys(t).length;if(o!==r)return!1;for(const i in e){const l=e.hasOwnProperty(i),a=t.hasOwnProperty(i);if(l&&!a||!l&&a||!ts(e[i],t[i]))return!1}}return String(e)===String(t)}function Fi(e,t){return e.findIndex(n=>ts(n,t))}const ar=e=>!!(e&&e.__v_isRef===!0),re=e=>be(e)?e:e==null?"":G(e)||de(e)&&(e.toString===or||!Q(e.toString))?ar(e)?re(e.value):JSON.stringify(e,cr,2):String(e),cr=(e,t)=>ar(t)?cr(e,t.value):Bt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,o],r)=>(n[ds(s,r)+" =>"]=o,n),{})}:Jn(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>ds(n))}:ot(t)?ds(t):de(t)&&!G(t)&&!rr(t)?String(t):t,ds=(e,t="")=>{var n;return ot(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};let Se;class ur{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=Se,!t&&Se&&(this.index=(Se.scopes||(Se.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[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)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[t].resume();for(t=0,n=this.effects.length;t<n;t++)this.effects[t].resume()}}run(t){if(this._active){const n=Se;try{return Se=this,t()}finally{Se=n}}}on(){++this._on===1&&(this.prevScope=Se,Se=this)}off(){this._on>0&&--this._on===0&&(Se=this.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){for(n=0,s=this.scopes.length;n<s;n++)this.scopes[n].stop(!0);this.scopes.length=0}if(!this.detached&&this.parent&&!t){const o=this.parent.scopes.pop();o&&o!==this&&(this.parent.scopes[this.index]=o,o.index=this.index)}this.parent=void 0}}}function fr(e){return new ur(e)}function dr(){return Se}function Ni(e,t=!1){Se&&Se.cleanups.push(e)}let he;const ps=new WeakSet;class pr{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,Se&&Se.active&&Se.effects.push(this)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,ps.has(this)&&(ps.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||mr(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,fo(this),gr(this);const t=he,n=Be;he=this,Be=!0;try{return this.fn()}finally{vr(this),he=t,Be=n,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)Bs(t);this.deps=this.depsTail=void 0,fo(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?ps.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){Cs(this)&&this.run()}get dirty(){return Cs(this)}}let hr=0,on,rn;function mr(e,t=!1){if(e.flags|=8,t){e.next=rn,rn=e;return}e.next=on,on=e}function Vs(){hr++}function Us(){if(--hr>0)return;if(rn){let t=rn;for(rn=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;on;){let t=on;for(on=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 gr(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function vr(e){let t,n=e.depsTail,s=n;for(;s;){const o=s.prevDep;s.version===-1?(s===n&&(n=o),Bs(s),ji(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=o}e.deps=t,e.depsTail=n}function Cs(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(yr(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function yr(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===pn)||(e.globalVersion=pn,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Cs(e))))return;e.flags|=2;const t=e.dep,n=he,s=Be;he=e,Be=!0;try{gr(e);const o=e.fn(e._value);(t.version===0||Ct(o,e._value))&&(e.flags|=128,e._value=o,t.version++)}catch(o){throw t.version++,o}finally{he=n,Be=s,vr(e),e.flags&=-3}}function Bs(e,t=!1){const{dep:n,prevSub:s,nextSub:o}=e;if(s&&(s.nextSub=o,e.prevSub=void 0),o&&(o.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)Bs(r,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function ji(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Be=!0;const br=[];function ft(){br.push(Be),Be=!1}function dt(){const e=br.pop();Be=e===void 0?!0:e}function fo(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=he;he=void 0;try{t()}finally{he=n}}}let pn=0;class Hi{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 Ws{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(!he||!Be||he===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==he)n=this.activeLink=new Hi(he,this),he.deps?(n.prevDep=he.depsTail,he.depsTail.nextDep=n,he.depsTail=n):he.deps=he.depsTail=n,_r(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=he.depsTail,n.nextDep=void 0,he.depsTail.nextDep=n,he.depsTail=n,he.deps===n&&(he.deps=s)}return n}trigger(t){this.version++,pn++,this.notify(t)}notify(t){Vs();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Us()}}}function _r(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)_r(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const Ln=new WeakMap,Rt=Symbol(""),Ss=Symbol(""),hn=Symbol("");function Ee(e,t,n){if(Be&&he){let s=Ln.get(e);s||Ln.set(e,s=new Map);let o=s.get(n);o||(s.set(n,o=new Ws),o.map=s,o.key=n),o.track()}}function at(e,t,n,s,o,r){const i=Ln.get(e);if(!i){pn++;return}const l=a=>{a&&a.trigger()};if(Vs(),t==="clear")i.forEach(l);else{const a=G(e),u=a&&Xn(n);if(a&&n==="length"){const c=Number(s);i.forEach((f,h)=>{(h==="length"||h===hn||!ot(h)&&h>=c)&&l(f)})}else switch((n!==void 0||i.has(void 0))&&l(i.get(n)),u&&l(i.get(hn)),t){case"add":a?u&&l(i.get("length")):(l(i.get(Rt)),Bt(e)&&l(i.get(Ss)));break;case"delete":a||(l(i.get(Rt)),Bt(e)&&l(i.get(Ss)));break;case"set":Bt(e)&&l(i.get(Rt));break}}Us()}function Ki(e,t){const n=Ln.get(e);return n&&n.get(t)}function jt(e){const t=le(e);return t===e?t:(Ee(t,"iterate",hn),Le(e)?t:t.map(qe))}function ns(e){return Ee(e=le(e),"iterate",hn),e}function _t(e,t){return pt(e)?Yt(ut(e)?qe(t):t):qe(t)}const Vi={__proto__:null,[Symbol.iterator](){return hs(this,Symbol.iterator,e=>_t(this,e))},concat(...e){return jt(this).concat(...e.map(t=>G(t)?jt(t):t))},entries(){return hs(this,"entries",e=>(e[1]=_t(this,e[1]),e))},every(e,t){return it(this,"every",e,t,void 0,arguments)},filter(e,t){return it(this,"filter",e,t,n=>n.map(s=>_t(this,s)),arguments)},find(e,t){return it(this,"find",e,t,n=>_t(this,n),arguments)},findIndex(e,t){return it(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return it(this,"findLast",e,t,n=>_t(this,n),arguments)},findLastIndex(e,t){return it(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return it(this,"forEach",e,t,void 0,arguments)},includes(...e){return ms(this,"includes",e)},indexOf(...e){return ms(this,"indexOf",e)},join(e){return jt(this).join(e)},lastIndexOf(...e){return ms(this,"lastIndexOf",e)},map(e,t){return it(this,"map",e,t,void 0,arguments)},pop(){return Zt(this,"pop")},push(...e){return Zt(this,"push",e)},reduce(e,...t){return po(this,"reduce",e,t)},reduceRight(e,...t){return po(this,"reduceRight",e,t)},shift(){return Zt(this,"shift")},some(e,t){return it(this,"some",e,t,void 0,arguments)},splice(...e){return Zt(this,"splice",e)},toReversed(){return jt(this).toReversed()},toSorted(e){return jt(this).toSorted(e)},toSpliced(...e){return jt(this).toSpliced(...e)},unshift(...e){return Zt(this,"unshift",e)},values(){return hs(this,"values",e=>_t(this,e))}};function hs(e,t,n){const s=ns(e),o=s[t]();return s!==e&&!Le(e)&&(o._next=o.next,o.next=()=>{const r=o._next();return r.done||(r.value=n(r.value)),r}),o}const Ui=Array.prototype;function it(e,t,n,s,o,r){const i=ns(e),l=i!==e&&!Le(e),a=i[t];if(a!==Ui[t]){const f=a.apply(e,r);return l?qe(f):f}let u=n;i!==e&&(l?u=function(f,h){return n.call(this,_t(e,f),h,e)}:n.length>2&&(u=function(f,h){return n.call(this,f,h,e)}));const c=a.call(i,u,s);return l&&o?o(c):c}function po(e,t,n,s){const o=ns(e);let r=n;return o!==e&&(Le(e)?n.length>3&&(r=function(i,l,a){return n.call(this,i,l,a,e)}):r=function(i,l,a){return n.call(this,i,_t(e,l),a,e)}),o[t](r,...s)}function ms(e,t,n){const s=le(e);Ee(s,"iterate",hn);const o=s[t](...n);return(o===-1||o===!1)&&os(n[0])?(n[0]=le(n[0]),s[t](...n)):o}function Zt(e,t,n=[]){ft(),Vs();const s=le(e)[t].apply(e,n);return Us(),dt(),s}const Bi=js("__proto__,__v_isRef,__isVue"),wr=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(ot));function Wi(e){ot(e)||(e=String(e));const t=le(this);return Ee(t,"has",e),t.hasOwnProperty(e)}class xr{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){if(n==="__v_skip")return t.__v_skip;const o=this._isReadonly,r=this._isShallow;if(n==="__v_isReactive")return!o;if(n==="__v_isReadonly")return o;if(n==="__v_isShallow")return r;if(n==="__v_raw")return s===(o?r?tl:Tr:r?Er:Sr).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const i=G(t);if(!o){let a;if(i&&(a=Vi[n]))return a;if(n==="hasOwnProperty")return Wi}const l=Reflect.get(t,n,ye(t)?t:s);if((ot(n)?wr.has(n):Bi(n))||(o||Ee(t,"get",n),r))return l;if(ye(l)){const a=i&&Xn(n)?l:l.value;return o&&de(a)?Ts(a):a}return de(l)?o?Ts(l):ss(l):l}}class Cr extends xr{constructor(t=!1){super(!1,t)}set(t,n,s,o){let r=t[n];const i=G(t)&&Xn(n);if(!this._isShallow){const u=pt(r);if(!Le(s)&&!pt(s)&&(r=le(r),s=le(s)),!i&&ye(r)&&!ye(s))return u||(r.value=s),!0}const l=i?Number(n)<t.length:ce(t,n),a=Reflect.set(t,n,s,ye(t)?t:o);return t===le(o)&&(l?Ct(s,r)&&at(t,"set",n,s):at(t,"add",n,s)),a}deleteProperty(t,n){const s=ce(t,n);t[n];const o=Reflect.deleteProperty(t,n);return o&&s&&at(t,"delete",n,void 0),o}has(t,n){const s=Reflect.has(t,n);return(!ot(n)||!wr.has(n))&&Ee(t,"has",n),s}ownKeys(t){return Ee(t,"iterate",G(t)?"length":Rt),Reflect.ownKeys(t)}}class qi extends xr{constructor(t=!1){super(!0,t)}set(t,n){return!0}deleteProperty(t,n){return!0}}const Yi=new Cr,Gi=new qi,Ji=new Cr(!0);const Es=e=>e,Tn=e=>Reflect.getPrototypeOf(e);function Xi(e,t,n){return function(...s){const o=this.__v_raw,r=le(o),i=Bt(r),l=e==="entries"||e===Symbol.iterator&&i,a=e==="keys"&&i,u=o[e](...s),c=n?Es:t?Yt:qe;return!t&&Ee(r,"iterate",a?Ss:Rt),xe(Object.create(u),{next(){const{value:f,done:h}=u.next();return h?{value:f,done:h}:{value:l?[c(f[0]),c(f[1])]:c(f),done:h}}})}}function $n(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function zi(e,t){const n={get(o){const r=this.__v_raw,i=le(r),l=le(o);e||(Ct(o,l)&&Ee(i,"get",o),Ee(i,"get",l));const{has:a}=Tn(i),u=t?Es:e?Yt:qe;if(a.call(i,o))return u(r.get(o));if(a.call(i,l))return u(r.get(l));r!==i&&r.get(o)},get size(){const o=this.__v_raw;return!e&&Ee(le(o),"iterate",Rt),o.size},has(o){const r=this.__v_raw,i=le(r),l=le(o);return e||(Ct(o,l)&&Ee(i,"has",o),Ee(i,"has",l)),o===l?r.has(o):r.has(o)||r.has(l)},forEach(o,r){const i=this,l=i.__v_raw,a=le(l),u=t?Es:e?Yt:qe;return!e&&Ee(a,"iterate",Rt),l.forEach((c,f)=>o.call(r,u(c),u(f),i))}};return xe(n,e?{add:$n("add"),set:$n("set"),delete:$n("delete"),clear:$n("clear")}:{add(o){!t&&!Le(o)&&!pt(o)&&(o=le(o));const r=le(this);return Tn(r).has.call(r,o)||(r.add(o),at(r,"add",o,o)),this},set(o,r){!t&&!Le(r)&&!pt(r)&&(r=le(r));const i=le(this),{has:l,get:a}=Tn(i);let u=l.call(i,o);u||(o=le(o),u=l.call(i,o));const c=a.call(i,o);return i.set(o,r),u?Ct(r,c)&&at(i,"set",o,r):at(i,"add",o,r),this},delete(o){const r=le(this),{has:i,get:l}=Tn(r);let a=i.call(r,o);a||(o=le(o),a=i.call(r,o)),l&&l.call(r,o);const u=r.delete(o);return a&&at(r,"delete",o,void 0),u},clear(){const o=le(this),r=o.size!==0,i=o.clear();return r&&at(o,"clear",void 0,void 0),i}}),["keys","values","entries",Symbol.iterator].forEach(o=>{n[o]=Xi(o,e,t)}),n}function qs(e,t){const n=zi(e,t);return(s,o,r)=>o==="__v_isReactive"?!e:o==="__v_isReadonly"?e:o==="__v_raw"?s:Reflect.get(ce(n,o)&&o in s?n:s,o,r)}const Zi={get:qs(!1,!1)},Qi={get:qs(!1,!0)},el={get:qs(!0,!1)};const Sr=new WeakMap,Er=new WeakMap,Tr=new WeakMap,tl=new WeakMap;function nl(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function sl(e){return e.__v_skip||!Object.isExtensible(e)?0:nl(Ti(e))}function ss(e){return pt(e)?e:Ys(e,!1,Yi,Zi,Sr)}function ol(e){return Ys(e,!1,Ji,Qi,Er)}function Ts(e){return Ys(e,!0,Gi,el,Tr)}function Ys(e,t,n,s,o){if(!de(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const r=sl(e);if(r===0)return e;const i=o.get(e);if(i)return i;const l=new Proxy(e,r===2?s:n);return o.set(e,l),l}function ut(e){return pt(e)?ut(e.__v_raw):!!(e&&e.__v_isReactive)}function pt(e){return!!(e&&e.__v_isReadonly)}function Le(e){return!!(e&&e.__v_isShallow)}function os(e){return e?!!e.__v_raw:!1}function le(e){const t=e&&e.__v_raw;return t?le(t):e}function Gs(e){return!ce(e,"__v_skip")&&Object.isExtensible(e)&&ir(e,"__v_skip",!0),e}const qe=e=>de(e)?ss(e):e,Yt=e=>de(e)?Ts(e):e;function ye(e){return e?e.__v_isRef===!0:!1}function U(e){return $r(e,!1)}function rl(e){return $r(e,!0)}function $r(e,t){return ye(e)?e:new il(e,t)}class il{constructor(t,n){this.dep=new Ws,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||Le(t)||pt(t);t=s?t:le(t),Ct(t,n)&&(this._rawValue=t,this._value=s?t:qe(t),this.dep.trigger())}}function ge(e){return ye(e)?e.value:e}const ll={get:(e,t,n)=>t==="__v_raw"?e:ge(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const o=e[t];return ye(o)&&!ye(n)?(o.value=n,!0):Reflect.set(e,t,n,s)}};function kr(e){return ut(e)?e:new Proxy(e,ll)}function al(e){const t=G(e)?new Array(e.length):{};for(const n in e)t[n]=ul(e,n);return t}class cl{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,this.__v_isRef=!0,this._value=void 0,this._raw=le(t);let o=!0,r=t;if(!G(t)||!Xn(String(n)))do o=!os(r)||Le(r);while(o&&(r=r.__v_raw));this._shallow=o}get value(){let t=this._object[this._key];return this._shallow&&(t=ge(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&ye(this._raw[this._key])){const n=this._object[this._key];if(ye(n)){n.value=t;return}}this._object[this._key]=t}get dep(){return Ki(this._raw,this._key)}}function ul(e,t,n){return new cl(e,t,n)}class fl{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new Ws(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=pn-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&he!==this)return mr(this,!0),!0}get value(){const t=this.dep.track();return yr(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function dl(e,t,n=!1){let s,o;return Q(e)?s=e:(s=e.get,o=e.set),new fl(s,o,n)}const kn={},Fn=new WeakMap;let Mt;function pl(e,t=!1,n=Mt){if(n){let s=Fn.get(n);s||Fn.set(n,s=[]),s.push(e)}}function hl(e,t,n=fe){const{immediate:s,deep:o,once:r,scheduler:i,augmentJob:l,call:a}=n,u=O=>o?O:Le(O)||o===!1||o===0?ct(O,1):ct(O);let c,f,h,v,C=!1,g=!1;if(ye(e)?(f=()=>e.value,C=Le(e)):ut(e)?(f=()=>u(e),C=!0):G(e)?(g=!0,C=e.some(O=>ut(O)||Le(O)),f=()=>e.map(O=>{if(ye(O))return O.value;if(ut(O))return u(O);if(Q(O))return a?a(O,2):O()})):Q(e)?t?f=a?()=>a(e,2):e:f=()=>{if(h){ft();try{h()}finally{dt()}}const O=Mt;Mt=c;try{return a?a(e,3,[v]):e(v)}finally{Mt=O}}:f=nt,t&&o){const O=f,H=o===!0?1/0:o;f=()=>ct(O(),H)}const S=dr(),m=()=>{c.stop(),S&&S.active&&Ks(S.effects,c)};if(r&&t){const O=t;t=(...H)=>{O(...H),m()}}let w=g?new Array(e.length).fill(kn):kn;const k=O=>{if(!(!(c.flags&1)||!c.dirty&&!O))if(t){const H=c.run();if(o||C||(g?H.some((ne,oe)=>Ct(ne,w[oe])):Ct(H,w))){h&&h();const ne=Mt;Mt=c;try{const oe=[H,w===kn?void 0:g&&w[0]===kn?[]:w,v];w=H,a?a(t,3,oe):t(...oe)}finally{Mt=ne}}}else c.run()};return l&&l(k),c=new pr(f),c.scheduler=i?()=>i(k,!1):k,v=O=>pl(O,!1,c),h=c.onStop=()=>{const O=Fn.get(c);if(O){if(a)a(O,4);else for(const H of O)H();Fn.delete(c)}},t?s?k(!0):w=c.run():i?i(k.bind(null,!0),!0):c.run(),m.pause=c.pause.bind(c),m.resume=c.resume.bind(c),m.stop=m,m}function ct(e,t=1/0,n){if(t<=0||!de(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,ye(e))ct(e.value,t,n);else if(G(e))for(let s=0;s<e.length;s++)ct(e[s],t,n);else if(Jn(e)||Bt(e))e.forEach(s=>{ct(s,t,n)});else if(rr(e)){for(const s in e)ct(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&ct(e[s],t,n)}return e}function _n(e,t,n,s){try{return s?e(...s):e()}catch(o){wn(o,t,n)}}function Ye(e,t,n,s){if(Q(e)){const o=_n(e,t,n,s);return o&&sr(o)&&o.catch(r=>{wn(r,t,n)}),o}if(G(e)){const o=[];for(let r=0;r<e.length;r++)o.push(Ye(e[r],t,n,s));return o}}function wn(e,t,n,s=!0){const o=t?t.vnode:null,{errorHandler:r,throwUnhandledErrorInProduction:i}=t&&t.appContext.config||fe;if(t){let l=t.parent;const a=t.proxy,u=`https://vuejs.org/error-reference/#runtime-${n}`;for(;l;){const c=l.ec;if(c){for(let f=0;f<c.length;f++)if(c[f](e,a,u)===!1)return}l=l.parent}if(r){ft(),_n(r,null,10,[e,a,u]),dt();return}}ml(e,n,o,s,i)}function ml(e,t,n,s=!0,o=!1){if(o)throw e;console.error(e)}const Ae=[];let et=-1;const Wt=[];let wt=null,Kt=0;const Ar=Promise.resolve();let Nn=null;function Ft(e){const t=Nn||Ar;return e?t.then(this?e.bind(this):e):t}function gl(e){let t=et+1,n=Ae.length;for(;t<n;){const s=t+n>>>1,o=Ae[s],r=mn(o);r<e||r===e&&o.flags&2?t=s+1:n=s}return t}function Js(e){if(!(e.flags&1)){const t=mn(e),n=Ae[Ae.length-1];!n||!(e.flags&2)&&t>=mn(n)?Ae.push(e):Ae.splice(gl(t),0,e),e.flags|=1,Pr()}}function Pr(){Nn||(Nn=Ar.then(Or))}function vl(e){G(e)?Wt.push(...e):wt&&e.id===-1?wt.splice(Kt+1,0,e):e.flags&1||(Wt.push(e),e.flags|=1),Pr()}function ho(e,t,n=et+1){for(;n<Ae.length;n++){const s=Ae[n];if(s&&s.flags&2){if(e&&s.id!==e.uid)continue;Ae.splice(n,1),n--,s.flags&4&&(s.flags&=-2),s(),s.flags&4||(s.flags&=-2)}}}function Mr(e){if(Wt.length){const t=[...new Set(Wt)].sort((n,s)=>mn(n)-mn(s));if(Wt.length=0,wt){wt.push(...t);return}for(wt=t,Kt=0;Kt<wt.length;Kt++){const n=wt[Kt];n.flags&4&&(n.flags&=-2),n.flags&8||n(),n.flags&=-2}wt=null,Kt=0}}const mn=e=>e.id==null?e.flags&2?-1:1/0:e.id;function Or(e){try{for(et=0;et<Ae.length;et++){const t=Ae[et];t&&!(t.flags&8)&&(t.flags&4&&(t.flags&=-2),_n(t,t.i,t.i?15:14),t.flags&4||(t.flags&=-2))}}finally{for(;et<Ae.length;et++){const t=Ae[et];t&&(t.flags&=-2)}et=-1,Ae.length=0,Mr(),Nn=null,(Ae.length||Wt.length)&&Or()}}let Re=null,Ir=null;function jn(e){const t=Re;return Re=e,Ir=e&&e.type.__scopeId||null,t}function Rr(e,t=Re,n){if(!t||e._n)return e;const s=(...o)=>{s._d&&Ao(-1);const r=jn(t);let i;try{i=e(...o)}finally{jn(r),s._d&&Ao(1)}return i};return s._n=!0,s._c=!0,s._d=!0,s}function Ue(e,t){if(Re===null)return e;const n=as(Re),s=e.dirs||(e.dirs=[]);for(let o=0;o<t.length;o++){let[r,i,l,a=fe]=t[o];r&&(Q(r)&&(r={mounted:r,updated:r}),r.deep&&ct(i),s.push({dir:r,instance:n,value:i,oldValue:void 0,arg:l,modifiers:a}))}return e}function kt(e,t,n,s){const o=e.dirs,r=t&&t.dirs;for(let i=0;i<o.length;i++){const l=o[i];r&&(l.oldValue=r[i].value);let a=l.dir[s];a&&(ft(),Ye(a,n,8,[e.el,l,e,t]),dt())}}function Dr(e,t){if(Ce){let n=Ce.provides;const s=Ce.parent&&Ce.parent.provides;s===n&&(n=Ce.provides=Object.create(s)),n[e]=t}}function St(e,t,n=!1){const s=no();if(s||Dt){let o=Dt?Dt._context.provides:s?s.parent==null||s.ce?s.vnode.appContext&&s.vnode.appContext.provides:s.parent.provides:void 0;if(o&&e in o)return o[e];if(arguments.length>1)return n&&Q(t)?t.call(s&&s.proxy):t}}function yl(){return!!(no()||Dt)}const bl=Symbol.for("v-scx"),_l=()=>St(bl);function st(e,t,n){return Lr(e,t,n)}function Lr(e,t,n=fe){const{immediate:s,deep:o,flush:r,once:i}=n,l=xe({},n),a=t&&s||!t&&r!=="post";let u;if(Gt){if(r==="sync"){const v=_l();u=v.__watcherHandles||(v.__watcherHandles=[])}else if(!a){const v=()=>{};return v.stop=nt,v.resume=nt,v.pause=nt,v}}const c=Ce;l.call=(v,C,g)=>Ye(v,c,C,g);let f=!1;r==="post"?l.scheduler=v=>{ke(v,c&&c.suspense)}:r!=="sync"&&(f=!0,l.scheduler=(v,C)=>{C?v():Js(v)}),l.augmentJob=v=>{t&&(v.flags|=4),f&&(v.flags|=2,c&&(v.id=c.uid,v.i=c))};const h=hl(e,t,l);return Gt&&(u?u.push(h):a&&h()),h}function wl(e,t,n){const s=this.proxy,o=be(e)?e.includes(".")?Fr(s,e):()=>s[e]:e.bind(s,s);let r;Q(t)?r=t:(r=t.handler,n=t);const i=Cn(this),l=Lr(o,r.bind(s),n);return i(),l}function Fr(e,t){const n=t.split(".");return()=>{let s=e;for(let o=0;o<n.length&&s;o++)s=s[n[o]];return s}}const Nr=Symbol("_vte"),xl=e=>e.__isTeleport,ln=e=>e&&(e.disabled||e.disabled===""),mo=e=>e&&(e.defer||e.defer===""),go=e=>typeof SVGElement<"u"&&e instanceof SVGElement,vo=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,$s=(e,t)=>{const n=e&&e.to;return be(n)?t?t(n):null:n},jr={name:"Teleport",__isTeleport:!0,process(e,t,n,s,o,r,i,l,a,u){const{mc:c,pc:f,pbc:h,o:{insert:v,querySelector:C,createText:g,createComment:S}}=u,m=ln(t.props);let{shapeFlag:w,children:k,dynamicChildren:O}=t;if(e==null){const H=t.el=g(""),ne=t.anchor=g("");v(H,n,s),v(ne,n,s);const oe=(P,V)=>{w&16&&c(k,P,V,o,r,i,l,a)},W=()=>{const P=t.target=$s(t.props,C),V=Kr(P,t,g,v);P&&(i!=="svg"&&go(P)?i="svg":i!=="mathml"&&vo(P)&&(i="mathml"),o&&o.isCE&&(o.ce._teleportTargets||(o.ce._teleportTargets=new Set)).add(P),m||(oe(P,V),In(t,!1)))};m&&(oe(n,ne),In(t,!0)),mo(t.props)?(t.el.__isMounted=!1,ke(()=>{W(),delete t.el.__isMounted},r)):W()}else{if(mo(t.props)&&e.el.__isMounted===!1){ke(()=>{jr.process(e,t,n,s,o,r,i,l,a,u)},r);return}t.el=e.el,t.targetStart=e.targetStart;const H=t.anchor=e.anchor,ne=t.target=e.target,oe=t.targetAnchor=e.targetAnchor,W=ln(e.props),P=W?n:ne,V=W?H:oe;if(i==="svg"||go(ne)?i="svg":(i==="mathml"||vo(ne))&&(i="mathml"),O?(h(e.dynamicChildren,O,P,o,r,i,l),eo(e,t,!0)):a||f(e,t,P,V,o,r,i,l,!1),m)W?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):An(t,n,H,u,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const se=t.target=$s(t.props,C);se&&An(t,se,null,u,0)}else W&&An(t,ne,oe,u,1);In(t,m)}},remove(e,t,n,{um:s,o:{remove:o}},r){const{shapeFlag:i,children:l,anchor:a,targetStart:u,targetAnchor:c,target:f,props:h}=e;if(f&&(o(u),o(c)),r&&o(a),i&16){const v=r||!ln(h);for(let C=0;C<l.length;C++){const g=l[C];s(g,t,n,v,!!g.dynamicChildren)}}},move:An,hydrate:Cl};function An(e,t,n,{o:{insert:s},m:o},r=2){r===0&&s(e.targetAnchor,t,n);const{el:i,anchor:l,shapeFlag:a,children:u,props:c}=e,f=r===2;if(f&&s(i,t,n),(!f||ln(c))&&a&16)for(let h=0;h<u.length;h++)o(u[h],t,n,2);f&&s(l,t,n)}function Cl(e,t,n,s,o,r,{o:{nextSibling:i,parentNode:l,querySelector:a,insert:u,createText:c}},f){function h(g,S,m,w){S.anchor=f(i(g),S,l(g),n,s,o,r),S.targetStart=m,S.targetAnchor=w}const v=t.target=$s(t.props,a),C=ln(t.props);if(v){const g=v._lpa||v.firstChild;if(t.shapeFlag&16)if(C)h(e,t,g,g&&i(g));else{t.anchor=i(e);let S=g;for(;S;){if(S&&S.nodeType===8){if(S.data==="teleport start anchor")t.targetStart=S;else if(S.data==="teleport anchor"){t.targetAnchor=S,v._lpa=t.targetAnchor&&i(t.targetAnchor);break}}S=i(S)}t.targetAnchor||Kr(v,t,c,u),f(g&&i(g),t,v,n,s,o,r)}In(t,C)}else C&&t.shapeFlag&16&&h(e,t,e,i(e));return t.anchor&&i(t.anchor)}const Hr=jr;function In(e,t){const n=e.ctx;if(n&&n.ut){let s,o;for(t?(s=e.el,o=e.anchor):(s=e.targetStart,o=e.targetAnchor);s&&s!==o;)s.nodeType===1&&s.setAttribute("data-v-owner",n.uid),s=s.nextSibling;n.ut()}}function Kr(e,t,n,s){const o=t.targetStart=n(""),r=t.targetAnchor=n("");return o[Nr]=r,e&&(s(o,e),s(r,e)),r}const Ot=Symbol("_leaveCb"),Pn=Symbol("_enterCb");function Sl(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return Tt(()=>{e.isMounted=!0}),Nt(()=>{e.isUnmounting=!0}),e}const Ne=[Function,Array],El={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Ne,onEnter:Ne,onAfterEnter:Ne,onEnterCancelled:Ne,onBeforeLeave:Ne,onLeave:Ne,onAfterLeave:Ne,onLeaveCancelled:Ne,onBeforeAppear:Ne,onAppear:Ne,onAfterAppear:Ne,onAppearCancelled:Ne};function Tl(e,t){const{leavingVNodes:n}=e;let s=n.get(t.type);return s||(s=Object.create(null),n.set(t.type,s)),s}function ks(e,t,n,s,o){const{appear:r,mode:i,persisted:l=!1,onBeforeEnter:a,onEnter:u,onAfterEnter:c,onEnterCancelled:f,onBeforeLeave:h,onLeave:v,onAfterLeave:C,onLeaveCancelled:g,onBeforeAppear:S,onAppear:m,onAfterAppear:w,onAppearCancelled:k}=t,O=String(e.key),H=Tl(n,e),ne=(P,V)=>{P&&Ye(P,s,9,V)},oe=(P,V)=>{const se=V[1];ne(P,V),G(P)?P.every(_=>_.length<=1)&&se():P.length<=1&&se()},W={mode:i,persisted:l,beforeEnter(P){let V=a;if(!n.isMounted)if(r)V=S||a;else return;P[Ot]&&P[Ot](!0);const se=H[O];se&&Vt(e,se)&&se.el[Ot]&&se.el[Ot](),ne(V,[P])},enter(P){let V=u,se=c,_=f;if(!n.isMounted)if(r)V=m||u,se=w||c,_=k||f;else return;let F=!1;const B=P[Pn]=Z=>{F||(F=!0,Z?ne(_,[P]):ne(se,[P]),W.delayedLeave&&W.delayedLeave(),P[Pn]=void 0)};V?oe(V,[P,B]):B()},leave(P,V){const se=String(e.key);if(P[Pn]&&P[Pn](!0),n.isUnmounting)return V();ne(h,[P]);let _=!1;const F=P[Ot]=B=>{_||(_=!0,V(),B?ne(g,[P]):ne(C,[P]),P[Ot]=void 0,H[se]===e&&delete H[se])};H[se]=e,v?oe(v,[P,F]):F()},clone(P){return ks(P,t,n,s)}};return W}function gn(e,t){e.shapeFlag&6&&e.component?(e.transition=t,gn(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Vr(e,t=!1,n){let s=[],o=0;for(let r=0;r<e.length;r++){let i=e[r];const l=n==null?i.key:String(n)+String(i.key!=null?i.key:r);i.type===ve?(i.patchFlag&128&&o++,s=s.concat(Vr(i.children,t,l))):(t||i.type!==ht)&&s.push(l!=null?Lt(i,{key:l}):i)}if(o>1)for(let r=0;r<s.length;r++)s[r].patchFlag=-2;return s}function $l(e,t){return Q(e)?xe({name:e.name},t,{setup:e}):e}function Xs(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}const Hn=new WeakMap;function an(e,t,n,s,o=!1){if(G(e)){e.forEach((C,g)=>an(C,t&&(G(t)?t[g]:t),n,s,o));return}if(cn(s)&&!o){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&an(e,t,n,s.component.subTree);return}const r=s.shapeFlag&4?as(s.component):s.el,i=o?null:r,{i:l,r:a}=e,u=t&&t.r,c=l.refs===fe?l.refs={}:l.refs,f=l.setupState,h=le(f),v=f===fe?nr:C=>ce(h,C);if(u!=null&&u!==a){if(yo(t),be(u))c[u]=null,v(u)&&(f[u]=null);else if(ye(u)){u.value=null;const C=t;C.k&&(c[C.k]=null)}}if(Q(a))_n(a,l,12,[i,c]);else{const C=be(a),g=ye(a);if(C||g){const S=()=>{if(e.f){const m=C?v(a)?f[a]:c[a]:a.value;if(o)G(m)&&Ks(m,r);else if(G(m))m.includes(r)||m.push(r);else if(C)c[a]=[r],v(a)&&(f[a]=c[a]);else{const w=[r];a.value=w,e.k&&(c[e.k]=w)}}else C?(c[a]=i,v(a)&&(f[a]=i)):g&&(a.value=i,e.k&&(c[e.k]=i))};if(i){const m=()=>{S(),Hn.delete(e)};m.id=-1,Hn.set(e,m),ke(m,n)}else yo(e),S()}}}function yo(e){const t=Hn.get(e);t&&(t.flags|=8,Hn.delete(e))}const bo=e=>e.nodeType===8;es().requestIdleCallback;es().cancelIdleCallback;function kl(e,t){if(bo(e)&&e.data==="["){let n=1,s=e.nextSibling;for(;s;){if(s.nodeType===1){if(t(s)===!1)break}else if(bo(s))if(s.data==="]"){if(--n===0)break}else s.data==="["&&n++;s=s.nextSibling}}else t(e)}const cn=e=>!!e.type.__asyncLoader;function Al(e){Q(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:s,delay:o=200,hydrate:r,timeout:i,suspensible:l=!0,onError:a}=e;let u=null,c,f=0;const h=()=>(f++,u=null,v()),v=()=>{let C;return u||(C=u=t().catch(g=>{if(g=g instanceof Error?g:new Error(String(g)),a)return new Promise((S,m)=>{a(g,()=>S(h()),()=>m(g),f+1)});throw g}).then(g=>C!==u&&u?u:(g&&(g.__esModule||g[Symbol.toStringTag]==="Module")&&(g=g.default),c=g,g)))};return $l({name:"AsyncComponentWrapper",__asyncLoader:v,__asyncHydrate(C,g,S){let m=!1;(g.bu||(g.bu=[])).push(()=>m=!0);const w=()=>{m||S()},k=r?()=>{const O=r(w,H=>kl(C,H));O&&(g.bum||(g.bum=[])).push(O)}:w;c?k():v().then(()=>!g.isUnmounted&&k())},get __asyncResolved(){return c},setup(){const C=Ce;if(Xs(C),c)return()=>Mn(c,C);const g=k=>{u=null,wn(k,C,13,!s)};if(l&&C.suspense||Gt)return v().then(k=>()=>Mn(k,C)).catch(k=>(g(k),()=>s?_e(s,{error:k}):null));const S=U(!1),m=U(),w=U(!!o);return o&&setTimeout(()=>{w.value=!1},o),i!=null&&setTimeout(()=>{if(!S.value&&!m.value){const k=new Error(`Async component timed out after ${i}ms.`);g(k),m.value=k}},i),v().then(()=>{S.value=!0,C.parent&&zs(C.parent.vnode)&&C.parent.update()}).catch(k=>{g(k),m.value=k}),()=>{if(S.value&&c)return Mn(c,C);if(m.value&&s)return _e(s,{error:m.value});if(n&&!w.value)return Mn(n,C)}}})}function Mn(e,t){const{ref:n,props:s,children:o,ce:r}=t.vnode,i=_e(e,s,o);return i.ref=n,i.ce=r,delete t.vnode.ce,i}const zs=e=>e.type.__isKeepAlive;function Pl(e,t){Ur(e,"a",t)}function Ml(e,t){Ur(e,"da",t)}function Ur(e,t,n=Ce){const s=e.__wdc||(e.__wdc=()=>{let o=n;for(;o;){if(o.isDeactivated)return;o=o.parent}return e()});if(rs(t,s,n),n){let o=n.parent;for(;o&&o.parent;)zs(o.parent.vnode)&&Ol(s,t,n,o),o=o.parent}}function Ol(e,t,n,s){const o=rs(t,e,s,!0);Wr(()=>{Ks(s[t],o)},n)}function rs(e,t,n=Ce,s=!1){if(n){const o=n[e]||(n[e]=[]),r=t.__weh||(t.__weh=(...i)=>{ft();const l=Cn(n),a=Ye(t,n,e,i);return l(),dt(),a});return s?o.unshift(r):o.push(r),r}}const mt=e=>(t,n=Ce)=>{(!Gt||e==="sp")&&rs(e,(...s)=>t(...s),n)},Il=mt("bm"),Tt=mt("m"),Rl=mt("bu"),Br=mt("u"),Nt=mt("bum"),Wr=mt("um"),Dl=mt("sp"),Ll=mt("rtg"),Fl=mt("rtc");function Nl(e,t=Ce){rs("ec",e,t)}const jl="components";function Hl(e,t){return Vl(jl,e,!0,t)||e}const Kl=Symbol.for("v-ndc");function Vl(e,t,n=!0,s=!1){const o=Re||Ce;if(o){const r=o.type;{const l=Ta(r,!1);if(l&&(l===t||l===Ke(t)||l===Zn(Ke(t))))return r}const i=_o(o[e]||r[e],t)||_o(o.appContext[e],t);return!i&&s?r:i}}function _o(e,t){return e&&(e[t]||e[Ke(t)]||e[Zn(Ke(t))])}function xn(e,t,n,s){let o;const r=n,i=G(e);if(i||be(e)){const l=i&&ut(e);let a=!1,u=!1;l&&(a=!Le(e),u=pt(e),e=ns(e)),o=new Array(e.length);for(let c=0,f=e.length;c<f;c++)o[c]=t(a?u?Yt(qe(e[c])):qe(e[c]):e[c],c,void 0,r)}else if(typeof e=="number"){o=new Array(e);for(let l=0;l<e;l++)o[l]=t(l+1,l,void 0,r)}else if(de(e))if(e[Symbol.iterator])o=Array.from(e,(l,a)=>t(l,a,void 0,r));else{const l=Object.keys(e);o=new Array(l.length);for(let a=0,u=l.length;a<u;a++){const c=l[a];o[a]=t(e[c],c,a,r)}}else o=[];return o}const As=e=>e?ui(e)?as(e):As(e.parent):null,un=xe(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=>As(e.parent),$root:e=>As(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Yr(e),$forceUpdate:e=>e.f||(e.f=()=>{Js(e.update)}),$nextTick:e=>e.n||(e.n=Ft.bind(e.proxy)),$watch:e=>wl.bind(e)}),gs=(e,t)=>e!==fe&&!e.__isScriptSetup&&ce(e,t),Ul={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:o,props:r,accessCache:i,type:l,appContext:a}=e;if(t[0]!=="$"){const h=i[t];if(h!==void 0)switch(h){case 1:return s[t];case 2:return o[t];case 4:return n[t];case 3:return r[t]}else{if(gs(s,t))return i[t]=1,s[t];if(o!==fe&&ce(o,t))return i[t]=2,o[t];if(ce(r,t))return i[t]=3,r[t];if(n!==fe&&ce(n,t))return i[t]=4,n[t];Ps&&(i[t]=0)}}const u=un[t];let c,f;if(u)return t==="$attrs"&&Ee(e.attrs,"get",""),u(e);if((c=l.__cssModules)&&(c=c[t]))return c;if(n!==fe&&ce(n,t))return i[t]=4,n[t];if(f=a.config.globalProperties,ce(f,t))return f[t]},set({_:e},t,n){const{data:s,setupState:o,ctx:r}=e;return gs(o,t)?(o[t]=n,!0):s!==fe&&ce(s,t)?(s[t]=n,!0):ce(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:o,props:r,type:i}},l){let a;return!!(n[l]||e!==fe&&l[0]!=="$"&&ce(e,l)||gs(t,l)||ce(r,l)||ce(s,l)||ce(un,l)||ce(o.config.globalProperties,l)||(a=i.__cssModules)&&a[l])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:ce(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function wo(e){return G(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Ps=!0;function Bl(e){const t=Yr(e),n=e.proxy,s=e.ctx;Ps=!1,t.beforeCreate&&xo(t.beforeCreate,e,"bc");const{data:o,computed:r,methods:i,watch:l,provide:a,inject:u,created:c,beforeMount:f,mounted:h,beforeUpdate:v,updated:C,activated:g,deactivated:S,beforeDestroy:m,beforeUnmount:w,destroyed:k,unmounted:O,render:H,renderTracked:ne,renderTriggered:oe,errorCaptured:W,serverPrefetch:P,expose:V,inheritAttrs:se,components:_,directives:F,filters:B}=t;if(u&&Wl(u,s,null),i)for(const X in i){const A=i[X];Q(A)&&(s[X]=A.bind(n))}if(o){const X=o.call(n,n);de(X)&&(e.data=ss(X))}if(Ps=!0,r)for(const X in r){const A=r[X],L=Q(A)?A.bind(n,n):Q(A.get)?A.get.bind(n,n):nt,te=!Q(A)&&Q(A.set)?A.set.bind(n):nt,me=We({get:L,set:te});Object.defineProperty(s,X,{enumerable:!0,configurable:!0,get:()=>me.value,set:Fe=>me.value=Fe})}if(l)for(const X in l)qr(l[X],s,n,X);if(a){const X=Q(a)?a.call(n):a;Reflect.ownKeys(X).forEach(A=>{Dr(A,X[A])})}c&&xo(c,e,"c");function ee(X,A){G(A)?A.forEach(L=>X(L.bind(n))):A&&X(A.bind(n))}if(ee(Il,f),ee(Tt,h),ee(Rl,v),ee(Br,C),ee(Pl,g),ee(Ml,S),ee(Nl,W),ee(Fl,ne),ee(Ll,oe),ee(Nt,w),ee(Wr,O),ee(Dl,P),G(V))if(V.length){const X=e.exposed||(e.exposed={});V.forEach(A=>{Object.defineProperty(X,A,{get:()=>n[A],set:L=>n[A]=L,enumerable:!0})})}else e.exposed||(e.exposed={});H&&e.render===nt&&(e.render=H),se!=null&&(e.inheritAttrs=se),_&&(e.components=_),F&&(e.directives=F),P&&Xs(e)}function Wl(e,t,n=nt){G(e)&&(e=Ms(e));for(const s in e){const o=e[s];let r;de(o)?"default"in o?r=St(o.from||s,o.default,!0):r=St(o.from||s):r=St(o),ye(r)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>r.value,set:i=>r.value=i}):t[s]=r}}function xo(e,t,n){Ye(G(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function qr(e,t,n,s){let o=s.includes(".")?Fr(n,s):()=>n[s];if(be(e)){const r=t[e];Q(r)&&st(o,r)}else if(Q(e))st(o,e.bind(n));else if(de(e))if(G(e))e.forEach(r=>qr(r,t,n,s));else{const r=Q(e.handler)?e.handler.bind(n):t[e.handler];Q(r)&&st(o,r,e)}}function Yr(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:o,optionsCache:r,config:{optionMergeStrategies:i}}=e.appContext,l=r.get(t);let a;return l?a=l:!o.length&&!n&&!s?a=t:(a={},o.length&&o.forEach(u=>Kn(a,u,i,!0)),Kn(a,t,i)),de(t)&&r.set(t,a),a}function Kn(e,t,n,s=!1){const{mixins:o,extends:r}=t;r&&Kn(e,r,n,!0),o&&o.forEach(i=>Kn(e,i,n,!0));for(const i in t)if(!(s&&i==="expose")){const l=ql[i]||n&&n[i];e[i]=l?l(e[i],t[i]):t[i]}return e}const ql={data:Co,props:So,emits:So,methods:tn,computed:tn,beforeCreate:$e,created:$e,beforeMount:$e,mounted:$e,beforeUpdate:$e,updated:$e,beforeDestroy:$e,beforeUnmount:$e,destroyed:$e,unmounted:$e,activated:$e,deactivated:$e,errorCaptured:$e,serverPrefetch:$e,components:tn,directives:tn,watch:Gl,provide:Co,inject:Yl};function Co(e,t){return t?e?function(){return xe(Q(e)?e.call(this,this):e,Q(t)?t.call(this,this):t)}:t:e}function Yl(e,t){return tn(Ms(e),Ms(t))}function Ms(e){if(G(e)){const t={};for(let n=0;n<e.length;n++)t[e[n]]=e[n];return t}return e}function $e(e,t){return e?[...new Set([].concat(e,t))]:t}function tn(e,t){return e?xe(Object.create(null),e,t):t}function So(e,t){return e?G(e)&&G(t)?[...new Set([...e,...t])]:xe(Object.create(null),wo(e),wo(t??{})):t}function Gl(e,t){if(!e)return t;if(!t)return e;const n=xe(Object.create(null),e);for(const s in t)n[s]=$e(e[s],t[s]);return n}function Gr(){return{app:null,config:{isNativeTag:nr,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 Jl=0;function Xl(e,t){return function(s,o=null){Q(s)||(s=xe({},s)),o!=null&&!de(o)&&(o=null);const r=Gr(),i=new WeakSet,l=[];let a=!1;const u=r.app={_uid:Jl++,_component:s,_props:o,_container:null,_context:r,_instance:null,version:ka,get config(){return r.config},set config(c){},use(c,...f){return i.has(c)||(c&&Q(c.install)?(i.add(c),c.install(u,...f)):Q(c)&&(i.add(c),c(u,...f))),u},mixin(c){return r.mixins.includes(c)||r.mixins.push(c),u},component(c,f){return f?(r.components[c]=f,u):r.components[c]},directive(c,f){return f?(r.directives[c]=f,u):r.directives[c]},mount(c,f,h){if(!a){const v=u._ceVNode||_e(s,o);return v.appContext=r,h===!0?h="svg":h===!1&&(h=void 0),e(v,c,h),a=!0,u._container=c,c.__vue_app__=u,as(v.component)}},onUnmount(c){l.push(c)},unmount(){a&&(Ye(l,u._instance,16),e(null,u._container),delete u._container.__vue_app__)},provide(c,f){return r.provides[c]=f,u},runWithContext(c){const f=Dt;Dt=u;try{return c()}finally{Dt=f}}};return u}}let Dt=null;const zl=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Ke(t)}Modifiers`]||e[`${Et(t)}Modifiers`];function Zl(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||fe;let o=n;const r=t.startsWith("update:"),i=r&&zl(s,t.slice(7));i&&(i.trim&&(o=n.map(c=>be(c)?c.trim():c)),i.number&&(o=n.map(Qn)));let l,a=s[l=fs(t)]||s[l=fs(Ke(t))];!a&&r&&(a=s[l=fs(Et(t))]),a&&Ye(a,e,6,o);const u=s[l+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,Ye(u,e,6,o)}}const Ql=new WeakMap;function Jr(e,t,n=!1){const s=n?Ql:t.emitsCache,o=s.get(e);if(o!==void 0)return o;const r=e.emits;let i={},l=!1;if(!Q(e)){const a=u=>{const c=Jr(u,t,!0);c&&(l=!0,xe(i,c))};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}return!r&&!l?(de(e)&&s.set(e,null),null):(G(r)?r.forEach(a=>i[a]=null):xe(i,r),de(e)&&s.set(e,i),i)}function is(e,t){return!e||!Gn(t)?!1:(t=t.slice(2).replace(/Once$/,""),ce(e,t[0].toLowerCase()+t.slice(1))||ce(e,Et(t))||ce(e,t))}function Eo(e){const{type:t,vnode:n,proxy:s,withProxy:o,propsOptions:[r],slots:i,attrs:l,emit:a,render:u,renderCache:c,props:f,data:h,setupState:v,ctx:C,inheritAttrs:g}=e,S=jn(e);let m,w;try{if(n.shapeFlag&4){const O=o||s,H=O;m=tt(u.call(H,O,c,f,v,h,C)),w=l}else{const O=t;m=tt(O.length>1?O(f,{attrs:l,slots:i,emit:a}):O(f,null)),w=t.props?l:ea(l)}}catch(O){fn.length=0,wn(O,e,1),m=_e(ht)}let k=m;if(w&&g!==!1){const O=Object.keys(w),{shapeFlag:H}=k;O.length&&H&7&&(r&&O.some(Hs)&&(w=ta(w,r)),k=Lt(k,w,!1,!0))}return n.dirs&&(k=Lt(k,null,!1,!0),k.dirs=k.dirs?k.dirs.concat(n.dirs):n.dirs),n.transition&&gn(k,n.transition),m=k,jn(S),m}const ea=e=>{let t;for(const n in e)(n==="class"||n==="style"||Gn(n))&&((t||(t={}))[n]=e[n]);return t},ta=(e,t)=>{const n={};for(const s in e)(!Hs(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function na(e,t,n){const{props:s,children:o,component:r}=e,{props:i,children:l,patchFlag:a}=t,u=r.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&a>=0){if(a&1024)return!0;if(a&16)return s?To(s,i,u):!!i;if(a&8){const c=t.dynamicProps;for(let f=0;f<c.length;f++){const h=c[f];if(i[h]!==s[h]&&!is(u,h))return!0}}}else return(o||l)&&(!l||!l.$stable)?!0:s===i?!1:s?i?To(s,i,u):!0:!!i;return!1}function To(e,t,n){const s=Object.keys(t);if(s.length!==Object.keys(e).length)return!0;for(let o=0;o<s.length;o++){const r=s[o];if(t[r]!==e[r]&&!is(n,r))return!0}return!1}function sa({vnode:e,parent:t},n){for(;t;){const s=t.subTree;if(s.suspense&&s.suspense.activeBranch===e&&(s.el=e.el),s===e)(e=t.vnode).el=n,t=t.parent;else break}}const Xr={},zr=()=>Object.create(Xr),Zr=e=>Object.getPrototypeOf(e)===Xr;function oa(e,t,n,s=!1){const o={},r=zr();e.propsDefaults=Object.create(null),Qr(e,t,o,r);for(const i in e.propsOptions[0])i in o||(o[i]=void 0);n?e.props=s?o:ol(o):e.type.props?e.props=o:e.props=r,e.attrs=r}function ra(e,t,n,s){const{props:o,attrs:r,vnode:{patchFlag:i}}=e,l=le(o),[a]=e.propsOptions;let u=!1;if((s||i>0)&&!(i&16)){if(i&8){const c=e.vnode.dynamicProps;for(let f=0;f<c.length;f++){let h=c[f];if(is(e.emitsOptions,h))continue;const v=t[h];if(a)if(ce(r,h))v!==r[h]&&(r[h]=v,u=!0);else{const C=Ke(h);o[C]=Os(a,l,C,v,e,!1)}else v!==r[h]&&(r[h]=v,u=!0)}}}else{Qr(e,t,o,r)&&(u=!0);let c;for(const f in l)(!t||!ce(t,f)&&((c=Et(f))===f||!ce(t,c)))&&(a?n&&(n[f]!==void 0||n[c]!==void 0)&&(o[f]=Os(a,l,f,void 0,e,!0)):delete o[f]);if(r!==l)for(const f in r)(!t||!ce(t,f))&&(delete r[f],u=!0)}u&&at(e.attrs,"set","")}function Qr(e,t,n,s){const[o,r]=e.propsOptions;let i=!1,l;if(t)for(let a in t){if(sn(a))continue;const u=t[a];let c;o&&ce(o,c=Ke(a))?!r||!r.includes(c)?n[c]=u:(l||(l={}))[c]=u:is(e.emitsOptions,a)||(!(a in s)||u!==s[a])&&(s[a]=u,i=!0)}if(r){const a=le(n),u=l||fe;for(let c=0;c<r.length;c++){const f=r[c];n[f]=Os(o,a,f,u[f],e,!ce(u,f))}}return i}function Os(e,t,n,s,o,r){const i=e[n];if(i!=null){const l=ce(i,"default");if(l&&s===void 0){const a=i.default;if(i.type!==Function&&!i.skipFactory&&Q(a)){const{propsDefaults:u}=o;if(n in u)s=u[n];else{const c=Cn(o);s=u[n]=a.call(null,t),c()}}else s=a;o.ce&&o.ce._setProp(n,s)}i[0]&&(r&&!l?s=!1:i[1]&&(s===""||s===Et(n))&&(s=!0))}return s}const ia=new WeakMap;function ei(e,t,n=!1){const s=n?ia:t.propsCache,o=s.get(e);if(o)return o;const r=e.props,i={},l=[];let a=!1;if(!Q(e)){const c=f=>{a=!0;const[h,v]=ei(f,t,!0);xe(i,h),v&&l.push(...v)};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}if(!r&&!a)return de(e)&&s.set(e,Ut),Ut;if(G(r))for(let c=0;c<r.length;c++){const f=Ke(r[c]);$o(f)&&(i[f]=fe)}else if(r)for(const c in r){const f=Ke(c);if($o(f)){const h=r[c],v=i[f]=G(h)||Q(h)?{type:h}:xe({},h),C=v.type;let g=!1,S=!0;if(G(C))for(let m=0;m<C.length;++m){const w=C[m],k=Q(w)&&w.name;if(k==="Boolean"){g=!0;break}else k==="String"&&(S=!1)}else g=Q(C)&&C.name==="Boolean";v[0]=g,v[1]=S,(g||ce(v,"default"))&&l.push(f)}}const u=[i,l];return de(e)&&s.set(e,u),u}function $o(e){return e[0]!=="$"&&!sn(e)}const Zs=e=>e==="_"||e==="_ctx"||e==="$stable",Qs=e=>G(e)?e.map(tt):[tt(e)],la=(e,t,n)=>{if(t._n)return t;const s=Rr((...o)=>Qs(t(...o)),n);return s._c=!1,s},ti=(e,t,n)=>{const s=e._ctx;for(const o in e){if(Zs(o))continue;const r=e[o];if(Q(r))t[o]=la(o,r,s);else if(r!=null){const i=Qs(r);t[o]=()=>i}}},ni=(e,t)=>{const n=Qs(t);e.slots.default=()=>n},si=(e,t,n)=>{for(const s in t)(n||!Zs(s))&&(e[s]=t[s])},aa=(e,t,n)=>{const s=e.slots=zr();if(e.vnode.shapeFlag&32){const o=t._;o?(si(s,t,n),n&&ir(s,"_",o,!0)):ti(t,s)}else t&&ni(e,t)},ca=(e,t,n)=>{const{vnode:s,slots:o}=e;let r=!0,i=fe;if(s.shapeFlag&32){const l=t._;l?n&&l===1?r=!1:si(o,t,n):(r=!t.$stable,ti(t,o)),i=t}else t&&(ni(e,t),i={default:1});if(r)for(const l in o)!Zs(l)&&i[l]==null&&delete o[l]},ke=ha;function ua(e){return fa(e)}function fa(e,t){const n=es();n.__VUE__=!0;const{insert:s,remove:o,patchProp:r,createElement:i,createText:l,createComment:a,setText:u,setElementText:c,parentNode:f,nextSibling:h,setScopeId:v=nt,insertStaticContent:C}=e,g=(d,p,y,T=null,x=null,E=null,D=void 0,I=null,M=!!p.dynamicChildren)=>{if(d===p)return;d&&!Vt(d,p)&&(T=Y(d),Fe(d,x,E,!0),d=null),p.patchFlag===-2&&(M=!1,p.dynamicChildren=null);const{type:$,ref:J,shapeFlag:N}=p;switch($){case ls:S(d,p,y,T);break;case ht:m(d,p,y,T);break;case ys:d==null&&w(p,y,T,D);break;case ve:_(d,p,y,T,x,E,D,I,M);break;default:N&1?H(d,p,y,T,x,E,D,I,M):N&6?F(d,p,y,T,x,E,D,I,M):(N&64||N&128)&&$.process(d,p,y,T,x,E,D,I,M,Oe)}J!=null&&x?an(J,d&&d.ref,E,p||d,!p):J==null&&d&&d.ref!=null&&an(d.ref,null,E,d,!0)},S=(d,p,y,T)=>{if(d==null)s(p.el=l(p.children),y,T);else{const x=p.el=d.el;p.children!==d.children&&u(x,p.children)}},m=(d,p,y,T)=>{d==null?s(p.el=a(p.children||""),y,T):p.el=d.el},w=(d,p,y,T)=>{[d.el,d.anchor]=C(d.children,p,y,T,d.el,d.anchor)},k=({el:d,anchor:p},y,T)=>{let x;for(;d&&d!==p;)x=h(d),s(d,y,T),d=x;s(p,y,T)},O=({el:d,anchor:p})=>{let y;for(;d&&d!==p;)y=h(d),o(d),d=y;o(p)},H=(d,p,y,T,x,E,D,I,M)=>{if(p.type==="svg"?D="svg":p.type==="math"&&(D="mathml"),d==null)ne(p,y,T,x,E,D,I,M);else{const $=d.el&&d.el._isVueCE?d.el:null;try{$&&$._beginPatch(),P(d,p,x,E,D,I,M)}finally{$&&$._endPatch()}}},ne=(d,p,y,T,x,E,D,I)=>{let M,$;const{props:J,shapeFlag:N,transition:q,dirs:z}=d;if(M=d.el=i(d.type,E,J&&J.is,J),N&8?c(M,d.children):N&16&&W(d.children,M,null,T,x,vs(d,E),D,I),z&&kt(d,null,T,"created"),oe(M,d,d.scopeId,D,T),J){for(const pe in J)pe!=="value"&&!sn(pe)&&r(M,pe,null,J[pe],E,T);"value"in J&&r(M,"value",null,J.value,E),($=J.onVnodeBeforeMount)&&Ze($,T,d)}z&&kt(d,null,T,"beforeMount");const ie=da(x,q);ie&&q.beforeEnter(M),s(M,p,y),(($=J&&J.onVnodeMounted)||ie||z)&&ke(()=>{$&&Ze($,T,d),ie&&q.enter(M),z&&kt(d,null,T,"mounted")},x)},oe=(d,p,y,T,x)=>{if(y&&v(d,y),T)for(let E=0;E<T.length;E++)v(d,T[E]);if(x){let E=x.subTree;if(p===E||ii(E.type)&&(E.ssContent===p||E.ssFallback===p)){const D=x.vnode;oe(d,D,D.scopeId,D.slotScopeIds,x.parent)}}},W=(d,p,y,T,x,E,D,I,M=0)=>{for(let $=M;$<d.length;$++){const J=d[$]=I?xt(d[$]):tt(d[$]);g(null,J,p,y,T,x,E,D,I)}},P=(d,p,y,T,x,E,D)=>{const I=p.el=d.el;let{patchFlag:M,dynamicChildren:$,dirs:J}=p;M|=d.patchFlag&16;const N=d.props||fe,q=p.props||fe;let z;if(y&&At(y,!1),(z=q.onVnodeBeforeUpdate)&&Ze(z,y,p,d),J&&kt(p,d,y,"beforeUpdate"),y&&At(y,!0),(N.innerHTML&&q.innerHTML==null||N.textContent&&q.textContent==null)&&c(I,""),$?V(d.dynamicChildren,$,I,y,T,vs(p,x),E):D||A(d,p,I,null,y,T,vs(p,x),E,!1),M>0){if(M&16)se(I,N,q,y,x);else if(M&2&&N.class!==q.class&&r(I,"class",null,q.class,x),M&4&&r(I,"style",N.style,q.style,x),M&8){const ie=p.dynamicProps;for(let pe=0;pe<ie.length;pe++){const ue=ie[pe],Pe=N[ue],Me=q[ue];(Me!==Pe||ue==="value")&&r(I,ue,Pe,Me,x,y)}}M&1&&d.children!==p.children&&c(I,p.children)}else!D&&$==null&&se(I,N,q,y,x);((z=q.onVnodeUpdated)||J)&&ke(()=>{z&&Ze(z,y,p,d),J&&kt(p,d,y,"updated")},T)},V=(d,p,y,T,x,E,D)=>{for(let I=0;I<p.length;I++){const M=d[I],$=p[I],J=M.el&&(M.type===ve||!Vt(M,$)||M.shapeFlag&198)?f(M.el):y;g(M,$,J,null,T,x,E,D,!0)}},se=(d,p,y,T,x)=>{if(p!==y){if(p!==fe)for(const E in p)!sn(E)&&!(E in y)&&r(d,E,p[E],null,x,T);for(const E in y){if(sn(E))continue;const D=y[E],I=p[E];D!==I&&E!=="value"&&r(d,E,I,D,x,T)}"value"in y&&r(d,"value",p.value,y.value,x)}},_=(d,p,y,T,x,E,D,I,M)=>{const $=p.el=d?d.el:l(""),J=p.anchor=d?d.anchor:l("");let{patchFlag:N,dynamicChildren:q,slotScopeIds:z}=p;z&&(I=I?I.concat(z):z),d==null?(s($,y,T),s(J,y,T),W(p.children||[],y,J,x,E,D,I,M)):N>0&&N&64&&q&&d.dynamicChildren&&d.dynamicChildren.length===q.length?(V(d.dynamicChildren,q,y,x,E,D,I),(p.key!=null||x&&p===x.subTree)&&eo(d,p,!0)):A(d,p,y,J,x,E,D,I,M)},F=(d,p,y,T,x,E,D,I,M)=>{p.slotScopeIds=I,d==null?p.shapeFlag&512?x.ctx.activate(p,y,T,D,M):B(p,y,T,x,E,D,M):Z(d,p,M)},B=(d,p,y,T,x,E,D)=>{const I=d.component=wa(d,T,x);if(zs(d)&&(I.ctx.renderer=Oe),xa(I,!1,D),I.asyncDep){if(x&&x.registerDep(I,ee,D),!d.el){const M=I.subTree=_e(ht);m(null,M,p,y),d.placeholder=M.el}}else ee(I,d,p,y,x,E,D)},Z=(d,p,y)=>{const T=p.component=d.component;if(na(d,p,y))if(T.asyncDep&&!T.asyncResolved){X(T,p,y);return}else T.next=p,T.update();else p.el=d.el,T.vnode=p},ee=(d,p,y,T,x,E,D)=>{const I=()=>{if(d.isMounted){let{next:N,bu:q,u:z,parent:ie,vnode:pe}=d;{const Xe=oi(d);if(Xe){N&&(N.el=pe.el,X(d,N,D)),Xe.asyncDep.then(()=>{d.isUnmounted||I()});return}}let ue=N,Pe;At(d,!1),N?(N.el=pe.el,X(d,N,D)):N=pe,q&&On(q),(Pe=N.props&&N.props.onVnodeBeforeUpdate)&&Ze(Pe,ie,N,pe),At(d,!0);const Me=Eo(d),Je=d.subTree;d.subTree=Me,g(Je,Me,f(Je.el),Y(Je),d,x,E),N.el=Me.el,ue===null&&sa(d,Me.el),z&&ke(z,x),(Pe=N.props&&N.props.onVnodeUpdated)&&ke(()=>Ze(Pe,ie,N,pe),x)}else{let N;const{el:q,props:z}=p,{bm:ie,m:pe,parent:ue,root:Pe,type:Me}=d,Je=cn(p);At(d,!1),ie&&On(ie),!Je&&(N=z&&z.onVnodeBeforeMount)&&Ze(N,ue,p),At(d,!0);{Pe.ce&&Pe.ce._def.shadowRoot!==!1&&Pe.ce._injectChildStyle(Me);const Xe=d.subTree=Eo(d);g(null,Xe,y,T,d,x,E),p.el=Xe.el}if(pe&&ke(pe,x),!Je&&(N=z&&z.onVnodeMounted)){const Xe=p;ke(()=>Ze(N,ue,Xe),x)}(p.shapeFlag&256||ue&&cn(ue.vnode)&&ue.vnode.shapeFlag&256)&&d.a&&ke(d.a,x),d.isMounted=!0,p=y=T=null}};d.scope.on();const M=d.effect=new pr(I);d.scope.off();const $=d.update=M.run.bind(M),J=d.job=M.runIfDirty.bind(M);J.i=d,J.id=d.uid,M.scheduler=()=>Js(J),At(d,!0),$()},X=(d,p,y)=>{p.component=d;const T=d.vnode.props;d.vnode=p,d.next=null,ra(d,p.props,T,y),ca(d,p.children,y),ft(),ho(d),dt()},A=(d,p,y,T,x,E,D,I,M=!1)=>{const $=d&&d.children,J=d?d.shapeFlag:0,N=p.children,{patchFlag:q,shapeFlag:z}=p;if(q>0){if(q&128){te($,N,y,T,x,E,D,I,M);return}else if(q&256){L($,N,y,T,x,E,D,I,M);return}}z&8?(J&16&>($,x,E),N!==$&&c(y,N)):J&16?z&16?te($,N,y,T,x,E,D,I,M):gt($,x,E,!0):(J&8&&c(y,""),z&16&&W(N,y,T,x,E,D,I,M))},L=(d,p,y,T,x,E,D,I,M)=>{d=d||Ut,p=p||Ut;const $=d.length,J=p.length,N=Math.min($,J);let q;for(q=0;q<N;q++){const z=p[q]=M?xt(p[q]):tt(p[q]);g(d[q],z,y,null,x,E,D,I,M)}$>J?gt(d,x,E,!0,!1,N):W(p,y,T,x,E,D,I,M,N)},te=(d,p,y,T,x,E,D,I,M)=>{let $=0;const J=p.length;let N=d.length-1,q=J-1;for(;$<=N&&$<=q;){const z=d[$],ie=p[$]=M?xt(p[$]):tt(p[$]);if(Vt(z,ie))g(z,ie,y,null,x,E,D,I,M);else break;$++}for(;$<=N&&$<=q;){const z=d[N],ie=p[q]=M?xt(p[q]):tt(p[q]);if(Vt(z,ie))g(z,ie,y,null,x,E,D,I,M);else break;N--,q--}if($>N){if($<=q){const z=q+1,ie=z<J?p[z].el:T;for(;$<=q;)g(null,p[$]=M?xt(p[$]):tt(p[$]),y,ie,x,E,D,I,M),$++}}else if($>q)for(;$<=N;)Fe(d[$],x,E,!0),$++;else{const z=$,ie=$,pe=new Map;for($=ie;$<=q;$++){const Ie=p[$]=M?xt(p[$]):tt(p[$]);Ie.key!=null&&pe.set(Ie.key,$)}let ue,Pe=0;const Me=q-ie+1;let Je=!1,Xe=0;const zt=new Array(Me);for($=0;$<Me;$++)zt[$]=0;for($=z;$<=N;$++){const Ie=d[$];if(Pe>=Me){Fe(Ie,x,E,!0);continue}let ze;if(Ie.key!=null)ze=pe.get(Ie.key);else for(ue=ie;ue<=q;ue++)if(zt[ue-ie]===0&&Vt(Ie,p[ue])){ze=ue;break}ze===void 0?Fe(Ie,x,E,!0):(zt[ze-ie]=$+1,ze>=Xe?Xe=ze:Je=!0,g(Ie,p[ze],y,null,x,E,D,I,M),Pe++)}const io=Je?pa(zt):Ut;for(ue=io.length-1,$=Me-1;$>=0;$--){const Ie=ie+$,ze=p[Ie],lo=p[Ie+1],ao=Ie+1<J?lo.el||ri(lo):T;zt[$]===0?g(null,ze,y,ao,x,E,D,I,M):Je&&(ue<0||$!==io[ue]?me(ze,y,ao,2):ue--)}}},me=(d,p,y,T,x=null)=>{const{el:E,type:D,transition:I,children:M,shapeFlag:$}=d;if($&6){me(d.component.subTree,p,y,T);return}if($&128){d.suspense.move(p,y,T);return}if($&64){D.move(d,p,y,Oe);return}if(D===ve){s(E,p,y);for(let N=0;N<M.length;N++)me(M[N],p,y,T);s(d.anchor,p,y);return}if(D===ys){k(d,p,y);return}if(T!==2&&$&1&&I)if(T===0)I.beforeEnter(E),s(E,p,y),ke(()=>I.enter(E),x);else{const{leave:N,delayLeave:q,afterLeave:z}=I,ie=()=>{d.ctx.isUnmounted?o(E):s(E,p,y)},pe=()=>{E._isLeaving&&E[Ot](!0),N(E,()=>{ie(),z&&z()})};q?q(E,ie,pe):pe()}else s(E,p,y)},Fe=(d,p,y,T=!1,x=!1)=>{const{type:E,props:D,ref:I,children:M,dynamicChildren:$,shapeFlag:J,patchFlag:N,dirs:q,cacheIndex:z}=d;if(N===-2&&(x=!1),I!=null&&(ft(),an(I,null,y,d,!0),dt()),z!=null&&(p.renderCache[z]=void 0),J&256){p.ctx.deactivate(d);return}const ie=J&1&&q,pe=!cn(d);let ue;if(pe&&(ue=D&&D.onVnodeBeforeUnmount)&&Ze(ue,p,d),J&6)us(d.component,y,T);else{if(J&128){d.suspense.unmount(y,T);return}ie&&kt(d,null,p,"beforeUnmount"),J&64?d.type.remove(d,p,y,Oe,T):$&&!$.hasOnce&&(E!==ve||N>0&&N&64)?gt($,p,y,!1,!0):(E===ve&&N&384||!x&&J&16)&>(M,p,y),T&&En(d)}(pe&&(ue=D&&D.onVnodeUnmounted)||ie)&&ke(()=>{ue&&Ze(ue,p,d),ie&&kt(d,null,p,"unmounted")},y)},En=d=>{const{type:p,el:y,anchor:T,transition:x}=d;if(p===ve){Xt(y,T);return}if(p===ys){O(d);return}const E=()=>{o(y),x&&!x.persisted&&x.afterLeave&&x.afterLeave()};if(d.shapeFlag&1&&x&&!x.persisted){const{leave:D,delayLeave:I}=x,M=()=>D(y,E);I?I(d.el,E,M):M()}else E()},Xt=(d,p)=>{let y;for(;d!==p;)y=h(d),o(d),d=y;o(p)},us=(d,p,y)=>{const{bum:T,scope:x,job:E,subTree:D,um:I,m:M,a:$}=d;ko(M),ko($),T&&On(T),x.stop(),E&&(E.flags|=8,Fe(D,d,p,y)),I&&ke(I,p),ke(()=>{d.isUnmounted=!0},p)},gt=(d,p,y,T=!1,x=!1,E=0)=>{for(let D=E;D<d.length;D++)Fe(d[D],p,y,T,x)},Y=d=>{if(d.shapeFlag&6)return Y(d.component.subTree);if(d.shapeFlag&128)return d.suspense.next();const p=h(d.anchor||d.el),y=p&&p[Nr];return y?h(y):p};let j=!1;const we=(d,p,y)=>{let T;d==null?p._vnode&&(Fe(p._vnode,null,null,!0),T=p._vnode.component):g(p._vnode||null,d,p,null,null,null,y),p._vnode=d,j||(j=!0,ho(T),Mr(),j=!1)},Oe={p:g,um:Fe,m:me,r:En,mt:B,mc:W,pc:A,pbc:V,n:Y,o:e};return{render:we,hydrate:void 0,createApp:Xl(we)}}function vs({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 At({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function da(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function eo(e,t,n=!1){const s=e.children,o=t.children;if(G(s)&&G(o))for(let r=0;r<s.length;r++){const i=s[r];let l=o[r];l.shapeFlag&1&&!l.dynamicChildren&&((l.patchFlag<=0||l.patchFlag===32)&&(l=o[r]=xt(o[r]),l.el=i.el),!n&&l.patchFlag!==-2&&eo(i,l)),l.type===ls&&(l.patchFlag!==-1?l.el=i.el:l.__elIndex=r+(e.type===ve?1:0)),l.type===ht&&!l.el&&(l.el=i.el)}}function pa(e){const t=e.slice(),n=[0];let s,o,r,i,l;const a=e.length;for(s=0;s<a;s++){const u=e[s];if(u!==0){if(o=n[n.length-1],e[o]<u){t[s]=o,n.push(s);continue}for(r=0,i=n.length-1;r<i;)l=r+i>>1,e[n[l]]<u?r=l+1:i=l;u<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 oi(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:oi(t)}function ko(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}function ri(e){if(e.placeholder)return e.placeholder;const t=e.component;return t?ri(t.subTree):null}const ii=e=>e.__isSuspense;function ha(e,t){t&&t.pendingBranch?G(e)?t.effects.push(...e):t.effects.push(e):vl(e)}const ve=Symbol.for("v-fgt"),ls=Symbol.for("v-txt"),ht=Symbol.for("v-cmt"),ys=Symbol.for("v-stc"),fn=[];let De=null;function R(e=!1){fn.push(De=e?null:[])}function ma(){fn.pop(),De=fn[fn.length-1]||null}let vn=1;function Ao(e,t=!1){vn+=e,e<0&&De&&t&&(De.hasOnce=!0)}function li(e){return e.dynamicChildren=vn>0?De||Ut:null,ma(),vn>0&&De&&De.push(e),e}function K(e,t,n,s,o,r){return li(b(e,t,n,s,o,r,!0))}function je(e,t,n,s,o){return li(_e(e,t,n,s,o,!0))}function ai(e){return e?e.__v_isVNode===!0:!1}function Vt(e,t){return e.type===t.type&&e.key===t.key}const ci=({key:e})=>e??null,Rn=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?be(e)||ye(e)||Q(e)?{i:Re,r:e,k:t,f:!!n}:e:null);function b(e,t=null,n=null,s=0,o=null,r=e===ve?0:1,i=!1,l=!1){const a={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&ci(t),ref:t&&Rn(t),scopeId:Ir,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:o,dynamicChildren:null,appContext:null,ctx:Re};return l?(to(a,n),r&128&&e.normalize(a)):n&&(a.shapeFlag|=be(n)?8:16),vn>0&&!i&&De&&(a.patchFlag>0||r&6)&&a.patchFlag!==32&&De.push(a),a}const _e=ga;function ga(e,t=null,n=null,s=0,o=null,r=!1){if((!e||e===Kl)&&(e=ht),ai(e)){const l=Lt(e,t,!0);return n&&to(l,n),vn>0&&!r&&De&&(l.shapeFlag&6?De[De.indexOf(e)]=l:De.push(l)),l.patchFlag=-2,l}if($a(e)&&(e=e.__vccOpts),t){t=va(t);let{class:l,style:a}=t;l&&!be(l)&&(t.class=rt(l)),de(a)&&(os(a)&&!G(a)&&(a=xe({},a)),t.style=bn(a))}const i=be(e)?1:ii(e)?128:xl(e)?64:de(e)?4:Q(e)?2:0;return b(e,t,n,s,o,i,r,!0)}function va(e){return e?os(e)||Zr(e)?xe({},e):e:null}function Lt(e,t,n=!1,s=!1){const{props:o,ref:r,patchFlag:i,children:l,transition:a}=e,u=t?ya(o||{},t):o,c={__v_isVNode:!0,__v_skip:!0,type:e.type,props:u,key:u&&ci(u),ref:t&&t.ref?n&&r?G(r)?r.concat(Rn(t)):[r,Rn(t)]:Rn(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==ve?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:a,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Lt(e.ssContent),ssFallback:e.ssFallback&&Lt(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return a&&s&&gn(c,a.clone(c)),c}function He(e=" ",t=0){return _e(ls,null,e,t)}function ae(e="",t=!1){return t?(R(),je(ht,null,e)):_e(ht,null,e)}function tt(e){return e==null||typeof e=="boolean"?_e(ht):G(e)?_e(ve,null,e.slice()):ai(e)?xt(e):_e(ls,null,String(e))}function xt(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Lt(e)}function to(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(G(t))n=16;else if(typeof t=="object")if(s&65){const o=t.default;o&&(o._c&&(o._d=!1),to(e,o()),o._c&&(o._d=!0));return}else{n=32;const o=t._;!o&&!Zr(t)?t._ctx=Re:o===3&&Re&&(Re.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else Q(t)?(t={default:t,_ctx:Re},n=32):(t=String(t),s&64?(n=16,t=[He(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 o in s)if(o==="class")t.class!==s.class&&(t.class=rt([t.class,s.class]));else if(o==="style")t.style=bn([t.style,s.style]);else if(Gn(o)){const r=t[o],i=s[o];i&&r!==i&&!(G(r)&&r.includes(i))&&(t[o]=r?[].concat(r,i):i)}else o!==""&&(t[o]=s[o])}return t}function Ze(e,t,n,s=null){Ye(e,t,7,[n,s])}const ba=Gr();let _a=0;function wa(e,t,n){const s=e.type,o=(t?t.appContext:e.appContext)||ba,r={uid:_a++,vnode:e,type:s,parent:t,appContext:o,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new ur(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(o.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:ei(s,o),emitsOptions:Jr(s,o),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=Zl.bind(null,r),e.ce&&e.ce(r),r}let Ce=null;const no=()=>Ce||Re;let Vn,Is;{const e=es(),t=(n,s)=>{let o;return(o=e[n])||(o=e[n]=[]),o.push(s),r=>{o.length>1?o.forEach(i=>i(r)):o[0](r)}};Vn=t("__VUE_INSTANCE_SETTERS__",n=>Ce=n),Is=t("__VUE_SSR_SETTERS__",n=>Gt=n)}const Cn=e=>{const t=Ce;return Vn(e),e.scope.on(),()=>{e.scope.off(),Vn(t)}},Po=()=>{Ce&&Ce.scope.off(),Vn(null)};function ui(e){return e.vnode.shapeFlag&4}let Gt=!1;function xa(e,t=!1,n=!1){t&&Is(t);const{props:s,children:o}=e.vnode,r=ui(e);oa(e,s,r,t),aa(e,o,n||t);const i=r?Ca(e,t):void 0;return t&&Is(!1),i}function Ca(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Ul);const{setup:s}=n;if(s){ft();const o=e.setupContext=s.length>1?Ea(e):null,r=Cn(e),i=_n(s,e,0,[e.props,o]),l=sr(i);if(dt(),r(),(l||e.sp)&&!cn(e)&&Xs(e),l){if(i.then(Po,Po),t)return i.then(a=>{Mo(e,a)}).catch(a=>{wn(a,e,0)});e.asyncDep=i}else Mo(e,i)}else fi(e)}function Mo(e,t,n){Q(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:de(t)&&(e.setupState=kr(t)),fi(e)}function fi(e,t,n){const s=e.type;e.render||(e.render=s.render||nt);{const o=Cn(e);ft();try{Bl(e)}finally{dt(),o()}}}const Sa={get(e,t){return Ee(e,"get",""),e[t]}};function Ea(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Sa),slots:e.slots,emit:e.emit,expose:t}}function as(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(kr(Gs(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in un)return un[n](e)},has(t,n){return n in t||n in un}})):e.proxy}function Ta(e,t=!0){return Q(e)?e.displayName||e.name:e.name||t&&e.__name}function $a(e){return Q(e)&&"__vccOpts"in e}const We=(e,t)=>dl(e,t,Gt),ka="3.5.27";let Rs;const Oo=typeof window<"u"&&window.trustedTypes;if(Oo)try{Rs=Oo.createPolicy("vue",{createHTML:e=>e})}catch{}const di=Rs?e=>Rs.createHTML(e):e=>e,Aa="http://www.w3.org/2000/svg",Pa="http://www.w3.org/1998/Math/MathML",lt=typeof document<"u"?document:null,Io=lt&<.createElement("template"),Ma={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 o=t==="svg"?lt.createElementNS(Aa,e):t==="mathml"?lt.createElementNS(Pa,e):n?lt.createElement(e,{is:n}):lt.createElement(e);return e==="select"&&s&&s.multiple!=null&&o.setAttribute("multiple",s.multiple),o},createText:e=>lt.createTextNode(e),createComment:e=>lt.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>lt.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,o,r){const i=n?n.previousSibling:t.lastChild;if(o&&(o===r||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),!(o===r||!(o=o.nextSibling)););else{Io.innerHTML=di(s==="svg"?`<svg>${e}</svg>`:s==="mathml"?`<math>${e}</math>`:e);const l=Io.content;if(s==="svg"||s==="mathml"){const a=l.firstChild;for(;a.firstChild;)l.appendChild(a.firstChild);l.removeChild(a)}t.insertBefore(l,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},vt="transition",Qt="animation",Jt=Symbol("_vtc"),pi={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},Oa=xe({},El,pi),Pt=(e,t=[])=>{G(e)?e.forEach(n=>n(...t)):e&&e(...t)},Ro=e=>e?G(e)?e.some(t=>t.length>1):e.length>1:!1;function Ia(e){const t={};for(const _ in e)_ in pi||(t[_]=e[_]);if(e.css===!1)return t;const{name:n="v",type:s,duration:o,enterFromClass:r=`${n}-enter-from`,enterActiveClass:i=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:a=r,appearActiveClass:u=i,appearToClass:c=l,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:h=`${n}-leave-active`,leaveToClass:v=`${n}-leave-to`}=e,C=Ra(o),g=C&&C[0],S=C&&C[1],{onBeforeEnter:m,onEnter:w,onEnterCancelled:k,onLeave:O,onLeaveCancelled:H,onBeforeAppear:ne=m,onAppear:oe=w,onAppearCancelled:W=k}=t,P=(_,F,B,Z)=>{_._enterCancelled=Z,yt(_,F?c:l),yt(_,F?u:i),B&&B()},V=(_,F)=>{_._isLeaving=!1,yt(_,f),yt(_,v),yt(_,h),F&&F()},se=_=>(F,B)=>{const Z=_?oe:w,ee=()=>P(F,_,B);Pt(Z,[F,ee]),Do(()=>{yt(F,_?a:r),Qe(F,_?c:l),Ro(Z)||Lo(F,s,g,ee)})};return xe(t,{onBeforeEnter(_){Pt(m,[_]),Qe(_,r),Qe(_,i)},onBeforeAppear(_){Pt(ne,[_]),Qe(_,a),Qe(_,u)},onEnter:se(!1),onAppear:se(!0),onLeave(_,F){_._isLeaving=!0;const B=()=>V(_,F);Qe(_,f),_._enterCancelled?(Qe(_,h),Ds(_)):(Ds(_),Qe(_,h)),Do(()=>{_._isLeaving&&(yt(_,f),Qe(_,v),Ro(O)||Lo(_,s,S,B))}),Pt(O,[_,B])},onEnterCancelled(_){P(_,!1,void 0,!0),Pt(k,[_])},onAppearCancelled(_){P(_,!0,void 0,!0),Pt(W,[_])},onLeaveCancelled(_){V(_),Pt(H,[_])}})}function Ra(e){if(e==null)return null;if(de(e))return[bs(e.enter),bs(e.leave)];{const t=bs(e);return[t,t]}}function bs(e){return Ai(e)}function Qe(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[Jt]||(e[Jt]=new Set)).add(t)}function yt(e,t){t.split(/\s+/).forEach(s=>s&&e.classList.remove(s));const n=e[Jt];n&&(n.delete(t),n.size||(e[Jt]=void 0))}function Do(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let Da=0;function Lo(e,t,n,s){const o=e._endId=++Da,r=()=>{o===e._endId&&s()};if(n!=null)return setTimeout(r,n);const{type:i,timeout:l,propCount:a}=hi(e,t);if(!i)return s();const u=i+"end";let c=0;const f=()=>{e.removeEventListener(u,h),r()},h=v=>{v.target===e&&++c>=a&&f()};setTimeout(()=>{c<a&&f()},l+1),e.addEventListener(u,h)}function hi(e,t){const n=window.getComputedStyle(e),s=C=>(n[C]||"").split(", "),o=s(`${vt}Delay`),r=s(`${vt}Duration`),i=Fo(o,r),l=s(`${Qt}Delay`),a=s(`${Qt}Duration`),u=Fo(l,a);let c=null,f=0,h=0;t===vt?i>0&&(c=vt,f=i,h=r.length):t===Qt?u>0&&(c=Qt,f=u,h=a.length):(f=Math.max(i,u),c=f>0?i>u?vt:Qt:null,h=c?c===vt?r.length:a.length:0);const v=c===vt&&/\b(?:transform|all)(?:,|$)/.test(s(`${vt}Property`).toString());return{type:c,timeout:f,propCount:h,hasTransform:v}}function Fo(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max(...t.map((n,s)=>No(n)+No(e[s])))}function No(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function Ds(e){return(e?e.ownerDocument:document).body.offsetHeight}function La(e,t,n){const s=e[Jt];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Un=Symbol("_vod"),mi=Symbol("_vsh"),nn={name:"show",beforeMount(e,{value:t},{transition:n}){e[Un]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):en(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:s}){!t!=!n&&(s?t?(s.beforeEnter(e),en(e,!0),s.enter(e)):s.leave(e,()=>{en(e,!1)}):en(e,t))},beforeUnmount(e,{value:t}){en(e,t)}};function en(e,t){e.style.display=t?e[Un]:"none",e[mi]=!t}const Fa=Symbol(""),Na=/(?:^|;)\s*display\s*:/;function ja(e,t,n){const s=e.style,o=be(n);let r=!1;if(n&&!o){if(t)if(be(t))for(const i of t.split(";")){const l=i.slice(0,i.indexOf(":")).trim();n[l]==null&&Dn(s,l,"")}else for(const i in t)n[i]==null&&Dn(s,i,"");for(const i in n)i==="display"&&(r=!0),Dn(s,i,n[i])}else if(o){if(t!==n){const i=s[Fa];i&&(n+=";"+i),s.cssText=n,r=Na.test(n)}}else t&&e.removeAttribute("style");Un in e&&(e[Un]=r?s.display:"",e[mi]&&(s.display="none"))}const jo=/\s*!important$/;function Dn(e,t,n){if(G(n))n.forEach(s=>Dn(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=Ha(e,t);jo.test(n)?e.setProperty(Et(s),n.replace(jo,""),"important"):e[s]=n}}const Ho=["Webkit","Moz","ms"],_s={};function Ha(e,t){const n=_s[t];if(n)return n;let s=Ke(t);if(s!=="filter"&&s in e)return _s[t]=s;s=Zn(s);for(let o=0;o<Ho.length;o++){const r=Ho[o]+s;if(r in e)return _s[t]=r}return t}const Ko="http://www.w3.org/1999/xlink";function Vo(e,t,n,s,o,r=Di(t)){s&&t.startsWith("xlink:")?n==null?e.removeAttributeNS(Ko,t.slice(6,t.length)):e.setAttributeNS(Ko,t,n):n==null||r&&!lr(n)?e.removeAttribute(t):e.setAttribute(t,r?"":ot(n)?String(n):n)}function Uo(e,t,n,s,o){if(t==="innerHTML"||t==="textContent"){n!=null&&(e[t]=t==="innerHTML"?di(n):n);return}const r=e.tagName;if(t==="value"&&r!=="PROGRESS"&&!r.includes("-")){const l=r==="OPTION"?e.getAttribute("value")||"":e.value,a=n==null?e.type==="checkbox"?"on":"":String(n);(l!==a||!("_value"in e))&&(e.value=a),n==null&&e.removeAttribute(t),e._value=n;return}let i=!1;if(n===""||n==null){const l=typeof e[t];l==="boolean"?n=lr(n):n==null&&l==="string"?(n="",i=!0):l==="number"&&(n=0,i=!0)}try{e[t]=n}catch{}i&&e.removeAttribute(o||t)}function It(e,t,n,s){e.addEventListener(t,n,s)}function Ka(e,t,n,s){e.removeEventListener(t,n,s)}const Bo=Symbol("_vei");function Va(e,t,n,s,o=null){const r=e[Bo]||(e[Bo]={}),i=r[t];if(s&&i)i.value=s;else{const[l,a]=Ua(t);if(s){const u=r[t]=qa(s,o);It(e,l,u,a)}else i&&(Ka(e,l,i,a),r[t]=void 0)}}const Wo=/(?:Once|Passive|Capture)$/;function Ua(e){let t;if(Wo.test(e)){t={};let s;for(;s=e.match(Wo);)e=e.slice(0,e.length-s[0].length),t[s[0].toLowerCase()]=!0}return[e[2]===":"?e.slice(3):Et(e.slice(2)),t]}let ws=0;const Ba=Promise.resolve(),Wa=()=>ws||(Ba.then(()=>ws=0),ws=Date.now());function qa(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;Ye(Ya(s,n.value),t,5,[s])};return n.value=e,n.attached=Wa(),n}function Ya(e,t){if(G(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(s=>o=>!o._stopped&&s&&s(o))}else return t}const qo=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Ga=(e,t,n,s,o,r)=>{const i=o==="svg";t==="class"?La(e,s,i):t==="style"?ja(e,n,s):Gn(t)?Hs(t)||Va(e,t,n,s,r):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Ja(e,t,s,i))?(Uo(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Vo(e,t,s,i,r,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!be(s))?Uo(e,Ke(t),s,r,t):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),Vo(e,t,s,i))};function Ja(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&qo(t)&&Q(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 o=e.tagName;if(o==="IMG"||o==="VIDEO"||o==="CANVAS"||o==="SOURCE")return!1}return qo(t)&&be(n)?!1:t in e}const gi=new WeakMap,vi=new WeakMap,Bn=Symbol("_moveCb"),Yo=Symbol("_enterCb"),Xa=e=>(delete e.props.mode,e),za=Xa({name:"TransitionGroup",props:xe({},Oa,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=no(),s=Sl();let o,r;return Br(()=>{if(!o.length)return;const i=e.moveClass||`${e.name||"v"}-move`;if(!nc(o[0].el,n.vnode.el,i)){o=[];return}o.forEach(Qa),o.forEach(ec);const l=o.filter(tc);Ds(n.vnode.el),l.forEach(a=>{const u=a.el,c=u.style;Qe(u,i),c.transform=c.webkitTransform=c.transitionDuration="";const f=u[Bn]=h=>{h&&h.target!==u||(!h||h.propertyName.endsWith("transform"))&&(u.removeEventListener("transitionend",f),u[Bn]=null,yt(u,i))};u.addEventListener("transitionend",f)}),o=[]}),()=>{const i=le(e),l=Ia(i);let a=i.tag||ve;if(o=[],r)for(let u=0;u<r.length;u++){const c=r[u];c.el&&c.el instanceof Element&&(o.push(c),gn(c,ks(c,l,s,n)),gi.set(c,{left:c.el.offsetLeft,top:c.el.offsetTop}))}r=t.default?Vr(t.default()):[];for(let u=0;u<r.length;u++){const c=r[u];c.key!=null&&gn(c,ks(c,l,s,n))}return _e(a,null,r)}}}),Za=za;function Qa(e){const t=e.el;t[Bn]&&t[Bn](),t[Yo]&&t[Yo]()}function ec(e){vi.set(e,{left:e.el.offsetLeft,top:e.el.offsetTop})}function tc(e){const t=gi.get(e),n=vi.get(e),s=t.left-n.left,o=t.top-n.top;if(s||o){const r=e.el.style;return r.transform=r.webkitTransform=`translate(${s}px,${o}px)`,r.transitionDuration="0s",e}}function nc(e,t,n){const s=e.cloneNode(),o=e[Jt];o&&o.forEach(l=>{l.split(/\s+/).forEach(a=>a&&s.classList.remove(a))}),n.split(/\s+/).forEach(l=>l&&s.classList.add(l)),s.style.display="none";const r=t.nodeType===1?t:t.parentNode;r.appendChild(s);const{hasTransform:i}=hi(s);return r.removeChild(s),i}const Wn=e=>{const t=e.props["onUpdate:modelValue"]||!1;return G(t)?n=>On(t,n):t};function sc(e){e.target.composing=!0}function Go(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const qt=Symbol("_assign");function Jo(e,t,n){return t&&(e=e.trim()),n&&(e=Qn(e)),e}const Sn={created(e,{modifiers:{lazy:t,trim:n,number:s}},o){e[qt]=Wn(o);const r=s||o.props&&o.props.type==="number";It(e,t?"change":"input",i=>{i.target.composing||e[qt](Jo(e.value,n,r))}),(n||r)&&It(e,"change",()=>{e.value=Jo(e.value,n,r)}),t||(It(e,"compositionstart",sc),It(e,"compositionend",Go),It(e,"change",Go))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:o,number:r}},i){if(e[qt]=Wn(i),e.composing)return;const l=(r||e.type==="number")&&!/^0\d/.test(e.value)?Qn(e.value):e.value,a=t??"";l!==a&&(document.activeElement===e&&e.type!=="range"&&(s&&t===n||o&&e.value.trim()===a)||(e.value=a))}},oc={deep:!0,created(e,{value:t,modifiers:{number:n}},s){const o=Jn(t);It(e,"change",()=>{const r=Array.prototype.filter.call(e.options,i=>i.selected).map(i=>n?Qn(qn(i)):qn(i));e[qt](e.multiple?o?new Set(r):r:r[0]),e._assigning=!0,Ft(()=>{e._assigning=!1})}),e[qt]=Wn(s)},mounted(e,{value:t}){Xo(e,t)},beforeUpdate(e,t,n){e[qt]=Wn(n)},updated(e,{value:t}){e._assigning||Xo(e,t)}};function Xo(e,t){const n=e.multiple,s=G(t);if(!(n&&!s&&!Jn(t))){for(let o=0,r=e.options.length;o<r;o++){const i=e.options[o],l=qn(i);if(n)if(s){const a=typeof l;a==="string"||a==="number"?i.selected=t.some(u=>String(u)===String(l)):i.selected=Fi(t,l)>-1}else i.selected=t.has(l);else if(ts(qn(i),t)){e.selectedIndex!==o&&(e.selectedIndex=o);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function qn(e){return"_value"in e?e._value:e.value}const rc=["ctrl","shift","alt","meta"],ic={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)=>rc.some(n=>e[`${n}Key`]&&!t.includes(n))},Te=(e,t)=>{const n=e._withMods||(e._withMods={}),s=t.join(".");return n[s]||(n[s]=((o,...r)=>{for(let i=0;i<t.length;i++){const l=ic[t[i]];if(l&&l(o,t))return}return e(o,...r)}))},lc={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},Yn=(e,t)=>{const n=e._withKeys||(e._withKeys={}),s=t.join(".");return n[s]||(n[s]=(o=>{if(!("key"in o))return;const r=Et(o.key);if(t.some(i=>i===r||lc[i]===r))return e(o)}))},ac=xe({patchProp:Ga},Ma);let zo;function cc(){return zo||(zo=ua(ac))}const uc=((...e)=>{const t=cc().createApp(...e),{mount:n}=t;return t.mount=s=>{const o=dc(s);if(!o)return;const r=t._component;!Q(r)&&!r.render&&!r.template&&(r.template=o.innerHTML),o.nodeType===1&&(o.textContent="");const i=n(o,!1,fc(o));return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),i},t});function fc(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function dc(e){return be(e)?document.querySelector(e):e}let yi;const cs=e=>yi=e,bi=Symbol();function Ls(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var dn;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(dn||(dn={}));function pc(){const e=fr(!0),t=e.run(()=>U({}));let n=[],s=[];const o=Gs({install(r){cs(o),o._a=r,r.provide(bi,o),r.config.globalProperties.$pinia=o,s.forEach(i=>n.push(i)),s=[]},use(r){return this._a?n.push(r):s.push(r),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return o}const _i=()=>{};function Zo(e,t,n,s=_i){e.add(t);const o=()=>{e.delete(t)&&s()};return!n&&dr()&&Ni(o),o}function Ht(e,...t){e.forEach(n=>{n(...t)})}const hc=e=>e(),Qo=Symbol(),xs=Symbol();function Fs(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,s)=>e.set(s,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const s=t[n],o=e[n];Ls(o)&&Ls(s)&&e.hasOwnProperty(n)&&!ye(s)&&!ut(s)?e[n]=Fs(o,s):e[n]=s}return e}const mc=Symbol();function gc(e){return!Ls(e)||!Object.prototype.hasOwnProperty.call(e,mc)}const{assign:bt}=Object;function vc(e){return!!(ye(e)&&e.effect)}function yc(e,t,n,s){const{state:o,actions:r,getters:i}=t,l=n.state.value[e];let a;function u(){l||(n.state.value[e]=o?o():{});const c=al(n.state.value[e]);return bt(c,r,Object.keys(i||{}).reduce((f,h)=>(f[h]=Gs(We(()=>{cs(n);const v=n._s.get(e);return i[h].call(v,v)})),f),{}))}return a=wi(e,u,t,n,s,!0),a}function wi(e,t,n={},s,o,r){let i;const l=bt({actions:{}},n),a={deep:!0};let u,c,f=new Set,h=new Set,v;const C=s.state.value[e];!r&&!C&&(s.state.value[e]={});let g;function S(W){let P;u=c=!1,typeof W=="function"?(W(s.state.value[e]),P={type:dn.patchFunction,storeId:e,events:v}):(Fs(s.state.value[e],W),P={type:dn.patchObject,payload:W,storeId:e,events:v});const V=g=Symbol();Ft().then(()=>{g===V&&(u=!0)}),c=!0,Ht(f,P,s.state.value[e])}const m=r?function(){const{state:P}=n,V=P?P():{};this.$patch(se=>{bt(se,V)})}:_i;function w(){i.stop(),f.clear(),h.clear(),s._s.delete(e)}const k=(W,P="")=>{if(Qo in W)return W[xs]=P,W;const V=function(){cs(s);const se=Array.from(arguments),_=new Set,F=new Set;function B(X){_.add(X)}function Z(X){F.add(X)}Ht(h,{args:se,name:V[xs],store:H,after:B,onError:Z});let ee;try{ee=W.apply(this&&this.$id===e?this:H,se)}catch(X){throw Ht(F,X),X}return ee instanceof Promise?ee.then(X=>(Ht(_,X),X)).catch(X=>(Ht(F,X),Promise.reject(X))):(Ht(_,ee),ee)};return V[Qo]=!0,V[xs]=P,V},O={_p:s,$id:e,$onAction:Zo.bind(null,h),$patch:S,$reset:m,$subscribe(W,P={}){const V=Zo(f,W,P.detached,()=>se()),se=i.run(()=>st(()=>s.state.value[e],_=>{(P.flush==="sync"?c:u)&&W({storeId:e,type:dn.direct,events:v},_)},bt({},a,P)));return V},$dispose:w},H=ss(O);s._s.set(e,H);const oe=(s._a&&s._a.runWithContext||hc)(()=>s._e.run(()=>(i=fr()).run(()=>t({action:k}))));for(const W in oe){const P=oe[W];if(ye(P)&&!vc(P)||ut(P))r||(C&&gc(P)&&(ye(P)?P.value=C[W]:Fs(P,C[W])),s.state.value[e][W]=P);else if(typeof P=="function"){const V=k(P,W);oe[W]=V,l.actions[W]=P}}return bt(H,oe),bt(le(H),oe),Object.defineProperty(H,"$state",{get:()=>s.state.value[e],set:W=>{S(P=>{bt(P,W)})}}),s._p.forEach(W=>{bt(H,i.run(()=>W({store:H,app:s._a,pinia:s,options:l})))}),C&&r&&n.hydrate&&n.hydrate(H.$state,C),u=!0,c=!0,H}function bc(e,t,n){let s;const o=typeof t=="function";s=o?n:t;function r(i,l){const a=yl();return i=i||(a?St(bi,null):null),i&&cs(i),i=yi,i._s.has(e)||(o?wi(e,t,s,i):yc(e,s,i)),i._s.get(e)}return r.$id=e,r}const $t=bc("sessions",()=>{const e=U([]),t=We(()=>[...e.value].sort((_,F)=>{if(!_.alias)return F.alias?1:0;if(!F.alias)return-1;const B=_.alias.toLowerCase(),Z=F.alias.toLowerCase();return B<Z?-1:B>Z?1:0})),n=U([]),s=U(null),o=U(!1),r=U(!1),i=U(0);let l=null,a=null,u=1e3;async function c(_,F={}){const B=await fetch(_,F);if(B.status===401&&(r.value=!1),!B.ok){const Z=await B.json().catch(()=>({}));throw new Error(Z.error||`Request failed (${B.status})`)}return B}async function f(_,F=!1){const Z=await(await c(`/api/sessions/${encodeURIComponent(_)}/root`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({repin:F})})).json(),ee=e.value.find(X=>X.name===_);return ee&&(ee.root=Z.root),Z.root}function h(){i.value++}async function v(){try{const F=await(await fetch("/api/auth/status")).json();o.value=!!F.authRequired,r.value=!!F.authenticated}catch{r.value=!1}return r.value}async function C(_){const F=await fetch("/api/auth/login",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({password:_})});if(!F.ok){const B=await F.json().catch(()=>({}));throw new Error(B.error||"Login failed")}r.value=!0}async function g(){try{await fetch("/api/auth/logout",{method:"POST"})}catch{}r.value=!1,e.value=[],s.value=null,l&&(l.onclose=null,l.close(),l=null)}async function S(){const _=await fetch("/api/sessions");if(_.status===401){r.value=!1;return}const F=await _.json();e.value=F.sessions}async function m(){const F=await(await fetch("/api/sessions/shells")).json();n.value=F.shells}async function w(_,F){const B=await fetch("/api/sessions",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:_,shell:F})});if(!B.ok){const ee=await B.json();throw new Error(ee.error)}const Z=await B.json();s.value=Z.name,await S()}async function k(_){const F=await fetch(`/api/sessions/${_}/stop`,{method:"POST"});if(!F.ok){const B=await F.json();throw new Error(B.error)}await S()}async function O(_){const F=await fetch(`/api/sessions/${_}/restart`,{method:"POST"});if(!F.ok){const B=await F.json();throw new Error(B.error)}await S()}async function H(_,F){const B=await fetch(`/api/sessions/${_}/alias`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({alias:F})});if(!B.ok){const Z=await B.json();throw new Error(Z.error)}await S()}async function ne(_){const F=await fetch(`/api/sessions/${_}`,{method:"DELETE"});if(!F.ok){const B=await F.json();throw new Error(B.error)}s.value===_&&(s.value=null),await S()}function oe(_){s.value=_}function W(){l&&(l.onclose=null,l.close());const _=location.protocol==="https:"?"wss":"ws";l=new WebSocket(`${_}://${location.host}/ws`),l.onmessage=F=>{let B=null,Z=null;try{({event:B,data:Z}=JSON.parse(F.data))}catch{}if(B==="session:title"&&Z&&Z.name){const ee=e.value.find(X=>X.name===Z.name);if(ee){ee.title=Z.title,ee.command=Z.command;return}}if(B==="session:root"&&Z?.name){const ee=e.value.find(X=>X.name===Z.name);ee&&(ee.root=Z.root);return}S()},l.onopen=()=>{u=1e3},l.onclose=()=>{P()}}function P(){a||(a=setTimeout(()=>{a=null,W(),u=Math.min(u*2,3e4)},u))}function V(){S(),m(),W()}async function se({command:_,name:F}){return w(F||null,_||null)}return{sessions:e,sortedSessions:t,shells:n,current:s,authRequired:o,authenticated:r,fileRevision:i,apiRequest:c,pinRoot:f,refreshFiles:h,init:V,checkAuth:v,login:C,logout:g,fetchSessions:S,createSession:w,create:se,stopSession:k,restartSession:O,setAlias:H,removeSession:ne,select:oe}}),Ve=(e,t)=>{const n=e.__vccOpts||e;for(const[s,o]of t)n[s]=o;return n},_c=["title"],wc={class:"card-content"},xc={class:"card-top"},Cc=["onKeydown"],Sc={class:"session-name"},Ec={key:0,class:"alias-text"},Tc={key:1,class:"real-name"},$c={key:2},kc={key:0,class:"confirm-bar"},Ac={key:1,class:"session-info"},Pc=["title"],Mc={class:"status-text"},Oc={__name:"SessionCard",props:{session:Object,active:Boolean,collapsed:Boolean},setup(e){const t=e,n=$t(),s=St("toast"),o=U(!1),r=U(!1),i=U(""),l=U(null),a=We(()=>{const m=t.session.alias?`${t.session.alias} (${t.session.name})`:t.session.name;return t.session.pid?`${m} · PID ${t.session.pid}`:m}),u=We(()=>t.session.title||t.session.command||"");function c(m,w="info"){s?.value?.show(m,w)}function f(m,w){m.stopPropagation(),o.value=!0}async function h(m,w){m.stopPropagation();try{await n.removeSession(w)}catch(k){console.error(k)}o.value=!1}function v(m){m.stopPropagation(),o.value=!1}function C(m){m.stopPropagation(),i.value=t.session.alias||"",r.value=!0,Ft(()=>l.value?.focus())}async function g(m){if(m&&m.stopPropagation(),!!r.value){r.value=!1;try{await n.setAlias(t.session.name,i.value.trim())}catch(w){c(w.message||"Failed to set alias","error")}}}function S(m){m.stopPropagation(),r.value=!1}return(m,w)=>(R(),K("div",{class:rt(["session-card",{active:e.active,collapsed:e.collapsed}]),title:a.value},[b("div",{class:rt(["status-indicator",e.session.status])},null,2),Ue(b("div",wc,[b("div",xc,[r.value?Ue((R(),K("input",{key:0,ref_key:"aliasInput",ref:l,"onUpdate:modelValue":w[0]||(w[0]=k=>i.value=k),class:"alias-input",type:"text",maxlength:"100",placeholder:"Alias (Enter to save, Esc to cancel)",onClick:w[1]||(w[1]=Te(()=>{},["stop"])),onKeydown:[w[2]||(w[2]=Te(()=>{},["stop"])),w[3]||(w[3]=Yn(Te(k=>g(k),["prevent"]),["enter"])),Yn(Te(S,["prevent"]),["esc"])],onBlur:g},null,40,Cc)),[[Sn,i.value]]):(R(),K(ve,{key:1},[b("div",Sc,[e.session.alias?(R(),K("span",Ec,re(e.session.alias),1)):ae("",!0),e.session.alias?(R(),K("span",Tc,re(e.session.name),1)):(R(),K("span",$c,re(e.session.name),1))]),o.value?ae("",!0):(R(),K("button",{key:0,class:"close-btn",title:"Set alias",onClick:w[4]||(w[4]=k=>C(k))},[...w[8]||(w[8]=[b("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[b("path",{d:"M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"})],-1)])])),o.value?ae("",!0):(R(),K("button",{key:1,class:"close-btn",title:"Delete session",onClick:w[5]||(w[5]=k=>f(k,e.session.name))},[...w[9]||(w[9]=[b("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[b("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),b("line",{x1:"6",y1:"6",x2:"18",y2:"18"})],-1)])]))],64))]),o.value?(R(),K("div",kc,[w[10]||(w[10]=b("span",{class:"confirm-text"},"Delete?",-1)),b("button",{class:"confirm-yes",onClick:w[6]||(w[6]=k=>h(k,e.session.name))},"Yes"),b("button",{class:"confirm-no",onClick:w[7]||(w[7]=k=>v(k))},"No")])):(R(),K("div",Ac,[b("span",{class:"pane-title",title:u.value},re(u.value),9,Pc),b("span",Mc,re(e.session.status),1)]))],512),[[nn,!e.collapsed]])],10,_c))}},Ic=Ve(Oc,[["__scopeId","data-v-c39ba5d7"]]),Rc="modulepreload",Dc=function(e){return"/"+e},er={},so=function(t,n,s){let o=Promise.resolve();if(n&&n.length>0){let a=function(u){return Promise.all(u.map(c=>Promise.resolve(c).then(f=>({status:"fulfilled",value:f}),f=>({status:"rejected",reason:f}))))};document.getElementsByTagName("link");const i=document.querySelector("meta[property=csp-nonce]"),l=i?.nonce||i?.getAttribute("nonce");o=a(n.map(u=>{if(u=Dc(u),u in er)return;er[u]=!0;const c=u.endsWith(".css"),f=c?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${u}"]${f}`))return;const h=document.createElement("link");if(h.rel=c?"stylesheet":Rc,c||(h.as="script"),h.crossOrigin="",h.href=u,l&&h.setAttribute("nonce",l),document.head.appendChild(h),c)return new Promise((v,C)=>{h.addEventListener("load",v),h.addEventListener("error",()=>C(new Error(`Unable to preload CSS for ${u}`)))})}))}function r(i){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=i,window.dispatchEvent(l),!l.defaultPrevented)throw i}return o.then(i=>{for(const l of i||[])l.status==="rejected"&&r(l.reason);return t().catch(r)})};function oo(e,t){return`${e.replace(/\/$/,"")}/${t}`}function Lc(e,t=!1){return`/api/files/content?${new URLSearchParams({path:e,...t?{download:"1"}:{}})}`}function xi(e){return e.includes(".")?e.split(".").pop().toLowerCase():""}function Yf(e){const t=xi(e);return["png","jpg","jpeg","gif","webp","svg","bmp","ico","avif","heic","heif"].includes(t)?"image":["mp3","wav","ogg","m4a","aac","flac","opus"].includes(t)?"audio":["mp4","webm","mov","m4v","ogv"].includes(t)?"video":t==="pdf"?"pdf":["md","markdown"].includes(t)?"markdown":["html","htm","xhtml"].includes(t)?"html":t==="docx"?"docx":["csv","tsv"].includes(t)?"table":["zip","gz","bz2","xz","7z","rar","tar","woff","woff2","ttf","exe","dll","so","dylib","db","sqlite","sqlite3","doc","xls","xlsx","ppt","pptx","wasm","bin"].includes(t)?"unsupported":"text"}function Fc(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KiB`:`${(e/(1024*1024)).toFixed(1)} MiB`}async function Gf(e,t){const{default:n}=await so(async()=>{const{default:o}=await import("./papaparse.min-DBcLlWLv.js").then(r=>r.p);return{default:o}},__vite__mapDeps([0,1])),s=n.parse(e,{delimiter:xi(t)==="tsv"?" ":",",skipEmptyLines:"greedy"});return s.errors.length?null:s.data}async function Jf(e){const{default:t}=await so(async()=>{const{default:n}=await import("./markdown-it-CnX5h4q1.js");return{default:n}},[]);return new t({html:!1,linkify:!0}).render(e)}function Xf(e){return`<!doctype html><html><head><meta charset="utf-8"><meta http-equiv="Content-Security-Policy" content="default-src 'none'; script-src 'unsafe-inline'; style-src 'unsafe-inline'; img-src data: blob:; font-src data:; media-src data: blob:; base-uri 'none'; form-action 'none'"><meta name="referrer" content="no-referrer"><style>body{font:15px/1.6 system-ui,sans-serif;padding:20px;overflow-wrap:anywhere}img{max-width:100%}table{border-collapse:collapse}td,th{border:1px solid #ccc;padding:6px}</style></head><body>${e}</body></html>`}const Nc={role:"none"},jc=["aria-expanded","aria-label","title"],Hc={class:"chevron","aria-hidden":"true"},Kc={class:"file-icon","aria-hidden":"true"},Vc=["aria-label"],Uc={key:0,role:"group",class:"tree-children"},Bc={key:0,role:"none",class:"tree-status"},Wc={key:1,role:"none",class:"tree-status error"},qc={key:2,role:"none",class:"tree-status"},Yc={__name:"FileTreeItem",props:{entry:{type:Object,required:!0}},emits:["preview","menu","operation"],setup(e,{emit:t}){const n=e,s=t,o=$t(),r=U(!1),i=U([]),l=U(!1),a=U(""),u=U(null);let c=null;async function f(){c?.abort();const g=new AbortController;c=g,l.value=!0,a.value="";try{const m=await(await o.apiRequest(`/api/files?${new URLSearchParams({path:n.entry.path})}`,{signal:g.signal})).json();g.signal.aborted||(i.value=m.entries)}catch(S){g.signal.aborted||(a.value=S.message)}finally{g.signal.aborted||(l.value=!1)}}async function h(){n.entry.type==="directory"?(r.value=!r.value,r.value&&await f()):n.entry.type==="file"&&s("preview",n.entry)}function v(g){g.preventDefault();const S=u.value.getBoundingClientRect();s("menu",{entry:n.entry,x:g.clientX||S.left,y:g.clientY||S.bottom,trigger:u.value})}async function C(g){if(g.target!==u.value)return;const S=[...u.value.closest('[role="tree"]').querySelectorAll("[data-tree-row]")],m=S.indexOf(u.value);["ArrowDown","ArrowUp","Home","End"].includes(g.key)?(g.preventDefault(),S[g.key==="Home"?0:g.key==="End"?S.length-1:Math.max(0,Math.min(S.length-1,m+(g.key==="ArrowDown"?1:-1)))]?.focus()):g.key==="ArrowRight"&&n.entry.type==="directory"?(g.preventDefault(),r.value?(await Ft(),u.value.parentElement.querySelector('[role="group"] [data-tree-row]')?.focus()):await h()):g.key==="ArrowLeft"?(g.preventDefault(),r.value?r.value=!1:u.value.parentElement.parentElement.closest("li")?.querySelector("[data-tree-row]")?.focus()):g.key==="Enter"||g.key===" "?(g.preventDefault(),h()):g.key==="ContextMenu"||g.shiftKey&&g.key==="F10"?v(g):(g.key==="F2"||g.key==="Delete")&&(g.preventDefault(),s("operation",{kind:g.key==="F2"?"rename":"delete",entry:n.entry}))}return st(()=>o.fileRevision,()=>{r.value&&f()}),Nt(()=>c?.abort()),(g,S)=>{const m=Hl("FileTreeItem",!0);return R(),K("li",Nc,[b("div",{ref_key:"row",ref:u,class:"tree-row",role:"treeitem","data-tree-row":"",tabindex:"0","aria-expanded":e.entry.type==="directory"?r.value:void 0,"aria-label":e.entry.name,title:`${e.entry.path}
|
|
3
|
+
${ge(Fc)(e.entry.size)} · ${new Date(e.entry.mtime).toLocaleString()}${e.entry.type==="symlink"?`
|
|
4
|
+
Symbolic link — target is not followed`:""}`,onClick:h,onContextmenu:v,onKeydown:C},[b("span",Hc,re(e.entry.type==="directory"?r.value?"⌄":"›":""),1),b("span",Kc,re(e.entry.type==="directory"?"▱":e.entry.type==="symlink"?"↗":"≡"),1),b("span",{class:rt(["filename",{dotfile:e.entry.name.startsWith(".")}])},re(e.entry.name),3),b("button",{class:"more","aria-label":`${e.entry.name} 文件操作`,title:"文件操作",onClick:Te(v,["stop"]),onKeydown:S[0]||(S[0]=Te(()=>{},["stop"]))},"⋯",40,Vc)],40,jc),r.value?(R(),K("ul",Uc,[l.value?(R(),K("li",Bc,"加载中…")):a.value?(R(),K("li",Wc,[He(re(a.value)+" ",1),b("button",{onClick:f},"重试")])):i.value.length?ae("",!0):(R(),K("li",qc,"空文件夹")),(R(!0),K(ve,null,xn(i.value,w=>(R(),je(m,{key:w.path,entry:w,onPreview:S[1]||(S[1]=k=>s("preview",k)),onMenu:S[2]||(S[2]=k=>s("menu",k)),onOperation:S[3]||(S[3]=k=>s("operation",k))},null,8,["entry"]))),128))])):ae("",!0)])}}},Gc=Ve(Yc,[["__scopeId","data-v-7822209d"]]),Jc={id:"operation-title"},Xc={class:"operation-path"},zc={key:0},Zc={key:1},Qc=["disabled"],eu={key:2,class:"error",role:"alert"},tu={class:"dialog-actions"},nu=["disabled"],su=["disabled"],ou={__name:"FileOperationDialog",props:{operation:{type:Object,required:!0},trash:String,busy:Boolean,error:String},emits:["close","submit"],setup(e,{emit:t}){const n=e,s=t,o=U(null),r=U(null),i=U(n.operation.kind==="rename"?n.operation.entry.name:n.operation.entry.path),l=We(()=>({rename:"重命名",move:"移动文件",delete:n.trash==="mv-trash"?"移到废纸篓?":"永久删除?"})[n.operation.kind]);let a;return Tt(()=>{a=document.activeElement,o.value.showModal(),r.value?.select()}),Nt(()=>a?.focus()),(u,c)=>(R(),je(Hr,{to:"body"},[b("dialog",{ref_key:"dialog",ref:o,class:"file-dialog","aria-labelledby":"operation-title",onCancel:c[3]||(c[3]=Te(f=>!e.busy&&s("close"),["prevent"])),onClick:c[4]||(c[4]=f=>{f.target===o.value&&!e.busy&&s("close")})},[b("form",{onSubmit:c[2]||(c[2]=Te(f=>s("submit",i.value),["prevent"]))},[b("h3",Jc,re(l.value),1),b("p",Xc,re(e.operation.entry.path),1),e.operation.kind==="delete"?(R(),K("p",zc,re(e.trash==="mv-trash"?"文件将移到 ~/.Trash/,可从废纸篓找回。":"文件将永久删除,此操作无法撤销。"),1)):(R(),K("label",Zc,[He(re(e.operation.kind==="rename"?"新名称":"目标完整路径(含文件名)")+" ",1),Ue(b("input",{ref_key:"input",ref:r,"onUpdate:modelValue":c[0]||(c[0]=f=>i.value=f),required:"",disabled:e.busy,autocomplete:"off"},null,8,Qc),[[Sn,i.value]])])),e.error?(R(),K("p",eu,re(e.error),1)):ae("",!0),b("div",tu,[b("button",{type:"button",class:"btn",disabled:e.busy,onClick:c[1]||(c[1]=f=>s("close"))},"取消",8,nu),b("button",{class:rt(["btn",e.operation.kind==="delete"?"delete-btn":"btn-primary"]),disabled:e.busy||!i.value.trim()},re(e.busy?"处理中…":l.value),11,su)])],32)],544)]))}},ru=Ve(ou,[["__scopeId","data-v-5ceee09a"]]),iu={id:"clipboard-title"},lu={id:"clipboard-help"},au=["readonly","aria-label"],cu={class:"clipboard-actions"},uu=["disabled"],fu={__name:"ClipboardDialog",props:{mode:{type:String,required:!0},text:{type:String,default:""},shortcut:{type:String,required:!0}},emits:["close","paste"],setup(e,{emit:t}){const n=e,s=t,o=U(null),r=U(null),i=U(n.text);Tt(()=>{o.value.focus(),n.mode==="copy"&&o.value.select()});function l(a){if(a.key==="Escape")a.preventDefault(),s("close");else if(a.key==="Tab"){const u=[...r.value.querySelectorAll("textarea, button:not(:disabled)")],c=u[0],f=u[u.length-1];a.shiftKey&&document.activeElement===c?(a.preventDefault(),f.focus()):!a.shiftKey&&document.activeElement===f&&(a.preventDefault(),c.focus())}}return(a,u)=>(R(),K("div",{class:"clipboard-overlay",onClick:u[3]||(u[3]=Te(c=>s("close"),["self"])),onKeydown:l},[b("form",{ref_key:"dialog",ref:r,class:"clipboard-dialog",role:"dialog","aria-modal":"true","aria-labelledby":"clipboard-title","aria-describedby":"clipboard-help",onSubmit:u[2]||(u[2]=Te(c=>s("paste",i.value),["prevent"]))},[b("h3",iu,re(e.mode==="copy"?"Copy text":"Paste text"),1),b("p",lu,[u[4]||(u[4]=He(" Clipboard access is unavailable. ",-1)),e.mode==="copy"?(R(),K(ve,{key:0},[He("Copy the selected text with "+re(e.shortcut)+".",1)],64)):(R(),K(ve,{key:1},[He("Paste here with "+re(e.shortcut)+", then click Paste into terminal.",1)],64))]),Ue(b("textarea",{ref_key:"textarea",ref:o,"onUpdate:modelValue":u[0]||(u[0]=c=>i.value=c),readonly:e.mode==="copy","aria-label":e.mode==="copy"?"Text to copy":"Text to paste",spellcheck:"false"},null,8,au),[[Sn,i.value]]),b("div",cu,[b("button",{type:"button",class:"btn",onClick:u[1]||(u[1]=c=>s("close"))},re(e.mode==="copy"?"Done":"Cancel"),1),e.mode==="paste"?(R(),K("button",{key:0,class:"btn btn-primary",disabled:!i.value.length}," Paste into terminal ",8,uu)):ae("",!0)])],544)],32))}},Ci=Ve(fu,[["__scopeId","data-v-317cb3e2"]]);async function Ns(e,t=document,n=navigator){try{if(n.clipboard?.writeText)return await n.clipboard.writeText(e),!0}catch{}if(!t.execCommand)return!1;const s=t.activeElement,o=t.createElement("textarea");o.value=e,o.readOnly=!0,o.style.cssText="position:fixed;left:-9999px;top:0;",t.body.appendChild(o);try{return o.focus({preventScroll:!0}),o.select(),t.execCommand("copy")}catch{return!1}finally{o.remove(),s?.focus({preventScroll:!0})}}const du=10,pu=.85,tr=.05,hu=20;function mu(e,t){return Math.abs(t)>=du&&Math.abs(t)>Math.abs(e)}function gu({getRowHeight:e,emitWheel:t,requestFrame:n=s=>setTimeout(()=>s(performance.now()),16)}){let s=null,o=!1,r=0;function i(){const a=e();return a>0?a:hu}function l(a){if(Number.isFinite(a)&&(r+=a/i(),Math.abs(r)>=1)){const u=Math.trunc(r);r-=u,t(-u*i(),s?.lastX??0,s?.lastY??0)}}return{touchStart(a){if(o=!1,!a.touches||a.touches.length!==1){s=null;return}const u=a.touches[0];s={id:u.identifier,startX:u.clientX,startY:u.clientY,lastX:u.clientX,lastY:u.clientY,lastTime:a.timeStamp??Date.now(),velocity:0,active:!1}},touchMove(a){if(!s)return;const u=[...a.touches].find(v=>v.identifier===s.id);if(!u)return;const c=a.timeStamp??Date.now();if(!s.active){if(!mu(u.clientX-s.startX,u.clientY-s.startY))return;s.active=!0,s.lastX=u.clientX,s.lastY=u.clientY,s.lastTime=c}a.preventDefault();const f=u.clientY-s.lastY,h=Math.max(c-s.lastTime,1);s.velocity=.8*s.velocity+.2*(f/h),s.lastX=u.clientX,s.lastY=u.clientY,s.lastTime=c,l(f)},touchEnd(a){if(!(!s||![...a.changedTouches].some(c=>c.identifier===s.id))){if(s.active&&Math.abs(s.velocity)>tr){o=!0;let c=s.velocity,f=s.lastTime;const h=v=>{if(!o)return;const C=Math.max((v??Date.now())-f,1);if(!Number.isFinite(C)){o=!1;return}if(f=v??Date.now(),c*=Math.pow(pu,C/16),Math.abs(c)<tr){o=!1;return}l(c*C),n(h)};n(h)}s=null}},cancel(){o=!1,s=null,r=0}}}function vu({doc:e,terminal:t,isMac:n,getCopyText:s,onCopy:o,onContextMenu:r,onDismiss:i,onInput:l,onSelection:a,onTmuxCopy:u}){const c=[];function f(m,w,k={capture:!0}){e.addEventListener(m,w,k),c.push(()=>e.removeEventListener(m,w,k))}function h(m){m.preventDefault(),m.stopImmediatePropagation()}for(const m of["pointerdown","pointerup","mousedown","mouseup","auxclick"])f(m,w=>{w.button===2||n&&w.button===0&&w.ctrlKey?(w.stopImmediatePropagation(),w.shiftKey||w.preventDefault()):m==="mousedown"&&(i(),w.button===0&&l())});f("contextmenu",m=>{if(m.shiftKey){i();return}h(m),r(m)});const v=gu({getRowHeight:()=>t.element?t.element.getBoundingClientRect().height/(t.rows||1):0,emitWheel:(m,w,k)=>{const O=t.element?.querySelector(".xterm-screen")||t.element;!O||!e.defaultView||O.dispatchEvent(new e.defaultView.WheelEvent("wheel",{deltaY:m,deltaMode:0,clientX:w,clientY:k,bubbles:!0,cancelable:!0}))}}),C={capture:!0,passive:!1};f("touchstart",m=>v.touchStart(m),C),f("touchmove",m=>v.touchMove(m),C),f("touchend",m=>v.touchEnd(m),C),f("touchcancel",()=>v.cancel(),C),f("copy",m=>{const w=s();!w||!m.clipboardData||(m.clipboardData.setData("text/plain",w),h(m))}),f("paste",m=>{if(!m.clipboardData)return;const w=m.clipboardData.getData("text/plain");h(m),i(),l(),t.paste(w)}),f("keydown",m=>{const w=m.key.toLowerCase(),k=!m.altKey&&(n&&m.metaKey&&!m.ctrlKey&&w==="c"||m.ctrlKey&&m.shiftKey&&!m.metaKey&&w==="c"),O=!m.altKey&&(n&&m.metaKey&&w==="v"||m.ctrlKey&&w==="v");k?(h(m),o()):O?m.stopImmediatePropagation():(i(),["Shift","Control","Alt","Meta"].includes(m.key)||l())});const g=t.onSelectionChange(()=>a(t.getSelection()));c.push(()=>g.dispose());const S=t.parser.registerOscHandler(52,m=>{const w=m.indexOf(";");if(w<0)return!1;const k=m.slice(w+1);if(k==="?")return!1;try{const O=Uint8Array.from(atob(k),H=>H.charCodeAt(0));u(new TextDecoder().decode(O))}catch{}return!0});return c.push(()=>S.dispose()),()=>c.forEach(m=>m())}const yu={class:"file-panel","aria-label":"文件管理器"},bu={class:"file-toolbar"},_u=["title"],wu=["disabled"],xu=["disabled"],Cu=["title"],Su={key:1,class:"panel-hint",role:"status"},Eu={key:2,class:"panel-hint"},Tu={key:3,class:"panel-hint"},$u={key:4,class:"panel-hint error",role:"alert"},ku={key:5,class:"panel-hint",role:"status"},Au=["aria-label","aria-busy"],Pu={key:0,role:"none",class:"panel-hint"},Mu=["disabled"],Ou=["disabled"],Iu={__name:"FilePanel",setup(e){const t=Al(()=>so(()=>import("./PreviewDialog-BppcTU53.js"),__vite__mapDeps([2,3]))),n=$t(),s=St("toast"),o=We(()=>n.sessions.find(A=>A.name===n.current)),r=U([]),i=U(null),l=U(!1),a=U(!1),u=U(""),c=U(null),f=U(null),h=U(null),v=U(null),C=U(""),g=U(!1),S=U(!1),m=U(null);let w=null,k=0;const O=/Mac|iPhone|iPad/.test(navigator.platform)?"⌘C":"Ctrl+C";function H(A,L="info",te){s?.value?.show(A,L,te)}async function ne(){const A=o.value,L=++k;if(!A||A.root||A.status!=="running"){a.value=!1;return}a.value=!0,u.value="";try{await n.pinRoot(A.name)}catch(te){L===k&&o.value?.name===A.name&&(u.value=te.message)}finally{L===k&&(a.value=!1)}}async function oe(){w?.abort();const A=new AbortController;w=A;const L=o.value?.root;if(!L){r.value=[],i.value=null,l.value=!1;return}l.value=!0,u.value="";try{const me=await(await n.apiRequest(`/api/files?${new URLSearchParams({path:L})}`,{signal:A.signal})).json();A.signal.aborted||(r.value=me.entries,i.value=me.trash)}catch(te){A.signal.aborted||(u.value=te.message)}finally{A.signal.aborted||(l.value=!1)}}async function W(){const A=o.value;if(!(!A||A.status!=="running"))try{await n.pinRoot(A.name,!0),n.refreshFiles(),H("已将文件根目录固定到 shell 当前目录。","success")}catch(L){H(L.message,"error")}}async function P(A){f.value=A,await Ft(),!(!f.value||!h.value)&&(f.value.x=Math.max(8,Math.min(A.x,window.innerWidth-h.value.offsetWidth-8)),f.value.y=Math.max(8,Math.min(A.y,window.innerHeight-h.value.offsetHeight-8)),h.value.querySelector("button:not(:disabled)")?.focus())}function V(A=!1){A&&f.value?.trigger?.focus(),f.value=null}function se(A){if(["Escape","Tab"].includes(A.key))A.key==="Escape"&&A.preventDefault(),V(!0);else if(["ArrowDown","ArrowUp","Home","End"].includes(A.key)){A.preventDefault();const L=[...h.value.querySelectorAll("button:not(:disabled)")],te=L.indexOf(document.activeElement),me=A.key==="Home"?0:A.key==="End"?L.length-1:(te+(A.key==="ArrowDown"?1:-1)+L.length)%L.length;L[me]?.focus()}}function _(A,L=f.value?.entry){V(!0),!(!L||g.value||A==="delete"&&!i.value)&&(C.value="",v.value={kind:A,entry:L})}async function F(A){if(g.value)return;const{kind:L,entry:te}=v.value;g.value=!0,C.value="";try{if(L==="delete")await n.apiRequest(`/api/files?${new URLSearchParams({path:te.path})}`,{method:"DELETE"});else{if(L==="rename"&&(!A||A==="."||A===".."||A.includes("/")||A.includes("\0")))throw new Error("请输入不含 / 的有效文件名");const me=L==="rename"?oo(te.path.slice(0,te.path.lastIndexOf("/"))||"/",A):A;await n.apiRequest("/api/files",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({from:te.path,to:me})})}v.value=null,n.refreshFiles(),H(L==="delete"?i.value==="mv-trash"?"已移到废纸篓。":"已永久删除。":"文件已更新。","success")}catch(me){C.value=me.message}finally{g.value=!1}}function B(A=f.value?.entry){if(V(!0),!A)return;const L=document.createElement("a");L.href=Lc(A.path,!0),L.download=A.name,document.body.append(L),L.click(),L.remove()}async function Z(A=f.value?.entry){V(!0),await Ns(A.path)?H("路径已复制。","success"):m.value=A.path}async function ee(A=f.value?.entry){if(V(!0),!S.value){S.value=!0;try{const te=await(await n.apiRequest("/api/files/archive",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:A.path})})).json();n.refreshFiles(),H(`已生成:${te.path}`,"success",{action:{label:"下载",onClick:()=>B({path:te.path,name:te.path.split("/").pop()})}})}catch(L){H(L.message,"error")}finally{S.value=!1}}}function X(A){h.value?.contains(A.target)||V()}return st(()=>[o.value?.name,o.value?.status],()=>{u.value="",ne()},{immediate:!0}),st(()=>[o.value?.name,o.value?.root],()=>{r.value=[],c.value=null,V(),g.value||(v.value=null),oe()},{immediate:!0}),st(()=>n.fileRevision,oe),Tt(()=>{document.addEventListener("pointerdown",X),window.addEventListener("resize",V)}),Nt(()=>{k++,w?.abort(),document.removeEventListener("pointerdown",X),window.removeEventListener("resize",V)}),(A,L)=>(R(),K("section",yu,[b("div",bu,[b("span",{class:"project-name",title:o.value?.root||""},re(o.value?.alias||o.value?.name||"文件"),9,_u),b("button",{disabled:!o.value?.root||l.value,title:"刷新目录","aria-label":"刷新目录",onClick:L[0]||(L[0]=te=>ge(n).refreshFiles())},"↻",8,wu),b("button",{disabled:o.value?.status!=="running",title:"重新固定到 shell 当前目录","aria-label":"重新固定到 shell 当前目录",onClick:W},"📍",8,xu)]),o.value?.root?(R(),K("div",{key:0,class:"root-path",title:o.value.root},re(o.value.root),9,Cu)):ae("",!0),S.value?(R(),K("div",Su,"正在生成 ZIP…")):ae("",!0),o.value?!o.value.root&&!l.value&&!a.value&&!u.value?(R(),K("div",Tu,"启动 session 后自动确定根目录")):ae("",!0):(R(),K("div",Eu,"选择一个会话以浏览文件。")),u.value?(R(),K("div",$u,[He(re(u.value)+" ",1),b("button",{onClick:L[1]||(L[1]=te=>o.value?.root?oe():ne())},"重试")])):ae("",!0),l.value||a.value?(R(),K("div",ku,"加载中…")):ae("",!0),o.value?.root?(R(),K("ul",{key:`${o.value.name}:${o.value.root}`,class:"file-tree",role:"tree","aria-label":o.value.root,"aria-busy":l.value},[(R(!0),K(ve,null,xn(r.value,te=>(R(),je(Gc,{key:te.path,entry:te,onPreview:L[2]||(L[2]=me=>c.value=me),onMenu:P,onOperation:me=>_(me.kind,me.entry)},null,8,["entry","onOperation"]))),128)),!r.value.length&&!l.value&&!u.value?(R(),K("li",Pu,"空文件夹")):ae("",!0)],8,Au)):ae("",!0),(R(),je(Hr,{to:"body"},[f.value?(R(),K("div",{key:0,ref_key:"menuElement",ref:h,class:"file-menu",style:bn({left:`${f.value.x}px`,top:`${f.value.y}px`}),role:"menu","aria-label":"文件操作",onKeydown:se},[f.value.entry.type==="file"?(R(),K("button",{key:0,role:"menuitem",onClick:L[3]||(L[3]=te=>{c.value=f.value.entry,V(!0)})},"预览")):ae("",!0),b("button",{role:"menuitem",onClick:L[4]||(L[4]=te=>_("rename"))},[...L[13]||(L[13]=[He("重命名 ",-1),b("span",null,"F2",-1)])]),b("button",{role:"menuitem",onClick:L[5]||(L[5]=te=>_("move"))},"移动…"),f.value.entry.type==="file"?(R(),K("button",{key:1,role:"menuitem",onClick:L[6]||(L[6]=te=>B())},"下载")):ae("",!0),f.value.entry.type==="directory"?(R(),K("button",{key:2,role:"menuitem",disabled:S.value,onClick:L[7]||(L[7]=te=>ee())},"压缩为 ZIP",8,Mu)):ae("",!0),b("button",{role:"menuitem",onClick:L[8]||(L[8]=te=>Z())},"复制路径"),b("button",{class:"danger",role:"menuitem",disabled:!i.value,onClick:L[9]||(L[9]=te=>_("delete"))},re(i.value==="mv-trash"?"移到废纸篓…":"永久删除…"),9,Ou)],36)):ae("",!0)])),c.value?(R(),je(ge(t),{key:7,entry:c.value,onClose:L[10]||(L[10]=te=>c.value=null)},null,8,["entry"])):ae("",!0),v.value?(R(),je(ru,{key:v.value.entry.path+v.value.kind,operation:v.value,trash:i.value,busy:g.value,error:C.value,onClose:L[11]||(L[11]=te=>v.value=null),onSubmit:F},null,8,["operation","trash","busy","error"])):ae("",!0),m.value!==null?(R(),je(Ci,{key:9,mode:"copy",text:m.value,shortcut:ge(O),onClose:L[12]||(L[12]=te=>m.value=null)},null,8,["text","shortcut"])):ae("",!0)]))}},Ru=Ve(Iu,[["__scopeId","data-v-f365284d"]]),Du={class:"sidebar-tabs",role:"tablist","aria-label":"侧栏"},Lu=["aria-selected"],Fu=["aria-selected"],Nu={class:"sessions-panel",id:"sessions-panel",role:"tabpanel","aria-labelledby":"sessions-tab"},ju={class:"sidebar-header"},Hu={class:"sidebar-title"},Ku={class:"session-list"},Vu={key:0,class:"empty-hint"},Uu={key:0,id:"files-panel",class:"files-panel",role:"tabpanel","aria-labelledby":"files-tab"},Bu={__name:"Sidebar",props:{collapsed:Boolean,mobile:Boolean},emits:["create","expand"],setup(e,{emit:t}){const n=t,s=$t(),o=U("sessions");function r(i){o.value=i,n("expand")}return(i,l)=>(R(),K("aside",{class:rt(["sidebar",{collapsed:e.collapsed}])},[b("div",Du,[b("button",{id:"sessions-tab",role:"tab","aria-selected":o.value==="sessions","aria-controls":"sessions-panel",onClick:l[0]||(l[0]=a=>r("sessions"))},"会话",8,Lu),b("button",{id:"files-tab",role:"tab","aria-selected":o.value==="files","aria-controls":"files-panel",onClick:l[1]||(l[1]=a=>r("files"))},"文件",8,Fu)]),Ue(b("div",Nu,[b("div",ju,[Ue(b("h2",Hu,"Sessions",512),[[nn,!e.collapsed]]),b("button",{class:"icon-btn new-session-btn",onClick:l[2]||(l[2]=a=>n("create")),title:"New Session"},[l[3]||(l[3]=b("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[b("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),b("line",{x1:"5",y1:"12",x2:"19",y2:"12"})],-1)),Ue(b("span",null,"New Session",512),[[nn,!e.collapsed]])])]),b("div",Ku,[(R(!0),K(ve,null,xn(ge(s).sortedSessions,a=>(R(),je(Ic,{key:a.name,session:a,active:ge(s).current===a.name,collapsed:e.collapsed,onClick:u=>ge(s).select(a.name)},null,8,["session","active","collapsed","onClick"]))),128)),ge(s).sessions.length?ae("",!0):Ue((R(),K("div",Vu,[...l[4]||(l[4]=[b("p",null,"No active sessions",-1),b("p",{class:"sub-hint"},"Create one to get started",-1)])],512)),[[nn,!e.collapsed]])])],512),[[nn,o.value==="sessions"]]),o.value==="files"&&!e.collapsed?(R(),K("div",Uu,[_e(Ru)])):ae("",!0)],2))}},Wu=Ve(Bu,[["__scopeId","data-v-b8faf56e"]]),qu="/logo.svg",Yu=["width","height"],Gu={__name:"BrandMark",props:{size:{type:Number,default:32}},setup(e){return(t,n)=>(R(),K("img",{class:"brand-mark",src:qu,width:e.size,height:e.size,alt:"","aria-hidden":"true",draggable:"false"},null,8,Yu))}},ro=Ve(Gu,[["__scopeId","data-v-f54af403"]]);async function Ju({files:e,directory:t,signal:n,onProgress:s=()=>{},onUnauthorized:o=()=>{},createXHR:r=()=>new XMLHttpRequest}){const i={completed:[],cancelled:[],failed:[]};for(let l=0;l<e.length;l++){const a=e[l],u=oo(t,a.name);if(n.aborted){i.cancelled.push(u);continue}s({index:l+1,total:e.length,percent:0,filename:a.name});try{const c=await new Promise((f,h)=>{const v=r(),C=()=>v.abort(),g=(S,m)=>{n.removeEventListener("abort",C),S(m)};v.open("POST",`/api/files/upload?${new URLSearchParams({dir:t,filename:a.name})}`),v.setRequestHeader("Content-Type","application/octet-stream"),v.upload.onprogress=S=>{S.lengthComputable&&s({index:l+1,total:e.length,percent:Math.round(S.loaded/S.total*100),filename:a.name})},v.onload=()=>{let S={};try{S=JSON.parse(v.responseText)}catch{}v.status===401&&o(),v.status>=200&&v.status<300&&S.path?g(f,S):g(h,new Error(S.error||`Upload failed (${v.status})`))},v.onerror=()=>g(h,new Error("Network error while uploading")),v.onabort=()=>g(h,new DOMException("Upload cancelled","AbortError")),n.addEventListener("abort",C,{once:!0}),n.aborted?g(h,new DOMException("Upload cancelled","AbortError")):v.send(a)});i.completed.push(c.path)}catch(c){n.aborted||c.name==="AbortError"?i.cancelled.push(u):i.failed.push({path:u,error:c.message})}}return i}const Xu={class:"terminal-area"},zu={key:0,class:"terminal-tools","aria-label":"Terminal tools"},Zu=["disabled","title"],Qu=["disabled","title"],ef=["disabled"],tf=["title"],nf=["value"],sf={key:1,class:"selection-hint"},of=["src"],rf={key:2,class:"welcome__container"},lf={class:"welcome__content"},af={class:"welcome-brand"},cf={class:"welcome__text"},uf={class:"highlight"},ff=["disabled"],df=["disabled"],pf={__name:"TerminalView",emits:["create"],setup(e,{emit:t}){const n=$t(),s=t,o=St("toast"),r=U(null),i=rl(null),l=U(""),a=U(""),u=U(null),c=U(null),f=U(null),h=/Mac|iPhone|iPad/.test(navigator.platform),v=h?"⌘C":"Ctrl+Shift+C",C=h?"⌘V":"Ctrl+Shift+V",g=h?"Option":"Shift",S=We(()=>!!(l.value||a.value));let m=null,w=null;const k=U(null),O=U(null),H=U(!1);let ne=null,oe=null,W=!1;function P(){Z();const Y=_.value;!Y||Y.status!=="running"||H.value||(oe={name:Y.name,root:(Y.root?Promise.resolve(Y.root):n.pinRoot(Y.name)).then(j=>({root:j}),j=>({error:j}))},k.value.click())}async function V(Y){const j=Y.join(`
|
|
5
|
+
`);await Ns(j)?B("路径已复制。","success"):f.value={mode:"copy",text:j}}async function se(Y){const j=Array.from(Y.target.files||[]);Y.target.value="";const we=oe;if(oe=null,!j.length||!we||H.value)return;H.value=!0,ne=new AbortController;const Oe=ne.signal;try{const{root:Ge,error:d}=await we.root;if(d)throw d;if(Oe.aborted)return;const p=oo(Ge,"temp");W||(B("上传目录为项目下的 temp/,可在项目 .gitignore 中加入 temp/。"),W=!0);const y=await Ju({files:j,directory:p,signal:Oe,onProgress:x=>{O.value={...x,session:we.name}},onUnauthorized:()=>{n.authenticated=!1,ne?.abort()}});n.refreshFiles();const T=[`${we.name}:已完成 ${y.completed.length} 个、取消 ${y.cancelled.length} 个、失败 ${y.failed.length} 个`,...y.completed.map(x=>`已完成:${x}`),...y.cancelled.map(x=>`已取消:${x}`),...y.failed.map(x=>`失败:${x.path}
|
|
6
|
+
${x.error}`)].join(`
|
|
7
|
+
`);o?.value?.show(T,y.failed.length?"error":y.cancelled.length?"info":"success",{duration:0,action:y.completed.length?{label:"复制路径",onClick:()=>V(y.completed)}:void 0})}catch(Ge){B(Ge.message,"error")}finally{H.value=!1,O.value=null,ne=null}}const _=We(()=>n.sessions.find(Y=>Y.name===n.current)),F=We(()=>!_.value||_.value.status!=="running"?null:`/terminal/${_.value.name}`);function B(Y,j="info"){o?.value?.show(Y,j)}function Z(Y=!1){u.value=null,Y&&i.value?.focus()}function ee(){return i.value?.getSelection()||a.value}async function X(){Z();const Y=i.value,j=ee();if(!Y||!j){B(`Select text first (${g} + drag).`);return}const we=await Ns(j);i.value===Y&&(we?(B("Copied to clipboard.","success"),Y.focus()):f.value={mode:"copy",text:j})}function A(Y,j=i.value){!j||j!==i.value||(a.value="",j.paste(Y),j.focus())}async function L(){Z();const Y=i.value;if(Y)try{if(!navigator.clipboard?.readText)throw new Error("Clipboard unavailable");const j=await navigator.clipboard.readText();A(j,Y)}catch{i.value===Y&&(f.value={mode:"paste",text:""})}}function te(){f.value=null,i.value?.focus()}function me(Y){A(Y),te()}async function Fe(Y){const j=r.value.getBoundingClientRect();u.value={x:j.left+Y.clientX,y:j.top+Y.clientY},await Ft();const we=c.value;!we||!u.value||(u.value.x=Math.max(8,Math.min(u.value.x,window.innerWidth-we.offsetWidth-8)),u.value.y=Math.max(8,Math.min(u.value.y,window.innerHeight-we.offsetHeight-8)),we.querySelector("button:not(:disabled)")?.focus())}function En(Y){if(Y.key==="Escape"||Y.key==="Tab")Y.key==="Escape"&&Y.preventDefault(),Z(!0);else if(["ArrowDown","ArrowUp","Home","End"].includes(Y.key)){Y.preventDefault();const j=[...c.value.querySelectorAll("button:not(:disabled)")],we=j.indexOf(document.activeElement),Oe=Y.key==="Home"?0:Y.key==="End"?j.length-1:(we+(Y.key==="ArrowDown"?1:-1)+j.length)%j.length;j[Oe]?.focus()}}function Xt(){clearTimeout(w),w=null,m?.(),m=null,i.value=null,l.value="",a.value="",u.value=null,f.value=null}function us(Y){Xt();const j=Y.target,we=Date.now()+1e4;function Oe(){if(r.value!==j)return;const Ge=j.contentWindow?.term;if(!Ge){Date.now()<we?w=setTimeout(Oe,50):B("Terminal clipboard controls could not load. Please reload the page.","error");return}i.value=Ge,Ge.options.macOptionClickForcesSelection=!0,l.value=Ge.getSelection(),m=vu({doc:j.contentDocument,terminal:Ge,isMac:h,getCopyText:ee,onCopy:X,onContextMenu:Fe,onDismiss:()=>Z(),onInput:()=>{a.value=""},onSelection:d=>{l.value=d,d&&(a.value="")},onTmuxCopy:d=>{a.value=d}})}Oe()}function gt(Y){c.value?.contains(Y.target)||Z()}return st(F,Xt),Tt(()=>{document.addEventListener("pointerdown",gt),window.addEventListener("resize",Z)}),Nt(()=>{ne?.abort(),Xt(),document.removeEventListener("pointerdown",gt),window.removeEventListener("resize",Z)}),(Y,j)=>(R(),K("div",Xu,[b("input",{ref_key:"fileInput",ref:k,type:"file",multiple:"",hidden:"",onChange:se},null,544),_.value||H.value?(R(),K("div",zu,[b("button",{class:"clipboard-btn",disabled:!i.value||!S.value,title:`Copy selected text (${ge(v)})`,onMousedown:j[0]||(j[0]=Te(()=>{},["prevent"])),onClick:X},"Copy",40,Zu),b("button",{class:"clipboard-btn",disabled:!i.value,title:`Paste from your computer (${ge(C)})`,onMousedown:j[1]||(j[1]=Te(()=>{},["prevent"])),onClick:L},"Paste",40,Qu),b("button",{class:"clipboard-btn",disabled:_.value?.status!=="running"||H.value,onClick:P},"Upload",8,ef),H.value?(R(),K("div",{key:0,class:"upload-progress","aria-live":"polite",title:O.value?`${O.value.session}: ${O.value.filename}`:"准备上传"},[b("span",null,re(O.value?`${O.value.index}/${O.value.total} · ${O.value.percent}%`:"准备上传…"),1),b("progress",{value:O.value?.percent||0,max:"100","aria-label":"上传进度"},null,8,nf),b("button",{class:"clipboard-btn",onClick:j[2]||(j[2]=we=>ge(ne)?.abort())},"取消")],8,tf)):(R(),K("span",sf,re(ge(g))+" + drag to select · "+re(ge(v))+" / "+re(ge(C)),1))])):ae("",!0),F.value?(R(),K("iframe",{ref_key:"iframe",ref:r,key:F.value,src:F.value,class:"terminal-frame",title:"Terminal",allow:"clipboard-read; clipboard-write",onLoad:us},null,40,of)):(R(),K("div",rf,[b("div",lf,[b("div",af,[_e(ro,{size:104}),j[6]||(j[6]=b("div",{class:"logo-text"},"ACLI Hub",-1))]),_.value?(R(),K(ve,{key:1},[b("p",cf,[j[8]||(j[8]=He(" Session ",-1)),b("span",uf,re(_.value.name),1),j[9]||(j[9]=He(" is currently stopped. ",-1))]),j[10]||(j[10]=b("p",{class:"sub-text"},"Restart the session to continue.",-1))],64)):(R(),K(ve,{key:0},[j[7]||(j[7]=b("p",{class:"welcome__text"},"No active session selected.",-1)),b("button",{class:"btn btn-primary",onClick:j[3]||(j[3]=we=>s("create"))}," Create First Session ")],64))])])),u.value?(R(),K("div",{key:3,ref_key:"menuElement",ref:c,class:"clipboard-menu",style:bn({left:`${u.value.x}px`,top:`${u.value.y}px`}),role:"menu","aria-label":"Terminal clipboard",onKeydown:En},[b("button",{role:"menuitem",disabled:!S.value,onMousedown:j[4]||(j[4]=Te(()=>{},["prevent"])),onClick:X},[j[11]||(j[11]=He(" Copy ",-1)),b("span",null,re(ge(v)),1)],40,ff),b("button",{role:"menuitem",onMousedown:j[5]||(j[5]=Te(()=>{},["prevent"])),onClick:L},[j[12]||(j[12]=He(" Paste ",-1)),b("span",null,re(ge(C)),1)],32),b("button",{role:"menuitem",disabled:_.value?.status!=="running"||H.value,onClick:P},"Upload files…",8,df),j[13]||(j[13]=b("p",null,"Shift + right-click for browser menu",-1))],36)):ae("",!0),f.value?(R(),je(Ci,{key:4,mode:f.value.mode,text:f.value.text,shortcut:f.value.mode==="copy"?ge(h)?"⌘C":"Ctrl+C":ge(h)?"⌘V":"Ctrl+V",onClose:te,onPaste:me},null,8,["mode","text","shortcut"])):ae("",!0)]))}},hf=Ve(pf,[["__scopeId","data-v-95819edf"]]),mf={class:"modal-content glass"},gf={class:"modal-header"},vf={class:"modal-body"},yf={class:"form-group"},bf=["placeholder"],_f={class:"form-group"},wf=["value"],xf={class:"modal-footer"},Cf=["disabled"],Sf={__name:"CreateDialog",emits:["close"],setup(e,{emit:t}){const n=t,s=$t(),o=U({name:"",command:s.shells.length?s.shells[0].id:"bash"}),r=U(!1),i=We(()=>o.value.name?o.value.name:`${o.value.command}-auto`);async function l(){if(!r.value){r.value=!0;try{await s.create(o.value),n("close")}catch(a){console.error(a)}finally{r.value=!1}}}return(a,u)=>(R(),K("div",{class:"modal-overlay",onClick:u[4]||(u[4]=Te(c=>n("close"),["self"]))},[b("div",mf,[b("div",gf,[u[5]||(u[5]=b("h3",null,"Create New Session",-1)),b("button",{class:"close-btn",onClick:u[0]||(u[0]=c=>n("close"))},"✕")]),b("div",vf,[b("label",yf,[u[6]||(u[6]=b("span",{class:"label-text"},"Session Name (Optional)",-1)),Ue(b("input",{"onUpdate:modelValue":u[1]||(u[1]=c=>o.value.name=c),type:"text",placeholder:i.value,onKeyup:Yn(l,["enter"])},null,40,bf),[[Sn,o.value.name]])]),b("label",_f,[u[7]||(u[7]=b("span",{class:"label-text"},"Shell",-1)),Ue(b("select",{"onUpdate:modelValue":u[2]||(u[2]=c=>o.value.command=c)},[(R(!0),K(ve,null,xn(ge(s).shells,c=>(R(),K("option",{key:c.id,value:c.id},re(c.name),9,wf))),128))],512),[[oc,o.value.command]])])]),b("div",xf,[b("button",{class:"btn",onClick:u[3]||(u[3]=c=>n("close"))},"Cancel"),b("button",{class:"btn btn-primary",onClick:l,disabled:r.value},re(r.value?"Creating...":"Create Session"),9,Cf)])])]))}},Ef=Ve(Sf,[["__scopeId","data-v-f9ae44fb"]]),Tf={class:"login-screen"},$f={class:"login-logo"},kf={key:0,class:"login-error",role:"alert"},Af=["disabled"],Pf={__name:"LoginView",emits:["success"],setup(e,{emit:t}){const n=t,s=$t(),o=U(""),r=U(""),i=U(!1),l=U(null);Tt(()=>{l.value?.focus()});async function a(){if(!(!o.value||i.value)){i.value=!0,r.value="";try{await s.login(o.value),o.value="",n("success")}catch(u){r.value=u.message||"Login failed"}finally{i.value=!1}}}return(u,c)=>(R(),K("div",Tf,[b("form",{class:"login-card",onSubmit:Te(a,["prevent"])},[b("div",$f,[_e(ro,{size:72})]),c[2]||(c[2]=b("h1",null,"ACLI Hub",-1)),c[3]||(c[3]=b("p",{class:"login-hint"},"Enter the session password to continue",-1)),Ue(b("input",{ref_key:"passwordInput",ref:l,"onUpdate:modelValue":c[0]||(c[0]=f=>o.value=f),type:"password",autocomplete:"current-password",placeholder:"Password","aria-label":"Password",onKeydown:c[1]||(c[1]=Yn(f=>{o.value="",r.value=""},["esc"]))},null,544),[[Sn,o.value]]),r.value?(R(),K("p",kf,re(r.value),1)):ae("",!0),b("button",{type:"submit",class:"login-btn",disabled:!o.value||i.value},re(i.value?"Signing in…":"Sign in"),9,Af)],32)]))}},Mf=Ve(Pf,[["__scopeId","data-v-86b6b672"]]),Of={class:"toast-container","aria-live":"polite"},If={class:"toast-message"},Rf={class:"toast-actions"},Df=["onClick"],Lf=["onClick"],Ff={__name:"Toast",setup(e,{expose:t}){const n=U([]);let s=0;const o=new Map;function r(l){clearTimeout(o.get(l)),o.delete(l),n.value=n.value.filter(a=>a.id!==l)}function i(l,a="info",{action:u,duration:c=u?0:4e3}={}){const f=++s;n.value.push({id:f,message:l,type:a,action:u}),c&&o.set(f,setTimeout(()=>r(f),c))}return Nt(()=>{for(const l of o.values())clearTimeout(l)}),t({show:i}),(l,a)=>(R(),K("div",Of,[_e(Za,{name:"toast"},{default:Rr(()=>[(R(!0),K(ve,null,xn(n.value,u=>(R(),K("div",{key:u.id,class:rt(["toast",u.type])},[b("div",If,re(u.message),1),b("div",Rf,[u.action?(R(),K("button",{key:0,onClick:u.action.onClick},re(u.action.label),9,Df)):ae("",!0),b("button",{"aria-label":"Dismiss notification",onClick:c=>r(u.id)},"×",8,Lf)])],2))),128))]),_:1})]))}},Nf=Ve(Ff,[["__scopeId","data-v-6bea03ca"]]),jf={key:1,class:"app-layout"},Hf={class:"toolbar glass"},Kf={class:"toolbar-left"},Vf={class:"logo-wrapper"},Uf={class:"toolbar-right"},Bf={class:"main-area"},Wf={__name:"App",setup(e){const t=$t(),n=U(!1),s=U(!1),o=U(null),r=U(!1);window.innerWidth<768&&(n.value=!0),Dr("toast",o),st(()=>t.authenticated,c=>{c&&t.init()}),Tt(async()=>{await t.checkAuth(),r.value=!0});async function l(){await t.logout()}function a(){n.value=!n.value}function u(){n.value=!0}return(c,f)=>r.value&&!ge(t).authenticated?(R(),je(Mf,{key:0})):r.value?(R(),K("div",jf,[b("header",Hf,[b("div",Kf,[b("button",{class:"icon-btn toggle-btn",onClick:a,"aria-label":"Toggle Sidebar"},[...f[4]||(f[4]=[b("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[b("line",{x1:"3",y1:"12",x2:"21",y2:"12"}),b("line",{x1:"3",y1:"6",x2:"21",y2:"6"}),b("line",{x1:"3",y1:"18",x2:"21",y2:"18"})],-1)])]),b("div",Vf,[_e(ro,{size:28})]),f[5]||(f[5]=b("h1",{class:"toolbar-title"},"ACLI Hub",-1))]),b("div",Uf,[ge(t).authRequired?(R(),K("button",{key:0,class:"icon-btn toggle-btn","aria-label":"Log out",title:"Log out",onClick:l},[...f[6]||(f[6]=[b("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[b("path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"}),b("polyline",{points:"16 17 21 12 16 7"}),b("line",{x1:"21",y1:"12",x2:"9",y2:"12"})],-1)])])):ae("",!0)])]),b("div",Bf,[b("div",{class:rt(["sidebar-overlay",{show:!n.value}]),onClick:u},null,2),_e(Wu,{collapsed:n.value,onCreate:f[0]||(f[0]=h=>s.value=!0),onExpand:f[1]||(f[1]=h=>n.value=!1)},null,8,["collapsed"]),_e(hf,{onCreate:f[2]||(f[2]=h=>s.value=!0)})]),s.value?(R(),je(Ef,{key:0,onClose:f[3]||(f[3]=h=>s.value=!1)})):ae("",!0),_e(Nf,{ref_key:"toastRef",ref:o},null,512)])):ae("",!0)}},qf=Ve(Wf,[["__scopeId","data-v-1baffbd3"]]),Si=uc(qf);Si.use(pc());Si.mount("#app");export{ve as F,Hr as T,so as _,Ve as a,Nt as b,R as c,je as d,xi as e,b as f,ge as g,Fc as h,Lc as i,K as j,ae as k,xn as l,Jf as m,rt as n,Tt as o,Yf as p,Gf as q,U as r,Xf as s,re as t,$t as u,We as v,Te as w};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--bg-card: #1e293b;--bg-card-hover: #334155;--border-color: #334155;--border-color-hover: #475569;--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-tertiary: #64748b;--accent-primary: #3b82f6;--accent-hover: #2563eb;--accent-dim: rgba(59, 130, 246, .15);--success: #10b981;--warning: #f59e0b;--danger: #ef4444;--sidebar-width: 260px;--sidebar-collapsed-width: 0px;--toolbar-height: 56px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1)}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;background:var(--bg-primary);color:var(--text-primary);overflow:hidden;height:100vh;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}#app{height:100vh;display:flex;flex-direction:column}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.glass{background:#1e293bb3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all .2s;border:1px solid transparent;outline:none}.btn-primary{background:var(--accent-primary);color:#fff}.btn-primary:hover{background:var(--accent-hover)}input{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);padding:8px 12px;border-radius:var(--radius-md);outline:none;transition:border-color .2s}input:focus{border-color:var(--accent-primary)}.session-card[data-v-c39ba5d7]{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-md);cursor:pointer;transition:all .2s;border:1px solid transparent;color:var(--text-secondary)}.session-card[data-v-c39ba5d7]:hover{background:var(--bg-card-hover);color:var(--text-primary)}.session-card.active[data-v-c39ba5d7]{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-color)}.status-indicator[data-v-c39ba5d7]{width:8px;height:8px;border-radius:50%;background:var(--text-tertiary);flex-shrink:0}.status-indicator.running[data-v-c39ba5d7]{background:var(--success);box-shadow:0 0 8px #10b98166}.card-content[data-v-c39ba5d7]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.card-top[data-v-c39ba5d7]{display:flex;align-items:center;gap:4px}.session-name[data-v-c39ba5d7]{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0;display:flex;align-items:baseline;gap:6px}.alias-text[data-v-c39ba5d7]{overflow:hidden;text-overflow:ellipsis}.real-name[data-v-c39ba5d7]{flex-shrink:1;max-width:45%;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:400;color:var(--text-tertiary)}.alias-input[data-v-c39ba5d7]{flex:1;min-width:0;padding:2px 6px;font-size:13px;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;outline:none}.alias-input[data-v-c39ba5d7]:focus{border-color:var(--accent-primary, #3b82f6)}.close-btn[data-v-c39ba5d7]{display:none;align-items:center;justify-content:center;background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:2px;border-radius:4px;flex-shrink:0}.session-card:hover .close-btn[data-v-c39ba5d7]{display:flex}.close-btn[data-v-c39ba5d7]:hover{background:var(--bg-tertiary);color:var(--danger)}.session-info[data-v-c39ba5d7]{display:flex;align-items:baseline;gap:8px;font-size:11px;color:var(--text-tertiary)}.pane-title[data-v-c39ba5d7]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.confirm-bar[data-v-c39ba5d7]{display:flex;align-items:center;gap:6px;font-size:12px}.confirm-text[data-v-c39ba5d7]{color:var(--danger);font-weight:500}.confirm-yes[data-v-c39ba5d7],.confirm-no[data-v-c39ba5d7]{background:none;border:1px solid var(--border-color);border-radius:4px;padding:1px 8px;font-size:11px;cursor:pointer;color:var(--text-secondary)}.confirm-yes[data-v-c39ba5d7]:hover{background:var(--danger);border-color:var(--danger);color:#fff}.confirm-no[data-v-c39ba5d7]:hover{background:var(--bg-tertiary);color:var(--text-primary)}.session-card.collapsed[data-v-c39ba5d7]{justify-content:center;padding:12px}.session-card.collapsed .status-indicator[data-v-c39ba5d7]{width:10px;height:10px}li[data-v-7822209d]{list-style:none}.tree-row[data-v-7822209d]{display:flex;align-items:center;gap:5px;min-height:31px;padding:2px 6px;cursor:pointer;border-radius:3px;outline-offset:-2px}.tree-row[data-v-7822209d]:hover,.tree-row[data-v-7822209d]:focus-visible{background:var(--bg-tertiary)}.chevron[data-v-7822209d]{flex:0 0 10px;color:var(--text-secondary)}.file-icon[data-v-7822209d]{color:var(--text-secondary);font-size:18px;width:15px}.filename[data-v-7822209d]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13px}.dotfile[data-v-7822209d]{opacity:.55}.more[data-v-7822209d]{background:transparent;color:var(--text-secondary);border:none;cursor:pointer;padding:0 4px;font-size:18px;opacity:0}.tree-row:hover .more[data-v-7822209d],.tree-row:focus-within .more[data-v-7822209d]{opacity:1}.tree-children[data-v-7822209d]{margin-left:14px;padding-left:5px;border-left:1px solid var(--border-color)}.tree-status[data-v-7822209d]{padding:5px 10px;color:var(--text-secondary);font-size:12px;overflow-wrap:anywhere}.tree-status button[data-v-7822209d]{background:none;color:var(--text-primary);border:none;cursor:pointer;text-decoration:underline}.error[data-v-7822209d]{color:var(--danger)}@media(hover:none){.more[data-v-7822209d]{opacity:1}}.file-dialog[data-v-5ceee09a]{margin:auto;width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;padding:24px;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.file-dialog[data-v-5ceee09a]::backdrop{background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}p[data-v-5ceee09a]{margin:12px 0;color:var(--text-secondary)}.operation-path[data-v-5ceee09a]{overflow-wrap:anywhere;font:12px/1.6 monospace}label[data-v-5ceee09a]{display:flex;flex-direction:column;gap:8px}.dialog-actions[data-v-5ceee09a]{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.btn[data-v-5ceee09a]{background:var(--bg-tertiary);color:var(--text-primary)}.btn-primary[data-v-5ceee09a]{background:var(--accent-primary)}.delete-btn[data-v-5ceee09a]{background:var(--danger);color:#fff}.error[data-v-5ceee09a]{color:var(--danger)}button[data-v-5ceee09a]:disabled{opacity:.5;cursor:default}.clipboard-overlay[data-v-317cb3e2]{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.clipboard-dialog[data-v-317cb3e2]{width:min(520px,calc(100vw - 32px));padding:20px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}h3[data-v-317cb3e2]{font-size:16px}p[data-v-317cb3e2]{margin:12px 0;color:var(--text-secondary)}textarea[data-v-317cb3e2]{width:100%;height:180px;resize:vertical;padding:12px;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);font:13px/1.5 monospace}textarea[data-v-317cb3e2]:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.clipboard-actions[data-v-317cb3e2]{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}button[type=button][data-v-317cb3e2]{color:var(--text-primary);background:var(--bg-tertiary)}button[data-v-317cb3e2]:disabled{opacity:.5;cursor:default}.file-panel[data-v-f365284d]{display:flex;flex-direction:column;min-height:0;flex:1}.file-toolbar[data-v-f365284d]{display:flex;align-items:center;gap:4px;padding:10px 12px 4px}.project-name[data-v-f365284d]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600}.file-toolbar button[data-v-f365284d],.panel-hint button[data-v-f365284d]{border:none;background:transparent;color:var(--text-secondary);padding:3px 5px;cursor:pointer;font-size:17px}.file-toolbar button[data-v-f365284d]:hover{background:var(--bg-tertiary);border-radius:4px}button[data-v-f365284d]:disabled{opacity:.4;cursor:default}.root-path[data-v-f365284d]{color:var(--text-secondary);font:11px/1.6 monospace;overflow-wrap:anywhere;padding:0 12px 10px;border-bottom:1px solid var(--border-color)}.file-tree[data-v-f365284d]{overflow:auto;padding:6px;flex:1;min-height:0}.panel-hint[data-v-f365284d]{padding:12px;color:var(--text-secondary);font-size:12px;list-style:none;overflow-wrap:anywhere}.error[data-v-f365284d]{color:var(--danger)}.file-menu[data-v-f365284d]{position:fixed;z-index:110;width:min(230px,calc(100vw - 16px));padding:6px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.file-menu button[data-v-f365284d]{display:flex;justify-content:space-between;width:100%;text-align:left;padding:8px 10px;background:none;color:var(--text-primary);border:none;border-radius:4px;cursor:pointer}.file-menu button[data-v-f365284d]:hover:not(:disabled),.file-menu button[data-v-f365284d]:focus-visible{background:var(--bg-tertiary)}.file-menu span[data-v-f365284d]{color:var(--text-secondary)}.file-menu .danger[data-v-f365284d]{color:var(--danger)}.sidebar[data-v-7d06ff2a]{width:var(--sidebar-width);border-right:1px solid var(--border-color);background:var(--bg-secondary);display:flex;flex-direction:column;flex-shrink:0;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden;height:100%;z-index:20}.sidebar.collapsed[data-v-7d06ff2a]{width:72px}.sidebar-tabs[data-v-7d06ff2a]{display:flex;flex-shrink:0;border-bottom:1px solid var(--border-color)}.sidebar-tabs button[data-v-7d06ff2a]{flex:1;padding:12px 4px;border:none;border-bottom:2px solid transparent;background:none;color:var(--text-secondary);cursor:pointer;font:inherit;font-size:12px}.sidebar-tabs button[aria-selected=true][data-v-7d06ff2a]{border-bottom-color:var(--accent-primary);color:var(--text-primary);background:var(--bg-primary)}.sessions-panel[data-v-7d06ff2a],.files-panel[data-v-7d06ff2a]{display:flex;flex-direction:column;min-height:0;flex:1}.sidebar-header[data-v-7d06ff2a]{padding:16px;border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;gap:12px}.sidebar-title[data-v-7d06ff2a]{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary);font-weight:600}.new-session-btn[data-v-7d06ff2a]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:var(--accent-primary);color:#fff;border:none;border-radius:var(--radius-md);padding:10px;cursor:pointer;font-weight:500;transition:all .2s}.new-session-btn[data-v-7d06ff2a]:hover{background:var(--accent-hover)}.sidebar.collapsed .new-session-btn[data-v-7d06ff2a]{padding:10px 0}.session-list[data-v-7d06ff2a]{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:4px}.empty-hint[data-v-7d06ff2a]{text-align:center;padding:40px 10px;color:var(--text-tertiary)}.empty-hint p[data-v-7d06ff2a]{font-size:14px;margin-bottom:4px}.empty-hint .sub-hint[data-v-7d06ff2a]{font-size:12px;opacity:.7}@media(max-width:768px){.sidebar[data-v-7d06ff2a]{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width);transform:translate(0);box-shadow:var(--shadow-md);z-index:50}.sidebar.collapsed[data-v-7d06ff2a]{transform:translate(-100%);width:var(--sidebar-width)}}.brand-mark[data-v-f54af403]{display:block;flex-shrink:0;object-fit:contain}.terminal-area[data-v-95819edf]{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#000;position:relative}.terminal-frame[data-v-95819edf]{flex:1;width:100%;min-height:0;border:none;background:#000}.terminal-tools[data-v-95819edf]{display:flex;align-items:center;flex-shrink:0;gap:8px;padding:6px 12px;background:var(--bg-primary);border-bottom:1px solid var(--border-color);flex-wrap:wrap}.upload-progress[data-v-95819edf]{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary)}.upload-progress progress[data-v-95819edf]{width:64px;height:4px;accent-color:var(--accent-primary)}.clipboard-btn[data-v-95819edf]{padding:4px 10px;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer}.clipboard-btn[data-v-95819edf]:hover:not(:disabled){background:var(--bg-tertiary)}.clipboard-btn[data-v-95819edf]:disabled,.clipboard-menu button[data-v-95819edf]:disabled{opacity:.45;cursor:default}.selection-hint[data-v-95819edf]{color:var(--text-secondary);font-size:12px}.clipboard-menu[data-v-95819edf]{position:fixed;z-index:100;width:min(280px,calc(100vw - 16px));padding:6px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.clipboard-menu button[data-v-95819edf]{display:flex;justify-content:space-between;width:100%;padding:8px 10px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);text-align:left;cursor:pointer}.clipboard-menu button[data-v-95819edf]:hover:not(:disabled),.clipboard-menu button[data-v-95819edf]:focus-visible{background:var(--bg-tertiary)}.clipboard-menu span[data-v-95819edf],.clipboard-menu p[data-v-95819edf]{color:var(--text-secondary);font-size:12px}.clipboard-menu p[data-v-95819edf]{padding:8px 10px 4px;border-top:1px solid var(--border-color)}@media(max-width:600px){.selection-hint[data-v-95819edf]{display:none}}.welcome__container[data-v-95819edf]{flex:1;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);background-image:radial-gradient(circle at center,var(--bg-secondary) 0%,var(--bg-primary) 100%)}.welcome__content[data-v-95819edf]{text-align:center;max-width:400px;padding:40px}.welcome-brand[data-v-95819edf]{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:24px}.logo-text[data-v-95819edf]{font-size:32px;font-weight:700;color:var(--text-primary);letter-spacing:-1px}.welcome__text[data-v-95819edf]{color:var(--text-secondary);font-size:16px;margin-bottom:24px}.highlight[data-v-95819edf]{color:var(--text-primary);font-weight:600}.sub-text[data-v-95819edf]{color:var(--text-tertiary);font-size:14px}.modal-overlay[data-v-f9ae44fb]{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn-f9ae44fb .2s ease}.modal-content[data-v-f9ae44fb]{width:100%;max-width:400px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin:16px;overflow:hidden;animation:slideUp-f9ae44fb .3s cubic-bezier(.16,1,.3,1)}.modal-header[data-v-f9ae44fb]{padding:16px 20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.modal-header h3[data-v-f9ae44fb]{font-size:16px;font-weight:600;color:var(--text-primary)}.close-btn[data-v-f9ae44fb]{background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:18px;padding:4px;border-radius:4px}.close-btn[data-v-f9ae44fb]:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-body[data-v-f9ae44fb]{padding:20px;display:flex;flex-direction:column;gap:16px}.form-group[data-v-f9ae44fb]{display:flex;flex-direction:column;gap:8px}.label-text[data-v-f9ae44fb]{font-size:13px;font-weight:500;color:var(--text-secondary)}select[data-v-f9ae44fb],input[data-v-f9ae44fb]{width:100%;background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);padding:10px;border-radius:var(--radius-md);outline:none;font-size:14px;appearance:none}select[data-v-f9ae44fb]:focus,input[data-v-f9ae44fb]:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-dim)}.modal-footer[data-v-f9ae44fb]{padding:16px 20px;background:var(--bg-primary);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:12px}@keyframes fadeIn-f9ae44fb{0%{opacity:0}to{opacity:1}}@keyframes slideUp-f9ae44fb{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.login-screen[data-v-86b6b672]{height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary)}.login-card[data-v-86b6b672]{width:min(360px,calc(100vw - 48px));padding:32px;display:flex;flex-direction:column;align-items:center;gap:12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.login-logo[data-v-86b6b672]{display:flex;align-items:center;justify-content:center;width:72px;height:72px}h1[data-v-86b6b672]{font-size:22px;font-weight:600;color:var(--text-primary);letter-spacing:-.5px}.login-hint[data-v-86b6b672]{margin:-4px 0 8px;font-size:13px;color:var(--text-secondary)}input[data-v-86b6b672]{width:100%;padding:10px 12px;font-size:14px;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);outline:none}input[data-v-86b6b672]:focus{border-color:var(--accent-primary, #3b82f6)}.login-error[data-v-86b6b672]{width:100%;margin:0;font-size:13px;color:var(--danger)}.login-btn[data-v-86b6b672]{width:100%;margin-top:4px;padding:10px 12px;font-size:14px;font-weight:500;color:#fff;background:var(--accent-primary, #3b82f6);border:none;border-radius:var(--radius-md);cursor:pointer}.login-btn[data-v-86b6b672]:disabled{opacity:.5;cursor:default}.login-btn[data-v-86b6b672]:not(:disabled):hover{filter:brightness(1.1)}.toast-container[data-v-6bea03ca]{position:fixed;top:60px;right:16px;z-index:200;display:flex;flex-direction:column;gap:8px;max-width:min(520px,calc(100vw - 32px));max-height:calc(100vh - 80px);overflow:auto}.toast[data-v-6bea03ca]{padding:10px 16px;border-radius:8px;font-size:13px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);min-width:200px;background:var(--bg-secondary);display:flex;align-items:flex-start;gap:12px}.toast-message[data-v-6bea03ca]{white-space:pre-wrap;overflow-wrap:anywhere;max-height:35vh;overflow:auto;flex:1}.toast-actions[data-v-6bea03ca]{display:flex;gap:8px;flex-shrink:0}.toast-actions button[data-v-6bea03ca]{border:none;background:transparent;color:inherit;cursor:pointer;font:inherit}.toast.info[data-v-6bea03ca]{background:var(--bg-secondary);color:var(--text-primary)}.toast.error[data-v-6bea03ca]{background:var(--bg-secondary);color:var(--danger)}.toast.success[data-v-6bea03ca]{background:#4ade8026;color:#4ade80}.toast-enter-active[data-v-6bea03ca]{animation:slideIn-6bea03ca .3s ease}.toast-leave-active[data-v-6bea03ca]{animation:slideOut-6bea03ca .3s ease}@keyframes slideIn-6bea03ca{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOut-6bea03ca{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.app-layout[data-v-1baffbd3]{height:100vh;display:flex;flex-direction:column}.toolbar[data-v-1baffbd3]{height:var(--toolbar-height);display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid var(--border-color);flex-shrink:0;z-index:30;background:var(--bg-primary)}.toolbar-left[data-v-1baffbd3]{display:flex;align-items:center;gap:12px}.toggle-btn[data-v-1baffbd3]{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.toggle-btn[data-v-1baffbd3]:hover{color:var(--text-primary);background:var(--bg-tertiary)}.logo-wrapper[data-v-1baffbd3]{display:flex;align-items:center;justify-content:center;flex-shrink:0}.toolbar-title[data-v-1baffbd3]{font-size:16px;font-weight:600;color:var(--text-primary);letter-spacing:-.5px}.main-area[data-v-1baffbd3]{flex:1;display:flex;overflow:hidden;position:relative}.sidebar-overlay[data-v-1baffbd3]{display:none;position:absolute;inset:0;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:15;opacity:0;transition:opacity .3s ease;pointer-events:none}@media(max-width:768px){.sidebar-overlay[data-v-1baffbd3]{display:block}.sidebar-overlay.show[data-v-1baffbd3]{opacity:1;pointer-events:auto}}
|
|
1
|
+
:root{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--bg-card: #1e293b;--bg-card-hover: #334155;--border-color: #334155;--border-color-hover: #475569;--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-tertiary: #64748b;--accent-primary: #3b82f6;--accent-hover: #2563eb;--accent-dim: rgba(59, 130, 246, .15);--success: #10b981;--warning: #f59e0b;--danger: #ef4444;--sidebar-width: 260px;--sidebar-collapsed-width: 0px;--toolbar-height: 56px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1)}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;background:var(--bg-primary);color:var(--text-primary);overflow:hidden;height:100vh;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}#app{height:100vh;display:flex;flex-direction:column}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.glass{background:#1e293bb3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all .2s;border:1px solid transparent;outline:none}.btn-primary{background:var(--accent-primary);color:#fff}.btn-primary:hover{background:var(--accent-hover)}input{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);padding:8px 12px;border-radius:var(--radius-md);outline:none;transition:border-color .2s}input:focus{border-color:var(--accent-primary)}.session-card[data-v-c39ba5d7]{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-md);cursor:pointer;transition:all .2s;border:1px solid transparent;color:var(--text-secondary)}.session-card[data-v-c39ba5d7]:hover{background:var(--bg-card-hover);color:var(--text-primary)}.session-card.active[data-v-c39ba5d7]{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-color)}.status-indicator[data-v-c39ba5d7]{width:8px;height:8px;border-radius:50%;background:var(--text-tertiary);flex-shrink:0}.status-indicator.running[data-v-c39ba5d7]{background:var(--success);box-shadow:0 0 8px #10b98166}.card-content[data-v-c39ba5d7]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.card-top[data-v-c39ba5d7]{display:flex;align-items:center;gap:4px}.session-name[data-v-c39ba5d7]{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0;display:flex;align-items:baseline;gap:6px}.alias-text[data-v-c39ba5d7]{overflow:hidden;text-overflow:ellipsis}.real-name[data-v-c39ba5d7]{flex-shrink:1;max-width:45%;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:400;color:var(--text-tertiary)}.alias-input[data-v-c39ba5d7]{flex:1;min-width:0;padding:2px 6px;font-size:13px;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;outline:none}.alias-input[data-v-c39ba5d7]:focus{border-color:var(--accent-primary, #3b82f6)}.close-btn[data-v-c39ba5d7]{display:none;align-items:center;justify-content:center;background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:2px;border-radius:4px;flex-shrink:0}.session-card:hover .close-btn[data-v-c39ba5d7]{display:flex}.close-btn[data-v-c39ba5d7]:hover{background:var(--bg-tertiary);color:var(--danger)}.session-info[data-v-c39ba5d7]{display:flex;align-items:baseline;gap:8px;font-size:11px;color:var(--text-tertiary)}.pane-title[data-v-c39ba5d7]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.confirm-bar[data-v-c39ba5d7]{display:flex;align-items:center;gap:6px;font-size:12px}.confirm-text[data-v-c39ba5d7]{color:var(--danger);font-weight:500}.confirm-yes[data-v-c39ba5d7],.confirm-no[data-v-c39ba5d7]{background:none;border:1px solid var(--border-color);border-radius:4px;padding:1px 8px;font-size:11px;cursor:pointer;color:var(--text-secondary)}.confirm-yes[data-v-c39ba5d7]:hover{background:var(--danger);border-color:var(--danger);color:#fff}.confirm-no[data-v-c39ba5d7]:hover{background:var(--bg-tertiary);color:var(--text-primary)}.session-card.collapsed[data-v-c39ba5d7]{justify-content:center;padding:12px}.session-card.collapsed .status-indicator[data-v-c39ba5d7]{width:10px;height:10px}li[data-v-7822209d]{list-style:none}.tree-row[data-v-7822209d]{display:flex;align-items:center;gap:5px;min-height:31px;padding:2px 6px;cursor:pointer;border-radius:3px;outline-offset:-2px}.tree-row[data-v-7822209d]:hover,.tree-row[data-v-7822209d]:focus-visible{background:var(--bg-tertiary)}.chevron[data-v-7822209d]{flex:0 0 10px;color:var(--text-secondary)}.file-icon[data-v-7822209d]{color:var(--text-secondary);font-size:18px;width:15px}.filename[data-v-7822209d]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13px}.dotfile[data-v-7822209d]{opacity:.55}.more[data-v-7822209d]{background:transparent;color:var(--text-secondary);border:none;cursor:pointer;padding:0 4px;font-size:18px;opacity:0}.tree-row:hover .more[data-v-7822209d],.tree-row:focus-within .more[data-v-7822209d]{opacity:1}.tree-children[data-v-7822209d]{margin-left:14px;padding-left:5px;border-left:1px solid var(--border-color)}.tree-status[data-v-7822209d]{padding:5px 10px;color:var(--text-secondary);font-size:12px;overflow-wrap:anywhere}.tree-status button[data-v-7822209d]{background:none;color:var(--text-primary);border:none;cursor:pointer;text-decoration:underline}.error[data-v-7822209d]{color:var(--danger)}@media(hover:none){.more[data-v-7822209d]{opacity:1}}.file-dialog[data-v-5ceee09a]{margin:auto;width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;padding:24px;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.file-dialog[data-v-5ceee09a]::backdrop{background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}p[data-v-5ceee09a]{margin:12px 0;color:var(--text-secondary)}.operation-path[data-v-5ceee09a]{overflow-wrap:anywhere;font:12px/1.6 monospace}label[data-v-5ceee09a]{display:flex;flex-direction:column;gap:8px}.dialog-actions[data-v-5ceee09a]{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.btn[data-v-5ceee09a]{background:var(--bg-tertiary);color:var(--text-primary)}.btn-primary[data-v-5ceee09a]{background:var(--accent-primary)}.delete-btn[data-v-5ceee09a]{background:var(--danger);color:#fff}.error[data-v-5ceee09a]{color:var(--danger)}button[data-v-5ceee09a]:disabled{opacity:.5;cursor:default}.clipboard-overlay[data-v-317cb3e2]{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.clipboard-dialog[data-v-317cb3e2]{width:min(520px,calc(100vw - 32px));padding:20px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}h3[data-v-317cb3e2]{font-size:16px}p[data-v-317cb3e2]{margin:12px 0;color:var(--text-secondary)}textarea[data-v-317cb3e2]{width:100%;height:180px;resize:vertical;padding:12px;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);font:13px/1.5 monospace}textarea[data-v-317cb3e2]:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.clipboard-actions[data-v-317cb3e2]{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}button[type=button][data-v-317cb3e2]{color:var(--text-primary);background:var(--bg-tertiary)}button[data-v-317cb3e2]:disabled{opacity:.5;cursor:default}.file-panel[data-v-f365284d]{display:flex;flex-direction:column;min-height:0;flex:1}.file-toolbar[data-v-f365284d]{display:flex;align-items:center;gap:4px;padding:10px 12px 4px}.project-name[data-v-f365284d]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600}.file-toolbar button[data-v-f365284d],.panel-hint button[data-v-f365284d]{border:none;background:transparent;color:var(--text-secondary);padding:3px 5px;cursor:pointer;font-size:17px}.file-toolbar button[data-v-f365284d]:hover{background:var(--bg-tertiary);border-radius:4px}button[data-v-f365284d]:disabled{opacity:.4;cursor:default}.root-path[data-v-f365284d]{color:var(--text-secondary);font:11px/1.6 monospace;overflow-wrap:anywhere;padding:0 12px 10px;border-bottom:1px solid var(--border-color)}.file-tree[data-v-f365284d]{overflow:auto;padding:6px;flex:1;min-height:0}.panel-hint[data-v-f365284d]{padding:12px;color:var(--text-secondary);font-size:12px;list-style:none;overflow-wrap:anywhere}.error[data-v-f365284d]{color:var(--danger)}.file-menu[data-v-f365284d]{position:fixed;z-index:110;width:min(230px,calc(100vw - 16px));padding:6px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.file-menu button[data-v-f365284d]{display:flex;justify-content:space-between;width:100%;text-align:left;padding:8px 10px;background:none;color:var(--text-primary);border:none;border-radius:4px;cursor:pointer}.file-menu button[data-v-f365284d]:hover:not(:disabled),.file-menu button[data-v-f365284d]:focus-visible{background:var(--bg-tertiary)}.file-menu span[data-v-f365284d]{color:var(--text-secondary)}.file-menu .danger[data-v-f365284d]{color:var(--danger)}.sidebar[data-v-b8faf56e]{width:var(--sidebar-width);border-right:1px solid var(--border-color);background:var(--bg-secondary);display:flex;flex-direction:column;flex-shrink:0;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden;height:100%;z-index:20}.sidebar.collapsed[data-v-b8faf56e]{width:72px}.sidebar-tabs[data-v-b8faf56e]{display:flex;flex-shrink:0;border-bottom:1px solid var(--border-color)}.sidebar-tabs button[data-v-b8faf56e]{flex:1;padding:12px 4px;border:none;border-bottom:2px solid transparent;background:none;color:var(--text-secondary);cursor:pointer;font:inherit;font-size:12px}.sidebar-tabs button[aria-selected=true][data-v-b8faf56e]{border-bottom-color:var(--accent-primary);color:var(--text-primary);background:var(--bg-primary)}.sessions-panel[data-v-b8faf56e],.files-panel[data-v-b8faf56e]{display:flex;flex-direction:column;min-height:0;flex:1}.sidebar-header[data-v-b8faf56e]{padding:16px;border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;gap:12px}.sidebar-title[data-v-b8faf56e]{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary);font-weight:600}.new-session-btn[data-v-b8faf56e]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:var(--accent-primary);color:#fff;border:none;border-radius:var(--radius-md);padding:10px;cursor:pointer;font-weight:500;transition:all .2s}.new-session-btn[data-v-b8faf56e]:hover{background:var(--accent-hover)}.sidebar.collapsed .new-session-btn[data-v-b8faf56e]{padding:10px 0}.session-list[data-v-b8faf56e]{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:4px}.empty-hint[data-v-b8faf56e]{text-align:center;padding:40px 10px;color:var(--text-tertiary)}.empty-hint p[data-v-b8faf56e]{font-size:14px;margin-bottom:4px}.empty-hint .sub-hint[data-v-b8faf56e]{font-size:12px;opacity:.7}@media(max-width:768px){.sidebar[data-v-b8faf56e]{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width);transform:translate(0);box-shadow:var(--shadow-md);z-index:50}.sidebar.collapsed[data-v-b8faf56e]{transform:translate(-100%);width:var(--sidebar-width)}}.brand-mark[data-v-f54af403]{display:block;flex-shrink:0;object-fit:contain}.terminal-area[data-v-95819edf]{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#000;position:relative}.terminal-frame[data-v-95819edf]{flex:1;width:100%;min-height:0;border:none;background:#000}.terminal-tools[data-v-95819edf]{display:flex;align-items:center;flex-shrink:0;gap:8px;padding:6px 12px;background:var(--bg-primary);border-bottom:1px solid var(--border-color);flex-wrap:wrap}.upload-progress[data-v-95819edf]{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary)}.upload-progress progress[data-v-95819edf]{width:64px;height:4px;accent-color:var(--accent-primary)}.clipboard-btn[data-v-95819edf]{padding:4px 10px;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer}.clipboard-btn[data-v-95819edf]:hover:not(:disabled){background:var(--bg-tertiary)}.clipboard-btn[data-v-95819edf]:disabled,.clipboard-menu button[data-v-95819edf]:disabled{opacity:.45;cursor:default}.selection-hint[data-v-95819edf]{color:var(--text-secondary);font-size:12px}.clipboard-menu[data-v-95819edf]{position:fixed;z-index:100;width:min(280px,calc(100vw - 16px));padding:6px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.clipboard-menu button[data-v-95819edf]{display:flex;justify-content:space-between;width:100%;padding:8px 10px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);text-align:left;cursor:pointer}.clipboard-menu button[data-v-95819edf]:hover:not(:disabled),.clipboard-menu button[data-v-95819edf]:focus-visible{background:var(--bg-tertiary)}.clipboard-menu span[data-v-95819edf],.clipboard-menu p[data-v-95819edf]{color:var(--text-secondary);font-size:12px}.clipboard-menu p[data-v-95819edf]{padding:8px 10px 4px;border-top:1px solid var(--border-color)}@media(max-width:600px){.selection-hint[data-v-95819edf]{display:none}}.welcome__container[data-v-95819edf]{flex:1;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);background-image:radial-gradient(circle at center,var(--bg-secondary) 0%,var(--bg-primary) 100%)}.welcome__content[data-v-95819edf]{text-align:center;max-width:400px;padding:40px}.welcome-brand[data-v-95819edf]{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:24px}.logo-text[data-v-95819edf]{font-size:32px;font-weight:700;color:var(--text-primary);letter-spacing:-1px}.welcome__text[data-v-95819edf]{color:var(--text-secondary);font-size:16px;margin-bottom:24px}.highlight[data-v-95819edf]{color:var(--text-primary);font-weight:600}.sub-text[data-v-95819edf]{color:var(--text-tertiary);font-size:14px}.modal-overlay[data-v-f9ae44fb]{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn-f9ae44fb .2s ease}.modal-content[data-v-f9ae44fb]{width:100%;max-width:400px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin:16px;overflow:hidden;animation:slideUp-f9ae44fb .3s cubic-bezier(.16,1,.3,1)}.modal-header[data-v-f9ae44fb]{padding:16px 20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.modal-header h3[data-v-f9ae44fb]{font-size:16px;font-weight:600;color:var(--text-primary)}.close-btn[data-v-f9ae44fb]{background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:18px;padding:4px;border-radius:4px}.close-btn[data-v-f9ae44fb]:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-body[data-v-f9ae44fb]{padding:20px;display:flex;flex-direction:column;gap:16px}.form-group[data-v-f9ae44fb]{display:flex;flex-direction:column;gap:8px}.label-text[data-v-f9ae44fb]{font-size:13px;font-weight:500;color:var(--text-secondary)}select[data-v-f9ae44fb],input[data-v-f9ae44fb]{width:100%;background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);padding:10px;border-radius:var(--radius-md);outline:none;font-size:14px;appearance:none}select[data-v-f9ae44fb]:focus,input[data-v-f9ae44fb]:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-dim)}.modal-footer[data-v-f9ae44fb]{padding:16px 20px;background:var(--bg-primary);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:12px}@keyframes fadeIn-f9ae44fb{0%{opacity:0}to{opacity:1}}@keyframes slideUp-f9ae44fb{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.login-screen[data-v-86b6b672]{height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary)}.login-card[data-v-86b6b672]{width:min(360px,calc(100vw - 48px));padding:32px;display:flex;flex-direction:column;align-items:center;gap:12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.login-logo[data-v-86b6b672]{display:flex;align-items:center;justify-content:center;width:72px;height:72px}h1[data-v-86b6b672]{font-size:22px;font-weight:600;color:var(--text-primary);letter-spacing:-.5px}.login-hint[data-v-86b6b672]{margin:-4px 0 8px;font-size:13px;color:var(--text-secondary)}input[data-v-86b6b672]{width:100%;padding:10px 12px;font-size:14px;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);outline:none}input[data-v-86b6b672]:focus{border-color:var(--accent-primary, #3b82f6)}.login-error[data-v-86b6b672]{width:100%;margin:0;font-size:13px;color:var(--danger)}.login-btn[data-v-86b6b672]{width:100%;margin-top:4px;padding:10px 12px;font-size:14px;font-weight:500;color:#fff;background:var(--accent-primary, #3b82f6);border:none;border-radius:var(--radius-md);cursor:pointer}.login-btn[data-v-86b6b672]:disabled{opacity:.5;cursor:default}.login-btn[data-v-86b6b672]:not(:disabled):hover{filter:brightness(1.1)}.toast-container[data-v-6bea03ca]{position:fixed;top:60px;right:16px;z-index:200;display:flex;flex-direction:column;gap:8px;max-width:min(520px,calc(100vw - 32px));max-height:calc(100vh - 80px);overflow:auto}.toast[data-v-6bea03ca]{padding:10px 16px;border-radius:8px;font-size:13px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);min-width:200px;background:var(--bg-secondary);display:flex;align-items:flex-start;gap:12px}.toast-message[data-v-6bea03ca]{white-space:pre-wrap;overflow-wrap:anywhere;max-height:35vh;overflow:auto;flex:1}.toast-actions[data-v-6bea03ca]{display:flex;gap:8px;flex-shrink:0}.toast-actions button[data-v-6bea03ca]{border:none;background:transparent;color:inherit;cursor:pointer;font:inherit}.toast.info[data-v-6bea03ca]{background:var(--bg-secondary);color:var(--text-primary)}.toast.error[data-v-6bea03ca]{background:var(--bg-secondary);color:var(--danger)}.toast.success[data-v-6bea03ca]{background:#4ade8026;color:#4ade80}.toast-enter-active[data-v-6bea03ca]{animation:slideIn-6bea03ca .3s ease}.toast-leave-active[data-v-6bea03ca]{animation:slideOut-6bea03ca .3s ease}@keyframes slideIn-6bea03ca{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOut-6bea03ca{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.app-layout[data-v-1baffbd3]{height:100vh;display:flex;flex-direction:column}.toolbar[data-v-1baffbd3]{height:var(--toolbar-height);display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid var(--border-color);flex-shrink:0;z-index:30;background:var(--bg-primary)}.toolbar-left[data-v-1baffbd3]{display:flex;align-items:center;gap:12px}.toggle-btn[data-v-1baffbd3]{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.toggle-btn[data-v-1baffbd3]:hover{color:var(--text-primary);background:var(--bg-tertiary)}.logo-wrapper[data-v-1baffbd3]{display:flex;align-items:center;justify-content:center;flex-shrink:0}.toolbar-title[data-v-1baffbd3]{font-size:16px;font-weight:600;color:var(--text-primary);letter-spacing:-.5px}.main-area[data-v-1baffbd3]{flex:1;display:flex;overflow:hidden;position:relative}.sidebar-overlay[data-v-1baffbd3]{display:none;position:absolute;inset:0;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:15;opacity:0;transition:opacity .3s ease;pointer-events:none}@media(max-width:768px){.sidebar-overlay[data-v-1baffbd3]{display:block}.sidebar-overlay.show[data-v-1baffbd3]{opacity:1;pointer-events:auto}}
|
package/server/public/index.html
CHANGED
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png" sizes="180x180" />
|
|
11
11
|
<link rel="manifest" href="/site.webmanifest" />
|
|
12
12
|
<title>ACLI Hub</title>
|
|
13
|
-
<script type="module" crossorigin src="/assets/index-
|
|
14
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
13
|
+
<script type="module" crossorigin src="/assets/index-CLdUq5sK.js"></script>
|
|
14
|
+
<link rel="stylesheet" crossorigin href="/assets/index-CZV0DmzP.css">
|
|
15
15
|
</head>
|
|
16
16
|
<body>
|
|
17
17
|
<div id="app"></div>
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/papaparse.min-DBcLlWLv.js","assets/_commonjsHelpers-Cpj98o6Y.js","assets/PreviewDialog-KhgmouUP.js","assets/PreviewDialog-mYkQ2B4R.css"])))=>i.map(i=>d[i]);
|
|
2
|
-
(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))s(o);new MutationObserver(o=>{for(const r of o)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(o){const r={};return o.integrity&&(r.integrity=o.integrity),o.referrerPolicy&&(r.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?r.credentials="include":o.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function s(o){if(o.ep)return;o.ep=!0;const r=n(o);fetch(o.href,r)}})();function js(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const fe={},Ut=[],tt=()=>{},nr=()=>!1,Gn=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Hs=e=>e.startsWith("onUpdate:"),xe=Object.assign,Ks=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Ei=Object.prototype.hasOwnProperty,ce=(e,t)=>Ei.call(e,t),G=Array.isArray,Bt=e=>yn(e)==="[object Map]",Jn=e=>yn(e)==="[object Set]",co=e=>yn(e)==="[object Date]",Z=e=>typeof e=="function",be=e=>typeof e=="string",ot=e=>typeof e=="symbol",de=e=>e!==null&&typeof e=="object",sr=e=>(de(e)||Z(e))&&Z(e.then)&&Z(e.catch),or=Object.prototype.toString,yn=e=>or.call(e),Ti=e=>yn(e).slice(8,-1),rr=e=>yn(e)==="[object Object]",Xn=e=>be(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,sn=js(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),zn=e=>{const t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},$i=/-\w/g,Ke=zn(e=>e.replace($i,t=>t.slice(1).toUpperCase())),ki=/\B([A-Z])/g,Et=zn(e=>e.replace(ki,"-$1").toLowerCase()),Zn=zn(e=>e.charAt(0).toUpperCase()+e.slice(1)),fs=zn(e=>e?`on${Zn(e)}`:""),Ct=(e,t)=>!Object.is(e,t),On=(e,...t)=>{for(let n=0;n<e.length;n++)e[n](...t)},ir=(e,t,n,s=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},Qn=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Ai=e=>{const t=be(e)?Number(e):NaN;return isNaN(t)?e:t};let uo;const es=()=>uo||(uo=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function bn(e){if(G(e)){const t={};for(let n=0;n<e.length;n++){const s=e[n],o=be(s)?Ii(s):bn(s);if(o)for(const r in o)t[r]=o[r]}return t}else if(be(e)||de(e))return e}const Pi=/;(?![^(]*\))/g,Mi=/:([^]+)/,Oi=/\/\*[^]*?\*\//g;function Ii(e){const t={};return e.replace(Oi,"").split(Pi).forEach(n=>{if(n){const s=n.split(Mi);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function rt(e){let t="";if(be(e))t=e;else if(G(e))for(let n=0;n<e.length;n++){const s=rt(e[n]);s&&(t+=s+" ")}else if(de(e))for(const n in e)e[n]&&(t+=n+" ");return t.trim()}const Ri="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",Di=js(Ri);function lr(e){return!!e||e===""}function Li(e,t){if(e.length!==t.length)return!1;let n=!0;for(let s=0;n&&s<e.length;s++)n=ts(e[s],t[s]);return n}function ts(e,t){if(e===t)return!0;let n=co(e),s=co(t);if(n||s)return n&&s?e.getTime()===t.getTime():!1;if(n=ot(e),s=ot(t),n||s)return e===t;if(n=G(e),s=G(t),n||s)return n&&s?Li(e,t):!1;if(n=de(e),s=de(t),n||s){if(!n||!s)return!1;const o=Object.keys(e).length,r=Object.keys(t).length;if(o!==r)return!1;for(const i in e){const l=e.hasOwnProperty(i),a=t.hasOwnProperty(i);if(l&&!a||!l&&a||!ts(e[i],t[i]))return!1}}return String(e)===String(t)}function Fi(e,t){return e.findIndex(n=>ts(n,t))}const ar=e=>!!(e&&e.__v_isRef===!0),se=e=>be(e)?e:e==null?"":G(e)||de(e)&&(e.toString===or||!Z(e.toString))?ar(e)?se(e.value):JSON.stringify(e,cr,2):String(e),cr=(e,t)=>ar(t)?cr(e,t.value):Bt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,o],r)=>(n[ds(s,r)+" =>"]=o,n),{})}:Jn(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>ds(n))}:ot(t)?ds(t):de(t)&&!G(t)&&!rr(t)?String(t):t,ds=(e,t="")=>{var n;return ot(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};let Se;class ur{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=Se,!t&&Se&&(this.index=(Se.scopes||(Se.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[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)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[t].resume();for(t=0,n=this.effects.length;t<n;t++)this.effects[t].resume()}}run(t){if(this._active){const n=Se;try{return Se=this,t()}finally{Se=n}}}on(){++this._on===1&&(this.prevScope=Se,Se=this)}off(){this._on>0&&--this._on===0&&(Se=this.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){for(n=0,s=this.scopes.length;n<s;n++)this.scopes[n].stop(!0);this.scopes.length=0}if(!this.detached&&this.parent&&!t){const o=this.parent.scopes.pop();o&&o!==this&&(this.parent.scopes[this.index]=o,o.index=this.index)}this.parent=void 0}}}function fr(e){return new ur(e)}function dr(){return Se}function Ni(e,t=!1){Se&&Se.cleanups.push(e)}let he;const ps=new WeakSet;class pr{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,Se&&Se.active&&Se.effects.push(this)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,ps.has(this)&&(ps.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||mr(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,fo(this),gr(this);const t=he,n=Be;he=this,Be=!0;try{return this.fn()}finally{vr(this),he=t,Be=n,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)Bs(t);this.deps=this.depsTail=void 0,fo(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?ps.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){Cs(this)&&this.run()}get dirty(){return Cs(this)}}let hr=0,on,rn;function mr(e,t=!1){if(e.flags|=8,t){e.next=rn,rn=e;return}e.next=on,on=e}function Vs(){hr++}function Us(){if(--hr>0)return;if(rn){let t=rn;for(rn=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;on;){let t=on;for(on=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 gr(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function vr(e){let t,n=e.depsTail,s=n;for(;s;){const o=s.prevDep;s.version===-1?(s===n&&(n=o),Bs(s),ji(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=o}e.deps=t,e.depsTail=n}function Cs(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(yr(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function yr(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===pn)||(e.globalVersion=pn,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Cs(e))))return;e.flags|=2;const t=e.dep,n=he,s=Be;he=e,Be=!0;try{gr(e);const o=e.fn(e._value);(t.version===0||Ct(o,e._value))&&(e.flags|=128,e._value=o,t.version++)}catch(o){throw t.version++,o}finally{he=n,Be=s,vr(e),e.flags&=-3}}function Bs(e,t=!1){const{dep:n,prevSub:s,nextSub:o}=e;if(s&&(s.nextSub=o,e.prevSub=void 0),o&&(o.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)Bs(r,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function ji(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Be=!0;const br=[];function ft(){br.push(Be),Be=!1}function dt(){const e=br.pop();Be=e===void 0?!0:e}function fo(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=he;he=void 0;try{t()}finally{he=n}}}let pn=0;class Hi{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 Ws{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(!he||!Be||he===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==he)n=this.activeLink=new Hi(he,this),he.deps?(n.prevDep=he.depsTail,he.depsTail.nextDep=n,he.depsTail=n):he.deps=he.depsTail=n,_r(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=he.depsTail,n.nextDep=void 0,he.depsTail.nextDep=n,he.depsTail=n,he.deps===n&&(he.deps=s)}return n}trigger(t){this.version++,pn++,this.notify(t)}notify(t){Vs();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Us()}}}function _r(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)_r(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const Ln=new WeakMap,Rt=Symbol(""),Ss=Symbol(""),hn=Symbol("");function Ee(e,t,n){if(Be&&he){let s=Ln.get(e);s||Ln.set(e,s=new Map);let o=s.get(n);o||(s.set(n,o=new Ws),o.map=s,o.key=n),o.track()}}function at(e,t,n,s,o,r){const i=Ln.get(e);if(!i){pn++;return}const l=a=>{a&&a.trigger()};if(Vs(),t==="clear")i.forEach(l);else{const a=G(e),u=a&&Xn(n);if(a&&n==="length"){const c=Number(s);i.forEach((f,h)=>{(h==="length"||h===hn||!ot(h)&&h>=c)&&l(f)})}else switch((n!==void 0||i.has(void 0))&&l(i.get(n)),u&&l(i.get(hn)),t){case"add":a?u&&l(i.get("length")):(l(i.get(Rt)),Bt(e)&&l(i.get(Ss)));break;case"delete":a||(l(i.get(Rt)),Bt(e)&&l(i.get(Ss)));break;case"set":Bt(e)&&l(i.get(Rt));break}}Us()}function Ki(e,t){const n=Ln.get(e);return n&&n.get(t)}function jt(e){const t=le(e);return t===e?t:(Ee(t,"iterate",hn),Le(e)?t:t.map(We))}function ns(e){return Ee(e=le(e),"iterate",hn),e}function _t(e,t){return pt(e)?Yt(ut(e)?We(t):t):We(t)}const Vi={__proto__:null,[Symbol.iterator](){return hs(this,Symbol.iterator,e=>_t(this,e))},concat(...e){return jt(this).concat(...e.map(t=>G(t)?jt(t):t))},entries(){return hs(this,"entries",e=>(e[1]=_t(this,e[1]),e))},every(e,t){return it(this,"every",e,t,void 0,arguments)},filter(e,t){return it(this,"filter",e,t,n=>n.map(s=>_t(this,s)),arguments)},find(e,t){return it(this,"find",e,t,n=>_t(this,n),arguments)},findIndex(e,t){return it(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return it(this,"findLast",e,t,n=>_t(this,n),arguments)},findLastIndex(e,t){return it(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return it(this,"forEach",e,t,void 0,arguments)},includes(...e){return ms(this,"includes",e)},indexOf(...e){return ms(this,"indexOf",e)},join(e){return jt(this).join(e)},lastIndexOf(...e){return ms(this,"lastIndexOf",e)},map(e,t){return it(this,"map",e,t,void 0,arguments)},pop(){return Zt(this,"pop")},push(...e){return Zt(this,"push",e)},reduce(e,...t){return po(this,"reduce",e,t)},reduceRight(e,...t){return po(this,"reduceRight",e,t)},shift(){return Zt(this,"shift")},some(e,t){return it(this,"some",e,t,void 0,arguments)},splice(...e){return Zt(this,"splice",e)},toReversed(){return jt(this).toReversed()},toSorted(e){return jt(this).toSorted(e)},toSpliced(...e){return jt(this).toSpliced(...e)},unshift(...e){return Zt(this,"unshift",e)},values(){return hs(this,"values",e=>_t(this,e))}};function hs(e,t,n){const s=ns(e),o=s[t]();return s!==e&&!Le(e)&&(o._next=o.next,o.next=()=>{const r=o._next();return r.done||(r.value=n(r.value)),r}),o}const Ui=Array.prototype;function it(e,t,n,s,o,r){const i=ns(e),l=i!==e&&!Le(e),a=i[t];if(a!==Ui[t]){const f=a.apply(e,r);return l?We(f):f}let u=n;i!==e&&(l?u=function(f,h){return n.call(this,_t(e,f),h,e)}:n.length>2&&(u=function(f,h){return n.call(this,f,h,e)}));const c=a.call(i,u,s);return l&&o?o(c):c}function po(e,t,n,s){const o=ns(e);let r=n;return o!==e&&(Le(e)?n.length>3&&(r=function(i,l,a){return n.call(this,i,l,a,e)}):r=function(i,l,a){return n.call(this,i,_t(e,l),a,e)}),o[t](r,...s)}function ms(e,t,n){const s=le(e);Ee(s,"iterate",hn);const o=s[t](...n);return(o===-1||o===!1)&&os(n[0])?(n[0]=le(n[0]),s[t](...n)):o}function Zt(e,t,n=[]){ft(),Vs();const s=le(e)[t].apply(e,n);return Us(),dt(),s}const Bi=js("__proto__,__v_isRef,__isVue"),wr=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(ot));function Wi(e){ot(e)||(e=String(e));const t=le(this);return Ee(t,"has",e),t.hasOwnProperty(e)}class xr{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){if(n==="__v_skip")return t.__v_skip;const o=this._isReadonly,r=this._isShallow;if(n==="__v_isReactive")return!o;if(n==="__v_isReadonly")return o;if(n==="__v_isShallow")return r;if(n==="__v_raw")return s===(o?r?tl:Tr:r?Er:Sr).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const i=G(t);if(!o){let a;if(i&&(a=Vi[n]))return a;if(n==="hasOwnProperty")return Wi}const l=Reflect.get(t,n,ye(t)?t:s);if((ot(n)?wr.has(n):Bi(n))||(o||Ee(t,"get",n),r))return l;if(ye(l)){const a=i&&Xn(n)?l:l.value;return o&&de(a)?Ts(a):a}return de(l)?o?Ts(l):ss(l):l}}class Cr extends xr{constructor(t=!1){super(!1,t)}set(t,n,s,o){let r=t[n];const i=G(t)&&Xn(n);if(!this._isShallow){const u=pt(r);if(!Le(s)&&!pt(s)&&(r=le(r),s=le(s)),!i&&ye(r)&&!ye(s))return u||(r.value=s),!0}const l=i?Number(n)<t.length:ce(t,n),a=Reflect.set(t,n,s,ye(t)?t:o);return t===le(o)&&(l?Ct(s,r)&&at(t,"set",n,s):at(t,"add",n,s)),a}deleteProperty(t,n){const s=ce(t,n);t[n];const o=Reflect.deleteProperty(t,n);return o&&s&&at(t,"delete",n,void 0),o}has(t,n){const s=Reflect.has(t,n);return(!ot(n)||!wr.has(n))&&Ee(t,"has",n),s}ownKeys(t){return Ee(t,"iterate",G(t)?"length":Rt),Reflect.ownKeys(t)}}class qi extends xr{constructor(t=!1){super(!0,t)}set(t,n){return!0}deleteProperty(t,n){return!0}}const Yi=new Cr,Gi=new qi,Ji=new Cr(!0);const Es=e=>e,Tn=e=>Reflect.getPrototypeOf(e);function Xi(e,t,n){return function(...s){const o=this.__v_raw,r=le(o),i=Bt(r),l=e==="entries"||e===Symbol.iterator&&i,a=e==="keys"&&i,u=o[e](...s),c=n?Es:t?Yt:We;return!t&&Ee(r,"iterate",a?Ss:Rt),xe(Object.create(u),{next(){const{value:f,done:h}=u.next();return h?{value:f,done:h}:{value:l?[c(f[0]),c(f[1])]:c(f),done:h}}})}}function $n(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function zi(e,t){const n={get(o){const r=this.__v_raw,i=le(r),l=le(o);e||(Ct(o,l)&&Ee(i,"get",o),Ee(i,"get",l));const{has:a}=Tn(i),u=t?Es:e?Yt:We;if(a.call(i,o))return u(r.get(o));if(a.call(i,l))return u(r.get(l));r!==i&&r.get(o)},get size(){const o=this.__v_raw;return!e&&Ee(le(o),"iterate",Rt),o.size},has(o){const r=this.__v_raw,i=le(r),l=le(o);return e||(Ct(o,l)&&Ee(i,"has",o),Ee(i,"has",l)),o===l?r.has(o):r.has(o)||r.has(l)},forEach(o,r){const i=this,l=i.__v_raw,a=le(l),u=t?Es:e?Yt:We;return!e&&Ee(a,"iterate",Rt),l.forEach((c,f)=>o.call(r,u(c),u(f),i))}};return xe(n,e?{add:$n("add"),set:$n("set"),delete:$n("delete"),clear:$n("clear")}:{add(o){!t&&!Le(o)&&!pt(o)&&(o=le(o));const r=le(this);return Tn(r).has.call(r,o)||(r.add(o),at(r,"add",o,o)),this},set(o,r){!t&&!Le(r)&&!pt(r)&&(r=le(r));const i=le(this),{has:l,get:a}=Tn(i);let u=l.call(i,o);u||(o=le(o),u=l.call(i,o));const c=a.call(i,o);return i.set(o,r),u?Ct(r,c)&&at(i,"set",o,r):at(i,"add",o,r),this},delete(o){const r=le(this),{has:i,get:l}=Tn(r);let a=i.call(r,o);a||(o=le(o),a=i.call(r,o)),l&&l.call(r,o);const u=r.delete(o);return a&&at(r,"delete",o,void 0),u},clear(){const o=le(this),r=o.size!==0,i=o.clear();return r&&at(o,"clear",void 0,void 0),i}}),["keys","values","entries",Symbol.iterator].forEach(o=>{n[o]=Xi(o,e,t)}),n}function qs(e,t){const n=zi(e,t);return(s,o,r)=>o==="__v_isReactive"?!e:o==="__v_isReadonly"?e:o==="__v_raw"?s:Reflect.get(ce(n,o)&&o in s?n:s,o,r)}const Zi={get:qs(!1,!1)},Qi={get:qs(!1,!0)},el={get:qs(!0,!1)};const Sr=new WeakMap,Er=new WeakMap,Tr=new WeakMap,tl=new WeakMap;function nl(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function sl(e){return e.__v_skip||!Object.isExtensible(e)?0:nl(Ti(e))}function ss(e){return pt(e)?e:Ys(e,!1,Yi,Zi,Sr)}function ol(e){return Ys(e,!1,Ji,Qi,Er)}function Ts(e){return Ys(e,!0,Gi,el,Tr)}function Ys(e,t,n,s,o){if(!de(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const r=sl(e);if(r===0)return e;const i=o.get(e);if(i)return i;const l=new Proxy(e,r===2?s:n);return o.set(e,l),l}function ut(e){return pt(e)?ut(e.__v_raw):!!(e&&e.__v_isReactive)}function pt(e){return!!(e&&e.__v_isReadonly)}function Le(e){return!!(e&&e.__v_isShallow)}function os(e){return e?!!e.__v_raw:!1}function le(e){const t=e&&e.__v_raw;return t?le(t):e}function Gs(e){return!ce(e,"__v_skip")&&Object.isExtensible(e)&&ir(e,"__v_skip",!0),e}const We=e=>de(e)?ss(e):e,Yt=e=>de(e)?Ts(e):e;function ye(e){return e?e.__v_isRef===!0:!1}function B(e){return $r(e,!1)}function rl(e){return $r(e,!0)}function $r(e,t){return ye(e)?e:new il(e,t)}class il{constructor(t,n){this.dep=new Ws,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:le(t),this._value=n?t:We(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,s=this.__v_isShallow||Le(t)||pt(t);t=s?t:le(t),Ct(t,n)&&(this._rawValue=t,this._value=s?t:We(t),this.dep.trigger())}}function ge(e){return ye(e)?e.value:e}const ll={get:(e,t,n)=>t==="__v_raw"?e:ge(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const o=e[t];return ye(o)&&!ye(n)?(o.value=n,!0):Reflect.set(e,t,n,s)}};function kr(e){return ut(e)?e:new Proxy(e,ll)}function al(e){const t=G(e)?new Array(e.length):{};for(const n in e)t[n]=ul(e,n);return t}class cl{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,this.__v_isRef=!0,this._value=void 0,this._raw=le(t);let o=!0,r=t;if(!G(t)||!Xn(String(n)))do o=!os(r)||Le(r);while(o&&(r=r.__v_raw));this._shallow=o}get value(){let t=this._object[this._key];return this._shallow&&(t=ge(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&ye(this._raw[this._key])){const n=this._object[this._key];if(ye(n)){n.value=t;return}}this._object[this._key]=t}get dep(){return Ki(this._raw,this._key)}}function ul(e,t,n){return new cl(e,t,n)}class fl{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new Ws(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=pn-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&he!==this)return mr(this,!0),!0}get value(){const t=this.dep.track();return yr(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function dl(e,t,n=!1){let s,o;return Z(e)?s=e:(s=e.get,o=e.set),new fl(s,o,n)}const kn={},Fn=new WeakMap;let Mt;function pl(e,t=!1,n=Mt){if(n){let s=Fn.get(n);s||Fn.set(n,s=[]),s.push(e)}}function hl(e,t,n=fe){const{immediate:s,deep:o,once:r,scheduler:i,augmentJob:l,call:a}=n,u=O=>o?O:Le(O)||o===!1||o===0?ct(O,1):ct(O);let c,f,h,v,C=!1,m=!1;if(ye(e)?(f=()=>e.value,C=Le(e)):ut(e)?(f=()=>u(e),C=!0):G(e)?(m=!0,C=e.some(O=>ut(O)||Le(O)),f=()=>e.map(O=>{if(ye(O))return O.value;if(ut(O))return u(O);if(Z(O))return a?a(O,2):O()})):Z(e)?t?f=a?()=>a(e,2):e:f=()=>{if(h){ft();try{h()}finally{dt()}}const O=Mt;Mt=c;try{return a?a(e,3,[v]):e(v)}finally{Mt=O}}:f=tt,t&&o){const O=f,H=o===!0?1/0:o;f=()=>ct(O(),H)}const $=dr(),g=()=>{c.stop(),$&&$.active&&Ks($.effects,c)};if(r&&t){const O=t;t=(...H)=>{O(...H),g()}}let w=m?new Array(e.length).fill(kn):kn;const k=O=>{if(!(!(c.flags&1)||!c.dirty&&!O))if(t){const H=c.run();if(o||C||(m?H.some((te,ne)=>Ct(te,w[ne])):Ct(H,w))){h&&h();const te=Mt;Mt=c;try{const ne=[H,w===kn?void 0:m&&w[0]===kn?[]:w,v];w=H,a?a(t,3,ne):t(...ne)}finally{Mt=te}}}else c.run()};return l&&l(k),c=new pr(f),c.scheduler=i?()=>i(k,!1):k,v=O=>pl(O,!1,c),h=c.onStop=()=>{const O=Fn.get(c);if(O){if(a)a(O,4);else for(const H of O)H();Fn.delete(c)}},t?s?k(!0):w=c.run():i?i(k.bind(null,!0),!0):c.run(),g.pause=c.pause.bind(c),g.resume=c.resume.bind(c),g.stop=g,g}function ct(e,t=1/0,n){if(t<=0||!de(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,ye(e))ct(e.value,t,n);else if(G(e))for(let s=0;s<e.length;s++)ct(e[s],t,n);else if(Jn(e)||Bt(e))e.forEach(s=>{ct(s,t,n)});else if(rr(e)){for(const s in e)ct(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&ct(e[s],t,n)}return e}function _n(e,t,n,s){try{return s?e(...s):e()}catch(o){wn(o,t,n)}}function qe(e,t,n,s){if(Z(e)){const o=_n(e,t,n,s);return o&&sr(o)&&o.catch(r=>{wn(r,t,n)}),o}if(G(e)){const o=[];for(let r=0;r<e.length;r++)o.push(qe(e[r],t,n,s));return o}}function wn(e,t,n,s=!0){const o=t?t.vnode:null,{errorHandler:r,throwUnhandledErrorInProduction:i}=t&&t.appContext.config||fe;if(t){let l=t.parent;const a=t.proxy,u=`https://vuejs.org/error-reference/#runtime-${n}`;for(;l;){const c=l.ec;if(c){for(let f=0;f<c.length;f++)if(c[f](e,a,u)===!1)return}l=l.parent}if(r){ft(),_n(r,null,10,[e,a,u]),dt();return}}ml(e,n,o,s,i)}function ml(e,t,n,s=!0,o=!1){if(o)throw e;console.error(e)}const Ae=[];let Qe=-1;const Wt=[];let wt=null,Kt=0;const Ar=Promise.resolve();let Nn=null;function Ft(e){const t=Nn||Ar;return e?t.then(this?e.bind(this):e):t}function gl(e){let t=Qe+1,n=Ae.length;for(;t<n;){const s=t+n>>>1,o=Ae[s],r=mn(o);r<e||r===e&&o.flags&2?t=s+1:n=s}return t}function Js(e){if(!(e.flags&1)){const t=mn(e),n=Ae[Ae.length-1];!n||!(e.flags&2)&&t>=mn(n)?Ae.push(e):Ae.splice(gl(t),0,e),e.flags|=1,Pr()}}function Pr(){Nn||(Nn=Ar.then(Or))}function vl(e){G(e)?Wt.push(...e):wt&&e.id===-1?wt.splice(Kt+1,0,e):e.flags&1||(Wt.push(e),e.flags|=1),Pr()}function ho(e,t,n=Qe+1){for(;n<Ae.length;n++){const s=Ae[n];if(s&&s.flags&2){if(e&&s.id!==e.uid)continue;Ae.splice(n,1),n--,s.flags&4&&(s.flags&=-2),s(),s.flags&4||(s.flags&=-2)}}}function Mr(e){if(Wt.length){const t=[...new Set(Wt)].sort((n,s)=>mn(n)-mn(s));if(Wt.length=0,wt){wt.push(...t);return}for(wt=t,Kt=0;Kt<wt.length;Kt++){const n=wt[Kt];n.flags&4&&(n.flags&=-2),n.flags&8||n(),n.flags&=-2}wt=null,Kt=0}}const mn=e=>e.id==null?e.flags&2?-1:1/0:e.id;function Or(e){try{for(Qe=0;Qe<Ae.length;Qe++){const t=Ae[Qe];t&&!(t.flags&8)&&(t.flags&4&&(t.flags&=-2),_n(t,t.i,t.i?15:14),t.flags&4||(t.flags&=-2))}}finally{for(;Qe<Ae.length;Qe++){const t=Ae[Qe];t&&(t.flags&=-2)}Qe=-1,Ae.length=0,Mr(),Nn=null,(Ae.length||Wt.length)&&Or()}}let Re=null,Ir=null;function jn(e){const t=Re;return Re=e,Ir=e&&e.type.__scopeId||null,t}function Rr(e,t=Re,n){if(!t||e._n)return e;const s=(...o)=>{s._d&&Ao(-1);const r=jn(t);let i;try{i=e(...o)}finally{jn(r),s._d&&Ao(1)}return i};return s._n=!0,s._c=!0,s._d=!0,s}function Ue(e,t){if(Re===null)return e;const n=as(Re),s=e.dirs||(e.dirs=[]);for(let o=0;o<t.length;o++){let[r,i,l,a=fe]=t[o];r&&(Z(r)&&(r={mounted:r,updated:r}),r.deep&&ct(i),s.push({dir:r,instance:n,value:i,oldValue:void 0,arg:l,modifiers:a}))}return e}function kt(e,t,n,s){const o=e.dirs,r=t&&t.dirs;for(let i=0;i<o.length;i++){const l=o[i];r&&(l.oldValue=r[i].value);let a=l.dir[s];a&&(ft(),qe(a,n,8,[e.el,l,e,t]),dt())}}function Dr(e,t){if(Ce){let n=Ce.provides;const s=Ce.parent&&Ce.parent.provides;s===n&&(n=Ce.provides=Object.create(s)),n[e]=t}}function St(e,t,n=!1){const s=no();if(s||Dt){let o=Dt?Dt._context.provides:s?s.parent==null||s.ce?s.vnode.appContext&&s.vnode.appContext.provides:s.parent.provides:void 0;if(o&&e in o)return o[e];if(arguments.length>1)return n&&Z(t)?t.call(s&&s.proxy):t}}function yl(){return!!(no()||Dt)}const bl=Symbol.for("v-scx"),_l=()=>St(bl);function nt(e,t,n){return Lr(e,t,n)}function Lr(e,t,n=fe){const{immediate:s,deep:o,flush:r,once:i}=n,l=xe({},n),a=t&&s||!t&&r!=="post";let u;if(Gt){if(r==="sync"){const v=_l();u=v.__watcherHandles||(v.__watcherHandles=[])}else if(!a){const v=()=>{};return v.stop=tt,v.resume=tt,v.pause=tt,v}}const c=Ce;l.call=(v,C,m)=>qe(v,c,C,m);let f=!1;r==="post"?l.scheduler=v=>{ke(v,c&&c.suspense)}:r!=="sync"&&(f=!0,l.scheduler=(v,C)=>{C?v():Js(v)}),l.augmentJob=v=>{t&&(v.flags|=4),f&&(v.flags|=2,c&&(v.id=c.uid,v.i=c))};const h=hl(e,t,l);return Gt&&(u?u.push(h):a&&h()),h}function wl(e,t,n){const s=this.proxy,o=be(e)?e.includes(".")?Fr(s,e):()=>s[e]:e.bind(s,s);let r;Z(t)?r=t:(r=t.handler,n=t);const i=Cn(this),l=Lr(o,r.bind(s),n);return i(),l}function Fr(e,t){const n=t.split(".");return()=>{let s=e;for(let o=0;o<n.length&&s;o++)s=s[n[o]];return s}}const Nr=Symbol("_vte"),xl=e=>e.__isTeleport,ln=e=>e&&(e.disabled||e.disabled===""),mo=e=>e&&(e.defer||e.defer===""),go=e=>typeof SVGElement<"u"&&e instanceof SVGElement,vo=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,$s=(e,t)=>{const n=e&&e.to;return be(n)?t?t(n):null:n},jr={name:"Teleport",__isTeleport:!0,process(e,t,n,s,o,r,i,l,a,u){const{mc:c,pc:f,pbc:h,o:{insert:v,querySelector:C,createText:m,createComment:$}}=u,g=ln(t.props);let{shapeFlag:w,children:k,dynamicChildren:O}=t;if(e==null){const H=t.el=m(""),te=t.anchor=m("");v(H,n,s),v(te,n,s);const ne=(P,U)=>{w&16&&c(k,P,U,o,r,i,l,a)},W=()=>{const P=t.target=$s(t.props,C),U=Kr(P,t,m,v);P&&(i!=="svg"&&go(P)?i="svg":i!=="mathml"&&vo(P)&&(i="mathml"),o&&o.isCE&&(o.ce._teleportTargets||(o.ce._teleportTargets=new Set)).add(P),g||(ne(P,U),In(t,!1)))};g&&(ne(n,te),In(t,!0)),mo(t.props)?(t.el.__isMounted=!1,ke(()=>{W(),delete t.el.__isMounted},r)):W()}else{if(mo(t.props)&&e.el.__isMounted===!1){ke(()=>{jr.process(e,t,n,s,o,r,i,l,a,u)},r);return}t.el=e.el,t.targetStart=e.targetStart;const H=t.anchor=e.anchor,te=t.target=e.target,ne=t.targetAnchor=e.targetAnchor,W=ln(e.props),P=W?n:te,U=W?H:ne;if(i==="svg"||go(te)?i="svg":(i==="mathml"||vo(te))&&(i="mathml"),O?(h(e.dynamicChildren,O,P,o,r,i,l),eo(e,t,!0)):a||f(e,t,P,U,o,r,i,l,!1),g)W?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):An(t,n,H,u,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const N=t.target=$s(t.props,C);N&&An(t,N,null,u,0)}else W&&An(t,te,ne,u,1);In(t,g)}},remove(e,t,n,{um:s,o:{remove:o}},r){const{shapeFlag:i,children:l,anchor:a,targetStart:u,targetAnchor:c,target:f,props:h}=e;if(f&&(o(u),o(c)),r&&o(a),i&16){const v=r||!ln(h);for(let C=0;C<l.length;C++){const m=l[C];s(m,t,n,v,!!m.dynamicChildren)}}},move:An,hydrate:Cl};function An(e,t,n,{o:{insert:s},m:o},r=2){r===0&&s(e.targetAnchor,t,n);const{el:i,anchor:l,shapeFlag:a,children:u,props:c}=e,f=r===2;if(f&&s(i,t,n),(!f||ln(c))&&a&16)for(let h=0;h<u.length;h++)o(u[h],t,n,2);f&&s(l,t,n)}function Cl(e,t,n,s,o,r,{o:{nextSibling:i,parentNode:l,querySelector:a,insert:u,createText:c}},f){function h(m,$,g,w){$.anchor=f(i(m),$,l(m),n,s,o,r),$.targetStart=g,$.targetAnchor=w}const v=t.target=$s(t.props,a),C=ln(t.props);if(v){const m=v._lpa||v.firstChild;if(t.shapeFlag&16)if(C)h(e,t,m,m&&i(m));else{t.anchor=i(e);let $=m;for(;$;){if($&&$.nodeType===8){if($.data==="teleport start anchor")t.targetStart=$;else if($.data==="teleport anchor"){t.targetAnchor=$,v._lpa=t.targetAnchor&&i(t.targetAnchor);break}}$=i($)}t.targetAnchor||Kr(v,t,c,u),f(m&&i(m),t,v,n,s,o,r)}In(t,C)}else C&&t.shapeFlag&16&&h(e,t,e,i(e));return t.anchor&&i(t.anchor)}const Hr=jr;function In(e,t){const n=e.ctx;if(n&&n.ut){let s,o;for(t?(s=e.el,o=e.anchor):(s=e.targetStart,o=e.targetAnchor);s&&s!==o;)s.nodeType===1&&s.setAttribute("data-v-owner",n.uid),s=s.nextSibling;n.ut()}}function Kr(e,t,n,s){const o=t.targetStart=n(""),r=t.targetAnchor=n("");return o[Nr]=r,e&&(s(o,e),s(r,e)),r}const Ot=Symbol("_leaveCb"),Pn=Symbol("_enterCb");function Sl(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return Tt(()=>{e.isMounted=!0}),Nt(()=>{e.isUnmounting=!0}),e}const Ne=[Function,Array],El={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Ne,onEnter:Ne,onAfterEnter:Ne,onEnterCancelled:Ne,onBeforeLeave:Ne,onLeave:Ne,onAfterLeave:Ne,onLeaveCancelled:Ne,onBeforeAppear:Ne,onAppear:Ne,onAfterAppear:Ne,onAppearCancelled:Ne};function Tl(e,t){const{leavingVNodes:n}=e;let s=n.get(t.type);return s||(s=Object.create(null),n.set(t.type,s)),s}function ks(e,t,n,s,o){const{appear:r,mode:i,persisted:l=!1,onBeforeEnter:a,onEnter:u,onAfterEnter:c,onEnterCancelled:f,onBeforeLeave:h,onLeave:v,onAfterLeave:C,onLeaveCancelled:m,onBeforeAppear:$,onAppear:g,onAfterAppear:w,onAppearCancelled:k}=t,O=String(e.key),H=Tl(n,e),te=(P,U)=>{P&&qe(P,s,9,U)},ne=(P,U)=>{const N=U[1];te(P,U),G(P)?P.every(_=>_.length<=1)&&N():P.length<=1&&N()},W={mode:i,persisted:l,beforeEnter(P){let U=a;if(!n.isMounted)if(r)U=$||a;else return;P[Ot]&&P[Ot](!0);const N=H[O];N&&Vt(e,N)&&N.el[Ot]&&N.el[Ot](),te(U,[P])},enter(P){let U=u,N=c,_=f;if(!n.isMounted)if(r)U=g||u,N=w||c,_=k||f;else return;let V=!1;const X=P[Pn]=oe=>{V||(V=!0,oe?te(_,[P]):te(N,[P]),W.delayedLeave&&W.delayedLeave(),P[Pn]=void 0)};U?ne(U,[P,X]):X()},leave(P,U){const N=String(e.key);if(P[Pn]&&P[Pn](!0),n.isUnmounting)return U();te(h,[P]);let _=!1;const V=P[Ot]=X=>{_||(_=!0,U(),X?te(m,[P]):te(C,[P]),P[Ot]=void 0,H[N]===e&&delete H[N])};H[N]=e,v?ne(v,[P,V]):V()},clone(P){return ks(P,t,n,s)}};return W}function gn(e,t){e.shapeFlag&6&&e.component?(e.transition=t,gn(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Vr(e,t=!1,n){let s=[],o=0;for(let r=0;r<e.length;r++){let i=e[r];const l=n==null?i.key:String(n)+String(i.key!=null?i.key:r);i.type===ve?(i.patchFlag&128&&o++,s=s.concat(Vr(i.children,t,l))):(t||i.type!==ht)&&s.push(l!=null?Lt(i,{key:l}):i)}if(o>1)for(let r=0;r<s.length;r++)s[r].patchFlag=-2;return s}function $l(e,t){return Z(e)?xe({name:e.name},t,{setup:e}):e}function Xs(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}const Hn=new WeakMap;function an(e,t,n,s,o=!1){if(G(e)){e.forEach((C,m)=>an(C,t&&(G(t)?t[m]:t),n,s,o));return}if(cn(s)&&!o){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&an(e,t,n,s.component.subTree);return}const r=s.shapeFlag&4?as(s.component):s.el,i=o?null:r,{i:l,r:a}=e,u=t&&t.r,c=l.refs===fe?l.refs={}:l.refs,f=l.setupState,h=le(f),v=f===fe?nr:C=>ce(h,C);if(u!=null&&u!==a){if(yo(t),be(u))c[u]=null,v(u)&&(f[u]=null);else if(ye(u)){u.value=null;const C=t;C.k&&(c[C.k]=null)}}if(Z(a))_n(a,l,12,[i,c]);else{const C=be(a),m=ye(a);if(C||m){const $=()=>{if(e.f){const g=C?v(a)?f[a]:c[a]:a.value;if(o)G(g)&&Ks(g,r);else if(G(g))g.includes(r)||g.push(r);else if(C)c[a]=[r],v(a)&&(f[a]=c[a]);else{const w=[r];a.value=w,e.k&&(c[e.k]=w)}}else C?(c[a]=i,v(a)&&(f[a]=i)):m&&(a.value=i,e.k&&(c[e.k]=i))};if(i){const g=()=>{$(),Hn.delete(e)};g.id=-1,Hn.set(e,g),ke(g,n)}else yo(e),$()}}}function yo(e){const t=Hn.get(e);t&&(t.flags|=8,Hn.delete(e))}const bo=e=>e.nodeType===8;es().requestIdleCallback;es().cancelIdleCallback;function kl(e,t){if(bo(e)&&e.data==="["){let n=1,s=e.nextSibling;for(;s;){if(s.nodeType===1){if(t(s)===!1)break}else if(bo(s))if(s.data==="]"){if(--n===0)break}else s.data==="["&&n++;s=s.nextSibling}}else t(e)}const cn=e=>!!e.type.__asyncLoader;function Al(e){Z(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:s,delay:o=200,hydrate:r,timeout:i,suspensible:l=!0,onError:a}=e;let u=null,c,f=0;const h=()=>(f++,u=null,v()),v=()=>{let C;return u||(C=u=t().catch(m=>{if(m=m instanceof Error?m:new Error(String(m)),a)return new Promise(($,g)=>{a(m,()=>$(h()),()=>g(m),f+1)});throw m}).then(m=>C!==u&&u?u:(m&&(m.__esModule||m[Symbol.toStringTag]==="Module")&&(m=m.default),c=m,m)))};return $l({name:"AsyncComponentWrapper",__asyncLoader:v,__asyncHydrate(C,m,$){let g=!1;(m.bu||(m.bu=[])).push(()=>g=!0);const w=()=>{g||$()},k=r?()=>{const O=r(w,H=>kl(C,H));O&&(m.bum||(m.bum=[])).push(O)}:w;c?k():v().then(()=>!m.isUnmounted&&k())},get __asyncResolved(){return c},setup(){const C=Ce;if(Xs(C),c)return()=>Mn(c,C);const m=k=>{u=null,wn(k,C,13,!s)};if(l&&C.suspense||Gt)return v().then(k=>()=>Mn(k,C)).catch(k=>(m(k),()=>s?_e(s,{error:k}):null));const $=B(!1),g=B(),w=B(!!o);return o&&setTimeout(()=>{w.value=!1},o),i!=null&&setTimeout(()=>{if(!$.value&&!g.value){const k=new Error(`Async component timed out after ${i}ms.`);m(k),g.value=k}},i),v().then(()=>{$.value=!0,C.parent&&zs(C.parent.vnode)&&C.parent.update()}).catch(k=>{m(k),g.value=k}),()=>{if($.value&&c)return Mn(c,C);if(g.value&&s)return _e(s,{error:g.value});if(n&&!w.value)return Mn(n,C)}}})}function Mn(e,t){const{ref:n,props:s,children:o,ce:r}=t.vnode,i=_e(e,s,o);return i.ref=n,i.ce=r,delete t.vnode.ce,i}const zs=e=>e.type.__isKeepAlive;function Pl(e,t){Ur(e,"a",t)}function Ml(e,t){Ur(e,"da",t)}function Ur(e,t,n=Ce){const s=e.__wdc||(e.__wdc=()=>{let o=n;for(;o;){if(o.isDeactivated)return;o=o.parent}return e()});if(rs(t,s,n),n){let o=n.parent;for(;o&&o.parent;)zs(o.parent.vnode)&&Ol(s,t,n,o),o=o.parent}}function Ol(e,t,n,s){const o=rs(t,e,s,!0);Wr(()=>{Ks(s[t],o)},n)}function rs(e,t,n=Ce,s=!1){if(n){const o=n[e]||(n[e]=[]),r=t.__weh||(t.__weh=(...i)=>{ft();const l=Cn(n),a=qe(t,n,e,i);return l(),dt(),a});return s?o.unshift(r):o.push(r),r}}const mt=e=>(t,n=Ce)=>{(!Gt||e==="sp")&&rs(e,(...s)=>t(...s),n)},Il=mt("bm"),Tt=mt("m"),Rl=mt("bu"),Br=mt("u"),Nt=mt("bum"),Wr=mt("um"),Dl=mt("sp"),Ll=mt("rtg"),Fl=mt("rtc");function Nl(e,t=Ce){rs("ec",e,t)}const jl="components";function Hl(e,t){return Vl(jl,e,!0,t)||e}const Kl=Symbol.for("v-ndc");function Vl(e,t,n=!0,s=!1){const o=Re||Ce;if(o){const r=o.type;{const l=Ta(r,!1);if(l&&(l===t||l===Ke(t)||l===Zn(Ke(t))))return r}const i=_o(o[e]||r[e],t)||_o(o.appContext[e],t);return!i&&s?r:i}}function _o(e,t){return e&&(e[t]||e[Ke(t)]||e[Zn(Ke(t))])}function xn(e,t,n,s){let o;const r=n,i=G(e);if(i||be(e)){const l=i&&ut(e);let a=!1,u=!1;l&&(a=!Le(e),u=pt(e),e=ns(e)),o=new Array(e.length);for(let c=0,f=e.length;c<f;c++)o[c]=t(a?u?Yt(We(e[c])):We(e[c]):e[c],c,void 0,r)}else if(typeof e=="number"){o=new Array(e);for(let l=0;l<e;l++)o[l]=t(l+1,l,void 0,r)}else if(de(e))if(e[Symbol.iterator])o=Array.from(e,(l,a)=>t(l,a,void 0,r));else{const l=Object.keys(e);o=new Array(l.length);for(let a=0,u=l.length;a<u;a++){const c=l[a];o[a]=t(e[c],c,a,r)}}else o=[];return o}const As=e=>e?ui(e)?as(e):As(e.parent):null,un=xe(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=>As(e.parent),$root:e=>As(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Yr(e),$forceUpdate:e=>e.f||(e.f=()=>{Js(e.update)}),$nextTick:e=>e.n||(e.n=Ft.bind(e.proxy)),$watch:e=>wl.bind(e)}),gs=(e,t)=>e!==fe&&!e.__isScriptSetup&&ce(e,t),Ul={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:o,props:r,accessCache:i,type:l,appContext:a}=e;if(t[0]!=="$"){const h=i[t];if(h!==void 0)switch(h){case 1:return s[t];case 2:return o[t];case 4:return n[t];case 3:return r[t]}else{if(gs(s,t))return i[t]=1,s[t];if(o!==fe&&ce(o,t))return i[t]=2,o[t];if(ce(r,t))return i[t]=3,r[t];if(n!==fe&&ce(n,t))return i[t]=4,n[t];Ps&&(i[t]=0)}}const u=un[t];let c,f;if(u)return t==="$attrs"&&Ee(e.attrs,"get",""),u(e);if((c=l.__cssModules)&&(c=c[t]))return c;if(n!==fe&&ce(n,t))return i[t]=4,n[t];if(f=a.config.globalProperties,ce(f,t))return f[t]},set({_:e},t,n){const{data:s,setupState:o,ctx:r}=e;return gs(o,t)?(o[t]=n,!0):s!==fe&&ce(s,t)?(s[t]=n,!0):ce(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:o,props:r,type:i}},l){let a;return!!(n[l]||e!==fe&&l[0]!=="$"&&ce(e,l)||gs(t,l)||ce(r,l)||ce(s,l)||ce(un,l)||ce(o.config.globalProperties,l)||(a=i.__cssModules)&&a[l])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:ce(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function wo(e){return G(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Ps=!0;function Bl(e){const t=Yr(e),n=e.proxy,s=e.ctx;Ps=!1,t.beforeCreate&&xo(t.beforeCreate,e,"bc");const{data:o,computed:r,methods:i,watch:l,provide:a,inject:u,created:c,beforeMount:f,mounted:h,beforeUpdate:v,updated:C,activated:m,deactivated:$,beforeDestroy:g,beforeUnmount:w,destroyed:k,unmounted:O,render:H,renderTracked:te,renderTriggered:ne,errorCaptured:W,serverPrefetch:P,expose:U,inheritAttrs:N,components:_,directives:V,filters:X}=t;if(u&&Wl(u,s,null),i)for(const Q in i){const A=i[Q];Z(A)&&(s[Q]=A.bind(n))}if(o){const Q=o.call(n,n);de(Q)&&(e.data=ss(Q))}if(Ps=!0,r)for(const Q in r){const A=r[Q],L=Z(A)?A.bind(n,n):Z(A.get)?A.get.bind(n,n):tt,ee=!Z(A)&&Z(A.set)?A.set.bind(n):tt,me=st({get:L,set:ee});Object.defineProperty(s,Q,{enumerable:!0,configurable:!0,get:()=>me.value,set:Fe=>me.value=Fe})}if(l)for(const Q in l)qr(l[Q],s,n,Q);if(a){const Q=Z(a)?a.call(n):a;Reflect.ownKeys(Q).forEach(A=>{Dr(A,Q[A])})}c&&xo(c,e,"c");function re(Q,A){G(A)?A.forEach(L=>Q(L.bind(n))):A&&Q(A.bind(n))}if(re(Il,f),re(Tt,h),re(Rl,v),re(Br,C),re(Pl,m),re(Ml,$),re(Nl,W),re(Fl,te),re(Ll,ne),re(Nt,w),re(Wr,O),re(Dl,P),G(U))if(U.length){const Q=e.exposed||(e.exposed={});U.forEach(A=>{Object.defineProperty(Q,A,{get:()=>n[A],set:L=>n[A]=L,enumerable:!0})})}else e.exposed||(e.exposed={});H&&e.render===tt&&(e.render=H),N!=null&&(e.inheritAttrs=N),_&&(e.components=_),V&&(e.directives=V),P&&Xs(e)}function Wl(e,t,n=tt){G(e)&&(e=Ms(e));for(const s in e){const o=e[s];let r;de(o)?"default"in o?r=St(o.from||s,o.default,!0):r=St(o.from||s):r=St(o),ye(r)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>r.value,set:i=>r.value=i}):t[s]=r}}function xo(e,t,n){qe(G(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function qr(e,t,n,s){let o=s.includes(".")?Fr(n,s):()=>n[s];if(be(e)){const r=t[e];Z(r)&&nt(o,r)}else if(Z(e))nt(o,e.bind(n));else if(de(e))if(G(e))e.forEach(r=>qr(r,t,n,s));else{const r=Z(e.handler)?e.handler.bind(n):t[e.handler];Z(r)&&nt(o,r,e)}}function Yr(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:o,optionsCache:r,config:{optionMergeStrategies:i}}=e.appContext,l=r.get(t);let a;return l?a=l:!o.length&&!n&&!s?a=t:(a={},o.length&&o.forEach(u=>Kn(a,u,i,!0)),Kn(a,t,i)),de(t)&&r.set(t,a),a}function Kn(e,t,n,s=!1){const{mixins:o,extends:r}=t;r&&Kn(e,r,n,!0),o&&o.forEach(i=>Kn(e,i,n,!0));for(const i in t)if(!(s&&i==="expose")){const l=ql[i]||n&&n[i];e[i]=l?l(e[i],t[i]):t[i]}return e}const ql={data:Co,props:So,emits:So,methods:tn,computed:tn,beforeCreate:$e,created:$e,beforeMount:$e,mounted:$e,beforeUpdate:$e,updated:$e,beforeDestroy:$e,beforeUnmount:$e,destroyed:$e,unmounted:$e,activated:$e,deactivated:$e,errorCaptured:$e,serverPrefetch:$e,components:tn,directives:tn,watch:Gl,provide:Co,inject:Yl};function Co(e,t){return t?e?function(){return xe(Z(e)?e.call(this,this):e,Z(t)?t.call(this,this):t)}:t:e}function Yl(e,t){return tn(Ms(e),Ms(t))}function Ms(e){if(G(e)){const t={};for(let n=0;n<e.length;n++)t[e[n]]=e[n];return t}return e}function $e(e,t){return e?[...new Set([].concat(e,t))]:t}function tn(e,t){return e?xe(Object.create(null),e,t):t}function So(e,t){return e?G(e)&&G(t)?[...new Set([...e,...t])]:xe(Object.create(null),wo(e),wo(t??{})):t}function Gl(e,t){if(!e)return t;if(!t)return e;const n=xe(Object.create(null),e);for(const s in t)n[s]=$e(e[s],t[s]);return n}function Gr(){return{app:null,config:{isNativeTag:nr,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 Jl=0;function Xl(e,t){return function(s,o=null){Z(s)||(s=xe({},s)),o!=null&&!de(o)&&(o=null);const r=Gr(),i=new WeakSet,l=[];let a=!1;const u=r.app={_uid:Jl++,_component:s,_props:o,_container:null,_context:r,_instance:null,version:ka,get config(){return r.config},set config(c){},use(c,...f){return i.has(c)||(c&&Z(c.install)?(i.add(c),c.install(u,...f)):Z(c)&&(i.add(c),c(u,...f))),u},mixin(c){return r.mixins.includes(c)||r.mixins.push(c),u},component(c,f){return f?(r.components[c]=f,u):r.components[c]},directive(c,f){return f?(r.directives[c]=f,u):r.directives[c]},mount(c,f,h){if(!a){const v=u._ceVNode||_e(s,o);return v.appContext=r,h===!0?h="svg":h===!1&&(h=void 0),e(v,c,h),a=!0,u._container=c,c.__vue_app__=u,as(v.component)}},onUnmount(c){l.push(c)},unmount(){a&&(qe(l,u._instance,16),e(null,u._container),delete u._container.__vue_app__)},provide(c,f){return r.provides[c]=f,u},runWithContext(c){const f=Dt;Dt=u;try{return c()}finally{Dt=f}}};return u}}let Dt=null;const zl=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Ke(t)}Modifiers`]||e[`${Et(t)}Modifiers`];function Zl(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||fe;let o=n;const r=t.startsWith("update:"),i=r&&zl(s,t.slice(7));i&&(i.trim&&(o=n.map(c=>be(c)?c.trim():c)),i.number&&(o=n.map(Qn)));let l,a=s[l=fs(t)]||s[l=fs(Ke(t))];!a&&r&&(a=s[l=fs(Et(t))]),a&&qe(a,e,6,o);const u=s[l+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,qe(u,e,6,o)}}const Ql=new WeakMap;function Jr(e,t,n=!1){const s=n?Ql:t.emitsCache,o=s.get(e);if(o!==void 0)return o;const r=e.emits;let i={},l=!1;if(!Z(e)){const a=u=>{const c=Jr(u,t,!0);c&&(l=!0,xe(i,c))};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}return!r&&!l?(de(e)&&s.set(e,null),null):(G(r)?r.forEach(a=>i[a]=null):xe(i,r),de(e)&&s.set(e,i),i)}function is(e,t){return!e||!Gn(t)?!1:(t=t.slice(2).replace(/Once$/,""),ce(e,t[0].toLowerCase()+t.slice(1))||ce(e,Et(t))||ce(e,t))}function Eo(e){const{type:t,vnode:n,proxy:s,withProxy:o,propsOptions:[r],slots:i,attrs:l,emit:a,render:u,renderCache:c,props:f,data:h,setupState:v,ctx:C,inheritAttrs:m}=e,$=jn(e);let g,w;try{if(n.shapeFlag&4){const O=o||s,H=O;g=et(u.call(H,O,c,f,v,h,C)),w=l}else{const O=t;g=et(O.length>1?O(f,{attrs:l,slots:i,emit:a}):O(f,null)),w=t.props?l:ea(l)}}catch(O){fn.length=0,wn(O,e,1),g=_e(ht)}let k=g;if(w&&m!==!1){const O=Object.keys(w),{shapeFlag:H}=k;O.length&&H&7&&(r&&O.some(Hs)&&(w=ta(w,r)),k=Lt(k,w,!1,!0))}return n.dirs&&(k=Lt(k,null,!1,!0),k.dirs=k.dirs?k.dirs.concat(n.dirs):n.dirs),n.transition&&gn(k,n.transition),g=k,jn($),g}const ea=e=>{let t;for(const n in e)(n==="class"||n==="style"||Gn(n))&&((t||(t={}))[n]=e[n]);return t},ta=(e,t)=>{const n={};for(const s in e)(!Hs(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function na(e,t,n){const{props:s,children:o,component:r}=e,{props:i,children:l,patchFlag:a}=t,u=r.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&a>=0){if(a&1024)return!0;if(a&16)return s?To(s,i,u):!!i;if(a&8){const c=t.dynamicProps;for(let f=0;f<c.length;f++){const h=c[f];if(i[h]!==s[h]&&!is(u,h))return!0}}}else return(o||l)&&(!l||!l.$stable)?!0:s===i?!1:s?i?To(s,i,u):!0:!!i;return!1}function To(e,t,n){const s=Object.keys(t);if(s.length!==Object.keys(e).length)return!0;for(let o=0;o<s.length;o++){const r=s[o];if(t[r]!==e[r]&&!is(n,r))return!0}return!1}function sa({vnode:e,parent:t},n){for(;t;){const s=t.subTree;if(s.suspense&&s.suspense.activeBranch===e&&(s.el=e.el),s===e)(e=t.vnode).el=n,t=t.parent;else break}}const Xr={},zr=()=>Object.create(Xr),Zr=e=>Object.getPrototypeOf(e)===Xr;function oa(e,t,n,s=!1){const o={},r=zr();e.propsDefaults=Object.create(null),Qr(e,t,o,r);for(const i in e.propsOptions[0])i in o||(o[i]=void 0);n?e.props=s?o:ol(o):e.type.props?e.props=o:e.props=r,e.attrs=r}function ra(e,t,n,s){const{props:o,attrs:r,vnode:{patchFlag:i}}=e,l=le(o),[a]=e.propsOptions;let u=!1;if((s||i>0)&&!(i&16)){if(i&8){const c=e.vnode.dynamicProps;for(let f=0;f<c.length;f++){let h=c[f];if(is(e.emitsOptions,h))continue;const v=t[h];if(a)if(ce(r,h))v!==r[h]&&(r[h]=v,u=!0);else{const C=Ke(h);o[C]=Os(a,l,C,v,e,!1)}else v!==r[h]&&(r[h]=v,u=!0)}}}else{Qr(e,t,o,r)&&(u=!0);let c;for(const f in l)(!t||!ce(t,f)&&((c=Et(f))===f||!ce(t,c)))&&(a?n&&(n[f]!==void 0||n[c]!==void 0)&&(o[f]=Os(a,l,f,void 0,e,!0)):delete o[f]);if(r!==l)for(const f in r)(!t||!ce(t,f))&&(delete r[f],u=!0)}u&&at(e.attrs,"set","")}function Qr(e,t,n,s){const[o,r]=e.propsOptions;let i=!1,l;if(t)for(let a in t){if(sn(a))continue;const u=t[a];let c;o&&ce(o,c=Ke(a))?!r||!r.includes(c)?n[c]=u:(l||(l={}))[c]=u:is(e.emitsOptions,a)||(!(a in s)||u!==s[a])&&(s[a]=u,i=!0)}if(r){const a=le(n),u=l||fe;for(let c=0;c<r.length;c++){const f=r[c];n[f]=Os(o,a,f,u[f],e,!ce(u,f))}}return i}function Os(e,t,n,s,o,r){const i=e[n];if(i!=null){const l=ce(i,"default");if(l&&s===void 0){const a=i.default;if(i.type!==Function&&!i.skipFactory&&Z(a)){const{propsDefaults:u}=o;if(n in u)s=u[n];else{const c=Cn(o);s=u[n]=a.call(null,t),c()}}else s=a;o.ce&&o.ce._setProp(n,s)}i[0]&&(r&&!l?s=!1:i[1]&&(s===""||s===Et(n))&&(s=!0))}return s}const ia=new WeakMap;function ei(e,t,n=!1){const s=n?ia:t.propsCache,o=s.get(e);if(o)return o;const r=e.props,i={},l=[];let a=!1;if(!Z(e)){const c=f=>{a=!0;const[h,v]=ei(f,t,!0);xe(i,h),v&&l.push(...v)};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}if(!r&&!a)return de(e)&&s.set(e,Ut),Ut;if(G(r))for(let c=0;c<r.length;c++){const f=Ke(r[c]);$o(f)&&(i[f]=fe)}else if(r)for(const c in r){const f=Ke(c);if($o(f)){const h=r[c],v=i[f]=G(h)||Z(h)?{type:h}:xe({},h),C=v.type;let m=!1,$=!0;if(G(C))for(let g=0;g<C.length;++g){const w=C[g],k=Z(w)&&w.name;if(k==="Boolean"){m=!0;break}else k==="String"&&($=!1)}else m=Z(C)&&C.name==="Boolean";v[0]=m,v[1]=$,(m||ce(v,"default"))&&l.push(f)}}const u=[i,l];return de(e)&&s.set(e,u),u}function $o(e){return e[0]!=="$"&&!sn(e)}const Zs=e=>e==="_"||e==="_ctx"||e==="$stable",Qs=e=>G(e)?e.map(et):[et(e)],la=(e,t,n)=>{if(t._n)return t;const s=Rr((...o)=>Qs(t(...o)),n);return s._c=!1,s},ti=(e,t,n)=>{const s=e._ctx;for(const o in e){if(Zs(o))continue;const r=e[o];if(Z(r))t[o]=la(o,r,s);else if(r!=null){const i=Qs(r);t[o]=()=>i}}},ni=(e,t)=>{const n=Qs(t);e.slots.default=()=>n},si=(e,t,n)=>{for(const s in t)(n||!Zs(s))&&(e[s]=t[s])},aa=(e,t,n)=>{const s=e.slots=zr();if(e.vnode.shapeFlag&32){const o=t._;o?(si(s,t,n),n&&ir(s,"_",o,!0)):ti(t,s)}else t&&ni(e,t)},ca=(e,t,n)=>{const{vnode:s,slots:o}=e;let r=!0,i=fe;if(s.shapeFlag&32){const l=t._;l?n&&l===1?r=!1:si(o,t,n):(r=!t.$stable,ti(t,o)),i=t}else t&&(ni(e,t),i={default:1});if(r)for(const l in o)!Zs(l)&&i[l]==null&&delete o[l]},ke=ha;function ua(e){return fa(e)}function fa(e,t){const n=es();n.__VUE__=!0;const{insert:s,remove:o,patchProp:r,createElement:i,createText:l,createComment:a,setText:u,setElementText:c,parentNode:f,nextSibling:h,setScopeId:v=tt,insertStaticContent:C}=e,m=(d,p,y,E=null,x=null,S=null,D=void 0,I=null,M=!!p.dynamicChildren)=>{if(d===p)return;d&&!Vt(d,p)&&(E=Y(d),Fe(d,x,S,!0),d=null),p.patchFlag===-2&&(M=!1,p.dynamicChildren=null);const{type:T,ref:J,shapeFlag:F}=p;switch(T){case ls:$(d,p,y,E);break;case ht:g(d,p,y,E);break;case ys:d==null&&w(p,y,E,D);break;case ve:_(d,p,y,E,x,S,D,I,M);break;default:F&1?H(d,p,y,E,x,S,D,I,M):F&6?V(d,p,y,E,x,S,D,I,M):(F&64||F&128)&&T.process(d,p,y,E,x,S,D,I,M,Oe)}J!=null&&x?an(J,d&&d.ref,S,p||d,!p):J==null&&d&&d.ref!=null&&an(d.ref,null,S,d,!0)},$=(d,p,y,E)=>{if(d==null)s(p.el=l(p.children),y,E);else{const x=p.el=d.el;p.children!==d.children&&u(x,p.children)}},g=(d,p,y,E)=>{d==null?s(p.el=a(p.children||""),y,E):p.el=d.el},w=(d,p,y,E)=>{[d.el,d.anchor]=C(d.children,p,y,E,d.el,d.anchor)},k=({el:d,anchor:p},y,E)=>{let x;for(;d&&d!==p;)x=h(d),s(d,y,E),d=x;s(p,y,E)},O=({el:d,anchor:p})=>{let y;for(;d&&d!==p;)y=h(d),o(d),d=y;o(p)},H=(d,p,y,E,x,S,D,I,M)=>{if(p.type==="svg"?D="svg":p.type==="math"&&(D="mathml"),d==null)te(p,y,E,x,S,D,I,M);else{const T=d.el&&d.el._isVueCE?d.el:null;try{T&&T._beginPatch(),P(d,p,x,S,D,I,M)}finally{T&&T._endPatch()}}},te=(d,p,y,E,x,S,D,I)=>{let M,T;const{props:J,shapeFlag:F,transition:q,dirs:z}=d;if(M=d.el=i(d.type,S,J&&J.is,J),F&8?c(M,d.children):F&16&&W(d.children,M,null,E,x,vs(d,S),D,I),z&&kt(d,null,E,"created"),ne(M,d,d.scopeId,D,E),J){for(const pe in J)pe!=="value"&&!sn(pe)&&r(M,pe,null,J[pe],S,E);"value"in J&&r(M,"value",null,J.value,S),(T=J.onVnodeBeforeMount)&&ze(T,E,d)}z&&kt(d,null,E,"beforeMount");const ie=da(x,q);ie&&q.beforeEnter(M),s(M,p,y),((T=J&&J.onVnodeMounted)||ie||z)&&ke(()=>{T&&ze(T,E,d),ie&&q.enter(M),z&&kt(d,null,E,"mounted")},x)},ne=(d,p,y,E,x)=>{if(y&&v(d,y),E)for(let S=0;S<E.length;S++)v(d,E[S]);if(x){let S=x.subTree;if(p===S||ii(S.type)&&(S.ssContent===p||S.ssFallback===p)){const D=x.vnode;ne(d,D,D.scopeId,D.slotScopeIds,x.parent)}}},W=(d,p,y,E,x,S,D,I,M=0)=>{for(let T=M;T<d.length;T++){const J=d[T]=I?xt(d[T]):et(d[T]);m(null,J,p,y,E,x,S,D,I)}},P=(d,p,y,E,x,S,D)=>{const I=p.el=d.el;let{patchFlag:M,dynamicChildren:T,dirs:J}=p;M|=d.patchFlag&16;const F=d.props||fe,q=p.props||fe;let z;if(y&&At(y,!1),(z=q.onVnodeBeforeUpdate)&&ze(z,y,p,d),J&&kt(p,d,y,"beforeUpdate"),y&&At(y,!0),(F.innerHTML&&q.innerHTML==null||F.textContent&&q.textContent==null)&&c(I,""),T?U(d.dynamicChildren,T,I,y,E,vs(p,x),S):D||A(d,p,I,null,y,E,vs(p,x),S,!1),M>0){if(M&16)N(I,F,q,y,x);else if(M&2&&F.class!==q.class&&r(I,"class",null,q.class,x),M&4&&r(I,"style",F.style,q.style,x),M&8){const ie=p.dynamicProps;for(let pe=0;pe<ie.length;pe++){const ue=ie[pe],Pe=F[ue],Me=q[ue];(Me!==Pe||ue==="value")&&r(I,ue,Pe,Me,x,y)}}M&1&&d.children!==p.children&&c(I,p.children)}else!D&&T==null&&N(I,F,q,y,x);((z=q.onVnodeUpdated)||J)&&ke(()=>{z&&ze(z,y,p,d),J&&kt(p,d,y,"updated")},E)},U=(d,p,y,E,x,S,D)=>{for(let I=0;I<p.length;I++){const M=d[I],T=p[I],J=M.el&&(M.type===ve||!Vt(M,T)||M.shapeFlag&198)?f(M.el):y;m(M,T,J,null,E,x,S,D,!0)}},N=(d,p,y,E,x)=>{if(p!==y){if(p!==fe)for(const S in p)!sn(S)&&!(S in y)&&r(d,S,p[S],null,x,E);for(const S in y){if(sn(S))continue;const D=y[S],I=p[S];D!==I&&S!=="value"&&r(d,S,I,D,x,E)}"value"in y&&r(d,"value",p.value,y.value,x)}},_=(d,p,y,E,x,S,D,I,M)=>{const T=p.el=d?d.el:l(""),J=p.anchor=d?d.anchor:l("");let{patchFlag:F,dynamicChildren:q,slotScopeIds:z}=p;z&&(I=I?I.concat(z):z),d==null?(s(T,y,E),s(J,y,E),W(p.children||[],y,J,x,S,D,I,M)):F>0&&F&64&&q&&d.dynamicChildren&&d.dynamicChildren.length===q.length?(U(d.dynamicChildren,q,y,x,S,D,I),(p.key!=null||x&&p===x.subTree)&&eo(d,p,!0)):A(d,p,y,J,x,S,D,I,M)},V=(d,p,y,E,x,S,D,I,M)=>{p.slotScopeIds=I,d==null?p.shapeFlag&512?x.ctx.activate(p,y,E,D,M):X(p,y,E,x,S,D,M):oe(d,p,M)},X=(d,p,y,E,x,S,D)=>{const I=d.component=wa(d,E,x);if(zs(d)&&(I.ctx.renderer=Oe),xa(I,!1,D),I.asyncDep){if(x&&x.registerDep(I,re,D),!d.el){const M=I.subTree=_e(ht);g(null,M,p,y),d.placeholder=M.el}}else re(I,d,p,y,x,S,D)},oe=(d,p,y)=>{const E=p.component=d.component;if(na(d,p,y))if(E.asyncDep&&!E.asyncResolved){Q(E,p,y);return}else E.next=p,E.update();else p.el=d.el,E.vnode=p},re=(d,p,y,E,x,S,D)=>{const I=()=>{if(d.isMounted){let{next:F,bu:q,u:z,parent:ie,vnode:pe}=d;{const Je=oi(d);if(Je){F&&(F.el=pe.el,Q(d,F,D)),Je.asyncDep.then(()=>{d.isUnmounted||I()});return}}let ue=F,Pe;At(d,!1),F?(F.el=pe.el,Q(d,F,D)):F=pe,q&&On(q),(Pe=F.props&&F.props.onVnodeBeforeUpdate)&&ze(Pe,ie,F,pe),At(d,!0);const Me=Eo(d),Ge=d.subTree;d.subTree=Me,m(Ge,Me,f(Ge.el),Y(Ge),d,x,S),F.el=Me.el,ue===null&&sa(d,Me.el),z&&ke(z,x),(Pe=F.props&&F.props.onVnodeUpdated)&&ke(()=>ze(Pe,ie,F,pe),x)}else{let F;const{el:q,props:z}=p,{bm:ie,m:pe,parent:ue,root:Pe,type:Me}=d,Ge=cn(p);At(d,!1),ie&&On(ie),!Ge&&(F=z&&z.onVnodeBeforeMount)&&ze(F,ue,p),At(d,!0);{Pe.ce&&Pe.ce._def.shadowRoot!==!1&&Pe.ce._injectChildStyle(Me);const Je=d.subTree=Eo(d);m(null,Je,y,E,d,x,S),p.el=Je.el}if(pe&&ke(pe,x),!Ge&&(F=z&&z.onVnodeMounted)){const Je=p;ke(()=>ze(F,ue,Je),x)}(p.shapeFlag&256||ue&&cn(ue.vnode)&&ue.vnode.shapeFlag&256)&&d.a&&ke(d.a,x),d.isMounted=!0,p=y=E=null}};d.scope.on();const M=d.effect=new pr(I);d.scope.off();const T=d.update=M.run.bind(M),J=d.job=M.runIfDirty.bind(M);J.i=d,J.id=d.uid,M.scheduler=()=>Js(J),At(d,!0),T()},Q=(d,p,y)=>{p.component=d;const E=d.vnode.props;d.vnode=p,d.next=null,ra(d,p.props,E,y),ca(d,p.children,y),ft(),ho(d),dt()},A=(d,p,y,E,x,S,D,I,M=!1)=>{const T=d&&d.children,J=d?d.shapeFlag:0,F=p.children,{patchFlag:q,shapeFlag:z}=p;if(q>0){if(q&128){ee(T,F,y,E,x,S,D,I,M);return}else if(q&256){L(T,F,y,E,x,S,D,I,M);return}}z&8?(J&16&>(T,x,S),F!==T&&c(y,F)):J&16?z&16?ee(T,F,y,E,x,S,D,I,M):gt(T,x,S,!0):(J&8&&c(y,""),z&16&&W(F,y,E,x,S,D,I,M))},L=(d,p,y,E,x,S,D,I,M)=>{d=d||Ut,p=p||Ut;const T=d.length,J=p.length,F=Math.min(T,J);let q;for(q=0;q<F;q++){const z=p[q]=M?xt(p[q]):et(p[q]);m(d[q],z,y,null,x,S,D,I,M)}T>J?gt(d,x,S,!0,!1,F):W(p,y,E,x,S,D,I,M,F)},ee=(d,p,y,E,x,S,D,I,M)=>{let T=0;const J=p.length;let F=d.length-1,q=J-1;for(;T<=F&&T<=q;){const z=d[T],ie=p[T]=M?xt(p[T]):et(p[T]);if(Vt(z,ie))m(z,ie,y,null,x,S,D,I,M);else break;T++}for(;T<=F&&T<=q;){const z=d[F],ie=p[q]=M?xt(p[q]):et(p[q]);if(Vt(z,ie))m(z,ie,y,null,x,S,D,I,M);else break;F--,q--}if(T>F){if(T<=q){const z=q+1,ie=z<J?p[z].el:E;for(;T<=q;)m(null,p[T]=M?xt(p[T]):et(p[T]),y,ie,x,S,D,I,M),T++}}else if(T>q)for(;T<=F;)Fe(d[T],x,S,!0),T++;else{const z=T,ie=T,pe=new Map;for(T=ie;T<=q;T++){const Ie=p[T]=M?xt(p[T]):et(p[T]);Ie.key!=null&&pe.set(Ie.key,T)}let ue,Pe=0;const Me=q-ie+1;let Ge=!1,Je=0;const zt=new Array(Me);for(T=0;T<Me;T++)zt[T]=0;for(T=z;T<=F;T++){const Ie=d[T];if(Pe>=Me){Fe(Ie,x,S,!0);continue}let Xe;if(Ie.key!=null)Xe=pe.get(Ie.key);else for(ue=ie;ue<=q;ue++)if(zt[ue-ie]===0&&Vt(Ie,p[ue])){Xe=ue;break}Xe===void 0?Fe(Ie,x,S,!0):(zt[Xe-ie]=T+1,Xe>=Je?Je=Xe:Ge=!0,m(Ie,p[Xe],y,null,x,S,D,I,M),Pe++)}const io=Ge?pa(zt):Ut;for(ue=io.length-1,T=Me-1;T>=0;T--){const Ie=ie+T,Xe=p[Ie],lo=p[Ie+1],ao=Ie+1<J?lo.el||ri(lo):E;zt[T]===0?m(null,Xe,y,ao,x,S,D,I,M):Ge&&(ue<0||T!==io[ue]?me(Xe,y,ao,2):ue--)}}},me=(d,p,y,E,x=null)=>{const{el:S,type:D,transition:I,children:M,shapeFlag:T}=d;if(T&6){me(d.component.subTree,p,y,E);return}if(T&128){d.suspense.move(p,y,E);return}if(T&64){D.move(d,p,y,Oe);return}if(D===ve){s(S,p,y);for(let F=0;F<M.length;F++)me(M[F],p,y,E);s(d.anchor,p,y);return}if(D===ys){k(d,p,y);return}if(E!==2&&T&1&&I)if(E===0)I.beforeEnter(S),s(S,p,y),ke(()=>I.enter(S),x);else{const{leave:F,delayLeave:q,afterLeave:z}=I,ie=()=>{d.ctx.isUnmounted?o(S):s(S,p,y)},pe=()=>{S._isLeaving&&S[Ot](!0),F(S,()=>{ie(),z&&z()})};q?q(S,ie,pe):pe()}else s(S,p,y)},Fe=(d,p,y,E=!1,x=!1)=>{const{type:S,props:D,ref:I,children:M,dynamicChildren:T,shapeFlag:J,patchFlag:F,dirs:q,cacheIndex:z}=d;if(F===-2&&(x=!1),I!=null&&(ft(),an(I,null,y,d,!0),dt()),z!=null&&(p.renderCache[z]=void 0),J&256){p.ctx.deactivate(d);return}const ie=J&1&&q,pe=!cn(d);let ue;if(pe&&(ue=D&&D.onVnodeBeforeUnmount)&&ze(ue,p,d),J&6)us(d.component,y,E);else{if(J&128){d.suspense.unmount(y,E);return}ie&&kt(d,null,p,"beforeUnmount"),J&64?d.type.remove(d,p,y,Oe,E):T&&!T.hasOnce&&(S!==ve||F>0&&F&64)?gt(T,p,y,!1,!0):(S===ve&&F&384||!x&&J&16)&>(M,p,y),E&&En(d)}(pe&&(ue=D&&D.onVnodeUnmounted)||ie)&&ke(()=>{ue&&ze(ue,p,d),ie&&kt(d,null,p,"unmounted")},y)},En=d=>{const{type:p,el:y,anchor:E,transition:x}=d;if(p===ve){Xt(y,E);return}if(p===ys){O(d);return}const S=()=>{o(y),x&&!x.persisted&&x.afterLeave&&x.afterLeave()};if(d.shapeFlag&1&&x&&!x.persisted){const{leave:D,delayLeave:I}=x,M=()=>D(y,S);I?I(d.el,S,M):M()}else S()},Xt=(d,p)=>{let y;for(;d!==p;)y=h(d),o(d),d=y;o(p)},us=(d,p,y)=>{const{bum:E,scope:x,job:S,subTree:D,um:I,m:M,a:T}=d;ko(M),ko(T),E&&On(E),x.stop(),S&&(S.flags|=8,Fe(D,d,p,y)),I&&ke(I,p),ke(()=>{d.isUnmounted=!0},p)},gt=(d,p,y,E=!1,x=!1,S=0)=>{for(let D=S;D<d.length;D++)Fe(d[D],p,y,E,x)},Y=d=>{if(d.shapeFlag&6)return Y(d.component.subTree);if(d.shapeFlag&128)return d.suspense.next();const p=h(d.anchor||d.el),y=p&&p[Nr];return y?h(y):p};let j=!1;const we=(d,p,y)=>{let E;d==null?p._vnode&&(Fe(p._vnode,null,null,!0),E=p._vnode.component):m(p._vnode||null,d,p,null,null,null,y),p._vnode=d,j||(j=!0,ho(E),Mr(),j=!1)},Oe={p:m,um:Fe,m:me,r:En,mt:X,mc:W,pc:A,pbc:U,n:Y,o:e};return{render:we,hydrate:void 0,createApp:Xl(we)}}function vs({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 At({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function da(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function eo(e,t,n=!1){const s=e.children,o=t.children;if(G(s)&&G(o))for(let r=0;r<s.length;r++){const i=s[r];let l=o[r];l.shapeFlag&1&&!l.dynamicChildren&&((l.patchFlag<=0||l.patchFlag===32)&&(l=o[r]=xt(o[r]),l.el=i.el),!n&&l.patchFlag!==-2&&eo(i,l)),l.type===ls&&(l.patchFlag!==-1?l.el=i.el:l.__elIndex=r+(e.type===ve?1:0)),l.type===ht&&!l.el&&(l.el=i.el)}}function pa(e){const t=e.slice(),n=[0];let s,o,r,i,l;const a=e.length;for(s=0;s<a;s++){const u=e[s];if(u!==0){if(o=n[n.length-1],e[o]<u){t[s]=o,n.push(s);continue}for(r=0,i=n.length-1;r<i;)l=r+i>>1,e[n[l]]<u?r=l+1:i=l;u<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 oi(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:oi(t)}function ko(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}function ri(e){if(e.placeholder)return e.placeholder;const t=e.component;return t?ri(t.subTree):null}const ii=e=>e.__isSuspense;function ha(e,t){t&&t.pendingBranch?G(e)?t.effects.push(...e):t.effects.push(e):vl(e)}const ve=Symbol.for("v-fgt"),ls=Symbol.for("v-txt"),ht=Symbol.for("v-cmt"),ys=Symbol.for("v-stc"),fn=[];let De=null;function R(e=!1){fn.push(De=e?null:[])}function ma(){fn.pop(),De=fn[fn.length-1]||null}let vn=1;function Ao(e,t=!1){vn+=e,e<0&&De&&t&&(De.hasOnce=!0)}function li(e){return e.dynamicChildren=vn>0?De||Ut:null,ma(),vn>0&&De&&De.push(e),e}function K(e,t,n,s,o,r){return li(b(e,t,n,s,o,r,!0))}function je(e,t,n,s,o){return li(_e(e,t,n,s,o,!0))}function ai(e){return e?e.__v_isVNode===!0:!1}function Vt(e,t){return e.type===t.type&&e.key===t.key}const ci=({key:e})=>e??null,Rn=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?be(e)||ye(e)||Z(e)?{i:Re,r:e,k:t,f:!!n}:e:null);function b(e,t=null,n=null,s=0,o=null,r=e===ve?0:1,i=!1,l=!1){const a={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&ci(t),ref:t&&Rn(t),scopeId:Ir,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:o,dynamicChildren:null,appContext:null,ctx:Re};return l?(to(a,n),r&128&&e.normalize(a)):n&&(a.shapeFlag|=be(n)?8:16),vn>0&&!i&&De&&(a.patchFlag>0||r&6)&&a.patchFlag!==32&&De.push(a),a}const _e=ga;function ga(e,t=null,n=null,s=0,o=null,r=!1){if((!e||e===Kl)&&(e=ht),ai(e)){const l=Lt(e,t,!0);return n&&to(l,n),vn>0&&!r&&De&&(l.shapeFlag&6?De[De.indexOf(e)]=l:De.push(l)),l.patchFlag=-2,l}if($a(e)&&(e=e.__vccOpts),t){t=va(t);let{class:l,style:a}=t;l&&!be(l)&&(t.class=rt(l)),de(a)&&(os(a)&&!G(a)&&(a=xe({},a)),t.style=bn(a))}const i=be(e)?1:ii(e)?128:xl(e)?64:de(e)?4:Z(e)?2:0;return b(e,t,n,s,o,i,r,!0)}function va(e){return e?os(e)||Zr(e)?xe({},e):e:null}function Lt(e,t,n=!1,s=!1){const{props:o,ref:r,patchFlag:i,children:l,transition:a}=e,u=t?ya(o||{},t):o,c={__v_isVNode:!0,__v_skip:!0,type:e.type,props:u,key:u&&ci(u),ref:t&&t.ref?n&&r?G(r)?r.concat(Rn(t)):[r,Rn(t)]:Rn(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==ve?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:a,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Lt(e.ssContent),ssFallback:e.ssFallback&&Lt(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return a&&s&&gn(c,a.clone(c)),c}function He(e=" ",t=0){return _e(ls,null,e,t)}function ae(e="",t=!1){return t?(R(),je(ht,null,e)):_e(ht,null,e)}function et(e){return e==null||typeof e=="boolean"?_e(ht):G(e)?_e(ve,null,e.slice()):ai(e)?xt(e):_e(ls,null,String(e))}function xt(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Lt(e)}function to(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(G(t))n=16;else if(typeof t=="object")if(s&65){const o=t.default;o&&(o._c&&(o._d=!1),to(e,o()),o._c&&(o._d=!0));return}else{n=32;const o=t._;!o&&!Zr(t)?t._ctx=Re:o===3&&Re&&(Re.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else Z(t)?(t={default:t,_ctx:Re},n=32):(t=String(t),s&64?(n=16,t=[He(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 o in s)if(o==="class")t.class!==s.class&&(t.class=rt([t.class,s.class]));else if(o==="style")t.style=bn([t.style,s.style]);else if(Gn(o)){const r=t[o],i=s[o];i&&r!==i&&!(G(r)&&r.includes(i))&&(t[o]=r?[].concat(r,i):i)}else o!==""&&(t[o]=s[o])}return t}function ze(e,t,n,s=null){qe(e,t,7,[n,s])}const ba=Gr();let _a=0;function wa(e,t,n){const s=e.type,o=(t?t.appContext:e.appContext)||ba,r={uid:_a++,vnode:e,type:s,parent:t,appContext:o,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new ur(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(o.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:ei(s,o),emitsOptions:Jr(s,o),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=Zl.bind(null,r),e.ce&&e.ce(r),r}let Ce=null;const no=()=>Ce||Re;let Vn,Is;{const e=es(),t=(n,s)=>{let o;return(o=e[n])||(o=e[n]=[]),o.push(s),r=>{o.length>1?o.forEach(i=>i(r)):o[0](r)}};Vn=t("__VUE_INSTANCE_SETTERS__",n=>Ce=n),Is=t("__VUE_SSR_SETTERS__",n=>Gt=n)}const Cn=e=>{const t=Ce;return Vn(e),e.scope.on(),()=>{e.scope.off(),Vn(t)}},Po=()=>{Ce&&Ce.scope.off(),Vn(null)};function ui(e){return e.vnode.shapeFlag&4}let Gt=!1;function xa(e,t=!1,n=!1){t&&Is(t);const{props:s,children:o}=e.vnode,r=ui(e);oa(e,s,r,t),aa(e,o,n||t);const i=r?Ca(e,t):void 0;return t&&Is(!1),i}function Ca(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Ul);const{setup:s}=n;if(s){ft();const o=e.setupContext=s.length>1?Ea(e):null,r=Cn(e),i=_n(s,e,0,[e.props,o]),l=sr(i);if(dt(),r(),(l||e.sp)&&!cn(e)&&Xs(e),l){if(i.then(Po,Po),t)return i.then(a=>{Mo(e,a)}).catch(a=>{wn(a,e,0)});e.asyncDep=i}else Mo(e,i)}else fi(e)}function Mo(e,t,n){Z(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:de(t)&&(e.setupState=kr(t)),fi(e)}function fi(e,t,n){const s=e.type;e.render||(e.render=s.render||tt);{const o=Cn(e);ft();try{Bl(e)}finally{dt(),o()}}}const Sa={get(e,t){return Ee(e,"get",""),e[t]}};function Ea(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Sa),slots:e.slots,emit:e.emit,expose:t}}function as(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(kr(Gs(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in un)return un[n](e)},has(t,n){return n in t||n in un}})):e.proxy}function Ta(e,t=!0){return Z(e)?e.displayName||e.name:e.name||t&&e.__name}function $a(e){return Z(e)&&"__vccOpts"in e}const st=(e,t)=>dl(e,t,Gt),ka="3.5.27";let Rs;const Oo=typeof window<"u"&&window.trustedTypes;if(Oo)try{Rs=Oo.createPolicy("vue",{createHTML:e=>e})}catch{}const di=Rs?e=>Rs.createHTML(e):e=>e,Aa="http://www.w3.org/2000/svg",Pa="http://www.w3.org/1998/Math/MathML",lt=typeof document<"u"?document:null,Io=lt&<.createElement("template"),Ma={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 o=t==="svg"?lt.createElementNS(Aa,e):t==="mathml"?lt.createElementNS(Pa,e):n?lt.createElement(e,{is:n}):lt.createElement(e);return e==="select"&&s&&s.multiple!=null&&o.setAttribute("multiple",s.multiple),o},createText:e=>lt.createTextNode(e),createComment:e=>lt.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>lt.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,o,r){const i=n?n.previousSibling:t.lastChild;if(o&&(o===r||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),!(o===r||!(o=o.nextSibling)););else{Io.innerHTML=di(s==="svg"?`<svg>${e}</svg>`:s==="mathml"?`<math>${e}</math>`:e);const l=Io.content;if(s==="svg"||s==="mathml"){const a=l.firstChild;for(;a.firstChild;)l.appendChild(a.firstChild);l.removeChild(a)}t.insertBefore(l,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},vt="transition",Qt="animation",Jt=Symbol("_vtc"),pi={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},Oa=xe({},El,pi),Pt=(e,t=[])=>{G(e)?e.forEach(n=>n(...t)):e&&e(...t)},Ro=e=>e?G(e)?e.some(t=>t.length>1):e.length>1:!1;function Ia(e){const t={};for(const _ in e)_ in pi||(t[_]=e[_]);if(e.css===!1)return t;const{name:n="v",type:s,duration:o,enterFromClass:r=`${n}-enter-from`,enterActiveClass:i=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:a=r,appearActiveClass:u=i,appearToClass:c=l,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:h=`${n}-leave-active`,leaveToClass:v=`${n}-leave-to`}=e,C=Ra(o),m=C&&C[0],$=C&&C[1],{onBeforeEnter:g,onEnter:w,onEnterCancelled:k,onLeave:O,onLeaveCancelled:H,onBeforeAppear:te=g,onAppear:ne=w,onAppearCancelled:W=k}=t,P=(_,V,X,oe)=>{_._enterCancelled=oe,yt(_,V?c:l),yt(_,V?u:i),X&&X()},U=(_,V)=>{_._isLeaving=!1,yt(_,f),yt(_,v),yt(_,h),V&&V()},N=_=>(V,X)=>{const oe=_?ne:w,re=()=>P(V,_,X);Pt(oe,[V,re]),Do(()=>{yt(V,_?a:r),Ze(V,_?c:l),Ro(oe)||Lo(V,s,m,re)})};return xe(t,{onBeforeEnter(_){Pt(g,[_]),Ze(_,r),Ze(_,i)},onBeforeAppear(_){Pt(te,[_]),Ze(_,a),Ze(_,u)},onEnter:N(!1),onAppear:N(!0),onLeave(_,V){_._isLeaving=!0;const X=()=>U(_,V);Ze(_,f),_._enterCancelled?(Ze(_,h),Ds(_)):(Ds(_),Ze(_,h)),Do(()=>{_._isLeaving&&(yt(_,f),Ze(_,v),Ro(O)||Lo(_,s,$,X))}),Pt(O,[_,X])},onEnterCancelled(_){P(_,!1,void 0,!0),Pt(k,[_])},onAppearCancelled(_){P(_,!0,void 0,!0),Pt(W,[_])},onLeaveCancelled(_){U(_),Pt(H,[_])}})}function Ra(e){if(e==null)return null;if(de(e))return[bs(e.enter),bs(e.leave)];{const t=bs(e);return[t,t]}}function bs(e){return Ai(e)}function Ze(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[Jt]||(e[Jt]=new Set)).add(t)}function yt(e,t){t.split(/\s+/).forEach(s=>s&&e.classList.remove(s));const n=e[Jt];n&&(n.delete(t),n.size||(e[Jt]=void 0))}function Do(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let Da=0;function Lo(e,t,n,s){const o=e._endId=++Da,r=()=>{o===e._endId&&s()};if(n!=null)return setTimeout(r,n);const{type:i,timeout:l,propCount:a}=hi(e,t);if(!i)return s();const u=i+"end";let c=0;const f=()=>{e.removeEventListener(u,h),r()},h=v=>{v.target===e&&++c>=a&&f()};setTimeout(()=>{c<a&&f()},l+1),e.addEventListener(u,h)}function hi(e,t){const n=window.getComputedStyle(e),s=C=>(n[C]||"").split(", "),o=s(`${vt}Delay`),r=s(`${vt}Duration`),i=Fo(o,r),l=s(`${Qt}Delay`),a=s(`${Qt}Duration`),u=Fo(l,a);let c=null,f=0,h=0;t===vt?i>0&&(c=vt,f=i,h=r.length):t===Qt?u>0&&(c=Qt,f=u,h=a.length):(f=Math.max(i,u),c=f>0?i>u?vt:Qt:null,h=c?c===vt?r.length:a.length:0);const v=c===vt&&/\b(?:transform|all)(?:,|$)/.test(s(`${vt}Property`).toString());return{type:c,timeout:f,propCount:h,hasTransform:v}}function Fo(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max(...t.map((n,s)=>No(n)+No(e[s])))}function No(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function Ds(e){return(e?e.ownerDocument:document).body.offsetHeight}function La(e,t,n){const s=e[Jt];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Un=Symbol("_vod"),mi=Symbol("_vsh"),nn={name:"show",beforeMount(e,{value:t},{transition:n}){e[Un]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):en(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:s}){!t!=!n&&(s?t?(s.beforeEnter(e),en(e,!0),s.enter(e)):s.leave(e,()=>{en(e,!1)}):en(e,t))},beforeUnmount(e,{value:t}){en(e,t)}};function en(e,t){e.style.display=t?e[Un]:"none",e[mi]=!t}const Fa=Symbol(""),Na=/(?:^|;)\s*display\s*:/;function ja(e,t,n){const s=e.style,o=be(n);let r=!1;if(n&&!o){if(t)if(be(t))for(const i of t.split(";")){const l=i.slice(0,i.indexOf(":")).trim();n[l]==null&&Dn(s,l,"")}else for(const i in t)n[i]==null&&Dn(s,i,"");for(const i in n)i==="display"&&(r=!0),Dn(s,i,n[i])}else if(o){if(t!==n){const i=s[Fa];i&&(n+=";"+i),s.cssText=n,r=Na.test(n)}}else t&&e.removeAttribute("style");Un in e&&(e[Un]=r?s.display:"",e[mi]&&(s.display="none"))}const jo=/\s*!important$/;function Dn(e,t,n){if(G(n))n.forEach(s=>Dn(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=Ha(e,t);jo.test(n)?e.setProperty(Et(s),n.replace(jo,""),"important"):e[s]=n}}const Ho=["Webkit","Moz","ms"],_s={};function Ha(e,t){const n=_s[t];if(n)return n;let s=Ke(t);if(s!=="filter"&&s in e)return _s[t]=s;s=Zn(s);for(let o=0;o<Ho.length;o++){const r=Ho[o]+s;if(r in e)return _s[t]=r}return t}const Ko="http://www.w3.org/1999/xlink";function Vo(e,t,n,s,o,r=Di(t)){s&&t.startsWith("xlink:")?n==null?e.removeAttributeNS(Ko,t.slice(6,t.length)):e.setAttributeNS(Ko,t,n):n==null||r&&!lr(n)?e.removeAttribute(t):e.setAttribute(t,r?"":ot(n)?String(n):n)}function Uo(e,t,n,s,o){if(t==="innerHTML"||t==="textContent"){n!=null&&(e[t]=t==="innerHTML"?di(n):n);return}const r=e.tagName;if(t==="value"&&r!=="PROGRESS"&&!r.includes("-")){const l=r==="OPTION"?e.getAttribute("value")||"":e.value,a=n==null?e.type==="checkbox"?"on":"":String(n);(l!==a||!("_value"in e))&&(e.value=a),n==null&&e.removeAttribute(t),e._value=n;return}let i=!1;if(n===""||n==null){const l=typeof e[t];l==="boolean"?n=lr(n):n==null&&l==="string"?(n="",i=!0):l==="number"&&(n=0,i=!0)}try{e[t]=n}catch{}i&&e.removeAttribute(o||t)}function It(e,t,n,s){e.addEventListener(t,n,s)}function Ka(e,t,n,s){e.removeEventListener(t,n,s)}const Bo=Symbol("_vei");function Va(e,t,n,s,o=null){const r=e[Bo]||(e[Bo]={}),i=r[t];if(s&&i)i.value=s;else{const[l,a]=Ua(t);if(s){const u=r[t]=qa(s,o);It(e,l,u,a)}else i&&(Ka(e,l,i,a),r[t]=void 0)}}const Wo=/(?:Once|Passive|Capture)$/;function Ua(e){let t;if(Wo.test(e)){t={};let s;for(;s=e.match(Wo);)e=e.slice(0,e.length-s[0].length),t[s[0].toLowerCase()]=!0}return[e[2]===":"?e.slice(3):Et(e.slice(2)),t]}let ws=0;const Ba=Promise.resolve(),Wa=()=>ws||(Ba.then(()=>ws=0),ws=Date.now());function qa(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;qe(Ya(s,n.value),t,5,[s])};return n.value=e,n.attached=Wa(),n}function Ya(e,t){if(G(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(s=>o=>!o._stopped&&s&&s(o))}else return t}const qo=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Ga=(e,t,n,s,o,r)=>{const i=o==="svg";t==="class"?La(e,s,i):t==="style"?ja(e,n,s):Gn(t)?Hs(t)||Va(e,t,n,s,r):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Ja(e,t,s,i))?(Uo(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Vo(e,t,s,i,r,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!be(s))?Uo(e,Ke(t),s,r,t):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),Vo(e,t,s,i))};function Ja(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&qo(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 o=e.tagName;if(o==="IMG"||o==="VIDEO"||o==="CANVAS"||o==="SOURCE")return!1}return qo(t)&&be(n)?!1:t in e}const gi=new WeakMap,vi=new WeakMap,Bn=Symbol("_moveCb"),Yo=Symbol("_enterCb"),Xa=e=>(delete e.props.mode,e),za=Xa({name:"TransitionGroup",props:xe({},Oa,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=no(),s=Sl();let o,r;return Br(()=>{if(!o.length)return;const i=e.moveClass||`${e.name||"v"}-move`;if(!nc(o[0].el,n.vnode.el,i)){o=[];return}o.forEach(Qa),o.forEach(ec);const l=o.filter(tc);Ds(n.vnode.el),l.forEach(a=>{const u=a.el,c=u.style;Ze(u,i),c.transform=c.webkitTransform=c.transitionDuration="";const f=u[Bn]=h=>{h&&h.target!==u||(!h||h.propertyName.endsWith("transform"))&&(u.removeEventListener("transitionend",f),u[Bn]=null,yt(u,i))};u.addEventListener("transitionend",f)}),o=[]}),()=>{const i=le(e),l=Ia(i);let a=i.tag||ve;if(o=[],r)for(let u=0;u<r.length;u++){const c=r[u];c.el&&c.el instanceof Element&&(o.push(c),gn(c,ks(c,l,s,n)),gi.set(c,{left:c.el.offsetLeft,top:c.el.offsetTop}))}r=t.default?Vr(t.default()):[];for(let u=0;u<r.length;u++){const c=r[u];c.key!=null&&gn(c,ks(c,l,s,n))}return _e(a,null,r)}}}),Za=za;function Qa(e){const t=e.el;t[Bn]&&t[Bn](),t[Yo]&&t[Yo]()}function ec(e){vi.set(e,{left:e.el.offsetLeft,top:e.el.offsetTop})}function tc(e){const t=gi.get(e),n=vi.get(e),s=t.left-n.left,o=t.top-n.top;if(s||o){const r=e.el.style;return r.transform=r.webkitTransform=`translate(${s}px,${o}px)`,r.transitionDuration="0s",e}}function nc(e,t,n){const s=e.cloneNode(),o=e[Jt];o&&o.forEach(l=>{l.split(/\s+/).forEach(a=>a&&s.classList.remove(a))}),n.split(/\s+/).forEach(l=>l&&s.classList.add(l)),s.style.display="none";const r=t.nodeType===1?t:t.parentNode;r.appendChild(s);const{hasTransform:i}=hi(s);return r.removeChild(s),i}const Wn=e=>{const t=e.props["onUpdate:modelValue"]||!1;return G(t)?n=>On(t,n):t};function sc(e){e.target.composing=!0}function Go(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const qt=Symbol("_assign");function Jo(e,t,n){return t&&(e=e.trim()),n&&(e=Qn(e)),e}const Sn={created(e,{modifiers:{lazy:t,trim:n,number:s}},o){e[qt]=Wn(o);const r=s||o.props&&o.props.type==="number";It(e,t?"change":"input",i=>{i.target.composing||e[qt](Jo(e.value,n,r))}),(n||r)&&It(e,"change",()=>{e.value=Jo(e.value,n,r)}),t||(It(e,"compositionstart",sc),It(e,"compositionend",Go),It(e,"change",Go))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:o,number:r}},i){if(e[qt]=Wn(i),e.composing)return;const l=(r||e.type==="number")&&!/^0\d/.test(e.value)?Qn(e.value):e.value,a=t??"";l!==a&&(document.activeElement===e&&e.type!=="range"&&(s&&t===n||o&&e.value.trim()===a)||(e.value=a))}},oc={deep:!0,created(e,{value:t,modifiers:{number:n}},s){const o=Jn(t);It(e,"change",()=>{const r=Array.prototype.filter.call(e.options,i=>i.selected).map(i=>n?Qn(qn(i)):qn(i));e[qt](e.multiple?o?new Set(r):r:r[0]),e._assigning=!0,Ft(()=>{e._assigning=!1})}),e[qt]=Wn(s)},mounted(e,{value:t}){Xo(e,t)},beforeUpdate(e,t,n){e[qt]=Wn(n)},updated(e,{value:t}){e._assigning||Xo(e,t)}};function Xo(e,t){const n=e.multiple,s=G(t);if(!(n&&!s&&!Jn(t))){for(let o=0,r=e.options.length;o<r;o++){const i=e.options[o],l=qn(i);if(n)if(s){const a=typeof l;a==="string"||a==="number"?i.selected=t.some(u=>String(u)===String(l)):i.selected=Fi(t,l)>-1}else i.selected=t.has(l);else if(ts(qn(i),t)){e.selectedIndex!==o&&(e.selectedIndex=o);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function qn(e){return"_value"in e?e._value:e.value}const rc=["ctrl","shift","alt","meta"],ic={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)=>rc.some(n=>e[`${n}Key`]&&!t.includes(n))},Te=(e,t)=>{const n=e._withMods||(e._withMods={}),s=t.join(".");return n[s]||(n[s]=((o,...r)=>{for(let i=0;i<t.length;i++){const l=ic[t[i]];if(l&&l(o,t))return}return e(o,...r)}))},lc={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},Yn=(e,t)=>{const n=e._withKeys||(e._withKeys={}),s=t.join(".");return n[s]||(n[s]=(o=>{if(!("key"in o))return;const r=Et(o.key);if(t.some(i=>i===r||lc[i]===r))return e(o)}))},ac=xe({patchProp:Ga},Ma);let zo;function cc(){return zo||(zo=ua(ac))}const uc=((...e)=>{const t=cc().createApp(...e),{mount:n}=t;return t.mount=s=>{const o=dc(s);if(!o)return;const r=t._component;!Z(r)&&!r.render&&!r.template&&(r.template=o.innerHTML),o.nodeType===1&&(o.textContent="");const i=n(o,!1,fc(o));return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),i},t});function fc(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function dc(e){return be(e)?document.querySelector(e):e}let yi;const cs=e=>yi=e,bi=Symbol();function Ls(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var dn;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(dn||(dn={}));function pc(){const e=fr(!0),t=e.run(()=>B({}));let n=[],s=[];const o=Gs({install(r){cs(o),o._a=r,r.provide(bi,o),r.config.globalProperties.$pinia=o,s.forEach(i=>n.push(i)),s=[]},use(r){return this._a?n.push(r):s.push(r),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return o}const _i=()=>{};function Zo(e,t,n,s=_i){e.add(t);const o=()=>{e.delete(t)&&s()};return!n&&dr()&&Ni(o),o}function Ht(e,...t){e.forEach(n=>{n(...t)})}const hc=e=>e(),Qo=Symbol(),xs=Symbol();function Fs(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,s)=>e.set(s,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const s=t[n],o=e[n];Ls(o)&&Ls(s)&&e.hasOwnProperty(n)&&!ye(s)&&!ut(s)?e[n]=Fs(o,s):e[n]=s}return e}const mc=Symbol();function gc(e){return!Ls(e)||!Object.prototype.hasOwnProperty.call(e,mc)}const{assign:bt}=Object;function vc(e){return!!(ye(e)&&e.effect)}function yc(e,t,n,s){const{state:o,actions:r,getters:i}=t,l=n.state.value[e];let a;function u(){l||(n.state.value[e]=o?o():{});const c=al(n.state.value[e]);return bt(c,r,Object.keys(i||{}).reduce((f,h)=>(f[h]=Gs(st(()=>{cs(n);const v=n._s.get(e);return i[h].call(v,v)})),f),{}))}return a=wi(e,u,t,n,s,!0),a}function wi(e,t,n={},s,o,r){let i;const l=bt({actions:{}},n),a={deep:!0};let u,c,f=new Set,h=new Set,v;const C=s.state.value[e];!r&&!C&&(s.state.value[e]={});let m;function $(W){let P;u=c=!1,typeof W=="function"?(W(s.state.value[e]),P={type:dn.patchFunction,storeId:e,events:v}):(Fs(s.state.value[e],W),P={type:dn.patchObject,payload:W,storeId:e,events:v});const U=m=Symbol();Ft().then(()=>{m===U&&(u=!0)}),c=!0,Ht(f,P,s.state.value[e])}const g=r?function(){const{state:P}=n,U=P?P():{};this.$patch(N=>{bt(N,U)})}:_i;function w(){i.stop(),f.clear(),h.clear(),s._s.delete(e)}const k=(W,P="")=>{if(Qo in W)return W[xs]=P,W;const U=function(){cs(s);const N=Array.from(arguments),_=new Set,V=new Set;function X(Q){_.add(Q)}function oe(Q){V.add(Q)}Ht(h,{args:N,name:U[xs],store:H,after:X,onError:oe});let re;try{re=W.apply(this&&this.$id===e?this:H,N)}catch(Q){throw Ht(V,Q),Q}return re instanceof Promise?re.then(Q=>(Ht(_,Q),Q)).catch(Q=>(Ht(V,Q),Promise.reject(Q))):(Ht(_,re),re)};return U[Qo]=!0,U[xs]=P,U},O={_p:s,$id:e,$onAction:Zo.bind(null,h),$patch:$,$reset:g,$subscribe(W,P={}){const U=Zo(f,W,P.detached,()=>N()),N=i.run(()=>nt(()=>s.state.value[e],_=>{(P.flush==="sync"?c:u)&&W({storeId:e,type:dn.direct,events:v},_)},bt({},a,P)));return U},$dispose:w},H=ss(O);s._s.set(e,H);const ne=(s._a&&s._a.runWithContext||hc)(()=>s._e.run(()=>(i=fr()).run(()=>t({action:k}))));for(const W in ne){const P=ne[W];if(ye(P)&&!vc(P)||ut(P))r||(C&&gc(P)&&(ye(P)?P.value=C[W]:Fs(P,C[W])),s.state.value[e][W]=P);else if(typeof P=="function"){const U=k(P,W);ne[W]=U,l.actions[W]=P}}return bt(H,ne),bt(le(H),ne),Object.defineProperty(H,"$state",{get:()=>s.state.value[e],set:W=>{$(P=>{bt(P,W)})}}),s._p.forEach(W=>{bt(H,i.run(()=>W({store:H,app:s._a,pinia:s,options:l})))}),C&&r&&n.hydrate&&n.hydrate(H.$state,C),u=!0,c=!0,H}function bc(e,t,n){let s;const o=typeof t=="function";s=o?n:t;function r(i,l){const a=yl();return i=i||(a?St(bi,null):null),i&&cs(i),i=yi,i._s.has(e)||(o?wi(e,t,s,i):yc(e,s,i)),i._s.get(e)}return r.$id=e,r}const $t=bc("sessions",()=>{const e=B([]),t=B([]),n=B(null),s=B(!1),o=B(!1),r=B(0);let i=null,l=null,a=1e3;async function u(N,_={}){const V=await fetch(N,_);if(V.status===401&&(o.value=!1),!V.ok){const X=await V.json().catch(()=>({}));throw new Error(X.error||`Request failed (${V.status})`)}return V}async function c(N,_=!1){const X=await(await u(`/api/sessions/${encodeURIComponent(N)}/root`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({repin:_})})).json(),oe=e.value.find(re=>re.name===N);return oe&&(oe.root=X.root),X.root}function f(){r.value++}async function h(){try{const _=await(await fetch("/api/auth/status")).json();s.value=!!_.authRequired,o.value=!!_.authenticated}catch{o.value=!1}return o.value}async function v(N){const _=await fetch("/api/auth/login",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({password:N})});if(!_.ok){const V=await _.json().catch(()=>({}));throw new Error(V.error||"Login failed")}o.value=!0}async function C(){try{await fetch("/api/auth/logout",{method:"POST"})}catch{}o.value=!1,e.value=[],n.value=null,i&&(i.onclose=null,i.close(),i=null)}async function m(){const N=await fetch("/api/sessions");if(N.status===401){o.value=!1;return}const _=await N.json();e.value=_.sessions}async function $(){const _=await(await fetch("/api/sessions/shells")).json();t.value=_.shells}async function g(N,_){const V=await fetch("/api/sessions",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:N,shell:_})});if(!V.ok){const oe=await V.json();throw new Error(oe.error)}const X=await V.json();n.value=X.name,await m()}async function w(N){const _=await fetch(`/api/sessions/${N}/stop`,{method:"POST"});if(!_.ok){const V=await _.json();throw new Error(V.error)}await m()}async function k(N){const _=await fetch(`/api/sessions/${N}/restart`,{method:"POST"});if(!_.ok){const V=await _.json();throw new Error(V.error)}await m()}async function O(N,_){const V=await fetch(`/api/sessions/${N}/alias`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({alias:_})});if(!V.ok){const X=await V.json();throw new Error(X.error)}await m()}async function H(N){const _=await fetch(`/api/sessions/${N}`,{method:"DELETE"});if(!_.ok){const V=await _.json();throw new Error(V.error)}n.value===N&&(n.value=null),await m()}function te(N){n.value=N}function ne(){i&&(i.onclose=null,i.close());const N=location.protocol==="https:"?"wss":"ws";i=new WebSocket(`${N}://${location.host}/ws`),i.onmessage=_=>{let V=null,X=null;try{({event:V,data:X}=JSON.parse(_.data))}catch{}if(V==="session:title"&&X&&X.name){const oe=e.value.find(re=>re.name===X.name);if(oe){oe.title=X.title,oe.command=X.command;return}}if(V==="session:root"&&X?.name){const oe=e.value.find(re=>re.name===X.name);oe&&(oe.root=X.root);return}m()},i.onopen=()=>{a=1e3},i.onclose=()=>{W()}}function W(){l||(l=setTimeout(()=>{l=null,ne(),a=Math.min(a*2,3e4)},a))}function P(){m(),$(),ne()}async function U({command:N,name:_}){return g(_||null,N||null)}return{sessions:e,shells:t,current:n,authRequired:s,authenticated:o,fileRevision:r,apiRequest:u,pinRoot:c,refreshFiles:f,init:P,checkAuth:h,login:v,logout:C,fetchSessions:m,createSession:g,create:U,stopSession:w,restartSession:k,setAlias:O,removeSession:H,select:te}}),Ve=(e,t)=>{const n=e.__vccOpts||e;for(const[s,o]of t)n[s]=o;return n},_c=["title"],wc={class:"card-content"},xc={class:"card-top"},Cc=["onKeydown"],Sc={class:"session-name"},Ec={key:0,class:"alias-text"},Tc={key:1,class:"real-name"},$c={key:2},kc={key:0,class:"confirm-bar"},Ac={key:1,class:"session-info"},Pc=["title"],Mc={class:"status-text"},Oc={__name:"SessionCard",props:{session:Object,active:Boolean,collapsed:Boolean},setup(e){const t=e,n=$t(),s=St("toast"),o=B(!1),r=B(!1),i=B(""),l=B(null),a=st(()=>{const g=t.session.alias?`${t.session.alias} (${t.session.name})`:t.session.name;return t.session.pid?`${g} · PID ${t.session.pid}`:g}),u=st(()=>t.session.title||t.session.command||"");function c(g,w="info"){s?.value?.show(g,w)}function f(g,w){g.stopPropagation(),o.value=!0}async function h(g,w){g.stopPropagation();try{await n.removeSession(w)}catch(k){console.error(k)}o.value=!1}function v(g){g.stopPropagation(),o.value=!1}function C(g){g.stopPropagation(),i.value=t.session.alias||"",r.value=!0,Ft(()=>l.value?.focus())}async function m(g){if(g&&g.stopPropagation(),!!r.value){r.value=!1;try{await n.setAlias(t.session.name,i.value.trim())}catch(w){c(w.message||"Failed to set alias","error")}}}function $(g){g.stopPropagation(),r.value=!1}return(g,w)=>(R(),K("div",{class:rt(["session-card",{active:e.active,collapsed:e.collapsed}]),title:a.value},[b("div",{class:rt(["status-indicator",e.session.status])},null,2),Ue(b("div",wc,[b("div",xc,[r.value?Ue((R(),K("input",{key:0,ref_key:"aliasInput",ref:l,"onUpdate:modelValue":w[0]||(w[0]=k=>i.value=k),class:"alias-input",type:"text",maxlength:"100",placeholder:"Alias (Enter to save, Esc to cancel)",onClick:w[1]||(w[1]=Te(()=>{},["stop"])),onKeydown:[w[2]||(w[2]=Te(()=>{},["stop"])),w[3]||(w[3]=Yn(Te(k=>m(k),["prevent"]),["enter"])),Yn(Te($,["prevent"]),["esc"])],onBlur:m},null,40,Cc)),[[Sn,i.value]]):(R(),K(ve,{key:1},[b("div",Sc,[e.session.alias?(R(),K("span",Ec,se(e.session.alias),1)):ae("",!0),e.session.alias?(R(),K("span",Tc,se(e.session.name),1)):(R(),K("span",$c,se(e.session.name),1))]),o.value?ae("",!0):(R(),K("button",{key:0,class:"close-btn",title:"Set alias",onClick:w[4]||(w[4]=k=>C(k))},[...w[8]||(w[8]=[b("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[b("path",{d:"M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"})],-1)])])),o.value?ae("",!0):(R(),K("button",{key:1,class:"close-btn",title:"Delete session",onClick:w[5]||(w[5]=k=>f(k,e.session.name))},[...w[9]||(w[9]=[b("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[b("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),b("line",{x1:"6",y1:"6",x2:"18",y2:"18"})],-1)])]))],64))]),o.value?(R(),K("div",kc,[w[10]||(w[10]=b("span",{class:"confirm-text"},"Delete?",-1)),b("button",{class:"confirm-yes",onClick:w[6]||(w[6]=k=>h(k,e.session.name))},"Yes"),b("button",{class:"confirm-no",onClick:w[7]||(w[7]=k=>v(k))},"No")])):(R(),K("div",Ac,[b("span",{class:"pane-title",title:u.value},se(u.value),9,Pc),b("span",Mc,se(e.session.status),1)]))],512),[[nn,!e.collapsed]])],10,_c))}},Ic=Ve(Oc,[["__scopeId","data-v-c39ba5d7"]]),Rc="modulepreload",Dc=function(e){return"/"+e},er={},so=function(t,n,s){let o=Promise.resolve();if(n&&n.length>0){let a=function(u){return Promise.all(u.map(c=>Promise.resolve(c).then(f=>({status:"fulfilled",value:f}),f=>({status:"rejected",reason:f}))))};document.getElementsByTagName("link");const i=document.querySelector("meta[property=csp-nonce]"),l=i?.nonce||i?.getAttribute("nonce");o=a(n.map(u=>{if(u=Dc(u),u in er)return;er[u]=!0;const c=u.endsWith(".css"),f=c?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${u}"]${f}`))return;const h=document.createElement("link");if(h.rel=c?"stylesheet":Rc,c||(h.as="script"),h.crossOrigin="",h.href=u,l&&h.setAttribute("nonce",l),document.head.appendChild(h),c)return new Promise((v,C)=>{h.addEventListener("load",v),h.addEventListener("error",()=>C(new Error(`Unable to preload CSS for ${u}`)))})}))}function r(i){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=i,window.dispatchEvent(l),!l.defaultPrevented)throw i}return o.then(i=>{for(const l of i||[])l.status==="rejected"&&r(l.reason);return t().catch(r)})};function oo(e,t){return`${e.replace(/\/$/,"")}/${t}`}function Lc(e,t=!1){return`/api/files/content?${new URLSearchParams({path:e,...t?{download:"1"}:{}})}`}function xi(e){return e.includes(".")?e.split(".").pop().toLowerCase():""}function Yf(e){const t=xi(e);return["png","jpg","jpeg","gif","webp","svg","bmp","ico","avif","heic","heif"].includes(t)?"image":["mp3","wav","ogg","m4a","aac","flac","opus"].includes(t)?"audio":["mp4","webm","mov","m4v","ogv"].includes(t)?"video":t==="pdf"?"pdf":["md","markdown"].includes(t)?"markdown":["html","htm","xhtml"].includes(t)?"html":t==="docx"?"docx":["csv","tsv"].includes(t)?"table":["zip","gz","bz2","xz","7z","rar","tar","woff","woff2","ttf","exe","dll","so","dylib","db","sqlite","sqlite3","doc","xls","xlsx","ppt","pptx","wasm","bin"].includes(t)?"unsupported":"text"}function Fc(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KiB`:`${(e/(1024*1024)).toFixed(1)} MiB`}async function Gf(e,t){const{default:n}=await so(async()=>{const{default:o}=await import("./papaparse.min-DBcLlWLv.js").then(r=>r.p);return{default:o}},__vite__mapDeps([0,1])),s=n.parse(e,{delimiter:xi(t)==="tsv"?" ":",",skipEmptyLines:"greedy"});return s.errors.length?null:s.data}async function Jf(e){const{default:t}=await so(async()=>{const{default:n}=await import("./markdown-it-CnX5h4q1.js");return{default:n}},[]);return new t({html:!1,linkify:!0}).render(e)}function Xf(e){return`<!doctype html><html><head><meta charset="utf-8"><meta http-equiv="Content-Security-Policy" content="default-src 'none'; script-src 'unsafe-inline'; style-src 'unsafe-inline'; img-src data: blob:; font-src data:; media-src data: blob:; base-uri 'none'; form-action 'none'"><meta name="referrer" content="no-referrer"><style>body{font:15px/1.6 system-ui,sans-serif;padding:20px;overflow-wrap:anywhere}img{max-width:100%}table{border-collapse:collapse}td,th{border:1px solid #ccc;padding:6px}</style></head><body>${e}</body></html>`}const Nc={role:"none"},jc=["aria-expanded","aria-label","title"],Hc={class:"chevron","aria-hidden":"true"},Kc={class:"file-icon","aria-hidden":"true"},Vc=["aria-label"],Uc={key:0,role:"group",class:"tree-children"},Bc={key:0,role:"none",class:"tree-status"},Wc={key:1,role:"none",class:"tree-status error"},qc={key:2,role:"none",class:"tree-status"},Yc={__name:"FileTreeItem",props:{entry:{type:Object,required:!0}},emits:["preview","menu","operation"],setup(e,{emit:t}){const n=e,s=t,o=$t(),r=B(!1),i=B([]),l=B(!1),a=B(""),u=B(null);let c=null;async function f(){c?.abort();const m=new AbortController;c=m,l.value=!0,a.value="";try{const g=await(await o.apiRequest(`/api/files?${new URLSearchParams({path:n.entry.path})}`,{signal:m.signal})).json();m.signal.aborted||(i.value=g.entries)}catch($){m.signal.aborted||(a.value=$.message)}finally{m.signal.aborted||(l.value=!1)}}async function h(){n.entry.type==="directory"?(r.value=!r.value,r.value&&await f()):n.entry.type==="file"&&s("preview",n.entry)}function v(m){m.preventDefault();const $=u.value.getBoundingClientRect();s("menu",{entry:n.entry,x:m.clientX||$.left,y:m.clientY||$.bottom,trigger:u.value})}async function C(m){if(m.target!==u.value)return;const $=[...u.value.closest('[role="tree"]').querySelectorAll("[data-tree-row]")],g=$.indexOf(u.value);["ArrowDown","ArrowUp","Home","End"].includes(m.key)?(m.preventDefault(),$[m.key==="Home"?0:m.key==="End"?$.length-1:Math.max(0,Math.min($.length-1,g+(m.key==="ArrowDown"?1:-1)))]?.focus()):m.key==="ArrowRight"&&n.entry.type==="directory"?(m.preventDefault(),r.value?(await Ft(),u.value.parentElement.querySelector('[role="group"] [data-tree-row]')?.focus()):await h()):m.key==="ArrowLeft"?(m.preventDefault(),r.value?r.value=!1:u.value.parentElement.parentElement.closest("li")?.querySelector("[data-tree-row]")?.focus()):m.key==="Enter"||m.key===" "?(m.preventDefault(),h()):m.key==="ContextMenu"||m.shiftKey&&m.key==="F10"?v(m):(m.key==="F2"||m.key==="Delete")&&(m.preventDefault(),s("operation",{kind:m.key==="F2"?"rename":"delete",entry:n.entry}))}return nt(()=>o.fileRevision,()=>{r.value&&f()}),Nt(()=>c?.abort()),(m,$)=>{const g=Hl("FileTreeItem",!0);return R(),K("li",Nc,[b("div",{ref_key:"row",ref:u,class:"tree-row",role:"treeitem","data-tree-row":"",tabindex:"0","aria-expanded":e.entry.type==="directory"?r.value:void 0,"aria-label":e.entry.name,title:`${e.entry.path}
|
|
3
|
-
${ge(Fc)(e.entry.size)} · ${new Date(e.entry.mtime).toLocaleString()}${e.entry.type==="symlink"?`
|
|
4
|
-
Symbolic link — target is not followed`:""}`,onClick:h,onContextmenu:v,onKeydown:C},[b("span",Hc,se(e.entry.type==="directory"?r.value?"⌄":"›":""),1),b("span",Kc,se(e.entry.type==="directory"?"▱":e.entry.type==="symlink"?"↗":"≡"),1),b("span",{class:rt(["filename",{dotfile:e.entry.name.startsWith(".")}])},se(e.entry.name),3),b("button",{class:"more","aria-label":`${e.entry.name} 文件操作`,title:"文件操作",onClick:Te(v,["stop"]),onKeydown:$[0]||($[0]=Te(()=>{},["stop"]))},"⋯",40,Vc)],40,jc),r.value?(R(),K("ul",Uc,[l.value?(R(),K("li",Bc,"加载中…")):a.value?(R(),K("li",Wc,[He(se(a.value)+" ",1),b("button",{onClick:f},"重试")])):i.value.length?ae("",!0):(R(),K("li",qc,"空文件夹")),(R(!0),K(ve,null,xn(i.value,w=>(R(),je(g,{key:w.path,entry:w,onPreview:$[1]||($[1]=k=>s("preview",k)),onMenu:$[2]||($[2]=k=>s("menu",k)),onOperation:$[3]||($[3]=k=>s("operation",k))},null,8,["entry"]))),128))])):ae("",!0)])}}},Gc=Ve(Yc,[["__scopeId","data-v-7822209d"]]),Jc={id:"operation-title"},Xc={class:"operation-path"},zc={key:0},Zc={key:1},Qc=["disabled"],eu={key:2,class:"error",role:"alert"},tu={class:"dialog-actions"},nu=["disabled"],su=["disabled"],ou={__name:"FileOperationDialog",props:{operation:{type:Object,required:!0},trash:String,busy:Boolean,error:String},emits:["close","submit"],setup(e,{emit:t}){const n=e,s=t,o=B(null),r=B(null),i=B(n.operation.kind==="rename"?n.operation.entry.name:n.operation.entry.path),l=st(()=>({rename:"重命名",move:"移动文件",delete:n.trash==="mv-trash"?"移到废纸篓?":"永久删除?"})[n.operation.kind]);let a;return Tt(()=>{a=document.activeElement,o.value.showModal(),r.value?.select()}),Nt(()=>a?.focus()),(u,c)=>(R(),je(Hr,{to:"body"},[b("dialog",{ref_key:"dialog",ref:o,class:"file-dialog","aria-labelledby":"operation-title",onCancel:c[3]||(c[3]=Te(f=>!e.busy&&s("close"),["prevent"])),onClick:c[4]||(c[4]=f=>{f.target===o.value&&!e.busy&&s("close")})},[b("form",{onSubmit:c[2]||(c[2]=Te(f=>s("submit",i.value),["prevent"]))},[b("h3",Jc,se(l.value),1),b("p",Xc,se(e.operation.entry.path),1),e.operation.kind==="delete"?(R(),K("p",zc,se(e.trash==="mv-trash"?"文件将移到 ~/.Trash/,可从废纸篓找回。":"文件将永久删除,此操作无法撤销。"),1)):(R(),K("label",Zc,[He(se(e.operation.kind==="rename"?"新名称":"目标完整路径(含文件名)")+" ",1),Ue(b("input",{ref_key:"input",ref:r,"onUpdate:modelValue":c[0]||(c[0]=f=>i.value=f),required:"",disabled:e.busy,autocomplete:"off"},null,8,Qc),[[Sn,i.value]])])),e.error?(R(),K("p",eu,se(e.error),1)):ae("",!0),b("div",tu,[b("button",{type:"button",class:"btn",disabled:e.busy,onClick:c[1]||(c[1]=f=>s("close"))},"取消",8,nu),b("button",{class:rt(["btn",e.operation.kind==="delete"?"delete-btn":"btn-primary"]),disabled:e.busy||!i.value.trim()},se(e.busy?"处理中…":l.value),11,su)])],32)],544)]))}},ru=Ve(ou,[["__scopeId","data-v-5ceee09a"]]),iu={id:"clipboard-title"},lu={id:"clipboard-help"},au=["readonly","aria-label"],cu={class:"clipboard-actions"},uu=["disabled"],fu={__name:"ClipboardDialog",props:{mode:{type:String,required:!0},text:{type:String,default:""},shortcut:{type:String,required:!0}},emits:["close","paste"],setup(e,{emit:t}){const n=e,s=t,o=B(null),r=B(null),i=B(n.text);Tt(()=>{o.value.focus(),n.mode==="copy"&&o.value.select()});function l(a){if(a.key==="Escape")a.preventDefault(),s("close");else if(a.key==="Tab"){const u=[...r.value.querySelectorAll("textarea, button:not(:disabled)")],c=u[0],f=u[u.length-1];a.shiftKey&&document.activeElement===c?(a.preventDefault(),f.focus()):!a.shiftKey&&document.activeElement===f&&(a.preventDefault(),c.focus())}}return(a,u)=>(R(),K("div",{class:"clipboard-overlay",onClick:u[3]||(u[3]=Te(c=>s("close"),["self"])),onKeydown:l},[b("form",{ref_key:"dialog",ref:r,class:"clipboard-dialog",role:"dialog","aria-modal":"true","aria-labelledby":"clipboard-title","aria-describedby":"clipboard-help",onSubmit:u[2]||(u[2]=Te(c=>s("paste",i.value),["prevent"]))},[b("h3",iu,se(e.mode==="copy"?"Copy text":"Paste text"),1),b("p",lu,[u[4]||(u[4]=He(" Clipboard access is unavailable. ",-1)),e.mode==="copy"?(R(),K(ve,{key:0},[He("Copy the selected text with "+se(e.shortcut)+".",1)],64)):(R(),K(ve,{key:1},[He("Paste here with "+se(e.shortcut)+", then click Paste into terminal.",1)],64))]),Ue(b("textarea",{ref_key:"textarea",ref:o,"onUpdate:modelValue":u[0]||(u[0]=c=>i.value=c),readonly:e.mode==="copy","aria-label":e.mode==="copy"?"Text to copy":"Text to paste",spellcheck:"false"},null,8,au),[[Sn,i.value]]),b("div",cu,[b("button",{type:"button",class:"btn",onClick:u[1]||(u[1]=c=>s("close"))},se(e.mode==="copy"?"Done":"Cancel"),1),e.mode==="paste"?(R(),K("button",{key:0,class:"btn btn-primary",disabled:!i.value.length}," Paste into terminal ",8,uu)):ae("",!0)])],544)],32))}},Ci=Ve(fu,[["__scopeId","data-v-317cb3e2"]]);async function Ns(e,t=document,n=navigator){try{if(n.clipboard?.writeText)return await n.clipboard.writeText(e),!0}catch{}if(!t.execCommand)return!1;const s=t.activeElement,o=t.createElement("textarea");o.value=e,o.readOnly=!0,o.style.cssText="position:fixed;left:-9999px;top:0;",t.body.appendChild(o);try{return o.focus({preventScroll:!0}),o.select(),t.execCommand("copy")}catch{return!1}finally{o.remove(),s?.focus({preventScroll:!0})}}const du=10,pu=.85,tr=.05,hu=20;function mu(e,t){return Math.abs(t)>=du&&Math.abs(t)>Math.abs(e)}function gu({getRowHeight:e,emitWheel:t,requestFrame:n=s=>setTimeout(()=>s(performance.now()),16)}){let s=null,o=!1,r=0;function i(){const a=e();return a>0?a:hu}function l(a){if(Number.isFinite(a)&&(r+=a/i(),Math.abs(r)>=1)){const u=Math.trunc(r);r-=u,t(-u*i(),s?.lastX??0,s?.lastY??0)}}return{touchStart(a){if(o=!1,!a.touches||a.touches.length!==1){s=null;return}const u=a.touches[0];s={id:u.identifier,startX:u.clientX,startY:u.clientY,lastX:u.clientX,lastY:u.clientY,lastTime:a.timeStamp??Date.now(),velocity:0,active:!1}},touchMove(a){if(!s)return;const u=[...a.touches].find(v=>v.identifier===s.id);if(!u)return;const c=a.timeStamp??Date.now();if(!s.active){if(!mu(u.clientX-s.startX,u.clientY-s.startY))return;s.active=!0,s.lastX=u.clientX,s.lastY=u.clientY,s.lastTime=c}a.preventDefault();const f=u.clientY-s.lastY,h=Math.max(c-s.lastTime,1);s.velocity=.8*s.velocity+.2*(f/h),s.lastX=u.clientX,s.lastY=u.clientY,s.lastTime=c,l(f)},touchEnd(a){if(!(!s||![...a.changedTouches].some(c=>c.identifier===s.id))){if(s.active&&Math.abs(s.velocity)>tr){o=!0;let c=s.velocity,f=s.lastTime;const h=v=>{if(!o)return;const C=Math.max((v??Date.now())-f,1);if(!Number.isFinite(C)){o=!1;return}if(f=v??Date.now(),c*=Math.pow(pu,C/16),Math.abs(c)<tr){o=!1;return}l(c*C),n(h)};n(h)}s=null}},cancel(){o=!1,s=null,r=0}}}function vu({doc:e,terminal:t,isMac:n,getCopyText:s,onCopy:o,onContextMenu:r,onDismiss:i,onInput:l,onSelection:a,onTmuxCopy:u}){const c=[];function f(g,w,k={capture:!0}){e.addEventListener(g,w,k),c.push(()=>e.removeEventListener(g,w,k))}function h(g){g.preventDefault(),g.stopImmediatePropagation()}for(const g of["pointerdown","pointerup","mousedown","mouseup","auxclick"])f(g,w=>{w.button===2||n&&w.button===0&&w.ctrlKey?(w.stopImmediatePropagation(),w.shiftKey||w.preventDefault()):g==="mousedown"&&(i(),w.button===0&&l())});f("contextmenu",g=>{if(g.shiftKey){i();return}h(g),r(g)});const v=gu({getRowHeight:()=>t.element?t.element.getBoundingClientRect().height/(t.rows||1):0,emitWheel:(g,w,k)=>{const O=t.element?.querySelector(".xterm-screen")||t.element;!O||!e.defaultView||O.dispatchEvent(new e.defaultView.WheelEvent("wheel",{deltaY:g,deltaMode:0,clientX:w,clientY:k,bubbles:!0,cancelable:!0}))}}),C={capture:!0,passive:!1};f("touchstart",g=>v.touchStart(g),C),f("touchmove",g=>v.touchMove(g),C),f("touchend",g=>v.touchEnd(g),C),f("touchcancel",()=>v.cancel(),C),f("copy",g=>{const w=s();!w||!g.clipboardData||(g.clipboardData.setData("text/plain",w),h(g))}),f("paste",g=>{if(!g.clipboardData)return;const w=g.clipboardData.getData("text/plain");h(g),i(),l(),t.paste(w)}),f("keydown",g=>{const w=g.key.toLowerCase(),k=!g.altKey&&(n&&g.metaKey&&!g.ctrlKey&&w==="c"||g.ctrlKey&&g.shiftKey&&!g.metaKey&&w==="c"),O=!g.altKey&&(n&&g.metaKey&&w==="v"||g.ctrlKey&&w==="v");k?(h(g),o()):O?g.stopImmediatePropagation():(i(),["Shift","Control","Alt","Meta"].includes(g.key)||l())});const m=t.onSelectionChange(()=>a(t.getSelection()));c.push(()=>m.dispose());const $=t.parser.registerOscHandler(52,g=>{const w=g.indexOf(";");if(w<0)return!1;const k=g.slice(w+1);if(k==="?")return!1;try{const O=Uint8Array.from(atob(k),H=>H.charCodeAt(0));u(new TextDecoder().decode(O))}catch{}return!0});return c.push(()=>$.dispose()),()=>c.forEach(g=>g())}const yu={class:"file-panel","aria-label":"文件管理器"},bu={class:"file-toolbar"},_u=["title"],wu=["disabled"],xu=["disabled"],Cu=["title"],Su={key:1,class:"panel-hint",role:"status"},Eu={key:2,class:"panel-hint"},Tu={key:3,class:"panel-hint"},$u={key:4,class:"panel-hint error",role:"alert"},ku={key:5,class:"panel-hint",role:"status"},Au=["aria-label","aria-busy"],Pu={key:0,role:"none",class:"panel-hint"},Mu=["disabled"],Ou=["disabled"],Iu={__name:"FilePanel",setup(e){const t=Al(()=>so(()=>import("./PreviewDialog-KhgmouUP.js"),__vite__mapDeps([2,3]))),n=$t(),s=St("toast"),o=st(()=>n.sessions.find(A=>A.name===n.current)),r=B([]),i=B(null),l=B(!1),a=B(!1),u=B(""),c=B(null),f=B(null),h=B(null),v=B(null),C=B(""),m=B(!1),$=B(!1),g=B(null);let w=null,k=0;const O=/Mac|iPhone|iPad/.test(navigator.platform)?"⌘C":"Ctrl+C";function H(A,L="info",ee){s?.value?.show(A,L,ee)}async function te(){const A=o.value,L=++k;if(!A||A.root||A.status!=="running"){a.value=!1;return}a.value=!0,u.value="";try{await n.pinRoot(A.name)}catch(ee){L===k&&o.value?.name===A.name&&(u.value=ee.message)}finally{L===k&&(a.value=!1)}}async function ne(){w?.abort();const A=new AbortController;w=A;const L=o.value?.root;if(!L){r.value=[],i.value=null,l.value=!1;return}l.value=!0,u.value="";try{const me=await(await n.apiRequest(`/api/files?${new URLSearchParams({path:L})}`,{signal:A.signal})).json();A.signal.aborted||(r.value=me.entries,i.value=me.trash)}catch(ee){A.signal.aborted||(u.value=ee.message)}finally{A.signal.aborted||(l.value=!1)}}async function W(){const A=o.value;if(!(!A||A.status!=="running"))try{await n.pinRoot(A.name,!0),n.refreshFiles(),H("已将文件根目录固定到 shell 当前目录。","success")}catch(L){H(L.message,"error")}}async function P(A){f.value=A,await Ft(),!(!f.value||!h.value)&&(f.value.x=Math.max(8,Math.min(A.x,window.innerWidth-h.value.offsetWidth-8)),f.value.y=Math.max(8,Math.min(A.y,window.innerHeight-h.value.offsetHeight-8)),h.value.querySelector("button:not(:disabled)")?.focus())}function U(A=!1){A&&f.value?.trigger?.focus(),f.value=null}function N(A){if(["Escape","Tab"].includes(A.key))A.key==="Escape"&&A.preventDefault(),U(!0);else if(["ArrowDown","ArrowUp","Home","End"].includes(A.key)){A.preventDefault();const L=[...h.value.querySelectorAll("button:not(:disabled)")],ee=L.indexOf(document.activeElement),me=A.key==="Home"?0:A.key==="End"?L.length-1:(ee+(A.key==="ArrowDown"?1:-1)+L.length)%L.length;L[me]?.focus()}}function _(A,L=f.value?.entry){U(!0),!(!L||m.value||A==="delete"&&!i.value)&&(C.value="",v.value={kind:A,entry:L})}async function V(A){if(m.value)return;const{kind:L,entry:ee}=v.value;m.value=!0,C.value="";try{if(L==="delete")await n.apiRequest(`/api/files?${new URLSearchParams({path:ee.path})}`,{method:"DELETE"});else{if(L==="rename"&&(!A||A==="."||A===".."||A.includes("/")||A.includes("\0")))throw new Error("请输入不含 / 的有效文件名");const me=L==="rename"?oo(ee.path.slice(0,ee.path.lastIndexOf("/"))||"/",A):A;await n.apiRequest("/api/files",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({from:ee.path,to:me})})}v.value=null,n.refreshFiles(),H(L==="delete"?i.value==="mv-trash"?"已移到废纸篓。":"已永久删除。":"文件已更新。","success")}catch(me){C.value=me.message}finally{m.value=!1}}function X(A=f.value?.entry){if(U(!0),!A)return;const L=document.createElement("a");L.href=Lc(A.path,!0),L.download=A.name,document.body.append(L),L.click(),L.remove()}async function oe(A=f.value?.entry){U(!0),await Ns(A.path)?H("路径已复制。","success"):g.value=A.path}async function re(A=f.value?.entry){if(U(!0),!$.value){$.value=!0;try{const ee=await(await n.apiRequest("/api/files/archive",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:A.path})})).json();n.refreshFiles(),H(`已生成:${ee.path}`,"success",{action:{label:"下载",onClick:()=>X({path:ee.path,name:ee.path.split("/").pop()})}})}catch(L){H(L.message,"error")}finally{$.value=!1}}}function Q(A){h.value?.contains(A.target)||U()}return nt(()=>[o.value?.name,o.value?.status],()=>{u.value="",te()},{immediate:!0}),nt(()=>[o.value?.name,o.value?.root],()=>{r.value=[],c.value=null,U(),m.value||(v.value=null),ne()},{immediate:!0}),nt(()=>n.fileRevision,ne),Tt(()=>{document.addEventListener("pointerdown",Q),window.addEventListener("resize",U)}),Nt(()=>{k++,w?.abort(),document.removeEventListener("pointerdown",Q),window.removeEventListener("resize",U)}),(A,L)=>(R(),K("section",yu,[b("div",bu,[b("span",{class:"project-name",title:o.value?.root||""},se(o.value?.alias||o.value?.name||"文件"),9,_u),b("button",{disabled:!o.value?.root||l.value,title:"刷新目录","aria-label":"刷新目录",onClick:L[0]||(L[0]=ee=>ge(n).refreshFiles())},"↻",8,wu),b("button",{disabled:o.value?.status!=="running",title:"重新固定到 shell 当前目录","aria-label":"重新固定到 shell 当前目录",onClick:W},"📍",8,xu)]),o.value?.root?(R(),K("div",{key:0,class:"root-path",title:o.value.root},se(o.value.root),9,Cu)):ae("",!0),$.value?(R(),K("div",Su,"正在生成 ZIP…")):ae("",!0),o.value?!o.value.root&&!l.value&&!a.value&&!u.value?(R(),K("div",Tu,"启动 session 后自动确定根目录")):ae("",!0):(R(),K("div",Eu,"选择一个会话以浏览文件。")),u.value?(R(),K("div",$u,[He(se(u.value)+" ",1),b("button",{onClick:L[1]||(L[1]=ee=>o.value?.root?ne():te())},"重试")])):ae("",!0),l.value||a.value?(R(),K("div",ku,"加载中…")):ae("",!0),o.value?.root?(R(),K("ul",{key:`${o.value.name}:${o.value.root}`,class:"file-tree",role:"tree","aria-label":o.value.root,"aria-busy":l.value},[(R(!0),K(ve,null,xn(r.value,ee=>(R(),je(Gc,{key:ee.path,entry:ee,onPreview:L[2]||(L[2]=me=>c.value=me),onMenu:P,onOperation:me=>_(me.kind,me.entry)},null,8,["entry","onOperation"]))),128)),!r.value.length&&!l.value&&!u.value?(R(),K("li",Pu,"空文件夹")):ae("",!0)],8,Au)):ae("",!0),(R(),je(Hr,{to:"body"},[f.value?(R(),K("div",{key:0,ref_key:"menuElement",ref:h,class:"file-menu",style:bn({left:`${f.value.x}px`,top:`${f.value.y}px`}),role:"menu","aria-label":"文件操作",onKeydown:N},[f.value.entry.type==="file"?(R(),K("button",{key:0,role:"menuitem",onClick:L[3]||(L[3]=ee=>{c.value=f.value.entry,U(!0)})},"预览")):ae("",!0),b("button",{role:"menuitem",onClick:L[4]||(L[4]=ee=>_("rename"))},[...L[13]||(L[13]=[He("重命名 ",-1),b("span",null,"F2",-1)])]),b("button",{role:"menuitem",onClick:L[5]||(L[5]=ee=>_("move"))},"移动…"),f.value.entry.type==="file"?(R(),K("button",{key:1,role:"menuitem",onClick:L[6]||(L[6]=ee=>X())},"下载")):ae("",!0),f.value.entry.type==="directory"?(R(),K("button",{key:2,role:"menuitem",disabled:$.value,onClick:L[7]||(L[7]=ee=>re())},"压缩为 ZIP",8,Mu)):ae("",!0),b("button",{role:"menuitem",onClick:L[8]||(L[8]=ee=>oe())},"复制路径"),b("button",{class:"danger",role:"menuitem",disabled:!i.value,onClick:L[9]||(L[9]=ee=>_("delete"))},se(i.value==="mv-trash"?"移到废纸篓…":"永久删除…"),9,Ou)],36)):ae("",!0)])),c.value?(R(),je(ge(t),{key:7,entry:c.value,onClose:L[10]||(L[10]=ee=>c.value=null)},null,8,["entry"])):ae("",!0),v.value?(R(),je(ru,{key:v.value.entry.path+v.value.kind,operation:v.value,trash:i.value,busy:m.value,error:C.value,onClose:L[11]||(L[11]=ee=>v.value=null),onSubmit:V},null,8,["operation","trash","busy","error"])):ae("",!0),g.value!==null?(R(),je(Ci,{key:9,mode:"copy",text:g.value,shortcut:ge(O),onClose:L[12]||(L[12]=ee=>g.value=null)},null,8,["text","shortcut"])):ae("",!0)]))}},Ru=Ve(Iu,[["__scopeId","data-v-f365284d"]]),Du={class:"sidebar-tabs",role:"tablist","aria-label":"侧栏"},Lu=["aria-selected"],Fu=["aria-selected"],Nu={class:"sessions-panel",id:"sessions-panel",role:"tabpanel","aria-labelledby":"sessions-tab"},ju={class:"sidebar-header"},Hu={class:"sidebar-title"},Ku={class:"session-list"},Vu={key:0,class:"empty-hint"},Uu={key:0,id:"files-panel",class:"files-panel",role:"tabpanel","aria-labelledby":"files-tab"},Bu={__name:"Sidebar",props:{collapsed:Boolean,mobile:Boolean},emits:["create","expand"],setup(e,{emit:t}){const n=t,s=$t(),o=B("sessions");function r(i){o.value=i,n("expand")}return(i,l)=>(R(),K("aside",{class:rt(["sidebar",{collapsed:e.collapsed}])},[b("div",Du,[b("button",{id:"sessions-tab",role:"tab","aria-selected":o.value==="sessions","aria-controls":"sessions-panel",onClick:l[0]||(l[0]=a=>r("sessions"))},"会话",8,Lu),b("button",{id:"files-tab",role:"tab","aria-selected":o.value==="files","aria-controls":"files-panel",onClick:l[1]||(l[1]=a=>r("files"))},"文件",8,Fu)]),Ue(b("div",Nu,[b("div",ju,[Ue(b("h2",Hu,"Sessions",512),[[nn,!e.collapsed]]),b("button",{class:"icon-btn new-session-btn",onClick:l[2]||(l[2]=a=>n("create")),title:"New Session"},[l[3]||(l[3]=b("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[b("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),b("line",{x1:"5",y1:"12",x2:"19",y2:"12"})],-1)),Ue(b("span",null,"New Session",512),[[nn,!e.collapsed]])])]),b("div",Ku,[(R(!0),K(ve,null,xn(ge(s).sessions,a=>(R(),je(Ic,{key:a.name,session:a,active:ge(s).current===a.name,collapsed:e.collapsed,onClick:u=>ge(s).select(a.name)},null,8,["session","active","collapsed","onClick"]))),128)),ge(s).sessions.length?ae("",!0):Ue((R(),K("div",Vu,[...l[4]||(l[4]=[b("p",null,"No active sessions",-1),b("p",{class:"sub-hint"},"Create one to get started",-1)])],512)),[[nn,!e.collapsed]])])],512),[[nn,o.value==="sessions"]]),o.value==="files"&&!e.collapsed?(R(),K("div",Uu,[_e(Ru)])):ae("",!0)],2))}},Wu=Ve(Bu,[["__scopeId","data-v-7d06ff2a"]]),qu="/logo.svg",Yu=["width","height"],Gu={__name:"BrandMark",props:{size:{type:Number,default:32}},setup(e){return(t,n)=>(R(),K("img",{class:"brand-mark",src:qu,width:e.size,height:e.size,alt:"","aria-hidden":"true",draggable:"false"},null,8,Yu))}},ro=Ve(Gu,[["__scopeId","data-v-f54af403"]]);async function Ju({files:e,directory:t,signal:n,onProgress:s=()=>{},onUnauthorized:o=()=>{},createXHR:r=()=>new XMLHttpRequest}){const i={completed:[],cancelled:[],failed:[]};for(let l=0;l<e.length;l++){const a=e[l],u=oo(t,a.name);if(n.aborted){i.cancelled.push(u);continue}s({index:l+1,total:e.length,percent:0,filename:a.name});try{const c=await new Promise((f,h)=>{const v=r(),C=()=>v.abort(),m=($,g)=>{n.removeEventListener("abort",C),$(g)};v.open("POST",`/api/files/upload?${new URLSearchParams({dir:t,filename:a.name})}`),v.setRequestHeader("Content-Type","application/octet-stream"),v.upload.onprogress=$=>{$.lengthComputable&&s({index:l+1,total:e.length,percent:Math.round($.loaded/$.total*100),filename:a.name})},v.onload=()=>{let $={};try{$=JSON.parse(v.responseText)}catch{}v.status===401&&o(),v.status>=200&&v.status<300&&$.path?m(f,$):m(h,new Error($.error||`Upload failed (${v.status})`))},v.onerror=()=>m(h,new Error("Network error while uploading")),v.onabort=()=>m(h,new DOMException("Upload cancelled","AbortError")),n.addEventListener("abort",C,{once:!0}),n.aborted?m(h,new DOMException("Upload cancelled","AbortError")):v.send(a)});i.completed.push(c.path)}catch(c){n.aborted||c.name==="AbortError"?i.cancelled.push(u):i.failed.push({path:u,error:c.message})}}return i}const Xu={class:"terminal-area"},zu={key:0,class:"terminal-tools","aria-label":"Terminal tools"},Zu=["disabled","title"],Qu=["disabled","title"],ef=["disabled"],tf=["title"],nf=["value"],sf={key:1,class:"selection-hint"},of=["src"],rf={key:2,class:"welcome__container"},lf={class:"welcome__content"},af={class:"welcome-brand"},cf={class:"welcome__text"},uf={class:"highlight"},ff=["disabled"],df=["disabled"],pf={__name:"TerminalView",emits:["create"],setup(e,{emit:t}){const n=$t(),s=t,o=St("toast"),r=B(null),i=rl(null),l=B(""),a=B(""),u=B(null),c=B(null),f=B(null),h=/Mac|iPhone|iPad/.test(navigator.platform),v=h?"⌘C":"Ctrl+Shift+C",C=h?"⌘V":"Ctrl+Shift+V",m=h?"Option":"Shift",$=st(()=>!!(l.value||a.value));let g=null,w=null;const k=B(null),O=B(null),H=B(!1);let te=null,ne=null,W=!1;function P(){oe();const Y=_.value;!Y||Y.status!=="running"||H.value||(ne={name:Y.name,root:(Y.root?Promise.resolve(Y.root):n.pinRoot(Y.name)).then(j=>({root:j}),j=>({error:j}))},k.value.click())}async function U(Y){const j=Y.join(`
|
|
5
|
-
`);await Ns(j)?X("路径已复制。","success"):f.value={mode:"copy",text:j}}async function N(Y){const j=Array.from(Y.target.files||[]);Y.target.value="";const we=ne;if(ne=null,!j.length||!we||H.value)return;H.value=!0,te=new AbortController;const Oe=te.signal;try{const{root:Ye,error:d}=await we.root;if(d)throw d;if(Oe.aborted)return;const p=oo(Ye,"temp");W||(X("上传目录为项目下的 temp/,可在项目 .gitignore 中加入 temp/。"),W=!0);const y=await Ju({files:j,directory:p,signal:Oe,onProgress:x=>{O.value={...x,session:we.name}},onUnauthorized:()=>{n.authenticated=!1,te?.abort()}});n.refreshFiles();const E=[`${we.name}:已完成 ${y.completed.length} 个、取消 ${y.cancelled.length} 个、失败 ${y.failed.length} 个`,...y.completed.map(x=>`已完成:${x}`),...y.cancelled.map(x=>`已取消:${x}`),...y.failed.map(x=>`失败:${x.path}
|
|
6
|
-
${x.error}`)].join(`
|
|
7
|
-
`);o?.value?.show(E,y.failed.length?"error":y.cancelled.length?"info":"success",{duration:0,action:y.completed.length?{label:"复制路径",onClick:()=>U(y.completed)}:void 0})}catch(Ye){X(Ye.message,"error")}finally{H.value=!1,O.value=null,te=null}}const _=st(()=>n.sessions.find(Y=>Y.name===n.current)),V=st(()=>!_.value||_.value.status!=="running"?null:`/terminal/${_.value.name}`);function X(Y,j="info"){o?.value?.show(Y,j)}function oe(Y=!1){u.value=null,Y&&i.value?.focus()}function re(){return i.value?.getSelection()||a.value}async function Q(){oe();const Y=i.value,j=re();if(!Y||!j){X(`Select text first (${m} + drag).`);return}const we=await Ns(j);i.value===Y&&(we?(X("Copied to clipboard.","success"),Y.focus()):f.value={mode:"copy",text:j})}function A(Y,j=i.value){!j||j!==i.value||(a.value="",j.paste(Y),j.focus())}async function L(){oe();const Y=i.value;if(Y)try{if(!navigator.clipboard?.readText)throw new Error("Clipboard unavailable");const j=await navigator.clipboard.readText();A(j,Y)}catch{i.value===Y&&(f.value={mode:"paste",text:""})}}function ee(){f.value=null,i.value?.focus()}function me(Y){A(Y),ee()}async function Fe(Y){const j=r.value.getBoundingClientRect();u.value={x:j.left+Y.clientX,y:j.top+Y.clientY},await Ft();const we=c.value;!we||!u.value||(u.value.x=Math.max(8,Math.min(u.value.x,window.innerWidth-we.offsetWidth-8)),u.value.y=Math.max(8,Math.min(u.value.y,window.innerHeight-we.offsetHeight-8)),we.querySelector("button:not(:disabled)")?.focus())}function En(Y){if(Y.key==="Escape"||Y.key==="Tab")Y.key==="Escape"&&Y.preventDefault(),oe(!0);else if(["ArrowDown","ArrowUp","Home","End"].includes(Y.key)){Y.preventDefault();const j=[...c.value.querySelectorAll("button:not(:disabled)")],we=j.indexOf(document.activeElement),Oe=Y.key==="Home"?0:Y.key==="End"?j.length-1:(we+(Y.key==="ArrowDown"?1:-1)+j.length)%j.length;j[Oe]?.focus()}}function Xt(){clearTimeout(w),w=null,g?.(),g=null,i.value=null,l.value="",a.value="",u.value=null,f.value=null}function us(Y){Xt();const j=Y.target,we=Date.now()+1e4;function Oe(){if(r.value!==j)return;const Ye=j.contentWindow?.term;if(!Ye){Date.now()<we?w=setTimeout(Oe,50):X("Terminal clipboard controls could not load. Please reload the page.","error");return}i.value=Ye,Ye.options.macOptionClickForcesSelection=!0,l.value=Ye.getSelection(),g=vu({doc:j.contentDocument,terminal:Ye,isMac:h,getCopyText:re,onCopy:Q,onContextMenu:Fe,onDismiss:()=>oe(),onInput:()=>{a.value=""},onSelection:d=>{l.value=d,d&&(a.value="")},onTmuxCopy:d=>{a.value=d}})}Oe()}function gt(Y){c.value?.contains(Y.target)||oe()}return nt(V,Xt),Tt(()=>{document.addEventListener("pointerdown",gt),window.addEventListener("resize",oe)}),Nt(()=>{te?.abort(),Xt(),document.removeEventListener("pointerdown",gt),window.removeEventListener("resize",oe)}),(Y,j)=>(R(),K("div",Xu,[b("input",{ref_key:"fileInput",ref:k,type:"file",multiple:"",hidden:"",onChange:N},null,544),_.value||H.value?(R(),K("div",zu,[b("button",{class:"clipboard-btn",disabled:!i.value||!$.value,title:`Copy selected text (${ge(v)})`,onMousedown:j[0]||(j[0]=Te(()=>{},["prevent"])),onClick:Q},"Copy",40,Zu),b("button",{class:"clipboard-btn",disabled:!i.value,title:`Paste from your computer (${ge(C)})`,onMousedown:j[1]||(j[1]=Te(()=>{},["prevent"])),onClick:L},"Paste",40,Qu),b("button",{class:"clipboard-btn",disabled:_.value?.status!=="running"||H.value,onClick:P},"Upload",8,ef),H.value?(R(),K("div",{key:0,class:"upload-progress","aria-live":"polite",title:O.value?`${O.value.session}: ${O.value.filename}`:"准备上传"},[b("span",null,se(O.value?`${O.value.index}/${O.value.total} · ${O.value.percent}%`:"准备上传…"),1),b("progress",{value:O.value?.percent||0,max:"100","aria-label":"上传进度"},null,8,nf),b("button",{class:"clipboard-btn",onClick:j[2]||(j[2]=we=>ge(te)?.abort())},"取消")],8,tf)):(R(),K("span",sf,se(ge(m))+" + drag to select · "+se(ge(v))+" / "+se(ge(C)),1))])):ae("",!0),V.value?(R(),K("iframe",{ref_key:"iframe",ref:r,key:V.value,src:V.value,class:"terminal-frame",title:"Terminal",allow:"clipboard-read; clipboard-write",onLoad:us},null,40,of)):(R(),K("div",rf,[b("div",lf,[b("div",af,[_e(ro,{size:104}),j[6]||(j[6]=b("div",{class:"logo-text"},"ACLI Hub",-1))]),_.value?(R(),K(ve,{key:1},[b("p",cf,[j[8]||(j[8]=He(" Session ",-1)),b("span",uf,se(_.value.name),1),j[9]||(j[9]=He(" is currently stopped. ",-1))]),j[10]||(j[10]=b("p",{class:"sub-text"},"Restart the session to continue.",-1))],64)):(R(),K(ve,{key:0},[j[7]||(j[7]=b("p",{class:"welcome__text"},"No active session selected.",-1)),b("button",{class:"btn btn-primary",onClick:j[3]||(j[3]=we=>s("create"))}," Create First Session ")],64))])])),u.value?(R(),K("div",{key:3,ref_key:"menuElement",ref:c,class:"clipboard-menu",style:bn({left:`${u.value.x}px`,top:`${u.value.y}px`}),role:"menu","aria-label":"Terminal clipboard",onKeydown:En},[b("button",{role:"menuitem",disabled:!$.value,onMousedown:j[4]||(j[4]=Te(()=>{},["prevent"])),onClick:Q},[j[11]||(j[11]=He(" Copy ",-1)),b("span",null,se(ge(v)),1)],40,ff),b("button",{role:"menuitem",onMousedown:j[5]||(j[5]=Te(()=>{},["prevent"])),onClick:L},[j[12]||(j[12]=He(" Paste ",-1)),b("span",null,se(ge(C)),1)],32),b("button",{role:"menuitem",disabled:_.value?.status!=="running"||H.value,onClick:P},"Upload files…",8,df),j[13]||(j[13]=b("p",null,"Shift + right-click for browser menu",-1))],36)):ae("",!0),f.value?(R(),je(Ci,{key:4,mode:f.value.mode,text:f.value.text,shortcut:f.value.mode==="copy"?ge(h)?"⌘C":"Ctrl+C":ge(h)?"⌘V":"Ctrl+V",onClose:ee,onPaste:me},null,8,["mode","text","shortcut"])):ae("",!0)]))}},hf=Ve(pf,[["__scopeId","data-v-95819edf"]]),mf={class:"modal-content glass"},gf={class:"modal-header"},vf={class:"modal-body"},yf={class:"form-group"},bf=["placeholder"],_f={class:"form-group"},wf=["value"],xf={class:"modal-footer"},Cf=["disabled"],Sf={__name:"CreateDialog",emits:["close"],setup(e,{emit:t}){const n=t,s=$t(),o=B({name:"",command:s.shells.length?s.shells[0].id:"bash"}),r=B(!1),i=st(()=>o.value.name?o.value.name:`${o.value.command}-auto`);async function l(){if(!r.value){r.value=!0;try{await s.create(o.value),n("close")}catch(a){console.error(a)}finally{r.value=!1}}}return(a,u)=>(R(),K("div",{class:"modal-overlay",onClick:u[4]||(u[4]=Te(c=>n("close"),["self"]))},[b("div",mf,[b("div",gf,[u[5]||(u[5]=b("h3",null,"Create New Session",-1)),b("button",{class:"close-btn",onClick:u[0]||(u[0]=c=>n("close"))},"✕")]),b("div",vf,[b("label",yf,[u[6]||(u[6]=b("span",{class:"label-text"},"Session Name (Optional)",-1)),Ue(b("input",{"onUpdate:modelValue":u[1]||(u[1]=c=>o.value.name=c),type:"text",placeholder:i.value,onKeyup:Yn(l,["enter"])},null,40,bf),[[Sn,o.value.name]])]),b("label",_f,[u[7]||(u[7]=b("span",{class:"label-text"},"Shell",-1)),Ue(b("select",{"onUpdate:modelValue":u[2]||(u[2]=c=>o.value.command=c)},[(R(!0),K(ve,null,xn(ge(s).shells,c=>(R(),K("option",{key:c.id,value:c.id},se(c.name),9,wf))),128))],512),[[oc,o.value.command]])])]),b("div",xf,[b("button",{class:"btn",onClick:u[3]||(u[3]=c=>n("close"))},"Cancel"),b("button",{class:"btn btn-primary",onClick:l,disabled:r.value},se(r.value?"Creating...":"Create Session"),9,Cf)])])]))}},Ef=Ve(Sf,[["__scopeId","data-v-f9ae44fb"]]),Tf={class:"login-screen"},$f={class:"login-logo"},kf={key:0,class:"login-error",role:"alert"},Af=["disabled"],Pf={__name:"LoginView",emits:["success"],setup(e,{emit:t}){const n=t,s=$t(),o=B(""),r=B(""),i=B(!1),l=B(null);Tt(()=>{l.value?.focus()});async function a(){if(!(!o.value||i.value)){i.value=!0,r.value="";try{await s.login(o.value),o.value="",n("success")}catch(u){r.value=u.message||"Login failed"}finally{i.value=!1}}}return(u,c)=>(R(),K("div",Tf,[b("form",{class:"login-card",onSubmit:Te(a,["prevent"])},[b("div",$f,[_e(ro,{size:72})]),c[2]||(c[2]=b("h1",null,"ACLI Hub",-1)),c[3]||(c[3]=b("p",{class:"login-hint"},"Enter the session password to continue",-1)),Ue(b("input",{ref_key:"passwordInput",ref:l,"onUpdate:modelValue":c[0]||(c[0]=f=>o.value=f),type:"password",autocomplete:"current-password",placeholder:"Password","aria-label":"Password",onKeydown:c[1]||(c[1]=Yn(f=>{o.value="",r.value=""},["esc"]))},null,544),[[Sn,o.value]]),r.value?(R(),K("p",kf,se(r.value),1)):ae("",!0),b("button",{type:"submit",class:"login-btn",disabled:!o.value||i.value},se(i.value?"Signing in…":"Sign in"),9,Af)],32)]))}},Mf=Ve(Pf,[["__scopeId","data-v-86b6b672"]]),Of={class:"toast-container","aria-live":"polite"},If={class:"toast-message"},Rf={class:"toast-actions"},Df=["onClick"],Lf=["onClick"],Ff={__name:"Toast",setup(e,{expose:t}){const n=B([]);let s=0;const o=new Map;function r(l){clearTimeout(o.get(l)),o.delete(l),n.value=n.value.filter(a=>a.id!==l)}function i(l,a="info",{action:u,duration:c=u?0:4e3}={}){const f=++s;n.value.push({id:f,message:l,type:a,action:u}),c&&o.set(f,setTimeout(()=>r(f),c))}return Nt(()=>{for(const l of o.values())clearTimeout(l)}),t({show:i}),(l,a)=>(R(),K("div",Of,[_e(Za,{name:"toast"},{default:Rr(()=>[(R(!0),K(ve,null,xn(n.value,u=>(R(),K("div",{key:u.id,class:rt(["toast",u.type])},[b("div",If,se(u.message),1),b("div",Rf,[u.action?(R(),K("button",{key:0,onClick:u.action.onClick},se(u.action.label),9,Df)):ae("",!0),b("button",{"aria-label":"Dismiss notification",onClick:c=>r(u.id)},"×",8,Lf)])],2))),128))]),_:1})]))}},Nf=Ve(Ff,[["__scopeId","data-v-6bea03ca"]]),jf={key:1,class:"app-layout"},Hf={class:"toolbar glass"},Kf={class:"toolbar-left"},Vf={class:"logo-wrapper"},Uf={class:"toolbar-right"},Bf={class:"main-area"},Wf={__name:"App",setup(e){const t=$t(),n=B(!1),s=B(!1),o=B(null),r=B(!1);window.innerWidth<768&&(n.value=!0),Dr("toast",o),nt(()=>t.authenticated,c=>{c&&t.init()}),Tt(async()=>{await t.checkAuth(),r.value=!0});async function l(){await t.logout()}function a(){n.value=!n.value}function u(){n.value=!0}return(c,f)=>r.value&&!ge(t).authenticated?(R(),je(Mf,{key:0})):r.value?(R(),K("div",jf,[b("header",Hf,[b("div",Kf,[b("button",{class:"icon-btn toggle-btn",onClick:a,"aria-label":"Toggle Sidebar"},[...f[4]||(f[4]=[b("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[b("line",{x1:"3",y1:"12",x2:"21",y2:"12"}),b("line",{x1:"3",y1:"6",x2:"21",y2:"6"}),b("line",{x1:"3",y1:"18",x2:"21",y2:"18"})],-1)])]),b("div",Vf,[_e(ro,{size:28})]),f[5]||(f[5]=b("h1",{class:"toolbar-title"},"ACLI Hub",-1))]),b("div",Uf,[ge(t).authRequired?(R(),K("button",{key:0,class:"icon-btn toggle-btn","aria-label":"Log out",title:"Log out",onClick:l},[...f[6]||(f[6]=[b("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[b("path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"}),b("polyline",{points:"16 17 21 12 16 7"}),b("line",{x1:"21",y1:"12",x2:"9",y2:"12"})],-1)])])):ae("",!0)])]),b("div",Bf,[b("div",{class:rt(["sidebar-overlay",{show:!n.value}]),onClick:u},null,2),_e(Wu,{collapsed:n.value,onCreate:f[0]||(f[0]=h=>s.value=!0),onExpand:f[1]||(f[1]=h=>n.value=!1)},null,8,["collapsed"]),_e(hf,{onCreate:f[2]||(f[2]=h=>s.value=!0)})]),s.value?(R(),je(Ef,{key:0,onClose:f[3]||(f[3]=h=>s.value=!1)})):ae("",!0),_e(Nf,{ref_key:"toastRef",ref:o},null,512)])):ae("",!0)}},qf=Ve(Wf,[["__scopeId","data-v-1baffbd3"]]),Si=uc(qf);Si.use(pc());Si.mount("#app");export{ve as F,Hr as T,so as _,Ve as a,Nt as b,R as c,je as d,xi as e,b as f,ge as g,Fc as h,Lc as i,K as j,ae as k,xn as l,Jf as m,rt as n,Tt as o,Yf as p,Gf as q,B as r,Xf as s,se as t,$t as u,st as v,Te as w};
|