diff --git a/api_browser.py b/api_browser.py index 7bef2d3..6d885fe 100755 --- a/api_browser.py +++ b/api_browser.py @@ -64,6 +64,7 @@ class APIBrowser: self.log_callback = log_callback self.stop_flag = False self._closed = False # 防止重复关闭 + self.last_total_records = 0 # 设置代理 if proxy_config and proxy_config.get("server"): @@ -267,6 +268,7 @@ class APIBrowser: # 获取总页数 total_pages = 1 next_page_url = None + total_records = 0 page_content = soup.find(id='PageContent') if page_content: @@ -282,6 +284,10 @@ class APIBrowser: if next_href: next_page_url = f"{BASE_URL}/admin/{next_href}" + try: + self.last_total_records = int(total_records or 0) + except Exception: + self.last_total_records = 0 return articles, total_pages, next_page_url except Exception as e: @@ -338,14 +344,19 @@ class APIBrowser: except: return False - def browse_content(self, browse_type: str, - should_stop_callback: Optional[Callable] = None) -> APIBrowseResult: + def browse_content( + self, + browse_type: str, + should_stop_callback: Optional[Callable] = None, + progress_callback: Optional[Callable] = None, + ) -> APIBrowseResult: """ 浏览内容并标记已读 Args: browse_type: 浏览类型 (应读/注册前未读) should_stop_callback: 检查是否应该停止的回调函数 + progress_callback: 进度回调(可选),用于实时上报已浏览内容数量 Returns: 浏览结果 @@ -386,6 +397,24 @@ class APIBrowser: if next_url: base_url = next_url + total_records = int(getattr(self, "last_total_records", 0) or 0) + last_report_ts = 0.0 + + def report_progress(force: bool = False): + nonlocal last_report_ts + if not progress_callback: + return + now_ts = time.time() + if not force and now_ts - last_report_ts < 1.0: + return + last_report_ts = now_ts + try: + progress_callback({"total_items": total_records, "browsed_items": total_items}) + except Exception: + pass + + report_progress(force=True) + # 处理所有页面 while True: if should_stop_callback and should_stop_callback(): @@ -398,6 +427,7 @@ class APIBrowser: title = article['title'][:30] total_items += 1 + report_progress() # 获取附件 attachments = self.get_article_attachments(article['href']) @@ -425,6 +455,7 @@ class APIBrowser: time.sleep(0.2) + report_progress(force=True) self.log(f"[API] 浏览完成: {total_items} 条内容,{total_attachments} 个附件") result.success = True diff --git a/app-frontend/src/pages/AccountsPage.vue b/app-frontend/src/pages/AccountsPage.vue index 31e27a8..7a43b48 100644 --- a/app-frontend/src/pages/AccountsPage.vue +++ b/app-frontend/src/pages/AccountsPage.vue @@ -652,13 +652,14 @@ onBeforeUnmount(() => { -
- -
- 内容 {{ acc.progress_items || 0 }}/{{ acc.total_items || 0 }} - 附件 {{ acc.progress_attachments || 0 }}/{{ acc.total_attachments || 0 }} -
-
+
+ +
+ + 内容 {{ acc.progress_items || 0 }} + +
+
diff --git a/services/tasks.py b/services/tasks.py index 73aa9b3..fa0a75a 100644 --- a/services/tasks.py +++ b/services/tasks.py @@ -590,12 +590,28 @@ def run_task(user_id, account_id, browse_type, enable_screenshot=True, source="m safe_update_task_status(account_id, {"detail_status": "正在浏览"}) log_to_client(f"开始浏览 '{browse_type}' 内容...", user_id, account_id) + account.total_items = 0 + safe_update_task_status(account_id, {"progress": {"items": 0, "attachments": 0}}) def should_stop(): return account.should_stop + def on_browse_progress(progress: dict): + try: + total_items = int(progress.get("total_items") or 0) + browsed_items = int(progress.get("browsed_items") or 0) + if total_items > 0: + account.total_items = total_items + safe_update_task_status(account_id, {"progress": {"items": browsed_items, "attachments": 0}}) + except Exception: + pass + checkpoint_mgr.update_stage(task_id, TaskStage.BROWSING, progress_percent=50) - result = api_browser.browse_content(browse_type=browse_type, should_stop_callback=should_stop) + result = api_browser.browse_content( + browse_type=browse_type, + should_stop_callback=should_stop, + progress_callback=on_browse_progress, + ) else: error_message = "登录失败" log_to_client(f"❌ {error_message}", user_id, account_id) diff --git a/static/app/.vite/manifest.json b/static/app/.vite/manifest.json index ea12ce4..956b62b 100644 --- a/static/app/.vite/manifest.json +++ b/static/app/.vite/manifest.json @@ -1,13 +1,13 @@ { - "_accounts-dF_rn7Mz.js": { - "file": "assets/accounts-dF_rn7Mz.js", + "_accounts-D_1tBhb9.js": { + "file": "assets/accounts-D_1tBhb9.js", "name": "accounts", "imports": [ "index.html" ] }, - "_auth-V8kVmuRz.js": { - "file": "assets/auth-V8kVmuRz.js", + "_auth-CAHM3CPl.js": { + "file": "assets/auth-CAHM3CPl.js", "name": "auth", "imports": [ "index.html" @@ -18,7 +18,7 @@ "name": "password" }, "index.html": { - "file": "assets/index-CoUFrT_1.js", + "file": "assets/index-FDI649KN.js", "name": "index", "src": "index.html", "isEntry": true, @@ -36,26 +36,26 @@ ] }, "src/pages/AccountsPage.vue": { - "file": "assets/AccountsPage-BWpR5_67.js", + "file": "assets/AccountsPage-UPsxd2hl.js", "name": "AccountsPage", "src": "src/pages/AccountsPage.vue", "isDynamicEntry": true, "imports": [ - "_accounts-dF_rn7Mz.js", + "_accounts-D_1tBhb9.js", "index.html" ], "css": [ - "assets/AccountsPage-D4cYQ_l7.css" + "assets/AccountsPage-DWp69s0t.css" ] }, "src/pages/LoginPage.vue": { - "file": "assets/LoginPage-BT64PXO4.js", + "file": "assets/LoginPage-aGh2PQkO.js", "name": "LoginPage", "src": "src/pages/LoginPage.vue", "isDynamicEntry": true, "imports": [ "index.html", - "_auth-V8kVmuRz.js", + "_auth-CAHM3CPl.js", "_password-7ryi82gE.js" ], "css": [ @@ -63,26 +63,26 @@ ] }, "src/pages/RegisterPage.vue": { - "file": "assets/RegisterPage-DagmGD8v.js", + "file": "assets/RegisterPage-Cfctkogt.js", "name": "RegisterPage", "src": "src/pages/RegisterPage.vue", "isDynamicEntry": true, "imports": [ "index.html", - "_auth-V8kVmuRz.js" + "_auth-CAHM3CPl.js" ], "css": [ "assets/RegisterPage-yylt2w7b.css" ] }, "src/pages/ResetPasswordPage.vue": { - "file": "assets/ResetPasswordPage-nfu9MGKT.js", + "file": "assets/ResetPasswordPage-B37m0WGk.js", "name": "ResetPasswordPage", "src": "src/pages/ResetPasswordPage.vue", "isDynamicEntry": true, "imports": [ "index.html", - "_auth-V8kVmuRz.js", + "_auth-CAHM3CPl.js", "_password-7ryi82gE.js" ], "css": [ @@ -90,12 +90,12 @@ ] }, "src/pages/SchedulesPage.vue": { - "file": "assets/SchedulesPage-DkN2oNFy.js", + "file": "assets/SchedulesPage-BHh5odxx.js", "name": "SchedulesPage", "src": "src/pages/SchedulesPage.vue", "isDynamicEntry": true, "imports": [ - "_accounts-dF_rn7Mz.js", + "_accounts-D_1tBhb9.js", "index.html" ], "css": [ @@ -103,7 +103,7 @@ ] }, "src/pages/ScreenshotsPage.vue": { - "file": "assets/ScreenshotsPage-DPHTVdqF.js", + "file": "assets/ScreenshotsPage-CF9cDOW6.js", "name": "ScreenshotsPage", "src": "src/pages/ScreenshotsPage.vue", "isDynamicEntry": true, @@ -115,7 +115,7 @@ ] }, "src/pages/VerifyResultPage.vue": { - "file": "assets/VerifyResultPage-BObYrtVV.js", + "file": "assets/VerifyResultPage-3EKG3rSu.js", "name": "VerifyResultPage", "src": "src/pages/VerifyResultPage.vue", "isDynamicEntry": true, diff --git a/static/app/assets/AccountsPage-BWpR5_67.js b/static/app/assets/AccountsPage-BWpR5_67.js deleted file mode 100644 index 9d74f04..0000000 --- a/static/app/assets/AccountsPage-BWpR5_67.js +++ /dev/null @@ -1 +0,0 @@ -import{f as Ft,b as He,a as Ke,c as Mt,s as $t,d as zt,t as Ht,e as Kt,g as Wt,u as Yt,h as Jt}from"./accounts-dF_rn7Mz.js";import{p as Xt,_ as Qt,n as Gt,a as U,r as X,q as _e,c as F,o as jt,m as Zt,b as L,d as c,h as se,i as Q,w as h,e as A,f as x,g as y,t as v,k as w,s as es,F as ne,v as ge,E as _,x as G}from"./index-CoUFrT_1.js";async function ts(){const{data:n}=await Xt.get("/run_stats");return n}const I=Object.create(null);I.open="0";I.close="1";I.ping="2";I.pong="3";I.message="4";I.upgrade="5";I.noop="6";const ae=Object.create(null);Object.keys(I).forEach(n=>{ae[I[n]]=n});const ke={type:"error",data:"parser error"},je=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",Ze=typeof ArrayBuffer=="function",et=n=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(n):n&&n.buffer instanceof ArrayBuffer,Ce=({type:n,data:e},t,s)=>je&&e instanceof Blob?t?s(e):We(e,s):Ze&&(e instanceof ArrayBuffer||et(e))?t?s(e):We(new Blob([e]),s):s(I[n]+(e||"")),We=(n,e)=>{const t=new FileReader;return t.onload=function(){const s=t.result.split(",")[1];e("b"+(s||""))},t.readAsDataURL(n)};function Ye(n){return n instanceof Uint8Array?n:n instanceof ArrayBuffer?new Uint8Array(n):new Uint8Array(n.buffer,n.byteOffset,n.byteLength)}let we;function ss(n,e){if(je&&n.data instanceof Blob)return n.data.arrayBuffer().then(Ye).then(e);if(Ze&&(n.data instanceof ArrayBuffer||et(n.data)))return e(Ye(n.data));Ce(n,!1,t=>{we||(we=new TextEncoder),e(we.encode(t))})}const Je="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Z=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let n=0;n{let e=n.length*.75,t=n.length,s,i=0,a,u,d,p;n[n.length-1]==="="&&(e--,n[n.length-2]==="="&&e--);const S=new ArrayBuffer(e),C=new Uint8Array(S);for(s=0;s>4,C[i++]=(u&15)<<4|d>>2,C[i++]=(d&3)<<6|p&63;return S},rs=typeof ArrayBuffer=="function",Re=(n,e)=>{if(typeof n!="string")return{type:"message",data:tt(n,e)};const t=n.charAt(0);return t==="b"?{type:"message",data:is(n.substring(1),e)}:ae[t]?n.length>1?{type:ae[t],data:n.substring(1)}:{type:ae[t]}:ke},is=(n,e)=>{if(rs){const t=ns(n);return tt(t,e)}else return{base64:!0,data:n}},tt=(n,e)=>{switch(e){case"blob":return n instanceof Blob?n:new Blob([n]);case"arraybuffer":default:return n instanceof ArrayBuffer?n:n.buffer}},st="",os=(n,e)=>{const t=n.length,s=new Array(t);let i=0;n.forEach((a,u)=>{Ce(a,!1,d=>{s[u]=d,++i===t&&e(s.join(st))})})},as=(n,e)=>{const t=n.split(st),s=[];for(let i=0;i{const s=t.length;let i;if(s<126)i=new Uint8Array(1),new DataView(i.buffer).setUint8(0,s);else if(s<65536){i=new Uint8Array(3);const a=new DataView(i.buffer);a.setUint8(0,126),a.setUint16(1,s)}else{i=new Uint8Array(9);const a=new DataView(i.buffer);a.setUint8(0,127),a.setBigUint64(1,BigInt(s))}n.data&&typeof n.data!="string"&&(i[0]|=128),e.enqueue(i),e.enqueue(t)})}})}let ve;function re(n){return n.reduce((e,t)=>e+t.length,0)}function ie(n,e){if(n[0].length===e)return n.shift();const t=new Uint8Array(e);let s=0;for(let i=0;iMath.pow(2,21)-1){d.enqueue(ke);break}i=C*Math.pow(2,32)+S.getUint32(4),s=3}else{if(re(t)n){d.enqueue(ke);break}}}})}const nt=4;function b(n){if(n)return us(n)}function us(n){for(var e in b.prototype)n[e]=b.prototype[e];return n}b.prototype.on=b.prototype.addEventListener=function(n,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+n]=this._callbacks["$"+n]||[]).push(e),this};b.prototype.once=function(n,e){function t(){this.off(n,t),e.apply(this,arguments)}return t.fn=e,this.on(n,t),this};b.prototype.off=b.prototype.removeListener=b.prototype.removeAllListeners=b.prototype.removeEventListener=function(n,e){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var t=this._callbacks["$"+n];if(!t)return this;if(arguments.length==1)return delete this._callbacks["$"+n],this;for(var s,i=0;iPromise.resolve().then(e):(e,t)=>t(e,0),N=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),hs="arraybuffer";function rt(n,...e){return e.reduce((t,s)=>(n.hasOwnProperty(s)&&(t[s]=n[s]),t),{})}const ds=N.setTimeout,fs=N.clearTimeout;function de(n,e){e.useNativeTimers?(n.setTimeoutFn=ds.bind(N),n.clearTimeoutFn=fs.bind(N)):(n.setTimeoutFn=N.setTimeout.bind(N),n.clearTimeoutFn=N.clearTimeout.bind(N))}const ps=1.33;function ms(n){return typeof n=="string"?ys(n):Math.ceil((n.byteLength||n.size)*ps)}function ys(n){let e=0,t=0;for(let s=0,i=n.length;s=57344?t+=3:(s++,t+=4);return t}function it(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function _s(n){let e="";for(let t in n)n.hasOwnProperty(t)&&(e.length&&(e+="&"),e+=encodeURIComponent(t)+"="+encodeURIComponent(n[t]));return e}function gs(n){let e={},t=n.split("&");for(let s=0,i=t.length;s{this.readyState="paused",e()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||t()})),this.writable||(s++,this.once("drain",function(){--s||t()}))}else t()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){const t=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};as(e,this.socket.binaryType).forEach(t),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const e=()=>{this.write([{type:"close"}])};this.readyState==="open"?e():this.once("open",e)}write(e){this.writable=!1,os(e,t=>{this.doWrite(t,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const e=this.opts.secure?"https":"http",t=this.query||{};return this.opts.timestampRequests!==!1&&(t[this.opts.timestampParam]=it()),!this.supportsBinary&&!t.sid&&(t.b64=1),this.createUri(e,t)}}let ot=!1;try{ot=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const bs=ot;function ks(){}class Es extends vs{constructor(e){if(super(e),typeof location<"u"){const t=location.protocol==="https:";let s=location.port;s||(s=t?"443":"80"),this.xd=typeof location<"u"&&e.hostname!==location.hostname||s!==e.port}}doWrite(e,t){const s=this.request({method:"POST",data:e});s.on("success",t),s.on("error",(i,a)=>{this.onError("xhr post error",i,a)})}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(t,s)=>{this.onError("xhr poll error",t,s)}),this.pollXhr=e}}class q extends b{constructor(e,t,s){super(),this.createRequest=e,de(this,s),this._opts=s,this._method=s.method||"GET",this._uri=t,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var e;const t=rt(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");t.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(t);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let i in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(i)&&s.setRequestHeader(i,this._opts.extraHeaders[i])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(e=this._opts.cookieJar)===null||e===void 0||e.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var i;s.readyState===3&&((i=this._opts.cookieJar)===null||i===void 0||i.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(i){this.setTimeoutFn(()=>{this._onError(i)},0);return}typeof document<"u"&&(this._index=q.requestsCount++,q.requests[this._index]=this)}_onError(e){this.emitReserved("error",e,this._xhr),this._cleanup(!0)}_cleanup(e){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=ks,e)try{this._xhr.abort()}catch{}typeof document<"u"&&delete q.requests[this._index],this._xhr=null}}_onLoad(){const e=this._xhr.responseText;e!==null&&(this.emitReserved("data",e),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}q.requestsCount=0;q.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",Xe);else if(typeof addEventListener=="function"){const n="onpagehide"in N?"pagehide":"unload";addEventListener(n,Xe,!1)}}function Xe(){for(let n in q.requests)q.requests.hasOwnProperty(n)&&q.requests[n].abort()}const As=(function(){const n=at({xdomain:!1});return n&&n.responseType!==null})();class Ts extends Es{constructor(e){super(e);const t=e&&e.forceBase64;this.supportsBinary=As&&!t}request(e={}){return Object.assign(e,{xd:this.xd},this.opts),new q(at,this.uri(),e)}}function at(n){const e=n.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!e||bs))return new XMLHttpRequest}catch{}if(!e)try{return new N[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const lt=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class xs extends Be{get name(){return"websocket"}doOpen(){const e=this.uri(),t=this.opts.protocols,s=lt?{}:rt(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(e,t,s)}catch(i){return this.emitReserved("error",i)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let t=0;t{try{this.doWrite(s,a)}catch{}i&&he(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",t=this.query||{};return this.opts.timestampRequests&&(t[this.opts.timestampParam]=it()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}}const be=N.WebSocket||N.MozWebSocket;class Ss extends xs{createSocket(e,t,s){return lt?new be(e,t,s):t?new be(e,t):new be(e)}doWrite(e,t){this.ws.send(t)}}class Cs extends Be{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(e){return this.emitReserved("error",e)}this._transport.closed.then(()=>{this.onClose()}).catch(e=>{this.onError("webtransport error",e)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(e=>{const t=cs(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=e.readable.pipeThrough(t).getReader(),i=ls();i.readable.pipeTo(e.writable),this._writer=i.writable.getWriter();const a=()=>{s.read().then(({done:d,value:p})=>{d||(this.onPacket(p),a())}).catch(d=>{})};a();const u={type:"open"};this.query.sid&&(u.data=`{"sid":"${this.query.sid}"}`),this._writer.write(u).then(()=>this.onOpen())})})}write(e){this.writable=!1;for(let t=0;t{i&&he(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var e;(e=this._transport)===null||e===void 0||e.close()}}const Rs={websocket:Ss,webtransport:Cs,polling:Ts},Bs=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,Os=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Ee(n){if(n.length>8e3)throw"URI too long";const e=n,t=n.indexOf("["),s=n.indexOf("]");t!=-1&&s!=-1&&(n=n.substring(0,t)+n.substring(t,s).replace(/:/g,";")+n.substring(s,n.length));let i=Bs.exec(n||""),a={},u=14;for(;u--;)a[Os[u]]=i[u]||"";return t!=-1&&s!=-1&&(a.source=e,a.host=a.host.substring(1,a.host.length-1).replace(/;/g,":"),a.authority=a.authority.replace("[","").replace("]","").replace(/;/g,":"),a.ipv6uri=!0),a.pathNames=Ns(a,a.path),a.queryKey=Vs(a,a.query),a}function Ns(n,e){const t=/\/{2,9}/g,s=e.replace(t,"/").split("/");return(e.slice(0,1)=="/"||e.length===0)&&s.splice(0,1),e.slice(-1)=="/"&&s.splice(s.length-1,1),s}function Vs(n,e){const t={};return e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,i,a){i&&(t[i]=a)}),t}const Ae=typeof addEventListener=="function"&&typeof removeEventListener=="function",le=[];Ae&&addEventListener("offline",()=>{le.forEach(n=>n())},!1);class D extends b{constructor(e,t){if(super(),this.binaryType=hs,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,e&&typeof e=="object"&&(t=e,e=null),e){const s=Ee(e);t.hostname=s.host,t.secure=s.protocol==="https"||s.protocol==="wss",t.port=s.port,s.query&&(t.query=s.query)}else t.host&&(t.hostname=Ee(t.host).host);de(this,t),this.secure=t.secure!=null?t.secure:typeof location<"u"&&location.protocol==="https:",t.hostname&&!t.port&&(t.port=this.secure?"443":"80"),this.hostname=t.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=t.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},t.transports.forEach(s=>{const i=s.prototype.name;this.transports.push(i),this._transportsByName[i]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},t),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=gs(this.opts.query)),Ae&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},le.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(e){const t=Object.assign({},this.opts.query);t.EIO=nt,t.transport=e,this.id&&(t.sid=this.id);const s=Object.assign({},this.opts,{query:t,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new this._transportsByName[e](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const e=this.opts.rememberUpgrade&&D.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const t=this.createTransport(e);t.open(),this.setTransport(t)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",t=>this._onClose("transport close",t))}onOpen(){this.readyState="open",D.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(e){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",e),this.emitReserved("heartbeat"),e.type){case"open":this.onHandshake(JSON.parse(e.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const t=new Error("server error");t.code=e.data,this._onError(t);break;case"message":this.emitReserved("data",e.data),this.emitReserved("message",e.data);break}}onHandshake(e){this.emitReserved("handshake",e),this.id=e.sid,this.transport.query.sid=e.sid,this._pingInterval=e.pingInterval,this._pingTimeout=e.pingTimeout,this._maxPayload=e.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const e=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+e,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},e),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this._getWritablePackets();this.transport.send(e),this._prevBufferLen=e.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let t=1;for(let s=0;s0&&t>this._maxPayload)return this.writeBuffer.slice(0,s);t+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const e=Date.now()>this._pingTimeoutTime;return e&&(this._pingTimeoutTime=0,he(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),e}write(e,t,s){return this._sendPacket("message",e,t,s),this}send(e,t,s){return this._sendPacket("message",e,t,s),this}_sendPacket(e,t,s,i){if(typeof t=="function"&&(i=t,t=void 0),typeof s=="function"&&(i=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const a={type:e,data:t,options:s};this.emitReserved("packetCreate",a),this.writeBuffer.push(a),i&&this.once("flush",i),this.flush()}close(){const e=()=>{this._onClose("forced close"),this.transport.close()},t=()=>{this.off("upgrade",t),this.off("upgradeError",t),e()},s=()=>{this.once("upgrade",t),this.once("upgradeError",t)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():e()}):this.upgrading?s():e()),this}_onError(e){if(D.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",e),this._onClose("transport error",e)}_onClose(e,t){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),Ae&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=le.indexOf(this._offlineEventListener);s!==-1&&le.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",e,t),this.writeBuffer=[],this._prevBufferLen=0}}}D.protocol=nt;class Ls extends D{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let e=0;e{s||(t.send([{type:"ping",data:"probe"}]),t.once("packet",T=>{if(!s)if(T.type==="pong"&&T.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",t),!t)return;D.priorWebsocketSuccess=t.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(C(),this.setTransport(t),t.send([{type:"upgrade"}]),this.emitReserved("upgrade",t),t=null,this.upgrading=!1,this.flush())})}else{const V=new Error("probe error");V.transport=t.name,this.emitReserved("upgradeError",V)}}))};function a(){s||(s=!0,C(),t.close(),t=null)}const u=T=>{const V=new Error("probe error: "+T);V.transport=t.name,a(),this.emitReserved("upgradeError",V)};function d(){u("transport closed")}function p(){u("socket closed")}function S(T){t&&T.name!==t.name&&a()}const C=()=>{t.removeListener("open",i),t.removeListener("error",u),t.removeListener("close",d),this.off("close",p),this.off("upgrading",S)};t.once("open",i),t.once("error",u),t.once("close",d),this.once("close",p),this.once("upgrading",S),this._upgrades.indexOf("webtransport")!==-1&&e!=="webtransport"?this.setTimeoutFn(()=>{s||t.open()},200):t.open()}onHandshake(e){this._upgrades=this._filterUpgrades(e.upgrades),super.onHandshake(e)}_filterUpgrades(e){const t=[];for(let s=0;sRs[i]).filter(i=>!!i)),super(e,s)}};function qs(n,e="",t){let s=n;t=t||typeof location<"u"&&location,n==null&&(n=t.protocol+"//"+t.host),typeof n=="string"&&(n.charAt(0)==="/"&&(n.charAt(1)==="/"?n=t.protocol+n:n=t.host+n),/^(https?|wss?):\/\//.test(n)||(typeof t<"u"?n=t.protocol+"//"+n:n="https://"+n),s=Ee(n)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const a=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+a+":"+s.port+e,s.href=s.protocol+"://"+a+(t&&t.port===s.port?"":":"+s.port),s}const Is=typeof ArrayBuffer=="function",Us=n=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(n):n.buffer instanceof ArrayBuffer,ct=Object.prototype.toString,Ds=typeof Blob=="function"||typeof Blob<"u"&&ct.call(Blob)==="[object BlobConstructor]",Fs=typeof File=="function"||typeof File<"u"&&ct.call(File)==="[object FileConstructor]";function Oe(n){return Is&&(n instanceof ArrayBuffer||Us(n))||Ds&&n instanceof Blob||Fs&&n instanceof File}function ce(n,e){if(!n||typeof n!="object")return!1;if(Array.isArray(n)){for(let t=0,s=n.length;t=0&&n.num{delete this.acks[e];for(let d=0;d{this.io.clearTimeoutFn(a),t.apply(this,d)};u.withError=!0,this.acks[e]=u}emitWithAck(e,...t){return new Promise((s,i)=>{const a=(u,d)=>u?i(u):s(d);a.withError=!0,t.push(a),this.emit(e,...t)})}_addToQueue(e){let t;typeof e[e.length-1]=="function"&&(t=e.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push((i,...a)=>s!==this._queue[0]?void 0:(i!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),t&&t(i)):(this._queue.shift(),t&&t(null,...a)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||this._queue.length===0)return;const t=this._queue[0];t.pending&&!e||(t.pending=!0,t.tryCount++,this.flags=t.flags,this.emit.apply(this,t.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){typeof this.auth=="function"?this.auth(e=>{this._sendConnectPacket(e)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:m.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,t){this.connected=!1,delete this.id,this.emitReserved("disconnect",e,t),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(e=>{if(!this.sendBuffer.some(s=>String(s.id)===e)){const s=this.acks[e];delete this.acks[e],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case m.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case m.EVENT:case m.BINARY_EVENT:this.onevent(e);break;case m.ACK:case m.BINARY_ACK:this.onack(e);break;case m.DISCONNECT:this.ondisconnect();break;case m.CONNECT_ERROR:this.destroy();const s=new Error(e.data.message);s.data=e.data.data,this.emitReserved("connect_error",s);break}}onevent(e){const t=e.data||[];e.id!=null&&t.push(this.ack(e.id)),this.connected?this.emitEvent(t):this.receiveBuffer.push(Object.freeze(t))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const t=this._anyListeners.slice();for(const s of t)s.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&typeof e[e.length-1]=="string"&&(this._lastOffset=e[e.length-1])}ack(e){const t=this;let s=!1;return function(...i){s||(s=!0,t.packet({type:m.ACK,id:e,data:i}))}}onack(e){const t=this.acks[e.id];typeof t=="function"&&(delete this.acks[e.id],t.withError&&e.data.unshift(null),t.apply(this,e.data))}onconnect(e,t){this.id=e,this.recovered=t&&this._pid===t,this._pid=t,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(e=>this.emitEvent(e)),this.receiveBuffer=[],this.sendBuffer.forEach(e=>{this.notifyOutgoingListeners(e),this.packet(e)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(e=>e()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:m.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const t=this._anyListeners;for(let s=0;s0&&n.jitter<=1?n.jitter:0,this.attempts=0}K.prototype.duration=function(){var n=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var e=Math.random(),t=Math.floor(e*this.jitter*n);n=(Math.floor(e*10)&1)==0?n-t:n+t}return Math.min(n,this.max)|0};K.prototype.reset=function(){this.attempts=0};K.prototype.setMin=function(n){this.ms=n};K.prototype.setMax=function(n){this.max=n};K.prototype.setJitter=function(n){this.jitter=n};class Se extends b{constructor(e,t){var s;super(),this.nsps={},this.subs=[],e&&typeof e=="object"&&(t=e,e=void 0),t=t||{},t.path=t.path||"/socket.io",this.opts=t,de(this,t),this.reconnection(t.reconnection!==!1),this.reconnectionAttempts(t.reconnectionAttempts||1/0),this.reconnectionDelay(t.reconnectionDelay||1e3),this.reconnectionDelayMax(t.reconnectionDelayMax||5e3),this.randomizationFactor((s=t.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new K({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(t.timeout==null?2e4:t.timeout),this._readyState="closed",this.uri=e;const i=t.parser||Ys;this.encoder=new i.Encoder,this.decoder=new i.Decoder,this._autoConnect=t.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,e||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(e){return e===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var t;return e===void 0?this._reconnectionDelay:(this._reconnectionDelay=e,(t=this.backoff)===null||t===void 0||t.setMin(e),this)}randomizationFactor(e){var t;return e===void 0?this._randomizationFactor:(this._randomizationFactor=e,(t=this.backoff)===null||t===void 0||t.setJitter(e),this)}reconnectionDelayMax(e){var t;return e===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,(t=this.backoff)===null||t===void 0||t.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(e){if(~this._readyState.indexOf("open"))return this;this.engine=new Ps(this.uri,this.opts);const t=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const i=P(t,"open",function(){s.onopen(),e&&e()}),a=d=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",d),e?e(d):this.maybeReconnectOnOpen()},u=P(t,"error",a);if(this._timeout!==!1){const d=this._timeout,p=this.setTimeoutFn(()=>{i(),a(new Error("timeout")),t.close()},d);this.opts.autoUnref&&p.unref(),this.subs.push(()=>{this.clearTimeoutFn(p)})}return this.subs.push(i),this.subs.push(u),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(P(e,"ping",this.onping.bind(this)),P(e,"data",this.ondata.bind(this)),P(e,"error",this.onerror.bind(this)),P(e,"close",this.onclose.bind(this)),P(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(t){this.onclose("parse error",t)}}ondecoded(e){he(()=>{this.emitReserved("packet",e)},this.setTimeoutFn)}onerror(e){this.emitReserved("error",e)}socket(e,t){let s=this.nsps[e];return s?this._autoConnect&&!s.active&&s.connect():(s=new ut(this,e,t),this.nsps[e]=s),s}_destroy(e){const t=Object.keys(this.nsps);for(const s of t)if(this.nsps[s].active)return;this._close()}_packet(e){const t=this.encoder.encode(e);for(let s=0;se()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(e,t){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,t),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const t=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{e.skipReconnect||(this.emitReserved("reconnect_attempt",e.backoff.attempts),!e.skipReconnect&&e.open(i=>{i?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",i)):e.onreconnect()}))},t);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}const j={};function ue(n,e){typeof n=="object"&&(e=n,n=void 0),e=e||{};const t=qs(n,e.path||"/socket.io"),s=t.source,i=t.id,a=t.path,u=j[i]&&a in j[i].nsps,d=e.forceNew||e["force new connection"]||e.multiplex===!1||u;let p;return d?p=new Se(s,e):(j[i]||(j[i]=new Se(s,e)),p=j[i]),t.query&&!e.query&&(e.query=t.queryKey),p.socket(t.path,e)}Object.assign(ue,{Manager:Se,Socket:ut,io:ue,connect:ue});let oe=null;function Xs(){return oe||(oe=ue({transports:["websocket","polling"],withCredentials:!0}),oe)}const Qs={class:"page"},Gs={class:"stat-value"},js={class:"stat-value"},Zs={class:"stat-value"},en={class:"stat-value"},tn={class:"stat-value"},sn={class:"stat-value"},nn={class:"stat-suffix app-muted"},rn={class:"upgrade-actions"},on={class:"panel-head"},an={class:"panel-actions"},ln={class:"toolbar"},cn={class:"toolbar-left"},un={class:"app-muted"},hn={class:"toolbar-middle"},dn={class:"toolbar-right"},fn={key:1,class:"grid"},pn={class:"card-top"},mn={class:"card-main"},yn={class:"card-title"},_n={class:"card-name"},gn={class:"card-sub app-muted"},wn={key:0},vn={key:1},bn={key:2},kn={key:3},En={key:0,class:"progress"},An={class:"progress-meta app-muted"},Tn={class:"card-controls"},xn={class:"card-buttons"},Ge="zsglpt:accounts:enable_screenshot",Sn={__name:"AccountsPage",setup(n){const e=Gt(),t=Xs(),s=U(!1),i=U(!1),a=X({today_completed:0,today_failed:0,current_running:0,today_items:0,today_attachments:0}),u=X({}),d=U([]),p=X({}),S=U("应读");function C(){try{const o=window.localStorage.getItem(Ge);if(o==="0"||o==="false")return!1;if(o==="1"||o==="true")return!0}catch{}return!0}const T=U(C());_e(T,o=>{try{window.localStorage.setItem(Ge,o?"1":"0")}catch{}});const V=U(!1),M=U(!1),W=U(!1),R=X({username:"",password:"",remark:""}),k=X({id:"",username:"",password:"",remark:"",originalRemark:""}),Ve=[{label:"应读",value:"应读"},{label:"注册前未读",value:"注册前未读"}],B=F(()=>Object.values(u).sort((o,r)=>String(o.username||"").localeCompare(String(r.username||""),"zh-CN"))),fe=F(()=>B.value.length),ht=F(()=>e.isVip?999:3),Le=F(()=>d.value.length),dt=F(()=>fe.value>0&&Le.value===fe.value),ft=F(()=>!e.isVip);function Y(o){const r=u[o.id]||{};u[o.id]={...r,...o}}function pe(o){const r=Array.isArray(o)?o:[],f=new Set(r.map(g=>String(g?.id||"")));for(const g of Object.keys(u))f.has(g)||delete u[g];for(const g of r)Y(g)}function pt(){for(const o of B.value)p[o.id]||(p[o.id]="应读")}_e(B,pt,{immediate:!0});function mt(o){o?d.value=B.value.map(r=>r.id):d.value=[]}function ee(o){return e.isVip?!0:(_.warning(`${o}是VIP专属功能`),W.value=!0,!1)}function yt(o){const r=Number(o.total_items||0),f=Number(o.progress_items||0);return r?Math.max(0,Math.min(100,Math.round(f/r*100))):0}function _t(o=""){const r=String(o);return r.includes("已完成")||r.includes("完成")?"success":r.includes("失败")||r.includes("错误")||r.includes("异常")||r.includes("登录失败")?"danger":r.includes("排队")||r.includes("运行")||r.includes("截图")?"warning":"info"}function te(o){if(!o?.is_running)return!1;const r=String(o.status||""),f=String(o.detail_status||"");return!(!r||r==="未开始"||!r.includes("运行")||r.includes("截图")||r.includes("等待截图")||f.includes("截图")||f.includes("等待截图")||f.includes("浏览完成")||f.includes("任务完成")||r.includes("已完成"))}async function $(o={}){const r=!!o?.silent;r||(i.value=!0);try{const f=await ts();a.today_completed=Number(f?.today_completed||0),a.today_failed=Number(f?.today_failed||0),a.current_running=Number(f?.current_running||0),a.today_items=Number(f?.today_items||0),a.today_attachments=Number(f?.today_attachments||0)}catch(f){f?.response?.status===401&&(window.location.href="/login")}finally{r||(i.value=!1)}}async function Pe(){s.value=!0;try{const o=await Ft({refresh:!0});pe(o)}catch(o){o?.response?.status===401&&(window.location.href="/login")}finally{s.value=!1}}async function gt(o){try{await $t(o.id,{browse_type:p[o.id]||"应读",enable_screenshot:T.value})}catch(r){const f=r?.response?.data;_.error(f?.error||"启动失败")}}async function wt(o){try{await zt(o.id)}catch(r){const f=r?.response?.data;_.error(f?.error||"停止失败")}}async function vt(o){try{await Ht(o.id,{browse_type:p[o.id]||"应读"}),_.success("已提交截图")}catch(r){const f=r?.response?.data;_.error(f?.error||"截图失败")}}async function bt(o){try{await G.confirm(`确定要删除账号「${o.username}」吗?`,"删除账号",{confirmButtonText:"删除",cancelButtonText:"取消",type:"warning"})}catch{return}try{const r=await Kt(o.id);r?.success?(delete u[o.id],d.value=d.value.filter(f=>f!==o.id),_.success("已删除"),await $()):_.error(r?.error||"删除失败")}catch(r){const f=r?.response?.data;_.error(f?.error||"删除失败")}}function kt(){R.username="",R.password="",R.remark="",V.value=!0}async function Et(){const o=R.username.trim();if(!o||!R.password.trim()){_.error("用户名和密码不能为空");return}try{await Wt({username:o,password:R.password,remember:!0,remark:R.remark.trim()}),_.success("添加成功"),V.value=!1,await $()}catch(r){const f=r?.response?.data;_.error(f?.error||"添加失败")}}function At(o){k.id=o.id,k.username=o.username,k.password="",k.remark=String(o.remark||""),k.originalRemark=String(o.remark||""),M.value=!0}async function Tt(){if(!k.id)return;const o=k.password.trim(),r=k.remark.trim();if(!o&&r===k.originalRemark){_.info("没有修改"),M.value=!1;return}try{if(o){const f=await Yt(k.id,{password:o,remember:!0});f?.account&&Y(f.account)}r!==k.originalRemark&&(await Jt(k.id,{remark:r}),Y({id:k.id,remark:r})),_.success("已更新"),M.value=!1}catch(f){const g=f?.response?.data;_.error(g?.error||"更新失败")}}async function xt(){if(ee("批量操作")){if(d.value.length===0){_.warning("请先选择账号");return}try{const o=await He({account_ids:d.value,browse_type:S.value,enable_screenshot:T.value});_.success(`已启动 ${o?.started_count||0} 个账号`)}catch(o){const r=o?.response?.data;_.error(r?.error||"操作失败")}}}async function St(){if(ee("批量操作")){if(d.value.length===0){_.warning("请先选择账号");return}try{const o=await Ke({account_ids:d.value});_.success(`已停止 ${o?.stopped_count||0} 个账号`)}catch(o){const r=o?.response?.data;_.error(r?.error||"操作失败")}}}async function Ct(){if(ee("全部启动")){if(B.value.length===0){_.warning("没有账号");return}try{await G.confirm("确定要启动全部账号吗?","全部启动",{confirmButtonText:"启动",cancelButtonText:"取消",type:"warning"})}catch{return}try{const o=await He({account_ids:B.value.map(r=>r.id),browse_type:S.value,enable_screenshot:T.value});_.success(`已启动 ${o?.started_count||0} 个账号`)}catch(o){const r=o?.response?.data;_.error(r?.error||"操作失败")}}}async function Rt(){if(ee("全部停止")){if(B.value.length===0){_.warning("没有账号");return}try{await G.confirm("确定要停止全部账号吗?","全部停止",{confirmButtonText:"停止",cancelButtonText:"取消",type:"warning"})}catch{return}try{const o=await Ke({account_ids:B.value.map(r=>r.id)});_.success(`已停止 ${o?.stopped_count||0} 个账号`)}catch(o){const r=o?.response?.data;_.error(r?.error||"操作失败")}}}async function Bt(){if(B.value.length===0){_.warning("没有账号");return}try{await G.confirm("确定要清空所有账号吗?此操作不可恢复!","清空账号",{confirmButtonText:"继续",cancelButtonText:"取消",type:"warning"}),await G.confirm("再次确认:真的要删除所有账号吗?","二次确认",{confirmButtonText:"删除",cancelButtonText:"取消",type:"warning"})}catch{return}try{const o=await Mt();if(o?.success){pe([]),d.value=[],_.success("已清空所有账号"),await $();return}_.error(o?.error||"操作失败")}catch(o){const r=o?.response?.data;_.error(r?.error||"操作失败")}}function Ot(){const o=g=>{pe(g)},r=g=>{Y(g)},f=g=>{g?.account_id&&Y({id:g.account_id,detail_status:g.stage||"",total_items:g.total_items,progress_items:g.browsed_items,total_attachments:g.total_attachments,progress_attachments:g.viewed_attachments,elapsed_seconds:g.elapsed_seconds,elapsed_display:g.elapsed_display})};return t.on("accounts_list",o),t.on("account_update",r),t.on("task_progress",f),t.connected||t.connect(),()=>{t.off("accounts_list",o),t.off("account_update",r),t.off("task_progress",f)}}let me=null,J=null;const qe=F(()=>B.value.some(o=>!(!o?.is_running||String(o.status||"").includes("排队"))));function Ie(){J&&(window.clearInterval(J),J=null)}function Nt(){J||(J=window.setInterval(()=>$({silent:!0}),1e4))}function Ue(o=null){const r=qe.value;o===!0&&r===!1&&$({silent:!0}).catch(()=>{}),r?Nt():Ie()}return _e(qe,(o,r)=>{Ue(r)}),jt(async()=>{e.vipInfo||e.refreshVipInfo().catch(()=>{window.location.href="/login"}),me=Ot(),await Pe(),await $(),Ue()}),Zt(()=>{me&&me(),Ie()}),(o,r)=>{const f=A("el-card"),g=A("el-col"),Vt=A("el-row"),E=A("el-button"),De=A("el-alert"),Fe=A("el-checkbox"),Me=A("el-option"),$e=A("el-select"),Lt=A("el-switch"),Pt=A("el-skeleton"),qt=A("el-empty"),It=A("el-checkbox-group"),Ut=A("el-tag"),Dt=A("el-progress"),z=A("el-input"),H=A("el-form-item"),ze=A("el-form"),ye=A("el-dialog");return x(),L("div",Qs,[c(Vt,{gutter:12,class:"stats-row"},{default:h(()=>[c(g,{xs:12,sm:8,md:4},{default:h(()=>[c(f,{shadow:"never",class:"stat-card","body-style":{padding:"14px"}},{default:h(()=>[r[16]||(r[16]=y("div",{class:"stat-label app-muted"},"今日完成",-1)),y("div",Gs,v(a.today_completed),1)]),_:1})]),_:1}),c(g,{xs:12,sm:8,md:4},{default:h(()=>[c(f,{shadow:"never",class:"stat-card","body-style":{padding:"14px"}},{default:h(()=>[r[17]||(r[17]=y("div",{class:"stat-label app-muted"},"今日失败",-1)),y("div",js,v(a.today_failed),1)]),_:1})]),_:1}),c(g,{xs:12,sm:8,md:4},{default:h(()=>[c(f,{shadow:"never",class:"stat-card","body-style":{padding:"14px"}},{default:h(()=>[r[18]||(r[18]=y("div",{class:"stat-label app-muted"},"运行中",-1)),y("div",Zs,v(a.current_running),1)]),_:1})]),_:1}),c(g,{xs:12,sm:8,md:4},{default:h(()=>[c(f,{shadow:"never",class:"stat-card","body-style":{padding:"14px"}},{default:h(()=>[r[19]||(r[19]=y("div",{class:"stat-label app-muted"},"浏览内容",-1)),y("div",en,v(a.today_items),1)]),_:1})]),_:1}),c(g,{xs:12,sm:8,md:4},{default:h(()=>[c(f,{shadow:"never",class:"stat-card","body-style":{padding:"14px"}},{default:h(()=>[r[20]||(r[20]=y("div",{class:"stat-label app-muted"},"查看附件",-1)),y("div",tn,v(a.today_attachments),1)]),_:1})]),_:1}),c(g,{xs:12,sm:8,md:4},{default:h(()=>[c(f,{shadow:"never",class:"stat-card","body-style":{padding:"14px"}},{default:h(()=>[r[21]||(r[21]=y("div",{class:"stat-label app-muted"},"账号数",-1)),y("div",sn,[w(v(fe.value),1),y("span",nn,"/ "+v(es(e).isVip?"∞":ht.value),1)])]),_:1})]),_:1})]),_:1}),ft.value?(x(),se(De,{key:0,type:"info","show-icon":"",closable:!1,class:"upgrade-banner",title:"升级 VIP,解锁更多功能:无限账号 · 优先排队 · 定时任务 · 批量操作"},{default:h(()=>[y("div",rn,[c(E,{type:"primary",plain:"",onClick:r[0]||(r[0]=l=>W.value=!0)},{default:h(()=>[...r[22]||(r[22]=[w("了解VIP特权",-1)])]),_:1})])]),_:1})):Q("",!0),c(f,{shadow:"never",class:"panel","body-style":{padding:"14px"}},{default:h(()=>[y("div",on,[r[25]||(r[25]=y("div",{class:"panel-title"},"账号管理",-1)),y("div",an,[c(E,{loading:s.value,onClick:Pe},{default:h(()=>[...r[23]||(r[23]=[w("刷新",-1)])]),_:1},8,["loading"]),c(E,{type:"primary",onClick:kt},{default:h(()=>[...r[24]||(r[24]=[w("添加账号",-1)])]),_:1})])]),y("div",ln,[y("div",cn,[c(Fe,{"model-value":dt.value,onChange:mt},{default:h(()=>[...r[26]||(r[26]=[w("全选",-1)])]),_:1},8,["model-value"]),y("span",un,"已选 "+v(Le.value)+" 个",1)]),y("div",hn,[c($e,{modelValue:S.value,"onUpdate:modelValue":r[1]||(r[1]=l=>S.value=l),size:"small",style:{width:"120px"}},{default:h(()=>[(x(),L(ne,null,ge(Ve,l=>c(Me,{key:l.value,label:l.label,value:l.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"]),c(Lt,{modelValue:T.value,"onUpdate:modelValue":r[2]||(r[2]=l=>T.value=l),"inline-prompt":"","active-text":"截图","inactive-text":"不截图"},null,8,["modelValue"])]),y("div",dn,[c(E,{type:"primary",onClick:xt},{default:h(()=>[...r[27]||(r[27]=[w("批量启动",-1)])]),_:1}),c(E,{onClick:St},{default:h(()=>[...r[28]||(r[28]=[w("批量停止",-1)])]),_:1}),c(E,{type:"success",plain:"",onClick:Ct},{default:h(()=>[...r[29]||(r[29]=[w("全部启动",-1)])]),_:1}),c(E,{type:"danger",plain:"",onClick:Rt},{default:h(()=>[...r[30]||(r[30]=[w("全部停止",-1)])]),_:1}),c(E,{type:"danger",text:"",onClick:Bt},{default:h(()=>[...r[31]||(r[31]=[w("清空",-1)])]),_:1})])]),s.value?(x(),se(Pt,{key:0,rows:5,animated:""})):(x(),L(ne,{key:1},[B.value.length===0?(x(),se(qt,{key:0,description:"暂无账号,点击右上角添加"})):(x(),L("div",fn,[(x(!0),L(ne,null,ge(B.value,l=>(x(),se(f,{key:l.id,shadow:"never",class:"account-card","body-style":{padding:"14px"}},{default:h(()=>[y("div",pn,[c(It,{modelValue:d.value,"onUpdate:modelValue":r[3]||(r[3]=O=>d.value=O),class:"card-check"},{default:h(()=>[c(Fe,{value:l.id},null,8,["value"])]),_:2},1032,["modelValue"]),y("div",mn,[y("div",yn,[y("span",_n,v(l.username),1),c(Ut,{size:"small",type:_t(l.status),effect:"light"},{default:h(()=>[w(v(l.status),1)]),_:2},1032,["type"])]),y("div",gn,[w(v(l.remark||"—")+" ",1),te(l)&&l.detail_status?(x(),L("span",wn," · "+v(l.detail_status),1)):Q("",!0),te(l)&&l.elapsed_display?(x(),L("span",vn," · "+v(l.elapsed_display),1)):Q("",!0),String(l.status||"").includes("排队")&&l.queue_ahead!=null?(x(),L("span",bn," · 前面 "+v(l.queue_ahead)+" 个 · 运行中 "+v(l.queue_running_total??0)+" 个 ",1)):te(l)&&(l.queue_pending_total!=null||l.queue_running_total!=null)?(x(),L("span",kn," · 排队 "+v(l.queue_pending_total??0)+" 个 · 运行中 "+v(l.queue_running_total??0)+" 个 ",1)):Q("",!0)])])]),te(l)?(x(),L("div",En,[c(Dt,{percentage:yt(l),"stroke-width":10,"show-text":!1},null,8,["percentage"]),y("div",An,[y("span",null,"内容 "+v(l.progress_items||0)+"/"+v(l.total_items||0),1),y("span",null,"附件 "+v(l.progress_attachments||0)+"/"+v(l.total_attachments||0),1)])])):Q("",!0),y("div",Tn,[c($e,{modelValue:p[l.id],"onUpdate:modelValue":O=>p[l.id]=O,size:"small",style:{width:"130px"}},{default:h(()=>[(x(),L(ne,null,ge(Ve,O=>c(Me,{key:O.value,label:O.label,value:O.value},null,8,["label","value"])),64))]),_:1},8,["modelValue","onUpdate:modelValue"]),y("div",xn,[c(E,{size:"small",type:"primary",disabled:l.is_running,onClick:O=>gt(l)},{default:h(()=>[...r[32]||(r[32]=[w("启动",-1)])]),_:1},8,["disabled","onClick"]),c(E,{size:"small",disabled:!l.is_running,onClick:O=>wt(l)},{default:h(()=>[...r[33]||(r[33]=[w("停止",-1)])]),_:1},8,["disabled","onClick"]),c(E,{size:"small",disabled:l.is_running,onClick:O=>vt(l)},{default:h(()=>[...r[34]||(r[34]=[w("截图",-1)])]),_:1},8,["disabled","onClick"]),c(E,{size:"small",disabled:l.is_running,onClick:O=>At(l)},{default:h(()=>[...r[35]||(r[35]=[w("编辑",-1)])]),_:1},8,["disabled","onClick"]),c(E,{size:"small",type:"danger",text:"",onClick:O=>bt(l)},{default:h(()=>[...r[36]||(r[36]=[w("删除",-1)])]),_:1},8,["onClick"])])])]),_:2},1024))),128))]))],64))]),_:1}),c(ye,{modelValue:V.value,"onUpdate:modelValue":r[8]||(r[8]=l=>V.value=l),title:"添加账号",width:"min(560px, 92vw)"},{footer:h(()=>[c(E,{onClick:r[7]||(r[7]=l=>V.value=!1)},{default:h(()=>[...r[37]||(r[37]=[w("取消",-1)])]),_:1}),c(E,{type:"primary",onClick:Et},{default:h(()=>[...r[38]||(r[38]=[w("添加",-1)])]),_:1})]),default:h(()=>[c(ze,{"label-position":"top"},{default:h(()=>[c(H,{label:"账号"},{default:h(()=>[c(z,{modelValue:R.username,"onUpdate:modelValue":r[4]||(r[4]=l=>R.username=l),placeholder:"请输入账号",autocomplete:"off"},null,8,["modelValue"])]),_:1}),c(H,{label:"密码"},{default:h(()=>[c(z,{modelValue:R.password,"onUpdate:modelValue":r[5]||(r[5]=l=>R.password=l),type:"password","show-password":"",placeholder:"请输入密码",autocomplete:"off"},null,8,["modelValue"])]),_:1}),c(H,{label:"备注(可选,最多200字)"},{default:h(()=>[c(z,{modelValue:R.remark,"onUpdate:modelValue":r[6]||(r[6]=l=>R.remark=l),type:"textarea",rows:3,maxlength:"200","show-word-limit":"",placeholder:"例如:部门/用途"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),c(ye,{modelValue:M.value,"onUpdate:modelValue":r[13]||(r[13]=l=>M.value=l),title:"编辑账号",width:"min(560px, 92vw)"},{footer:h(()=>[c(E,{onClick:r[12]||(r[12]=l=>M.value=!1)},{default:h(()=>[...r[39]||(r[39]=[w("取消",-1)])]),_:1}),c(E,{type:"primary",onClick:Tt},{default:h(()=>[...r[40]||(r[40]=[w("保存",-1)])]),_:1})]),default:h(()=>[c(ze,{"label-position":"top"},{default:h(()=>[c(H,{label:"账号"},{default:h(()=>[c(z,{modelValue:k.username,"onUpdate:modelValue":r[9]||(r[9]=l=>k.username=l),disabled:""},null,8,["modelValue"])]),_:1}),c(H,{label:"新密码(可选)"},{default:h(()=>[c(z,{modelValue:k.password,"onUpdate:modelValue":r[10]||(r[10]=l=>k.password=l),type:"password","show-password":"",placeholder:"留空表示不修改密码",autocomplete:"off"},null,8,["modelValue"])]),_:1}),c(H,{label:"备注(可选,最多200字)"},{default:h(()=>[c(z,{modelValue:k.remark,"onUpdate:modelValue":r[11]||(r[11]=l=>k.remark=l),type:"textarea",rows:3,maxlength:"200","show-word-limit":"",placeholder:"例如:部门/用途"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),c(ye,{modelValue:W.value,"onUpdate:modelValue":r[15]||(r[15]=l=>W.value=l),title:"VIP 特权",width:"min(560px, 92vw)"},{footer:h(()=>[c(E,{type:"primary",onClick:r[14]||(r[14]=l=>W.value=!1)},{default:h(()=>[...r[41]||(r[41]=[w("我知道了",-1)])]),_:1})]),default:h(()=>[c(De,{type:"info",closable:!1,title:"升级 VIP 后可解锁:无限账号、优先排队、定时任务、批量操作。","show-icon":""}),r[42]||(r[42]=y("div",{class:"vip-body"},[y("div",{class:"vip-tip app-muted"},"升级方式:请通过“反馈”联系管理员开通(与后台一致)。")],-1))]),_:1},8,["modelValue"])])}}},On=Qt(Sn,[["__scopeId","data-v-4d5aaedd"]]);export{On as default}; diff --git a/static/app/assets/AccountsPage-D4cYQ_l7.css b/static/app/assets/AccountsPage-D4cYQ_l7.css deleted file mode 100644 index e4302f7..0000000 --- a/static/app/assets/AccountsPage-D4cYQ_l7.css +++ /dev/null @@ -1 +0,0 @@ -.page[data-v-4d5aaedd]{display:flex;flex-direction:column;gap:12px}.stat-card[data-v-4d5aaedd],.panel[data-v-4d5aaedd]{border-radius:var(--app-radius);border:1px solid var(--app-border)}.stat-label[data-v-4d5aaedd]{font-size:12px}.stat-value[data-v-4d5aaedd]{margin-top:6px;font-size:22px;font-weight:900;letter-spacing:.2px}.stat-suffix[data-v-4d5aaedd]{margin-left:6px;font-size:12px;font-weight:600}.upgrade-banner[data-v-4d5aaedd]{border-radius:var(--app-radius);border:1px solid var(--app-border)}.upgrade-actions[data-v-4d5aaedd]{margin-top:10px}.panel-head[data-v-4d5aaedd]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.panel-title[data-v-4d5aaedd]{font-size:16px;font-weight:900}.panel-actions[data-v-4d5aaedd]{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.toolbar[data-v-4d5aaedd]{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:10px;border:1px dashed rgba(17,24,39,.14);border-radius:12px;background:#f6f7fb99}.toolbar-left[data-v-4d5aaedd],.toolbar-middle[data-v-4d5aaedd],.toolbar-right[data-v-4d5aaedd]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.toolbar-right[data-v-4d5aaedd]{margin-left:auto;justify-content:flex-end}.grid[data-v-4d5aaedd]{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}.account-card[data-v-4d5aaedd]{border-radius:14px;border:1px solid var(--app-border)}.card-top[data-v-4d5aaedd]{display:flex;gap:10px}.card-check[data-v-4d5aaedd]{padding-top:2px}.card-main[data-v-4d5aaedd]{min-width:0;flex:1}.card-title[data-v-4d5aaedd]{display:flex;align-items:center;justify-content:space-between;gap:10px}.card-name[data-v-4d5aaedd]{font-size:14px;font-weight:900;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-sub[data-v-4d5aaedd]{margin-top:6px;font-size:12px;line-height:1.4;word-break:break-word}.progress[data-v-4d5aaedd]{margin-top:12px}.progress-meta[data-v-4d5aaedd]{margin-top:6px;display:flex;justify-content:space-between;gap:10px;font-size:12px}.card-controls[data-v-4d5aaedd]{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.card-buttons[data-v-4d5aaedd]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.vip-body[data-v-4d5aaedd]{padding:12px 0 0}.vip-tip[data-v-4d5aaedd]{margin-top:10px;font-size:13px;line-height:1.6}@media(max-width:480px){.grid[data-v-4d5aaedd]{grid-template-columns:1fr}} diff --git a/static/app/assets/AccountsPage-DWp69s0t.css b/static/app/assets/AccountsPage-DWp69s0t.css new file mode 100644 index 0000000..775b1e3 --- /dev/null +++ b/static/app/assets/AccountsPage-DWp69s0t.css @@ -0,0 +1 @@ +.page[data-v-ed664651]{display:flex;flex-direction:column;gap:12px}.stat-card[data-v-ed664651],.panel[data-v-ed664651]{border-radius:var(--app-radius);border:1px solid var(--app-border)}.stat-label[data-v-ed664651]{font-size:12px}.stat-value[data-v-ed664651]{margin-top:6px;font-size:22px;font-weight:900;letter-spacing:.2px}.stat-suffix[data-v-ed664651]{margin-left:6px;font-size:12px;font-weight:600}.upgrade-banner[data-v-ed664651]{border-radius:var(--app-radius);border:1px solid var(--app-border)}.upgrade-actions[data-v-ed664651]{margin-top:10px}.panel-head[data-v-ed664651]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.panel-title[data-v-ed664651]{font-size:16px;font-weight:900}.panel-actions[data-v-ed664651]{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.toolbar[data-v-ed664651]{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:10px;border:1px dashed rgba(17,24,39,.14);border-radius:12px;background:#f6f7fb99}.toolbar-left[data-v-ed664651],.toolbar-middle[data-v-ed664651],.toolbar-right[data-v-ed664651]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.toolbar-right[data-v-ed664651]{margin-left:auto;justify-content:flex-end}.grid[data-v-ed664651]{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}.account-card[data-v-ed664651]{border-radius:14px;border:1px solid var(--app-border)}.card-top[data-v-ed664651]{display:flex;gap:10px}.card-check[data-v-ed664651]{padding-top:2px}.card-main[data-v-ed664651]{min-width:0;flex:1}.card-title[data-v-ed664651]{display:flex;align-items:center;justify-content:space-between;gap:10px}.card-name[data-v-ed664651]{font-size:14px;font-weight:900;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-sub[data-v-ed664651]{margin-top:6px;font-size:12px;line-height:1.4;word-break:break-word}.progress[data-v-ed664651]{margin-top:12px}.progress-meta[data-v-ed664651]{margin-top:6px;display:flex;justify-content:space-between;gap:10px;font-size:12px}.card-controls[data-v-ed664651]{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.card-buttons[data-v-ed664651]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.vip-body[data-v-ed664651]{padding:12px 0 0}.vip-tip[data-v-ed664651]{margin-top:10px;font-size:13px;line-height:1.6}@media(max-width:480px){.grid[data-v-ed664651]{grid-template-columns:1fr}} diff --git a/static/app/assets/AccountsPage-UPsxd2hl.js b/static/app/assets/AccountsPage-UPsxd2hl.js new file mode 100644 index 0000000..a5889e6 --- /dev/null +++ b/static/app/assets/AccountsPage-UPsxd2hl.js @@ -0,0 +1 @@ +import{f as Ft,b as He,a as Ke,c as Mt,s as $t,d as zt,t as Ht,e as Kt,g as Wt,u as Yt,h as Jt}from"./accounts-D_1tBhb9.js";import{p as Xt,_ as Qt,n as Gt,a as U,r as Q,q as _e,c as F,o as jt,m as Zt,b as N,d as c,h as ne,i as K,w as h,e as A,f as T,g as y,t as k,k as w,s as es,F as G,v as ge,E as _,x as j}from"./index-FDI649KN.js";async function ts(){const{data:n}=await Xt.get("/run_stats");return n}const I=Object.create(null);I.open="0";I.close="1";I.ping="2";I.pong="3";I.message="4";I.upgrade="5";I.noop="6";const ae=Object.create(null);Object.keys(I).forEach(n=>{ae[I[n]]=n});const ke={type:"error",data:"parser error"},je=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",Ze=typeof ArrayBuffer=="function",et=n=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(n):n&&n.buffer instanceof ArrayBuffer,Ce=({type:n,data:e},t,s)=>je&&e instanceof Blob?t?s(e):We(e,s):Ze&&(e instanceof ArrayBuffer||et(e))?t?s(e):We(new Blob([e]),s):s(I[n]+(e||"")),We=(n,e)=>{const t=new FileReader;return t.onload=function(){const s=t.result.split(",")[1];e("b"+(s||""))},t.readAsDataURL(n)};function Ye(n){return n instanceof Uint8Array?n:n instanceof ArrayBuffer?new Uint8Array(n):new Uint8Array(n.buffer,n.byteOffset,n.byteLength)}let we;function ss(n,e){if(je&&n.data instanceof Blob)return n.data.arrayBuffer().then(Ye).then(e);if(Ze&&(n.data instanceof ArrayBuffer||et(n.data)))return e(Ye(n.data));Ce(n,!1,t=>{we||(we=new TextEncoder),e(we.encode(t))})}const Je="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ee=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let n=0;n{let e=n.length*.75,t=n.length,s,i=0,a,u,d,p;n[n.length-1]==="="&&(e--,n[n.length-2]==="="&&e--);const S=new ArrayBuffer(e),C=new Uint8Array(S);for(s=0;s>4,C[i++]=(u&15)<<4|d>>2,C[i++]=(d&3)<<6|p&63;return S},rs=typeof ArrayBuffer=="function",Re=(n,e)=>{if(typeof n!="string")return{type:"message",data:tt(n,e)};const t=n.charAt(0);return t==="b"?{type:"message",data:is(n.substring(1),e)}:ae[t]?n.length>1?{type:ae[t],data:n.substring(1)}:{type:ae[t]}:ke},is=(n,e)=>{if(rs){const t=ns(n);return tt(t,e)}else return{base64:!0,data:n}},tt=(n,e)=>{switch(e){case"blob":return n instanceof Blob?n:new Blob([n]);case"arraybuffer":default:return n instanceof ArrayBuffer?n:n.buffer}},st="",os=(n,e)=>{const t=n.length,s=new Array(t);let i=0;n.forEach((a,u)=>{Ce(a,!1,d=>{s[u]=d,++i===t&&e(s.join(st))})})},as=(n,e)=>{const t=n.split(st),s=[];for(let i=0;i{const s=t.length;let i;if(s<126)i=new Uint8Array(1),new DataView(i.buffer).setUint8(0,s);else if(s<65536){i=new Uint8Array(3);const a=new DataView(i.buffer);a.setUint8(0,126),a.setUint16(1,s)}else{i=new Uint8Array(9);const a=new DataView(i.buffer);a.setUint8(0,127),a.setBigUint64(1,BigInt(s))}n.data&&typeof n.data!="string"&&(i[0]|=128),e.enqueue(i),e.enqueue(t)})}})}let ve;function re(n){return n.reduce((e,t)=>e+t.length,0)}function ie(n,e){if(n[0].length===e)return n.shift();const t=new Uint8Array(e);let s=0;for(let i=0;iMath.pow(2,21)-1){d.enqueue(ke);break}i=C*Math.pow(2,32)+S.getUint32(4),s=3}else{if(re(t)n){d.enqueue(ke);break}}}})}const nt=4;function v(n){if(n)return us(n)}function us(n){for(var e in v.prototype)n[e]=v.prototype[e];return n}v.prototype.on=v.prototype.addEventListener=function(n,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+n]=this._callbacks["$"+n]||[]).push(e),this};v.prototype.once=function(n,e){function t(){this.off(n,t),e.apply(this,arguments)}return t.fn=e,this.on(n,t),this};v.prototype.off=v.prototype.removeListener=v.prototype.removeAllListeners=v.prototype.removeEventListener=function(n,e){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var t=this._callbacks["$"+n];if(!t)return this;if(arguments.length==1)return delete this._callbacks["$"+n],this;for(var s,i=0;iPromise.resolve().then(e):(e,t)=>t(e,0),V=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),hs="arraybuffer";function rt(n,...e){return e.reduce((t,s)=>(n.hasOwnProperty(s)&&(t[s]=n[s]),t),{})}const ds=V.setTimeout,fs=V.clearTimeout;function de(n,e){e.useNativeTimers?(n.setTimeoutFn=ds.bind(V),n.clearTimeoutFn=fs.bind(V)):(n.setTimeoutFn=V.setTimeout.bind(V),n.clearTimeoutFn=V.clearTimeout.bind(V))}const ps=1.33;function ms(n){return typeof n=="string"?ys(n):Math.ceil((n.byteLength||n.size)*ps)}function ys(n){let e=0,t=0;for(let s=0,i=n.length;s=57344?t+=3:(s++,t+=4);return t}function it(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function _s(n){let e="";for(let t in n)n.hasOwnProperty(t)&&(e.length&&(e+="&"),e+=encodeURIComponent(t)+"="+encodeURIComponent(n[t]));return e}function gs(n){let e={},t=n.split("&");for(let s=0,i=t.length;s{this.readyState="paused",e()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||t()})),this.writable||(s++,this.once("drain",function(){--s||t()}))}else t()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){const t=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};as(e,this.socket.binaryType).forEach(t),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const e=()=>{this.write([{type:"close"}])};this.readyState==="open"?e():this.once("open",e)}write(e){this.writable=!1,os(e,t=>{this.doWrite(t,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const e=this.opts.secure?"https":"http",t=this.query||{};return this.opts.timestampRequests!==!1&&(t[this.opts.timestampParam]=it()),!this.supportsBinary&&!t.sid&&(t.b64=1),this.createUri(e,t)}}let ot=!1;try{ot=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const bs=ot;function ks(){}class Es extends vs{constructor(e){if(super(e),typeof location<"u"){const t=location.protocol==="https:";let s=location.port;s||(s=t?"443":"80"),this.xd=typeof location<"u"&&e.hostname!==location.hostname||s!==e.port}}doWrite(e,t){const s=this.request({method:"POST",data:e});s.on("success",t),s.on("error",(i,a)=>{this.onError("xhr post error",i,a)})}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(t,s)=>{this.onError("xhr poll error",t,s)}),this.pollXhr=e}}class q extends v{constructor(e,t,s){super(),this.createRequest=e,de(this,s),this._opts=s,this._method=s.method||"GET",this._uri=t,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var e;const t=rt(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");t.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(t);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let i in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(i)&&s.setRequestHeader(i,this._opts.extraHeaders[i])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(e=this._opts.cookieJar)===null||e===void 0||e.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var i;s.readyState===3&&((i=this._opts.cookieJar)===null||i===void 0||i.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(i){this.setTimeoutFn(()=>{this._onError(i)},0);return}typeof document<"u"&&(this._index=q.requestsCount++,q.requests[this._index]=this)}_onError(e){this.emitReserved("error",e,this._xhr),this._cleanup(!0)}_cleanup(e){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=ks,e)try{this._xhr.abort()}catch{}typeof document<"u"&&delete q.requests[this._index],this._xhr=null}}_onLoad(){const e=this._xhr.responseText;e!==null&&(this.emitReserved("data",e),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}q.requestsCount=0;q.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",Xe);else if(typeof addEventListener=="function"){const n="onpagehide"in V?"pagehide":"unload";addEventListener(n,Xe,!1)}}function Xe(){for(let n in q.requests)q.requests.hasOwnProperty(n)&&q.requests[n].abort()}const As=(function(){const n=at({xdomain:!1});return n&&n.responseType!==null})();class Ts extends Es{constructor(e){super(e);const t=e&&e.forceBase64;this.supportsBinary=As&&!t}request(e={}){return Object.assign(e,{xd:this.xd},this.opts),new q(at,this.uri(),e)}}function at(n){const e=n.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!e||bs))return new XMLHttpRequest}catch{}if(!e)try{return new V[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const lt=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class xs extends Be{get name(){return"websocket"}doOpen(){const e=this.uri(),t=this.opts.protocols,s=lt?{}:rt(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(e,t,s)}catch(i){return this.emitReserved("error",i)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let t=0;t{try{this.doWrite(s,a)}catch{}i&&he(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",t=this.query||{};return this.opts.timestampRequests&&(t[this.opts.timestampParam]=it()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}}const be=V.WebSocket||V.MozWebSocket;class Ss extends xs{createSocket(e,t,s){return lt?new be(e,t,s):t?new be(e,t):new be(e)}doWrite(e,t){this.ws.send(t)}}class Cs extends Be{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(e){return this.emitReserved("error",e)}this._transport.closed.then(()=>{this.onClose()}).catch(e=>{this.onError("webtransport error",e)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(e=>{const t=cs(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=e.readable.pipeThrough(t).getReader(),i=ls();i.readable.pipeTo(e.writable),this._writer=i.writable.getWriter();const a=()=>{s.read().then(({done:d,value:p})=>{d||(this.onPacket(p),a())}).catch(d=>{})};a();const u={type:"open"};this.query.sid&&(u.data=`{"sid":"${this.query.sid}"}`),this._writer.write(u).then(()=>this.onOpen())})})}write(e){this.writable=!1;for(let t=0;t{i&&he(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var e;(e=this._transport)===null||e===void 0||e.close()}}const Rs={websocket:Ss,webtransport:Cs,polling:Ts},Bs=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,Os=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Ee(n){if(n.length>8e3)throw"URI too long";const e=n,t=n.indexOf("["),s=n.indexOf("]");t!=-1&&s!=-1&&(n=n.substring(0,t)+n.substring(t,s).replace(/:/g,";")+n.substring(s,n.length));let i=Bs.exec(n||""),a={},u=14;for(;u--;)a[Os[u]]=i[u]||"";return t!=-1&&s!=-1&&(a.source=e,a.host=a.host.substring(1,a.host.length-1).replace(/;/g,":"),a.authority=a.authority.replace("[","").replace("]","").replace(/;/g,":"),a.ipv6uri=!0),a.pathNames=Ns(a,a.path),a.queryKey=Vs(a,a.query),a}function Ns(n,e){const t=/\/{2,9}/g,s=e.replace(t,"/").split("/");return(e.slice(0,1)=="/"||e.length===0)&&s.splice(0,1),e.slice(-1)=="/"&&s.splice(s.length-1,1),s}function Vs(n,e){const t={};return e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,i,a){i&&(t[i]=a)}),t}const Ae=typeof addEventListener=="function"&&typeof removeEventListener=="function",le=[];Ae&&addEventListener("offline",()=>{le.forEach(n=>n())},!1);class D extends v{constructor(e,t){if(super(),this.binaryType=hs,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,e&&typeof e=="object"&&(t=e,e=null),e){const s=Ee(e);t.hostname=s.host,t.secure=s.protocol==="https"||s.protocol==="wss",t.port=s.port,s.query&&(t.query=s.query)}else t.host&&(t.hostname=Ee(t.host).host);de(this,t),this.secure=t.secure!=null?t.secure:typeof location<"u"&&location.protocol==="https:",t.hostname&&!t.port&&(t.port=this.secure?"443":"80"),this.hostname=t.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=t.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},t.transports.forEach(s=>{const i=s.prototype.name;this.transports.push(i),this._transportsByName[i]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},t),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=gs(this.opts.query)),Ae&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},le.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(e){const t=Object.assign({},this.opts.query);t.EIO=nt,t.transport=e,this.id&&(t.sid=this.id);const s=Object.assign({},this.opts,{query:t,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new this._transportsByName[e](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const e=this.opts.rememberUpgrade&&D.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const t=this.createTransport(e);t.open(),this.setTransport(t)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",t=>this._onClose("transport close",t))}onOpen(){this.readyState="open",D.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(e){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",e),this.emitReserved("heartbeat"),e.type){case"open":this.onHandshake(JSON.parse(e.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const t=new Error("server error");t.code=e.data,this._onError(t);break;case"message":this.emitReserved("data",e.data),this.emitReserved("message",e.data);break}}onHandshake(e){this.emitReserved("handshake",e),this.id=e.sid,this.transport.query.sid=e.sid,this._pingInterval=e.pingInterval,this._pingTimeout=e.pingTimeout,this._maxPayload=e.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const e=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+e,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},e),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this._getWritablePackets();this.transport.send(e),this._prevBufferLen=e.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let t=1;for(let s=0;s0&&t>this._maxPayload)return this.writeBuffer.slice(0,s);t+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const e=Date.now()>this._pingTimeoutTime;return e&&(this._pingTimeoutTime=0,he(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),e}write(e,t,s){return this._sendPacket("message",e,t,s),this}send(e,t,s){return this._sendPacket("message",e,t,s),this}_sendPacket(e,t,s,i){if(typeof t=="function"&&(i=t,t=void 0),typeof s=="function"&&(i=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const a={type:e,data:t,options:s};this.emitReserved("packetCreate",a),this.writeBuffer.push(a),i&&this.once("flush",i),this.flush()}close(){const e=()=>{this._onClose("forced close"),this.transport.close()},t=()=>{this.off("upgrade",t),this.off("upgradeError",t),e()},s=()=>{this.once("upgrade",t),this.once("upgradeError",t)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():e()}):this.upgrading?s():e()),this}_onError(e){if(D.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",e),this._onClose("transport error",e)}_onClose(e,t){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),Ae&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=le.indexOf(this._offlineEventListener);s!==-1&&le.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",e,t),this.writeBuffer=[],this._prevBufferLen=0}}}D.protocol=nt;class Ls extends D{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let e=0;e{s||(t.send([{type:"ping",data:"probe"}]),t.once("packet",x=>{if(!s)if(x.type==="pong"&&x.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",t),!t)return;D.priorWebsocketSuccess=t.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(C(),this.setTransport(t),t.send([{type:"upgrade"}]),this.emitReserved("upgrade",t),t=null,this.upgrading=!1,this.flush())})}else{const L=new Error("probe error");L.transport=t.name,this.emitReserved("upgradeError",L)}}))};function a(){s||(s=!0,C(),t.close(),t=null)}const u=x=>{const L=new Error("probe error: "+x);L.transport=t.name,a(),this.emitReserved("upgradeError",L)};function d(){u("transport closed")}function p(){u("socket closed")}function S(x){t&&x.name!==t.name&&a()}const C=()=>{t.removeListener("open",i),t.removeListener("error",u),t.removeListener("close",d),this.off("close",p),this.off("upgrading",S)};t.once("open",i),t.once("error",u),t.once("close",d),this.once("close",p),this.once("upgrading",S),this._upgrades.indexOf("webtransport")!==-1&&e!=="webtransport"?this.setTimeoutFn(()=>{s||t.open()},200):t.open()}onHandshake(e){this._upgrades=this._filterUpgrades(e.upgrades),super.onHandshake(e)}_filterUpgrades(e){const t=[];for(let s=0;sRs[i]).filter(i=>!!i)),super(e,s)}};function qs(n,e="",t){let s=n;t=t||typeof location<"u"&&location,n==null&&(n=t.protocol+"//"+t.host),typeof n=="string"&&(n.charAt(0)==="/"&&(n.charAt(1)==="/"?n=t.protocol+n:n=t.host+n),/^(https?|wss?):\/\//.test(n)||(typeof t<"u"?n=t.protocol+"//"+n:n="https://"+n),s=Ee(n)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const a=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+a+":"+s.port+e,s.href=s.protocol+"://"+a+(t&&t.port===s.port?"":":"+s.port),s}const Is=typeof ArrayBuffer=="function",Us=n=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(n):n.buffer instanceof ArrayBuffer,ct=Object.prototype.toString,Ds=typeof Blob=="function"||typeof Blob<"u"&&ct.call(Blob)==="[object BlobConstructor]",Fs=typeof File=="function"||typeof File<"u"&&ct.call(File)==="[object FileConstructor]";function Oe(n){return Is&&(n instanceof ArrayBuffer||Us(n))||Ds&&n instanceof Blob||Fs&&n instanceof File}function ce(n,e){if(!n||typeof n!="object")return!1;if(Array.isArray(n)){for(let t=0,s=n.length;t=0&&n.num{delete this.acks[e];for(let d=0;d{this.io.clearTimeoutFn(a),t.apply(this,d)};u.withError=!0,this.acks[e]=u}emitWithAck(e,...t){return new Promise((s,i)=>{const a=(u,d)=>u?i(u):s(d);a.withError=!0,t.push(a),this.emit(e,...t)})}_addToQueue(e){let t;typeof e[e.length-1]=="function"&&(t=e.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push((i,...a)=>s!==this._queue[0]?void 0:(i!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),t&&t(i)):(this._queue.shift(),t&&t(null,...a)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||this._queue.length===0)return;const t=this._queue[0];t.pending&&!e||(t.pending=!0,t.tryCount++,this.flags=t.flags,this.emit.apply(this,t.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){typeof this.auth=="function"?this.auth(e=>{this._sendConnectPacket(e)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:m.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,t){this.connected=!1,delete this.id,this.emitReserved("disconnect",e,t),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(e=>{if(!this.sendBuffer.some(s=>String(s.id)===e)){const s=this.acks[e];delete this.acks[e],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case m.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case m.EVENT:case m.BINARY_EVENT:this.onevent(e);break;case m.ACK:case m.BINARY_ACK:this.onack(e);break;case m.DISCONNECT:this.ondisconnect();break;case m.CONNECT_ERROR:this.destroy();const s=new Error(e.data.message);s.data=e.data.data,this.emitReserved("connect_error",s);break}}onevent(e){const t=e.data||[];e.id!=null&&t.push(this.ack(e.id)),this.connected?this.emitEvent(t):this.receiveBuffer.push(Object.freeze(t))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const t=this._anyListeners.slice();for(const s of t)s.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&typeof e[e.length-1]=="string"&&(this._lastOffset=e[e.length-1])}ack(e){const t=this;let s=!1;return function(...i){s||(s=!0,t.packet({type:m.ACK,id:e,data:i}))}}onack(e){const t=this.acks[e.id];typeof t=="function"&&(delete this.acks[e.id],t.withError&&e.data.unshift(null),t.apply(this,e.data))}onconnect(e,t){this.id=e,this.recovered=t&&this._pid===t,this._pid=t,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(e=>this.emitEvent(e)),this.receiveBuffer=[],this.sendBuffer.forEach(e=>{this.notifyOutgoingListeners(e),this.packet(e)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(e=>e()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:m.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const t=this._anyListeners;for(let s=0;s0&&n.jitter<=1?n.jitter:0,this.attempts=0}W.prototype.duration=function(){var n=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var e=Math.random(),t=Math.floor(e*this.jitter*n);n=(Math.floor(e*10)&1)==0?n-t:n+t}return Math.min(n,this.max)|0};W.prototype.reset=function(){this.attempts=0};W.prototype.setMin=function(n){this.ms=n};W.prototype.setMax=function(n){this.max=n};W.prototype.setJitter=function(n){this.jitter=n};class Se extends v{constructor(e,t){var s;super(),this.nsps={},this.subs=[],e&&typeof e=="object"&&(t=e,e=void 0),t=t||{},t.path=t.path||"/socket.io",this.opts=t,de(this,t),this.reconnection(t.reconnection!==!1),this.reconnectionAttempts(t.reconnectionAttempts||1/0),this.reconnectionDelay(t.reconnectionDelay||1e3),this.reconnectionDelayMax(t.reconnectionDelayMax||5e3),this.randomizationFactor((s=t.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new W({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(t.timeout==null?2e4:t.timeout),this._readyState="closed",this.uri=e;const i=t.parser||Ys;this.encoder=new i.Encoder,this.decoder=new i.Decoder,this._autoConnect=t.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,e||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(e){return e===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var t;return e===void 0?this._reconnectionDelay:(this._reconnectionDelay=e,(t=this.backoff)===null||t===void 0||t.setMin(e),this)}randomizationFactor(e){var t;return e===void 0?this._randomizationFactor:(this._randomizationFactor=e,(t=this.backoff)===null||t===void 0||t.setJitter(e),this)}reconnectionDelayMax(e){var t;return e===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,(t=this.backoff)===null||t===void 0||t.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(e){if(~this._readyState.indexOf("open"))return this;this.engine=new Ps(this.uri,this.opts);const t=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const i=P(t,"open",function(){s.onopen(),e&&e()}),a=d=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",d),e?e(d):this.maybeReconnectOnOpen()},u=P(t,"error",a);if(this._timeout!==!1){const d=this._timeout,p=this.setTimeoutFn(()=>{i(),a(new Error("timeout")),t.close()},d);this.opts.autoUnref&&p.unref(),this.subs.push(()=>{this.clearTimeoutFn(p)})}return this.subs.push(i),this.subs.push(u),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(P(e,"ping",this.onping.bind(this)),P(e,"data",this.ondata.bind(this)),P(e,"error",this.onerror.bind(this)),P(e,"close",this.onclose.bind(this)),P(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(t){this.onclose("parse error",t)}}ondecoded(e){he(()=>{this.emitReserved("packet",e)},this.setTimeoutFn)}onerror(e){this.emitReserved("error",e)}socket(e,t){let s=this.nsps[e];return s?this._autoConnect&&!s.active&&s.connect():(s=new ut(this,e,t),this.nsps[e]=s),s}_destroy(e){const t=Object.keys(this.nsps);for(const s of t)if(this.nsps[s].active)return;this._close()}_packet(e){const t=this.encoder.encode(e);for(let s=0;se()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(e,t){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,t),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const t=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{e.skipReconnect||(this.emitReserved("reconnect_attempt",e.backoff.attempts),!e.skipReconnect&&e.open(i=>{i?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",i)):e.onreconnect()}))},t);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}const Z={};function ue(n,e){typeof n=="object"&&(e=n,n=void 0),e=e||{};const t=qs(n,e.path||"/socket.io"),s=t.source,i=t.id,a=t.path,u=Z[i]&&a in Z[i].nsps,d=e.forceNew||e["force new connection"]||e.multiplex===!1||u;let p;return d?p=new Se(s,e):(Z[i]||(Z[i]=new Se(s,e)),p=Z[i]),t.query&&!e.query&&(e.query=t.queryKey),p.socket(t.path,e)}Object.assign(ue,{Manager:Se,Socket:ut,io:ue,connect:ue});let oe=null;function Xs(){return oe||(oe=ue({transports:["websocket","polling"],withCredentials:!0}),oe)}const Qs={class:"page"},Gs={class:"stat-value"},js={class:"stat-value"},Zs={class:"stat-value"},en={class:"stat-value"},tn={class:"stat-value"},sn={class:"stat-value"},nn={class:"stat-suffix app-muted"},rn={class:"upgrade-actions"},on={class:"panel-head"},an={class:"panel-actions"},ln={class:"toolbar"},cn={class:"toolbar-left"},un={class:"app-muted"},hn={class:"toolbar-middle"},dn={class:"toolbar-right"},fn={key:1,class:"grid"},pn={class:"card-top"},mn={class:"card-main"},yn={class:"card-title"},_n={class:"card-name"},gn={class:"card-sub app-muted"},wn={key:0},vn={key:1},bn={key:2},kn={key:3},En={key:0,class:"progress"},An={class:"progress-meta app-muted"},Tn={class:"card-controls"},xn={class:"card-buttons"},Ge="zsglpt:accounts:enable_screenshot",Sn={__name:"AccountsPage",setup(n){const e=Gt(),t=Xs(),s=U(!1),i=U(!1),a=Q({today_completed:0,today_failed:0,current_running:0,today_items:0,today_attachments:0}),u=Q({}),d=U([]),p=Q({}),S=U("应读");function C(){try{const o=window.localStorage.getItem(Ge);if(o==="0"||o==="false")return!1;if(o==="1"||o==="true")return!0}catch{}return!0}const x=U(C());_e(x,o=>{try{window.localStorage.setItem(Ge,o?"1":"0")}catch{}});const L=U(!1),M=U(!1),Y=U(!1),R=Q({username:"",password:"",remark:""}),b=Q({id:"",username:"",password:"",remark:"",originalRemark:""}),Ve=[{label:"应读",value:"应读"},{label:"注册前未读",value:"注册前未读"}],B=F(()=>Object.values(u).sort((o,r)=>String(o.username||"").localeCompare(String(r.username||""),"zh-CN"))),fe=F(()=>B.value.length),ht=F(()=>e.isVip?999:3),Le=F(()=>d.value.length),dt=F(()=>fe.value>0&&Le.value===fe.value),ft=F(()=>!e.isVip);function J(o){const r=u[o.id]||{};u[o.id]={...r,...o}}function pe(o){const r=Array.isArray(o)?o:[],f=new Set(r.map(g=>String(g?.id||"")));for(const g of Object.keys(u))f.has(g)||delete u[g];for(const g of r)J(g)}function pt(){for(const o of B.value)p[o.id]||(p[o.id]="应读")}_e(B,pt,{immediate:!0});function mt(o){o?d.value=B.value.map(r=>r.id):d.value=[]}function te(o){return e.isVip?!0:(_.warning(`${o}是VIP专属功能`),Y.value=!0,!1)}function yt(o){const r=Number(o.total_items||0),f=Number(o.progress_items||0);return r?Math.max(0,Math.min(100,Math.round(f/r*100))):0}function _t(o=""){const r=String(o);return r.includes("已完成")||r.includes("完成")?"success":r.includes("失败")||r.includes("错误")||r.includes("异常")||r.includes("登录失败")?"danger":r.includes("排队")||r.includes("运行")||r.includes("截图")?"warning":"info"}function se(o){if(!o?.is_running)return!1;const r=String(o.status||""),f=String(o.detail_status||"");return!(!r||r==="未开始"||!r.includes("运行")||r.includes("截图")||r.includes("等待截图")||f.includes("截图")||f.includes("等待截图")||f.includes("浏览完成")||f.includes("任务完成")||r.includes("已完成"))}async function $(o={}){const r=!!o?.silent;r||(i.value=!0);try{const f=await ts();a.today_completed=Number(f?.today_completed||0),a.today_failed=Number(f?.today_failed||0),a.current_running=Number(f?.current_running||0),a.today_items=Number(f?.today_items||0),a.today_attachments=Number(f?.today_attachments||0)}catch(f){f?.response?.status===401&&(window.location.href="/login")}finally{r||(i.value=!1)}}async function Pe(){s.value=!0;try{const o=await Ft({refresh:!0});pe(o)}catch(o){o?.response?.status===401&&(window.location.href="/login")}finally{s.value=!1}}async function gt(o){try{await $t(o.id,{browse_type:p[o.id]||"应读",enable_screenshot:x.value})}catch(r){const f=r?.response?.data;_.error(f?.error||"启动失败")}}async function wt(o){try{await zt(o.id)}catch(r){const f=r?.response?.data;_.error(f?.error||"停止失败")}}async function vt(o){try{await Ht(o.id,{browse_type:p[o.id]||"应读"}),_.success("已提交截图")}catch(r){const f=r?.response?.data;_.error(f?.error||"截图失败")}}async function bt(o){try{await j.confirm(`确定要删除账号「${o.username}」吗?`,"删除账号",{confirmButtonText:"删除",cancelButtonText:"取消",type:"warning"})}catch{return}try{const r=await Kt(o.id);r?.success?(delete u[o.id],d.value=d.value.filter(f=>f!==o.id),_.success("已删除"),await $()):_.error(r?.error||"删除失败")}catch(r){const f=r?.response?.data;_.error(f?.error||"删除失败")}}function kt(){R.username="",R.password="",R.remark="",L.value=!0}async function Et(){const o=R.username.trim();if(!o||!R.password.trim()){_.error("用户名和密码不能为空");return}try{await Wt({username:o,password:R.password,remember:!0,remark:R.remark.trim()}),_.success("添加成功"),L.value=!1,await $()}catch(r){const f=r?.response?.data;_.error(f?.error||"添加失败")}}function At(o){b.id=o.id,b.username=o.username,b.password="",b.remark=String(o.remark||""),b.originalRemark=String(o.remark||""),M.value=!0}async function Tt(){if(!b.id)return;const o=b.password.trim(),r=b.remark.trim();if(!o&&r===b.originalRemark){_.info("没有修改"),M.value=!1;return}try{if(o){const f=await Yt(b.id,{password:o,remember:!0});f?.account&&J(f.account)}r!==b.originalRemark&&(await Jt(b.id,{remark:r}),J({id:b.id,remark:r})),_.success("已更新"),M.value=!1}catch(f){const g=f?.response?.data;_.error(g?.error||"更新失败")}}async function xt(){if(te("批量操作")){if(d.value.length===0){_.warning("请先选择账号");return}try{const o=await He({account_ids:d.value,browse_type:S.value,enable_screenshot:x.value});_.success(`已启动 ${o?.started_count||0} 个账号`)}catch(o){const r=o?.response?.data;_.error(r?.error||"操作失败")}}}async function St(){if(te("批量操作")){if(d.value.length===0){_.warning("请先选择账号");return}try{const o=await Ke({account_ids:d.value});_.success(`已停止 ${o?.stopped_count||0} 个账号`)}catch(o){const r=o?.response?.data;_.error(r?.error||"操作失败")}}}async function Ct(){if(te("全部启动")){if(B.value.length===0){_.warning("没有账号");return}try{await j.confirm("确定要启动全部账号吗?","全部启动",{confirmButtonText:"启动",cancelButtonText:"取消",type:"warning"})}catch{return}try{const o=await He({account_ids:B.value.map(r=>r.id),browse_type:S.value,enable_screenshot:x.value});_.success(`已启动 ${o?.started_count||0} 个账号`)}catch(o){const r=o?.response?.data;_.error(r?.error||"操作失败")}}}async function Rt(){if(te("全部停止")){if(B.value.length===0){_.warning("没有账号");return}try{await j.confirm("确定要停止全部账号吗?","全部停止",{confirmButtonText:"停止",cancelButtonText:"取消",type:"warning"})}catch{return}try{const o=await Ke({account_ids:B.value.map(r=>r.id)});_.success(`已停止 ${o?.stopped_count||0} 个账号`)}catch(o){const r=o?.response?.data;_.error(r?.error||"操作失败")}}}async function Bt(){if(B.value.length===0){_.warning("没有账号");return}try{await j.confirm("确定要清空所有账号吗?此操作不可恢复!","清空账号",{confirmButtonText:"继续",cancelButtonText:"取消",type:"warning"}),await j.confirm("再次确认:真的要删除所有账号吗?","二次确认",{confirmButtonText:"删除",cancelButtonText:"取消",type:"warning"})}catch{return}try{const o=await Mt();if(o?.success){pe([]),d.value=[],_.success("已清空所有账号"),await $();return}_.error(o?.error||"操作失败")}catch(o){const r=o?.response?.data;_.error(r?.error||"操作失败")}}function Ot(){const o=g=>{pe(g)},r=g=>{J(g)},f=g=>{g?.account_id&&J({id:g.account_id,detail_status:g.stage||"",total_items:g.total_items,progress_items:g.browsed_items,total_attachments:g.total_attachments,progress_attachments:g.viewed_attachments,elapsed_seconds:g.elapsed_seconds,elapsed_display:g.elapsed_display})};return t.on("accounts_list",o),t.on("account_update",r),t.on("task_progress",f),t.connected||t.connect(),()=>{t.off("accounts_list",o),t.off("account_update",r),t.off("task_progress",f)}}let me=null,X=null;const qe=F(()=>B.value.some(o=>!(!o?.is_running||String(o.status||"").includes("排队"))));function Ie(){X&&(window.clearInterval(X),X=null)}function Nt(){X||(X=window.setInterval(()=>$({silent:!0}),1e4))}function Ue(o=null){const r=qe.value;o===!0&&r===!1&&$({silent:!0}).catch(()=>{}),r?Nt():Ie()}return _e(qe,(o,r)=>{Ue(r)}),jt(async()=>{e.vipInfo||e.refreshVipInfo().catch(()=>{window.location.href="/login"}),me=Ot(),await Pe(),await $(),Ue()}),Zt(()=>{me&&me(),Ie()}),(o,r)=>{const f=A("el-card"),g=A("el-col"),Vt=A("el-row"),E=A("el-button"),De=A("el-alert"),Fe=A("el-checkbox"),Me=A("el-option"),$e=A("el-select"),Lt=A("el-switch"),Pt=A("el-skeleton"),qt=A("el-empty"),It=A("el-checkbox-group"),Ut=A("el-tag"),Dt=A("el-progress"),z=A("el-input"),H=A("el-form-item"),ze=A("el-form"),ye=A("el-dialog");return T(),N("div",Qs,[c(Vt,{gutter:12,class:"stats-row"},{default:h(()=>[c(g,{xs:12,sm:8,md:4},{default:h(()=>[c(f,{shadow:"never",class:"stat-card","body-style":{padding:"14px"}},{default:h(()=>[r[16]||(r[16]=y("div",{class:"stat-label app-muted"},"今日完成",-1)),y("div",Gs,k(a.today_completed),1)]),_:1})]),_:1}),c(g,{xs:12,sm:8,md:4},{default:h(()=>[c(f,{shadow:"never",class:"stat-card","body-style":{padding:"14px"}},{default:h(()=>[r[17]||(r[17]=y("div",{class:"stat-label app-muted"},"今日失败",-1)),y("div",js,k(a.today_failed),1)]),_:1})]),_:1}),c(g,{xs:12,sm:8,md:4},{default:h(()=>[c(f,{shadow:"never",class:"stat-card","body-style":{padding:"14px"}},{default:h(()=>[r[18]||(r[18]=y("div",{class:"stat-label app-muted"},"运行中",-1)),y("div",Zs,k(a.current_running),1)]),_:1})]),_:1}),c(g,{xs:12,sm:8,md:4},{default:h(()=>[c(f,{shadow:"never",class:"stat-card","body-style":{padding:"14px"}},{default:h(()=>[r[19]||(r[19]=y("div",{class:"stat-label app-muted"},"浏览内容",-1)),y("div",en,k(a.today_items),1)]),_:1})]),_:1}),c(g,{xs:12,sm:8,md:4},{default:h(()=>[c(f,{shadow:"never",class:"stat-card","body-style":{padding:"14px"}},{default:h(()=>[r[20]||(r[20]=y("div",{class:"stat-label app-muted"},"查看附件",-1)),y("div",tn,k(a.today_attachments),1)]),_:1})]),_:1}),c(g,{xs:12,sm:8,md:4},{default:h(()=>[c(f,{shadow:"never",class:"stat-card","body-style":{padding:"14px"}},{default:h(()=>[r[21]||(r[21]=y("div",{class:"stat-label app-muted"},"账号数",-1)),y("div",sn,[w(k(fe.value),1),y("span",nn,"/ "+k(es(e).isVip?"∞":ht.value),1)])]),_:1})]),_:1})]),_:1}),ft.value?(T(),ne(De,{key:0,type:"info","show-icon":"",closable:!1,class:"upgrade-banner",title:"升级 VIP,解锁更多功能:无限账号 · 优先排队 · 定时任务 · 批量操作"},{default:h(()=>[y("div",rn,[c(E,{type:"primary",plain:"",onClick:r[0]||(r[0]=l=>Y.value=!0)},{default:h(()=>[...r[22]||(r[22]=[w("了解VIP特权",-1)])]),_:1})])]),_:1})):K("",!0),c(f,{shadow:"never",class:"panel","body-style":{padding:"14px"}},{default:h(()=>[y("div",on,[r[25]||(r[25]=y("div",{class:"panel-title"},"账号管理",-1)),y("div",an,[c(E,{loading:s.value,onClick:Pe},{default:h(()=>[...r[23]||(r[23]=[w("刷新",-1)])]),_:1},8,["loading"]),c(E,{type:"primary",onClick:kt},{default:h(()=>[...r[24]||(r[24]=[w("添加账号",-1)])]),_:1})])]),y("div",ln,[y("div",cn,[c(Fe,{"model-value":dt.value,onChange:mt},{default:h(()=>[...r[26]||(r[26]=[w("全选",-1)])]),_:1},8,["model-value"]),y("span",un,"已选 "+k(Le.value)+" 个",1)]),y("div",hn,[c($e,{modelValue:S.value,"onUpdate:modelValue":r[1]||(r[1]=l=>S.value=l),size:"small",style:{width:"120px"}},{default:h(()=>[(T(),N(G,null,ge(Ve,l=>c(Me,{key:l.value,label:l.label,value:l.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"]),c(Lt,{modelValue:x.value,"onUpdate:modelValue":r[2]||(r[2]=l=>x.value=l),"inline-prompt":"","active-text":"截图","inactive-text":"不截图"},null,8,["modelValue"])]),y("div",dn,[c(E,{type:"primary",onClick:xt},{default:h(()=>[...r[27]||(r[27]=[w("批量启动",-1)])]),_:1}),c(E,{onClick:St},{default:h(()=>[...r[28]||(r[28]=[w("批量停止",-1)])]),_:1}),c(E,{type:"success",plain:"",onClick:Ct},{default:h(()=>[...r[29]||(r[29]=[w("全部启动",-1)])]),_:1}),c(E,{type:"danger",plain:"",onClick:Rt},{default:h(()=>[...r[30]||(r[30]=[w("全部停止",-1)])]),_:1}),c(E,{type:"danger",text:"",onClick:Bt},{default:h(()=>[...r[31]||(r[31]=[w("清空",-1)])]),_:1})])]),s.value?(T(),ne(Pt,{key:0,rows:5,animated:""})):(T(),N(G,{key:1},[B.value.length===0?(T(),ne(qt,{key:0,description:"暂无账号,点击右上角添加"})):(T(),N("div",fn,[(T(!0),N(G,null,ge(B.value,l=>(T(),ne(f,{key:l.id,shadow:"never",class:"account-card","body-style":{padding:"14px"}},{default:h(()=>[y("div",pn,[c(It,{modelValue:d.value,"onUpdate:modelValue":r[3]||(r[3]=O=>d.value=O),class:"card-check"},{default:h(()=>[c(Fe,{value:l.id},null,8,["value"])]),_:2},1032,["modelValue"]),y("div",mn,[y("div",yn,[y("span",_n,k(l.username),1),c(Ut,{size:"small",type:_t(l.status),effect:"light"},{default:h(()=>[w(k(l.status),1)]),_:2},1032,["type"])]),y("div",gn,[w(k(l.remark||"—")+" ",1),se(l)&&l.detail_status?(T(),N("span",wn," · "+k(l.detail_status),1)):K("",!0),se(l)&&l.elapsed_display?(T(),N("span",vn," · "+k(l.elapsed_display),1)):K("",!0),String(l.status||"").includes("排队")&&l.queue_ahead!=null?(T(),N("span",bn," · 前面 "+k(l.queue_ahead)+" 个 · 运行中 "+k(l.queue_running_total??0)+" 个 ",1)):se(l)&&(l.queue_pending_total!=null||l.queue_running_total!=null)?(T(),N("span",kn," · 排队 "+k(l.queue_pending_total??0)+" 个 · 运行中 "+k(l.queue_running_total??0)+" 个 ",1)):K("",!0)])])]),se(l)?(T(),N("div",En,[c(Dt,{percentage:yt(l),"stroke-width":10,"show-text":!1},null,8,["percentage"]),y("div",An,[y("span",null,[w(" 内容 "+k(l.progress_items||0),1),l.total_items?(T(),N(G,{key:0},[w("/"+k(l.total_items),1)],64)):K("",!0)])])])):K("",!0),y("div",Tn,[c($e,{modelValue:p[l.id],"onUpdate:modelValue":O=>p[l.id]=O,size:"small",style:{width:"130px"}},{default:h(()=>[(T(),N(G,null,ge(Ve,O=>c(Me,{key:O.value,label:O.label,value:O.value},null,8,["label","value"])),64))]),_:1},8,["modelValue","onUpdate:modelValue"]),y("div",xn,[c(E,{size:"small",type:"primary",disabled:l.is_running,onClick:O=>gt(l)},{default:h(()=>[...r[32]||(r[32]=[w("启动",-1)])]),_:1},8,["disabled","onClick"]),c(E,{size:"small",disabled:!l.is_running,onClick:O=>wt(l)},{default:h(()=>[...r[33]||(r[33]=[w("停止",-1)])]),_:1},8,["disabled","onClick"]),c(E,{size:"small",disabled:l.is_running,onClick:O=>vt(l)},{default:h(()=>[...r[34]||(r[34]=[w("截图",-1)])]),_:1},8,["disabled","onClick"]),c(E,{size:"small",disabled:l.is_running,onClick:O=>At(l)},{default:h(()=>[...r[35]||(r[35]=[w("编辑",-1)])]),_:1},8,["disabled","onClick"]),c(E,{size:"small",type:"danger",text:"",onClick:O=>bt(l)},{default:h(()=>[...r[36]||(r[36]=[w("删除",-1)])]),_:1},8,["onClick"])])])]),_:2},1024))),128))]))],64))]),_:1}),c(ye,{modelValue:L.value,"onUpdate:modelValue":r[8]||(r[8]=l=>L.value=l),title:"添加账号",width:"min(560px, 92vw)"},{footer:h(()=>[c(E,{onClick:r[7]||(r[7]=l=>L.value=!1)},{default:h(()=>[...r[37]||(r[37]=[w("取消",-1)])]),_:1}),c(E,{type:"primary",onClick:Et},{default:h(()=>[...r[38]||(r[38]=[w("添加",-1)])]),_:1})]),default:h(()=>[c(ze,{"label-position":"top"},{default:h(()=>[c(H,{label:"账号"},{default:h(()=>[c(z,{modelValue:R.username,"onUpdate:modelValue":r[4]||(r[4]=l=>R.username=l),placeholder:"请输入账号",autocomplete:"off"},null,8,["modelValue"])]),_:1}),c(H,{label:"密码"},{default:h(()=>[c(z,{modelValue:R.password,"onUpdate:modelValue":r[5]||(r[5]=l=>R.password=l),type:"password","show-password":"",placeholder:"请输入密码",autocomplete:"off"},null,8,["modelValue"])]),_:1}),c(H,{label:"备注(可选,最多200字)"},{default:h(()=>[c(z,{modelValue:R.remark,"onUpdate:modelValue":r[6]||(r[6]=l=>R.remark=l),type:"textarea",rows:3,maxlength:"200","show-word-limit":"",placeholder:"例如:部门/用途"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),c(ye,{modelValue:M.value,"onUpdate:modelValue":r[13]||(r[13]=l=>M.value=l),title:"编辑账号",width:"min(560px, 92vw)"},{footer:h(()=>[c(E,{onClick:r[12]||(r[12]=l=>M.value=!1)},{default:h(()=>[...r[39]||(r[39]=[w("取消",-1)])]),_:1}),c(E,{type:"primary",onClick:Tt},{default:h(()=>[...r[40]||(r[40]=[w("保存",-1)])]),_:1})]),default:h(()=>[c(ze,{"label-position":"top"},{default:h(()=>[c(H,{label:"账号"},{default:h(()=>[c(z,{modelValue:b.username,"onUpdate:modelValue":r[9]||(r[9]=l=>b.username=l),disabled:""},null,8,["modelValue"])]),_:1}),c(H,{label:"新密码(可选)"},{default:h(()=>[c(z,{modelValue:b.password,"onUpdate:modelValue":r[10]||(r[10]=l=>b.password=l),type:"password","show-password":"",placeholder:"留空表示不修改密码",autocomplete:"off"},null,8,["modelValue"])]),_:1}),c(H,{label:"备注(可选,最多200字)"},{default:h(()=>[c(z,{modelValue:b.remark,"onUpdate:modelValue":r[11]||(r[11]=l=>b.remark=l),type:"textarea",rows:3,maxlength:"200","show-word-limit":"",placeholder:"例如:部门/用途"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),c(ye,{modelValue:Y.value,"onUpdate:modelValue":r[15]||(r[15]=l=>Y.value=l),title:"VIP 特权",width:"min(560px, 92vw)"},{footer:h(()=>[c(E,{type:"primary",onClick:r[14]||(r[14]=l=>Y.value=!1)},{default:h(()=>[...r[41]||(r[41]=[w("我知道了",-1)])]),_:1})]),default:h(()=>[c(De,{type:"info",closable:!1,title:"升级 VIP 后可解锁:无限账号、优先排队、定时任务、批量操作。","show-icon":""}),r[42]||(r[42]=y("div",{class:"vip-body"},[y("div",{class:"vip-tip app-muted"},"升级方式:请通过“反馈”联系管理员开通(与后台一致)。")],-1))]),_:1},8,["modelValue"])])}}},On=Qt(Sn,[["__scopeId","data-v-ed664651"]]);export{On as default}; diff --git a/static/app/assets/LoginPage-BT64PXO4.js b/static/app/assets/LoginPage-aGh2PQkO.js similarity index 98% rename from static/app/assets/LoginPage-BT64PXO4.js rename to static/app/assets/LoginPage-aGh2PQkO.js index e0eb7ad..d451f2f 100644 --- a/static/app/assets/LoginPage-BT64PXO4.js +++ b/static/app/assets/LoginPage-aGh2PQkO.js @@ -1 +1 @@ -import{_ as ae,r as L,a as i,c as le,o as te,b as V,d as a,w as l,e as y,u as se,f as w,g as v,h as z,i as C,j as A,k as m,F as G,t as oe,E as u}from"./index-CoUFrT_1.js";import{f as ne,l as re,g as q,a as ue,r as ie,b as de}from"./auth-V8kVmuRz.js";import{v as ce}from"./password-7ryi82gE.js";const me={class:"auth-wrap"},pe={class:"captcha-row"},fe=["src"],ve={class:"links"},we={class:"foot"},ge={class:"captcha-row"},ye=["src"],_e={class:"captcha-row"},he=["src"],Ve={__name:"LoginPage",setup(be){const H=se(),d=L({username:"",password:"",captcha:""}),b=i(!1),R=i(""),S=i(""),P=i(!1),g=i(!1),T=i(!1),_=i(!1),k=i(!1),p=L({email:"",captcha:""}),x=i(""),I=i(""),N=i(!1),c=L({username:"",email:"",new_password:""}),K=i(!1),f=L({email:"",captcha:""}),U=i(""),M=i(""),O=i(!1),J=le(()=>!!T.value);async function E(){try{const s=await q();S.value=s?.session_id||"",R.value=s?.captcha_image||"",d.captcha=""}catch{S.value="",R.value=""}}async function B(){try{const s=await q();I.value=s?.session_id||"",x.value=s?.captcha_image||"",p.captcha=""}catch{I.value="",x.value=""}}async function F(){try{const s=await q();M.value=s?.session_id||"",U.value=s?.captcha_image||"",f.captcha=""}catch{M.value="",U.value=""}}async function $(){if(!d.username.trim()||!d.password.trim()){u.error("用户名和密码不能为空");return}if(b.value&&!d.captcha.trim()){u.error("请输入验证码");return}P.value=!0;try{await re({username:d.username.trim(),password:d.password,captcha_session:S.value,captcha:d.captcha.trim(),need_captcha:b.value}),u.success("登录成功,正在跳转..."),setTimeout(()=>{window.location.href="/app"},300)}catch(s){const e=s?.response?.status,o=s?.response?.data,n=o?.error||o?.message||"登录失败";u.error(n),o?.need_captcha?(b.value=!0,await E()):b.value&&e===400&&await E()}finally{P.value=!1}}async function Q(){_.value=!0,g.value?(p.email="",p.captcha="",await B()):(c.username="",c.email="",c.new_password="")}async function W(){if(g.value){const n=p.email.trim();if(!n){u.error("请输入邮箱");return}if(!p.captcha.trim()){u.error("请输入验证码");return}N.value=!0;try{const r=await ue({email:n,captcha_session:I.value,captcha:p.captcha.trim()});u.success(r?.message||"已发送重置邮件"),setTimeout(()=>{_.value=!1},800)}catch(r){const h=r?.response?.data;u.error(h?.error||"发送失败"),await B()}finally{N.value=!1}return}const s=c.username.trim(),e=c.new_password;if(!s||!e){u.error("用户名和新密码不能为空");return}const o=ce(e);if(!o.ok){u.error(o.message);return}K.value=!0;try{await ie({username:s,email:c.email.trim(),new_password:e}),u.success("申请已提交,请等待审核"),setTimeout(()=>{_.value=!1},800)}catch(n){const r=n?.response?.data;u.error(r?.error||"提交失败")}finally{K.value=!1}}async function X(){k.value=!0,f.email="",f.captcha="",await F()}async function Y(){const s=f.email.trim();if(!s){u.error("请输入邮箱");return}if(!f.captcha.trim()){u.error("请输入验证码");return}O.value=!0;try{const e=await de({email:s,captcha_session:M.value,captcha:f.captcha.trim()});u.success(e?.message||"验证邮件已发送,请查收"),setTimeout(()=>{k.value=!1},800)}catch(e){const o=e?.response?.data;u.error(o?.error||"发送失败"),await F()}finally{O.value=!1}}function Z(){H.push("/register")}return te(async()=>{try{const s=await ne();g.value=!!s?.email_enabled,T.value=!!s?.register_verify_enabled}catch{g.value=!1,T.value=!1}}),(s,e)=>{const o=y("el-input"),n=y("el-form-item"),r=y("el-button"),h=y("el-form"),ee=y("el-card"),j=y("el-alert"),D=y("el-dialog");return w(),V("div",me,[a(ee,{shadow:"never",class:"auth-card","body-style":{padding:"22px"}},{default:l(()=>[e[20]||(e[20]=v("div",{class:"brand"},[v("div",{class:"brand-title"},"知识管理平台"),v("div",{class:"brand-sub app-muted"},"用户登录")],-1)),a(h,{"label-position":"top"},{default:l(()=>[a(n,{label:"用户名"},{default:l(()=>[a(o,{modelValue:d.username,"onUpdate:modelValue":e[0]||(e[0]=t=>d.username=t),placeholder:"请输入用户名",autocomplete:"username"},null,8,["modelValue"])]),_:1}),a(n,{label:"密码"},{default:l(()=>[a(o,{modelValue:d.password,"onUpdate:modelValue":e[1]||(e[1]=t=>d.password=t),type:"password","show-password":"",placeholder:"请输入密码",autocomplete:"current-password",onKeyup:A($,["enter"])},null,8,["modelValue"])]),_:1}),b.value?(w(),z(n,{key:0,label:"验证码"},{default:l(()=>[v("div",pe,[a(o,{modelValue:d.captcha,"onUpdate:modelValue":e[2]||(e[2]=t=>d.captcha=t),placeholder:"请输入验证码",onKeyup:A($,["enter"])},null,8,["modelValue"]),R.value?(w(),V("img",{key:0,class:"captcha-img",src:R.value,alt:"验证码",title:"点击刷新",onClick:E},null,8,fe)):C("",!0),a(r,{onClick:E},{default:l(()=>[...e[14]||(e[14]=[m("刷新",-1)])]),_:1})])]),_:1})):C("",!0)]),_:1}),v("div",ve,[a(r,{text:"",type:"primary",onClick:Q},{default:l(()=>[...e[15]||(e[15]=[m("忘记密码?",-1)])]),_:1}),J.value?(w(),z(r,{key:0,text:"",type:"primary",onClick:X},{default:l(()=>[...e[16]||(e[16]=[m("重发验证邮件",-1)])]),_:1})):C("",!0)]),a(r,{type:"primary",class:"submit-btn",loading:P.value,onClick:$},{default:l(()=>[...e[17]||(e[17]=[m("登录",-1)])]),_:1},8,["loading"]),v("div",we,[e[19]||(e[19]=v("span",{class:"app-muted"},"还没有账号?",-1)),a(r,{link:"",type:"primary",onClick:Z},{default:l(()=>[...e[18]||(e[18]=[m("立即注册",-1)])]),_:1})])]),_:1}),a(D,{modelValue:_.value,"onUpdate:modelValue":e[9]||(e[9]=t=>_.value=t),title:"找回密码",width:"min(560px, 92vw)"},{footer:l(()=>[a(r,{onClick:e[8]||(e[8]=t=>_.value=!1)},{default:l(()=>[...e[22]||(e[22]=[m("取消",-1)])]),_:1}),a(r,{type:"primary",loading:g.value?N.value:K.value,onClick:W},{default:l(()=>[m(oe(g.value?"发送重置邮件":"提交申请"),1)]),_:1},8,["loading"])]),default:l(()=>[g.value?(w(),V(G,{key:0},[a(j,{type:"info",closable:!1,title:"输入注册邮箱,我们将发送重置链接。","show-icon":""}),a(h,{"label-position":"top",class:"dialog-form"},{default:l(()=>[a(n,{label:"邮箱"},{default:l(()=>[a(o,{modelValue:p.email,"onUpdate:modelValue":e[3]||(e[3]=t=>p.email=t),placeholder:"name@example.com"},null,8,["modelValue"])]),_:1}),a(n,{label:"验证码"},{default:l(()=>[v("div",ge,[a(o,{modelValue:p.captcha,"onUpdate:modelValue":e[4]||(e[4]=t=>p.captcha=t),placeholder:"请输入验证码"},null,8,["modelValue"]),x.value?(w(),V("img",{key:0,class:"captcha-img",src:x.value,alt:"验证码",title:"点击刷新",onClick:B},null,8,ye)):C("",!0),a(r,{onClick:B},{default:l(()=>[...e[21]||(e[21]=[m("刷新",-1)])]),_:1})])]),_:1})]),_:1})],64)):(w(),V(G,{key:1},[a(j,{type:"warning",closable:!1,title:"邮件功能未启用:提交申请后等待管理员审核。","show-icon":""}),a(h,{"label-position":"top",class:"dialog-form"},{default:l(()=>[a(n,{label:"用户名"},{default:l(()=>[a(o,{modelValue:c.username,"onUpdate:modelValue":e[5]||(e[5]=t=>c.username=t),placeholder:"请输入用户名"},null,8,["modelValue"])]),_:1}),a(n,{label:"邮箱(可选)"},{default:l(()=>[a(o,{modelValue:c.email,"onUpdate:modelValue":e[6]||(e[6]=t=>c.email=t),placeholder:"可选填写邮箱"},null,8,["modelValue"])]),_:1}),a(n,{label:"新密码(至少8位且包含字母和数字)"},{default:l(()=>[a(o,{modelValue:c.new_password,"onUpdate:modelValue":e[7]||(e[7]=t=>c.new_password=t),type:"password","show-password":"",placeholder:"请输入新密码"},null,8,["modelValue"])]),_:1})]),_:1})],64))]),_:1},8,["modelValue"]),a(D,{modelValue:k.value,"onUpdate:modelValue":e[13]||(e[13]=t=>k.value=t),title:"重发验证邮件",width:"min(520px, 92vw)"},{footer:l(()=>[a(r,{onClick:e[12]||(e[12]=t=>k.value=!1)},{default:l(()=>[...e[24]||(e[24]=[m("取消",-1)])]),_:1}),a(r,{type:"primary",loading:O.value,onClick:Y},{default:l(()=>[...e[25]||(e[25]=[m("发送",-1)])]),_:1},8,["loading"])]),default:l(()=>[a(j,{type:"info",closable:!1,title:"用于注册邮箱验证:请输入邮箱并完成验证码。","show-icon":""}),a(h,{"label-position":"top",class:"dialog-form"},{default:l(()=>[a(n,{label:"邮箱"},{default:l(()=>[a(o,{modelValue:f.email,"onUpdate:modelValue":e[10]||(e[10]=t=>f.email=t),placeholder:"name@example.com"},null,8,["modelValue"])]),_:1}),a(n,{label:"验证码"},{default:l(()=>[v("div",_e,[a(o,{modelValue:f.captcha,"onUpdate:modelValue":e[11]||(e[11]=t=>f.captcha=t),placeholder:"请输入验证码"},null,8,["modelValue"]),U.value?(w(),V("img",{key:0,class:"captcha-img",src:U.value,alt:"验证码",title:"点击刷新",onClick:F},null,8,he)):C("",!0),a(r,{onClick:F},{default:l(()=>[...e[23]||(e[23]=[m("刷新",-1)])]),_:1})])]),_:1})]),_:1})]),_:1},8,["modelValue"])])}}},xe=ae(Ve,[["__scopeId","data-v-50df591d"]]);export{xe as default}; +import{_ as ae,r as L,a as i,c as le,o as te,b as V,d as a,w as l,e as y,u as se,f as w,g as v,h as z,i as C,j as A,k as m,F as G,t as oe,E as u}from"./index-FDI649KN.js";import{f as ne,l as re,g as q,a as ue,r as ie,b as de}from"./auth-CAHM3CPl.js";import{v as ce}from"./password-7ryi82gE.js";const me={class:"auth-wrap"},pe={class:"captcha-row"},fe=["src"],ve={class:"links"},we={class:"foot"},ge={class:"captcha-row"},ye=["src"],_e={class:"captcha-row"},he=["src"],Ve={__name:"LoginPage",setup(be){const H=se(),d=L({username:"",password:"",captcha:""}),b=i(!1),R=i(""),S=i(""),P=i(!1),g=i(!1),T=i(!1),_=i(!1),k=i(!1),p=L({email:"",captcha:""}),x=i(""),I=i(""),N=i(!1),c=L({username:"",email:"",new_password:""}),K=i(!1),f=L({email:"",captcha:""}),U=i(""),M=i(""),O=i(!1),J=le(()=>!!T.value);async function E(){try{const s=await q();S.value=s?.session_id||"",R.value=s?.captcha_image||"",d.captcha=""}catch{S.value="",R.value=""}}async function B(){try{const s=await q();I.value=s?.session_id||"",x.value=s?.captcha_image||"",p.captcha=""}catch{I.value="",x.value=""}}async function F(){try{const s=await q();M.value=s?.session_id||"",U.value=s?.captcha_image||"",f.captcha=""}catch{M.value="",U.value=""}}async function $(){if(!d.username.trim()||!d.password.trim()){u.error("用户名和密码不能为空");return}if(b.value&&!d.captcha.trim()){u.error("请输入验证码");return}P.value=!0;try{await re({username:d.username.trim(),password:d.password,captcha_session:S.value,captcha:d.captcha.trim(),need_captcha:b.value}),u.success("登录成功,正在跳转..."),setTimeout(()=>{window.location.href="/app"},300)}catch(s){const e=s?.response?.status,o=s?.response?.data,n=o?.error||o?.message||"登录失败";u.error(n),o?.need_captcha?(b.value=!0,await E()):b.value&&e===400&&await E()}finally{P.value=!1}}async function Q(){_.value=!0,g.value?(p.email="",p.captcha="",await B()):(c.username="",c.email="",c.new_password="")}async function W(){if(g.value){const n=p.email.trim();if(!n){u.error("请输入邮箱");return}if(!p.captcha.trim()){u.error("请输入验证码");return}N.value=!0;try{const r=await ue({email:n,captcha_session:I.value,captcha:p.captcha.trim()});u.success(r?.message||"已发送重置邮件"),setTimeout(()=>{_.value=!1},800)}catch(r){const h=r?.response?.data;u.error(h?.error||"发送失败"),await B()}finally{N.value=!1}return}const s=c.username.trim(),e=c.new_password;if(!s||!e){u.error("用户名和新密码不能为空");return}const o=ce(e);if(!o.ok){u.error(o.message);return}K.value=!0;try{await ie({username:s,email:c.email.trim(),new_password:e}),u.success("申请已提交,请等待审核"),setTimeout(()=>{_.value=!1},800)}catch(n){const r=n?.response?.data;u.error(r?.error||"提交失败")}finally{K.value=!1}}async function X(){k.value=!0,f.email="",f.captcha="",await F()}async function Y(){const s=f.email.trim();if(!s){u.error("请输入邮箱");return}if(!f.captcha.trim()){u.error("请输入验证码");return}O.value=!0;try{const e=await de({email:s,captcha_session:M.value,captcha:f.captcha.trim()});u.success(e?.message||"验证邮件已发送,请查收"),setTimeout(()=>{k.value=!1},800)}catch(e){const o=e?.response?.data;u.error(o?.error||"发送失败"),await F()}finally{O.value=!1}}function Z(){H.push("/register")}return te(async()=>{try{const s=await ne();g.value=!!s?.email_enabled,T.value=!!s?.register_verify_enabled}catch{g.value=!1,T.value=!1}}),(s,e)=>{const o=y("el-input"),n=y("el-form-item"),r=y("el-button"),h=y("el-form"),ee=y("el-card"),j=y("el-alert"),D=y("el-dialog");return w(),V("div",me,[a(ee,{shadow:"never",class:"auth-card","body-style":{padding:"22px"}},{default:l(()=>[e[20]||(e[20]=v("div",{class:"brand"},[v("div",{class:"brand-title"},"知识管理平台"),v("div",{class:"brand-sub app-muted"},"用户登录")],-1)),a(h,{"label-position":"top"},{default:l(()=>[a(n,{label:"用户名"},{default:l(()=>[a(o,{modelValue:d.username,"onUpdate:modelValue":e[0]||(e[0]=t=>d.username=t),placeholder:"请输入用户名",autocomplete:"username"},null,8,["modelValue"])]),_:1}),a(n,{label:"密码"},{default:l(()=>[a(o,{modelValue:d.password,"onUpdate:modelValue":e[1]||(e[1]=t=>d.password=t),type:"password","show-password":"",placeholder:"请输入密码",autocomplete:"current-password",onKeyup:A($,["enter"])},null,8,["modelValue"])]),_:1}),b.value?(w(),z(n,{key:0,label:"验证码"},{default:l(()=>[v("div",pe,[a(o,{modelValue:d.captcha,"onUpdate:modelValue":e[2]||(e[2]=t=>d.captcha=t),placeholder:"请输入验证码",onKeyup:A($,["enter"])},null,8,["modelValue"]),R.value?(w(),V("img",{key:0,class:"captcha-img",src:R.value,alt:"验证码",title:"点击刷新",onClick:E},null,8,fe)):C("",!0),a(r,{onClick:E},{default:l(()=>[...e[14]||(e[14]=[m("刷新",-1)])]),_:1})])]),_:1})):C("",!0)]),_:1}),v("div",ve,[a(r,{text:"",type:"primary",onClick:Q},{default:l(()=>[...e[15]||(e[15]=[m("忘记密码?",-1)])]),_:1}),J.value?(w(),z(r,{key:0,text:"",type:"primary",onClick:X},{default:l(()=>[...e[16]||(e[16]=[m("重发验证邮件",-1)])]),_:1})):C("",!0)]),a(r,{type:"primary",class:"submit-btn",loading:P.value,onClick:$},{default:l(()=>[...e[17]||(e[17]=[m("登录",-1)])]),_:1},8,["loading"]),v("div",we,[e[19]||(e[19]=v("span",{class:"app-muted"},"还没有账号?",-1)),a(r,{link:"",type:"primary",onClick:Z},{default:l(()=>[...e[18]||(e[18]=[m("立即注册",-1)])]),_:1})])]),_:1}),a(D,{modelValue:_.value,"onUpdate:modelValue":e[9]||(e[9]=t=>_.value=t),title:"找回密码",width:"min(560px, 92vw)"},{footer:l(()=>[a(r,{onClick:e[8]||(e[8]=t=>_.value=!1)},{default:l(()=>[...e[22]||(e[22]=[m("取消",-1)])]),_:1}),a(r,{type:"primary",loading:g.value?N.value:K.value,onClick:W},{default:l(()=>[m(oe(g.value?"发送重置邮件":"提交申请"),1)]),_:1},8,["loading"])]),default:l(()=>[g.value?(w(),V(G,{key:0},[a(j,{type:"info",closable:!1,title:"输入注册邮箱,我们将发送重置链接。","show-icon":""}),a(h,{"label-position":"top",class:"dialog-form"},{default:l(()=>[a(n,{label:"邮箱"},{default:l(()=>[a(o,{modelValue:p.email,"onUpdate:modelValue":e[3]||(e[3]=t=>p.email=t),placeholder:"name@example.com"},null,8,["modelValue"])]),_:1}),a(n,{label:"验证码"},{default:l(()=>[v("div",ge,[a(o,{modelValue:p.captcha,"onUpdate:modelValue":e[4]||(e[4]=t=>p.captcha=t),placeholder:"请输入验证码"},null,8,["modelValue"]),x.value?(w(),V("img",{key:0,class:"captcha-img",src:x.value,alt:"验证码",title:"点击刷新",onClick:B},null,8,ye)):C("",!0),a(r,{onClick:B},{default:l(()=>[...e[21]||(e[21]=[m("刷新",-1)])]),_:1})])]),_:1})]),_:1})],64)):(w(),V(G,{key:1},[a(j,{type:"warning",closable:!1,title:"邮件功能未启用:提交申请后等待管理员审核。","show-icon":""}),a(h,{"label-position":"top",class:"dialog-form"},{default:l(()=>[a(n,{label:"用户名"},{default:l(()=>[a(o,{modelValue:c.username,"onUpdate:modelValue":e[5]||(e[5]=t=>c.username=t),placeholder:"请输入用户名"},null,8,["modelValue"])]),_:1}),a(n,{label:"邮箱(可选)"},{default:l(()=>[a(o,{modelValue:c.email,"onUpdate:modelValue":e[6]||(e[6]=t=>c.email=t),placeholder:"可选填写邮箱"},null,8,["modelValue"])]),_:1}),a(n,{label:"新密码(至少8位且包含字母和数字)"},{default:l(()=>[a(o,{modelValue:c.new_password,"onUpdate:modelValue":e[7]||(e[7]=t=>c.new_password=t),type:"password","show-password":"",placeholder:"请输入新密码"},null,8,["modelValue"])]),_:1})]),_:1})],64))]),_:1},8,["modelValue"]),a(D,{modelValue:k.value,"onUpdate:modelValue":e[13]||(e[13]=t=>k.value=t),title:"重发验证邮件",width:"min(520px, 92vw)"},{footer:l(()=>[a(r,{onClick:e[12]||(e[12]=t=>k.value=!1)},{default:l(()=>[...e[24]||(e[24]=[m("取消",-1)])]),_:1}),a(r,{type:"primary",loading:O.value,onClick:Y},{default:l(()=>[...e[25]||(e[25]=[m("发送",-1)])]),_:1},8,["loading"])]),default:l(()=>[a(j,{type:"info",closable:!1,title:"用于注册邮箱验证:请输入邮箱并完成验证码。","show-icon":""}),a(h,{"label-position":"top",class:"dialog-form"},{default:l(()=>[a(n,{label:"邮箱"},{default:l(()=>[a(o,{modelValue:f.email,"onUpdate:modelValue":e[10]||(e[10]=t=>f.email=t),placeholder:"name@example.com"},null,8,["modelValue"])]),_:1}),a(n,{label:"验证码"},{default:l(()=>[v("div",_e,[a(o,{modelValue:f.captcha,"onUpdate:modelValue":e[11]||(e[11]=t=>f.captcha=t),placeholder:"请输入验证码"},null,8,["modelValue"]),U.value?(w(),V("img",{key:0,class:"captcha-img",src:U.value,alt:"验证码",title:"点击刷新",onClick:F},null,8,he)):C("",!0),a(r,{onClick:F},{default:l(()=>[...e[23]||(e[23]=[m("刷新",-1)])]),_:1})])]),_:1})]),_:1})]),_:1},8,["modelValue"])])}}},xe=ae(Ve,[["__scopeId","data-v-50df591d"]]);export{xe as default}; diff --git a/static/app/assets/RegisterPage-DagmGD8v.js b/static/app/assets/RegisterPage-Cfctkogt.js similarity index 97% rename from static/app/assets/RegisterPage-DagmGD8v.js rename to static/app/assets/RegisterPage-Cfctkogt.js index 1c4d13f..3dd03ba 100644 --- a/static/app/assets/RegisterPage-DagmGD8v.js +++ b/static/app/assets/RegisterPage-Cfctkogt.js @@ -1 +1 @@ -import{_ as M,r as j,a as p,c as B,o as A,b as S,d as t,w as o,e as m,u as H,f as g,g as n,h as U,i as x,j as N,t as q,k as E,E as d}from"./index-CoUFrT_1.js";import{g as z,f as F,c as G}from"./auth-V8kVmuRz.js";const J={class:"auth-wrap"},O={class:"hint app-muted"},Q={class:"captcha-row"},W=["src"],X={class:"actions"},Y={__name:"RegisterPage",setup(Z){const T=H(),a=j({username:"",password:"",confirm_password:"",email:"",captcha:""}),v=p(!1),f=p(""),h=p(""),b=p(!1),l=p(""),_=p(""),V=p(""),K=B(()=>v.value?"邮箱 *":"邮箱(可选)"),P=B(()=>v.value?"必填,用于账号验证":"选填,用于找回密码和接收通知");async function w(){try{const u=await z();h.value=u?.session_id||"",f.value=u?.captcha_image||"",a.captcha=""}catch{h.value="",f.value=""}}async function R(){try{const u=await F();v.value=!!u?.register_verify_enabled}catch{v.value=!1}}function D(){l.value="",_.value="",V.value=""}async function k(){D();const u=a.username.trim(),e=a.password,y=a.confirm_password,s=a.email.trim(),i=a.captcha.trim();if(u.length<3){l.value="用户名至少3个字符",d.error(l.value);return}if(e.length<6){l.value="密码至少6个字符",d.error(l.value);return}if(e!==y){l.value="两次输入的密码不一致",d.error(l.value);return}if(v.value&&!s){l.value="请填写邮箱地址用于账号验证",d.error(l.value);return}if(s&&!s.includes("@")){l.value="邮箱格式不正确",d.error(l.value);return}if(!i){l.value="请输入验证码",d.error(l.value);return}b.value=!0;try{const c=await G({username:u,password:e,email:s,captcha_session:h.value,captcha:i});_.value=c?.message||"注册成功",V.value=c?.need_verify?"请检查您的邮箱(包括垃圾邮件文件夹)":"",d.success("注册成功"),a.username="",a.password="",a.confirm_password="",a.email="",a.captcha="",setTimeout(()=>{window.location.href="/login"},3e3)}catch(c){const C=c?.response?.data;l.value=C?.error||"注册失败",d.error(l.value),await w()}finally{b.value=!1}}function I(){T.push("/login")}return A(async()=>{await w(),await R()}),(u,e)=>{const y=m("el-alert"),s=m("el-input"),i=m("el-form-item"),c=m("el-button"),C=m("el-form"),L=m("el-card");return g(),S("div",J,[t(L,{shadow:"never",class:"auth-card","body-style":{padding:"22px"}},{default:o(()=>[e[11]||(e[11]=n("div",{class:"brand"},[n("div",{class:"brand-title"},"知识管理平台"),n("div",{class:"brand-sub app-muted"},"用户注册")],-1)),l.value?(g(),U(y,{key:0,type:"error",closable:!1,title:l.value,"show-icon":"",class:"alert"},null,8,["title"])):x("",!0),_.value?(g(),U(y,{key:1,type:"success",closable:!1,title:_.value,description:V.value,"show-icon":"",class:"alert"},null,8,["title","description"])):x("",!0),t(C,{"label-position":"top"},{default:o(()=>[t(i,{label:"用户名 *"},{default:o(()=>[t(s,{modelValue:a.username,"onUpdate:modelValue":e[0]||(e[0]=r=>a.username=r),placeholder:"至少3个字符",autocomplete:"username"},null,8,["modelValue"]),e[5]||(e[5]=n("div",{class:"hint app-muted"},"至少3个字符",-1))]),_:1}),t(i,{label:"密码 *"},{default:o(()=>[t(s,{modelValue:a.password,"onUpdate:modelValue":e[1]||(e[1]=r=>a.password=r),type:"password","show-password":"",placeholder:"至少6个字符",autocomplete:"new-password"},null,8,["modelValue"]),e[6]||(e[6]=n("div",{class:"hint app-muted"},"至少6个字符",-1))]),_:1}),t(i,{label:"确认密码 *"},{default:o(()=>[t(s,{modelValue:a.confirm_password,"onUpdate:modelValue":e[2]||(e[2]=r=>a.confirm_password=r),type:"password","show-password":"",placeholder:"请再次输入密码",autocomplete:"new-password",onKeyup:N(k,["enter"])},null,8,["modelValue"])]),_:1}),t(i,{label:K.value},{default:o(()=>[t(s,{modelValue:a.email,"onUpdate:modelValue":e[3]||(e[3]=r=>a.email=r),placeholder:"name@example.com",autocomplete:"email"},null,8,["modelValue"]),n("div",O,q(P.value),1)]),_:1},8,["label"]),t(i,{label:"验证码 *"},{default:o(()=>[n("div",Q,[t(s,{modelValue:a.captcha,"onUpdate:modelValue":e[4]||(e[4]=r=>a.captcha=r),placeholder:"请输入验证码",onKeyup:N(k,["enter"])},null,8,["modelValue"]),f.value?(g(),S("img",{key:0,class:"captcha-img",src:f.value,alt:"验证码",title:"点击刷新",onClick:w},null,8,W)):x("",!0),t(c,{onClick:w},{default:o(()=>[...e[7]||(e[7]=[E("刷新",-1)])]),_:1})])]),_:1})]),_:1}),t(c,{type:"primary",class:"submit-btn",loading:b.value,onClick:k},{default:o(()=>[...e[8]||(e[8]=[E("注册",-1)])]),_:1},8,["loading"]),n("div",X,[e[10]||(e[10]=n("span",{class:"app-muted"},"已有账号?",-1)),t(c,{link:"",type:"primary",onClick:I},{default:o(()=>[...e[9]||(e[9]=[E("立即登录",-1)])]),_:1})])]),_:1})])}}},ae=M(Y,[["__scopeId","data-v-75731a6d"]]);export{ae as default}; +import{_ as M,r as j,a as p,c as B,o as A,b as S,d as t,w as o,e as m,u as H,f as g,g as n,h as U,i as x,j as N,t as q,k as E,E as d}from"./index-FDI649KN.js";import{g as z,f as F,c as G}from"./auth-CAHM3CPl.js";const J={class:"auth-wrap"},O={class:"hint app-muted"},Q={class:"captcha-row"},W=["src"],X={class:"actions"},Y={__name:"RegisterPage",setup(Z){const T=H(),a=j({username:"",password:"",confirm_password:"",email:"",captcha:""}),v=p(!1),f=p(""),h=p(""),b=p(!1),l=p(""),_=p(""),V=p(""),K=B(()=>v.value?"邮箱 *":"邮箱(可选)"),P=B(()=>v.value?"必填,用于账号验证":"选填,用于找回密码和接收通知");async function w(){try{const u=await z();h.value=u?.session_id||"",f.value=u?.captcha_image||"",a.captcha=""}catch{h.value="",f.value=""}}async function R(){try{const u=await F();v.value=!!u?.register_verify_enabled}catch{v.value=!1}}function D(){l.value="",_.value="",V.value=""}async function k(){D();const u=a.username.trim(),e=a.password,y=a.confirm_password,s=a.email.trim(),i=a.captcha.trim();if(u.length<3){l.value="用户名至少3个字符",d.error(l.value);return}if(e.length<6){l.value="密码至少6个字符",d.error(l.value);return}if(e!==y){l.value="两次输入的密码不一致",d.error(l.value);return}if(v.value&&!s){l.value="请填写邮箱地址用于账号验证",d.error(l.value);return}if(s&&!s.includes("@")){l.value="邮箱格式不正确",d.error(l.value);return}if(!i){l.value="请输入验证码",d.error(l.value);return}b.value=!0;try{const c=await G({username:u,password:e,email:s,captcha_session:h.value,captcha:i});_.value=c?.message||"注册成功",V.value=c?.need_verify?"请检查您的邮箱(包括垃圾邮件文件夹)":"",d.success("注册成功"),a.username="",a.password="",a.confirm_password="",a.email="",a.captcha="",setTimeout(()=>{window.location.href="/login"},3e3)}catch(c){const C=c?.response?.data;l.value=C?.error||"注册失败",d.error(l.value),await w()}finally{b.value=!1}}function I(){T.push("/login")}return A(async()=>{await w(),await R()}),(u,e)=>{const y=m("el-alert"),s=m("el-input"),i=m("el-form-item"),c=m("el-button"),C=m("el-form"),L=m("el-card");return g(),S("div",J,[t(L,{shadow:"never",class:"auth-card","body-style":{padding:"22px"}},{default:o(()=>[e[11]||(e[11]=n("div",{class:"brand"},[n("div",{class:"brand-title"},"知识管理平台"),n("div",{class:"brand-sub app-muted"},"用户注册")],-1)),l.value?(g(),U(y,{key:0,type:"error",closable:!1,title:l.value,"show-icon":"",class:"alert"},null,8,["title"])):x("",!0),_.value?(g(),U(y,{key:1,type:"success",closable:!1,title:_.value,description:V.value,"show-icon":"",class:"alert"},null,8,["title","description"])):x("",!0),t(C,{"label-position":"top"},{default:o(()=>[t(i,{label:"用户名 *"},{default:o(()=>[t(s,{modelValue:a.username,"onUpdate:modelValue":e[0]||(e[0]=r=>a.username=r),placeholder:"至少3个字符",autocomplete:"username"},null,8,["modelValue"]),e[5]||(e[5]=n("div",{class:"hint app-muted"},"至少3个字符",-1))]),_:1}),t(i,{label:"密码 *"},{default:o(()=>[t(s,{modelValue:a.password,"onUpdate:modelValue":e[1]||(e[1]=r=>a.password=r),type:"password","show-password":"",placeholder:"至少6个字符",autocomplete:"new-password"},null,8,["modelValue"]),e[6]||(e[6]=n("div",{class:"hint app-muted"},"至少6个字符",-1))]),_:1}),t(i,{label:"确认密码 *"},{default:o(()=>[t(s,{modelValue:a.confirm_password,"onUpdate:modelValue":e[2]||(e[2]=r=>a.confirm_password=r),type:"password","show-password":"",placeholder:"请再次输入密码",autocomplete:"new-password",onKeyup:N(k,["enter"])},null,8,["modelValue"])]),_:1}),t(i,{label:K.value},{default:o(()=>[t(s,{modelValue:a.email,"onUpdate:modelValue":e[3]||(e[3]=r=>a.email=r),placeholder:"name@example.com",autocomplete:"email"},null,8,["modelValue"]),n("div",O,q(P.value),1)]),_:1},8,["label"]),t(i,{label:"验证码 *"},{default:o(()=>[n("div",Q,[t(s,{modelValue:a.captcha,"onUpdate:modelValue":e[4]||(e[4]=r=>a.captcha=r),placeholder:"请输入验证码",onKeyup:N(k,["enter"])},null,8,["modelValue"]),f.value?(g(),S("img",{key:0,class:"captcha-img",src:f.value,alt:"验证码",title:"点击刷新",onClick:w},null,8,W)):x("",!0),t(c,{onClick:w},{default:o(()=>[...e[7]||(e[7]=[E("刷新",-1)])]),_:1})])]),_:1})]),_:1}),t(c,{type:"primary",class:"submit-btn",loading:b.value,onClick:k},{default:o(()=>[...e[8]||(e[8]=[E("注册",-1)])]),_:1},8,["loading"]),n("div",X,[e[10]||(e[10]=n("span",{class:"app-muted"},"已有账号?",-1)),t(c,{link:"",type:"primary",onClick:I},{default:o(()=>[...e[9]||(e[9]=[E("立即登录",-1)])]),_:1})])]),_:1})])}}},ae=M(Y,[["__scopeId","data-v-75731a6d"]]);export{ae as default}; diff --git a/static/app/assets/ResetPasswordPage-nfu9MGKT.js b/static/app/assets/ResetPasswordPage-B37m0WGk.js similarity index 96% rename from static/app/assets/ResetPasswordPage-nfu9MGKT.js rename to static/app/assets/ResetPasswordPage-B37m0WGk.js index 1f39a7b..8c7dc0d 100644 --- a/static/app/assets/ResetPasswordPage-nfu9MGKT.js +++ b/static/app/assets/ResetPasswordPage-B37m0WGk.js @@ -1 +1 @@ -import{_ as L,a as n,l as M,r as U,c as j,o as F,m as K,b as v,d as s,w as a,e as l,u as D,f as m,g as w,F as T,k,h as q,i as x,j as z,t as G,E as y}from"./index-CoUFrT_1.js";import{d as H}from"./auth-V8kVmuRz.js";import{v as J}from"./password-7ryi82gE.js";const O={class:"auth-wrap"},Q={class:"actions"},W={class:"actions"},X={key:0,class:"app-muted"},Y={__name:"ResetPasswordPage",setup(Z){const B=M(),A=D(),r=n(String(B.params.token||"")),i=n(!0),b=n(""),t=U({newPassword:"",confirmPassword:""}),g=n(!1),f=n(""),d=n(0);let u=null;function C(){if(typeof window>"u")return null;const o=window.__APP_INITIAL_STATE__;return!o||typeof o!="object"?null:(window.__APP_INITIAL_STATE__=null,o)}const I=j(()=>!!(i.value&&r.value&&!f.value));function S(){A.push("/login")}function N(){d.value=3,u=window.setInterval(()=>{d.value-=1,d.value<=0&&(window.clearInterval(u),u=null,window.location.href="/login")},1e3)}async function V(){if(!I.value)return;const o=t.newPassword,e=t.confirmPassword,c=J(o);if(!c.ok){y.error(c.message);return}if(o!==e){y.error("两次输入的密码不一致");return}g.value=!0;try{await H({token:r.value,new_password:o}),f.value="密码重置成功!3秒后跳转到登录页面...",y.success("密码重置成功"),N()}catch(p){const _=p?.response?.data;y.error(_?.error||"重置失败")}finally{g.value=!1}}return F(()=>{const o=C();o?.page==="reset_password"?(r.value=String(o?.token||r.value||""),i.value=!!o?.valid,b.value=o?.error_message||(i.value?"":"重置链接无效或已过期,请重新申请密码重置")):r.value||(i.value=!1,b.value="重置链接无效或已过期,请重新申请密码重置")}),K(()=>{u&&window.clearInterval(u)}),(o,e)=>{const c=l("el-alert"),p=l("el-button"),_=l("el-input"),h=l("el-form-item"),R=l("el-form"),E=l("el-card");return m(),v("div",O,[s(E,{shadow:"never",class:"auth-card","body-style":{padding:"22px"}},{default:a(()=>[e[5]||(e[5]=w("div",{class:"brand"},[w("div",{class:"brand-title"},"知识管理平台"),w("div",{class:"brand-sub app-muted"},"重置密码")],-1)),i.value?(m(),v(T,{key:1},[f.value?(m(),q(c,{key:0,type:"success",closable:!1,title:"重置成功",description:f.value,"show-icon":"",class:"alert"},null,8,["description"])):x("",!0),s(R,{"label-position":"top"},{default:a(()=>[s(h,{label:"新密码(至少8位且包含字母和数字)"},{default:a(()=>[s(_,{modelValue:t.newPassword,"onUpdate:modelValue":e[0]||(e[0]=P=>t.newPassword=P),type:"password","show-password":"",placeholder:"请输入新密码",autocomplete:"new-password"},null,8,["modelValue"])]),_:1}),s(h,{label:"确认密码"},{default:a(()=>[s(_,{modelValue:t.confirmPassword,"onUpdate:modelValue":e[1]||(e[1]=P=>t.confirmPassword=P),type:"password","show-password":"",placeholder:"请再次输入新密码",autocomplete:"new-password",onKeyup:z(V,["enter"])},null,8,["modelValue"])]),_:1})]),_:1}),s(p,{type:"primary",class:"submit-btn",loading:g.value,disabled:!I.value,onClick:V},{default:a(()=>[...e[3]||(e[3]=[k(" 确认重置 ",-1)])]),_:1},8,["loading","disabled"]),w("div",W,[s(p,{link:"",type:"primary",onClick:S},{default:a(()=>[...e[4]||(e[4]=[k("返回登录",-1)])]),_:1}),d.value>0?(m(),v("span",X,G(d.value)+" 秒后自动跳转…",1)):x("",!0)])],64)):(m(),v(T,{key:0},[s(c,{type:"error",closable:!1,title:"链接已失效",description:b.value,"show-icon":""},null,8,["description"]),w("div",Q,[s(p,{type:"primary",onClick:S},{default:a(()=>[...e[2]||(e[2]=[k("返回登录",-1)])]),_:1})])],64))]),_:1})])}}},se=L(Y,[["__scopeId","data-v-0bbb511c"]]);export{se as default}; +import{_ as L,a as n,l as M,r as U,c as j,o as F,m as K,b as v,d as s,w as a,e as l,u as D,f as m,g as w,F as T,k,h as q,i as x,j as z,t as G,E as y}from"./index-FDI649KN.js";import{d as H}from"./auth-CAHM3CPl.js";import{v as J}from"./password-7ryi82gE.js";const O={class:"auth-wrap"},Q={class:"actions"},W={class:"actions"},X={key:0,class:"app-muted"},Y={__name:"ResetPasswordPage",setup(Z){const B=M(),A=D(),r=n(String(B.params.token||"")),i=n(!0),b=n(""),t=U({newPassword:"",confirmPassword:""}),g=n(!1),f=n(""),d=n(0);let u=null;function C(){if(typeof window>"u")return null;const o=window.__APP_INITIAL_STATE__;return!o||typeof o!="object"?null:(window.__APP_INITIAL_STATE__=null,o)}const I=j(()=>!!(i.value&&r.value&&!f.value));function S(){A.push("/login")}function N(){d.value=3,u=window.setInterval(()=>{d.value-=1,d.value<=0&&(window.clearInterval(u),u=null,window.location.href="/login")},1e3)}async function V(){if(!I.value)return;const o=t.newPassword,e=t.confirmPassword,c=J(o);if(!c.ok){y.error(c.message);return}if(o!==e){y.error("两次输入的密码不一致");return}g.value=!0;try{await H({token:r.value,new_password:o}),f.value="密码重置成功!3秒后跳转到登录页面...",y.success("密码重置成功"),N()}catch(p){const _=p?.response?.data;y.error(_?.error||"重置失败")}finally{g.value=!1}}return F(()=>{const o=C();o?.page==="reset_password"?(r.value=String(o?.token||r.value||""),i.value=!!o?.valid,b.value=o?.error_message||(i.value?"":"重置链接无效或已过期,请重新申请密码重置")):r.value||(i.value=!1,b.value="重置链接无效或已过期,请重新申请密码重置")}),K(()=>{u&&window.clearInterval(u)}),(o,e)=>{const c=l("el-alert"),p=l("el-button"),_=l("el-input"),h=l("el-form-item"),R=l("el-form"),E=l("el-card");return m(),v("div",O,[s(E,{shadow:"never",class:"auth-card","body-style":{padding:"22px"}},{default:a(()=>[e[5]||(e[5]=w("div",{class:"brand"},[w("div",{class:"brand-title"},"知识管理平台"),w("div",{class:"brand-sub app-muted"},"重置密码")],-1)),i.value?(m(),v(T,{key:1},[f.value?(m(),q(c,{key:0,type:"success",closable:!1,title:"重置成功",description:f.value,"show-icon":"",class:"alert"},null,8,["description"])):x("",!0),s(R,{"label-position":"top"},{default:a(()=>[s(h,{label:"新密码(至少8位且包含字母和数字)"},{default:a(()=>[s(_,{modelValue:t.newPassword,"onUpdate:modelValue":e[0]||(e[0]=P=>t.newPassword=P),type:"password","show-password":"",placeholder:"请输入新密码",autocomplete:"new-password"},null,8,["modelValue"])]),_:1}),s(h,{label:"确认密码"},{default:a(()=>[s(_,{modelValue:t.confirmPassword,"onUpdate:modelValue":e[1]||(e[1]=P=>t.confirmPassword=P),type:"password","show-password":"",placeholder:"请再次输入新密码",autocomplete:"new-password",onKeyup:z(V,["enter"])},null,8,["modelValue"])]),_:1})]),_:1}),s(p,{type:"primary",class:"submit-btn",loading:g.value,disabled:!I.value,onClick:V},{default:a(()=>[...e[3]||(e[3]=[k(" 确认重置 ",-1)])]),_:1},8,["loading","disabled"]),w("div",W,[s(p,{link:"",type:"primary",onClick:S},{default:a(()=>[...e[4]||(e[4]=[k("返回登录",-1)])]),_:1}),d.value>0?(m(),v("span",X,G(d.value)+" 秒后自动跳转…",1)):x("",!0)])],64)):(m(),v(T,{key:0},[s(c,{type:"error",closable:!1,title:"链接已失效",description:b.value,"show-icon":""},null,8,["description"]),w("div",Q,[s(p,{type:"primary",onClick:S},{default:a(()=>[...e[2]||(e[2]=[k("返回登录",-1)])]),_:1})])],64))]),_:1})])}}},se=L(Y,[["__scopeId","data-v-0bbb511c"]]);export{se as default}; diff --git a/static/app/assets/SchedulesPage-DkN2oNFy.js b/static/app/assets/SchedulesPage-BHh5odxx.js similarity index 99% rename from static/app/assets/SchedulesPage-DkN2oNFy.js rename to static/app/assets/SchedulesPage-BHh5odxx.js index 7ed604f..8d0b778 100644 --- a/static/app/assets/SchedulesPage-DkN2oNFy.js +++ b/static/app/assets/SchedulesPage-BHh5odxx.js @@ -1 +1 @@ -import{f as fe}from"./accounts-dF_rn7Mz.js";import{p as h,_ as _e,n as ye,a as y,r as be,c as we,o as ge,b,h as g,i as D,d as n,w as s,e as p,f as i,g as u,k as f,F as V,v as B,t as _,E as v,x as W}from"./index-CoUFrT_1.js";async function he(){const{data:c}=await h.get("/schedules");return c}async function ke(c){const{data:d}=await h.post("/schedules",c);return d}async function Ve(c,d){const{data:w}=await h.put(`/schedules/${c}`,d);return w}async function xe(c){const{data:d}=await h.delete(`/schedules/${c}`);return d}async function Se(c,d){const{data:w}=await h.post(`/schedules/${c}/toggle`,d);return w}async function $e(c){const{data:d}=await h.post(`/schedules/${c}/run`,{});return d}async function Ce(c,d={}){const{data:w}=await h.get(`/schedules/${c}/logs`,{params:d});return w}async function Ne(c){const{data:d}=await h.delete(`/schedules/${c}/logs`);return d}const Be={class:"page"},Te={class:"vip-actions"},Ue={class:"panel-head"},ze={class:"panel-actions"},Me={key:1,class:"grid"},He={class:"schedule-top"},Ie={class:"schedule-main"},Ae={class:"schedule-title"},Le={class:"schedule-name"},Pe={class:"schedule-meta app-muted"},Ee={class:"schedule-meta app-muted"},Oe={key:0},je={class:"schedule-switch"},De={class:"schedule-actions"},Fe={class:"switch-row"},Re={key:1,class:"logs"},qe={class:"log-head"},Ge={class:"app-muted"},Je={class:"log-body"},Ke={key:0,class:"log-error"},Qe={__name:"SchedulesPage",setup(c){const d=ye(),w=y(!1),T=y([]),H=y(!1),I=y([]),x=y(!1),A=y(!1),C=y(null),U=y(!1),L=y(!1),S=y([]),z=y(null),k=y(!1),a=be({name:"",schedule_time:"08:00",weekdays:["1","2","3","4","5"],browse_type:"应读",enable_screenshot:!0,random_delay:!1,account_ids:[]}),X=[{label:"应读",value:"应读"},{label:"注册前未读",value:"注册前未读"}];function F(t){return String(t)==="注册前未读"?"注册前未读":"应读"}const R=[{label:"周一",value:"1"},{label:"周二",value:"2"},{label:"周三",value:"3"},{label:"周四",value:"4"},{label:"周五",value:"5"},{label:"周六",value:"6"},{label:"周日",value:"7"}],r=we(()=>d.isVip);function P(t){const e=String(t||"").match(/^(\d{1,2}):(\d{2})$/);if(!e)return null;const o=Number(e[1]),m=Number(e[2]);return Number.isNaN(o)||Number.isNaN(m)||o<0||o>23||m<0||m>59?null:`${String(o).padStart(2,"0")}:${String(m).padStart(2,"0")}`}function Y(t){const e=Array.isArray(t)?t:String(t||"").split(",").filter(Boolean),o=Object.fromEntries(R.map(m=>[m.value,m.label]));return e.map(m=>o[String(m)]||String(m)).join(" ")}async function Z(){H.value=!0;try{const t=await fe({refresh:!1});I.value=(t||[]).map(e=>({label:e.username,value:e.id}))}catch{I.value=[]}finally{H.value=!1}}async function M(){w.value=!0;try{const t=await he();T.value=(Array.isArray(t)?t:[]).map(e=>({...e,browse_type:F(e?.browse_type)}))}catch(t){t?.response?.status===401&&(window.location.href="/login"),T.value=[]}finally{w.value=!1}}function ee(){C.value=null,a.name="",a.schedule_time="08:00",a.weekdays=["1","2","3","4","5"],a.browse_type="应读",a.enable_screenshot=!0,a.random_delay=!1,a.account_ids=[],x.value=!0}function le(t){C.value=t.id,a.name=t.name||"",a.schedule_time=P(t.schedule_time)||"08:00",a.weekdays=String(t.weekdays||"").split(",").filter(Boolean).map(e=>String(e)),a.weekdays.length===0&&(a.weekdays=["1","2","3","4","5"]),a.browse_type=F(t.browse_type),a.enable_screenshot=Number(t.enable_screenshot??1)!==0,a.random_delay=Number(t.random_delay??0)!==0,a.account_ids=Array.isArray(t.account_ids)?t.account_ids.slice():[],x.value=!0}async function te(){if(!r.value){k.value=!0;return}const t=P(a.schedule_time);if(!t){v.error("时间格式错误,请使用 HH:MM");return}if(!a.weekdays||a.weekdays.length===0){v.warning("请选择至少一个执行日期");return}A.value=!0;try{const e={name:a.name.trim()||"我的定时任务",schedule_time:t,weekdays:a.weekdays.join(","),browse_type:a.browse_type,enable_screenshot:a.enable_screenshot?1:0,random_delay:a.random_delay?1:0,account_ids:a.account_ids};C.value?(await Ve(C.value,e),v.success("保存成功")):(await ke(e),v.success("创建成功")),x.value=!1,await M()}catch(e){const o=e?.response?.data;v.error(o?.error||"保存失败")}finally{A.value=!1}}async function ae(t){try{await W.confirm(`确定要删除定时任务「${t.name||"未命名任务"}」吗?`,"删除任务",{confirmButtonText:"删除",cancelButtonText:"取消",type:"warning"})}catch{return}try{const e=await xe(t.id);e?.success?(v.success("已删除"),await M()):v.error(e?.error||"删除失败")}catch(e){const o=e?.response?.data;v.error(o?.error||"删除失败")}}async function ne(t,e){if(!r.value){k.value=!0;return}try{(await Se(t.id,{enabled:e}))?.success&&(t.enabled=e?1:0,v.success(e?"已启用":"已禁用"))}catch{v.error("操作失败")}}async function se(t){if(!r.value){k.value=!0;return}try{const e=await $e(t.id);e?.success?v.success(e?.message||"已开始执行"):v.error(e?.error||"执行失败")}catch(e){const o=e?.response?.data;v.error(o?.error||"执行失败")}}async function oe(t){z.value=t,U.value=!0,L.value=!0;try{S.value=await Ce(t.id,{limit:20})}catch{S.value=[]}finally{L.value=!1}}async function ue(){const t=z.value;if(t){try{await W.confirm("确定要清空该任务的所有执行日志吗?","清空日志",{confirmButtonText:"清空",cancelButtonText:"取消",type:"warning"})}catch{return}try{const e=await Ne(t.id);e?.success?(v.success(`已清空 ${e?.deleted||0} 条日志`),S.value=[]):v.error(e?.error||"操作失败")}catch{v.error("操作失败")}}}function ie(t){const e=String(t||"");return e==="success"||e==="completed"?"success":e==="failed"?"danger":"info"}function de(t){const e=Number(t||0),o=Math.floor(e/60),m=e%60;return o<=0?`${m} 秒`:`${o} 分 ${m} 秒`}return ge(async()=>{d.vipInfo||d.refreshVipInfo().catch(()=>{window.location.href="/login"}),await Promise.all([Z(),M()])}),(t,e)=>{const o=p("el-button"),m=p("el-alert"),q=p("el-skeleton"),G=p("el-empty"),J=p("el-tag"),E=p("el-switch"),O=p("el-card"),re=p("el-input"),$=p("el-form-item"),ce=p("el-time-picker"),me=p("el-checkbox"),pe=p("el-checkbox-group"),K=p("el-option"),Q=p("el-select"),ve=p("el-form"),j=p("el-dialog");return i(),b("div",Be,[r.value?D("",!0):(i(),g(m,{key:0,type:"warning","show-icon":"",closable:!1,title:"定时任务为 VIP 专属功能,升级后可使用。",class:"vip-alert"},{default:s(()=>[u("div",Te,[n(o,{type:"primary",plain:"",onClick:e[0]||(e[0]=l=>k.value=!0)},{default:s(()=>[...e[14]||(e[14]=[f("了解VIP特权",-1)])]),_:1})])]),_:1})),n(O,{shadow:"never",class:"panel","body-style":{padding:"14px"}},{default:s(()=>[u("div",Ue,[e[17]||(e[17]=u("div",{class:"panel-title"},"定时任务",-1)),u("div",ze,[n(o,{loading:w.value,onClick:M},{default:s(()=>[...e[15]||(e[15]=[f("刷新",-1)])]),_:1},8,["loading"]),n(o,{type:"primary",disabled:!r.value,onClick:ee},{default:s(()=>[...e[16]||(e[16]=[f("新建任务",-1)])]),_:1},8,["disabled"])])]),w.value?(i(),g(q,{key:0,rows:6,animated:""})):(i(),b(V,{key:1},[T.value.length===0?(i(),g(G,{key:0,description:"暂无定时任务"})):(i(),b("div",Me,[(i(!0),b(V,null,B(T.value,l=>(i(),g(O,{key:l.id,shadow:"never",class:"schedule-card","body-style":{padding:"14px"}},{default:s(()=>[u("div",He,[u("div",Ie,[u("div",Ae,[u("span",Le,_(l.name||"未命名任务"),1),n(J,{size:"small",effect:"light",type:Number(l.enabled)?"success":"info"},{default:s(()=>[f(_(Number(l.enabled)?"启用":"停用"),1)]),_:2},1032,["type"])]),u("div",Pe,[u("span",null,"⏰ "+_(P(l.schedule_time)||l.schedule_time),1),u("span",null,"📅 "+_(Y(l.weekdays)),1)]),u("div",Ee,[u("span",null,"📋 "+_(l.browse_type||"应读"),1),u("span",null,"👥 "+_((l.account_ids||[]).length)+" 个账号",1),u("span",null,_(Number(l.enable_screenshot??1)!==0?"📸 截图":"📷 不截图"),1),Number(l.random_delay??0)!==0?(i(),b("span",Oe,"🎲 随机±15分钟")):D("",!0)])]),u("div",je,[n(E,{"model-value":!!Number(l.enabled),disabled:!r.value,"inline-prompt":"","active-text":"启用","inactive-text":"停用",onChange:N=>ne(l,N)},null,8,["model-value","disabled","onChange"])])]),u("div",De,[n(o,{size:"small",type:"primary",disabled:!r.value,onClick:N=>se(l)},{default:s(()=>[...e[18]||(e[18]=[f("立即执行",-1)])]),_:1},8,["disabled","onClick"]),n(o,{size:"small",onClick:N=>oe(l)},{default:s(()=>[...e[19]||(e[19]=[f("日志",-1)])]),_:1},8,["onClick"]),n(o,{size:"small",disabled:!r.value,onClick:N=>le(l)},{default:s(()=>[...e[20]||(e[20]=[f("编辑",-1)])]),_:1},8,["disabled","onClick"]),n(o,{size:"small",type:"danger",text:"",disabled:!r.value,onClick:N=>ae(l)},{default:s(()=>[...e[21]||(e[21]=[f("删除",-1)])]),_:1},8,["disabled","onClick"])])]),_:2},1024))),128))]))],64))]),_:1}),n(j,{modelValue:x.value,"onUpdate:modelValue":e[9]||(e[9]=l=>x.value=l),title:C.value?"编辑定时任务":"新建定时任务",width:"min(720px, 92vw)"},{footer:s(()=>[n(o,{onClick:e[8]||(e[8]=l=>x.value=!1)},{default:s(()=>[...e[22]||(e[22]=[f("取消",-1)])]),_:1}),n(o,{type:"primary",loading:A.value,disabled:!r.value,onClick:te},{default:s(()=>[...e[23]||(e[23]=[f("保存",-1)])]),_:1},8,["loading","disabled"])]),default:s(()=>[n(ve,{"label-position":"top"},{default:s(()=>[n($,{label:"任务名称"},{default:s(()=>[n(re,{modelValue:a.name,"onUpdate:modelValue":e[1]||(e[1]=l=>a.name=l),placeholder:"我的定时任务",disabled:!r.value},null,8,["modelValue","disabled"])]),_:1}),n($,{label:"执行时间(HH:MM)"},{default:s(()=>[n(ce,{modelValue:a.schedule_time,"onUpdate:modelValue":e[2]||(e[2]=l=>a.schedule_time=l),placeholder:"选择时间",format:"HH:mm","value-format":"HH:mm",style:{width:"180px"},disabled:!r.value},null,8,["modelValue","disabled"])]),_:1}),n($,{label:"执行日期"},{default:s(()=>[n(pe,{modelValue:a.weekdays,"onUpdate:modelValue":e[3]||(e[3]=l=>a.weekdays=l),disabled:!r.value},{default:s(()=>[(i(),b(V,null,B(R,l=>n(me,{key:l.value,label:l.value},{default:s(()=>[f(_(l.label),1)]),_:2},1032,["label"])),64))]),_:1},8,["modelValue","disabled"])]),_:1}),n($,{label:"浏览类型"},{default:s(()=>[n(Q,{modelValue:a.browse_type,"onUpdate:modelValue":e[4]||(e[4]=l=>a.browse_type=l),style:{width:"160px"},disabled:!r.value},{default:s(()=>[(i(),b(V,null,B(X,l=>n(K,{key:l.value,label:l.label,value:l.value},null,8,["label","value"])),64))]),_:1},8,["modelValue","disabled"])]),_:1}),n($,{label:"截图"},{default:s(()=>[u("div",Fe,[n(E,{modelValue:a.enable_screenshot,"onUpdate:modelValue":e[5]||(e[5]=l=>a.enable_screenshot=l),disabled:!r.value,"inline-prompt":"","active-text":"截图","inactive-text":"不截图"},null,8,["modelValue","disabled"]),n(E,{modelValue:a.random_delay,"onUpdate:modelValue":e[6]||(e[6]=l=>a.random_delay=l),disabled:!r.value,"inline-prompt":"","active-text":"随机±15分钟","inactive-text":"固定时间"},null,8,["modelValue","disabled"])])]),_:1}),n($,{label:"参与账号"},{default:s(()=>[n(Q,{modelValue:a.account_ids,"onUpdate:modelValue":e[7]||(e[7]=l=>a.account_ids=l),multiple:"",filterable:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:"选择账号(可多选)",style:{width:"100%"},loading:H.value,disabled:!r.value},{default:s(()=>[(i(!0),b(V,null,B(I.value,l=>(i(),g(K,{key:l.value,label:l.label,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","loading","disabled"])]),_:1})]),_:1})]),_:1},8,["modelValue","title"]),n(j,{modelValue:U.value,"onUpdate:modelValue":e[11]||(e[11]=l=>U.value=l),title:z.value?`【${z.value.name||"未命名任务"}】执行日志`:"执行日志",width:"min(760px, 92vw)"},{footer:s(()=>[n(o,{onClick:e[10]||(e[10]=l=>U.value=!1)},{default:s(()=>[...e[24]||(e[24]=[f("关闭",-1)])]),_:1}),n(o,{type:"danger",plain:"",disabled:S.value.length===0,onClick:ue},{default:s(()=>[...e[25]||(e[25]=[f("清空日志",-1)])]),_:1},8,["disabled"])]),default:s(()=>[L.value?(i(),g(q,{key:0,rows:6,animated:""})):(i(),b(V,{key:1},[S.value.length===0?(i(),g(G,{key:0,description:"暂无执行日志"})):(i(),b("div",Re,[(i(!0),b(V,null,B(S.value,l=>(i(),g(O,{key:l.id,shadow:"never",class:"log-card","body-style":{padding:"12px"}},{default:s(()=>[u("div",qe,[n(J,{size:"small",effect:"light",type:ie(l.status)},{default:s(()=>[f(_(l.status==="failed"?"失败":l.status==="running"?"进行中":"成功"),1)]),_:2},1032,["type"]),u("span",Ge,_(l.created_at||""),1)]),u("div",Je,[u("div",null,"账号数:"+_(l.total_accounts||0)+" 个",1),u("div",null,"成功:"+_(l.success_count||0)+" 个 · 失败:"+_(l.failed_count||0)+" 个",1),u("div",null,"耗时:"+_(de(l.duration||0)),1),l.error_message?(i(),b("div",Ke,"错误:"+_(l.error_message),1)):D("",!0)])]),_:2},1024))),128))]))],64))]),_:1},8,["modelValue","title"]),n(j,{modelValue:k.value,"onUpdate:modelValue":e[13]||(e[13]=l=>k.value=l),title:"VIP 特权",width:"min(560px, 92vw)"},{footer:s(()=>[n(o,{type:"primary",onClick:e[12]||(e[12]=l=>k.value=!1)},{default:s(()=>[...e[26]||(e[26]=[f("我知道了",-1)])]),_:1})]),default:s(()=>[n(m,{type:"info",closable:!1,title:"升级 VIP 后可解锁:无限账号、优先排队、定时任务、批量操作。","show-icon":""}),e[27]||(e[27]=u("div",{class:"vip-body"},[u("div",{class:"vip-tip app-muted"},"升级方式:请通过“反馈”联系管理员开通。")],-1))]),_:1},8,["modelValue"])])}}},Ye=_e(Qe,[["__scopeId","data-v-b61d8d7c"]]);export{Ye as default}; +import{f as fe}from"./accounts-D_1tBhb9.js";import{p as h,_ as _e,n as ye,a as y,r as be,c as we,o as ge,b,h as g,i as D,d as n,w as s,e as p,f as i,g as u,k as f,F as V,v as B,t as _,E as v,x as W}from"./index-FDI649KN.js";async function he(){const{data:c}=await h.get("/schedules");return c}async function ke(c){const{data:d}=await h.post("/schedules",c);return d}async function Ve(c,d){const{data:w}=await h.put(`/schedules/${c}`,d);return w}async function xe(c){const{data:d}=await h.delete(`/schedules/${c}`);return d}async function Se(c,d){const{data:w}=await h.post(`/schedules/${c}/toggle`,d);return w}async function $e(c){const{data:d}=await h.post(`/schedules/${c}/run`,{});return d}async function Ce(c,d={}){const{data:w}=await h.get(`/schedules/${c}/logs`,{params:d});return w}async function Ne(c){const{data:d}=await h.delete(`/schedules/${c}/logs`);return d}const Be={class:"page"},Te={class:"vip-actions"},Ue={class:"panel-head"},ze={class:"panel-actions"},Me={key:1,class:"grid"},He={class:"schedule-top"},Ie={class:"schedule-main"},Ae={class:"schedule-title"},Le={class:"schedule-name"},Pe={class:"schedule-meta app-muted"},Ee={class:"schedule-meta app-muted"},Oe={key:0},je={class:"schedule-switch"},De={class:"schedule-actions"},Fe={class:"switch-row"},Re={key:1,class:"logs"},qe={class:"log-head"},Ge={class:"app-muted"},Je={class:"log-body"},Ke={key:0,class:"log-error"},Qe={__name:"SchedulesPage",setup(c){const d=ye(),w=y(!1),T=y([]),H=y(!1),I=y([]),x=y(!1),A=y(!1),C=y(null),U=y(!1),L=y(!1),S=y([]),z=y(null),k=y(!1),a=be({name:"",schedule_time:"08:00",weekdays:["1","2","3","4","5"],browse_type:"应读",enable_screenshot:!0,random_delay:!1,account_ids:[]}),X=[{label:"应读",value:"应读"},{label:"注册前未读",value:"注册前未读"}];function F(t){return String(t)==="注册前未读"?"注册前未读":"应读"}const R=[{label:"周一",value:"1"},{label:"周二",value:"2"},{label:"周三",value:"3"},{label:"周四",value:"4"},{label:"周五",value:"5"},{label:"周六",value:"6"},{label:"周日",value:"7"}],r=we(()=>d.isVip);function P(t){const e=String(t||"").match(/^(\d{1,2}):(\d{2})$/);if(!e)return null;const o=Number(e[1]),m=Number(e[2]);return Number.isNaN(o)||Number.isNaN(m)||o<0||o>23||m<0||m>59?null:`${String(o).padStart(2,"0")}:${String(m).padStart(2,"0")}`}function Y(t){const e=Array.isArray(t)?t:String(t||"").split(",").filter(Boolean),o=Object.fromEntries(R.map(m=>[m.value,m.label]));return e.map(m=>o[String(m)]||String(m)).join(" ")}async function Z(){H.value=!0;try{const t=await fe({refresh:!1});I.value=(t||[]).map(e=>({label:e.username,value:e.id}))}catch{I.value=[]}finally{H.value=!1}}async function M(){w.value=!0;try{const t=await he();T.value=(Array.isArray(t)?t:[]).map(e=>({...e,browse_type:F(e?.browse_type)}))}catch(t){t?.response?.status===401&&(window.location.href="/login"),T.value=[]}finally{w.value=!1}}function ee(){C.value=null,a.name="",a.schedule_time="08:00",a.weekdays=["1","2","3","4","5"],a.browse_type="应读",a.enable_screenshot=!0,a.random_delay=!1,a.account_ids=[],x.value=!0}function le(t){C.value=t.id,a.name=t.name||"",a.schedule_time=P(t.schedule_time)||"08:00",a.weekdays=String(t.weekdays||"").split(",").filter(Boolean).map(e=>String(e)),a.weekdays.length===0&&(a.weekdays=["1","2","3","4","5"]),a.browse_type=F(t.browse_type),a.enable_screenshot=Number(t.enable_screenshot??1)!==0,a.random_delay=Number(t.random_delay??0)!==0,a.account_ids=Array.isArray(t.account_ids)?t.account_ids.slice():[],x.value=!0}async function te(){if(!r.value){k.value=!0;return}const t=P(a.schedule_time);if(!t){v.error("时间格式错误,请使用 HH:MM");return}if(!a.weekdays||a.weekdays.length===0){v.warning("请选择至少一个执行日期");return}A.value=!0;try{const e={name:a.name.trim()||"我的定时任务",schedule_time:t,weekdays:a.weekdays.join(","),browse_type:a.browse_type,enable_screenshot:a.enable_screenshot?1:0,random_delay:a.random_delay?1:0,account_ids:a.account_ids};C.value?(await Ve(C.value,e),v.success("保存成功")):(await ke(e),v.success("创建成功")),x.value=!1,await M()}catch(e){const o=e?.response?.data;v.error(o?.error||"保存失败")}finally{A.value=!1}}async function ae(t){try{await W.confirm(`确定要删除定时任务「${t.name||"未命名任务"}」吗?`,"删除任务",{confirmButtonText:"删除",cancelButtonText:"取消",type:"warning"})}catch{return}try{const e=await xe(t.id);e?.success?(v.success("已删除"),await M()):v.error(e?.error||"删除失败")}catch(e){const o=e?.response?.data;v.error(o?.error||"删除失败")}}async function ne(t,e){if(!r.value){k.value=!0;return}try{(await Se(t.id,{enabled:e}))?.success&&(t.enabled=e?1:0,v.success(e?"已启用":"已禁用"))}catch{v.error("操作失败")}}async function se(t){if(!r.value){k.value=!0;return}try{const e=await $e(t.id);e?.success?v.success(e?.message||"已开始执行"):v.error(e?.error||"执行失败")}catch(e){const o=e?.response?.data;v.error(o?.error||"执行失败")}}async function oe(t){z.value=t,U.value=!0,L.value=!0;try{S.value=await Ce(t.id,{limit:20})}catch{S.value=[]}finally{L.value=!1}}async function ue(){const t=z.value;if(t){try{await W.confirm("确定要清空该任务的所有执行日志吗?","清空日志",{confirmButtonText:"清空",cancelButtonText:"取消",type:"warning"})}catch{return}try{const e=await Ne(t.id);e?.success?(v.success(`已清空 ${e?.deleted||0} 条日志`),S.value=[]):v.error(e?.error||"操作失败")}catch{v.error("操作失败")}}}function ie(t){const e=String(t||"");return e==="success"||e==="completed"?"success":e==="failed"?"danger":"info"}function de(t){const e=Number(t||0),o=Math.floor(e/60),m=e%60;return o<=0?`${m} 秒`:`${o} 分 ${m} 秒`}return ge(async()=>{d.vipInfo||d.refreshVipInfo().catch(()=>{window.location.href="/login"}),await Promise.all([Z(),M()])}),(t,e)=>{const o=p("el-button"),m=p("el-alert"),q=p("el-skeleton"),G=p("el-empty"),J=p("el-tag"),E=p("el-switch"),O=p("el-card"),re=p("el-input"),$=p("el-form-item"),ce=p("el-time-picker"),me=p("el-checkbox"),pe=p("el-checkbox-group"),K=p("el-option"),Q=p("el-select"),ve=p("el-form"),j=p("el-dialog");return i(),b("div",Be,[r.value?D("",!0):(i(),g(m,{key:0,type:"warning","show-icon":"",closable:!1,title:"定时任务为 VIP 专属功能,升级后可使用。",class:"vip-alert"},{default:s(()=>[u("div",Te,[n(o,{type:"primary",plain:"",onClick:e[0]||(e[0]=l=>k.value=!0)},{default:s(()=>[...e[14]||(e[14]=[f("了解VIP特权",-1)])]),_:1})])]),_:1})),n(O,{shadow:"never",class:"panel","body-style":{padding:"14px"}},{default:s(()=>[u("div",Ue,[e[17]||(e[17]=u("div",{class:"panel-title"},"定时任务",-1)),u("div",ze,[n(o,{loading:w.value,onClick:M},{default:s(()=>[...e[15]||(e[15]=[f("刷新",-1)])]),_:1},8,["loading"]),n(o,{type:"primary",disabled:!r.value,onClick:ee},{default:s(()=>[...e[16]||(e[16]=[f("新建任务",-1)])]),_:1},8,["disabled"])])]),w.value?(i(),g(q,{key:0,rows:6,animated:""})):(i(),b(V,{key:1},[T.value.length===0?(i(),g(G,{key:0,description:"暂无定时任务"})):(i(),b("div",Me,[(i(!0),b(V,null,B(T.value,l=>(i(),g(O,{key:l.id,shadow:"never",class:"schedule-card","body-style":{padding:"14px"}},{default:s(()=>[u("div",He,[u("div",Ie,[u("div",Ae,[u("span",Le,_(l.name||"未命名任务"),1),n(J,{size:"small",effect:"light",type:Number(l.enabled)?"success":"info"},{default:s(()=>[f(_(Number(l.enabled)?"启用":"停用"),1)]),_:2},1032,["type"])]),u("div",Pe,[u("span",null,"⏰ "+_(P(l.schedule_time)||l.schedule_time),1),u("span",null,"📅 "+_(Y(l.weekdays)),1)]),u("div",Ee,[u("span",null,"📋 "+_(l.browse_type||"应读"),1),u("span",null,"👥 "+_((l.account_ids||[]).length)+" 个账号",1),u("span",null,_(Number(l.enable_screenshot??1)!==0?"📸 截图":"📷 不截图"),1),Number(l.random_delay??0)!==0?(i(),b("span",Oe,"🎲 随机±15分钟")):D("",!0)])]),u("div",je,[n(E,{"model-value":!!Number(l.enabled),disabled:!r.value,"inline-prompt":"","active-text":"启用","inactive-text":"停用",onChange:N=>ne(l,N)},null,8,["model-value","disabled","onChange"])])]),u("div",De,[n(o,{size:"small",type:"primary",disabled:!r.value,onClick:N=>se(l)},{default:s(()=>[...e[18]||(e[18]=[f("立即执行",-1)])]),_:1},8,["disabled","onClick"]),n(o,{size:"small",onClick:N=>oe(l)},{default:s(()=>[...e[19]||(e[19]=[f("日志",-1)])]),_:1},8,["onClick"]),n(o,{size:"small",disabled:!r.value,onClick:N=>le(l)},{default:s(()=>[...e[20]||(e[20]=[f("编辑",-1)])]),_:1},8,["disabled","onClick"]),n(o,{size:"small",type:"danger",text:"",disabled:!r.value,onClick:N=>ae(l)},{default:s(()=>[...e[21]||(e[21]=[f("删除",-1)])]),_:1},8,["disabled","onClick"])])]),_:2},1024))),128))]))],64))]),_:1}),n(j,{modelValue:x.value,"onUpdate:modelValue":e[9]||(e[9]=l=>x.value=l),title:C.value?"编辑定时任务":"新建定时任务",width:"min(720px, 92vw)"},{footer:s(()=>[n(o,{onClick:e[8]||(e[8]=l=>x.value=!1)},{default:s(()=>[...e[22]||(e[22]=[f("取消",-1)])]),_:1}),n(o,{type:"primary",loading:A.value,disabled:!r.value,onClick:te},{default:s(()=>[...e[23]||(e[23]=[f("保存",-1)])]),_:1},8,["loading","disabled"])]),default:s(()=>[n(ve,{"label-position":"top"},{default:s(()=>[n($,{label:"任务名称"},{default:s(()=>[n(re,{modelValue:a.name,"onUpdate:modelValue":e[1]||(e[1]=l=>a.name=l),placeholder:"我的定时任务",disabled:!r.value},null,8,["modelValue","disabled"])]),_:1}),n($,{label:"执行时间(HH:MM)"},{default:s(()=>[n(ce,{modelValue:a.schedule_time,"onUpdate:modelValue":e[2]||(e[2]=l=>a.schedule_time=l),placeholder:"选择时间",format:"HH:mm","value-format":"HH:mm",style:{width:"180px"},disabled:!r.value},null,8,["modelValue","disabled"])]),_:1}),n($,{label:"执行日期"},{default:s(()=>[n(pe,{modelValue:a.weekdays,"onUpdate:modelValue":e[3]||(e[3]=l=>a.weekdays=l),disabled:!r.value},{default:s(()=>[(i(),b(V,null,B(R,l=>n(me,{key:l.value,label:l.value},{default:s(()=>[f(_(l.label),1)]),_:2},1032,["label"])),64))]),_:1},8,["modelValue","disabled"])]),_:1}),n($,{label:"浏览类型"},{default:s(()=>[n(Q,{modelValue:a.browse_type,"onUpdate:modelValue":e[4]||(e[4]=l=>a.browse_type=l),style:{width:"160px"},disabled:!r.value},{default:s(()=>[(i(),b(V,null,B(X,l=>n(K,{key:l.value,label:l.label,value:l.value},null,8,["label","value"])),64))]),_:1},8,["modelValue","disabled"])]),_:1}),n($,{label:"截图"},{default:s(()=>[u("div",Fe,[n(E,{modelValue:a.enable_screenshot,"onUpdate:modelValue":e[5]||(e[5]=l=>a.enable_screenshot=l),disabled:!r.value,"inline-prompt":"","active-text":"截图","inactive-text":"不截图"},null,8,["modelValue","disabled"]),n(E,{modelValue:a.random_delay,"onUpdate:modelValue":e[6]||(e[6]=l=>a.random_delay=l),disabled:!r.value,"inline-prompt":"","active-text":"随机±15分钟","inactive-text":"固定时间"},null,8,["modelValue","disabled"])])]),_:1}),n($,{label:"参与账号"},{default:s(()=>[n(Q,{modelValue:a.account_ids,"onUpdate:modelValue":e[7]||(e[7]=l=>a.account_ids=l),multiple:"",filterable:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:"选择账号(可多选)",style:{width:"100%"},loading:H.value,disabled:!r.value},{default:s(()=>[(i(!0),b(V,null,B(I.value,l=>(i(),g(K,{key:l.value,label:l.label,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","loading","disabled"])]),_:1})]),_:1})]),_:1},8,["modelValue","title"]),n(j,{modelValue:U.value,"onUpdate:modelValue":e[11]||(e[11]=l=>U.value=l),title:z.value?`【${z.value.name||"未命名任务"}】执行日志`:"执行日志",width:"min(760px, 92vw)"},{footer:s(()=>[n(o,{onClick:e[10]||(e[10]=l=>U.value=!1)},{default:s(()=>[...e[24]||(e[24]=[f("关闭",-1)])]),_:1}),n(o,{type:"danger",plain:"",disabled:S.value.length===0,onClick:ue},{default:s(()=>[...e[25]||(e[25]=[f("清空日志",-1)])]),_:1},8,["disabled"])]),default:s(()=>[L.value?(i(),g(q,{key:0,rows:6,animated:""})):(i(),b(V,{key:1},[S.value.length===0?(i(),g(G,{key:0,description:"暂无执行日志"})):(i(),b("div",Re,[(i(!0),b(V,null,B(S.value,l=>(i(),g(O,{key:l.id,shadow:"never",class:"log-card","body-style":{padding:"12px"}},{default:s(()=>[u("div",qe,[n(J,{size:"small",effect:"light",type:ie(l.status)},{default:s(()=>[f(_(l.status==="failed"?"失败":l.status==="running"?"进行中":"成功"),1)]),_:2},1032,["type"]),u("span",Ge,_(l.created_at||""),1)]),u("div",Je,[u("div",null,"账号数:"+_(l.total_accounts||0)+" 个",1),u("div",null,"成功:"+_(l.success_count||0)+" 个 · 失败:"+_(l.failed_count||0)+" 个",1),u("div",null,"耗时:"+_(de(l.duration||0)),1),l.error_message?(i(),b("div",Ke,"错误:"+_(l.error_message),1)):D("",!0)])]),_:2},1024))),128))]))],64))]),_:1},8,["modelValue","title"]),n(j,{modelValue:k.value,"onUpdate:modelValue":e[13]||(e[13]=l=>k.value=l),title:"VIP 特权",width:"min(560px, 92vw)"},{footer:s(()=>[n(o,{type:"primary",onClick:e[12]||(e[12]=l=>k.value=!1)},{default:s(()=>[...e[26]||(e[26]=[f("我知道了",-1)])]),_:1})]),default:s(()=>[n(m,{type:"info",closable:!1,title:"升级 VIP 后可解锁:无限账号、优先排队、定时任务、批量操作。","show-icon":""}),e[27]||(e[27]=u("div",{class:"vip-body"},[u("div",{class:"vip-tip app-muted"},"升级方式:请通过“反馈”联系管理员开通。")],-1))]),_:1},8,["modelValue"])])}}},Ye=_e(Qe,[["__scopeId","data-v-b61d8d7c"]]);export{Ye as default}; diff --git a/static/app/assets/ScreenshotsPage-DPHTVdqF.js b/static/app/assets/ScreenshotsPage-CF9cDOW6.js similarity index 99% rename from static/app/assets/ScreenshotsPage-DPHTVdqF.js rename to static/app/assets/ScreenshotsPage-CF9cDOW6.js index 3b95cae..d9175fe 100644 --- a/static/app/assets/ScreenshotsPage-DPHTVdqF.js +++ b/static/app/assets/ScreenshotsPage-CF9cDOW6.js @@ -1 +1 @@ -import{p as B,_ as W,a as v,o as j,h,w as r,e as g,f as d,g as s,b as x,d as u,k as m,F as U,v as D,t as E,x as P,E as i}from"./index-CoUFrT_1.js";async function F(){const{data:f}=await B.get("/screenshots");return f}async function H(f){const{data:p}=await B.delete(`/screenshots/${encodeURIComponent(f)}`);return p}async function q(){const{data:f}=await B.post("/screenshots/clear",{});return f}const G={class:"panel-head"},J={class:"panel-actions"},K={key:1,class:"grid"},Q=["src","alt","data-shot-filename","onClick"],X={class:"shot-body"},Y=["title"],Z={class:"shot-meta app-muted"},ee={class:"shot-actions"},te={class:"preview"},ne=["src","alt"],ae={__name:"ScreenshotsPage",setup(f){const p=v(!1),c=v([]),w=v(!1),_=v(""),b=v("");function y(e){return`/screenshots/${encodeURIComponent(e)}`}async function S(){p.value=!0;try{const e=await F();c.value=Array.isArray(e)?e:[]}catch(e){e?.response?.status===401&&(window.location.href="/login"),c.value=[]}finally{p.value=!1}}function R(e){b.value=e.display_name||e.filename||"截图预览",_.value=y(e.filename),w.value=!0}function L(e){try{const t=typeof CSS<"u"&&typeof CSS.escape=="function"?CSS.escape(String(e)):String(e);return document.querySelector(`img[data-shot-filename="${t}"]`)}catch{return null}}function T(e){return new Promise((t,n)=>{e.toBlob(o=>o?t(o):n(new Error("toBlob_failed")),"image/png")})}async function I(e){if(!e)throw new Error("no_image");(!e.complete||e.naturalWidth<=0)&&(typeof e.decode=="function"?await e.decode():await new Promise((o,l)=>{e.addEventListener("load",o,{once:!0}),e.addEventListener("error",l,{once:!0})}));const t=document.createElement("canvas");t.width=e.naturalWidth,t.height=e.naturalHeight;const n=t.getContext("2d");if(!n)throw new Error("no_canvas");return n.drawImage(e,0,0),await T(t)}async function V(e){if(!e)throw new Error("no_blob");if(e.type==="image/png")return e;if(typeof createImageBitmap=="function"){const n=await createImageBitmap(e),o=document.createElement("canvas");o.width=n.width,o.height=n.height;const l=o.getContext("2d");if(!l)throw new Error("no_canvas");return l.drawImage(n,0,0),await T(o)}const t=URL.createObjectURL(e);try{const n=new Image;return n.src=t,typeof n.decode=="function"&&await n.decode(),await I(n)}finally{URL.revokeObjectURL(t)}}async function $(e,t){const n=L(t);if(n)try{return await I(n)}catch{}const o=await fetch(e,{credentials:"include",cache:"no-store"});if(!o.ok)throw new Error("fetch_failed");const l=await o.blob();if(!(o.headers.get("Content-Type")||l.type||"").startsWith("image/"))throw new Error("not_image");return await V(l)}async function z(){try{await P.confirm("确定要清空全部截图吗?","清空截图",{confirmButtonText:"清空",cancelButtonText:"取消",type:"warning"})}catch{return}try{const e=await q();if(e?.success){i.success(`已清空(删除 ${e?.deleted||0} 张)`),c.value=[],w.value=!1;return}i.error(e?.error||"操作失败")}catch(e){const t=e?.response?.data;i.error(t?.error||"操作失败")}}async function A(e){try{await P.confirm(`确定要删除截图「${e.display_name||e.filename}」吗?`,"删除截图",{confirmButtonText:"删除",cancelButtonText:"取消",type:"warning"})}catch{return}try{const t=await H(e.filename);if(t?.success){c.value=c.value.filter(n=>n.filename!==e.filename),_.value.includes(encodeURIComponent(e.filename))&&(w.value=!1),i.success("已删除");return}i.error(t?.error||"删除失败")}catch(t){const n=t?.response?.data;i.error(n?.error||"删除失败")}}async function M(e){const t=y(e.filename);if(!navigator.clipboard||typeof navigator.clipboard.write!="function"||typeof window.ClipboardItem>"u"){i.warning("当前环境不支持复制图片(建议使用 Chrome/Edge 并通过 HTTPS 访问);可用“下载”。");return}try{try{await navigator.clipboard.write([new ClipboardItem({"image/png":$(t,e.filename)})])}catch{const n=await $(t,e.filename);await navigator.clipboard.write([new ClipboardItem({"image/png":n})])}i.success("图片已复制到剪贴板")}catch{try{if(navigator.clipboard&&typeof navigator.clipboard.writeText=="function"){await navigator.clipboard.writeText(`${window.location.origin}${t}`),i.warning("复制图片失败,已复制图片链接(可直接粘贴到浏览器打开)");return}}catch{}i.warning("复制图片失败:请确认允许剪贴板权限;可用“下载”。")}}function N(e){const t=document.createElement("a");t.href=y(e.filename),t.download=e.display_name||e.filename,document.body.appendChild(t),t.click(),t.remove()}return j(S),(e,t)=>{const n=g("el-button"),o=g("el-skeleton"),l=g("el-empty"),C=g("el-card"),O=g("el-dialog");return d(),h(C,{shadow:"never",class:"panel","body-style":{padding:"14px"}},{default:r(()=>[s("div",G,[t[4]||(t[4]=s("div",{class:"panel-title"},"截图管理",-1)),s("div",J,[u(n,{loading:p.value,onClick:S},{default:r(()=>[...t[2]||(t[2]=[m("刷新",-1)])]),_:1},8,["loading"]),u(n,{type:"danger",plain:"",disabled:c.value.length===0,onClick:z},{default:r(()=>[...t[3]||(t[3]=[m("清空全部",-1)])]),_:1},8,["disabled"])])]),p.value?(d(),h(o,{key:0,rows:6,animated:""})):(d(),x(U,{key:1},[c.value.length===0?(d(),h(l,{key:0,description:"暂无截图"})):(d(),x("div",K,[(d(!0),x(U,null,D(c.value,a=>(d(),h(C,{key:a.filename,shadow:"never",class:"shot-card","body-style":{padding:"0"}},{default:r(()=>[s("img",{class:"shot-img",src:y(a.filename),alt:a.display_name||a.filename,"data-shot-filename":a.filename,loading:"lazy",onClick:k=>R(a)},null,8,Q),s("div",X,[s("div",{class:"shot-name",title:a.display_name||a.filename},E(a.display_name||a.filename),9,Y),s("div",Z,E(a.created||""),1),s("div",ee,[u(n,{size:"small",text:"",type:"primary",onClick:k=>M(a)},{default:r(()=>[...t[5]||(t[5]=[m("复制图片",-1)])]),_:1},8,["onClick"]),u(n,{size:"small",text:"",onClick:k=>N(a)},{default:r(()=>[...t[6]||(t[6]=[m("下载",-1)])]),_:1},8,["onClick"]),u(n,{size:"small",text:"",type:"danger",onClick:k=>A(a)},{default:r(()=>[...t[7]||(t[7]=[m("删除",-1)])]),_:1},8,["onClick"])])])]),_:2},1024))),128))]))],64)),u(O,{modelValue:w.value,"onUpdate:modelValue":t[1]||(t[1]=a=>w.value=a),title:b.value,width:"min(920px, 94vw)"},{footer:r(()=>[u(n,{onClick:t[0]||(t[0]=a=>w.value=!1)},{default:r(()=>[...t[8]||(t[8]=[m("关闭",-1)])]),_:1})]),default:r(()=>[s("div",te,[s("img",{src:_.value,alt:b.value,class:"preview-img"},null,8,ne)])]),_:1},8,["modelValue","title"])]),_:1})}}},re=W(ae,[["__scopeId","data-v-4871f4ca"]]);export{re as default}; +import{p as B,_ as W,a as v,o as j,h,w as r,e as g,f as d,g as s,b as x,d as u,k as m,F as U,v as D,t as E,x as P,E as i}from"./index-FDI649KN.js";async function F(){const{data:f}=await B.get("/screenshots");return f}async function H(f){const{data:p}=await B.delete(`/screenshots/${encodeURIComponent(f)}`);return p}async function q(){const{data:f}=await B.post("/screenshots/clear",{});return f}const G={class:"panel-head"},J={class:"panel-actions"},K={key:1,class:"grid"},Q=["src","alt","data-shot-filename","onClick"],X={class:"shot-body"},Y=["title"],Z={class:"shot-meta app-muted"},ee={class:"shot-actions"},te={class:"preview"},ne=["src","alt"],ae={__name:"ScreenshotsPage",setup(f){const p=v(!1),c=v([]),w=v(!1),_=v(""),b=v("");function y(e){return`/screenshots/${encodeURIComponent(e)}`}async function S(){p.value=!0;try{const e=await F();c.value=Array.isArray(e)?e:[]}catch(e){e?.response?.status===401&&(window.location.href="/login"),c.value=[]}finally{p.value=!1}}function R(e){b.value=e.display_name||e.filename||"截图预览",_.value=y(e.filename),w.value=!0}function L(e){try{const t=typeof CSS<"u"&&typeof CSS.escape=="function"?CSS.escape(String(e)):String(e);return document.querySelector(`img[data-shot-filename="${t}"]`)}catch{return null}}function T(e){return new Promise((t,n)=>{e.toBlob(o=>o?t(o):n(new Error("toBlob_failed")),"image/png")})}async function I(e){if(!e)throw new Error("no_image");(!e.complete||e.naturalWidth<=0)&&(typeof e.decode=="function"?await e.decode():await new Promise((o,l)=>{e.addEventListener("load",o,{once:!0}),e.addEventListener("error",l,{once:!0})}));const t=document.createElement("canvas");t.width=e.naturalWidth,t.height=e.naturalHeight;const n=t.getContext("2d");if(!n)throw new Error("no_canvas");return n.drawImage(e,0,0),await T(t)}async function V(e){if(!e)throw new Error("no_blob");if(e.type==="image/png")return e;if(typeof createImageBitmap=="function"){const n=await createImageBitmap(e),o=document.createElement("canvas");o.width=n.width,o.height=n.height;const l=o.getContext("2d");if(!l)throw new Error("no_canvas");return l.drawImage(n,0,0),await T(o)}const t=URL.createObjectURL(e);try{const n=new Image;return n.src=t,typeof n.decode=="function"&&await n.decode(),await I(n)}finally{URL.revokeObjectURL(t)}}async function $(e,t){const n=L(t);if(n)try{return await I(n)}catch{}const o=await fetch(e,{credentials:"include",cache:"no-store"});if(!o.ok)throw new Error("fetch_failed");const l=await o.blob();if(!(o.headers.get("Content-Type")||l.type||"").startsWith("image/"))throw new Error("not_image");return await V(l)}async function z(){try{await P.confirm("确定要清空全部截图吗?","清空截图",{confirmButtonText:"清空",cancelButtonText:"取消",type:"warning"})}catch{return}try{const e=await q();if(e?.success){i.success(`已清空(删除 ${e?.deleted||0} 张)`),c.value=[],w.value=!1;return}i.error(e?.error||"操作失败")}catch(e){const t=e?.response?.data;i.error(t?.error||"操作失败")}}async function A(e){try{await P.confirm(`确定要删除截图「${e.display_name||e.filename}」吗?`,"删除截图",{confirmButtonText:"删除",cancelButtonText:"取消",type:"warning"})}catch{return}try{const t=await H(e.filename);if(t?.success){c.value=c.value.filter(n=>n.filename!==e.filename),_.value.includes(encodeURIComponent(e.filename))&&(w.value=!1),i.success("已删除");return}i.error(t?.error||"删除失败")}catch(t){const n=t?.response?.data;i.error(n?.error||"删除失败")}}async function M(e){const t=y(e.filename);if(!navigator.clipboard||typeof navigator.clipboard.write!="function"||typeof window.ClipboardItem>"u"){i.warning("当前环境不支持复制图片(建议使用 Chrome/Edge 并通过 HTTPS 访问);可用“下载”。");return}try{try{await navigator.clipboard.write([new ClipboardItem({"image/png":$(t,e.filename)})])}catch{const n=await $(t,e.filename);await navigator.clipboard.write([new ClipboardItem({"image/png":n})])}i.success("图片已复制到剪贴板")}catch{try{if(navigator.clipboard&&typeof navigator.clipboard.writeText=="function"){await navigator.clipboard.writeText(`${window.location.origin}${t}`),i.warning("复制图片失败,已复制图片链接(可直接粘贴到浏览器打开)");return}}catch{}i.warning("复制图片失败:请确认允许剪贴板权限;可用“下载”。")}}function N(e){const t=document.createElement("a");t.href=y(e.filename),t.download=e.display_name||e.filename,document.body.appendChild(t),t.click(),t.remove()}return j(S),(e,t)=>{const n=g("el-button"),o=g("el-skeleton"),l=g("el-empty"),C=g("el-card"),O=g("el-dialog");return d(),h(C,{shadow:"never",class:"panel","body-style":{padding:"14px"}},{default:r(()=>[s("div",G,[t[4]||(t[4]=s("div",{class:"panel-title"},"截图管理",-1)),s("div",J,[u(n,{loading:p.value,onClick:S},{default:r(()=>[...t[2]||(t[2]=[m("刷新",-1)])]),_:1},8,["loading"]),u(n,{type:"danger",plain:"",disabled:c.value.length===0,onClick:z},{default:r(()=>[...t[3]||(t[3]=[m("清空全部",-1)])]),_:1},8,["disabled"])])]),p.value?(d(),h(o,{key:0,rows:6,animated:""})):(d(),x(U,{key:1},[c.value.length===0?(d(),h(l,{key:0,description:"暂无截图"})):(d(),x("div",K,[(d(!0),x(U,null,D(c.value,a=>(d(),h(C,{key:a.filename,shadow:"never",class:"shot-card","body-style":{padding:"0"}},{default:r(()=>[s("img",{class:"shot-img",src:y(a.filename),alt:a.display_name||a.filename,"data-shot-filename":a.filename,loading:"lazy",onClick:k=>R(a)},null,8,Q),s("div",X,[s("div",{class:"shot-name",title:a.display_name||a.filename},E(a.display_name||a.filename),9,Y),s("div",Z,E(a.created||""),1),s("div",ee,[u(n,{size:"small",text:"",type:"primary",onClick:k=>M(a)},{default:r(()=>[...t[5]||(t[5]=[m("复制图片",-1)])]),_:1},8,["onClick"]),u(n,{size:"small",text:"",onClick:k=>N(a)},{default:r(()=>[...t[6]||(t[6]=[m("下载",-1)])]),_:1},8,["onClick"]),u(n,{size:"small",text:"",type:"danger",onClick:k=>A(a)},{default:r(()=>[...t[7]||(t[7]=[m("删除",-1)])]),_:1},8,["onClick"])])])]),_:2},1024))),128))]))],64)),u(O,{modelValue:w.value,"onUpdate:modelValue":t[1]||(t[1]=a=>w.value=a),title:b.value,width:"min(920px, 94vw)"},{footer:r(()=>[u(n,{onClick:t[0]||(t[0]=a=>w.value=!1)},{default:r(()=>[...t[8]||(t[8]=[m("关闭",-1)])]),_:1})]),default:r(()=>[s("div",te,[s("img",{src:_.value,alt:b.value,class:"preview-img"},null,8,ne)])]),_:1},8,["modelValue","title"])]),_:1})}}},re=W(ae,[["__scopeId","data-v-4871f4ca"]]);export{re as default}; diff --git a/static/app/assets/VerifyResultPage-BObYrtVV.js b/static/app/assets/VerifyResultPage-3EKG3rSu.js similarity index 97% rename from static/app/assets/VerifyResultPage-BObYrtVV.js rename to static/app/assets/VerifyResultPage-3EKG3rSu.js index b7fe574..0451ab6 100644 --- a/static/app/assets/VerifyResultPage-BObYrtVV.js +++ b/static/app/assets/VerifyResultPage-3EKG3rSu.js @@ -1 +1 @@ -import{_ as U,a as o,c as I,o as E,m as R,b as k,d as i,w as s,e as d,u as W,f as _,g as l,i as B,h as $,k as T,t as v}from"./index-CoUFrT_1.js";const j={class:"auth-wrap"},z={class:"actions"},D={key:0,class:"countdown app-muted"},M={__name:"VerifyResultPage",setup(q){const x=W(),p=o(!1),f=o(""),m=o(""),w=o(""),y=o(""),r=o(""),u=o(""),c=o(""),n=o(0);let a=null;function C(){if(typeof window>"u")return null;const e=window.__APP_INITIAL_STATE__;return!e||typeof e!="object"?null:(window.__APP_INITIAL_STATE__=null,e)}function N(e){const t=!!e?.success;p.value=t,f.value=e?.title||(t?"验证成功":"验证失败"),m.value=e?.message||e?.error_message||(t?"操作已完成,现在可以继续使用系统。":"操作失败,请稍后重试。"),w.value=e?.primary_label||(t?"立即登录":"重新注册"),y.value=e?.primary_url||(t?"/login":"/register"),r.value=e?.secondary_label||(t?"":"返回登录"),u.value=e?.secondary_url||(t?"":"/login"),c.value=e?.redirect_url||(t?"/login":""),n.value=Number(e?.redirect_seconds||(t?5:0))||0}const A=I(()=>!!(r.value&&u.value)),b=I(()=>!!(c.value&&n.value>0));async function g(e){if(e){if(e.startsWith("http://")||e.startsWith("https://")){window.location.href=e;return}await x.push(e)}}function P(){b.value&&(a=window.setInterval(()=>{n.value-=1,n.value<=0&&(window.clearInterval(a),a=null,window.location.href=c.value)},1e3))}return E(()=>{const e=C();N(e),P()}),R(()=>{a&&window.clearInterval(a)}),(e,t)=>{const h=d("el-button"),V=d("el-result"),L=d("el-card");return _(),k("div",j,[i(L,{shadow:"never",class:"auth-card","body-style":{padding:"22px"}},{default:s(()=>[t[2]||(t[2]=l("div",{class:"brand"},[l("div",{class:"brand-title"},"知识管理平台"),l("div",{class:"brand-sub app-muted"},"验证结果")],-1)),i(V,{icon:p.value?"success":"error",title:f.value,"sub-title":m.value,class:"result"},{extra:s(()=>[l("div",z,[i(h,{type:"primary",onClick:t[0]||(t[0]=S=>g(y.value))},{default:s(()=>[T(v(w.value),1)]),_:1}),A.value?(_(),$(h,{key:0,onClick:t[1]||(t[1]=S=>g(u.value))},{default:s(()=>[T(v(r.value),1)]),_:1})):B("",!0)]),b.value?(_(),k("div",D,v(n.value)+" 秒后自动跳转... ",1)):B("",!0)]),_:1},8,["icon","title","sub-title"])]),_:1})])}}},G=U(M,[["__scopeId","data-v-1fc6b081"]]);export{G as default}; +import{_ as U,a as o,c as I,o as E,m as R,b as k,d as i,w as s,e as d,u as W,f as _,g as l,i as B,h as $,k as T,t as v}from"./index-FDI649KN.js";const j={class:"auth-wrap"},z={class:"actions"},D={key:0,class:"countdown app-muted"},M={__name:"VerifyResultPage",setup(q){const x=W(),p=o(!1),f=o(""),m=o(""),w=o(""),y=o(""),r=o(""),u=o(""),c=o(""),n=o(0);let a=null;function C(){if(typeof window>"u")return null;const e=window.__APP_INITIAL_STATE__;return!e||typeof e!="object"?null:(window.__APP_INITIAL_STATE__=null,e)}function N(e){const t=!!e?.success;p.value=t,f.value=e?.title||(t?"验证成功":"验证失败"),m.value=e?.message||e?.error_message||(t?"操作已完成,现在可以继续使用系统。":"操作失败,请稍后重试。"),w.value=e?.primary_label||(t?"立即登录":"重新注册"),y.value=e?.primary_url||(t?"/login":"/register"),r.value=e?.secondary_label||(t?"":"返回登录"),u.value=e?.secondary_url||(t?"":"/login"),c.value=e?.redirect_url||(t?"/login":""),n.value=Number(e?.redirect_seconds||(t?5:0))||0}const A=I(()=>!!(r.value&&u.value)),b=I(()=>!!(c.value&&n.value>0));async function g(e){if(e){if(e.startsWith("http://")||e.startsWith("https://")){window.location.href=e;return}await x.push(e)}}function P(){b.value&&(a=window.setInterval(()=>{n.value-=1,n.value<=0&&(window.clearInterval(a),a=null,window.location.href=c.value)},1e3))}return E(()=>{const e=C();N(e),P()}),R(()=>{a&&window.clearInterval(a)}),(e,t)=>{const h=d("el-button"),V=d("el-result"),L=d("el-card");return _(),k("div",j,[i(L,{shadow:"never",class:"auth-card","body-style":{padding:"22px"}},{default:s(()=>[t[2]||(t[2]=l("div",{class:"brand"},[l("div",{class:"brand-title"},"知识管理平台"),l("div",{class:"brand-sub app-muted"},"验证结果")],-1)),i(V,{icon:p.value?"success":"error",title:f.value,"sub-title":m.value,class:"result"},{extra:s(()=>[l("div",z,[i(h,{type:"primary",onClick:t[0]||(t[0]=S=>g(y.value))},{default:s(()=>[T(v(w.value),1)]),_:1}),A.value?(_(),$(h,{key:0,onClick:t[1]||(t[1]=S=>g(u.value))},{default:s(()=>[T(v(r.value),1)]),_:1})):B("",!0)]),b.value?(_(),k("div",D,v(n.value)+" 秒后自动跳转... ",1)):B("",!0)]),_:1},8,["icon","title","sub-title"])]),_:1})])}}},G=U(M,[["__scopeId","data-v-1fc6b081"]]);export{G as default}; diff --git a/static/app/assets/accounts-dF_rn7Mz.js b/static/app/assets/accounts-D_1tBhb9.js similarity index 93% rename from static/app/assets/accounts-dF_rn7Mz.js rename to static/app/assets/accounts-D_1tBhb9.js index 22d3129..c0e89fd 100644 --- a/static/app/assets/accounts-dF_rn7Mz.js +++ b/static/app/assets/accounts-D_1tBhb9.js @@ -1 +1 @@ -import{p as c}from"./index-CoUFrT_1.js";async function o(t={}){const{data:a}=await c.get("/accounts",{params:t});return a}async function u(t){const{data:a}=await c.post("/accounts",t);return a}async function r(t,a){const{data:n}=await c.put(`/accounts/${t}`,a);return n}async function e(t){const{data:a}=await c.delete(`/accounts/${t}`);return a}async function i(t,a){const{data:n}=await c.put(`/accounts/${t}/remark`,a);return n}async function p(t,a){const{data:n}=await c.post(`/accounts/${t}/start`,a);return n}async function d(t){const{data:a}=await c.post(`/accounts/${t}/stop`,{});return a}async function f(t){const{data:a}=await c.post("/accounts/batch/start",t);return a}async function w(t){const{data:a}=await c.post("/accounts/batch/stop",t);return a}async function y(){const{data:t}=await c.post("/accounts/clear",{});return t}async function A(t,a={}){const{data:n}=await c.post(`/accounts/${t}/screenshot`,a);return n}export{w as a,f as b,y as c,d,e,o as f,u as g,i as h,p as s,A as t,r as u}; +import{p as c}from"./index-FDI649KN.js";async function o(t={}){const{data:a}=await c.get("/accounts",{params:t});return a}async function u(t){const{data:a}=await c.post("/accounts",t);return a}async function r(t,a){const{data:n}=await c.put(`/accounts/${t}`,a);return n}async function e(t){const{data:a}=await c.delete(`/accounts/${t}`);return a}async function i(t,a){const{data:n}=await c.put(`/accounts/${t}/remark`,a);return n}async function p(t,a){const{data:n}=await c.post(`/accounts/${t}/start`,a);return n}async function d(t){const{data:a}=await c.post(`/accounts/${t}/stop`,{});return a}async function f(t){const{data:a}=await c.post("/accounts/batch/start",t);return a}async function w(t){const{data:a}=await c.post("/accounts/batch/stop",t);return a}async function y(){const{data:t}=await c.post("/accounts/clear",{});return t}async function A(t,a={}){const{data:n}=await c.post(`/accounts/${t}/screenshot`,a);return n}export{w as a,f as b,y as c,d,e,o as f,u as g,i as h,p as s,A as t,r as u}; diff --git a/static/app/assets/auth-V8kVmuRz.js b/static/app/assets/auth-CAHM3CPl.js similarity index 91% rename from static/app/assets/auth-V8kVmuRz.js rename to static/app/assets/auth-CAHM3CPl.js index 7b05fd2..ae175c7 100644 --- a/static/app/assets/auth-V8kVmuRz.js +++ b/static/app/assets/auth-CAHM3CPl.js @@ -1 +1 @@ -import{p as s}from"./index-CoUFrT_1.js";async function r(){const{data:t}=await s.get("/email/verify-status");return t}async function e(){const{data:t}=await s.post("/generate_captcha",{});return t}async function o(t){const{data:a}=await s.post("/login",t);return a}async function i(t){const{data:a}=await s.post("/register",t);return a}async function c(t){const{data:a}=await s.post("/resend-verify-email",t);return a}async function u(t){const{data:a}=await s.post("/forgot-password",t);return a}async function f(t){const{data:a}=await s.post("/reset_password_request",t);return a}async function d(t){const{data:a}=await s.post("/reset-password-confirm",t);return a}export{u as a,c as b,i as c,d,r as f,e as g,o as l,f as r}; +import{p as s}from"./index-FDI649KN.js";async function r(){const{data:t}=await s.get("/email/verify-status");return t}async function e(){const{data:t}=await s.post("/generate_captcha",{});return t}async function o(t){const{data:a}=await s.post("/login",t);return a}async function i(t){const{data:a}=await s.post("/register",t);return a}async function c(t){const{data:a}=await s.post("/resend-verify-email",t);return a}async function u(t){const{data:a}=await s.post("/forgot-password",t);return a}async function f(t){const{data:a}=await s.post("/reset_password_request",t);return a}async function d(t){const{data:a}=await s.post("/reset-password-confirm",t);return a}export{u as a,c as b,i as c,d,r as f,e as g,o as l,f as r}; diff --git a/static/app/assets/index-CoUFrT_1.js b/static/app/assets/index-FDI649KN.js similarity index 99% rename from static/app/assets/index-CoUFrT_1.js rename to static/app/assets/index-FDI649KN.js index 07e9163..33b1ea9 100644 --- a/static/app/assets/index-CoUFrT_1.js +++ b/static/app/assets/index-FDI649KN.js @@ -1,4 +1,4 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./LoginPage-BT64PXO4.js","./auth-V8kVmuRz.js","./password-7ryi82gE.js","./LoginPage-8DI6Rf67.css","./RegisterPage-DagmGD8v.js","./RegisterPage-yylt2w7b.css","./ResetPasswordPage-nfu9MGKT.js","./ResetPasswordPage-DybfLMAw.css","./VerifyResultPage-BObYrtVV.js","./VerifyResultPage-CG6ZYNrm.css","./AccountsPage-BWpR5_67.js","./accounts-dF_rn7Mz.js","./AccountsPage-D4cYQ_l7.css","./SchedulesPage-DkN2oNFy.js","./SchedulesPage-D6kCAA1y.css","./ScreenshotsPage-DPHTVdqF.js","./ScreenshotsPage-DgLR6Xlu.css"])))=>i.map(i=>d[i]); +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./LoginPage-aGh2PQkO.js","./auth-CAHM3CPl.js","./password-7ryi82gE.js","./LoginPage-8DI6Rf67.css","./RegisterPage-Cfctkogt.js","./RegisterPage-yylt2w7b.css","./ResetPasswordPage-B37m0WGk.js","./ResetPasswordPage-DybfLMAw.css","./VerifyResultPage-3EKG3rSu.js","./VerifyResultPage-CG6ZYNrm.css","./AccountsPage-UPsxd2hl.js","./accounts-D_1tBhb9.js","./AccountsPage-DWp69s0t.css","./SchedulesPage-BHh5odxx.js","./SchedulesPage-D6kCAA1y.css","./ScreenshotsPage-CF9cDOW6.js","./ScreenshotsPage-DgLR6Xlu.css"])))=>i.map(i=>d[i]); (function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))o(a);new MutationObserver(a=>{for(const l of a)if(l.type==="childList")for(const r of l.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&o(r)}).observe(document,{childList:!0,subtree:!0});function n(a){const l={};return a.integrity&&(l.integrity=a.integrity),a.referrerPolicy&&(l.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?l.credentials="include":a.crossOrigin==="anonymous"?l.credentials="omit":l.credentials="same-origin",l}function o(a){if(a.ep)return;a.ep=!0;const l=n(a);fetch(a.href,l)}})();function sh(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const on={},qr=[],Mt=()=>{},Jw=()=>!1,Nd=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),ih=e=>e.startsWith("onUpdate:"),On=Object.assign,uh=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},NT=Object.prototype.hasOwnProperty,Rt=(e,t)=>NT.call(e,t),Se=Array.isArray,Yr=e=>nu(e)==="[object Map]",Rd=e=>nu(e)==="[object Set]",Pl=e=>nu(e)==="[object Date]",qe=e=>typeof e=="function",ze=e=>typeof e=="string",Uo=e=>typeof e=="symbol",it=e=>e!==null&&typeof e=="object",pr=e=>(it(e)||qe(e))&&qe(e.then)&&qe(e.catch),Zw=Object.prototype.toString,nu=e=>Zw.call(e),RT=e=>nu(e).slice(8,-1),Si=e=>nu(e)==="[object Object]",xd=e=>ze(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,ai=sh(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Id=e=>{const t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},xT=/-\w/g,oo=Id(e=>e.replace(xT,t=>t.slice(1).toUpperCase())),IT=/\B([A-Z])/g,ol=Id(e=>e.replace(IT,"-$1").toLowerCase()),ou=Id(e=>e.charAt(0).toUpperCase()+e.slice(1)),li=Id(e=>e?`on${ou(e)}`:""),xl=(e,t)=>!Object.is(e,t),cc=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:o,value:n})},ch=e=>{const t=parseFloat(e);return isNaN(t)?e:t},PT=e=>{const t=ze(e)?Number(e):NaN;return isNaN(t)?e:t};let _g;const Pd=()=>_g||(_g=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Ye(e){if(Se(e)){const t={};for(let n=0;n{if(n){const o=n.split(AT);o.length>1&&(t[o[0].trim()]=o[1].trim())}}),t}function I(e){let t="";if(ze(e))t=e;else if(Se(e))for(let n=0;nas(n,t))}const n1=e=>!!(e&&e.__v_isRef===!0),Ce=e=>ze(e)?e:e==null?"":Se(e)||it(e)&&(e.toString===Zw||!qe(e.toString))?n1(e)?Ce(e.value):JSON.stringify(e,o1,2):String(e),o1=(e,t)=>n1(t)?o1(e,t.value):Yr(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[o,a],l)=>(n[Bf(o,l)+" =>"]=a,n),{})}:Rd(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>Bf(n))}:Uo(t)?Bf(t):it(t)&&!Se(t)&&!Si(t)?String(t):t,Bf=(e,t="")=>{var n;return Uo(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};let zn;class a1{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=zn,!t&&zn&&(this.index=(zn.scopes||(zn.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;t0&&--this._on===0&&(zn=this.prevScope,this.prevScope=void 0)}stop(t){if(this._active){this._active=!1;let n,o;for(n=0,o=this.effects.length;n0)return;if(si){let t=si;for(si=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;ri;){let t=ri;for(ri=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(o){e||(e=o)}t=n}}if(e)throw e}function i1(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function u1(e){let t,n=e.depsTail,o=n;for(;o;){const a=o.prevDep;o.version===-1?(o===n&&(n=a),mh(o),zT(o)):t=o,o.dep.activeLink=o.prevActiveLink,o.prevActiveLink=void 0,o=a}e.deps=t,e.depsTail=n}function Ip(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(c1(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function c1(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===ki)||(e.globalVersion=ki,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Ip(e))))return;e.flags|=2;const t=e.dep,n=rn,o=Ho;rn=e,Ho=!0;try{i1(e);const a=e.fn(e._value);(t.version===0||xl(a,e._value))&&(e.flags|=128,e._value=a,t.version++)}catch(a){throw t.version++,a}finally{rn=n,Ho=o,u1(e),e.flags&=-3}}function mh(e,t=!1){const{dep:n,prevSub:o,nextSub:a}=e;if(o&&(o.nextSub=a,e.prevSub=void 0),a&&(a.prevSub=o,e.nextSub=void 0),n.subs===e&&(n.subs=o,!o&&n.computed)){n.computed.flags&=-5;for(let l=n.computed.deps;l;l=l.nextDep)mh(l,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function zT(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Ho=!0;const d1=[];function qa(){d1.push(Ho),Ho=!1}function Ya(){const e=d1.pop();Ho=e===void 0?!0:e}function Tg(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=rn;rn=void 0;try{t()}finally{rn=n}}}let ki=0,HT=class{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 Md{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(!rn||!Ho||rn===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==rn)n=this.activeLink=new HT(rn,this),rn.deps?(n.prevDep=rn.depsTail,rn.depsTail.nextDep=n,rn.depsTail=n):rn.deps=rn.depsTail=n,f1(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const o=n.nextDep;o.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=o),n.prevDep=rn.depsTail,n.nextDep=void 0,rn.depsTail.nextDep=n,rn.depsTail=n,rn.deps===n&&(rn.deps=o)}return n}trigger(t){this.version++,ki++,this.notify(t)}notify(t){vh();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{hh()}}}function f1(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let o=t.deps;o;o=o.nextDep)f1(o)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const Kc=new WeakMap,sr=Symbol(""),Pp=Symbol(""),Ei=Symbol("");function Kn(e,t,n){if(Ho&&rn){let o=Kc.get(e);o||Kc.set(e,o=new Map);let a=o.get(n);a||(o.set(n,a=new Md),a.map=o,a.key=n),a.track()}}function Fa(e,t,n,o,a,l){const r=Kc.get(e);if(!r){ki++;return}const i=u=>{u&&u.trigger()};if(vh(),t==="clear")r.forEach(i);else{const u=Se(e),c=u&&xd(n);if(u&&n==="length"){const d=Number(o);r.forEach((f,v)=>{(v==="length"||v===Ei||!Uo(v)&&v>=d)&&i(f)})}else switch((n!==void 0||r.has(void 0))&&i(r.get(n)),c&&i(r.get(Ei)),t){case"add":u?c&&i(r.get("length")):(i(r.get(sr)),Yr(e)&&i(r.get(Pp)));break;case"delete":u||(i(r.get(sr)),Yr(e)&&i(r.get(Pp)));break;case"set":Yr(e)&&i(r.get(sr));break}}hh()}function KT(e,t){const n=Kc.get(e);return n&&n.get(t)}function xr(e){const t=Kt(e);return t===e?t:(Kn(t,"iterate",Ei),ko(e)?t:t.map(qo))}function Ad(e){return Kn(e=Kt(e),"iterate",Ei),e}function wl(e,t){return Ga(e)?Ka(e)?ls(qo(t)):ls(t):qo(t)}const WT={__proto__:null,[Symbol.iterator](){return Vf(this,Symbol.iterator,e=>wl(this,e))},concat(...e){return xr(this).concat(...e.map(t=>Se(t)?xr(t):t))},entries(){return Vf(this,"entries",e=>(e[1]=wl(this,e[1]),e))},every(e,t){return Pa(this,"every",e,t,void 0,arguments)},filter(e,t){return Pa(this,"filter",e,t,n=>n.map(o=>wl(this,o)),arguments)},find(e,t){return Pa(this,"find",e,t,n=>wl(this,n),arguments)},findIndex(e,t){return Pa(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Pa(this,"findLast",e,t,n=>wl(this,n),arguments)},findLastIndex(e,t){return Pa(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Pa(this,"forEach",e,t,void 0,arguments)},includes(...e){return zf(this,"includes",e)},indexOf(...e){return zf(this,"indexOf",e)},join(e){return xr(this).join(e)},lastIndexOf(...e){return zf(this,"lastIndexOf",e)},map(e,t){return Pa(this,"map",e,t,void 0,arguments)},pop(){return Hs(this,"pop")},push(...e){return Hs(this,"push",e)},reduce(e,...t){return Og(this,"reduce",e,t)},reduceRight(e,...t){return Og(this,"reduceRight",e,t)},shift(){return Hs(this,"shift")},some(e,t){return Pa(this,"some",e,t,void 0,arguments)},splice(...e){return Hs(this,"splice",e)},toReversed(){return xr(this).toReversed()},toSorted(e){return xr(this).toSorted(e)},toSpliced(...e){return xr(this).toSpliced(...e)},unshift(...e){return Hs(this,"unshift",e)},values(){return Vf(this,"values",e=>wl(this,e))}};function Vf(e,t,n){const o=Ad(e),a=o[t]();return o!==e&&!ko(e)&&(a._next=a.next,a.next=()=>{const l=a._next();return l.done||(l.value=n(l.value)),l}),a}const jT=Array.prototype;function Pa(e,t,n,o,a,l){const r=Ad(e),i=r!==e&&!ko(e),u=r[t];if(u!==jT[t]){const f=u.apply(e,l);return i?qo(f):f}let c=n;r!==e&&(i?c=function(f,v){return n.call(this,wl(e,f),v,e)}:n.length>2&&(c=function(f,v){return n.call(this,f,v,e)}));const d=u.call(r,c,o);return i&&a?a(d):d}function Og(e,t,n,o){const a=Ad(e);let l=n;return a!==e&&(ko(e)?n.length>3&&(l=function(r,i,u){return n.call(this,r,i,u,e)}):l=function(r,i,u){return n.call(this,r,wl(e,i),u,e)}),a[t](l,...o)}function zf(e,t,n){const o=Kt(e);Kn(o,"iterate",Ei);const a=o[t](...n);return(a===-1||a===!1)&&Dd(n[0])?(n[0]=Kt(n[0]),o[t](...n)):a}function Hs(e,t,n=[]){qa(),vh();const o=Kt(e)[t].apply(e,n);return hh(),Ya(),o}const UT=sh("__proto__,__v_isRef,__isVue"),p1=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Uo));function qT(e){Uo(e)||(e=String(e));const t=Kt(this);return Kn(t,"has",e),t.hasOwnProperty(e)}class v1{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,o){if(n==="__v_skip")return t.__v_skip;const a=this._isReadonly,l=this._isShallow;if(n==="__v_isReactive")return!a;if(n==="__v_isReadonly")return a;if(n==="__v_isShallow")return l;if(n==="__v_raw")return o===(a?l?oO:b1:l?g1:m1).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(o)?t:void 0;const r=Se(t);if(!a){let u;if(r&&(u=WT[n]))return u;if(n==="hasOwnProperty")return qT}const i=Reflect.get(t,n,Ht(t)?t:o);if((Uo(n)?p1.has(n):UT(n))||(a||Kn(t,"get",n),l))return i;if(Ht(i)){const u=r&&xd(n)?i:i.value;return a&&it(u)?vr(u):u}return it(i)?a?vr(i):Ot(i):i}}class h1 extends v1{constructor(t=!1){super(!1,t)}set(t,n,o,a){let l=t[n];const r=Se(t)&&xd(n);if(!this._isShallow){const c=Ga(l);if(!ko(o)&&!Ga(o)&&(l=Kt(l),o=Kt(o)),!r&&Ht(l)&&!Ht(o))return c||(l.value=o),!0}const i=r?Number(n)e,Fu=e=>Reflect.getPrototypeOf(e);function ZT(e,t,n){return function(...o){const a=this.__v_raw,l=Kt(a),r=Yr(l),i=e==="entries"||e===Symbol.iterator&&r,u=e==="keys"&&r,c=a[e](...o),d=n?Mp:t?ls:qo;return!t&&Kn(l,"iterate",u?Pp:sr),{next(){const{value:f,done:v}=c.next();return v?{value:f,done:v}:{value:i?[d(f[0]),d(f[1])]:d(f),done:v}},[Symbol.iterator](){return this}}}}function Vu(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function QT(e,t){const n={get(a){const l=this.__v_raw,r=Kt(l),i=Kt(a);e||(xl(a,i)&&Kn(r,"get",a),Kn(r,"get",i));const{has:u}=Fu(r),c=t?Mp:e?ls:qo;if(u.call(r,a))return c(l.get(a));if(u.call(r,i))return c(l.get(i));l!==r&&l.get(a)},get size(){const a=this.__v_raw;return!e&&Kn(Kt(a),"iterate",sr),a.size},has(a){const l=this.__v_raw,r=Kt(l),i=Kt(a);return e||(xl(a,i)&&Kn(r,"has",a),Kn(r,"has",i)),a===i?l.has(a):l.has(a)||l.has(i)},forEach(a,l){const r=this,i=r.__v_raw,u=Kt(i),c=t?Mp:e?ls:qo;return!e&&Kn(u,"iterate",sr),i.forEach((d,f)=>a.call(l,c(d),c(f),r))}};return On(n,e?{add:Vu("add"),set:Vu("set"),delete:Vu("delete"),clear:Vu("clear")}:{add(a){!t&&!ko(a)&&!Ga(a)&&(a=Kt(a));const l=Kt(this);return Fu(l).has.call(l,a)||(l.add(a),Fa(l,"add",a,a)),this},set(a,l){!t&&!ko(l)&&!Ga(l)&&(l=Kt(l));const r=Kt(this),{has:i,get:u}=Fu(r);let c=i.call(r,a);c||(a=Kt(a),c=i.call(r,a));const d=u.call(r,a);return r.set(a,l),c?xl(l,d)&&Fa(r,"set",a,l):Fa(r,"add",a,l),this},delete(a){const l=Kt(this),{has:r,get:i}=Fu(l);let u=r.call(l,a);u||(a=Kt(a),u=r.call(l,a)),i&&i.call(l,a);const c=l.delete(a);return u&&Fa(l,"delete",a,void 0),c},clear(){const a=Kt(this),l=a.size!==0,r=a.clear();return l&&Fa(a,"clear",void 0,void 0),r}}),["keys","values","entries",Symbol.iterator].forEach(a=>{n[a]=ZT(a,e,t)}),n}function gh(e,t){const n=QT(e,t);return(o,a,l)=>a==="__v_isReactive"?!e:a==="__v_isReadonly"?e:a==="__v_raw"?o:Reflect.get(Rt(n,a)&&a in o?n:o,a,l)}const eO={get:gh(!1,!1)},tO={get:gh(!1,!0)},nO={get:gh(!0,!1)};const m1=new WeakMap,g1=new WeakMap,b1=new WeakMap,oO=new WeakMap;function aO(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function lO(e){return e.__v_skip||!Object.isExtensible(e)?0:aO(RT(e))}function Ot(e){return Ga(e)?e:bh(e,!1,GT,eO,m1)}function Ld(e){return bh(e,!1,JT,tO,g1)}function vr(e){return bh(e,!0,XT,nO,b1)}function bh(e,t,n,o,a){if(!it(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const l=lO(e);if(l===0)return e;const r=a.get(e);if(r)return r;const i=new Proxy(e,l===2?o:n);return a.set(e,i),i}function Ka(e){return Ga(e)?Ka(e.__v_raw):!!(e&&e.__v_isReactive)}function Ga(e){return!!(e&&e.__v_isReadonly)}function ko(e){return!!(e&&e.__v_isShallow)}function Dd(e){return e?!!e.__v_raw:!1}function Kt(e){const t=e&&e.__v_raw;return t?Kt(t):e}function Ko(e){return!Rt(e,"__v_skip")&&Object.isExtensible(e)&&Qw(e,"__v_skip",!0),e}const qo=e=>it(e)?Ot(e):e,ls=e=>it(e)?vr(e):e;function Ht(e){return e?e.__v_isRef===!0:!1}function A(e){return y1(e,!1)}function jt(e){return y1(e,!0)}function y1(e,t){return Ht(e)?e:new rO(e,t)}class rO{constructor(t,n){this.dep=new Md,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:Kt(t),this._value=n?t:qo(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,o=this.__v_isShallow||ko(t)||Ga(t);t=o?t:Kt(t),xl(t,n)&&(this._rawValue=t,this._value=o?t:qo(t),this.dep.trigger())}}function dc(e){e.dep&&e.dep.trigger()}function s(e){return Ht(e)?e.value:e}const sO={get:(e,t,n)=>t==="__v_raw"?e:s(Reflect.get(e,t,n)),set:(e,t,n,o)=>{const a=e[t];return Ht(a)&&!Ht(n)?(a.value=n,!0):Reflect.set(e,t,n,o)}};function w1(e){return Ka(e)?e:new Proxy(e,sO)}class iO{constructor(t){this.__v_isRef=!0,this._value=void 0;const n=this.dep=new Md,{get:o,set:a}=t(n.track.bind(n),n.trigger.bind(n));this._get=o,this._set=a}get value(){return this._value=this._get()}set value(t){this._set(t)}}function uO(e){return new iO(e)}function yn(e){const t=Se(e)?new Array(e.length):{};for(const n in e)t[n]=C1(e,n);return t}class cO{constructor(t,n,o){this._object=t,this._key=n,this._defaultValue=o,this.__v_isRef=!0,this._value=void 0,this._raw=Kt(t);let a=!0,l=t;if(!Se(t)||!xd(String(n)))do a=!Dd(l)||ko(l);while(a&&(l=l.__v_raw));this._shallow=a}get value(){let t=this._object[this._key];return this._shallow&&(t=s(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&Ht(this._raw[this._key])){const n=this._object[this._key];if(Ht(n)){n.value=t;return}}this._object[this._key]=t}get dep(){return KT(this._raw,this._key)}}class dO{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function Dt(e,t,n){return Ht(e)?e:qe(e)?new dO(e):it(e)&&arguments.length>1?C1(e,t,n):A(e)}function C1(e,t,n){return new cO(e,t,n)}class fO{constructor(t,n,o){this.fn=t,this.setter=n,this._value=void 0,this.dep=new Md(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=ki-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=o}notify(){if(this.flags|=16,!(this.flags&8)&&rn!==this)return s1(this,!0),!0}get value(){const t=this.dep.track();return c1(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function pO(e,t,n=!1){let o,a;return qe(e)?o=e:(o=e.get,a=e.set),new fO(o,a,n)}const zu={},Wc=new WeakMap;let Yl;function vO(e,t=!1,n=Yl){if(n){let o=Wc.get(n);o||Wc.set(n,o=[]),o.push(e)}}function hO(e,t,n=on){const{immediate:o,deep:a,once:l,scheduler:r,augmentJob:i,call:u}=n,c=y=>a?y:ko(y)||a===!1||a===0?Va(y,1):Va(y);let d,f,v,p,m=!1,h=!1;if(Ht(e)?(f=()=>e.value,m=ko(e)):Ka(e)?(f=()=>c(e),m=!0):Se(e)?(h=!0,m=e.some(y=>Ka(y)||ko(y)),f=()=>e.map(y=>{if(Ht(y))return y.value;if(Ka(y))return c(y);if(qe(y))return u?u(y,2):y()})):qe(e)?t?f=u?()=>u(e,2):e:f=()=>{if(v){qa();try{v()}finally{Ya()}}const y=Yl;Yl=d;try{return u?u(e,3,[p]):e(p)}finally{Yl=y}}:f=Mt,t&&a){const y=f,k=a===!0?1/0:a;f=()=>Va(y(),k)}const g=fh(),b=()=>{d.stop(),g&&g.active&&uh(g.effects,d)};if(l&&t){const y=t;t=(...k)=>{y(...k),b()}}let C=h?new Array(e.length).fill(zu):zu;const w=y=>{if(!(!(d.flags&1)||!d.dirty&&!y))if(t){const k=d.run();if(a||m||(h?k.some((E,T)=>xl(E,C[T])):xl(k,C))){v&&v();const E=Yl;Yl=d;try{const T=[k,C===zu?void 0:h&&C[0]===zu?[]:C,p];C=k,u?u(t,3,T):t(...T)}finally{Yl=E}}}else d.run()};return i&&i(w),d=new l1(f),d.scheduler=r?()=>r(w,!1):w,p=y=>vO(y,!1,d),v=d.onStop=()=>{const y=Wc.get(d);if(y){if(u)u(y,4);else for(const k of y)k();Wc.delete(d)}},t?o?w(!0):C=d.run():r?r(w.bind(null,!0),!0):d.run(),b.pause=d.pause.bind(d),b.resume=d.resume.bind(d),b.stop=b,b}function Va(e,t=1/0,n){if(t<=0||!it(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,Ht(e))Va(e.value,t,n);else if(Se(e))for(let o=0;o{Va(o,t,n)});else if(Si(e)){for(const o in e)Va(e[o],t,n);for(const o of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,o)&&Va(e[o],t,n)}return e}function au(e,t,n,o){try{return o?e(...o):e()}catch(a){Bd(a,t,n)}}function Yo(e,t,n,o){if(qe(e)){const a=au(e,t,n,o);return a&&pr(a)&&a.catch(l=>{Bd(l,t,n)}),a}if(Se(e)){const a=[];for(let l=0;l>>1,a=to[o],l=_i(a);l=_i(n)?to.push(e):to.splice(gO(t),0,e),e.flags|=1,k1()}}function k1(){jc||(jc=S1.then(_1))}function bO(e){Se(e)?Gr.push(...e):Cl&&e.id===-1?Cl.splice(Fr+1,0,e):e.flags&1||(Gr.push(e),e.flags|=1),k1()}function $g(e,t,n=da+1){for(;n_i(n)-_i(o));if(Gr.length=0,Cl){Cl.push(...t);return}for(Cl=t,Fr=0;Fre.id==null?e.flags&2?-1:1/0:e.id;function _1(e){try{for(da=0;da{o._d&&Gc(-1);const l=Uc(t);let r;try{r=e(...a)}finally{Uc(l),o._d&&Gc(1)}return r};return o._n=!0,o._c=!0,o._d=!0,o}function dt(e,t){if(Ln===null)return e;const n=jd(Ln),o=e.dirs||(e.dirs=[]);for(let a=0;ae.__isTeleport,ii=e=>e&&(e.disabled||e.disabled===""),Ng=e=>e&&(e.defer||e.defer===""),Rg=e=>typeof SVGElement<"u"&&e instanceof SVGElement,xg=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Ap=(e,t)=>{const n=e&&e.to;return ze(n)?t?t(n):null:n},N1={name:"Teleport",__isTeleport:!0,process(e,t,n,o,a,l,r,i,u,c){const{mc:d,pc:f,pbc:v,o:{insert:p,querySelector:m,createText:h,createComment:g}}=c,b=ii(t.props);let{shapeFlag:C,children:w,dynamicChildren:y}=t;if(e==null){const k=t.el=h(""),E=t.anchor=h("");p(k,n,o),p(E,n,o);const T=($,M)=>{C&16&&d(w,$,M,a,l,r,i,u)},x=()=>{const $=t.target=Ap(t.props,m),M=R1($,t,h,p);$&&(r!=="svg"&&Rg($)?r="svg":r!=="mathml"&&xg($)&&(r="mathml"),a&&a.isCE&&(a.ce._teleportTargets||(a.ce._teleportTargets=new Set)).add($),b||(T($,M),fc(t,!1)))};b&&(T(n,E),fc(t,!0)),Ng(t.props)?(t.el.__isMounted=!1,Qn(()=>{x(),delete t.el.__isMounted},l)):x()}else{if(Ng(t.props)&&e.el.__isMounted===!1){Qn(()=>{N1.process(e,t,n,o,a,l,r,i,u,c)},l);return}t.el=e.el,t.targetStart=e.targetStart;const k=t.anchor=e.anchor,E=t.target=e.target,T=t.targetAnchor=e.targetAnchor,x=ii(e.props),$=x?n:E,M=x?k:T;if(r==="svg"||Rg(E)?r="svg":(r==="mathml"||xg(E))&&(r="mathml"),y?(v(e.dynamicChildren,y,$,a,l,r,i),Oh(e,t,!0)):u||f(e,t,$,M,a,l,r,i,!1),b)x?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Hu(t,n,k,c,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const O=t.target=Ap(t.props,m);O&&Hu(t,O,null,c,0)}else x&&Hu(t,E,T,c,1);fc(t,b)}},remove(e,t,n,{um:o,o:{remove:a}},l){const{shapeFlag:r,children:i,anchor:u,targetStart:c,targetAnchor:d,target:f,props:v}=e;if(f&&(a(c),a(d)),l&&a(u),r&16){const p=l||!ii(v);for(let m=0;m{e.isMounted=!0}),Pt(()=>{e.isUnmounting=!0}),e}const No=[Function,Array],I1={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:No,onEnter:No,onAfterEnter:No,onEnterCancelled:No,onBeforeLeave:No,onLeave:No,onAfterLeave:No,onLeaveCancelled:No,onBeforeAppear:No,onAppear:No,onAfterAppear:No,onAppearCancelled:No},P1=e=>{const t=e.subTree;return t.component?P1(t.component):t},CO={name:"BaseTransition",props:I1,setup(e,{slots:t}){const n=vt(),o=x1();return()=>{const a=t.default&&wh(t.default(),!0);if(!a||!a.length)return;const l=M1(a),r=Kt(e),{mode:i}=r;if(o.isLeaving)return Hf(l);const u=Ig(l);if(!u)return Hf(l);let c=Ti(u,r,o,n,f=>c=f);u.type!==un&&hr(u,c);let d=n.subTree&&Ig(n.subTree);if(d&&d.type!==un&&!Xl(d,u)&&P1(n).type!==un){let f=Ti(d,r,o,n);if(hr(d,f),i==="out-in"&&u.type!==un)return o.isLeaving=!0,f.afterLeave=()=>{o.isLeaving=!1,n.job.flags&8||n.update(),delete f.afterLeave,d=void 0},Hf(l);i==="in-out"&&u.type!==un?f.delayLeave=(v,p,m)=>{const h=A1(o,d);h[String(d.key)]=d,v[Da]=()=>{p(),v[Da]=void 0,delete c.delayedLeave,d=void 0},c.delayedLeave=()=>{m(),delete c.delayedLeave,d=void 0}}:d=void 0}else d&&(d=void 0);return l}}};function M1(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==un){t=n;break}}return t}const SO=CO;function A1(e,t){const{leavingVNodes:n}=e;let o=n.get(t.type);return o||(o=Object.create(null),n.set(t.type,o)),o}function Ti(e,t,n,o,a){const{appear:l,mode:r,persisted:i=!1,onBeforeEnter:u,onEnter:c,onAfterEnter:d,onEnterCancelled:f,onBeforeLeave:v,onLeave:p,onAfterLeave:m,onLeaveCancelled:h,onBeforeAppear:g,onAppear:b,onAfterAppear:C,onAppearCancelled:w}=t,y=String(e.key),k=A1(n,e),E=($,M)=>{$&&Yo($,o,9,M)},T=($,M)=>{const O=M[1];E($,M),Se($)?$.every(R=>R.length<=1)&&O():$.length<=1&&O()},x={mode:r,persisted:i,beforeEnter($){let M=u;if(!n.isMounted)if(l)M=g||u;else return;$[Da]&&$[Da](!0);const O=k[y];O&&Xl(e,O)&&O.el[Da]&&O.el[Da](),E(M,[$])},enter($){let M=c,O=d,R=f;if(!n.isMounted)if(l)M=b||c,O=C||d,R=w||f;else return;let H=!1;const q=$[Ku]=X=>{H||(H=!0,X?E(R,[$]):E(O,[$]),x.delayedLeave&&x.delayedLeave(),$[Ku]=void 0)};M?T(M,[$,q]):q()},leave($,M){const O=String(e.key);if($[Ku]&&$[Ku](!0),n.isUnmounting)return M();E(v,[$]);let R=!1;const H=$[Da]=q=>{R||(R=!0,M(),q?E(h,[$]):E(m,[$]),$[Da]=void 0,k[O]===e&&delete k[O])};k[O]=e,p?T(p,[$,H]):H()},clone($){const M=Ti($,t,n,o,a);return a&&a(M),M}};return x}function Hf(e){if(Fd(e))return e=Xa(e),e.children=null,e}function Ig(e){if(!Fd(e))return $1(e.type)&&e.children?M1(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&qe(n.default))return n.default()}}function hr(e,t){e.shapeFlag&6&&e.component?(e.transition=t,hr(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 wh(e,t=!1,n){let o=[],a=0;for(let l=0;l1)for(let l=0;lui(m,t&&(Se(t)?t[h]:t),n,o,a));return}if(Xr(o)&&!a){o.shapeFlag&512&&o.type.__asyncResolved&&o.component.subTree.component&&ui(e,t,n,o.component.subTree);return}const l=o.shapeFlag&4?jd(o.component):o.el,r=a?null:l,{i,r:u}=e,c=t&&t.r,d=i.refs===on?i.refs={}:i.refs,f=i.setupState,v=Kt(f),p=f===on?Jw:m=>Rt(v,m);if(c!=null&&c!==u){if(Pg(t),ze(c))d[c]=null,p(c)&&(f[c]=null);else if(Ht(c)){c.value=null;const m=t;m.k&&(d[m.k]=null)}}if(qe(u))au(u,i,12,[r,d]);else{const m=ze(u),h=Ht(u);if(m||h){const g=()=>{if(e.f){const b=m?p(u)?f[u]:d[u]:u.value;if(a)Se(b)&&uh(b,l);else if(Se(b))b.includes(l)||b.push(l);else if(m)d[u]=[l],p(u)&&(f[u]=d[u]);else{const C=[l];u.value=C,e.k&&(d[e.k]=C)}}else m?(d[u]=r,p(u)&&(f[u]=r)):h&&(u.value=r,e.k&&(d[e.k]=r))};if(r){const b=()=>{g(),qc.delete(e)};b.id=-1,qc.set(e,b),Qn(b,n)}else Pg(e),g()}}}function Pg(e){const t=qc.get(e);t&&(t.flags|=8,qc.delete(e))}Pd().requestIdleCallback;Pd().cancelIdleCallback;const Xr=e=>!!e.type.__asyncLoader,Fd=e=>e.type.__isKeepAlive;function Vd(e,t){B1(e,"a",t)}function D1(e,t){B1(e,"da",t)}function B1(e,t,n=Wn){const o=e.__wdc||(e.__wdc=()=>{let a=n;for(;a;){if(a.isDeactivated)return;a=a.parent}return e()});if(zd(t,o,n),n){let a=n.parent;for(;a&&a.parent;)Fd(a.parent.vnode)&&kO(o,t,n,a),a=a.parent}}function kO(e,t,n,o){const a=zd(t,e,o,!0);Ts(()=>{uh(o[t],a)},n)}function zd(e,t,n=Wn,o=!1){if(n){const a=n[e]||(n[e]=[]),l=t.__weh||(t.__weh=(...r)=>{qa();const i=lu(n),u=Yo(t,n,e,r);return i(),Ya(),u});return o?a.unshift(l):a.push(l),l}}const al=e=>(t,n=Wn)=>{(!$i||e==="sp")&&zd(e,(...o)=>t(...o),n)},Hd=al("bm"),mt=al("m"),Ch=al("bu"),ta=al("u"),Pt=al("bum"),Ts=al("um"),EO=al("sp"),_O=al("rtg"),TO=al("rtc");function OO(e,t=Wn){zd("ec",e,t)}const Sh="components",$O="directives";function pt(e,t){return kh(Sh,e,!0,t)||e}const F1=Symbol.for("v-ndc");function ft(e){return ze(e)?kh(Sh,e,!1)||e:e||F1}function Kd(e){return kh($O,e)}function kh(e,t,n=!0,o=!1){const a=Ln||Wn;if(a){const l=a.type;if(e===Sh){const i=v$(l,!1);if(i&&(i===t||i===oo(t)||i===ou(oo(t))))return l}const r=Mg(a[e]||l[e],t)||Mg(a.appContext[e],t);return!r&&o?l:r}}function Mg(e,t){return e&&(e[t]||e[oo(t)]||e[ou(oo(t))])}function bt(e,t,n,o){let a;const l=n,r=Se(e);if(r||ze(e)){const i=r&&Ka(e);let u=!1,c=!1;i&&(u=!ko(e),c=Ga(e),e=Ad(e)),a=new Array(e.length);for(let d=0,f=e.length;dt(i,u,void 0,l));else{const i=Object.keys(e);a=new Array(i.length);for(let u=0,c=i.length;u{const l=o.fn(...a);return l&&(l.key=o.key),l}:o.fn)}return e}function re(e,t,n={},o,a){if(Ln.ce||Ln.parent&&Xr(Ln.parent)&&Ln.parent.ce){const c=Object.keys(n).length>0;return t!=="default"&&(n.name=t),_(),ie(He,null,[U("slot",n,o&&o())],c?-2:64)}let l=e[t];l&&l._c&&(l._d=!1),_();const r=l&&V1(l(n)),i=n.key||r&&r.key,u=ie(He,{key:(i&&!Uo(i)?i:`_${t}`)+(!r&&o?"_fb":"")},r||(o?o():[]),r&&e._===1?64:-2);return u.scopeId&&(u.slotScopeIds=[u.scopeId+"-s"]),l&&l._c&&(l._d=!0),u}function V1(e){return e.some(t=>Wt(t)?!(t.type===un||t.type===He&&!V1(t.children)):!0)?e:null}function NO(e,t){const n={};for(const o in e)n[li(o)]=e[o];return n}const Lp=e=>e?lC(e)?jd(e):Lp(e.parent):null,ci=On(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=>Lp(e.parent),$root:e=>Lp(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>K1(e),$forceUpdate:e=>e.f||(e.f=()=>{yh(e.update)}),$nextTick:e=>e.n||(e.n=Me.bind(e.proxy)),$watch:e=>zO.bind(e)}),Kf=(e,t)=>e!==on&&!e.__isScriptSetup&&Rt(e,t),RO={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:o,data:a,props:l,accessCache:r,type:i,appContext:u}=e;if(t[0]!=="$"){const v=r[t];if(v!==void 0)switch(v){case 1:return o[t];case 2:return a[t];case 4:return n[t];case 3:return l[t]}else{if(Kf(o,t))return r[t]=1,o[t];if(a!==on&&Rt(a,t))return r[t]=2,a[t];if(Rt(l,t))return r[t]=3,l[t];if(n!==on&&Rt(n,t))return r[t]=4,n[t];Dp&&(r[t]=0)}}const c=ci[t];let d,f;if(c)return t==="$attrs"&&Kn(e.attrs,"get",""),c(e);if((d=i.__cssModules)&&(d=d[t]))return d;if(n!==on&&Rt(n,t))return r[t]=4,n[t];if(f=u.config.globalProperties,Rt(f,t))return f[t]},set({_:e},t,n){const{data:o,setupState:a,ctx:l}=e;return Kf(a,t)?(a[t]=n,!0):o!==on&&Rt(o,t)?(o[t]=n,!0):Rt(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(l[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:o,appContext:a,props:l,type:r}},i){let u;return!!(n[i]||e!==on&&i[0]!=="$"&&Rt(e,i)||Kf(t,i)||Rt(l,i)||Rt(o,i)||Rt(ci,i)||Rt(a.config.globalProperties,i)||(u=r.__cssModules)&&u[i])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:Rt(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function hn(){return z1().slots}function ll(){return z1().attrs}function z1(e){const t=vt();return t.setupContext||(t.setupContext=sC(t))}function Ag(e){return Se(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Dp=!0;function xO(e){const t=K1(e),n=e.proxy,o=e.ctx;Dp=!1,t.beforeCreate&&Lg(t.beforeCreate,e,"bc");const{data:a,computed:l,methods:r,watch:i,provide:u,inject:c,created:d,beforeMount:f,mounted:v,beforeUpdate:p,updated:m,activated:h,deactivated:g,beforeDestroy:b,beforeUnmount:C,destroyed:w,unmounted:y,render:k,renderTracked:E,renderTriggered:T,errorCaptured:x,serverPrefetch:$,expose:M,inheritAttrs:O,components:R,directives:H,filters:q}=t;if(c&&IO(c,o,null),r)for(const N in r){const L=r[N];qe(L)&&(o[N]=L.bind(n))}if(a){const N=a.call(n,n);it(N)&&(e.data=Ot(N))}if(Dp=!0,l)for(const N in l){const L=l[N],z=qe(L)?L.bind(n,n):qe(L.get)?L.get.bind(n,n):Mt,B=!qe(L)&&qe(L.set)?L.set.bind(n):Mt,W=S({get:z,set:B});Object.defineProperty(o,N,{enumerable:!0,configurable:!0,get:()=>W.value,set:V=>W.value=V})}if(i)for(const N in i)H1(i[N],o,n,N);if(u){const N=qe(u)?u.call(n):u;Reflect.ownKeys(N).forEach(L=>{wt(L,N[L])})}d&&Lg(d,e,"c");function P(N,L){Se(L)?L.forEach(z=>N(z.bind(n))):L&&N(L.bind(n))}if(P(Hd,f),P(mt,v),P(Ch,p),P(ta,m),P(Vd,h),P(D1,g),P(OO,x),P(TO,E),P(_O,T),P(Pt,C),P(Ts,y),P(EO,$),Se(M))if(M.length){const N=e.exposed||(e.exposed={});M.forEach(L=>{Object.defineProperty(N,L,{get:()=>n[L],set:z=>n[L]=z,enumerable:!0})})}else e.exposed||(e.exposed={});k&&e.render===Mt&&(e.render=k),O!=null&&(e.inheritAttrs=O),R&&(e.components=R),H&&(e.directives=H),$&&L1(e)}function IO(e,t,n=Mt){Se(e)&&(e=Bp(e));for(const o in e){const a=e[o];let l;it(a)?"default"in a?l=Pe(a.from||o,a.default,!0):l=Pe(a.from||o):l=Pe(a),Ht(l)?Object.defineProperty(t,o,{enumerable:!0,configurable:!0,get:()=>l.value,set:r=>l.value=r}):t[o]=l}}function Lg(e,t,n){Yo(Se(e)?e.map(o=>o.bind(t.proxy)):e.bind(t.proxy),t,n)}function H1(e,t,n,o){let a=o.includes(".")?j1(n,o):()=>n[o];if(ze(e)){const l=t[e];qe(l)&&fe(a,l)}else if(qe(e))fe(a,e.bind(n));else if(it(e))if(Se(e))e.forEach(l=>H1(l,t,n,o));else{const l=qe(e.handler)?e.handler.bind(n):t[e.handler];qe(l)&&fe(a,l,e)}}function K1(e){const t=e.type,{mixins:n,extends:o}=t,{mixins:a,optionsCache:l,config:{optionMergeStrategies:r}}=e.appContext,i=l.get(t);let u;return i?u=i:!a.length&&!n&&!o?u=t:(u={},a.length&&a.forEach(c=>Yc(u,c,r,!0)),Yc(u,t,r)),it(t)&&l.set(t,u),u}function Yc(e,t,n,o=!1){const{mixins:a,extends:l}=t;l&&Yc(e,l,n,!0),a&&a.forEach(r=>Yc(e,r,n,!0));for(const r in t)if(!(o&&r==="expose")){const i=PO[r]||n&&n[r];e[r]=i?i(e[r],t[r]):t[r]}return e}const PO={data:Dg,props:Bg,emits:Bg,methods:Qs,computed:Qs,beforeCreate:Zn,created:Zn,beforeMount:Zn,mounted:Zn,beforeUpdate:Zn,updated:Zn,beforeDestroy:Zn,beforeUnmount:Zn,destroyed:Zn,unmounted:Zn,activated:Zn,deactivated:Zn,errorCaptured:Zn,serverPrefetch:Zn,components:Qs,directives:Qs,watch:AO,provide:Dg,inject:MO};function Dg(e,t){return t?e?function(){return On(qe(e)?e.call(this,this):e,qe(t)?t.call(this,this):t)}:t:e}function MO(e,t){return Qs(Bp(e),Bp(t))}function Bp(e){if(Se(e)){const t={};for(let n=0;n1)return n&&qe(t)?t.call(o&&o.proxy):t}}function BO(){return!!(vt()||ir)}const FO=Symbol.for("v-scx"),VO=()=>Pe(FO);function _o(e,t){return Eh(e,null,t)}function fe(e,t,n){return Eh(e,t,n)}function Eh(e,t,n=on){const{immediate:o,deep:a,flush:l,once:r}=n,i=On({},n),u=t&&o||!t&&l!=="post";let c;if($i){if(l==="sync"){const p=VO();c=p.__watcherHandles||(p.__watcherHandles=[])}else if(!u){const p=()=>{};return p.stop=Mt,p.resume=Mt,p.pause=Mt,p}}const d=Wn;i.call=(p,m,h)=>Yo(p,d,m,h);let f=!1;l==="post"?i.scheduler=p=>{Qn(p,d&&d.suspense)}:l!=="sync"&&(f=!0,i.scheduler=(p,m)=>{m?p():yh(p)}),i.augmentJob=p=>{t&&(p.flags|=4),f&&(p.flags|=2,d&&(p.id=d.uid,p.i=d))};const v=hO(e,t,i);return $i&&(c?c.push(v):u&&v()),v}function zO(e,t,n){const o=this.proxy,a=ze(e)?e.includes(".")?j1(o,e):()=>o[e]:e.bind(o,o);let l;qe(t)?l=t:(l=t.handler,n=t);const r=lu(this),i=Eh(a,l.bind(o),n);return r(),i}function j1(e,t){const n=t.split(".");return()=>{let o=e;for(let a=0;at==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${oo(t)}Modifiers`]||e[`${ol(t)}Modifiers`];function KO(e,t,...n){if(e.isUnmounted)return;const o=e.vnode.props||on;let a=n;const l=t.startsWith("update:"),r=l&&HO(o,t.slice(7));r&&(r.trim&&(a=n.map(d=>ze(d)?d.trim():d)),r.number&&(a=n.map(ch)));let i,u=o[i=li(t)]||o[i=li(oo(t))];!u&&l&&(u=o[i=li(ol(t))]),u&&Yo(u,e,6,a);const c=o[i+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[i])return;e.emitted[i]=!0,Yo(c,e,6,a)}}const WO=new WeakMap;function U1(e,t,n=!1){const o=n?WO:t.emitsCache,a=o.get(e);if(a!==void 0)return a;const l=e.emits;let r={},i=!1;if(!qe(e)){const u=c=>{const d=U1(c,t,!0);d&&(i=!0,On(r,d))};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}return!l&&!i?(it(e)&&o.set(e,null),null):(Se(l)?l.forEach(u=>r[u]=null):On(r,l),it(e)&&o.set(e,r),r)}function Wd(e,t){return!e||!Nd(t)?!1:(t=t.slice(2).replace(/Once$/,""),Rt(e,t[0].toLowerCase()+t.slice(1))||Rt(e,ol(t))||Rt(e,t))}function Fg(e){const{type:t,vnode:n,proxy:o,withProxy:a,propsOptions:[l],slots:r,attrs:i,emit:u,render:c,renderCache:d,props:f,data:v,setupState:p,ctx:m,inheritAttrs:h}=e,g=Uc(e);let b,C;try{if(n.shapeFlag&4){const y=a||o,k=y;b=fa(c.call(k,y,d,f,p,v,m)),C=i}else{const y=t;b=fa(y.length>1?y(f,{attrs:i,slots:r,emit:u}):y(f,null)),C=t.props?i:jO(i)}}catch(y){di.length=0,Bd(y,e,1),b=U(un)}let w=b;if(C&&h!==!1){const y=Object.keys(C),{shapeFlag:k}=w;y.length&&k&7&&(l&&y.some(ih)&&(C=UO(C,l)),w=Xa(w,C,!1,!0))}return n.dirs&&(w=Xa(w,null,!1,!0),w.dirs=w.dirs?w.dirs.concat(n.dirs):n.dirs),n.transition&&hr(w,n.transition),b=w,Uc(g),b}const jO=e=>{let t;for(const n in e)(n==="class"||n==="style"||Nd(n))&&((t||(t={}))[n]=e[n]);return t},UO=(e,t)=>{const n={};for(const o in e)(!ih(o)||!(o.slice(9)in t))&&(n[o]=e[o]);return n};function qO(e,t,n){const{props:o,children:a,component:l}=e,{props:r,children:i,patchFlag:u}=t,c=l.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&u>=0){if(u&1024)return!0;if(u&16)return o?Vg(o,r,c):!!r;if(u&8){const d=t.dynamicProps;for(let f=0;fObject.create(q1),G1=e=>Object.getPrototypeOf(e)===q1;function GO(e,t,n,o=!1){const a={},l=Y1();e.propsDefaults=Object.create(null),X1(e,t,a,l);for(const r in e.propsOptions[0])r in a||(a[r]=void 0);n?e.props=o?a:Ld(a):e.type.props?e.props=a:e.props=l,e.attrs=l}function XO(e,t,n,o){const{props:a,attrs:l,vnode:{patchFlag:r}}=e,i=Kt(a),[u]=e.propsOptions;let c=!1;if((o||r>0)&&!(r&16)){if(r&8){const d=e.vnode.dynamicProps;for(let f=0;f{u=!0;const[v,p]=J1(f,t,!0);On(r,v),p&&i.push(...p)};!n&&t.mixins.length&&t.mixins.forEach(d),e.extends&&d(e.extends),e.mixins&&e.mixins.forEach(d)}if(!l&&!u)return it(e)&&o.set(e,qr),qr;if(Se(l))for(let d=0;de==="_"||e==="_ctx"||e==="$stable",Th=e=>Se(e)?e.map(fa):[fa(e)],ZO=(e,t,n)=>{if(t._n)return t;const o=Y((...a)=>Th(t(...a)),n);return o._c=!1,o},Z1=(e,t,n)=>{const o=e._ctx;for(const a in e){if(_h(a))continue;const l=e[a];if(qe(l))t[a]=ZO(a,l,o);else if(l!=null){const r=Th(l);t[a]=()=>r}}},Q1=(e,t)=>{const n=Th(t);e.slots.default=()=>n},eC=(e,t,n)=>{for(const o in t)(n||!_h(o))&&(e[o]=t[o])},QO=(e,t,n)=>{const o=e.slots=Y1();if(e.vnode.shapeFlag&32){const a=t._;a?(eC(o,t,n),n&&Qw(o,"_",a,!0)):Z1(t,o)}else t&&Q1(e,t)},e$=(e,t,n)=>{const{vnode:o,slots:a}=e;let l=!0,r=on;if(o.shapeFlag&32){const i=t._;i?n&&i===1?l=!1:eC(a,t,n):(l=!t.$stable,Z1(t,a)),r=t}else t&&(Q1(e,t),r={default:1});if(l)for(const i in a)!_h(i)&&r[i]==null&&delete a[i]},Qn=l$;function t$(e){return n$(e)}function n$(e,t){const n=Pd();n.__VUE__=!0;const{insert:o,remove:a,patchProp:l,createElement:r,createText:i,createComment:u,setText:c,setElementText:d,parentNode:f,nextSibling:v,setScopeId:p=Mt,insertStaticContent:m}=e,h=(D,Z,se,pe=null,he=null,ve=null,Ie=void 0,_e=null,De=!!Z.dynamicChildren)=>{if(D===Z)return;D&&!Xl(D,Z)&&(pe=ne(D),V(D,he,ve,!0),D=null),Z.patchFlag===-2&&(De=!1,Z.dynamicChildren=null);const{type:ye,ref:Re,shapeFlag:Ne}=Z;switch(ye){case Os:g(D,Z,se,pe);break;case un:b(D,Z,se,pe);break;case jf:D==null&&C(Z,se,pe,Ie);break;case He:R(D,Z,se,pe,he,ve,Ie,_e,De);break;default:Ne&1?k(D,Z,se,pe,he,ve,Ie,_e,De):Ne&6?H(D,Z,se,pe,he,ve,Ie,_e,De):(Ne&64||Ne&128)&&ye.process(D,Z,se,pe,he,ve,Ie,_e,De,te)}Re!=null&&he?ui(Re,D&&D.ref,ve,Z||D,!Z):Re==null&&D&&D.ref!=null&&ui(D.ref,null,ve,D,!0)},g=(D,Z,se,pe)=>{if(D==null)o(Z.el=i(Z.children),se,pe);else{const he=Z.el=D.el;Z.children!==D.children&&c(he,Z.children)}},b=(D,Z,se,pe)=>{D==null?o(Z.el=u(Z.children||""),se,pe):Z.el=D.el},C=(D,Z,se,pe)=>{[D.el,D.anchor]=m(D.children,Z,se,pe,D.el,D.anchor)},w=({el:D,anchor:Z},se,pe)=>{let he;for(;D&&D!==Z;)he=v(D),o(D,se,pe),D=he;o(Z,se,pe)},y=({el:D,anchor:Z})=>{let se;for(;D&&D!==Z;)se=v(D),a(D),D=se;a(Z)},k=(D,Z,se,pe,he,ve,Ie,_e,De)=>{if(Z.type==="svg"?Ie="svg":Z.type==="math"&&(Ie="mathml"),D==null)E(Z,se,pe,he,ve,Ie,_e,De);else{const ye=D.el&&D.el._isVueCE?D.el:null;try{ye&&ye._beginPatch(),$(D,Z,he,ve,Ie,_e,De)}finally{ye&&ye._endPatch()}}},E=(D,Z,se,pe,he,ve,Ie,_e)=>{let De,ye;const{props:Re,shapeFlag:Ne,transition:Ae,dirs:Fe}=D;if(De=D.el=r(D.type,ve,Re&&Re.is,Re),Ne&8?d(De,D.children):Ne&16&&x(D.children,De,null,pe,he,Wf(D,ve),Ie,_e),Fe&&Wl(D,null,pe,"created"),T(De,D,D.scopeId,Ie,pe),Re){for(const Ke in Re)Ke!=="value"&&!ai(Ke)&&l(De,Ke,null,Re[Ke],ve,pe);"value"in Re&&l(De,"value",null,Re.value,ve),(ye=Re.onVnodeBeforeMount)&&ia(ye,pe,D)}Fe&&Wl(D,null,pe,"beforeMount");const me=o$(he,Ae);me&&Ae.beforeEnter(De),o(De,Z,se),((ye=Re&&Re.onVnodeMounted)||me||Fe)&&Qn(()=>{ye&&ia(ye,pe,D),me&&Ae.enter(De),Fe&&Wl(D,null,pe,"mounted")},he)},T=(D,Z,se,pe,he)=>{if(se&&p(D,se),pe)for(let ve=0;ve{for(let ye=De;ye{const _e=Z.el=D.el;let{patchFlag:De,dynamicChildren:ye,dirs:Re}=Z;De|=D.patchFlag&16;const Ne=D.props||on,Ae=Z.props||on;let Fe;if(se&&jl(se,!1),(Fe=Ae.onVnodeBeforeUpdate)&&ia(Fe,se,Z,D),Re&&Wl(Z,D,se,"beforeUpdate"),se&&jl(se,!0),(Ne.innerHTML&&Ae.innerHTML==null||Ne.textContent&&Ae.textContent==null)&&d(_e,""),ye?M(D.dynamicChildren,ye,_e,se,pe,Wf(Z,he),ve):Ie||L(D,Z,_e,null,se,pe,Wf(Z,he),ve,!1),De>0){if(De&16)O(_e,Ne,Ae,se,he);else if(De&2&&Ne.class!==Ae.class&&l(_e,"class",null,Ae.class,he),De&4&&l(_e,"style",Ne.style,Ae.style,he),De&8){const me=Z.dynamicProps;for(let Ke=0;Ke{Fe&&ia(Fe,se,Z,D),Re&&Wl(Z,D,se,"updated")},pe)},M=(D,Z,se,pe,he,ve,Ie)=>{for(let _e=0;_e{if(Z!==se){if(Z!==on)for(const ve in Z)!ai(ve)&&!(ve in se)&&l(D,ve,Z[ve],null,he,pe);for(const ve in se){if(ai(ve))continue;const Ie=se[ve],_e=Z[ve];Ie!==_e&&ve!=="value"&&l(D,ve,_e,Ie,he,pe)}"value"in se&&l(D,"value",Z.value,se.value,he)}},R=(D,Z,se,pe,he,ve,Ie,_e,De)=>{const ye=Z.el=D?D.el:i(""),Re=Z.anchor=D?D.anchor:i("");let{patchFlag:Ne,dynamicChildren:Ae,slotScopeIds:Fe}=Z;Fe&&(_e=_e?_e.concat(Fe):Fe),D==null?(o(ye,se,pe),o(Re,se,pe),x(Z.children||[],se,Re,he,ve,Ie,_e,De)):Ne>0&&Ne&64&&Ae&&D.dynamicChildren?(M(D.dynamicChildren,Ae,se,he,ve,Ie,_e),(Z.key!=null||he&&Z===he.subTree)&&Oh(D,Z,!0)):L(D,Z,se,Re,he,ve,Ie,_e,De)},H=(D,Z,se,pe,he,ve,Ie,_e,De)=>{Z.slotScopeIds=_e,D==null?Z.shapeFlag&512?he.ctx.activate(Z,se,pe,Ie,De):q(Z,se,pe,he,ve,Ie,De):X(D,Z,De)},q=(D,Z,se,pe,he,ve,Ie)=>{const _e=D.component=c$(D,pe,he);if(Fd(D)&&(_e.ctx.renderer=te),d$(_e,!1,Ie),_e.asyncDep){if(he&&he.registerDep(_e,P,Ie),!D.el){const De=_e.subTree=U(un);b(null,De,Z,se),D.placeholder=De.el}}else P(_e,D,Z,se,he,ve,Ie)},X=(D,Z,se)=>{const pe=Z.component=D.component;if(qO(D,Z,se))if(pe.asyncDep&&!pe.asyncResolved){N(pe,Z,se);return}else pe.next=Z,pe.update();else Z.el=D.el,pe.vnode=Z},P=(D,Z,se,pe,he,ve,Ie)=>{const _e=()=>{if(D.isMounted){let{next:Ne,bu:Ae,u:Fe,parent:me,vnode:Ke}=D;{const ot=tC(D);if(ot){Ne&&(Ne.el=Ke.el,N(D,Ne,Ie)),ot.asyncDep.then(()=>{D.isUnmounted||_e()});return}}let Le=Ne,Ct;jl(D,!1),Ne?(Ne.el=Ke.el,N(D,Ne,Ie)):Ne=Ke,Ae&&cc(Ae),(Ct=Ne.props&&Ne.props.onVnodeBeforeUpdate)&&ia(Ct,me,Ne,Ke),jl(D,!0);const Et=Fg(D),Je=D.subTree;D.subTree=Et,h(Je,Et,f(Je.el),ne(Je),D,he,ve),Ne.el=Et.el,Le===null&&YO(D,Et.el),Fe&&Qn(Fe,he),(Ct=Ne.props&&Ne.props.onVnodeUpdated)&&Qn(()=>ia(Ct,me,Ne,Ke),he)}else{let Ne;const{el:Ae,props:Fe}=Z,{bm:me,m:Ke,parent:Le,root:Ct,type:Et}=D,Je=Xr(Z);jl(D,!1),me&&cc(me),!Je&&(Ne=Fe&&Fe.onVnodeBeforeMount)&&ia(Ne,Le,Z),jl(D,!0);{Ct.ce&&Ct.ce._def.shadowRoot!==!1&&Ct.ce._injectChildStyle(Et);const ot=D.subTree=Fg(D);h(null,ot,se,pe,D,he,ve),Z.el=ot.el}if(Ke&&Qn(Ke,he),!Je&&(Ne=Fe&&Fe.onVnodeMounted)){const ot=Z;Qn(()=>ia(Ne,Le,ot),he)}(Z.shapeFlag&256||Le&&Xr(Le.vnode)&&Le.vnode.shapeFlag&256)&&D.a&&Qn(D.a,he),D.isMounted=!0,Z=se=pe=null}};D.scope.on();const De=D.effect=new l1(_e);D.scope.off();const ye=D.update=De.run.bind(De),Re=D.job=De.runIfDirty.bind(De);Re.i=D,Re.id=D.uid,De.scheduler=()=>yh(Re),jl(D,!0),ye()},N=(D,Z,se)=>{Z.component=D;const pe=D.vnode.props;D.vnode=Z,D.next=null,XO(D,Z.props,pe,se),e$(D,Z.children,se),qa(),$g(D),Ya()},L=(D,Z,se,pe,he,ve,Ie,_e,De=!1)=>{const ye=D&&D.children,Re=D?D.shapeFlag:0,Ne=Z.children,{patchFlag:Ae,shapeFlag:Fe}=Z;if(Ae>0){if(Ae&128){B(ye,Ne,se,pe,he,ve,Ie,_e,De);return}else if(Ae&256){z(ye,Ne,se,pe,he,ve,Ie,_e,De);return}}Fe&8?(Re&16&&ce(ye,he,ve),Ne!==ye&&d(se,Ne)):Re&16?Fe&16?B(ye,Ne,se,pe,he,ve,Ie,_e,De):ce(ye,he,ve,!0):(Re&8&&d(se,""),Fe&16&&x(Ne,se,pe,he,ve,Ie,_e,De))},z=(D,Z,se,pe,he,ve,Ie,_e,De)=>{D=D||qr,Z=Z||qr;const ye=D.length,Re=Z.length,Ne=Math.min(ye,Re);let Ae;for(Ae=0;AeRe?ce(D,he,ve,!0,!1,Ne):x(Z,se,pe,he,ve,Ie,_e,De,Ne)},B=(D,Z,se,pe,he,ve,Ie,_e,De)=>{let ye=0;const Re=Z.length;let Ne=D.length-1,Ae=Re-1;for(;ye<=Ne&&ye<=Ae;){const Fe=D[ye],me=Z[ye]=De?Sl(Z[ye]):fa(Z[ye]);if(Xl(Fe,me))h(Fe,me,se,null,he,ve,Ie,_e,De);else break;ye++}for(;ye<=Ne&&ye<=Ae;){const Fe=D[Ne],me=Z[Ae]=De?Sl(Z[Ae]):fa(Z[Ae]);if(Xl(Fe,me))h(Fe,me,se,null,he,ve,Ie,_e,De);else break;Ne--,Ae--}if(ye>Ne){if(ye<=Ae){const Fe=Ae+1,me=FeAe)for(;ye<=Ne;)V(D[ye],he,ve,!0),ye++;else{const Fe=ye,me=ye,Ke=new Map;for(ye=me;ye<=Ae;ye++){const Ue=Z[ye]=De?Sl(Z[ye]):fa(Z[ye]);Ue.key!=null&&Ke.set(Ue.key,ye)}let Le,Ct=0;const Et=Ae-me+1;let Je=!1,ot=0;const ut=new Array(Et);for(ye=0;ye=Et){V(Ue,he,ve,!0);continue}let de;if(Ue.key!=null)de=Ke.get(Ue.key);else for(Le=me;Le<=Ae;Le++)if(ut[Le-me]===0&&Xl(Ue,Z[Le])){de=Le;break}de===void 0?V(Ue,he,ve,!0):(ut[de-me]=ye+1,de>=ot?ot=de:Je=!0,h(Ue,Z[de],se,null,he,ve,Ie,_e,De),Ct++)}const ge=Je?a$(ut):qr;for(Le=ge.length-1,ye=Et-1;ye>=0;ye--){const Ue=me+ye,de=Z[Ue],je=Z[Ue+1],We=Ue+1{const{el:ve,type:Ie,transition:_e,children:De,shapeFlag:ye}=D;if(ye&6){W(D.component.subTree,Z,se,pe);return}if(ye&128){D.suspense.move(Z,se,pe);return}if(ye&64){Ie.move(D,Z,se,te);return}if(Ie===He){o(ve,Z,se);for(let Ne=0;Ne_e.enter(ve),he);else{const{leave:Ne,delayLeave:Ae,afterLeave:Fe}=_e,me=()=>{D.ctx.isUnmounted?a(ve):o(ve,Z,se)},Ke=()=>{ve._isLeaving&&ve[Da](!0),Ne(ve,()=>{me(),Fe&&Fe()})};Ae?Ae(ve,me,Ke):Ke()}else o(ve,Z,se)},V=(D,Z,se,pe=!1,he=!1)=>{const{type:ve,props:Ie,ref:_e,children:De,dynamicChildren:ye,shapeFlag:Re,patchFlag:Ne,dirs:Ae,cacheIndex:Fe}=D;if(Ne===-2&&(he=!1),_e!=null&&(qa(),ui(_e,null,se,D,!0),Ya()),Fe!=null&&(Z.renderCache[Fe]=void 0),Re&256){Z.ctx.deactivate(D);return}const me=Re&1&&Ae,Ke=!Xr(D);let Le;if(Ke&&(Le=Ie&&Ie.onVnodeBeforeUnmount)&&ia(Le,Z,D),Re&6)ae(D.component,se,pe);else{if(Re&128){D.suspense.unmount(se,pe);return}me&&Wl(D,null,Z,"beforeUnmount"),Re&64?D.type.remove(D,Z,se,te,pe):ye&&!ye.hasOnce&&(ve!==He||Ne>0&&Ne&64)?ce(ye,Z,se,!1,!0):(ve===He&&Ne&384||!he&&Re&16)&&ce(De,Z,se),pe&&j(D)}(Ke&&(Le=Ie&&Ie.onVnodeUnmounted)||me)&&Qn(()=>{Le&&ia(Le,Z,D),me&&Wl(D,null,Z,"unmounted")},se)},j=D=>{const{type:Z,el:se,anchor:pe,transition:he}=D;if(Z===He){oe(se,pe);return}if(Z===jf){y(D);return}const ve=()=>{a(se),he&&!he.persisted&&he.afterLeave&&he.afterLeave()};if(D.shapeFlag&1&&he&&!he.persisted){const{leave:Ie,delayLeave:_e}=he,De=()=>Ie(se,ve);_e?_e(D.el,ve,De):De()}else ve()},oe=(D,Z)=>{let se;for(;D!==Z;)se=v(D),a(D),D=se;a(Z)},ae=(D,Z,se)=>{const{bum:pe,scope:he,job:ve,subTree:Ie,um:_e,m:De,a:ye}=D;Hg(De),Hg(ye),pe&&cc(pe),he.stop(),ve&&(ve.flags|=8,V(Ie,D,Z,se)),_e&&Qn(_e,Z),Qn(()=>{D.isUnmounted=!0},Z)},ce=(D,Z,se,pe=!1,he=!1,ve=0)=>{for(let Ie=ve;Ie{if(D.shapeFlag&6)return ne(D.component.subTree);if(D.shapeFlag&128)return D.suspense.next();const Z=v(D.anchor||D.el),se=Z&&Z[O1];return se?v(se):Z};let ue=!1;const Q=(D,Z,se)=>{D==null?Z._vnode&&V(Z._vnode,null,null,!0):h(Z._vnode||null,D,Z,null,null,null,se),Z._vnode=D,ue||(ue=!0,$g(),E1(),ue=!1)},te={p:h,um:V,m:W,r:j,mt:q,mc:x,pc:L,pbc:M,n:ne,o:e};return{render:Q,hydrate:void 0,createApp:DO(Q)}}function Wf({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 jl({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function o$(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Oh(e,t,n=!1){const o=e.children,a=t.children;if(Se(o)&&Se(a))for(let l=0;l>1,e[n[i]]0&&(t[o]=n[l-1]),n[l]=o)}}for(l=n.length,r=n[l-1];l-- >0;)n[l]=r,r=t[r];return n}function tC(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:tC(t)}function Hg(e){if(e)for(let t=0;te.__isSuspense;function l$(e,t){t&&t.pendingBranch?Se(e)?t.effects.push(...e):t.effects.push(e):bO(e)}const He=Symbol.for("v-fgt"),Os=Symbol.for("v-txt"),un=Symbol.for("v-cmt"),jf=Symbol.for("v-stc"),di=[];let Co=null;function _(e=!1){di.push(Co=e?null:[])}function r$(){di.pop(),Co=di[di.length-1]||null}let Oi=1;function Gc(e,t=!1){Oi+=e,e<0&&Co&&t&&(Co.hasOnce=!0)}function oC(e){return e.dynamicChildren=Oi>0?Co||qr:null,r$(),Oi>0&&Co&&Co.push(e),e}function F(e,t,n,o,a,l){return oC(K(e,t,n,o,a,l,!0))}function ie(e,t,n,o,a){return oC(U(e,t,n,o,a,!0))}function Wt(e){return e?e.__v_isVNode===!0:!1}function Xl(e,t){return e.type===t.type&&e.key===t.key}const aC=({key:e})=>e??null,pc=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?ze(e)||Ht(e)||qe(e)?{i:Ln,r:e,k:t,f:!!n}:e:null);function K(e,t=null,n=null,o=0,a=null,l=e===He?0:1,r=!1,i=!1){const u={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&aC(t),ref:t&&pc(t),scopeId:T1,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:l,patchFlag:o,dynamicProps:a,dynamicChildren:null,appContext:null,ctx:Ln};return i?($h(u,n),l&128&&e.normalize(u)):n&&(u.shapeFlag|=ze(n)?8:16),Oi>0&&!r&&Co&&(u.patchFlag>0||l&6)&&u.patchFlag!==32&&Co.push(u),u}const U=s$;function s$(e,t=null,n=null,o=0,a=null,l=!1){if((!e||e===F1)&&(e=un),Wt(e)){const i=Xa(e,t,!0);return n&&$h(i,n),Oi>0&&!l&&Co&&(i.shapeFlag&6?Co[Co.indexOf(e)]=i:Co.push(i)),i.patchFlag=-2,i}if(h$(e)&&(e=e.__vccOpts),t){t=va(t);let{class:i,style:u}=t;i&&!ze(i)&&(t.class=I(i)),it(u)&&(Dd(u)&&!Se(u)&&(u=On({},u)),t.style=Ye(u))}const r=ze(e)?1:nC(e)?128:$1(e)?64:it(e)?4:qe(e)?2:0;return K(e,t,n,o,a,r,l,!0)}function va(e){return e?Dd(e)||G1(e)?On({},e):e:null}function Xa(e,t,n=!1,o=!1){const{props:a,ref:l,patchFlag:r,children:i,transition:u}=e,c=t?ht(a||{},t):a,d={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&aC(c),ref:t&&t.ref?n&&l?Se(l)?l.concat(pc(t)):[l,pc(t)]:pc(t):l,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==He?r===-1?16:r|16:r,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:u,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Xa(e.ssContent),ssFallback:e.ssFallback&&Xa(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return u&&o&&hr(d,u.clone(d)),d}function lt(e=" ",t=0){return U(Os,null,e,t)}function le(e="",t=!1){return t?(_(),ie(un,null,e)):U(un,null,e)}function fa(e){return e==null||typeof e=="boolean"?U(un):Se(e)?U(He,null,e.slice()):Wt(e)?Sl(e):U(Os,null,String(e))}function Sl(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Xa(e)}function $h(e,t){let n=0;const{shapeFlag:o}=e;if(t==null)t=null;else if(Se(t))n=16;else if(typeof t=="object")if(o&65){const a=t.default;a&&(a._c&&(a._d=!1),$h(e,a()),a._c&&(a._d=!0));return}else{n=32;const a=t._;!a&&!G1(t)?t._ctx=Ln:a===3&&Ln&&(Ln.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else qe(t)?(t={default:t,_ctx:Ln},n=32):(t=String(t),o&64?(n=16,t=[lt(t)]):n=8);e.children=t,e.shapeFlag|=n}function ht(...e){const t={};for(let n=0;nWn||Ln;let Xc,Vp;{const e=Pd(),t=(n,o)=>{let a;return(a=e[n])||(a=e[n]=[]),a.push(o),l=>{a.length>1?a.forEach(r=>r(l)):a[0](l)}};Xc=t("__VUE_INSTANCE_SETTERS__",n=>Wn=n),Vp=t("__VUE_SSR_SETTERS__",n=>$i=n)}const lu=e=>{const t=Wn;return Xc(e),e.scope.on(),()=>{e.scope.off(),Xc(t)}},Kg=()=>{Wn&&Wn.scope.off(),Xc(null)};function lC(e){return e.vnode.shapeFlag&4}let $i=!1;function d$(e,t=!1,n=!1){t&&Vp(t);const{props:o,children:a}=e.vnode,l=lC(e);GO(e,o,l,t),QO(e,a,n||t);const r=l?f$(e,t):void 0;return t&&Vp(!1),r}function f$(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,RO);const{setup:o}=n;if(o){qa();const a=e.setupContext=o.length>1?sC(e):null,l=lu(e),r=au(o,e,0,[e.props,a]),i=pr(r);if(Ya(),l(),(i||e.sp)&&!Xr(e)&&L1(e),i){if(r.then(Kg,Kg),t)return r.then(u=>{Wg(e,u)}).catch(u=>{Bd(u,e,0)});e.asyncDep=r}else Wg(e,r)}else rC(e)}function Wg(e,t,n){qe(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:it(t)&&(e.setupState=w1(t)),rC(e)}function rC(e,t,n){const o=e.type;e.render||(e.render=o.render||Mt);{const a=lu(e);qa();try{xO(e)}finally{Ya(),a()}}}const p$={get(e,t){return Kn(e,"get",""),e[t]}};function sC(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,p$),slots:e.slots,emit:e.emit,expose:t}}function jd(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(w1(Ko(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in ci)return ci[n](e)},has(t,n){return n in t||n in ci}})):e.proxy}function v$(e,t=!0){return qe(e)?e.displayName||e.name:e.name||t&&e.__name}function h$(e){return qe(e)&&"__vccOpts"in e}const S=(e,t)=>pO(e,t,$i);function Xe(e,t,n){try{Gc(-1);const o=arguments.length;return o===2?it(t)&&!Se(t)?Wt(t)?U(e,null,[t]):U(e,t):U(e,null,t):(o>3?n=Array.prototype.slice.call(arguments,2):o===3&&Wt(n)&&(n=[n]),U(e,t,n))}finally{Gc(1)}}const m$="3.5.25",g$=Mt;let zp;const jg=typeof window<"u"&&window.trustedTypes;if(jg)try{zp=jg.createPolicy("vue",{createHTML:e=>e})}catch{}const iC=zp?e=>zp.createHTML(e):e=>e,b$="http://www.w3.org/2000/svg",y$="http://www.w3.org/1998/Math/MathML",La=typeof document<"u"?document:null,Ug=La&&La.createElement("template"),w$={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,o)=>{const a=t==="svg"?La.createElementNS(b$,e):t==="mathml"?La.createElementNS(y$,e):n?La.createElement(e,{is:n}):La.createElement(e);return e==="select"&&o&&o.multiple!=null&&a.setAttribute("multiple",o.multiple),a},createText:e=>La.createTextNode(e),createComment:e=>La.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>La.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,o,a,l){const r=n?n.previousSibling:t.lastChild;if(a&&(a===l||a.nextSibling))for(;t.insertBefore(a.cloneNode(!0),n),!(a===l||!(a=a.nextSibling)););else{Ug.innerHTML=iC(o==="svg"?`${e}`:o==="mathml"?`${e}`:e);const i=Ug.content;if(o==="svg"||o==="mathml"){const u=i.firstChild;for(;u.firstChild;)i.appendChild(u.firstChild);i.removeChild(u)}t.insertBefore(i,n)}return[r?r.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},fl="transition",Ks="animation",rs=Symbol("_vtc"),uC={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},cC=On({},I1,uC),C$=e=>(e.displayName="Transition",e.props=cC,e),xn=C$((e,{slots:t})=>Xe(SO,dC(e),t)),Ul=(e,t=[])=>{Se(e)?e.forEach(n=>n(...t)):e&&e(...t)},qg=e=>e?Se(e)?e.some(t=>t.length>1):e.length>1:!1;function dC(e){const t={};for(const R in e)R in uC||(t[R]=e[R]);if(e.css===!1)return t;const{name:n="v",type:o,duration:a,enterFromClass:l=`${n}-enter-from`,enterActiveClass:r=`${n}-enter-active`,enterToClass:i=`${n}-enter-to`,appearFromClass:u=l,appearActiveClass:c=r,appearToClass:d=i,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:v=`${n}-leave-active`,leaveToClass:p=`${n}-leave-to`}=e,m=S$(a),h=m&&m[0],g=m&&m[1],{onBeforeEnter:b,onEnter:C,onEnterCancelled:w,onLeave:y,onLeaveCancelled:k,onBeforeAppear:E=b,onAppear:T=C,onAppearCancelled:x=w}=t,$=(R,H,q,X)=>{R._enterCancelled=X,hl(R,H?d:i),hl(R,H?c:r),q&&q()},M=(R,H)=>{R._isLeaving=!1,hl(R,f),hl(R,p),hl(R,v),H&&H()},O=R=>(H,q)=>{const X=R?T:C,P=()=>$(H,R,q);Ul(X,[H,P]),Yg(()=>{hl(H,R?u:l),ca(H,R?d:i),qg(X)||Gg(H,o,h,P)})};return On(t,{onBeforeEnter(R){Ul(b,[R]),ca(R,l),ca(R,r)},onBeforeAppear(R){Ul(E,[R]),ca(R,u),ca(R,c)},onEnter:O(!1),onAppear:O(!0),onLeave(R,H){R._isLeaving=!0;const q=()=>M(R,H);ca(R,f),R._enterCancelled?(ca(R,v),Hp(R)):(Hp(R),ca(R,v)),Yg(()=>{R._isLeaving&&(hl(R,f),ca(R,p),qg(y)||Gg(R,o,g,q))}),Ul(y,[R,q])},onEnterCancelled(R){$(R,!1,void 0,!0),Ul(w,[R])},onAppearCancelled(R){$(R,!0,void 0,!0),Ul(x,[R])},onLeaveCancelled(R){M(R),Ul(k,[R])}})}function S$(e){if(e==null)return null;if(it(e))return[Uf(e.enter),Uf(e.leave)];{const t=Uf(e);return[t,t]}}function Uf(e){return PT(e)}function ca(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[rs]||(e[rs]=new Set)).add(t)}function hl(e,t){t.split(/\s+/).forEach(o=>o&&e.classList.remove(o));const n=e[rs];n&&(n.delete(t),n.size||(e[rs]=void 0))}function Yg(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let k$=0;function Gg(e,t,n,o){const a=e._endId=++k$,l=()=>{a===e._endId&&o()};if(n!=null)return setTimeout(l,n);const{type:r,timeout:i,propCount:u}=fC(e,t);if(!r)return o();const c=r+"end";let d=0;const f=()=>{e.removeEventListener(c,v),l()},v=p=>{p.target===e&&++d>=u&&f()};setTimeout(()=>{d(n[m]||"").split(", "),a=o(`${fl}Delay`),l=o(`${fl}Duration`),r=Xg(a,l),i=o(`${Ks}Delay`),u=o(`${Ks}Duration`),c=Xg(i,u);let d=null,f=0,v=0;t===fl?r>0&&(d=fl,f=r,v=l.length):t===Ks?c>0&&(d=Ks,f=c,v=u.length):(f=Math.max(r,c),d=f>0?r>c?fl:Ks:null,v=d?d===fl?l.length:u.length:0);const p=d===fl&&/\b(?:transform|all)(?:,|$)/.test(o(`${fl}Property`).toString());return{type:d,timeout:f,propCount:v,hasTransform:p}}function Xg(e,t){for(;e.lengthJg(n)+Jg(e[o])))}function Jg(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function Hp(e){return(e?e.ownerDocument:document).body.offsetHeight}function E$(e,t,n){const o=e[rs];o&&(t=(t?[t,...o]:[...o]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Jc=Symbol("_vod"),pC=Symbol("_vsh"),Nt={name:"show",beforeMount(e,{value:t},{transition:n}){e[Jc]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):Ws(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:o}){!t!=!n&&(o?t?(o.beforeEnter(e),Ws(e,!0),o.enter(e)):o.leave(e,()=>{Ws(e,!1)}):Ws(e,t))},beforeUnmount(e,{value:t}){Ws(e,t)}};function Ws(e,t){e.style.display=t?e[Jc]:"none",e[pC]=!t}const _$=Symbol(""),T$=/(?:^|;)\s*display\s*:/;function O$(e,t,n){const o=e.style,a=ze(n);let l=!1;if(n&&!a){if(t)if(ze(t))for(const r of t.split(";")){const i=r.slice(0,r.indexOf(":")).trim();n[i]==null&&vc(o,i,"")}else for(const r in t)n[r]==null&&vc(o,r,"");for(const r in n)r==="display"&&(l=!0),vc(o,r,n[r])}else if(a){if(t!==n){const r=o[_$];r&&(n+=";"+r),o.cssText=n,l=T$.test(n)}}else t&&e.removeAttribute("style");Jc in e&&(e[Jc]=l?o.display:"",e[pC]&&(o.display="none"))}const Zg=/\s*!important$/;function vc(e,t,n){if(Se(n))n.forEach(o=>vc(e,t,o));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const o=$$(e,t);Zg.test(n)?e.setProperty(ol(o),n.replace(Zg,""),"important"):e[o]=n}}const Qg=["Webkit","Moz","ms"],qf={};function $$(e,t){const n=qf[t];if(n)return n;let o=oo(t);if(o!=="filter"&&o in e)return qf[t]=o;o=ou(o);for(let a=0;aYf||(I$.then(()=>Yf=0),Yf=Date.now());function M$(e,t){const n=o=>{if(!o._vts)o._vts=Date.now();else if(o._vts<=n.attached)return;Yo(A$(o,n.value),t,5,[o])};return n.value=e,n.attached=P$(),n}function A$(e,t){if(Se(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(o=>a=>!a._stopped&&o&&o(a))}else return t}const lb=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,L$=(e,t,n,o,a,l)=>{const r=a==="svg";t==="class"?E$(e,o,r):t==="style"?O$(e,n,o):Nd(t)?ih(t)||R$(e,t,n,o,l):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):D$(e,t,o,r))?(nb(e,t,o),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&tb(e,t,o,r,l,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!ze(o))?nb(e,oo(t),o,l,t):(t==="true-value"?e._trueValue=o:t==="false-value"&&(e._falseValue=o),tb(e,t,o,r))};function D$(e,t,n,o){if(o)return!!(t==="innerHTML"||t==="textContent"||t in e&&lb(t)&&qe(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 a=e.tagName;if(a==="IMG"||a==="VIDEO"||a==="CANVAS"||a==="SOURCE")return!1}return lb(t)&&ze(n)?!1:t in e}const vC=new WeakMap,hC=new WeakMap,Zc=Symbol("_moveCb"),rb=Symbol("_enterCb"),B$=e=>(delete e.props.mode,e),F$=B$({name:"TransitionGroup",props:On({},cC,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=vt(),o=x1();let a,l;return ta(()=>{if(!a.length)return;const r=e.moveClass||`${e.name||"v"}-move`;if(!K$(a[0].el,n.vnode.el,r)){a=[];return}a.forEach(V$),a.forEach(z$);const i=a.filter(H$);Hp(n.vnode.el),i.forEach(u=>{const c=u.el,d=c.style;ca(c,r),d.transform=d.webkitTransform=d.transitionDuration="";const f=c[Zc]=v=>{v&&v.target!==c||(!v||v.propertyName.endsWith("transform"))&&(c.removeEventListener("transitionend",f),c[Zc]=null,hl(c,r))};c.addEventListener("transitionend",f)}),a=[]}),()=>{const r=Kt(e),i=dC(r);let u=r.tag||He;if(a=[],l)for(let c=0;c{i.split(/\s+/).forEach(u=>u&&o.classList.remove(u))}),n.split(/\s+/).forEach(i=>i&&o.classList.add(i)),o.style.display="none";const l=t.nodeType===1?t:t.parentNode;l.appendChild(o);const{hasTransform:r}=fC(o);return l.removeChild(o),r}const ss=e=>{const t=e.props["onUpdate:modelValue"]||!1;return Se(t)?n=>cc(t,n):t};function W$(e){e.target.composing=!0}function sb(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Wa=Symbol("_assign");function ib(e,t,n){return t&&(e=e.trim()),n&&(e=ch(e)),e}const Ud={created(e,{modifiers:{lazy:t,trim:n,number:o}},a){e[Wa]=ss(a);const l=o||a.props&&a.props.type==="number";El(e,t?"change":"input",r=>{r.target.composing||e[Wa](ib(e.value,n,l))}),(n||l)&&El(e,"change",()=>{e.value=ib(e.value,n,l)}),t||(El(e,"compositionstart",W$),El(e,"compositionend",sb),El(e,"change",sb))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:o,trim:a,number:l}},r){if(e[Wa]=ss(r),e.composing)return;const i=(l||e.type==="number")&&!/^0\d/.test(e.value)?ch(e.value):e.value,u=t??"";i!==u&&(document.activeElement===e&&e.type!=="range"&&(o&&t===n||a&&e.value.trim()===u)||(e.value=u))}},gC={deep:!0,created(e,t,n){e[Wa]=ss(n),El(e,"change",()=>{const o=e._modelValue,a=yC(e),l=e.checked,r=e[Wa];if(Se(o)){const i=t1(o,a),u=i!==-1;if(l&&!u)r(o.concat(a));else if(!l&&u){const c=[...o];c.splice(i,1),r(c)}}else if(Rd(o)){const i=new Set(o);l?i.add(a):i.delete(a),r(i)}else r(wC(e,l))})},mounted:ub,beforeUpdate(e,t,n){e[Wa]=ss(n),ub(e,t,n)}};function ub(e,{value:t,oldValue:n},o){e._modelValue=t;let a;if(Se(t))a=t1(t,o.props.value)>-1;else if(Rd(t))a=t.has(o.props.value);else{if(t===n)return;a=as(t,wC(e,!0))}e.checked!==a&&(e.checked=a)}const bC={created(e,{value:t},n){e.checked=as(t,n.props.value),e[Wa]=ss(n),El(e,"change",()=>{e[Wa](yC(e))})},beforeUpdate(e,{value:t,oldValue:n},o){e[Wa]=ss(o),t!==n&&(e.checked=as(t,o.props.value))}};function yC(e){return"_value"in e?e._value:e.value}function wC(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const j$=["ctrl","shift","alt","meta"],U$={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)=>j$.some(n=>e[`${n}Key`]&&!t.includes(n))},Qe=(e,t)=>{const n=e._withMods||(e._withMods={}),o=t.join(".");return n[o]||(n[o]=((a,...l)=>{for(let r=0;r{const n=e._withKeys||(e._withKeys={}),o=t.join(".");return n[o]||(n[o]=(a=>{if(!("key"in a))return;const l=ol(a.key);if(t.some(r=>r===l||q$[r]===l))return e(a)}))},Y$=On({patchProp:L$},w$);let cb;function CC(){return cb||(cb=t$(Y$))}const Ml=((...e)=>{CC().render(...e)}),SC=((...e)=>{const t=CC().createApp(...e),{mount:n}=t;return t.mount=o=>{const a=X$(o);if(!a)return;const l=t._component;!qe(l)&&!l.render&&!l.template&&(l.template=a.innerHTML),a.nodeType===1&&(a.textContent="");const r=n(a,!1,G$(a));return a instanceof Element&&(a.removeAttribute("v-cloak"),a.setAttribute("data-v-app","")),r},t});function G$(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function X$(e){return ze(e)?document.querySelector(e):e}const kC=(e,t)=>{const n=e.__vccOpts||e;for(const[o,a]of t)n[o]=a;return n},J$={};function Z$(e,t){const n=pt("RouterView");return _(),ie(n)}const Q$=kC(J$,[["render",Z$]]),eN="modulepreload",tN=function(e,t){return new URL(e,t).href},db={},Er=function(t,n,o){let a=Promise.resolve();if(n&&n.length>0){let c=function(d){return Promise.all(d.map(f=>Promise.resolve(f).then(v=>({status:"fulfilled",value:v}),v=>({status:"rejected",reason:v}))))};const r=document.getElementsByTagName("link"),i=document.querySelector("meta[property=csp-nonce]"),u=i?.nonce||i?.getAttribute("nonce");a=c(n.map(d=>{if(d=tN(d,o),d in db)return;db[d]=!0;const f=d.endsWith(".css"),v=f?'[rel="stylesheet"]':"";if(o)for(let m=r.length-1;m>=0;m--){const h=r[m];if(h.href===d&&(!f||h.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${d}"]${v}`))return;const p=document.createElement("link");if(p.rel=f?"stylesheet":eN,f||(p.as="script"),p.crossOrigin="",p.href=d,u&&p.setAttribute("nonce",u),document.head.appendChild(p),f)return new Promise((m,h)=>{p.addEventListener("load",m),p.addEventListener("error",()=>h(new Error(`Unable to preload CSS for ${d}`)))})}))}function l(r){const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=r,window.dispatchEvent(i),!i.defaultPrevented)throw r}return a.then(r=>{for(const i of r||[])i.status==="rejected"&&l(i.reason);return t().catch(l)})};const Vr=typeof document<"u";function EC(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function nN(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&EC(e.default)}const Xt=Object.assign;function Gf(e,t){const n={};for(const o in t){const a=t[o];n[o]=Go(a)?a.map(e):e(a)}return n}const fi=()=>{},Go=Array.isArray;function fb(e,t){const n={};for(const o in e)n[o]=o in t?t[o]:e[o];return n}const _C=/#/g,oN=/&/g,aN=/\//g,lN=/=/g,rN=/\?/g,TC=/\+/g,sN=/%5B/g,iN=/%5D/g,OC=/%5E/g,uN=/%60/g,$C=/%7B/g,cN=/%7C/g,NC=/%7D/g,dN=/%20/g;function Nh(e){return e==null?"":encodeURI(""+e).replace(cN,"|").replace(sN,"[").replace(iN,"]")}function fN(e){return Nh(e).replace($C,"{").replace(NC,"}").replace(OC,"^")}function Kp(e){return Nh(e).replace(TC,"%2B").replace(dN,"+").replace(_C,"%23").replace(oN,"%26").replace(uN,"`").replace($C,"{").replace(NC,"}").replace(OC,"^")}function pN(e){return Kp(e).replace(lN,"%3D")}function vN(e){return Nh(e).replace(_C,"%23").replace(rN,"%3F")}function hN(e){return vN(e).replace(aN,"%2F")}function Ni(e){if(e==null)return null;try{return decodeURIComponent(""+e)}catch{}return""+e}const mN=/\/$/,gN=e=>e.replace(mN,"");function Xf(e,t,n="/"){let o,a={},l="",r="";const i=t.indexOf("#");let u=t.indexOf("?");return u=i>=0&&u>i?-1:u,u>=0&&(o=t.slice(0,u),l=t.slice(u,i>0?i:t.length),a=e(l.slice(1))),i>=0&&(o=o||t.slice(0,i),r=t.slice(i,t.length)),o=CN(o??t,n),{fullPath:o+l+r,path:o,query:a,hash:Ni(r)}}function bN(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function pb(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function yN(e,t,n){const o=t.matched.length-1,a=n.matched.length-1;return o>-1&&o===a&&is(t.matched[o],n.matched[a])&&RC(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function is(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function RC(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!wN(e[n],t[n]))return!1;return!0}function wN(e,t){return Go(e)?vb(e,t):Go(t)?vb(t,e):e?.valueOf()===t?.valueOf()}function vb(e,t){return Go(t)?e.length===t.length&&e.every((n,o)=>n===t[o]):e.length===1&&e[0]===t}function CN(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),o=e.split("/"),a=o[o.length-1];(a===".."||a===".")&&o.push("");let l=n.length-1,r,i;for(r=0;r1&&l--;else break;return n.slice(0,l).join("/")+"/"+o.slice(r).join("/")}const pl={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};let Wp=(function(e){return e.pop="pop",e.push="push",e})({}),Jf=(function(e){return e.back="back",e.forward="forward",e.unknown="",e})({});function SN(e){if(!e)if(Vr){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),gN(e)}const kN=/^[^#]+#/;function EN(e,t){return e.replace(kN,"#")+t}function _N(e,t){const n=document.documentElement.getBoundingClientRect(),o=e.getBoundingClientRect();return{behavior:t.behavior,left:o.left-n.left-(t.left||0),top:o.top-n.top-(t.top||0)}}const qd=()=>({left:window.scrollX,top:window.scrollY});function TN(e){let t;if("el"in e){const n=e.el,o=typeof n=="string"&&n.startsWith("#"),a=typeof n=="string"?o?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!a)return;t=_N(a,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function hb(e,t){return(history.state?history.state.position-t:-1)+e}const jp=new Map;function ON(e,t){jp.set(e,t)}function $N(e){const t=jp.get(e);return jp.delete(e),t}function NN(e){return typeof e=="string"||e&&typeof e=="object"}function xC(e){return typeof e=="string"||typeof e=="symbol"}let gn=(function(e){return e[e.MATCHER_NOT_FOUND=1]="MATCHER_NOT_FOUND",e[e.NAVIGATION_GUARD_REDIRECT=2]="NAVIGATION_GUARD_REDIRECT",e[e.NAVIGATION_ABORTED=4]="NAVIGATION_ABORTED",e[e.NAVIGATION_CANCELLED=8]="NAVIGATION_CANCELLED",e[e.NAVIGATION_DUPLICATED=16]="NAVIGATION_DUPLICATED",e})({});const IC=Symbol("");gn.MATCHER_NOT_FOUND+"",gn.NAVIGATION_GUARD_REDIRECT+"",gn.NAVIGATION_ABORTED+"",gn.NAVIGATION_CANCELLED+"",gn.NAVIGATION_DUPLICATED+"";function us(e,t){return Xt(new Error,{type:e,[IC]:!0},t)}function Ma(e,t){return e instanceof Error&&IC in e&&(t==null||!!(e.type&t))}const RN=["params","query","hash"];function xN(e){if(typeof e=="string")return e;if(e.path!=null)return e.path;const t={};for(const n of RN)n in e&&(t[n]=e[n]);return JSON.stringify(t,null,2)}function IN(e){const t={};if(e===""||e==="?")return t;const n=(e[0]==="?"?e.slice(1):e).split("&");for(let o=0;oa&&Kp(a)):[o&&Kp(o)]).forEach(a=>{a!==void 0&&(t+=(t.length?"&":"")+n,a!=null&&(t+="="+a))})}return t}function PN(e){const t={};for(const n in e){const o=e[n];o!==void 0&&(t[n]=Go(o)?o.map(a=>a==null?null:""+a):o==null?o:""+o)}return t}const MN=Symbol(""),gb=Symbol(""),Yd=Symbol(""),Rh=Symbol(""),Up=Symbol("");function js(){let e=[];function t(o){return e.push(o),()=>{const a=e.indexOf(o);a>-1&&e.splice(a,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function kl(e,t,n,o,a,l=r=>r()){const r=o&&(o.enterCallbacks[a]=o.enterCallbacks[a]||[]);return()=>new Promise((i,u)=>{const c=v=>{v===!1?u(us(gn.NAVIGATION_ABORTED,{from:n,to:t})):v instanceof Error?u(v):NN(v)?u(us(gn.NAVIGATION_GUARD_REDIRECT,{from:t,to:v})):(r&&o.enterCallbacks[a]===r&&typeof v=="function"&&r.push(v),i())},d=l(()=>e.call(o&&o.instances[a],t,n,c));let f=Promise.resolve(d);e.length<3&&(f=f.then(c)),f.catch(v=>u(v))})}function Zf(e,t,n,o,a=l=>l()){const l=[];for(const r of e)for(const i in r.components){let u=r.components[i];if(!(t!=="beforeRouteEnter"&&!r.instances[i]))if(EC(u)){const c=(u.__vccOpts||u)[t];c&&l.push(kl(c,n,o,r,i,a))}else{let c=u();l.push(()=>c.then(d=>{if(!d)throw new Error(`Couldn't resolve component "${i}" at "${r.path}"`);const f=nN(d)?d.default:d;r.mods[i]=d,r.components[i]=f;const v=(f.__vccOpts||f)[t];return v&&kl(v,n,o,r,i,a)()}))}}return l}function AN(e,t){const n=[],o=[],a=[],l=Math.max(t.matched.length,e.matched.length);for(let r=0;ris(c,i))?o.push(i):n.push(i));const u=e.matched[r];u&&(t.matched.find(c=>is(c,u))||a.push(u))}return[n,o,a]}let LN=()=>location.protocol+"//"+location.host;function PC(e,t){const{pathname:n,search:o,hash:a}=t,l=e.indexOf("#");if(l>-1){let r=a.includes(e.slice(l))?e.slice(l).length:1,i=a.slice(r);return i[0]!=="/"&&(i="/"+i),pb(i,"")}return pb(n,e)+o+a}function DN(e,t,n,o){let a=[],l=[],r=null;const i=({state:v})=>{const p=PC(e,location),m=n.value,h=t.value;let g=0;if(v){if(n.value=p,t.value=v,r&&r===m){r=null;return}g=h?v.position-h.position:0}else o(p);a.forEach(b=>{b(n.value,m,{delta:g,type:Wp.pop,direction:g?g>0?Jf.forward:Jf.back:Jf.unknown})})};function u(){r=n.value}function c(v){a.push(v);const p=()=>{const m=a.indexOf(v);m>-1&&a.splice(m,1)};return l.push(p),p}function d(){if(document.visibilityState==="hidden"){const{history:v}=window;if(!v.state)return;v.replaceState(Xt({},v.state,{scroll:qd()}),"")}}function f(){for(const v of l)v();l=[],window.removeEventListener("popstate",i),window.removeEventListener("pagehide",d),document.removeEventListener("visibilitychange",d)}return window.addEventListener("popstate",i),window.addEventListener("pagehide",d),document.addEventListener("visibilitychange",d),{pauseListeners:u,listen:c,destroy:f}}function bb(e,t,n,o=!1,a=!1){return{back:e,current:t,forward:n,replaced:o,position:window.history.length,scroll:a?qd():null}}function BN(e){const{history:t,location:n}=window,o={value:PC(e,n)},a={value:t.state};a.value||l(o.value,{back:null,current:o.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function l(u,c,d){const f=e.indexOf("#"),v=f>-1?(n.host&&document.querySelector("base")?e:e.slice(f))+u:LN()+e+u;try{t[d?"replaceState":"pushState"](c,"",v),a.value=c}catch(p){console.error(p),n[d?"replace":"assign"](v)}}function r(u,c){l(u,Xt({},t.state,bb(a.value.back,u,a.value.forward,!0),c,{position:a.value.position}),!0),o.value=u}function i(u,c){const d=Xt({},a.value,t.state,{forward:u,scroll:qd()});l(d.current,d,!0),l(u,Xt({},bb(o.value,u,null),{position:d.position+1},c),!1),o.value=u}return{location:o,state:a,push:i,replace:r}}function FN(e){e=SN(e);const t=BN(e),n=DN(e,t.state,t.location,t.replace);function o(l,r=!0){r||n.pauseListeners(),history.go(l)}const a=Xt({location:"",base:e,go:o,createHref:EN.bind(null,e)},t,n);return Object.defineProperty(a,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(a,"state",{enumerable:!0,get:()=>t.state.value}),a}let er=(function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.Group=2]="Group",e})({});var kn=(function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.ParamRegExp=2]="ParamRegExp",e[e.ParamRegExpEnd=3]="ParamRegExpEnd",e[e.EscapeNext=4]="EscapeNext",e})(kn||{});const VN={type:er.Static,value:""},zN=/[a-zA-Z0-9_]/;function HN(e){if(!e)return[[]];if(e==="/")return[[VN]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(p){throw new Error(`ERR (${n})/"${c}": ${p}`)}let n=kn.Static,o=n;const a=[];let l;function r(){l&&a.push(l),l=[]}let i=0,u,c="",d="";function f(){c&&(n===kn.Static?l.push({type:er.Static,value:c}):n===kn.Param||n===kn.ParamRegExp||n===kn.ParamRegExpEnd?(l.length>1&&(u==="*"||u==="+")&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),l.push({type:er.Param,value:c,regexp:d,repeatable:u==="*"||u==="+",optional:u==="*"||u==="?"})):t("Invalid state to consume buffer"),c="")}function v(){c+=u}for(;it.length?t.length===1&&t[0]===eo.Static+eo.Segment?1:-1:0}function MC(e,t){let n=0;const o=e.score,a=t.score;for(;n0&&t[t.length-1]<0}const qN={strict:!1,end:!0,sensitive:!1};function YN(e,t,n){const o=jN(HN(e.path),n),a=Xt(o,{record:e,parent:t,children:[],alias:[]});return t&&!a.record.aliasOf==!t.record.aliasOf&&t.children.push(a),a}function GN(e,t){const n=[],o=new Map;t=fb(qN,t);function a(f){return o.get(f)}function l(f,v,p){const m=!p,h=Sb(f);h.aliasOf=p&&p.record;const g=fb(t,f),b=[h];if("alias"in f){const y=typeof f.alias=="string"?[f.alias]:f.alias;for(const k of y)b.push(Sb(Xt({},h,{components:p?p.record.components:h.components,path:k,aliasOf:p?p.record:h})))}let C,w;for(const y of b){const{path:k}=y;if(v&&k[0]!=="/"){const E=v.record.path,T=E[E.length-1]==="/"?"":"/";y.path=v.record.path+(k&&T+k)}if(C=YN(y,v,g),p?p.alias.push(C):(w=w||C,w!==C&&w.alias.push(C),m&&f.name&&!kb(C)&&r(f.name)),AC(C)&&u(C),h.children){const E=h.children;for(let T=0;T{r(w)}:fi}function r(f){if(xC(f)){const v=o.get(f);v&&(o.delete(f),n.splice(n.indexOf(v),1),v.children.forEach(r),v.alias.forEach(r))}else{const v=n.indexOf(f);v>-1&&(n.splice(v,1),f.record.name&&o.delete(f.record.name),f.children.forEach(r),f.alias.forEach(r))}}function i(){return n}function u(f){const v=ZN(f,n);n.splice(v,0,f),f.record.name&&!kb(f)&&o.set(f.record.name,f)}function c(f,v){let p,m={},h,g;if("name"in f&&f.name){if(p=o.get(f.name),!p)throw us(gn.MATCHER_NOT_FOUND,{location:f});g=p.record.name,m=Xt(Cb(v.params,p.keys.filter(w=>!w.optional).concat(p.parent?p.parent.keys.filter(w=>w.optional):[]).map(w=>w.name)),f.params&&Cb(f.params,p.keys.map(w=>w.name))),h=p.stringify(m)}else if(f.path!=null)h=f.path,p=n.find(w=>w.re.test(h)),p&&(m=p.parse(h),g=p.record.name);else{if(p=v.name?o.get(v.name):n.find(w=>w.re.test(v.path)),!p)throw us(gn.MATCHER_NOT_FOUND,{location:f,currentLocation:v});g=p.record.name,m=Xt({},v.params,f.params),h=p.stringify(m)}const b=[];let C=p;for(;C;)b.unshift(C.record),C=C.parent;return{name:g,path:h,params:m,matched:b,meta:JN(b)}}e.forEach(f=>l(f));function d(){n.length=0,o.clear()}return{addRoute:l,resolve:c,removeRoute:r,clearRoutes:d,getRoutes:i,getRecordMatcher:a}}function Cb(e,t){const n={};for(const o of t)o in e&&(n[o]=e[o]);return n}function Sb(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:XN(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function XN(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const o in e.components)t[o]=typeof n=="object"?n[o]:n;return t}function kb(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function JN(e){return e.reduce((t,n)=>Xt(t,n.meta),{})}function ZN(e,t){let n=0,o=t.length;for(;n!==o;){const l=n+o>>1;MC(e,t[l])<0?o=l:n=l+1}const a=QN(e);return a&&(o=t.lastIndexOf(a,o-1)),o}function QN(e){let t=e;for(;t=t.parent;)if(AC(t)&&MC(e,t)===0)return t}function AC({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Eb(e){const t=Pe(Yd),n=Pe(Rh),o=S(()=>{const u=s(e.to);return t.resolve(u)}),a=S(()=>{const{matched:u}=o.value,{length:c}=u,d=u[c-1],f=n.matched;if(!d||!f.length)return-1;const v=f.findIndex(is.bind(null,d));if(v>-1)return v;const p=_b(u[c-2]);return c>1&&_b(d)===p&&f[f.length-1].path!==p?f.findIndex(is.bind(null,u[c-2])):v}),l=S(()=>a.value>-1&&aR(n.params,o.value.params)),r=S(()=>a.value>-1&&a.value===n.matched.length-1&&RC(n.params,o.value.params));function i(u={}){if(oR(u)){const c=t[s(e.replace)?"replace":"push"](s(e.to)).catch(fi);return e.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>c),c}return Promise.resolve()}return{route:o,href:S(()=>o.value.href),isActive:l,isExactActive:r,navigate:i}}function eR(e){return e.length===1?e[0]:e}const tR=G({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"},viewTransition:Boolean},useLink:Eb,setup(e,{slots:t}){const n=Ot(Eb(e)),{options:o}=Pe(Yd),a=S(()=>({[Tb(e.activeClass,o.linkActiveClass,"router-link-active")]:n.isActive,[Tb(e.exactActiveClass,o.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const l=t.default&&eR(t.default(n));return e.custom?l:Xe("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:a.value},l)}}}),nR=tR;function oR(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function aR(e,t){for(const n in t){const o=t[n],a=e[n];if(typeof o=="string"){if(o!==a)return!1}else if(!Go(a)||a.length!==o.length||o.some((l,r)=>l.valueOf()!==a[r].valueOf()))return!1}return!0}function _b(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const Tb=(e,t,n)=>e??t??n,lR=G({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const o=Pe(Up),a=S(()=>e.route||o.value),l=Pe(gb,0),r=S(()=>{let c=s(l);const{matched:d}=a.value;let f;for(;(f=d[c])&&!f.components;)c++;return c}),i=S(()=>a.value.matched[r.value]);wt(gb,S(()=>r.value+1)),wt(MN,i),wt(Up,a);const u=A();return fe(()=>[u.value,i.value,e.name],([c,d,f],[v,p,m])=>{d&&(d.instances[f]=c,p&&p!==d&&c&&c===v&&(d.leaveGuards.size||(d.leaveGuards=p.leaveGuards),d.updateGuards.size||(d.updateGuards=p.updateGuards))),c&&d&&(!p||!is(d,p)||!v)&&(d.enterCallbacks[f]||[]).forEach(h=>h(c))},{flush:"post"}),()=>{const c=a.value,d=e.name,f=i.value,v=f&&f.components[d];if(!v)return Ob(n.default,{Component:v,route:c});const p=f.props[d],m=p?p===!0?c.params:typeof p=="function"?p(c):p:null,g=Xe(v,Xt({},m,t,{onVnodeUnmounted:b=>{b.component.isUnmounted&&(f.instances[d]=null)},ref:u}));return Ob(n.default,{Component:g,route:c})||g}}});function Ob(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const rR=lR;function sR(e){const t=GN(e.routes,e),n=e.parseQuery||IN,o=e.stringifyQuery||mb,a=e.history,l=js(),r=js(),i=js(),u=jt(pl);let c=pl;Vr&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const d=Gf.bind(null,ne=>""+ne),f=Gf.bind(null,hN),v=Gf.bind(null,Ni);function p(ne,ue){let Q,te;return xC(ne)?(Q=t.getRecordMatcher(ne),te=ue):te=ne,t.addRoute(te,Q)}function m(ne){const ue=t.getRecordMatcher(ne);ue&&t.removeRoute(ue)}function h(){return t.getRoutes().map(ne=>ne.record)}function g(ne){return!!t.getRecordMatcher(ne)}function b(ne,ue){if(ue=Xt({},ue||u.value),typeof ne=="string"){const se=Xf(n,ne,ue.path),pe=t.resolve({path:se.path},ue),he=a.createHref(se.fullPath);return Xt(se,pe,{params:v(pe.params),hash:Ni(se.hash),redirectedFrom:void 0,href:he})}let Q;if(ne.path!=null)Q=Xt({},ne,{path:Xf(n,ne.path,ue.path).path});else{const se=Xt({},ne.params);for(const pe in se)se[pe]==null&&delete se[pe];Q=Xt({},ne,{params:f(se)}),ue.params=f(ue.params)}const te=t.resolve(Q,ue),J=ne.hash||"";te.params=d(v(te.params));const D=bN(o,Xt({},ne,{hash:fN(J),path:te.path})),Z=a.createHref(D);return Xt({fullPath:D,hash:J,query:o===mb?PN(ne.query):ne.query||{}},te,{redirectedFrom:void 0,href:Z})}function C(ne){return typeof ne=="string"?Xf(n,ne,u.value.path):Xt({},ne)}function w(ne,ue){if(c!==ne)return us(gn.NAVIGATION_CANCELLED,{from:ue,to:ne})}function y(ne){return T(ne)}function k(ne){return y(Xt(C(ne),{replace:!0}))}function E(ne,ue){const Q=ne.matched[ne.matched.length-1];if(Q&&Q.redirect){const{redirect:te}=Q;let J=typeof te=="function"?te(ne,ue):te;return typeof J=="string"&&(J=J.includes("?")||J.includes("#")?J=C(J):{path:J},J.params={}),Xt({query:ne.query,hash:ne.hash,params:J.path!=null?{}:ne.params},J)}}function T(ne,ue){const Q=c=b(ne),te=u.value,J=ne.state,D=ne.force,Z=ne.replace===!0,se=E(Q,te);if(se)return T(Xt(C(se),{state:typeof se=="object"?Xt({},J,se.state):J,force:D,replace:Z}),ue||Q);const pe=Q;pe.redirectedFrom=ue;let he;return!D&&yN(o,te,Q)&&(he=us(gn.NAVIGATION_DUPLICATED,{to:pe,from:te}),W(te,te,!0,!1)),(he?Promise.resolve(he):M(pe,te)).catch(ve=>Ma(ve)?Ma(ve,gn.NAVIGATION_GUARD_REDIRECT)?ve:B(ve):L(ve,pe,te)).then(ve=>{if(ve){if(Ma(ve,gn.NAVIGATION_GUARD_REDIRECT))return T(Xt({replace:Z},C(ve.to),{state:typeof ve.to=="object"?Xt({},J,ve.to.state):J,force:D}),ue||pe)}else ve=R(pe,te,!0,Z,J);return O(pe,te,ve),ve})}function x(ne,ue){const Q=w(ne,ue);return Q?Promise.reject(Q):Promise.resolve()}function $(ne){const ue=oe.values().next().value;return ue&&typeof ue.runWithContext=="function"?ue.runWithContext(ne):ne()}function M(ne,ue){let Q;const[te,J,D]=AN(ne,ue);Q=Zf(te.reverse(),"beforeRouteLeave",ne,ue);for(const se of te)se.leaveGuards.forEach(pe=>{Q.push(kl(pe,ne,ue))});const Z=x.bind(null,ne,ue);return Q.push(Z),ce(Q).then(()=>{Q=[];for(const se of l.list())Q.push(kl(se,ne,ue));return Q.push(Z),ce(Q)}).then(()=>{Q=Zf(J,"beforeRouteUpdate",ne,ue);for(const se of J)se.updateGuards.forEach(pe=>{Q.push(kl(pe,ne,ue))});return Q.push(Z),ce(Q)}).then(()=>{Q=[];for(const se of D)if(se.beforeEnter)if(Go(se.beforeEnter))for(const pe of se.beforeEnter)Q.push(kl(pe,ne,ue));else Q.push(kl(se.beforeEnter,ne,ue));return Q.push(Z),ce(Q)}).then(()=>(ne.matched.forEach(se=>se.enterCallbacks={}),Q=Zf(D,"beforeRouteEnter",ne,ue,$),Q.push(Z),ce(Q))).then(()=>{Q=[];for(const se of r.list())Q.push(kl(se,ne,ue));return Q.push(Z),ce(Q)}).catch(se=>Ma(se,gn.NAVIGATION_CANCELLED)?se:Promise.reject(se))}function O(ne,ue,Q){i.list().forEach(te=>$(()=>te(ne,ue,Q)))}function R(ne,ue,Q,te,J){const D=w(ne,ue);if(D)return D;const Z=ue===pl,se=Vr?history.state:{};Q&&(te||Z?a.replace(ne.fullPath,Xt({scroll:Z&&se&&se.scroll},J)):a.push(ne.fullPath,J)),u.value=ne,W(ne,ue,Q,Z),B()}let H;function q(){H||(H=a.listen((ne,ue,Q)=>{if(!ae.listening)return;const te=b(ne),J=E(te,ae.currentRoute.value);if(J){T(Xt(J,{replace:!0,force:!0}),te).catch(fi);return}c=te;const D=u.value;Vr&&ON(hb(D.fullPath,Q.delta),qd()),M(te,D).catch(Z=>Ma(Z,gn.NAVIGATION_ABORTED|gn.NAVIGATION_CANCELLED)?Z:Ma(Z,gn.NAVIGATION_GUARD_REDIRECT)?(T(Xt(C(Z.to),{force:!0}),te).then(se=>{Ma(se,gn.NAVIGATION_ABORTED|gn.NAVIGATION_DUPLICATED)&&!Q.delta&&Q.type===Wp.pop&&a.go(-1,!1)}).catch(fi),Promise.reject()):(Q.delta&&a.go(-Q.delta,!1),L(Z,te,D))).then(Z=>{Z=Z||R(te,D,!1),Z&&(Q.delta&&!Ma(Z,gn.NAVIGATION_CANCELLED)?a.go(-Q.delta,!1):Q.type===Wp.pop&&Ma(Z,gn.NAVIGATION_ABORTED|gn.NAVIGATION_DUPLICATED)&&a.go(-1,!1)),O(te,D,Z)}).catch(fi)}))}let X=js(),P=js(),N;function L(ne,ue,Q){B(ne);const te=P.list();return te.length?te.forEach(J=>J(ne,ue,Q)):console.error(ne),Promise.reject(ne)}function z(){return N&&u.value!==pl?Promise.resolve():new Promise((ne,ue)=>{X.add([ne,ue])})}function B(ne){return N||(N=!ne,q(),X.list().forEach(([ue,Q])=>ne?Q(ne):ue()),X.reset()),ne}function W(ne,ue,Q,te){const{scrollBehavior:J}=e;if(!Vr||!J)return Promise.resolve();const D=!Q&&$N(hb(ne.fullPath,0))||(te||!Q)&&history.state&&history.state.scroll||null;return Me().then(()=>J(ne,ue,D)).then(Z=>Z&&TN(Z)).catch(Z=>L(Z,ne,ue))}const V=ne=>a.go(ne);let j;const oe=new Set,ae={currentRoute:u,listening:!0,addRoute:p,removeRoute:m,clearRoutes:t.clearRoutes,hasRoute:g,getRoutes:h,resolve:b,options:e,push:y,replace:k,go:V,back:()=>V(-1),forward:()=>V(1),beforeEach:l.add,beforeResolve:r.add,afterEach:i.add,onError:P.add,isReady:z,install(ne){ne.component("RouterLink",nR),ne.component("RouterView",rR),ne.config.globalProperties.$router=ae,Object.defineProperty(ne.config.globalProperties,"$route",{enumerable:!0,get:()=>s(u)}),Vr&&!j&&u.value===pl&&(j=!0,y(a.location).catch(te=>{}));const ue={};for(const te in pl)Object.defineProperty(ue,te,{get:()=>u.value[te],enumerable:!0});ne.provide(Yd,ae),ne.provide(Rh,Ld(ue)),ne.provide(Up,u);const Q=ne.unmount;oe.add(ne),ne.unmount=function(){oe.delete(ne),oe.size<1&&(c=pl,H&&H(),H=null,u.value=pl,j=!1,N=!1),Q()}}};function ce(ne){return ne.reduce((ue,Q)=>ue.then(()=>$(Q)),Promise.resolve())}return ae}function iR(){return Pe(Yd)}function uR(e){return Pe(Rh)}const cR="2.12.0",$b=Symbol("INSTALLED_KEY"),LC=Symbol(),pi="el",dR="is-",ql=(e,t,n,o,a)=>{let l=`${e}-${t}`;return n&&(l+=`-${n}`),o&&(l+=`__${o}`),a&&(l+=`--${a}`),l},DC=Symbol("namespaceContextKey"),xh=e=>{const t=e||(vt()?Pe(DC,A(pi)):A(pi));return S(()=>s(t)||pi)},be=(e,t)=>{const n=xh(t);return{namespace:n,b:(h="")=>ql(n.value,e,h,"",""),e:h=>h?ql(n.value,e,"",h,""):"",m:h=>h?ql(n.value,e,"","",h):"",be:(h,g)=>h&&g?ql(n.value,e,h,g,""):"",em:(h,g)=>h&&g?ql(n.value,e,"",h,g):"",bm:(h,g)=>h&&g?ql(n.value,e,h,"",g):"",bem:(h,g,b)=>h&&g&&b?ql(n.value,e,h,g,b):"",is:(h,...g)=>{const b=g.length>=1?g[0]:!0;return h&&b?`${dR}${h}`:""},cssVar:h=>{const g={};for(const b in h)h[b]&&(g[`--${n.value}-${b}`]=h[b]);return g},cssVarName:h=>`--${n.value}-${h}`,cssVarBlock:h=>{const g={};for(const b in h)h[b]&&(g[`--${n.value}-${e}-${b}`]=h[b]);return g},cssVarBlockName:h=>`--${n.value}-${e}-${h}`}};var BC=typeof global=="object"&&global&&global.Object===Object&&global,fR=typeof self=="object"&&self&&self.Object===Object&&self,na=BC||fR||Function("return this")(),Mo=na.Symbol,FC=Object.prototype,pR=FC.hasOwnProperty,vR=FC.toString,Us=Mo?Mo.toStringTag:void 0;function hR(e){var t=pR.call(e,Us),n=e[Us];try{e[Us]=void 0;var o=!0}catch{}var a=vR.call(e);return o&&(t?e[Us]=n:delete e[Us]),a}var mR=Object.prototype,gR=mR.toString;function bR(e){return gR.call(e)}var yR="[object Null]",wR="[object Undefined]",Nb=Mo?Mo.toStringTag:void 0;function _r(e){return e==null?e===void 0?wR:yR:Nb&&Nb in Object(e)?hR(e):bR(e)}function wa(e){return e!=null&&typeof e=="object"}var CR="[object Symbol]";function Gd(e){return typeof e=="symbol"||wa(e)&&_r(e)==CR}function Ih(e,t){for(var n=-1,o=e==null?0:e.length,a=Array(o);++n0){if(++t>=GR)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function QR(e){return function(){return e}}var Qc=(function(){try{var e=Or(Object,"defineProperty");return e({},"",{}),e}catch{}})(),ex=Qc?function(e,t){return Qc(e,"toString",{configurable:!0,enumerable:!1,value:QR(t),writable:!0})}:Ph,HC=ZR(ex);function tx(e,t){for(var n=-1,o=e==null?0:e.length;++n-1}var rx=9007199254740991,sx=/^(?:0|[1-9]\d*)$/;function Xd(e,t){var n=typeof e;return t=t??rx,!!t&&(n=="number"||n!="symbol"&&sx.test(e))&&e>-1&&e%1==0&&e-1&&e%1==0&&e<=cx}function Ns(e){return e!=null&&Dh(e.length)&&!Mh(e)}function dx(e,t,n){if(!lo(n))return!1;var o=typeof t;return(o=="number"?Ns(n)&&Xd(t,n.length):o=="string"&&t in n)?ru(n[t],e):!1}function fx(e){return jC(function(t,n){var o=-1,a=n.length,l=a>1?n[a-1]:void 0,r=a>2?n[2]:void 0;for(l=e.length>3&&typeof l=="function"?(a--,l):void 0,r&&dx(n[0],n[1],r)&&(l=a<3?void 0:l,a=1),t=Object(t);++o-1}function SI(e,t){var n=this.__data__,o=Jd(n,e);return o<0?(++this.size,n.push([e,t])):n[o][1]=t,this}function rl(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t0&&n(i)?t>1?uu(i,t-1,n,o,a):Hh(a,i):o||(a[a.length]=i)}return a}function JC(e){var t=e==null?0:e.length;return t?uu(e,1):[]}function ZC(e){return HC(WC(e,void 0,JC),e+"")}var Kh=XC(Object.getPrototypeOf,Object),DI="[object Object]",BI=Function.prototype,FI=Object.prototype,QC=BI.toString,VI=FI.hasOwnProperty,zI=QC.call(Object);function eS(e){if(!wa(e)||_r(e)!=DI)return!1;var t=Kh(e);if(t===null)return!0;var n=VI.call(t,"constructor")&&t.constructor;return typeof n=="function"&&n instanceof n&&QC.call(n)==zI}function HI(e,t,n){var o=-1,a=e.length;t<0&&(t=-t>a?0:a+t),n=n>a?a:n,n<0&&(n+=a),a=t>n?0:n-t>>>0,t>>>=0;for(var l=Array(a);++o=t?e:t)),e}function tf(e,t,n){return n===void 0&&(n=t,t=void 0),n!==void 0&&(n=vi(n),n=n===n?n:0),t!==void 0&&(t=vi(t),t=t===t?t:0),KI(vi(e),t,n)}function WI(){this.__data__=new rl,this.size=0}function jI(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function UI(e){return this.__data__.get(e)}function qI(e){return this.__data__.has(e)}var YI=200;function GI(e,t){var n=this.__data__;if(n instanceof rl){var o=n.__data__;if(!Pi||o.lengthi))return!1;var c=l.get(e),d=l.get(t);if(c&&d)return c==t&&d==e;var f=-1,v=!0,p=n&EM?new Mi:void 0;for(l.set(e,t),l.set(t,e);++f=t||T<0||f&&x>=l}function b(){var E=np();if(g(E))return C(E);i=setTimeout(b,h(E))}function C(E){return i=void 0,v&&o?p(E):(o=a=void 0,r)}function w(){i!==void 0&&clearTimeout(i),c=0,o=u=a=i=void 0}function y(){return i===void 0?r:C(np())}function k(){var E=np(),T=g(E);if(o=arguments,a=this,u=E,T){if(i===void 0)return m(u);if(f)return clearTimeout(i),i=setTimeout(b,t),p(u)}return i===void 0&&(i=setTimeout(b,t)),r}return k.cancel=w,k.flush=y,k}function Jp(e,t,n){(n!==void 0&&!ru(e[t],n)||n===void 0&&!(t in e))&&Ah(e,t,n)}function yS(e){return wa(e)&&Ns(e)}function Zp(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}function pA(e){return $s(e,iu(e))}function vA(e,t,n,o,a,l,r){var i=Zp(e,n),u=Zp(t,n),c=r.get(u);if(c){Jp(e,n,c);return}var d=l?l(i,u,n+"",e,t,r):void 0,f=d===void 0;if(f){var v=ao(u),p=!v&&xi(u),m=!v&&!p&&Vh(u);d=u,v||p||m?ao(i)?d=i:yS(i)?d=zC(i):p?(f=!1,d=nS(u,!0)):m?(f=!1,d=sS(u,!0)):d=[]:eS(u)||Ri(u)?(d=i,Ri(i)?d=pA(i):(!lo(i)||Mh(i))&&(d=iS(u))):f=!1}f&&(r.set(u,d),a(d,u,o,l,r),r.delete(u)),Jp(e,n,d)}function wS(e,t,n,o,a){e!==t&&bS(t,function(l,r){if(a||(a=new Wo),lo(l))vA(e,t,r,n,wS,o,a);else{var i=o?o(Zp(e,r),l,r+"",e,t,a):void 0;i===void 0&&(i=l),Jp(e,r,i)}},iu)}function hA(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}function CS(e,t,n){var o=e==null?0:e.length;if(!o)return-1;var a=o-1;return KC(e,gS(t),a,!0)}function mA(e,t){var n=-1,o=Ns(e)?Array(e.length):[];return uA(e,function(a,l,r){o[++n]=t(a,l,r)}),o}function gA(e,t){var n=ao(e)?Ih:mA;return n(e,gS(t))}function SS(e,t){return uu(gA(e,t),1)}var bA=1/0;function yA(e){var t=e==null?0:e.length;return t?uu(e,bA):[]}function Ai(e){for(var t=-1,n=e==null?0:e.length,o={};++t1),l}),$s(e,rS(e),n),o&&(n=Zr(n,EA|_A|TA,kA));for(var a=t.length;a--;)SA(n,t[a]);return n});function ES(e,t,n,o){if(!lo(e))return e;t=Rs(t,e);for(var a=-1,l=t.length,r=l-1,i=e;i!=null&&++a=PA){var c=IA(e);if(c)return Uh(c);r=!1,a=fS,u=new Mi}else u=i;e:for(;++oe===void 0,Lt=e=>typeof e=="boolean",Ge=e=>typeof e=="number",no=e=>!e&&e!==0||Se(e)&&e.length===0||it(e)&&!Object.keys(e).length,uo=e=>typeof Element>"u"?!1:e instanceof Element,co=e=>cn(e),AA=e=>ze(e)?!Number.isNaN(Number(e)):!1,du=e=>e===window;var LA=Object.defineProperty,DA=Object.defineProperties,BA=Object.getOwnPropertyDescriptors,ly=Object.getOwnPropertySymbols,FA=Object.prototype.hasOwnProperty,VA=Object.prototype.propertyIsEnumerable,ry=(e,t,n)=>t in e?LA(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,zA=(e,t)=>{for(var n in t||(t={}))FA.call(t,n)&&ry(e,n,t[n]);if(ly)for(var n of ly(t))VA.call(t,n)&&ry(e,n,t[n]);return e},HA=(e,t)=>DA(e,BA(t));function nd(e,t){var n;const o=jt();return _o(()=>{o.value=e()},HA(zA({},t),{flush:(n=void 0)!=null?n:"sync"})),vr(o)}var sy;const xt=typeof window<"u",KA=e=>typeof e<"u",Qp=e=>typeof e=="function",WA=e=>typeof e=="string",_S=(e,t,n)=>Math.min(n,Math.max(t,e)),ja=()=>{},od=xt&&((sy=window?.navigator)==null?void 0:sy.userAgent)&&/iP(ad|hone|od)/.test(window.navigator.userAgent);function Al(e){return typeof e=="function"?e():s(e)}function TS(e,t){function n(...o){return new Promise((a,l)=>{Promise.resolve(e(()=>t.apply(this,o),{fn:t,thisArg:this,args:o})).then(a).catch(l)})}return n}function jA(e,t={}){let n,o,a=ja;const l=i=>{clearTimeout(i),a(),a=ja};return i=>{const u=Al(e),c=Al(t.maxWait);return n&&l(n),u<=0||c!==void 0&&c<=0?(o&&(l(o),o=null),Promise.resolve(i())):new Promise((d,f)=>{a=t.rejectOnCancel?f:d,c&&!o&&(o=setTimeout(()=>{n&&l(n),o=null,d(i())},c)),n=setTimeout(()=>{o&&l(o),o=null,d(i())},u)})}}function UA(e,t=!0,n=!0,o=!1){let a=0,l,r=!0,i=ja,u;const c=()=>{l&&(clearTimeout(l),l=void 0,i(),i=ja)};return f=>{const v=Al(e),p=Date.now()-a,m=()=>u=f();return c(),v<=0?(a=Date.now(),m()):(p>v&&(n||!r)?(a=Date.now(),m()):t&&(u=new Promise((h,g)=>{i=o?g:h,l=setTimeout(()=>{a=Date.now(),r=!0,h(m()),c()},Math.max(0,v-p))})),!n&&!l&&(l=setTimeout(()=>r=!0,v)),r=!1,u)}}function qA(e){return e}function YA(e,t){let n,o,a;const l=A(!0),r=()=>{l.value=!0,a()};fe(e,r,{flush:"sync"});const i=Qp(t)?t:t.get,u=Qp(t)?void 0:t.set,c=uO((d,f)=>(o=d,a=f,{get(){return l.value&&(n=i(),l.value=!1),o(),n},set(v){u?.(v)}}));return Object.isExtensible(c)&&(c.trigger=r),c}function Is(e){return fh()?(ph(e),!0):!1}function GA(e){if(!Ht(e))return Ot(e);const t=new Proxy({},{get(n,o,a){return s(Reflect.get(e.value,o,a))},set(n,o,a){return Ht(e.value[o])&&!Ht(a)?e.value[o].value=a:e.value[o]=a,!0},deleteProperty(n,o){return Reflect.deleteProperty(e.value,o)},has(n,o){return Reflect.has(e.value,o)},ownKeys(){return Object.keys(e.value)},getOwnPropertyDescriptor(){return{enumerable:!0,configurable:!0}}});return Ot(t)}function XA(e){return GA(S(e))}function fu(e,t=200,n={}){return TS(jA(t,n),e)}function JA(e,t=200,n={}){const o=A(e.value),a=fu(()=>{o.value=e.value},t,n);return fe(e,()=>a()),o}function OS(e,t=200,n=!1,o=!0,a=!1){return TS(UA(t,n,o,a),e)}function qh(e,t=!0){vt()?mt(e):t?e():Me(e)}function ds(e,t,n={}){const{immediate:o=!0}=n,a=A(!1);let l=null;function r(){l&&(clearTimeout(l),l=null)}function i(){a.value=!1,r()}function u(...c){r(),a.value=!0,l=setTimeout(()=>{a.value=!1,l=null,e(...c)},Al(t))}return o&&(a.value=!0,xt&&u()),Is(i),{isPending:vr(a),start:u,stop:i}}function _n(e){var t;const n=Al(e);return(t=n?.$el)!=null?t:n}const Ta=xt?window:void 0,ZA=xt?window.document:void 0;function It(...e){let t,n,o,a;if(WA(e[0])||Array.isArray(e[0])?([n,o,a]=e,t=Ta):[t,n,o,a]=e,!t)return ja;Array.isArray(n)||(n=[n]),Array.isArray(o)||(o=[o]);const l=[],r=()=>{l.forEach(d=>d()),l.length=0},i=(d,f,v,p)=>(d.addEventListener(f,v,p),()=>d.removeEventListener(f,v,p)),u=fe(()=>[_n(t),Al(a)],([d,f])=>{r(),d&&l.push(...n.flatMap(v=>o.map(p=>i(d,v,p,f))))},{immediate:!0,flush:"post"}),c=()=>{u(),r()};return Is(c),c}let iy=!1;function Yh(e,t,n={}){const{window:o=Ta,ignore:a=[],capture:l=!0,detectIframe:r=!1}=n;if(!o)return;od&&!iy&&(iy=!0,Array.from(o.document.body.children).forEach(v=>v.addEventListener("click",ja)));let i=!0;const u=v=>a.some(p=>{if(typeof p=="string")return Array.from(o.document.querySelectorAll(p)).some(m=>m===v.target||v.composedPath().includes(m));{const m=_n(p);return m&&(v.target===m||v.composedPath().includes(m))}}),d=[It(o,"click",v=>{const p=_n(e);if(!(!p||p===v.target||v.composedPath().includes(p))){if(v.detail===0&&(i=!u(v)),!i){i=!0;return}t(v)}},{passive:!0,capture:l}),It(o,"pointerdown",v=>{const p=_n(e);p&&(i=!v.composedPath().includes(p)&&!u(v))},{passive:!0}),r&&It(o,"blur",v=>{var p;const m=_n(e);((p=o.document.activeElement)==null?void 0:p.tagName)==="IFRAME"&&!m?.contains(o.document.activeElement)&&t(v)})].filter(Boolean);return()=>d.forEach(v=>v())}function QA(e={}){var t;const{window:n=Ta}=e,o=(t=e.document)!=null?t:n?.document,a=YA(()=>null,()=>o?.activeElement);return n&&(It(n,"blur",l=>{l.relatedTarget===null&&a.trigger()},!0),It(n,"focus",a.trigger,!0)),a}function Gh(e,t=!1){const n=A(),o=()=>n.value=!!e();return o(),qh(o,t),n}function e4(e){return JSON.parse(JSON.stringify(e))}const uy=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},cy="__vueuse_ssr_handlers__";uy[cy]=uy[cy]||{};function t4(e,t,{window:n=Ta,initialValue:o=""}={}){const a=A(o),l=S(()=>{var r;return _n(t)||((r=n?.document)==null?void 0:r.documentElement)});return fe([l,()=>Al(e)],([r,i])=>{var u;if(r&&n){const c=(u=n.getComputedStyle(r).getPropertyValue(i))==null?void 0:u.trim();a.value=c||o}},{immediate:!0}),fe(a,r=>{var i;(i=l.value)!=null&&i.style&&l.value.style.setProperty(Al(e),r)}),a}function n4({document:e=ZA}={}){if(!e)return A("visible");const t=A(e.visibilityState);return It(e,"visibilitychange",()=>{t.value=e.visibilityState}),t}var dy=Object.getOwnPropertySymbols,o4=Object.prototype.hasOwnProperty,a4=Object.prototype.propertyIsEnumerable,l4=(e,t)=>{var n={};for(var o in e)o4.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(e!=null&&dy)for(var o of dy(e))t.indexOf(o)<0&&a4.call(e,o)&&(n[o]=e[o]);return n};function Yt(e,t,n={}){const o=n,{window:a=Ta}=o,l=l4(o,["window"]);let r;const i=Gh(()=>a&&"ResizeObserver"in a),u=()=>{r&&(r.disconnect(),r=void 0)},c=fe(()=>_n(e),f=>{u(),i.value&&a&&f&&(r=new ResizeObserver(t),r.observe(f,l))},{immediate:!0,flush:"post"}),d=()=>{u(),c()};return Is(d),{isSupported:i,stop:d}}function fy(e,t={}){const{reset:n=!0,windowResize:o=!0,windowScroll:a=!0,immediate:l=!0}=t,r=A(0),i=A(0),u=A(0),c=A(0),d=A(0),f=A(0),v=A(0),p=A(0);function m(){const h=_n(e);if(!h){n&&(r.value=0,i.value=0,u.value=0,c.value=0,d.value=0,f.value=0,v.value=0,p.value=0);return}const g=h.getBoundingClientRect();r.value=g.height,i.value=g.bottom,u.value=g.left,c.value=g.right,d.value=g.top,f.value=g.width,v.value=g.x,p.value=g.y}return Yt(e,m),fe(()=>_n(e),h=>!h&&m()),a&&It("scroll",m,{capture:!0,passive:!0}),o&&It("resize",m,{passive:!0}),qh(()=>{l&&m()}),{height:r,bottom:i,left:u,right:c,top:d,width:f,x:v,y:p,update:m}}function ev(e,t={width:0,height:0},n={}){const{window:o=Ta,box:a="content-box"}=n,l=S(()=>{var u,c;return(c=(u=_n(e))==null?void 0:u.namespaceURI)==null?void 0:c.includes("svg")}),r=A(t.width),i=A(t.height);return Yt(e,([u])=>{const c=a==="border-box"?u.borderBoxSize:a==="content-box"?u.contentBoxSize:u.devicePixelContentBoxSize;if(o&&l.value){const d=_n(e);if(d){const f=o.getComputedStyle(d);r.value=parseFloat(f.width),i.value=parseFloat(f.height)}}else if(c){const d=Array.isArray(c)?c:[c];r.value=d.reduce((f,{inlineSize:v})=>f+v,0),i.value=d.reduce((f,{blockSize:v})=>f+v,0)}else r.value=u.contentRect.width,i.value=u.contentRect.height},n),fe(()=>_n(e),u=>{r.value=u?t.width:0,i.value=u?t.height:0}),{width:r,height:i}}function r4(e,t,n={}){const{root:o,rootMargin:a="0px",threshold:l=.1,window:r=Ta}=n,i=Gh(()=>r&&"IntersectionObserver"in r);let u=ja;const c=i.value?fe(()=>({el:_n(e),root:_n(o)}),({el:f,root:v})=>{if(u(),!f)return;const p=new IntersectionObserver(t,{root:v,rootMargin:a,threshold:l});p.observe(f),u=()=>{p.disconnect(),u=ja}},{immediate:!0,flush:"post"}):ja,d=()=>{u(),c()};return Is(d),{isSupported:i,stop:d}}var py=Object.getOwnPropertySymbols,s4=Object.prototype.hasOwnProperty,i4=Object.prototype.propertyIsEnumerable,u4=(e,t)=>{var n={};for(var o in e)s4.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(e!=null&&py)for(var o of py(e))t.indexOf(o)<0&&i4.call(e,o)&&(n[o]=e[o]);return n};function $S(e,t,n={}){const o=n,{window:a=Ta}=o,l=u4(o,["window"]);let r;const i=Gh(()=>a&&"MutationObserver"in a),u=()=>{r&&(r.disconnect(),r=void 0)},c=fe(()=>_n(e),f=>{u(),i.value&&a&&f&&(r=new MutationObserver(t),r.observe(f,l))},{immediate:!0}),d=()=>{u(),c()};return Is(d),{isSupported:i,stop:d}}var vy;(function(e){e.UP="UP",e.RIGHT="RIGHT",e.DOWN="DOWN",e.LEFT="LEFT",e.NONE="NONE"})(vy||(vy={}));var c4=Object.defineProperty,hy=Object.getOwnPropertySymbols,d4=Object.prototype.hasOwnProperty,f4=Object.prototype.propertyIsEnumerable,my=(e,t,n)=>t in e?c4(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,p4=(e,t)=>{for(var n in t||(t={}))d4.call(t,n)&&my(e,n,t[n]);if(hy)for(var n of hy(t))f4.call(t,n)&&my(e,n,t[n]);return e};const v4={easeInSine:[.12,0,.39,0],easeOutSine:[.61,1,.88,1],easeInOutSine:[.37,0,.63,1],easeInQuad:[.11,0,.5,0],easeOutQuad:[.5,1,.89,1],easeInOutQuad:[.45,0,.55,1],easeInCubic:[.32,0,.67,0],easeOutCubic:[.33,1,.68,1],easeInOutCubic:[.65,0,.35,1],easeInQuart:[.5,0,.75,0],easeOutQuart:[.25,1,.5,1],easeInOutQuart:[.76,0,.24,1],easeInQuint:[.64,0,.78,0],easeOutQuint:[.22,1,.36,1],easeInOutQuint:[.83,0,.17,1],easeInExpo:[.7,0,.84,0],easeOutExpo:[.16,1,.3,1],easeInOutExpo:[.87,0,.13,1],easeInCirc:[.55,0,1,.45],easeOutCirc:[0,.55,.45,1],easeInOutCirc:[.85,0,.15,1],easeInBack:[.36,0,.66,-.56],easeOutBack:[.34,1.56,.64,1],easeInOutBack:[.68,-.6,.32,1.6]};p4({linear:qA},v4);function NS(e,t,n,o={}){var a,l,r;const{clone:i=!1,passive:u=!1,eventName:c,deep:d=!1,defaultValue:f}=o,v=vt(),p=n||v?.emit||((a=v?.$emit)==null?void 0:a.bind(v))||((r=(l=v?.proxy)==null?void 0:l.$emit)==null?void 0:r.bind(v?.proxy));let m=c;t||(t="modelValue"),m=c||m||`update:${t.toString()}`;const h=b=>i?Qp(i)?i(b):e4(b):b,g=()=>KA(e[t])?h(e[t]):f;if(u){const b=g(),C=A(b);return fe(()=>e[t],w=>C.value=h(w)),fe(C,w=>{(w!==e[t]||d)&&p(m,w)},{deep:d}),C}else return S({get(){return g()},set(b){p(m,b)}})}function h4({window:e=Ta}={}){if(!e)return A(!1);const t=A(e.document.hasFocus());return It(e,"blur",()=>{t.value=!1}),It(e,"focus",()=>{t.value=!0}),t}function Xh(e={}){const{window:t=Ta,initialWidth:n=1/0,initialHeight:o=1/0,listenOrientation:a=!0,includeScrollbar:l=!0}=e,r=A(n),i=A(o),u=()=>{t&&(l?(r.value=t.innerWidth,i.value=t.innerHeight):(r.value=t.document.documentElement.clientWidth,i.value=t.document.documentElement.clientHeight))};return u(),qh(u),It("resize",u,{passive:!0}),a&&It("orientationchange",u,{passive:!0}),{width:r,height:i}}class m4 extends Error{constructor(t){super(t),this.name="ElementPlusError"}}function fn(e,t){throw new m4(`[${e}] ${t}`)}const gy={current:0},by=A(0),RS=2e3,yy=Symbol("elZIndexContextKey"),xS=Symbol("zIndexContextKey"),pu=e=>{const t=vt()?Pe(yy,gy):gy,n=e||(vt()?Pe(xS,void 0):void 0),o=S(()=>{const r=s(n);return Ge(r)?r:RS}),a=S(()=>o.value+by.value),l=()=>(t.current++,by.value=t.current,a.value);return!xt&&Pe(yy),{initialZIndex:o,currentZIndex:a,nextZIndex:l}};var g4={name:"en",el:{breadcrumb:{label:"Breadcrumb"},colorpicker:{confirm:"OK",clear:"Clear",defaultLabel:"color picker",description:"current color is {color}. press enter to select a new color.",alphaLabel:"pick alpha value",alphaDescription:"alpha {alpha}, current color is {color}",hueLabel:"pick hue value",hueDescription:"hue {hue}, current color is {color}",svLabel:"pick saturation and brightness value",svDescription:"saturation {saturation}, brightness {brightness}, current color is {color}",predefineDescription:"select {value} as the color"},datepicker:{now:"Now",today:"Today",cancel:"Cancel",clear:"Clear",confirm:"OK",dateTablePrompt:"Use the arrow keys and enter to select the day of the month",monthTablePrompt:"Use the arrow keys and enter to select the month",yearTablePrompt:"Use the arrow keys and enter to select the year",selectedDate:"Selected date",selectDate:"Select date",selectTime:"Select time",startDate:"Start Date",startTime:"Start Time",endDate:"End Date",endTime:"End Time",prevYear:"Previous Year",nextYear:"Next Year",prevMonth:"Previous Month",nextMonth:"Next Month",year:"",month1:"January",month2:"February",month3:"March",month4:"April",month5:"May",month6:"June",month7:"July",month8:"August",month9:"September",month10:"October",month11:"November",month12:"December",weeks:{sun:"Sun",mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat"},weeksFull:{sun:"Sunday",mon:"Monday",tue:"Tuesday",wed:"Wednesday",thu:"Thursday",fri:"Friday",sat:"Saturday"},months:{jan:"Jan",feb:"Feb",mar:"Mar",apr:"Apr",may:"May",jun:"Jun",jul:"Jul",aug:"Aug",sep:"Sep",oct:"Oct",nov:"Nov",dec:"Dec"}},inputNumber:{decrease:"decrease number",increase:"increase number"},select:{loading:"Loading",noMatch:"No matching data",noData:"No data",placeholder:"Select"},mention:{loading:"Loading"},dropdown:{toggleDropdown:"Toggle Dropdown"},cascader:{noMatch:"No matching data",loading:"Loading",placeholder:"Select",noData:"No data"},pagination:{goto:"Go to",pagesize:"/page",total:"Total {total}",pageClassifier:"",page:"Page",prev:"Go to previous page",next:"Go to next page",currentPage:"page {pager}",prevPages:"Previous {pager} pages",nextPages:"Next {pager} pages",deprecationWarning:"Deprecated usages detected, please refer to the el-pagination documentation for more details"},dialog:{close:"Close this dialog"},drawer:{close:"Close this dialog"},messagebox:{title:"Message",confirm:"OK",cancel:"Cancel",error:"Illegal input",close:"Close this dialog"},upload:{deleteTip:"press delete to remove",delete:"Delete",preview:"Preview",continue:"Continue"},slider:{defaultLabel:"slider between {min} and {max}",defaultRangeStartLabel:"pick start value",defaultRangeEndLabel:"pick end value"},table:{emptyText:"No Data",confirmFilter:"Confirm",resetFilter:"Reset",clearFilter:"All",sumText:"Sum",selectAllLabel:"Select all rows",selectRowLabel:"Select this row",expandRowLabel:"Expand this row",collapseRowLabel:"Collapse this row",sortLabel:"Sort by {column}",filterLabel:"Filter by {column}"},tag:{close:"Close this tag"},tour:{next:"Next",previous:"Previous",finish:"Finish",close:"Close this dialog"},tree:{emptyText:"No Data"},transfer:{noMatch:"No matching data",noData:"No data",titles:["List 1","List 2"],filterPlaceholder:"Enter keyword",noCheckedFormat:"{total} items",hasCheckedFormat:"{checked}/{total} checked"},image:{error:"FAILED"},pageHeader:{title:"Back"},popconfirm:{confirmButtonText:"Yes",cancelButtonText:"No"},carousel:{leftArrow:"Carousel arrow left",rightArrow:"Carousel arrow right",indicator:"Carousel switch to index {index}"}}};const b4=e=>(t,n)=>y4(t,n,s(e)),y4=(e,t,n)=>dn(n,e,e).replace(/\{(\w+)\}/g,(o,a)=>{var l;return`${(l=t?.[a])!=null?l:`{${a}}`}`}),w4=e=>{const t=S(()=>s(e).name),n=Ht(e)?e:A(e);return{lang:t,locale:n,t:b4(e)}},IS=Symbol("localeContextKey"),kt=e=>{const t=e||Pe(IS,A());return w4(S(()=>t.value||g4))},PS="__epPropKey",ee=e=>e,C4=e=>it(e)&&!!e[PS],oa=(e,t)=>{if(!it(e)||C4(e))return e;const{values:n,required:o,default:a,type:l,validator:r}=e,u={type:l,required:!!o,validator:n||r?c=>{let d=!1,f=[];if(n&&(f=Array.from(n),Rt(e,"default")&&f.push(a),d||(d=f.includes(c))),r&&(d||(d=r(c))),!d&&f.length>0){const v=[...new Set(f)].map(p=>JSON.stringify(p)).join(", ");g$(`Invalid prop: validation failed${t?` for prop "${t}"`:""}. Expected one of [${v}], got value ${JSON.stringify(c)}.`)}return d}:void 0,[PS]:!0};return Rt(e,"default")&&(u.default=a),u},Ee=e=>Ai(Object.entries(e).map(([t,n])=>[t,oa(n,t)])),Oa=["","default","small","large"],bn=oa({type:String,values:Oa,required:!1}),MS=Symbol("size"),AS=()=>{const e=Pe(MS,{});return S(()=>s(e.size)||"")},LS=Symbol("emptyValuesContextKey"),S4=["",void 0,null],k4=void 0,$r=Ee({emptyValues:Array,valueOnClear:{type:ee([String,Number,Boolean,Function]),default:void 0,validator:e=>(e=qe(e)?e():e,Se(e)?e.every(t=>!t):!e)}}),vu=(e,t)=>{const n=vt()?Pe(LS,A({})):A({}),o=S(()=>e.emptyValues||n.value.emptyValues||S4),a=S(()=>qe(e.valueOnClear)?e.valueOnClear():e.valueOnClear!==void 0?e.valueOnClear:qe(n.value.valueOnClear)?n.value.valueOnClear():n.value.valueOnClear!==void 0?n.value.valueOnClear:t!==void 0?t:k4),l=r=>{let i=!0;return Se(r)?i=o.value.some(u=>nn(r,u)):i=o.value.includes(r),i};return l(a.value),{emptyValues:o,valueOnClear:a,isEmptyValue:l}},Li=e=>Object.keys(e),DS=e=>Object.entries(e),mi=(e,t,n)=>({get value(){return dn(e,t,n)},set value(o){NA(e,t,o)}}),ad=A();function Ps(e,t=void 0){const n=vt()?Pe(LC,ad):ad;return e?S(()=>{var o,a;return(a=(o=n.value)==null?void 0:o[e])!=null?a:t}):n}function af(e,t){const n=Ps(),o=be(e,S(()=>{var i;return((i=n.value)==null?void 0:i.namespace)||pi})),a=kt(S(()=>{var i;return(i=n.value)==null?void 0:i.locale})),l=pu(S(()=>{var i;return((i=n.value)==null?void 0:i.zIndex)||RS})),r=S(()=>{var i;return s(t)||((i=n.value)==null?void 0:i.size)||""});return Jh(S(()=>s(n)||{})),{ns:o,locale:a,zIndex:l,size:r}}const Jh=(e,t,n=!1)=>{var o;const a=!!vt(),l=a?Ps():void 0,r=(o=t?.provide)!=null?o:a?wt:void 0;if(!r)return;const i=S(()=>{const u=s(e);return l?.value?E4(l.value,u):u});return r(LC,i),r(IS,S(()=>i.value.locale)),r(DC,S(()=>i.value.namespace)),r(xS,S(()=>i.value.zIndex)),r(MS,{size:S(()=>i.value.size||"")}),r(LS,S(()=>({emptyValues:i.value.emptyValues,valueOnClear:i.value.valueOnClear}))),(n||!ad.value)&&(ad.value=i.value),i},E4=(e,t)=>{const n=[...new Set([...Li(e),...Li(t)])],o={};for(const a of n)o[a]=t[a]!==void 0?t[a]:e[a];return o},_4=(e=[])=>({version:cR,install:(n,o)=>{n[$b]||(n[$b]=!0,e.forEach(a=>n.use(a)),o&&Jh(o,n,!0))}}),et="update:modelValue",yt="change",pn="input",T4=Ee({zIndex:{type:ee([Number,String]),default:100},target:{type:String,default:""},offset:{type:Number,default:0},position:{type:String,values:["top","bottom"],default:"top"}}),O4={scroll:({scrollTop:e,fixed:t})=>Ge(e)&&Lt(t),[yt]:e=>Lt(e)};var Oe=(e,t)=>{const n=e.__vccOpts||e;for(const[o,a]of t)n[o]=a;return n};function $4(e,t,n,o){const a=n-t;return e/=o/2,e<1?a/2*e*e*e+t:a/2*((e-=2)*e*e+2)+t}const Za=e=>xt?window.requestAnimationFrame(e):setTimeout(e,16),Qa=e=>xt?window.cancelAnimationFrame(e):clearTimeout(e),BS=(e="")=>e.split(" ").filter(t=>!!t.trim()),ha=(e,t)=>{if(!e||!t)return!1;if(t.includes(" "))throw new Error("className should not contain space.");return e.classList.contains(t)},xo=(e,t)=>{!e||!t.trim()||e.classList.add(...BS(t))},Yn=(e,t)=>{!e||!t.trim()||e.classList.remove(...BS(t))},za=(e,t)=>{var n;if(!xt||!e||!t)return"";let o=oo(t);o==="float"&&(o="cssFloat");try{const a=e.style[o];if(a)return a;const l=(n=document.defaultView)==null?void 0:n.getComputedStyle(e,"");return l?l[o]:""}catch{return e.style[o]}},FS=(e,t,n)=>{if(!(!e||!t))if(it(t))DS(t).forEach(([o,a])=>FS(e,o,a));else{const o=oo(t);e.style[o]=n}};function Qt(e,t="px"){if(!e&&e!==0)return"";if(Ge(e)||AA(e))return`${e}${t}`;if(ze(e))return e}const N4=(e,t)=>{if(!xt)return!1;const n={undefined:"overflow",true:"overflow-y",false:"overflow-x"}[String(t)],o=za(e,n);return["scroll","auto","overlay"].some(a=>o.includes(a))},Zh=(e,t)=>{if(!xt)return;let n=e;for(;n;){if([window,document,document.documentElement].includes(n))return window;if(N4(n,t))return n;n=n.parentNode}return n};let ju;const VS=e=>{var t;if(!xt)return 0;if(ju!==void 0)return ju;const n=document.createElement("div");n.className=`${e}-scrollbar__wrap`,n.style.visibility="hidden",n.style.width="100px",n.style.position="absolute",n.style.top="-9999px",document.body.appendChild(n);const o=n.offsetWidth;n.style.overflow="scroll";const a=document.createElement("div");a.style.width="100%",n.appendChild(a);const l=a.offsetWidth;return(t=n.parentNode)==null||t.removeChild(n),ju=o-l,ju};function Qh(e,t){if(!xt)return;if(!t){e.scrollTop=0;return}const n=[];let o=t.offsetParent;for(;o!==null&&e!==o&&e.contains(o);)n.push(o),o=o.offsetParent;const a=t.offsetTop+n.reduce((u,c)=>u+c.offsetTop,0),l=a+t.offsetHeight,r=e.scrollTop,i=r+e.clientHeight;ai&&(e.scrollTop=l-e.clientHeight)}function R4(e,t,n,o,a){const l=Date.now();let r;const i=()=>{const c=Date.now()-l,d=$4(c>o?o:c,t,n,o);du(e)?e.scrollTo(window.pageXOffset,d):e.scrollTop=d,c{r&&Qa(r)}}const wy=(e,t)=>du(t)?e.ownerDocument.documentElement:t,Cy=e=>du(e)?window.scrollY:e.scrollTop,zS="ElAffix",x4=G({name:zS}),I4=G({...x4,props:T4,emits:O4,setup(e,{expose:t,emit:n}){const o=e,a=be("affix"),l=jt(),r=jt(),i=jt(),{height:u}=Xh(),{height:c,width:d,top:f,bottom:v,update:p}=fy(r,{windowScroll:!1}),m=fy(l),h=A(!1),g=A(0),b=A(0),C=S(()=>({height:h.value?`${c.value}px`:"",width:h.value?`${d.value}px`:""})),w=S(()=>{if(!h.value)return{};const T=Qt(o.offset);return{height:`${c.value}px`,width:`${d.value}px`,top:o.position==="top"?T:"",bottom:o.position==="bottom"?T:"",transform:b.value?`translateY(${b.value}px)`:"",zIndex:o.zIndex}}),y=()=>{if(!i.value)return;g.value=i.value instanceof Window?document.documentElement.scrollTop:i.value.scrollTop||0;const{position:T,target:x,offset:$}=o,M=$+c.value;if(T==="top")if(x){const O=m.bottom.value-M;h.value=$>f.value&&m.bottom.value>0,b.value=O<0?O:0}else h.value=$>f.value;else if(x){const O=u.value-m.top.value-M;h.value=u.value-$m.top.value,b.value=O<0?-O:0}else h.value=u.value-${if(!h.value){p();return}h.value=!1,await Me(),p(),h.value=!0},E=async()=>{p(),await Me(),n("scroll",{scrollTop:g.value,fixed:h.value})};return fe(h,T=>n(yt,T)),mt(()=>{var T;o.target?(l.value=(T=document.querySelector(o.target))!=null?T:void 0,l.value||fn(zS,`Target does not exist: ${o.target}`)):l.value=document.documentElement,i.value=Zh(r.value,!0),p()}),It(i,"scroll",E),_o(y),t({update:y,updateRoot:k}),(T,x)=>(_(),F("div",{ref_key:"root",ref:r,class:I(s(a).b()),style:Ye(s(C))},[K("div",{class:I({[s(a).m("fixed")]:h.value}),style:Ye(s(w))},[re(T.$slots,"default")],6)],6))}});var P4=Oe(I4,[["__file","affix.vue"]]);const rt=(e,t)=>{if(e.install=n=>{for(const o of[e,...Object.values(t??{})])n.component(o.name,o)},t)for(const[n,o]of Object.entries(t))e[n]=o;return e},HS=(e,t)=>(e.install=n=>{e._context=n._context,n.config.globalProperties[t]=e},e),M4=(e,t)=>(e.install=n=>{n.directive(t,e)},e),en=e=>(e.install=Mt,e),A4=rt(P4),L4=Ee({size:{type:ee([Number,String])},color:{type:String}}),D4=G({name:"ElIcon",inheritAttrs:!1}),B4=G({...D4,props:L4,setup(e){const t=e,n=be("icon"),o=S(()=>{const{size:a,color:l}=t,r=Qt(a);return!r&&!l?{}:{fontSize:r,"--color":l}});return(a,l)=>(_(),F("i",ht({class:s(n).b(),style:s(o)},a.$attrs),[re(a.$slots,"default")],16))}});var F4=Oe(B4,[["__file","icon.vue"]]);const Ve=rt(F4);var V4=G({name:"ArrowDown",__name:"arrow-down",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M831.872 340.864 512 652.672 192.128 340.864a30.59 30.59 0 0 0-42.752 0 29.12 29.12 0 0 0 0 41.6L489.664 714.24a32 32 0 0 0 44.672 0l340.288-331.712a29.12 29.12 0 0 0 0-41.728 30.59 30.59 0 0 0-42.752 0z"})]))}}),$a=V4,z4=G({name:"ArrowLeft",__name:"arrow-left",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M609.408 149.376 277.76 489.6a32 32 0 0 0 0 44.672l331.648 340.352a29.12 29.12 0 0 0 41.728 0 30.59 30.59 0 0 0 0-42.752L339.264 511.936l311.872-319.872a30.59 30.59 0 0 0 0-42.688 29.12 29.12 0 0 0-41.728 0"})]))}}),el=z4,H4=G({name:"ArrowRight",__name:"arrow-right",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M340.864 149.312a30.59 30.59 0 0 0 0 42.752L652.736 512 340.864 831.872a30.59 30.59 0 0 0 0 42.752 29.12 29.12 0 0 0 41.728 0L714.24 534.336a32 32 0 0 0 0-44.672L382.592 149.376a29.12 29.12 0 0 0-41.728 0z"})]))}}),Gn=H4,K4=G({name:"ArrowUp",__name:"arrow-up",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"m488.832 344.32-339.84 356.672a32 32 0 0 0 0 44.16l.384.384a29.44 29.44 0 0 0 42.688 0l320-335.872 319.872 335.872a29.44 29.44 0 0 0 42.688 0l.384-.384a32 32 0 0 0 0-44.16L535.168 344.32a32 32 0 0 0-46.336 0"})]))}}),lf=K4,W4=G({name:"Back",__name:"back",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M224 480h640a32 32 0 1 1 0 64H224a32 32 0 0 1 0-64"}),K("path",{fill:"currentColor",d:"m237.248 512 265.408 265.344a32 32 0 0 1-45.312 45.312l-288-288a32 32 0 0 1 0-45.312l288-288a32 32 0 1 1 45.312 45.312z"})]))}}),j4=W4,U4=G({name:"Calendar",__name:"calendar",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M128 384v512h768V192H768v32a32 32 0 1 1-64 0v-32H320v32a32 32 0 0 1-64 0v-32H128v128h768v64zm192-256h384V96a32 32 0 1 1 64 0v32h160a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h160V96a32 32 0 0 1 64 0zm-32 384h64a32 32 0 0 1 0 64h-64a32 32 0 0 1 0-64m0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64m192-192h64a32 32 0 0 1 0 64h-64a32 32 0 0 1 0-64m0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64m192-192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64m0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64"})]))}}),KS=U4,q4=G({name:"Camera",__name:"camera",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M896 256H128v576h768zm-199.424-64-32.064-64h-304.96l-32 64zM96 192h160l46.336-92.608A64 64 0 0 1 359.552 64h304.96a64 64 0 0 1 57.216 35.328L768.192 192H928a32 32 0 0 1 32 32v640a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V224a32 32 0 0 1 32-32m416 512a160 160 0 1 0 0-320 160 160 0 0 0 0 320m0 64a224 224 0 1 1 0-448 224 224 0 0 1 0 448"})]))}}),Y4=q4,G4=G({name:"CaretRight",__name:"caret-right",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M384 192v640l384-320.064z"})]))}}),WS=G4,X4=G({name:"CaretTop",__name:"caret-top",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M512 320 192 704h639.936z"})]))}}),J4=X4,Z4=G({name:"Check",__name:"check",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M406.656 706.944 195.84 496.256a32 32 0 1 0-45.248 45.248l256 256 512-512a32 32 0 0 0-45.248-45.248L406.592 706.944z"})]))}}),hu=Z4,Q4=G({name:"CircleCheckFilled",__name:"circle-check-filled",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m-55.808 536.384-99.52-99.584a38.4 38.4 0 1 0-54.336 54.336l126.72 126.72a38.27 38.27 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336z"})]))}}),e3=Q4,t3=G({name:"CircleCheck",__name:"circle-check",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768m0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896"}),K("path",{fill:"currentColor",d:"M745.344 361.344a32 32 0 0 1 45.312 45.312l-288 288a32 32 0 0 1-45.312 0l-160-160a32 32 0 1 1 45.312-45.312L480 626.752z"})]))}}),em=t3,n3=G({name:"CircleCloseFilled",__name:"circle-close-filled",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m0 393.664L407.936 353.6a38.4 38.4 0 1 0-54.336 54.336L457.664 512 353.6 616.064a38.4 38.4 0 1 0 54.336 54.336L512 566.336 616.064 670.4a38.4 38.4 0 1 0 54.336-54.336L566.336 512 670.4 407.936a38.4 38.4 0 1 0-54.336-54.336z"})]))}}),tm=n3,o3=G({name:"CircleClose",__name:"circle-close",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"m466.752 512-90.496-90.496a32 32 0 0 1 45.248-45.248L512 466.752l90.496-90.496a32 32 0 1 1 45.248 45.248L557.248 512l90.496 90.496a32 32 0 1 1-45.248 45.248L512 557.248l-90.496 90.496a32 32 0 0 1-45.248-45.248z"}),K("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768m0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896"})]))}}),il=o3,a3=G({name:"Clock",__name:"clock",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768m0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896"}),K("path",{fill:"currentColor",d:"M480 256a32 32 0 0 1 32 32v256a32 32 0 0 1-64 0V288a32 32 0 0 1 32-32"}),K("path",{fill:"currentColor",d:"M480 512h256q32 0 32 32t-32 32H480q-32 0-32-32t32-32"})]))}}),jS=a3,l3=G({name:"Close",__name:"close",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M764.288 214.592 512 466.88 259.712 214.592a31.936 31.936 0 0 0-45.12 45.12L466.752 512 214.528 764.224a31.936 31.936 0 1 0 45.12 45.184L512 557.184l252.288 252.288a31.936 31.936 0 0 0 45.12-45.12L557.12 512.064l252.288-252.352a31.936 31.936 0 1 0-45.12-45.184z"})]))}}),Ao=l3,r3=G({name:"DArrowLeft",__name:"d-arrow-left",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M529.408 149.376a29.12 29.12 0 0 1 41.728 0 30.59 30.59 0 0 1 0 42.688L259.264 511.936l311.872 319.936a30.59 30.59 0 0 1-.512 43.264 29.12 29.12 0 0 1-41.216-.512L197.76 534.272a32 32 0 0 1 0-44.672zm256 0a29.12 29.12 0 0 1 41.728 0 30.59 30.59 0 0 1 0 42.688L515.264 511.936l311.872 319.936a30.59 30.59 0 0 1-.512 43.264 29.12 29.12 0 0 1-41.216-.512L453.76 534.272a32 32 0 0 1 0-44.672z"})]))}}),Ll=r3,s3=G({name:"DArrowRight",__name:"d-arrow-right",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M452.864 149.312a29.12 29.12 0 0 1 41.728.064L826.24 489.664a32 32 0 0 1 0 44.672L494.592 874.624a29.12 29.12 0 0 1-41.728 0 30.59 30.59 0 0 1 0-42.752L764.736 512 452.864 192a30.59 30.59 0 0 1 0-42.688m-256 0a29.12 29.12 0 0 1 41.728.064L570.24 489.664a32 32 0 0 1 0 44.672L238.592 874.624a29.12 29.12 0 0 1-41.728 0 30.59 30.59 0 0 1 0-42.752L508.736 512 196.864 192a30.59 30.59 0 0 1 0-42.688"})]))}}),Dl=s3,i3=G({name:"Delete",__name:"delete",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M160 256H96a32 32 0 0 1 0-64h256V95.936a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V192h256a32 32 0 1 1 0 64h-64v672a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32zm448-64v-64H416v64zM224 896h576V256H224zm192-128a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32m192 0a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32"})]))}}),u3=i3,c3=G({name:"Document",__name:"document",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M832 384H576V128H192v768h640zm-26.496-64L640 154.496V320zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32m160 448h384v64H320zm0-192h160v64H320zm0 384h384v64H320z"})]))}}),d3=c3,f3=G({name:"FullScreen",__name:"full-screen",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"m160 96.064 192 .192a32 32 0 0 1 0 64l-192-.192V352a32 32 0 0 1-64 0V96h64zm0 831.872V928H96V672a32 32 0 1 1 64 0v191.936l192-.192a32 32 0 1 1 0 64zM864 96.064V96h64v256a32 32 0 1 1-64 0V160.064l-192 .192a32 32 0 1 1 0-64zm0 831.872-192-.192a32 32 0 0 1 0-64l192 .192V672a32 32 0 1 1 64 0v256h-64z"})]))}}),p3=f3,v3=G({name:"Hide",__name:"hide",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M876.8 156.8c0-9.6-3.2-16-9.6-22.4s-12.8-9.6-22.4-9.6-16 3.2-22.4 9.6L736 220.8c-64-32-137.6-51.2-224-60.8-160 16-288 73.6-377.6 176S0 496 0 512s48 73.6 134.4 176c22.4 25.6 44.8 48 73.6 67.2l-86.4 89.6c-6.4 6.4-9.6 12.8-9.6 22.4s3.2 16 9.6 22.4 12.8 9.6 22.4 9.6 16-3.2 22.4-9.6l704-710.4c3.2-6.4 6.4-12.8 6.4-22.4m-646.4 528Q115.2 579.2 76.8 512q43.2-72 153.6-172.8C304 272 400 230.4 512 224c64 3.2 124.8 19.2 176 44.8l-54.4 54.4C598.4 300.8 560 288 512 288c-64 0-115.2 22.4-160 64s-64 96-64 160c0 48 12.8 89.6 35.2 124.8L256 707.2c-9.6-6.4-19.2-16-25.6-22.4m140.8-96Q352 555.2 352 512c0-44.8 16-83.2 48-112s67.2-48 112-48c28.8 0 54.4 6.4 73.6 19.2zM889.599 336c-12.8-16-28.8-28.8-41.6-41.6l-48 48c73.6 67.2 124.8 124.8 150.4 169.6q-43.2 72-153.6 172.8c-73.6 67.2-172.8 108.8-284.8 115.2-51.2-3.2-99.2-12.8-140.8-28.8l-48 48c57.6 22.4 118.4 38.4 188.8 44.8 160-16 288-73.6 377.6-176S1024 528 1024 512s-48.001-73.6-134.401-176"}),K("path",{fill:"currentColor",d:"M511.998 672c-12.8 0-25.6-3.2-38.4-6.4l-51.2 51.2c28.8 12.8 57.6 19.2 89.6 19.2 64 0 115.2-22.4 160-64 41.6-41.6 64-96 64-160 0-32-6.4-64-19.2-89.6l-51.2 51.2c3.2 12.8 6.4 25.6 6.4 38.4 0 44.8-16 83.2-48 112s-67.2 48-112 48"})]))}}),h3=v3,m3=G({name:"InfoFilled",__name:"info-filled",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896.064A448 448 0 0 1 512 64m67.2 275.072c33.28 0 60.288-23.104 60.288-57.344s-27.072-57.344-60.288-57.344c-33.28 0-60.16 23.104-60.16 57.344s26.88 57.344 60.16 57.344M590.912 699.2c0-6.848 2.368-24.64 1.024-34.752l-52.608 60.544c-10.88 11.456-24.512 19.392-30.912 17.28a12.99 12.99 0 0 1-8.256-14.72l87.68-276.992c7.168-35.136-12.544-67.2-54.336-71.296-44.096 0-108.992 44.736-148.48 101.504 0 6.784-1.28 23.68.064 33.792l52.544-60.608c10.88-11.328 23.552-19.328 29.952-17.152a12.8 12.8 0 0 1 7.808 16.128L388.48 728.576c-10.048 32.256 8.96 63.872 55.04 71.04 67.84 0 107.904-43.648 147.456-100.416z"})]))}}),Di=m3,g3=G({name:"Loading",__name:"loading",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M512 64a32 32 0 0 1 32 32v192a32 32 0 0 1-64 0V96a32 32 0 0 1 32-32m0 640a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V736a32 32 0 0 1 32-32m448-192a32 32 0 0 1-32 32H736a32 32 0 1 1 0-64h192a32 32 0 0 1 32 32m-640 0a32 32 0 0 1-32 32H96a32 32 0 0 1 0-64h192a32 32 0 0 1 32 32M195.2 195.2a32 32 0 0 1 45.248 0L376.32 331.008a32 32 0 0 1-45.248 45.248L195.2 240.448a32 32 0 0 1 0-45.248m452.544 452.544a32 32 0 0 1 45.248 0L828.8 783.552a32 32 0 0 1-45.248 45.248L647.744 692.992a32 32 0 0 1 0-45.248M828.8 195.264a32 32 0 0 1 0 45.184L692.992 376.32a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0m-452.544 452.48a32 32 0 0 1 0 45.248L240.448 828.8a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0"})]))}}),Sa=g3,b3=G({name:"Minus",__name:"minus",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M128 544h768a32 32 0 1 0 0-64H128a32 32 0 0 0 0 64"})]))}}),y3=b3,w3=G({name:"MoreFilled",__name:"more-filled",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M176 416a112 112 0 1 1 0 224 112 112 0 0 1 0-224m336 0a112 112 0 1 1 0 224 112 112 0 0 1 0-224m336 0a112 112 0 1 1 0 224 112 112 0 0 1 0-224"})]))}}),Sy=w3,C3=G({name:"More",__name:"more",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M176 416a112 112 0 1 0 0 224 112 112 0 0 0 0-224m0 64a48 48 0 1 1 0 96 48 48 0 0 1 0-96m336-64a112 112 0 1 1 0 224 112 112 0 0 1 0-224m0 64a48 48 0 1 0 0 96 48 48 0 0 0 0-96m336-64a112 112 0 1 1 0 224 112 112 0 0 1 0-224m0 64a48 48 0 1 0 0 96 48 48 0 0 0 0-96"})]))}}),S3=C3,k3=G({name:"PictureFilled",__name:"picture-filled",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M96 896a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h832a32 32 0 0 1 32 32v704a32 32 0 0 1-32 32zm315.52-228.48-68.928-68.928a32 32 0 0 0-45.248 0L128 768.064h778.688l-242.112-290.56a32 32 0 0 0-49.216 0L458.752 665.408a32 32 0 0 1-47.232 2.112M256 384a96 96 0 1 0 192.064-.064A96 96 0 0 0 256 384"})]))}}),E3=k3,_3=G({name:"Plus",__name:"plus",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M480 480V128a32 32 0 0 1 64 0v352h352a32 32 0 1 1 0 64H544v352a32 32 0 1 1-64 0V544H128a32 32 0 0 1 0-64z"})]))}}),US=_3,T3=G({name:"QuestionFilled",__name:"question-filled",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m23.744 191.488c-52.096 0-92.928 14.784-123.2 44.352-30.976 29.568-45.76 70.4-45.76 122.496h80.256c0-29.568 5.632-52.8 17.6-68.992 13.376-19.712 35.2-28.864 66.176-28.864 23.936 0 42.944 6.336 56.32 19.712 12.672 13.376 19.712 31.68 19.712 54.912 0 17.6-6.336 34.496-19.008 49.984l-8.448 9.856c-45.76 40.832-73.216 70.4-82.368 89.408-9.856 19.008-14.08 42.24-14.08 68.992v9.856h80.96v-9.856c0-16.896 3.52-31.68 10.56-45.76 6.336-12.672 15.488-24.64 28.16-35.2 33.792-29.568 54.208-48.576 60.544-55.616 16.896-22.528 26.048-51.392 26.048-86.592q0-64.416-42.24-101.376c-28.16-25.344-65.472-37.312-111.232-37.312m-12.672 406.208a54.27 54.27 0 0 0-38.72 14.784 49.4 49.4 0 0 0-15.488 38.016c0 15.488 4.928 28.16 15.488 38.016A54.85 54.85 0 0 0 523.072 768c15.488 0 28.16-4.928 38.72-14.784a51.52 51.52 0 0 0 16.192-38.72 51.97 51.97 0 0 0-15.488-38.016 55.94 55.94 0 0 0-39.424-14.784"})]))}}),O3=T3,$3=G({name:"RefreshLeft",__name:"refresh-left",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M289.088 296.704h92.992a32 32 0 0 1 0 64H232.96a32 32 0 0 1-32-32V179.712a32 32 0 0 1 64 0v50.56a384 384 0 0 1 643.84 282.88 384 384 0 0 1-383.936 384 384 384 0 0 1-384-384h64a320 320 0 1 0 640 0 320 320 0 0 0-555.712-216.448z"})]))}}),N3=$3,R3=G({name:"RefreshRight",__name:"refresh-right",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M784.512 230.272v-50.56a32 32 0 1 1 64 0v149.056a32 32 0 0 1-32 32H667.52a32 32 0 1 1 0-64h92.992A320 320 0 1 0 524.8 833.152a320 320 0 0 0 320-320h64a384 384 0 0 1-384 384 384 384 0 0 1-384-384 384 384 0 0 1 643.712-282.88"})]))}}),x3=R3,I3=G({name:"ScaleToOriginal",__name:"scale-to-original",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M813.176 180.706a60.235 60.235 0 0 1 60.236 60.235v481.883a60.235 60.235 0 0 1-60.236 60.235H210.824a60.235 60.235 0 0 1-60.236-60.235V240.94a60.235 60.235 0 0 1 60.236-60.235h602.352zm0-60.235H210.824A120.47 120.47 0 0 0 90.353 240.94v481.883a120.47 120.47 0 0 0 120.47 120.47h602.353a120.47 120.47 0 0 0 120.471-120.47V240.94a120.47 120.47 0 0 0-120.47-120.47zm-120.47 180.705a30.12 30.12 0 0 0-30.118 30.118v301.177a30.118 30.118 0 0 0 60.236 0V331.294a30.12 30.12 0 0 0-30.118-30.118m-361.412 0a30.12 30.12 0 0 0-30.118 30.118v301.177a30.118 30.118 0 1 0 60.236 0V331.294a30.12 30.12 0 0 0-30.118-30.118M512 361.412a30.12 30.12 0 0 0-30.118 30.117v30.118a30.118 30.118 0 0 0 60.236 0V391.53A30.12 30.12 0 0 0 512 361.412M512 512a30.12 30.12 0 0 0-30.118 30.118v30.117a30.118 30.118 0 0 0 60.236 0v-30.117A30.12 30.12 0 0 0 512 512"})]))}}),P3=I3,M3=G({name:"Search",__name:"search",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704"})]))}}),A3=M3,L3=G({name:"SortDown",__name:"sort-down",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M576 96v709.568L333.312 562.816A32 32 0 1 0 288 608l297.408 297.344A32 32 0 0 0 640 882.688V96a32 32 0 0 0-64 0"})]))}}),D3=L3,B3=G({name:"SortUp",__name:"sort-up",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M384 141.248V928a32 32 0 1 0 64 0V218.56l242.688 242.688A32 32 0 1 0 736 416L438.592 118.656A32 32 0 0 0 384 141.248"})]))}}),F3=B3,V3=G({name:"StarFilled",__name:"star-filled",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M313.6 924.48a70.4 70.4 0 0 1-74.152-5.365 70.4 70.4 0 0 1-27.992-68.875l37.888-220.928L88.96 472.96a70.4 70.4 0 0 1 3.788-104.225A70.4 70.4 0 0 1 128 352.896l221.76-32.256 99.2-200.96a70.4 70.4 0 0 1 100.246-28.595 70.4 70.4 0 0 1 25.962 28.595l99.2 200.96 221.824 32.256a70.4 70.4 0 0 1 39.04 120.064L774.72 629.376l37.888 220.928a70.4 70.4 0 0 1-102.144 74.24L512 820.096l-198.4 104.32z"})]))}}),Uu=V3,z3=G({name:"Star",__name:"star",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"m512 747.84 228.16 119.936a6.4 6.4 0 0 0 9.28-6.72l-43.52-254.08 184.512-179.904a6.4 6.4 0 0 0-3.52-10.88l-255.104-37.12L517.76 147.904a6.4 6.4 0 0 0-11.52 0L392.192 379.072l-255.104 37.12a6.4 6.4 0 0 0-3.52 10.88L318.08 606.976l-43.584 254.08a6.4 6.4 0 0 0 9.28 6.72zM313.6 924.48a70.4 70.4 0 0 1-102.144-74.24l37.888-220.928L88.96 472.96A70.4 70.4 0 0 1 128 352.896l221.76-32.256 99.2-200.96a70.4 70.4 0 0 1 126.208 0l99.2 200.96 221.824 32.256a70.4 70.4 0 0 1 39.04 120.064L774.72 629.376l37.888 220.928a70.4 70.4 0 0 1-102.144 74.24L512 820.096l-198.4 104.32z"})]))}}),H3=z3,K3=G({name:"SuccessFilled",__name:"success-filled",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m-55.808 536.384-99.52-99.584a38.4 38.4 0 1 0-54.336 54.336l126.72 126.72a38.27 38.27 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336z"})]))}}),qS=K3,W3=G({name:"User",__name:"user",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M512 512a192 192 0 1 0 0-384 192 192 0 0 0 0 384m0 64a256 256 0 1 1 0-512 256 256 0 0 1 0 512m320 320v-96a96 96 0 0 0-96-96H288a96 96 0 0 0-96 96v96a32 32 0 1 1-64 0v-96a160 160 0 0 1 160-160h448a160 160 0 0 1 160 160v96a32 32 0 1 1-64 0"})]))}}),j3=W3,U3=G({name:"View",__name:"view",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M512 160c320 0 512 352 512 352S832 864 512 864 0 512 0 512s192-352 512-352m0 64c-225.28 0-384.128 208.064-436.8 288 52.608 79.872 211.456 288 436.8 288 225.28 0 384.128-208.064 436.8-288-52.608-79.872-211.456-288-436.8-288m0 64a224 224 0 1 1 0 448 224 224 0 0 1 0-448m0 64a160.19 160.19 0 0 0-160 160c0 88.192 71.744 160 160 160s160-71.808 160-160-71.744-160-160-160"})]))}}),q3=U3,Y3=G({name:"WarningFilled",__name:"warning-filled",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m0 192a58.43 58.43 0 0 0-58.24 63.744l23.36 256.384a35.072 35.072 0 0 0 69.76 0l23.296-256.384A58.43 58.43 0 0 0 512 256m0 512a51.2 51.2 0 1 0 0-102.4 51.2 51.2 0 0 0 0 102.4"})]))}}),rf=Y3,G3=G({name:"ZoomIn",__name:"zoom-in",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704m-32-384v-96a32 32 0 0 1 64 0v96h96a32 32 0 0 1 0 64h-96v96a32 32 0 0 1-64 0v-96h-96a32 32 0 0 1 0-64z"})]))}}),YS=G3,X3=G({name:"ZoomOut",__name:"zoom-out",setup(e){return(t,n)=>(_(),F("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[K("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704M352 448h256a32 32 0 0 1 0 64H352a32 32 0 0 1 0-64"})]))}}),J3=X3;const Bt=ee([String,Object,Function]),GS={Close:Ao},nm={Close:Ao,SuccessFilled:qS,InfoFilled:Di,WarningFilled:rf,CircleCloseFilled:tm},Bl={primary:Di,success:qS,warning:rf,error:tm,info:Di},sf={validating:Sa,success:em,error:il},Z3=["light","dark"],Q3=Ee({title:{type:String,default:""},description:{type:String,default:""},type:{type:String,values:Li(Bl),default:"info"},closable:{type:Boolean,default:!0},closeText:{type:String,default:""},showIcon:Boolean,center:Boolean,effect:{type:String,values:Z3,default:"light"},showAfter:Number,hideAfter:Number,autoClose:Number}),eL={close:e=>e instanceof MouseEvent},tL=G({name:"ElAlert"}),nL=G({...tL,props:Q3,emits:eL,setup(e,{emit:t}){const n=e,{Close:o}=nm,a=hn(),l=be("alert"),r=A(!0),i=S(()=>Bl[n.type]),u=S(()=>!!(n.description||a.default)),c=d=>{r.value=!1,t("close",d)};return n.showAfter||n.hideAfter||n.autoClose,(d,f)=>(_(),ie(xn,{name:s(l).b("fade"),persisted:""},{default:Y(()=>[dt(K("div",{class:I([s(l).b(),s(l).m(d.type),s(l).is("center",d.center),s(l).is(d.effect)]),role:"alert"},[d.showIcon&&(d.$slots.icon||s(i))?(_(),ie(s(Ve),{key:0,class:I([s(l).e("icon"),s(l).is("big",s(u))])},{default:Y(()=>[re(d.$slots,"icon",{},()=>[(_(),ie(ft(s(i))))])]),_:3},8,["class"])):le("v-if",!0),K("div",{class:I(s(l).e("content"))},[d.title||d.$slots.title?(_(),F("span",{key:0,class:I([s(l).e("title"),{"with-description":s(u)}])},[re(d.$slots,"title",{},()=>[lt(Ce(d.title),1)])],2)):le("v-if",!0),s(u)?(_(),F("p",{key:1,class:I(s(l).e("description"))},[re(d.$slots,"default",{},()=>[lt(Ce(d.description),1)])],2)):le("v-if",!0),d.closable?(_(),F(He,{key:2},[d.closeText?(_(),F("div",{key:0,class:I([s(l).e("close-btn"),s(l).is("customed")]),onClick:c},Ce(d.closeText),3)):(_(),ie(s(Ve),{key:1,class:I(s(l).e("close-btn")),onClick:c},{default:Y(()=>[U(s(o))]),_:1},8,["class"]))],64)):le("v-if",!0)],2)],2),[[Nt,r.value]])]),_:3},8,["name"]))}});var oL=Oe(nL,[["__file","alert.vue"]]);const aL=rt(oL),om=()=>xt&&/firefox/i.test(window.navigator.userAgent),XS=()=>xt&&/android/i.test(window.navigator.userAgent);let so;const lL={height:"0",visibility:"hidden",overflow:om()?"":"hidden",position:"absolute","z-index":"-1000",top:"0",right:"0"},rL=["letter-spacing","line-height","padding-top","padding-bottom","font-family","font-weight","font-size","text-rendering","text-transform","width","text-indent","padding-left","padding-right","border-width","box-sizing","word-break"],ky=e=>{const t=Number.parseFloat(e);return Number.isNaN(t)?e:t};function sL(e){const t=window.getComputedStyle(e),n=t.getPropertyValue("box-sizing"),o=Number.parseFloat(t.getPropertyValue("padding-bottom"))+Number.parseFloat(t.getPropertyValue("padding-top")),a=Number.parseFloat(t.getPropertyValue("border-bottom-width"))+Number.parseFloat(t.getPropertyValue("border-top-width"));return{contextStyle:rL.map(r=>[r,t.getPropertyValue(r)]),paddingSize:o,borderSize:a,boxSizing:n}}function Ey(e,t=1,n){var o,a;so||(so=document.createElement("textarea"),((o=e.parentNode)!=null?o:document.body).appendChild(so));const{paddingSize:l,borderSize:r,boxSizing:i,contextStyle:u}=sL(e);u.forEach(([v,p])=>so?.style.setProperty(v,p)),Object.entries(lL).forEach(([v,p])=>so?.style.setProperty(v,p,"important")),so.value=e.value||e.placeholder||"";let c=so.scrollHeight;const d={};i==="border-box"?c=c+r:i==="content-box"&&(c=c-l),so.value="";const f=so.scrollHeight-l;if(Ge(t)){let v=f*t;i==="border-box"&&(v=v+l+r),c=Math.max(v,c),d.minHeight=`${v}px`}if(Ge(n)){let v=f*n;i==="border-box"&&(v=v+l+r),c=Math.min(v,c)}return d.height=`${c}px`,(a=so.parentNode)==null||a.removeChild(so),so=void 0,d}const Zt=e=>e,iL=Ee({ariaLabel:String,ariaOrientation:{type:String,values:["horizontal","vertical","undefined"]},ariaControls:String}),Xn=e=>Ja(iL,e),mu=Ee({id:{type:String,default:void 0},size:bn,disabled:{type:Boolean,default:void 0},modelValue:{type:ee([String,Number,Object]),default:""},modelModifiers:{type:ee(Object),default:()=>({})},maxlength:{type:[String,Number]},minlength:{type:[String,Number]},type:{type:ee(String),default:"text"},resize:{type:String,values:["none","both","horizontal","vertical"]},autosize:{type:ee([Boolean,Object]),default:!1},autocomplete:{type:ee(String),default:"off"},formatter:{type:Function},parser:{type:Function},placeholder:{type:String},form:{type:String},readonly:Boolean,clearable:Boolean,clearIcon:{type:Bt,default:il},showPassword:Boolean,showWordLimit:Boolean,wordLimitPosition:{type:String,values:["inside","outside"],default:"inside"},suffixIcon:{type:Bt},prefixIcon:{type:Bt},containerRole:{type:String,default:void 0},tabindex:{type:[String,Number],default:0},validateEvent:{type:Boolean,default:!0},inputStyle:{type:ee([Object,Array,String]),default:()=>Zt({})},autofocus:Boolean,rows:{type:Number,default:2},...Xn(["ariaLabel"]),inputmode:{type:ee(String),default:void 0},name:String}),uL={[et]:e=>ze(e),input:e=>ze(e),change:(e,t)=>ze(e)&&(t instanceof Event||t===void 0),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,mouseleave:e=>e instanceof MouseEvent,mouseenter:e=>e instanceof MouseEvent,keydown:e=>e instanceof Event,compositionstart:e=>e instanceof CompositionEvent,compositionupdate:e=>e instanceof CompositionEvent,compositionend:e=>e instanceof CompositionEvent},cL=["class","style"],dL=/^on[A-Z]/,uf=(e={})=>{const{excludeListeners:t=!1,excludeKeys:n}=e,o=S(()=>(n?.value||[]).concat(cL)),a=vt();return S(a?()=>{var l;return Ai(Object.entries((l=a.proxy)==null?void 0:l.$attrs).filter(([r])=>!o.value.includes(r)&&!(t&&dL.test(r))))}:()=>({}))},_y={prefix:Math.floor(Math.random()*1e4),current:0},fL=Symbol("elIdInjection"),am=()=>vt()?Pe(fL,_y):_y,In=e=>{const t=am(),n=xh();return nd(()=>s(e)||`${n.value}-id-${t.prefix}-${t.current++}`)},Nr=Symbol("formContextKey"),ka=Symbol("formItemContextKey"),Nn=()=>{const e=Pe(Nr,void 0),t=Pe(ka,void 0);return{form:e,formItem:t}},To=(e,{formItemContext:t,disableIdGeneration:n,disableIdManagement:o})=>{n||(n=A(!1)),o||(o=A(!1));const a=vt(),l=()=>{let c=a?.parent;for(;c;){if(c.type.name==="ElFormItem")return!1;if(c.type.name==="ElLabelWrap")return!0;c=c.parent}return!1},r=A();let i;const u=S(()=>{var c;return!!(!(e.label||e.ariaLabel)&&t&&t.inputIds&&((c=t.inputIds)==null?void 0:c.length)<=1)});return mt(()=>{i=fe([Dt(e,"id"),n],([c,d])=>{const f=c??(d?void 0:In().value);f!==r.value&&(t?.removeInputId&&!l()&&(r.value&&t.removeInputId(r.value),!o?.value&&!d&&f&&t.addInputId(f)),r.value=f)},{immediate:!0})}),Ts(()=>{i&&i(),t?.removeInputId&&r.value&&t.removeInputId(r.value)}),{isLabeledByFormItem:u,inputId:r}},JS=e=>{const t=vt();return S(()=>{var n,o;return(o=(n=t?.proxy)==null?void 0:n.$props)==null?void 0:o[e]})},vn=(e,t={})=>{const n=A(void 0),o=t.prop?n:JS("size"),a=t.global?n:AS(),l=t.form?{size:void 0}:Pe(Nr,void 0),r=t.formItem?{size:void 0}:Pe(ka,void 0);return S(()=>o.value||s(e)||r?.size||l?.size||a.value||"")},tn=e=>{const t=JS("disabled"),n=Pe(Nr,void 0);return S(()=>{var o,a,l;return(l=(a=(o=t.value)!=null?o:s(e))!=null?a:n?.disabled)!=null?l:!1})},pL='a[href],button:not([disabled]),button:not([hidden]),:not([tabindex="-1"]),input:not([disabled]),input:not([type="hidden"]),select:not([disabled]),textarea:not([disabled])',Ty=e=>typeof Element>"u"?!1:e instanceof Element,vL=e=>getComputedStyle(e).position==="fixed"?!1:e.offsetParent!==null,Oy=e=>Array.from(e.querySelectorAll(pL)).filter(t=>Bi(t)&&vL(t)),Bi=e=>{if(e.tabIndex>0||e.tabIndex===0&&e.getAttribute("tabIndex")!==null)return!0;if(e.tabIndex<0||e.hasAttribute("disabled")||e.getAttribute("aria-disabled")==="true")return!1;switch(e.nodeName){case"A":return!!e.href&&e.rel!=="ignore";case"INPUT":return!(e.type==="hidden"||e.type==="file");case"BUTTON":case"SELECT":case"TEXTAREA":return!0;default:return!1}},hc=function(e,t,...n){let o;t.includes("mouse")||t.includes("click")?o="MouseEvents":t.includes("key")?o="KeyboardEvent":o="HTMLEvents";const a=document.createEvent(o);return a.initEvent(t,...n),e.dispatchEvent(a),e},ZS=e=>!e.getAttribute("aria-owns"),QS=(e,t,n)=>{const{parentNode:o}=e;if(!o)return null;const a=o.querySelectorAll(n),l=Array.prototype.indexOf.call(a,e);return a[l+t]||null},gu=(e,t)=>{if(!e||!e.focus)return;let n=!1;Ty(e)&&!Bi(e)&&!e.getAttribute("tabindex")&&(e.setAttribute("tabindex","-1"),n=!0),e.focus(t),Ty(e)&&n&&e.removeAttribute("tabindex")},mc=e=>{e&&(gu(e),!ZS(e)&&e.click())};function ul(e,{disabled:t,beforeFocus:n,afterFocus:o,beforeBlur:a,afterBlur:l}={}){const r=vt(),{emit:i}=r,u=jt(),c=A(!1),d=p=>{const m=qe(n)?n(p):!1;s(t)||c.value||m||(c.value=!0,i("focus",p),o?.())},f=p=>{var m;const h=qe(a)?a(p):!1;s(t)||p.relatedTarget&&((m=u.value)!=null&&m.contains(p.relatedTarget))||h||(c.value=!1,i("blur",p),l?.())},v=p=>{var m,h;s(t)||Bi(p.target)||(m=u.value)!=null&&m.contains(document.activeElement)&&u.value!==document.activeElement||(h=e.value)==null||h.focus()};return fe([u,()=>s(t)],([p,m])=>{p&&(m?p.removeAttribute("tabindex"):p.setAttribute("tabindex","-1"))}),It(u,"focus",d,!0),It(u,"blur",f,!0),It(u,"click",v,!0),{isFocused:c,wrapperRef:u,handleFocus:d,handleBlur:f}}const hL=e=>/([\uAC00-\uD7AF\u3130-\u318F])+/gi.test(e);function bu({afterComposition:e,emit:t}){const n=A(!1),o=i=>{t?.("compositionstart",i),n.value=!0},a=i=>{var u;t?.("compositionupdate",i);const c=(u=i.target)==null?void 0:u.value,d=c[c.length-1]||"";n.value=!hL(d)},l=i=>{t?.("compositionend",i),n.value&&(n.value=!1,Me(()=>e(i)))};return{isComposing:n,handleComposition:i=>{i.type==="compositionend"?l(i):a(i)},handleCompositionStart:o,handleCompositionUpdate:a,handleCompositionEnd:l}}function mL(e){let t;function n(){if(e.value==null)return;const{selectionStart:a,selectionEnd:l,value:r}=e.value;if(a==null||l==null)return;const i=r.slice(0,Math.max(0,a)),u=r.slice(Math.max(0,l));t={selectionStart:a,selectionEnd:l,value:r,beforeTxt:i,afterTxt:u}}function o(){if(e.value==null||t==null)return;const{value:a}=e.value,{beforeTxt:l,afterTxt:r,selectionStart:i}=t;if(l==null||r==null||i==null)return;let u=a.length;if(a.endsWith(r))u=a.length-r.length;else if(a.startsWith(l))u=l.length;else{const c=l[i-1],d=a.indexOf(c,i-1);d!==-1&&(u=d+1)}e.value.setSelectionRange(u,u)}return[n,o]}const gL="ElInput",bL=G({name:gL,inheritAttrs:!1}),yL=G({...bL,props:mu,emits:uL,setup(e,{expose:t,emit:n}){const o=e,a=ll(),l=uf(),r=hn(),i=S(()=>[o.type==="textarea"?h.b():m.b(),m.m(v.value),m.is("disabled",p.value),m.is("exceed",V.value),{[m.b("group")]:r.prepend||r.append,[m.m("prefix")]:r.prefix||o.prefixIcon,[m.m("suffix")]:r.suffix||o.suffixIcon||o.clearable||o.showPassword,[m.bm("suffix","password-clear")]:L.value&&z.value,[m.b("hidden")]:o.type==="hidden"},a.class]),u=S(()=>[m.e("wrapper"),m.is("focus",x.value)]),{form:c,formItem:d}=Nn(),{inputId:f}=To(o,{formItemContext:d}),v=vn(),p=tn(),m=be("input"),h=be("textarea"),g=jt(),b=jt(),C=A(!1),w=A(!1),y=A(),k=jt(o.inputStyle),E=S(()=>g.value||b.value),{wrapperRef:T,isFocused:x,handleFocus:$,handleBlur:M}=ul(E,{disabled:p,afterBlur(){var me;o.validateEvent&&((me=d?.validate)==null||me.call(d,"blur").catch(Ke=>void 0))}}),O=S(()=>{var me;return(me=c?.statusIcon)!=null?me:!1}),R=S(()=>d?.validateState||""),H=S(()=>R.value&&sf[R.value]),q=S(()=>w.value?q3:h3),X=S(()=>[a.style]),P=S(()=>[o.inputStyle,k.value,{resize:o.resize}]),N=S(()=>cn(o.modelValue)?"":String(o.modelValue)),L=S(()=>o.clearable&&!p.value&&!o.readonly&&!!N.value&&(x.value||C.value)),z=S(()=>o.showPassword&&!p.value&&!!N.value),B=S(()=>o.showWordLimit&&!!o.maxlength&&(o.type==="text"||o.type==="textarea")&&!p.value&&!o.readonly&&!o.showPassword),W=S(()=>N.value.length),V=S(()=>!!B.value&&W.value>Number(o.maxlength)),j=S(()=>!!r.suffix||!!o.suffixIcon||L.value||o.showPassword||B.value||!!R.value&&O.value),oe=S(()=>!!Object.keys(o.modelModifiers).length),[ae,ce]=mL(g);Yt(b,me=>{if(Q(),!B.value||o.resize!=="both"&&o.resize!=="horizontal")return;const Ke=me[0],{width:Le}=Ke.contentRect;y.value={right:`calc(100% - ${Le+22-10}px)`}});const ne=()=>{const{type:me,autosize:Ke}=o;if(!(!xt||me!=="textarea"||!b.value))if(Ke){const Le=it(Ke)?Ke.minRows:void 0,Ct=it(Ke)?Ke.maxRows:void 0,Et=Ey(b.value,Le,Ct);k.value={overflowY:"hidden",...Et},Me(()=>{b.value.offsetHeight,k.value=Et})}else k.value={minHeight:Ey(b.value).minHeight}},Q=(me=>{let Ke=!1;return()=>{var Le;if(Ke||!o.autosize)return;((Le=b.value)==null?void 0:Le.offsetParent)===null||(setTimeout(me),Ke=!0)}})(ne),te=()=>{const me=E.value,Ke=o.formatter?o.formatter(N.value):N.value;!me||me.value===Ke||o.type==="file"||(me.value=Ke)},J=me=>{const{trim:Ke,number:Le}=o.modelModifiers;return Ke&&(me=me.trim()),Le&&(me=`${ky(me)}`),o.formatter&&o.parser&&(me=o.parser(me)),me},D=async me=>{if(se.value)return;const{lazy:Ke}=o.modelModifiers;let{value:Le}=me.target;if(Ke){n(pn,Le);return}if(Le=J(Le),String(Le)===N.value){o.formatter&&te();return}ae(),n(et,Le),n(pn,Le),await Me(),(o.formatter&&o.parser||!oe.value)&&te(),ce()},Z=async me=>{let{value:Ke}=me.target;Ke=J(Ke),o.modelModifiers.lazy&&n(et,Ke),n(yt,Ke,me),await Me(),te()},{isComposing:se,handleCompositionStart:pe,handleCompositionUpdate:he,handleCompositionEnd:ve}=bu({emit:n,afterComposition:D}),Ie=()=>{w.value=!w.value},_e=()=>{var me;return(me=E.value)==null?void 0:me.focus()},De=()=>{var me;return(me=E.value)==null?void 0:me.blur()},ye=me=>{C.value=!1,n("mouseleave",me)},Re=me=>{C.value=!0,n("mouseenter",me)},Ne=me=>{n("keydown",me)},Ae=()=>{var me;(me=E.value)==null||me.select()},Fe=()=>{n(et,""),n(yt,""),n("clear"),n(pn,"")};return fe(()=>o.modelValue,()=>{var me;Me(()=>ne()),o.validateEvent&&((me=d?.validate)==null||me.call(d,"change").catch(Ke=>void 0))}),fe(N,me=>{if(!E.value)return;const{trim:Ke,number:Le}=o.modelModifiers,Ct=E.value.value,Et=(Le||o.type==="number")&&!/^0\d/.test(Ct)?`${ky(Ct)}`:Ct;Et!==me&&(document.activeElement===E.value&&E.value.type!=="range"&&Ke&&Et.trim()===me||te())}),fe(()=>o.type,async()=>{await Me(),te(),ne()}),mt(()=>{!o.formatter&&o.parser,te(),Me(ne)}),t({input:g,textarea:b,ref:E,textareaStyle:P,autosize:Dt(o,"autosize"),isComposing:se,focus:_e,blur:De,select:Ae,clear:Fe,resizeTextarea:ne}),(me,Ke)=>(_(),F("div",{class:I([s(i),{[s(m).bm("group","append")]:me.$slots.append,[s(m).bm("group","prepend")]:me.$slots.prepend}]),style:Ye(s(X)),onMouseenter:Re,onMouseleave:ye},[le(" input "),me.type!=="textarea"?(_(),F(He,{key:0},[le(" prepend slot "),me.$slots.prepend?(_(),F("div",{key:0,class:I(s(m).be("group","prepend"))},[re(me.$slots,"prepend")],2)):le("v-if",!0),K("div",{ref_key:"wrapperRef",ref:T,class:I(s(u))},[le(" prefix slot "),me.$slots.prefix||me.prefixIcon?(_(),F("span",{key:0,class:I(s(m).e("prefix"))},[K("span",{class:I(s(m).e("prefix-inner"))},[re(me.$slots,"prefix"),me.prefixIcon?(_(),ie(s(Ve),{key:0,class:I(s(m).e("icon"))},{default:Y(()=>[(_(),ie(ft(me.prefixIcon)))]),_:1},8,["class"])):le("v-if",!0)],2)],2)):le("v-if",!0),K("input",ht({id:s(f),ref_key:"input",ref:g,class:s(m).e("inner")},s(l),{name:me.name,minlength:me.minlength,maxlength:me.maxlength,type:me.showPassword?w.value?"text":"password":me.type,disabled:s(p),readonly:me.readonly,autocomplete:me.autocomplete,tabindex:me.tabindex,"aria-label":me.ariaLabel,placeholder:me.placeholder,style:me.inputStyle,form:me.form,autofocus:me.autofocus,role:me.containerRole,inputmode:me.inputmode,onCompositionstart:s(pe),onCompositionupdate:s(he),onCompositionend:s(ve),onInput:D,onChange:Z,onKeydown:Ne}),null,16,["id","name","minlength","maxlength","type","disabled","readonly","autocomplete","tabindex","aria-label","placeholder","form","autofocus","role","inputmode","onCompositionstart","onCompositionupdate","onCompositionend"]),le(" suffix slot "),s(j)?(_(),F("span",{key:1,class:I(s(m).e("suffix"))},[K("span",{class:I(s(m).e("suffix-inner"))},[!s(L)||!s(z)||!s(B)?(_(),F(He,{key:0},[re(me.$slots,"suffix"),me.suffixIcon?(_(),ie(s(Ve),{key:0,class:I(s(m).e("icon"))},{default:Y(()=>[(_(),ie(ft(me.suffixIcon)))]),_:1},8,["class"])):le("v-if",!0)],64)):le("v-if",!0),s(L)?(_(),ie(s(Ve),{key:1,class:I([s(m).e("icon"),s(m).e("clear")]),onMousedown:Qe(s(Mt),["prevent"]),onClick:Fe},{default:Y(()=>[(_(),ie(ft(me.clearIcon)))]),_:1},8,["class","onMousedown"])):le("v-if",!0),s(z)?(_(),ie(s(Ve),{key:2,class:I([s(m).e("icon"),s(m).e("password")]),onClick:Ie,onMousedown:Qe(s(Mt),["prevent"]),onMouseup:Qe(s(Mt),["prevent"])},{default:Y(()=>[(_(),ie(ft(s(q))))]),_:1},8,["class","onMousedown","onMouseup"])):le("v-if",!0),s(B)?(_(),F("span",{key:3,class:I([s(m).e("count"),s(m).is("outside",me.wordLimitPosition==="outside")])},[K("span",{class:I(s(m).e("count-inner"))},Ce(s(W))+" / "+Ce(me.maxlength),3)],2)):le("v-if",!0),s(R)&&s(H)&&s(O)?(_(),ie(s(Ve),{key:4,class:I([s(m).e("icon"),s(m).e("validateIcon"),s(m).is("loading",s(R)==="validating")])},{default:Y(()=>[(_(),ie(ft(s(H))))]),_:1},8,["class"])):le("v-if",!0)],2)],2)):le("v-if",!0)],2),le(" append slot "),me.$slots.append?(_(),F("div",{key:1,class:I(s(m).be("group","append"))},[re(me.$slots,"append")],2)):le("v-if",!0)],64)):(_(),F(He,{key:1},[le(" textarea "),K("textarea",ht({id:s(f),ref_key:"textarea",ref:b,class:[s(h).e("inner"),s(m).is("focus",s(x))]},s(l),{name:me.name,minlength:me.minlength,maxlength:me.maxlength,tabindex:me.tabindex,disabled:s(p),readonly:me.readonly,autocomplete:me.autocomplete,style:s(P),"aria-label":me.ariaLabel,placeholder:me.placeholder,form:me.form,autofocus:me.autofocus,rows:me.rows,role:me.containerRole,onCompositionstart:s(pe),onCompositionupdate:s(he),onCompositionend:s(ve),onInput:D,onFocus:s($),onBlur:s(M),onChange:Z,onKeydown:Ne}),null,16,["id","name","minlength","maxlength","tabindex","disabled","readonly","autocomplete","aria-label","placeholder","form","autofocus","rows","role","onCompositionstart","onCompositionupdate","onCompositionend","onFocus","onBlur"]),s(B)?(_(),F("span",{key:0,style:Ye(y.value),class:I([s(m).e("count"),s(m).is("outside",me.wordLimitPosition==="outside")])},Ce(s(W))+" / "+Ce(me.maxlength),7)):le("v-if",!0)],64))],38))}});var wL=Oe(yL,[["__file","input.vue"]]);const qn=rt(wL),Ir=4,ek={vertical:{offset:"offsetHeight",scroll:"scrollTop",scrollSize:"scrollHeight",size:"height",key:"vertical",axis:"Y",client:"clientY",direction:"top"},horizontal:{offset:"offsetWidth",scroll:"scrollLeft",scrollSize:"scrollWidth",size:"width",key:"horizontal",axis:"X",client:"clientX",direction:"left"}},CL=({move:e,size:t,bar:n})=>({[n.size]:t,transform:`translate${n.axis}(${e}%)`}),lm=Symbol("scrollbarContextKey"),SL=Ee({vertical:Boolean,size:String,move:Number,ratio:{type:Number,required:!0},always:Boolean}),kL="Thumb",EL=G({__name:"thumb",props:SL,setup(e){const t=e,n=Pe(lm),o=be("scrollbar");n||fn(kL,"can not inject scrollbar context");const a=A(),l=A(),r=A({}),i=A(!1);let u=!1,c=!1,d=0,f=0,v=xt?document.onselectstart:null;const p=S(()=>ek[t.vertical?"vertical":"horizontal"]),m=S(()=>CL({size:t.size,move:t.move,bar:p.value})),h=S(()=>a.value[p.value.offset]**2/n.wrapElement[p.value.scrollSize]/t.ratio/l.value[p.value.offset]),g=x=>{var $;if(x.stopPropagation(),x.ctrlKey||[1,2].includes(x.button))return;($=window.getSelection())==null||$.removeAllRanges(),C(x);const M=x.currentTarget;M&&(r.value[p.value.axis]=M[p.value.offset]-(x[p.value.client]-M.getBoundingClientRect()[p.value.direction]))},b=x=>{if(!l.value||!a.value||!n.wrapElement)return;const $=Math.abs(x.target.getBoundingClientRect()[p.value.direction]-x[p.value.client]),M=l.value[p.value.offset]/2,O=($-M)*100*h.value/a.value[p.value.offset];n.wrapElement[p.value.scroll]=O*n.wrapElement[p.value.scrollSize]/100},C=x=>{x.stopImmediatePropagation(),u=!0,d=n.wrapElement.scrollHeight,f=n.wrapElement.scrollWidth,document.addEventListener("mousemove",w),document.addEventListener("mouseup",y),v=document.onselectstart,document.onselectstart=()=>!1},w=x=>{if(!a.value||!l.value||u===!1)return;const $=r.value[p.value.axis];if(!$)return;const M=(a.value.getBoundingClientRect()[p.value.direction]-x[p.value.client])*-1,O=l.value[p.value.offset]-$,R=(M-O)*100*h.value/a.value[p.value.offset];p.value.scroll==="scrollLeft"?n.wrapElement[p.value.scroll]=R*f/100:n.wrapElement[p.value.scroll]=R*d/100},y=()=>{u=!1,r.value[p.value.axis]=0,document.removeEventListener("mousemove",w),document.removeEventListener("mouseup",y),T(),c&&(i.value=!1)},k=()=>{c=!1,i.value=!!t.size},E=()=>{c=!0,i.value=u};Pt(()=>{T(),document.removeEventListener("mouseup",y)});const T=()=>{document.onselectstart!==v&&(document.onselectstart=v)};return It(Dt(n,"scrollbarElement"),"mousemove",k),It(Dt(n,"scrollbarElement"),"mouseleave",E),(x,$)=>(_(),ie(xn,{name:s(o).b("fade"),persisted:""},{default:Y(()=>[dt(K("div",{ref_key:"instance",ref:a,class:I([s(o).e("bar"),s(o).is(s(p).key)]),onMousedown:b,onClick:Qe(()=>{},["stop"])},[K("div",{ref_key:"thumb",ref:l,class:I(s(o).e("thumb")),style:Ye(s(m)),onMousedown:g},null,38)],42,["onClick"]),[[Nt,x.always||i.value]])]),_:1},8,["name"]))}});var $y=Oe(EL,[["__file","thumb.vue"]]);const _L=Ee({always:{type:Boolean,default:!0},minSize:{type:Number,required:!0}}),TL=G({__name:"bar",props:_L,setup(e,{expose:t}){const n=e,o=Pe(lm),a=A(0),l=A(0),r=A(""),i=A(""),u=A(1),c=A(1);return t({handleScroll:v=>{if(v){const p=v.offsetHeight-Ir,m=v.offsetWidth-Ir;l.value=v.scrollTop*100/p*u.value,a.value=v.scrollLeft*100/m*c.value}},update:()=>{const v=o?.wrapElement;if(!v)return;const p=v.offsetHeight-Ir,m=v.offsetWidth-Ir,h=p**2/v.scrollHeight,g=m**2/v.scrollWidth,b=Math.max(h,n.minSize),C=Math.max(g,n.minSize);u.value=h/(p-h)/(b/(p-b)),c.value=g/(m-g)/(C/(m-C)),i.value=b+Ir(_(),F(He,null,[U($y,{move:a.value,ratio:c.value,size:r.value,always:v.always},null,8,["move","ratio","size","always"]),U($y,{move:l.value,ratio:u.value,size:i.value,vertical:"",always:v.always},null,8,["move","ratio","size","always"])],64))}});var OL=Oe(TL,[["__file","bar.vue"]]);const $L=Ee({distance:{type:Number,default:0},height:{type:[String,Number],default:""},maxHeight:{type:[String,Number],default:""},native:Boolean,wrapStyle:{type:ee([String,Object,Array]),default:""},wrapClass:{type:[String,Array],default:""},viewClass:{type:[String,Array],default:""},viewStyle:{type:[String,Array,Object],default:""},noresize:Boolean,tag:{type:String,default:"div"},always:Boolean,minSize:{type:Number,default:20},tabindex:{type:[String,Number],default:void 0},id:String,role:String,...Xn(["ariaLabel","ariaOrientation"])}),tk={"end-reached":e=>["left","right","top","bottom"].includes(e),scroll:({scrollTop:e,scrollLeft:t})=>[e,t].every(Ge)},NL="ElScrollbar",RL=G({name:NL}),xL=G({...RL,props:$L,emits:tk,setup(e,{expose:t,emit:n}){const o=e,a=be("scrollbar");let l,r,i,u=0,c=0,d="";const f={bottom:!1,top:!1,right:!1,left:!1},v=A(),p=A(),m=A(),h=A(),g=S(()=>{const O={},R=Qt(o.height),H=Qt(o.maxHeight);return R&&(O.height=R),H&&(O.maxHeight=H),[o.wrapStyle,O]}),b=S(()=>[o.wrapClass,a.e("wrap"),{[a.em("wrap","hidden-default")]:!o.native}]),C=S(()=>[a.e("view"),o.viewClass]),w=O=>{var R;return(R=f[O])!=null?R:!1},y={top:"bottom",bottom:"top",left:"right",right:"left"},k=O=>{const R=y[d];if(!R)return;const H=O[d],q=O[R];H&&!f[d]&&(f[d]=!0),!q&&f[R]&&(f[R]=!1)},E=()=>{var O;if(p.value){(O=h.value)==null||O.handleScroll(p.value);const R=u,H=c;u=p.value.scrollTop,c=p.value.scrollLeft;const q={bottom:u+p.value.clientHeight>=p.value.scrollHeight-o.distance,top:u<=o.distance&&R!==0,right:c+p.value.clientWidth>=p.value.scrollWidth-o.distance&&H!==c,left:c<=o.distance&&H!==0};if(n("scroll",{scrollTop:u,scrollLeft:c}),R!==u&&(d=u>R?"bottom":"top"),H!==c&&(d=c>H?"right":"left"),o.distance>0){if(w(d))return;k(q)}q[d]&&n("end-reached",d)}};function T(O,R){it(O)?p.value.scrollTo(O):Ge(O)&&Ge(R)&&p.value.scrollTo(O,R)}const x=O=>{Ge(O)&&(p.value.scrollTop=O)},$=O=>{Ge(O)&&(p.value.scrollLeft=O)},M=()=>{var O;(O=h.value)==null||O.update(),f[d]=!1};return fe(()=>o.noresize,O=>{O?(l?.(),r?.(),i?.()):({stop:l}=Yt(m,M),{stop:r}=Yt(p,M),i=It("resize",M))},{immediate:!0}),fe(()=>[o.maxHeight,o.height],()=>{o.native||Me(()=>{var O;M(),p.value&&((O=h.value)==null||O.handleScroll(p.value))})}),wt(lm,Ot({scrollbarElement:v,wrapElement:p})),Vd(()=>{p.value&&(p.value.scrollTop=u,p.value.scrollLeft=c)}),mt(()=>{o.native||Me(()=>{M()})}),ta(()=>M()),t({wrapRef:p,update:M,scrollTo:T,setScrollTop:x,setScrollLeft:$,handleScroll:E}),(O,R)=>(_(),F("div",{ref_key:"scrollbarRef",ref:v,class:I(s(a).b())},[K("div",{ref_key:"wrapRef",ref:p,class:I(s(b)),style:Ye(s(g)),tabindex:O.tabindex,onScroll:E},[(_(),ie(ft(O.tag),{id:O.id,ref_key:"resizeRef",ref:m,class:I(s(C)),style:Ye(O.viewStyle),role:O.role,"aria-label":O.ariaLabel,"aria-orientation":O.ariaOrientation},{default:Y(()=>[re(O.$slots,"default")]),_:3},8,["id","class","style","role","aria-label","aria-orientation"]))],46,["tabindex"]),O.native?le("v-if",!0):(_(),ie(OL,{key:0,ref_key:"barRef",ref:h,always:O.always,"min-size":O.minSize},null,8,["always","min-size"]))],2))}});var IL=Oe(xL,[["__file","scrollbar.vue"]]);const Xo=rt(IL),rm=Symbol("popper"),nk=Symbol("popperContent"),ok=["dialog","grid","group","listbox","menu","navigation","tooltip","tree"],ak=Ee({role:{type:String,values:ok,default:"tooltip"}}),PL=G({name:"ElPopper",inheritAttrs:!1}),ML=G({...PL,props:ak,setup(e,{expose:t}){const n=e,o=A(),a=A(),l=A(),r=A(),i=S(()=>n.role),u={triggerRef:o,popperInstanceRef:a,contentRef:l,referenceRef:r,role:i};return t(u),wt(rm,u),(c,d)=>re(c.$slots,"default")}});var AL=Oe(ML,[["__file","popper.vue"]]);const LL=G({name:"ElPopperArrow",inheritAttrs:!1}),DL=G({...LL,setup(e,{expose:t}){const n=be("popper"),{arrowRef:o,arrowStyle:a}=Pe(nk,void 0);return Pt(()=>{o.value=void 0}),t({arrowRef:o}),(l,r)=>(_(),F("span",{ref_key:"arrowRef",ref:o,class:I(s(n).e("arrow")),style:Ye(s(a)),"data-popper-arrow":""},null,6))}});var BL=Oe(DL,[["__file","arrow.vue"]]);const lk=Ee({virtualRef:{type:ee(Object)},virtualTriggering:Boolean,onMouseenter:{type:ee(Function)},onMouseleave:{type:ee(Function)},onClick:{type:ee(Function)},onKeydown:{type:ee(Function)},onFocus:{type:ee(Function)},onBlur:{type:ee(Function)},onContextmenu:{type:ee(Function)},id:String,open:Boolean}),rk=Symbol("elForwardRef"),FL=e=>{wt(rk,{setForwardRef:n=>{e.value=n}})},VL=e=>({mounted(t){e(t)},updated(t){e(t)},unmounted(){e(null)}}),zL="ElOnlyChild",sk=G({name:zL,setup(e,{slots:t,attrs:n}){var o;const a=Pe(rk),l=VL((o=a?.setForwardRef)!=null?o:Mt);return()=>{var r;const i=(r=t.default)==null?void 0:r.call(t,n);if(!i)return null;const[u,c]=ik(i);return u?dt(Xa(u,n),[[l]]):null}}});function ik(e){if(!e)return[null,0];const t=e,n=t.filter(o=>o.type!==un).length;for(const o of t){if(it(o))switch(o.type){case un:continue;case Os:case"svg":return[Ny(o),n];case He:return ik(o.children);default:return[o,n]}return[Ny(o),n]}return[null,0]}function Ny(e){const t=be("only-child");return U("span",{class:t.e("content")},[e])}const HL=G({name:"ElPopperTrigger",inheritAttrs:!1}),KL=G({...HL,props:lk,setup(e,{expose:t}){const n=e,{role:o,triggerRef:a}=Pe(rm,void 0);FL(a);const l=S(()=>i.value?n.id:void 0),r=S(()=>{if(o&&o.value==="tooltip")return n.open&&n.id?n.id:void 0}),i=S(()=>{if(o&&o.value!=="tooltip")return o.value}),u=S(()=>i.value?`${n.open}`:void 0);let c;const d=["onMouseenter","onMouseleave","onClick","onKeydown","onFocus","onBlur","onContextmenu"];return mt(()=>{fe(()=>n.virtualRef,f=>{f&&(a.value=_n(f))},{immediate:!0}),fe(a,(f,v)=>{c?.(),c=void 0,uo(v)&&d.forEach(p=>{const m=n[p];m&&v.removeEventListener(p.slice(2).toLowerCase(),m,["onFocus","onBlur"].includes(p))}),uo(f)&&(d.forEach(p=>{const m=n[p];m&&f.addEventListener(p.slice(2).toLowerCase(),m,["onFocus","onBlur"].includes(p))}),Bi(f)&&(c=fe([l,r,i,u],p=>{["aria-controls","aria-describedby","aria-haspopup","aria-expanded"].forEach((m,h)=>{cn(p[h])?f.removeAttribute(m):f.setAttribute(m,p[h])})},{immediate:!0}))),uo(v)&&Bi(v)&&["aria-controls","aria-describedby","aria-haspopup","aria-expanded"].forEach(p=>v.removeAttribute(p))},{immediate:!0})}),Pt(()=>{if(c?.(),c=void 0,a.value&&uo(a.value)){const f=a.value;d.forEach(v=>{const p=n[v];p&&f.removeEventListener(v.slice(2).toLowerCase(),p,["onFocus","onBlur"].includes(v))}),a.value=void 0}}),t({triggerRef:a}),(f,v)=>f.virtualTriggering?le("v-if",!0):(_(),ie(s(sk),ht({key:0},f.$attrs,{"aria-controls":s(l),"aria-describedby":s(r),"aria-expanded":s(u),"aria-haspopup":s(i)}),{default:Y(()=>[re(f.$slots,"default")]),_:3},16,["aria-controls","aria-describedby","aria-expanded","aria-haspopup"]))}});var WL=Oe(KL,[["__file","trigger.vue"]]);const ap="focus-trap.focus-after-trapped",lp="focus-trap.focus-after-released",jL="focus-trap.focusout-prevented",Ry={cancelable:!0,bubbles:!1},UL={cancelable:!0,bubbles:!1},xy="focusAfterTrapped",Iy="focusAfterReleased",uk=Symbol("elFocusTrap"),sm=A(),cf=A(0),im=A(0);let qu=0;const ck=e=>{const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:o=>{const a=o.tagName==="INPUT"&&o.type==="hidden";return o.disabled||o.hidden||a?NodeFilter.FILTER_SKIP:o.tabIndex>=0||o===document.activeElement?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t},Py=(e,t)=>{for(const n of e)if(!qL(n,t))return n},qL=(e,t)=>{if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1},YL=e=>{const t=ck(e),n=Py(t,e),o=Py(t.reverse(),e);return[n,o]},GL=e=>e instanceof HTMLInputElement&&"select"in e,ml=(e,t)=>{if(e){const n=document.activeElement;gu(e,{preventScroll:!0}),im.value=window.performance.now(),e!==n&&GL(e)&&t&&e.select()}};function My(e,t){const n=[...e],o=e.indexOf(t);return o!==-1&&n.splice(o,1),n}const XL=()=>{let e=[];return{push:o=>{const a=e[0];a&&o!==a&&a.pause(),e=My(e,o),e.unshift(o)},remove:o=>{var a,l;e=My(e,o),(l=(a=e[0])==null?void 0:a.resume)==null||l.call(a)}}},JL=(e,t=!1)=>{const n=document.activeElement;for(const o of e)if(ml(o,t),document.activeElement!==n)return},Ay=XL(),ZL=()=>cf.value>im.value,Yu=()=>{sm.value="pointer",cf.value=window.performance.now()},Ly=()=>{sm.value="keyboard",cf.value=window.performance.now()},QL=()=>(mt(()=>{qu===0&&(document.addEventListener("mousedown",Yu),document.addEventListener("touchstart",Yu),document.addEventListener("keydown",Ly)),qu++}),Pt(()=>{qu--,qu<=0&&(document.removeEventListener("mousedown",Yu),document.removeEventListener("touchstart",Yu),document.removeEventListener("keydown",Ly))}),{focusReason:sm,lastUserFocusTimestamp:cf,lastAutomatedFocusTimestamp:im}),Gu=e=>new CustomEvent(jL,{...UL,detail:e}),ke={tab:"Tab",enter:"Enter",space:"Space",left:"ArrowLeft",up:"ArrowUp",right:"ArrowRight",down:"ArrowDown",esc:"Escape",delete:"Delete",backspace:"Backspace",numpadEnter:"NumpadEnter",pageUp:"PageUp",pageDown:"PageDown",home:"Home",end:"End"},Cn=(e,t,{checkForDefaultPrevented:n=!0}={})=>a=>{const l=e?.(a);if(n===!1||!l)return t?.(a)},Dy=e=>t=>t.pointerType==="mouse"?e(t):void 0,Vt=e=>{if(e.code&&e.code!=="Unidentified")return e.code;const t=dk(e);if(t){if(Object.values(ke).includes(t))return t;switch(t){case" ":return ke.space;default:return""}}return""},dk=e=>{let t=e.key&&e.key!=="Unidentified"?e.key:"";if(!t&&e.type==="keyup"&&XS()){const n=e.target;t=n.value.charAt(n.selectionStart-1)}return t};let zr=[];const By=e=>{Vt(e)===ke.esc&&zr.forEach(n=>n(e))},eD=e=>{mt(()=>{zr.length===0&&document.addEventListener("keydown",By),xt&&zr.push(e)}),Pt(()=>{zr=zr.filter(t=>t!==e),zr.length===0&&xt&&document.removeEventListener("keydown",By)})},tD=G({name:"ElFocusTrap",inheritAttrs:!1,props:{loop:Boolean,trapped:Boolean,focusTrapEl:Object,focusStartEl:{type:[Object,String],default:"first"}},emits:[xy,Iy,"focusin","focusout","focusout-prevented","release-requested"],setup(e,{emit:t}){const n=A();let o,a;const{focusReason:l}=QL();eD(m=>{e.trapped&&!r.paused&&t("release-requested",m)});const r={paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}},i=m=>{if(!e.loop&&!e.trapped||r.paused)return;const{altKey:h,ctrlKey:g,metaKey:b,currentTarget:C,shiftKey:w}=m,{loop:y}=e,E=Vt(m)===ke.tab&&!h&&!g&&!b,T=document.activeElement;if(E&&T){const x=C,[$,M]=YL(x);if($&&M){if(!w&&T===M){const R=Gu({focusReason:l.value});t("focusout-prevented",R),R.defaultPrevented||(m.preventDefault(),y&&ml($,!0))}else if(w&&[$,x].includes(T)){const R=Gu({focusReason:l.value});t("focusout-prevented",R),R.defaultPrevented||(m.preventDefault(),y&&ml(M,!0))}}else if(T===x){const R=Gu({focusReason:l.value});t("focusout-prevented",R),R.defaultPrevented||m.preventDefault()}}};wt(uk,{focusTrapRef:n,onKeydown:i}),fe(()=>e.focusTrapEl,m=>{m&&(n.value=m)},{immediate:!0}),fe([n],([m],[h])=>{m&&(m.addEventListener("keydown",i),m.addEventListener("focusin",d),m.addEventListener("focusout",f)),h&&(h.removeEventListener("keydown",i),h.removeEventListener("focusin",d),h.removeEventListener("focusout",f))});const u=m=>{t(xy,m)},c=m=>t(Iy,m),d=m=>{const h=s(n);if(!h)return;const g=m.target,b=m.relatedTarget,C=g&&h.contains(g);e.trapped||b&&h.contains(b)||(o=b),C&&t("focusin",m),!r.paused&&e.trapped&&(C?a=g:ml(a,!0))},f=m=>{const h=s(n);if(!(r.paused||!h))if(e.trapped){const g=m.relatedTarget;!cn(g)&&!h.contains(g)&&setTimeout(()=>{if(!r.paused&&e.trapped){const b=Gu({focusReason:l.value});t("focusout-prevented",b),b.defaultPrevented||ml(a,!0)}},0)}else{const g=m.target;g&&h.contains(g)||t("focusout",m)}};async function v(){await Me();const m=s(n);if(m){Ay.push(r);const h=m.contains(document.activeElement)?o:document.activeElement;if(o=h,!m.contains(h)){const b=new Event(ap,Ry);m.addEventListener(ap,u),m.dispatchEvent(b),b.defaultPrevented||Me(()=>{let C=e.focusStartEl;ze(C)||(ml(C),document.activeElement!==C&&(C="first")),C==="first"&&JL(ck(m),!0),(document.activeElement===h||C==="container")&&ml(m)})}}}function p(){const m=s(n);if(m){m.removeEventListener(ap,u);const h=new CustomEvent(lp,{...Ry,detail:{focusReason:l.value}});m.addEventListener(lp,c),m.dispatchEvent(h),!h.defaultPrevented&&(l.value=="keyboard"||!ZL()||m.contains(document.activeElement))&&ml(o??document.body),m.removeEventListener(lp,c),Ay.remove(r),o=null,a=null}}return mt(()=>{e.trapped&&v(),fe(()=>e.trapped,m=>{m?v():p()})}),Pt(()=>{e.trapped&&p(),n.value&&(n.value.removeEventListener("keydown",i),n.value.removeEventListener("focusin",d),n.value.removeEventListener("focusout",f),n.value=void 0),o=null,a=null}),{onKeydown:i}}});function nD(e,t,n,o,a,l){return re(e.$slots,"default",{handleKeydown:e.onKeydown})}var Ms=Oe(tD,[["render",nD],["__file","focus-trap.vue"]]),fo="top",Lo="bottom",Do="right",po="left",um="auto",yu=[fo,Lo,Do,po],fs="start",Fi="end",oD="clippingParents",fk="viewport",qs="popper",aD="reference",Fy=yu.reduce(function(e,t){return e.concat([t+"-"+fs,t+"-"+Fi])},[]),cl=[].concat(yu,[um]).reduce(function(e,t){return e.concat([t,t+"-"+fs,t+"-"+Fi])},[]),lD="beforeRead",rD="read",sD="afterRead",iD="beforeMain",uD="main",cD="afterMain",dD="beforeWrite",fD="write",pD="afterWrite",vD=[lD,rD,sD,iD,uD,cD,dD,fD,pD];function Ea(e){return e?(e.nodeName||"").toLowerCase():null}function aa(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function ps(e){var t=aa(e).Element;return e instanceof t||e instanceof Element}function Po(e){var t=aa(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function cm(e){if(typeof ShadowRoot>"u")return!1;var t=aa(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function hD(e){var t=e.state;Object.keys(t.elements).forEach(function(n){var o=t.styles[n]||{},a=t.attributes[n]||{},l=t.elements[n];!Po(l)||!Ea(l)||(Object.assign(l.style,o),Object.keys(a).forEach(function(r){var i=a[r];i===!1?l.removeAttribute(r):l.setAttribute(r,i===!0?"":i)}))})}function mD(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(o){var a=t.elements[o],l=t.attributes[o]||{},r=Object.keys(t.styles.hasOwnProperty(o)?t.styles[o]:n[o]),i=r.reduce(function(u,c){return u[c]="",u},{});!Po(a)||!Ea(a)||(Object.assign(a.style,i),Object.keys(l).forEach(function(u){a.removeAttribute(u)}))})}}var pk={name:"applyStyles",enabled:!0,phase:"write",fn:hD,effect:mD,requires:["computeStyles"]};function ma(e){return e.split("-")[0]}var ur=Math.max,ld=Math.min,vs=Math.round;function hs(e,t){t===void 0&&(t=!1);var n=e.getBoundingClientRect(),o=1,a=1;if(Po(e)&&t){var l=e.offsetHeight,r=e.offsetWidth;r>0&&(o=vs(n.width)/r||1),l>0&&(a=vs(n.height)/l||1)}return{width:n.width/o,height:n.height/a,top:n.top/a,right:n.right/o,bottom:n.bottom/a,left:n.left/o,x:n.left/o,y:n.top/a}}function dm(e){var t=hs(e),n=e.offsetWidth,o=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-o)<=1&&(o=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:o}}function vk(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&cm(n)){var o=t;do{if(o&&e.isSameNode(o))return!0;o=o.parentNode||o.host}while(o)}return!1}function tl(e){return aa(e).getComputedStyle(e)}function gD(e){return["table","td","th"].indexOf(Ea(e))>=0}function zl(e){return((ps(e)?e.ownerDocument:e.document)||window.document).documentElement}function df(e){return Ea(e)==="html"?e:e.assignedSlot||e.parentNode||(cm(e)?e.host:null)||zl(e)}function Vy(e){return!Po(e)||tl(e).position==="fixed"?null:e.offsetParent}function bD(e){var t=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,n=navigator.userAgent.indexOf("Trident")!==-1;if(n&&Po(e)){var o=tl(e);if(o.position==="fixed")return null}var a=df(e);for(cm(a)&&(a=a.host);Po(a)&&["html","body"].indexOf(Ea(a))<0;){var l=tl(a);if(l.transform!=="none"||l.perspective!=="none"||l.contain==="paint"||["transform","perspective"].indexOf(l.willChange)!==-1||t&&l.willChange==="filter"||t&&l.filter&&l.filter!=="none")return a;a=a.parentNode}return null}function wu(e){for(var t=aa(e),n=Vy(e);n&&gD(n)&&tl(n).position==="static";)n=Vy(n);return n&&(Ea(n)==="html"||Ea(n)==="body"&&tl(n).position==="static")?t:n||bD(e)||t}function fm(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function gi(e,t,n){return ur(e,ld(t,n))}function yD(e,t,n){var o=gi(e,t,n);return o>n?n:o}function hk(){return{top:0,right:0,bottom:0,left:0}}function mk(e){return Object.assign({},hk(),e)}function gk(e,t){return t.reduce(function(n,o){return n[o]=e,n},{})}var wD=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,mk(typeof e!="number"?e:gk(e,yu))};function CD(e){var t,n=e.state,o=e.name,a=e.options,l=n.elements.arrow,r=n.modifiersData.popperOffsets,i=ma(n.placement),u=fm(i),c=[po,Do].indexOf(i)>=0,d=c?"height":"width";if(!(!l||!r)){var f=wD(a.padding,n),v=dm(l),p=u==="y"?fo:po,m=u==="y"?Lo:Do,h=n.rects.reference[d]+n.rects.reference[u]-r[u]-n.rects.popper[d],g=r[u]-n.rects.reference[u],b=wu(l),C=b?u==="y"?b.clientHeight||0:b.clientWidth||0:0,w=h/2-g/2,y=f[p],k=C-v[d]-f[m],E=C/2-v[d]/2+w,T=gi(y,E,k),x=u;n.modifiersData[o]=(t={},t[x]=T,t.centerOffset=T-E,t)}}function SD(e){var t=e.state,n=e.options,o=n.element,a=o===void 0?"[data-popper-arrow]":o;a!=null&&(typeof a=="string"&&(a=t.elements.popper.querySelector(a),!a)||!vk(t.elements.popper,a)||(t.elements.arrow=a))}var kD={name:"arrow",enabled:!0,phase:"main",fn:CD,effect:SD,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function ms(e){return e.split("-")[1]}var ED={top:"auto",right:"auto",bottom:"auto",left:"auto"};function _D(e){var t=e.x,n=e.y,o=window,a=o.devicePixelRatio||1;return{x:vs(t*a)/a||0,y:vs(n*a)/a||0}}function zy(e){var t,n=e.popper,o=e.popperRect,a=e.placement,l=e.variation,r=e.offsets,i=e.position,u=e.gpuAcceleration,c=e.adaptive,d=e.roundOffsets,f=e.isFixed,v=r.x,p=v===void 0?0:v,m=r.y,h=m===void 0?0:m,g=typeof d=="function"?d({x:p,y:h}):{x:p,y:h};p=g.x,h=g.y;var b=r.hasOwnProperty("x"),C=r.hasOwnProperty("y"),w=po,y=fo,k=window;if(c){var E=wu(n),T="clientHeight",x="clientWidth";if(E===aa(n)&&(E=zl(n),tl(E).position!=="static"&&i==="absolute"&&(T="scrollHeight",x="scrollWidth")),E=E,a===fo||(a===po||a===Do)&&l===Fi){y=Lo;var $=f&&E===k&&k.visualViewport?k.visualViewport.height:E[T];h-=$-o.height,h*=u?1:-1}if(a===po||(a===fo||a===Lo)&&l===Fi){w=Do;var M=f&&E===k&&k.visualViewport?k.visualViewport.width:E[x];p-=M-o.width,p*=u?1:-1}}var O=Object.assign({position:i},c&&ED),R=d===!0?_D({x:p,y:h}):{x:p,y:h};if(p=R.x,h=R.y,u){var H;return Object.assign({},O,(H={},H[y]=C?"0":"",H[w]=b?"0":"",H.transform=(k.devicePixelRatio||1)<=1?"translate("+p+"px, "+h+"px)":"translate3d("+p+"px, "+h+"px, 0)",H))}return Object.assign({},O,(t={},t[y]=C?h+"px":"",t[w]=b?p+"px":"",t.transform="",t))}function TD(e){var t=e.state,n=e.options,o=n.gpuAcceleration,a=o===void 0?!0:o,l=n.adaptive,r=l===void 0?!0:l,i=n.roundOffsets,u=i===void 0?!0:i,c={placement:ma(t.placement),variation:ms(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:a,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,zy(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:r,roundOffsets:u})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,zy(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:u})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}var bk={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:TD,data:{}},Xu={passive:!0};function OD(e){var t=e.state,n=e.instance,o=e.options,a=o.scroll,l=a===void 0?!0:a,r=o.resize,i=r===void 0?!0:r,u=aa(t.elements.popper),c=[].concat(t.scrollParents.reference,t.scrollParents.popper);return l&&c.forEach(function(d){d.addEventListener("scroll",n.update,Xu)}),i&&u.addEventListener("resize",n.update,Xu),function(){l&&c.forEach(function(d){d.removeEventListener("scroll",n.update,Xu)}),i&&u.removeEventListener("resize",n.update,Xu)}}var yk={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:OD,data:{}},$D={left:"right",right:"left",bottom:"top",top:"bottom"};function gc(e){return e.replace(/left|right|bottom|top/g,function(t){return $D[t]})}var ND={start:"end",end:"start"};function Hy(e){return e.replace(/start|end/g,function(t){return ND[t]})}function pm(e){var t=aa(e),n=t.pageXOffset,o=t.pageYOffset;return{scrollLeft:n,scrollTop:o}}function vm(e){return hs(zl(e)).left+pm(e).scrollLeft}function RD(e){var t=aa(e),n=zl(e),o=t.visualViewport,a=n.clientWidth,l=n.clientHeight,r=0,i=0;return o&&(a=o.width,l=o.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(r=o.offsetLeft,i=o.offsetTop)),{width:a,height:l,x:r+vm(e),y:i}}function xD(e){var t,n=zl(e),o=pm(e),a=(t=e.ownerDocument)==null?void 0:t.body,l=ur(n.scrollWidth,n.clientWidth,a?a.scrollWidth:0,a?a.clientWidth:0),r=ur(n.scrollHeight,n.clientHeight,a?a.scrollHeight:0,a?a.clientHeight:0),i=-o.scrollLeft+vm(e),u=-o.scrollTop;return tl(a||n).direction==="rtl"&&(i+=ur(n.clientWidth,a?a.clientWidth:0)-l),{width:l,height:r,x:i,y:u}}function hm(e){var t=tl(e),n=t.overflow,o=t.overflowX,a=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+a+o)}function wk(e){return["html","body","#document"].indexOf(Ea(e))>=0?e.ownerDocument.body:Po(e)&&hm(e)?e:wk(df(e))}function bi(e,t){var n;t===void 0&&(t=[]);var o=wk(e),a=o===((n=e.ownerDocument)==null?void 0:n.body),l=aa(o),r=a?[l].concat(l.visualViewport||[],hm(o)?o:[]):o,i=t.concat(r);return a?i:i.concat(bi(df(r)))}function tv(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function ID(e){var t=hs(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ky(e,t){return t===fk?tv(RD(e)):ps(t)?ID(t):tv(xD(zl(e)))}function PD(e){var t=bi(df(e)),n=["absolute","fixed"].indexOf(tl(e).position)>=0,o=n&&Po(e)?wu(e):e;return ps(o)?t.filter(function(a){return ps(a)&&vk(a,o)&&Ea(a)!=="body"}):[]}function MD(e,t,n){var o=t==="clippingParents"?PD(e):[].concat(t),a=[].concat(o,[n]),l=a[0],r=a.reduce(function(i,u){var c=Ky(e,u);return i.top=ur(c.top,i.top),i.right=ld(c.right,i.right),i.bottom=ld(c.bottom,i.bottom),i.left=ur(c.left,i.left),i},Ky(e,l));return r.width=r.right-r.left,r.height=r.bottom-r.top,r.x=r.left,r.y=r.top,r}function Ck(e){var t=e.reference,n=e.element,o=e.placement,a=o?ma(o):null,l=o?ms(o):null,r=t.x+t.width/2-n.width/2,i=t.y+t.height/2-n.height/2,u;switch(a){case fo:u={x:r,y:t.y-n.height};break;case Lo:u={x:r,y:t.y+t.height};break;case Do:u={x:t.x+t.width,y:i};break;case po:u={x:t.x-n.width,y:i};break;default:u={x:t.x,y:t.y}}var c=a?fm(a):null;if(c!=null){var d=c==="y"?"height":"width";switch(l){case fs:u[c]=u[c]-(t[d]/2-n[d]/2);break;case Fi:u[c]=u[c]+(t[d]/2-n[d]/2);break}}return u}function Vi(e,t){t===void 0&&(t={});var n=t,o=n.placement,a=o===void 0?e.placement:o,l=n.boundary,r=l===void 0?oD:l,i=n.rootBoundary,u=i===void 0?fk:i,c=n.elementContext,d=c===void 0?qs:c,f=n.altBoundary,v=f===void 0?!1:f,p=n.padding,m=p===void 0?0:p,h=mk(typeof m!="number"?m:gk(m,yu)),g=d===qs?aD:qs,b=e.rects.popper,C=e.elements[v?g:d],w=MD(ps(C)?C:C.contextElement||zl(e.elements.popper),r,u),y=hs(e.elements.reference),k=Ck({reference:y,element:b,placement:a}),E=tv(Object.assign({},b,k)),T=d===qs?E:y,x={top:w.top-T.top+h.top,bottom:T.bottom-w.bottom+h.bottom,left:w.left-T.left+h.left,right:T.right-w.right+h.right},$=e.modifiersData.offset;if(d===qs&&$){var M=$[a];Object.keys(x).forEach(function(O){var R=[Do,Lo].indexOf(O)>=0?1:-1,H=[fo,Lo].indexOf(O)>=0?"y":"x";x[O]+=M[H]*R})}return x}function AD(e,t){t===void 0&&(t={});var n=t,o=n.placement,a=n.boundary,l=n.rootBoundary,r=n.padding,i=n.flipVariations,u=n.allowedAutoPlacements,c=u===void 0?cl:u,d=ms(o),f=d?i?Fy:Fy.filter(function(m){return ms(m)===d}):yu,v=f.filter(function(m){return c.indexOf(m)>=0});v.length===0&&(v=f);var p=v.reduce(function(m,h){return m[h]=Vi(e,{placement:h,boundary:a,rootBoundary:l,padding:r})[ma(h)],m},{});return Object.keys(p).sort(function(m,h){return p[m]-p[h]})}function LD(e){if(ma(e)===um)return[];var t=gc(e);return[Hy(e),t,Hy(t)]}function DD(e){var t=e.state,n=e.options,o=e.name;if(!t.modifiersData[o]._skip){for(var a=n.mainAxis,l=a===void 0?!0:a,r=n.altAxis,i=r===void 0?!0:r,u=n.fallbackPlacements,c=n.padding,d=n.boundary,f=n.rootBoundary,v=n.altBoundary,p=n.flipVariations,m=p===void 0?!0:p,h=n.allowedAutoPlacements,g=t.options.placement,b=ma(g),C=b===g,w=u||(C||!m?[gc(g)]:LD(g)),y=[g].concat(w).reduce(function(oe,ae){return oe.concat(ma(ae)===um?AD(t,{placement:ae,boundary:d,rootBoundary:f,padding:c,flipVariations:m,allowedAutoPlacements:h}):ae)},[]),k=t.rects.reference,E=t.rects.popper,T=new Map,x=!0,$=y[0],M=0;M=0,X=q?"width":"height",P=Vi(t,{placement:O,boundary:d,rootBoundary:f,altBoundary:v,padding:c}),N=q?H?Do:po:H?Lo:fo;k[X]>E[X]&&(N=gc(N));var L=gc(N),z=[];if(l&&z.push(P[R]<=0),i&&z.push(P[N]<=0,P[L]<=0),z.every(function(oe){return oe})){$=O,x=!1;break}T.set(O,z)}if(x)for(var B=m?3:1,W=function(oe){var ae=y.find(function(ce){var ne=T.get(ce);if(ne)return ne.slice(0,oe).every(function(ue){return ue})});if(ae)return $=ae,"break"},V=B;V>0;V--){var j=W(V);if(j==="break")break}t.placement!==$&&(t.modifiersData[o]._skip=!0,t.placement=$,t.reset=!0)}}var BD={name:"flip",enabled:!0,phase:"main",fn:DD,requiresIfExists:["offset"],data:{_skip:!1}};function Wy(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function jy(e){return[fo,Do,Lo,po].some(function(t){return e[t]>=0})}function FD(e){var t=e.state,n=e.name,o=t.rects.reference,a=t.rects.popper,l=t.modifiersData.preventOverflow,r=Vi(t,{elementContext:"reference"}),i=Vi(t,{altBoundary:!0}),u=Wy(r,o),c=Wy(i,a,l),d=jy(u),f=jy(c);t.modifiersData[n]={referenceClippingOffsets:u,popperEscapeOffsets:c,isReferenceHidden:d,hasPopperEscaped:f},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":d,"data-popper-escaped":f})}var VD={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:FD};function zD(e,t,n){var o=ma(e),a=[po,fo].indexOf(o)>=0?-1:1,l=typeof n=="function"?n(Object.assign({},t,{placement:e})):n,r=l[0],i=l[1];return r=r||0,i=(i||0)*a,[po,Do].indexOf(o)>=0?{x:i,y:r}:{x:r,y:i}}function HD(e){var t=e.state,n=e.options,o=e.name,a=n.offset,l=a===void 0?[0,0]:a,r=cl.reduce(function(d,f){return d[f]=zD(f,t.rects,l),d},{}),i=r[t.placement],u=i.x,c=i.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=u,t.modifiersData.popperOffsets.y+=c),t.modifiersData[o]=r}var KD={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:HD};function WD(e){var t=e.state,n=e.name;t.modifiersData[n]=Ck({reference:t.rects.reference,element:t.rects.popper,placement:t.placement})}var Sk={name:"popperOffsets",enabled:!0,phase:"read",fn:WD,data:{}};function jD(e){return e==="x"?"y":"x"}function UD(e){var t=e.state,n=e.options,o=e.name,a=n.mainAxis,l=a===void 0?!0:a,r=n.altAxis,i=r===void 0?!1:r,u=n.boundary,c=n.rootBoundary,d=n.altBoundary,f=n.padding,v=n.tether,p=v===void 0?!0:v,m=n.tetherOffset,h=m===void 0?0:m,g=Vi(t,{boundary:u,rootBoundary:c,padding:f,altBoundary:d}),b=ma(t.placement),C=ms(t.placement),w=!C,y=fm(b),k=jD(y),E=t.modifiersData.popperOffsets,T=t.rects.reference,x=t.rects.popper,$=typeof h=="function"?h(Object.assign({},t.rects,{placement:t.placement})):h,M=typeof $=="number"?{mainAxis:$,altAxis:$}:Object.assign({mainAxis:0,altAxis:0},$),O=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,R={x:0,y:0};if(E){if(l){var H,q=y==="y"?fo:po,X=y==="y"?Lo:Do,P=y==="y"?"height":"width",N=E[y],L=N+g[q],z=N-g[X],B=p?-x[P]/2:0,W=C===fs?T[P]:x[P],V=C===fs?-x[P]:-T[P],j=t.elements.arrow,oe=p&&j?dm(j):{width:0,height:0},ae=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:hk(),ce=ae[q],ne=ae[X],ue=gi(0,T[P],oe[P]),Q=w?T[P]/2-B-ue-ce-M.mainAxis:W-ue-ce-M.mainAxis,te=w?-T[P]/2+B+ue+ne+M.mainAxis:V+ue+ne+M.mainAxis,J=t.elements.arrow&&wu(t.elements.arrow),D=J?y==="y"?J.clientTop||0:J.clientLeft||0:0,Z=(H=O?.[y])!=null?H:0,se=N+Q-Z-D,pe=N+te-Z,he=gi(p?ld(L,se):L,N,p?ur(z,pe):z);E[y]=he,R[y]=he-N}if(i){var ve,Ie=y==="x"?fo:po,_e=y==="x"?Lo:Do,De=E[k],ye=k==="y"?"height":"width",Re=De+g[Ie],Ne=De-g[_e],Ae=[fo,po].indexOf(b)!==-1,Fe=(ve=O?.[k])!=null?ve:0,me=Ae?Re:De-T[ye]-x[ye]-Fe+M.altAxis,Ke=Ae?De+T[ye]+x[ye]-Fe-M.altAxis:Ne,Le=p&&Ae?yD(me,De,Ke):gi(p?me:Re,De,p?Ke:Ne);E[k]=Le,R[k]=Le-De}t.modifiersData[o]=R}}var qD={name:"preventOverflow",enabled:!0,phase:"main",fn:UD,requiresIfExists:["offset"]};function YD(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function GD(e){return e===aa(e)||!Po(e)?pm(e):YD(e)}function XD(e){var t=e.getBoundingClientRect(),n=vs(t.width)/e.offsetWidth||1,o=vs(t.height)/e.offsetHeight||1;return n!==1||o!==1}function JD(e,t,n){n===void 0&&(n=!1);var o=Po(t),a=Po(t)&&XD(t),l=zl(t),r=hs(e,a),i={scrollLeft:0,scrollTop:0},u={x:0,y:0};return(o||!o&&!n)&&((Ea(t)!=="body"||hm(l))&&(i=GD(t)),Po(t)?(u=hs(t,!0),u.x+=t.clientLeft,u.y+=t.clientTop):l&&(u.x=vm(l))),{x:r.left+i.scrollLeft-u.x,y:r.top+i.scrollTop-u.y,width:r.width,height:r.height}}function ZD(e){var t=new Map,n=new Set,o=[];e.forEach(function(l){t.set(l.name,l)});function a(l){n.add(l.name);var r=[].concat(l.requires||[],l.requiresIfExists||[]);r.forEach(function(i){if(!n.has(i)){var u=t.get(i);u&&a(u)}}),o.push(l)}return e.forEach(function(l){n.has(l.name)||a(l)}),o}function QD(e){var t=ZD(e);return vD.reduce(function(n,o){return n.concat(t.filter(function(a){return a.phase===o}))},[])}function e6(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}function t6(e){var t=e.reduce(function(n,o){var a=n[o.name];return n[o.name]=a?Object.assign({},a,o,{options:Object.assign({},a.options,o.options),data:Object.assign({},a.data,o.data)}):o,n},{});return Object.keys(t).map(function(n){return t[n]})}var Uy={placement:"bottom",modifiers:[],strategy:"absolute"};function qy(){for(var e=arguments.length,t=new Array(e),n=0;n({})},strategy:{type:String,values:l6,default:"absolute"}}),Ek=Ee({...r6,...kk,id:String,style:{type:ee([String,Array,Object])},className:{type:ee([String,Array,Object])},effect:{type:ee(String),default:"dark"},visible:Boolean,enterable:{type:Boolean,default:!0},pure:Boolean,focusOnShow:Boolean,trapping:Boolean,popperClass:{type:ee([String,Array,Object])},popperStyle:{type:ee([String,Array,Object])},referenceEl:{type:ee(Object)},triggerTargetEl:{type:ee(Object)},stopPopperMouseEvent:{type:Boolean,default:!0},virtualTriggering:Boolean,zIndex:Number,...Xn(["ariaLabel"]),loop:Boolean}),s6={mouseenter:e=>e instanceof MouseEvent,mouseleave:e=>e instanceof MouseEvent,focus:()=>!0,blur:()=>!0,close:()=>!0},i6=(e,t)=>{const n=A(!1),o=A(),a=()=>{t("focus")},l=c=>{var d;((d=c.detail)==null?void 0:d.focusReason)!=="pointer"&&(o.value="first",t("blur"))},r=c=>{e.visible&&!n.value&&(c.target&&(o.value=c.target),n.value=!0)},i=c=>{e.trapping||(c.detail.focusReason==="pointer"&&c.preventDefault(),n.value=!1)},u=()=>{n.value=!1,t("close")};return Pt(()=>{o.value=void 0}),{focusStartRef:o,trapped:n,onFocusAfterReleased:l,onFocusAfterTrapped:a,onFocusInTrap:r,onFocusoutPrevented:i,onReleaseRequested:u}},u6=(e,t=[])=>{const{placement:n,strategy:o,popperOptions:a}=e,l={placement:n,strategy:o,...a,modifiers:[...d6(e),...t]};return f6(l,a?.modifiers),l},c6=e=>{if(xt)return _n(e)};function d6(e){const{offset:t,gpuAcceleration:n,fallbackPlacements:o}=e;return[{name:"offset",options:{offset:[0,t??12]}},{name:"preventOverflow",options:{padding:{top:0,bottom:0,left:0,right:0}}},{name:"flip",options:{padding:5,fallbackPlacements:o}},{name:"computeStyles",options:{gpuAcceleration:n}}]}function f6(e,t){t&&(e.modifiers=[...e.modifiers,...t??[]])}const p6=(e,t,n={})=>{const o={name:"updateState",enabled:!0,phase:"write",fn:({state:u})=>{const c=v6(u);Object.assign(r.value,c)},requires:["computeStyles"]},a=S(()=>{const{onFirstUpdate:u,placement:c,strategy:d,modifiers:f}=s(n);return{onFirstUpdate:u,placement:c||"bottom",strategy:d||"absolute",modifiers:[...f||[],o,{name:"applyStyles",enabled:!1}]}}),l=jt(),r=A({styles:{popper:{position:s(a).strategy,left:"0",top:"0"},arrow:{position:"absolute"}},attributes:{}}),i=()=>{l.value&&(l.value.destroy(),l.value=void 0)};return fe(a,u=>{const c=s(l);c&&c.setOptions(u)},{deep:!0}),fe([e,t],([u,c])=>{i(),!(!u||!c)&&(l.value=a6(u,c,s(a)))}),Pt(()=>{i()}),{state:S(()=>{var u;return{...((u=s(l))==null?void 0:u.state)||{}}}),styles:S(()=>s(r).styles),attributes:S(()=>s(r).attributes),update:()=>{var u;return(u=s(l))==null?void 0:u.update()},forceUpdate:()=>{var u;return(u=s(l))==null?void 0:u.forceUpdate()},instanceRef:S(()=>s(l))}};function v6(e){const t=Object.keys(e.elements),n=Ai(t.map(a=>[a,e.styles[a]||{}])),o=Ai(t.map(a=>[a,e.attributes[a]]));return{styles:n,attributes:o}}const h6=0,m6=e=>{const{popperInstanceRef:t,contentRef:n,triggerRef:o,role:a}=Pe(rm,void 0),l=A(),r=S(()=>e.arrowOffset),i=S(()=>({name:"eventListeners",enabled:!!e.visible})),u=S(()=>{var b;const C=s(l),w=(b=s(r))!=null?b:h6;return{name:"arrow",enabled:!CA(C),options:{element:C,padding:w}}}),c=S(()=>({onFirstUpdate:()=>{m()},...u6(e,[s(u),s(i)])})),d=S(()=>c6(e.referenceEl)||s(o)),{attributes:f,state:v,styles:p,update:m,forceUpdate:h,instanceRef:g}=p6(d,n,c);return fe(g,b=>t.value=b,{flush:"sync"}),mt(()=>{fe(()=>{var b,C;return(C=(b=s(d))==null?void 0:b.getBoundingClientRect)==null?void 0:C.call(b)},()=>{m()})}),Pt(()=>{t.value=void 0}),{attributes:f,arrowRef:l,contentRef:n,instanceRef:g,state:v,styles:p,role:a,forceUpdate:h,update:m}},g6=(e,{attributes:t,styles:n,role:o})=>{const{nextZIndex:a}=pu(),l=be("popper"),r=S(()=>s(t).popper),i=A(Ge(e.zIndex)?e.zIndex:a()),u=S(()=>[l.b(),l.is("pure",e.pure),l.is(e.effect),e.popperClass]),c=S(()=>[{zIndex:s(i)},s(n).popper,e.popperStyle||{}]),d=S(()=>o.value==="dialog"?"false":void 0),f=S(()=>s(n).arrow||{});return{ariaModal:d,arrowStyle:f,contentAttrs:r,contentClass:u,contentStyle:c,contentZIndex:i,updateZIndex:()=>{i.value=Ge(e.zIndex)?e.zIndex:a()}}},b6=G({name:"ElPopperContent"}),y6=G({...b6,props:Ek,emits:s6,setup(e,{expose:t,emit:n}){const o=e,{focusStartRef:a,trapped:l,onFocusAfterReleased:r,onFocusAfterTrapped:i,onFocusInTrap:u,onFocusoutPrevented:c,onReleaseRequested:d}=i6(o,n),{attributes:f,arrowRef:v,contentRef:p,styles:m,instanceRef:h,role:g,update:b}=m6(o),{ariaModal:C,arrowStyle:w,contentAttrs:y,contentClass:k,contentStyle:E,updateZIndex:T}=g6(o,{styles:m,attributes:f,role:g}),x=Pe(ka,void 0);wt(nk,{arrowStyle:w,arrowRef:v}),x&&wt(ka,{...x,addInputId:Mt,removeInputId:Mt});let $;const M=(R=!0)=>{b(),R&&T()},O=()=>{M(!1),o.visible&&o.focusOnShow?l.value=!0:o.visible===!1&&(l.value=!1)};return mt(()=>{fe(()=>o.triggerTargetEl,(R,H)=>{$?.(),$=void 0;const q=s(R||p.value),X=s(H||p.value);uo(q)&&($=fe([g,()=>o.ariaLabel,C,()=>o.id],P=>{["role","aria-label","aria-modal","id"].forEach((N,L)=>{cn(P[L])?q.removeAttribute(N):q.setAttribute(N,P[L])})},{immediate:!0})),X!==q&&uo(X)&&["role","aria-label","aria-modal","id"].forEach(P=>{X.removeAttribute(P)})},{immediate:!0}),fe(()=>o.visible,O,{immediate:!0})}),Pt(()=>{$?.(),$=void 0,p.value=void 0}),t({popperContentRef:p,popperInstanceRef:h,updatePopper:M,contentStyle:E}),(R,H)=>(_(),F("div",ht({ref_key:"contentRef",ref:p},s(y),{style:s(E),class:s(k),tabindex:"-1",onMouseenter:q=>R.$emit("mouseenter",q),onMouseleave:q=>R.$emit("mouseleave",q)}),[U(s(Ms),{loop:R.loop,trapped:s(l),"trap-on-focus-in":!0,"focus-trap-el":s(p),"focus-start-el":s(a),onFocusAfterTrapped:s(i),onFocusAfterReleased:s(r),onFocusin:s(u),onFocusoutPrevented:s(c),onReleaseRequested:s(d)},{default:Y(()=>[re(R.$slots,"default")]),_:3},8,["loop","trapped","focus-trap-el","focus-start-el","onFocusAfterTrapped","onFocusAfterReleased","onFocusin","onFocusoutPrevented","onReleaseRequested"])],16,["onMouseenter","onMouseleave"]))}});var w6=Oe(y6,[["__file","content.vue"]]);const _k=rt(AL),gm=Symbol("elTooltip");function Yy(){let e;const t=(o,a)=>{n(),e=window.setTimeout(o,a)},n=()=>window.clearTimeout(e);return Is(()=>n()),{registerTimeout:t,cancelTimeout:n}}const C6=Ee({showAfter:{type:Number,default:0},hideAfter:{type:Number,default:200},autoClose:{type:Number,default:0}}),S6=({showAfter:e,hideAfter:t,autoClose:n,open:o,close:a})=>{const{registerTimeout:l}=Yy(),{registerTimeout:r,cancelTimeout:i}=Yy();return{onOpen:(d,f=s(e))=>{l(()=>{o(d);const v=s(n);Ge(v)&&v>0&&r(()=>{a(d)},v)},f)},onClose:(d,f=s(t))=>{i(),l(()=>{a(d)},f)}}},ff=Ee({to:{type:ee([String,Object]),required:!0},disabled:Boolean}),zt=Ee({...C6,...Ek,appendTo:{type:ff.to.type},content:{type:String,default:""},rawContent:Boolean,persistent:Boolean,visible:{type:ee(Boolean),default:null},transition:String,teleported:{type:Boolean,default:!0},disabled:Boolean,...Xn(["ariaLabel"])}),ga=Ee({...lk,disabled:Boolean,trigger:{type:ee([String,Array]),default:"hover"},triggerKeys:{type:ee(Array),default:()=>[ke.enter,ke.numpadEnter,ke.space]},focusOnTarget:Boolean}),k6=oa({type:ee(Boolean),default:null}),E6=oa({type:ee(Function)}),_6=e=>{const t=`update:${e}`,n=`onUpdate:${e}`,o=[t],a={[e]:k6,[n]:E6};return{useModelToggle:({indicator:r,toggleReason:i,shouldHideWhenRouteChanges:u,shouldProceed:c,onShow:d,onHide:f})=>{const v=vt(),{emit:p}=v,m=v.props,h=S(()=>qe(m[n])),g=S(()=>m[e]===null),b=T=>{r.value!==!0&&(r.value=!0,i&&(i.value=T),qe(d)&&d(T))},C=T=>{r.value!==!1&&(r.value=!1,i&&(i.value=T),qe(f)&&f(T))},w=T=>{if(m.disabled===!0||qe(c)&&!c())return;const x=h.value&&xt;x&&p(t,!0),(g.value||!x)&&b(T)},y=T=>{if(m.disabled===!0||!xt)return;const x=h.value&&xt;x&&p(t,!1),(g.value||!x)&&C(T)},k=T=>{Lt(T)&&(m.disabled&&T?h.value&&p(t,!1):r.value!==T&&(T?b():C()))},E=()=>{r.value?y():w()};return fe(()=>m[e],k),u&&v.appContext.config.globalProperties.$route!==void 0&&fe(()=>({...v.proxy.$route}),()=>{u.value&&r.value&&y()}),mt(()=>{k(m[e])}),{hide:y,show:w,toggle:E,hasUpdateHandler:h}},useModelToggleProps:a,useModelToggleEmits:o}},{useModelToggleProps:T6,useModelToggleEmits:O6,useModelToggle:$6}=_6("visible"),N6=Ee({...ak,...T6,...zt,...ga,...kk,showArrow:{type:Boolean,default:!0}}),R6=[...O6,"before-show","before-hide","show","hide","open","close"],nv=(e,t)=>Se(e)?e.includes(t):e===t,Pr=(e,t,n)=>o=>{nv(s(e),t)&&n(o)},x6=G({name:"ElTooltipTrigger"}),I6=G({...x6,props:ga,setup(e,{expose:t}){const n=e,o=be("tooltip"),{controlled:a,id:l,open:r,onOpen:i,onClose:u,onToggle:c}=Pe(gm,void 0),d=A(null),f=()=>{if(s(a)||n.disabled)return!0},v=Dt(n,"trigger"),p=Cn(f,Pr(v,"hover",y=>{i(y),n.focusOnTarget&&y.target&&Me(()=>{gu(y.target,{preventScroll:!0})})})),m=Cn(f,Pr(v,"hover",u)),h=Cn(f,Pr(v,"click",y=>{y.button===0&&c(y)})),g=Cn(f,Pr(v,"focus",i)),b=Cn(f,Pr(v,"focus",u)),C=Cn(f,Pr(v,"contextmenu",y=>{y.preventDefault(),c(y)})),w=Cn(f,y=>{const k=Vt(y);n.triggerKeys.includes(k)&&(y.preventDefault(),c(y))});return t({triggerRef:d}),(y,k)=>(_(),ie(s(WL),{id:s(l),"virtual-ref":y.virtualRef,open:s(r),"virtual-triggering":y.virtualTriggering,class:I(s(o).e("trigger")),onBlur:s(b),onClick:s(h),onContextmenu:s(C),onFocus:s(g),onMouseenter:s(p),onMouseleave:s(m),onKeydown:s(w)},{default:Y(()=>[re(y.$slots,"default")]),_:3},8,["id","virtual-ref","open","virtual-triggering","class","onBlur","onClick","onContextmenu","onFocus","onMouseenter","onMouseleave","onKeydown"]))}});var P6=Oe(I6,[["__file","trigger.vue"]]);const M6=G({__name:"teleport",props:ff,setup(e){return(t,n)=>t.disabled?re(t.$slots,"default",{key:0}):(_(),ie(wO,{key:1,to:t.to},[re(t.$slots,"default")],8,["to"]))}});var A6=Oe(M6,[["__file","teleport.vue"]]);const Cu=rt(A6),Tk=()=>{const e=xh(),t=am(),n=S(()=>`${e.value}-popper-container-${t.prefix}`),o=S(()=>`#${n.value}`);return{id:n,selector:o}},L6=e=>{const t=document.createElement("div");return t.id=e,document.body.appendChild(t),t},D6=()=>{const{id:e,selector:t}=Tk();return Hd(()=>{xt&&(document.body.querySelector(t.value)||L6(e.value))}),{id:e,selector:t}},Gy=e=>[...new Set(e)],Ys=e=>Se(e)?e[0]:e,jn=e=>!e&&e!==0?[]:Se(e)?e:[e],B6=G({name:"ElTooltipContent",inheritAttrs:!1}),F6=G({...B6,props:zt,setup(e,{expose:t}){const n=e,{selector:o}=Tk(),a=be("tooltip"),l=A(),r=nd(()=>{var L;return(L=l.value)==null?void 0:L.popperContentRef});let i;const{controlled:u,id:c,open:d,trigger:f,onClose:v,onOpen:p,onShow:m,onHide:h,onBeforeShow:g,onBeforeHide:b}=Pe(gm,void 0),C=S(()=>n.transition||`${a.namespace.value}-fade-in-linear`),w=S(()=>n.persistent);Pt(()=>{i?.()});const y=S(()=>s(w)?!0:s(d)),k=S(()=>n.disabled?!1:s(d)),E=S(()=>n.appendTo||o.value),T=S(()=>{var L;return(L=n.style)!=null?L:{}}),x=A(!0),$=()=>{h(),N()&&gu(document.body,{preventScroll:!0}),x.value=!0},M=()=>{if(s(u))return!0},O=Cn(M,()=>{n.enterable&&nv(s(f),"hover")&&p()}),R=Cn(M,()=>{nv(s(f),"hover")&&v()}),H=()=>{var L,z;(z=(L=l.value)==null?void 0:L.updatePopper)==null||z.call(L),g?.()},q=()=>{b?.()},X=()=>{m()},P=()=>{n.virtualTriggering||v()},N=L=>{var z;const B=(z=l.value)==null?void 0:z.popperContentRef,W=L?.relatedTarget||document.activeElement;return B?.contains(W)};return fe(()=>s(d),L=>{L?(x.value=!1,i=Yh(r,()=>{if(s(u))return;jn(s(f)).every(B=>B!=="hover"&&B!=="focus")&&v()},{detectIframe:!0})):i?.()},{flush:"post"}),fe(()=>n.content,()=>{var L,z;(z=(L=l.value)==null?void 0:L.updatePopper)==null||z.call(L)}),t({contentRef:l,isFocusInsideContent:N}),(L,z)=>(_(),ie(s(Cu),{disabled:!L.teleported,to:s(E)},{default:Y(()=>[s(y)||!x.value?(_(),ie(xn,{key:0,name:s(C),appear:!s(w),onAfterLeave:$,onBeforeEnter:H,onAfterEnter:X,onBeforeLeave:q,persisted:""},{default:Y(()=>[dt(U(s(w6),ht({id:s(c),ref_key:"contentRef",ref:l},L.$attrs,{"aria-label":L.ariaLabel,"aria-hidden":x.value,"boundaries-padding":L.boundariesPadding,"fallback-placements":L.fallbackPlacements,"gpu-acceleration":L.gpuAcceleration,offset:L.offset,placement:L.placement,"popper-options":L.popperOptions,"arrow-offset":L.arrowOffset,strategy:L.strategy,effect:L.effect,enterable:L.enterable,pure:L.pure,"popper-class":L.popperClass,"popper-style":[L.popperStyle,s(T)],"reference-el":L.referenceEl,"trigger-target-el":L.triggerTargetEl,visible:s(k),"z-index":L.zIndex,loop:L.loop,onMouseenter:s(O),onMouseleave:s(R),onBlur:P,onClose:s(v)}),{default:Y(()=>[re(L.$slots,"default")]),_:3},16,["id","aria-label","aria-hidden","boundaries-padding","fallback-placements","gpu-acceleration","offset","placement","popper-options","arrow-offset","strategy","effect","enterable","pure","popper-class","popper-style","reference-el","trigger-target-el","visible","z-index","loop","onMouseenter","onMouseleave","onClose"]),[[Nt,s(k)]])]),_:3},8,["name","appear"])):le("v-if",!0)]),_:3},8,["disabled","to"]))}});var V6=Oe(F6,[["__file","content.vue"]]);const z6=G({name:"ElTooltip"}),H6=G({...z6,props:N6,emits:R6,setup(e,{expose:t,emit:n}){const o=e;D6();const a=be("tooltip"),l=In(),r=A(),i=A(),u=()=>{var w;const y=s(r);y&&((w=y.popperInstanceRef)==null||w.update())},c=A(!1),d=A(),{show:f,hide:v,hasUpdateHandler:p}=$6({indicator:c,toggleReason:d}),{onOpen:m,onClose:h}=S6({showAfter:Dt(o,"showAfter"),hideAfter:Dt(o,"hideAfter"),autoClose:Dt(o,"autoClose"),open:f,close:v}),g=S(()=>Lt(o.visible)&&!p.value),b=S(()=>[a.b(),o.popperClass]);wt(gm,{controlled:g,id:l,open:vr(c),trigger:Dt(o,"trigger"),onOpen:m,onClose:h,onToggle:w=>{s(c)?h(w):m(w)},onShow:()=>{n("show",d.value)},onHide:()=>{n("hide",d.value)},onBeforeShow:()=>{n("before-show",d.value)},onBeforeHide:()=>{n("before-hide",d.value)},updatePopper:u}),fe(()=>o.disabled,w=>{w&&c.value&&(c.value=!1)});const C=w=>{var y;return(y=i.value)==null?void 0:y.isFocusInsideContent(w)};return D1(()=>c.value&&v()),Pt(()=>{d.value=void 0}),t({popperRef:r,contentRef:i,isFocusInsideContent:C,updatePopper:u,onOpen:m,onClose:h,hide:v}),(w,y)=>(_(),ie(s(_k),{ref_key:"popperRef",ref:r,role:w.role},{default:Y(()=>[U(P6,{disabled:w.disabled,trigger:w.trigger,"trigger-keys":w.triggerKeys,"virtual-ref":w.virtualRef,"virtual-triggering":w.virtualTriggering,"focus-on-target":w.focusOnTarget},{default:Y(()=>[w.$slots.default?re(w.$slots,"default",{key:0}):le("v-if",!0)]),_:3},8,["disabled","trigger","trigger-keys","virtual-ref","virtual-triggering","focus-on-target"]),U(V6,{ref_key:"contentRef",ref:i,"aria-label":w.ariaLabel,"boundaries-padding":w.boundariesPadding,content:w.content,disabled:w.disabled,effect:w.effect,enterable:w.enterable,"fallback-placements":w.fallbackPlacements,"hide-after":w.hideAfter,"gpu-acceleration":w.gpuAcceleration,offset:w.offset,persistent:w.persistent,"popper-class":s(b),"popper-style":w.popperStyle,placement:w.placement,"popper-options":w.popperOptions,"arrow-offset":w.arrowOffset,pure:w.pure,"raw-content":w.rawContent,"reference-el":w.referenceEl,"trigger-target-el":w.triggerTargetEl,"show-after":w.showAfter,strategy:w.strategy,teleported:w.teleported,transition:w.transition,"virtual-triggering":w.virtualTriggering,"z-index":w.zIndex,"append-to":w.appendTo,loop:w.loop},{default:Y(()=>[re(w.$slots,"content",{},()=>[w.rawContent?(_(),F("span",{key:0,innerHTML:w.content},null,8,["innerHTML"])):(_(),F("span",{key:1},Ce(w.content),1))]),w.showArrow?(_(),ie(s(BL),{key:0})):le("v-if",!0)]),_:3},8,["aria-label","boundaries-padding","content","disabled","effect","enterable","fallback-placements","hide-after","gpu-acceleration","offset","persistent","popper-class","popper-style","placement","popper-options","arrow-offset","pure","raw-content","reference-el","trigger-target-el","show-after","strategy","teleported","transition","virtual-triggering","z-index","append-to","loop"])]),_:3},8,["role"]))}});var K6=Oe(H6,[["__file","tooltip.vue"]]);const Pn=rt(K6),W6=Ee({...mu,valueKey:{type:String,default:"value"},modelValue:{type:[String,Number],default:""},debounce:{type:Number,default:300},placement:{type:ee(String),values:["top","top-start","top-end","bottom","bottom-start","bottom-end"],default:"bottom-start"},fetchSuggestions:{type:ee([Function,Array]),default:Mt},popperClass:zt.popperClass,popperStyle:zt.popperStyle,triggerOnFocus:{type:Boolean,default:!0},selectWhenUnmatched:Boolean,hideLoading:Boolean,teleported:zt.teleported,appendTo:zt.appendTo,highlightFirstItem:Boolean,fitInputWidth:Boolean,loopNavigation:{type:Boolean,default:!0}}),j6={[et]:e=>ze(e)||Ge(e),[pn]:e=>ze(e)||Ge(e),[yt]:e=>ze(e)||Ge(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,select:e=>it(e)},Ok="ElAutocomplete",U6=G({name:Ok,inheritAttrs:!1}),q6=G({...U6,props:W6,emits:j6,setup(e,{expose:t,emit:n}){const o=e,a=S(()=>Ja(o,Object.keys(mu))),l=ll(),r=tn(),i=be("autocomplete"),u=A(),c=A(),d=A(),f=A();let v=!1,p=!1;const m=A([]),h=A(-1),g=A(""),b=A(!1),C=A(!1),w=A(!1),y=In(),k=S(()=>l.style),E=S(()=>(m.value.length>0||w.value)&&b.value),T=S(()=>!o.hideLoading&&w.value),x=S(()=>u.value?Array.from(u.value.$el.querySelectorAll("input")):[]),$=()=>{E.value&&(g.value=`${u.value.$el.offsetWidth}px`)},M=()=>{h.value=-1},O=async te=>{if(C.value)return;const J=D=>{w.value=!1,!C.value&&(Se(D)?(m.value=D,h.value=o.highlightFirstItem?0:-1):fn(Ok,"autocomplete suggestions must be an array"))};if(w.value=!0,Se(o.fetchSuggestions))J(o.fetchSuggestions);else{const D=await o.fetchSuggestions(te,J);Se(D)&&J(D)}},R=S(()=>o.debounce),H=fu(O,R),q=te=>{const J=!!te;if(n(pn,te),n(et,te),C.value=!1,b.value||(b.value=J),!o.triggerOnFocus&&!te){C.value=!0,m.value=[];return}H(te)},X=te=>{var J;r.value||(((J=te.target)==null?void 0:J.tagName)!=="INPUT"||x.value.includes(document.activeElement))&&(b.value=!0)},P=te=>{n(yt,te)},N=te=>{var J;if(p)p=!1;else{b.value=!0,n("focus",te);const D=(J=o.modelValue)!=null?J:"";o.triggerOnFocus&&!v&&H(String(D))}},L=te=>{setTimeout(()=>{var J;if((J=d.value)!=null&&J.isFocusInsideContent()){p=!0;return}b.value&&V(),n("blur",te)})},z=()=>{b.value=!1,n(et,""),n("clear")},B=async()=>{var te;(te=u.value)!=null&&te.isComposing||(E.value&&h.value>=0&&h.value{E.value&&(te.preventDefault(),te.stopPropagation(),V())},V=()=>{b.value=!1},j=()=>{var te;(te=u.value)==null||te.focus()},oe=()=>{var te;(te=u.value)==null||te.blur()},ae=async te=>{n(pn,te[o.valueKey]),n(et,te[o.valueKey]),n("select",te),m.value=[],h.value=-1},ce=te=>{var J,D;if(!E.value||w.value)return;if(te<0){if(!o.loopNavigation){h.value=-1;return}te=m.value.length-1}te>=m.value.length&&(te=o.loopNavigation?0:m.value.length-1);const[Z,se]=ne(),pe=se[te],he=Z.scrollTop,{offsetTop:ve,scrollHeight:Ie}=pe;ve+Ie>he+Z.clientHeight&&(Z.scrollTop=ve+Ie-Z.clientHeight),ve{const te=c.value.querySelector(`.${i.be("suggestion","wrap")}`),J=te.querySelectorAll(`.${i.be("suggestion","list")} li`);return[te,J]},ue=Yh(f,()=>{var te;(te=d.value)!=null&&te.isFocusInsideContent()||E.value&&V()}),Q=te=>{switch(Vt(te)){case ke.up:te.preventDefault(),ce(h.value-1);break;case ke.down:te.preventDefault(),ce(h.value+1);break;case ke.enter:case ke.numpadEnter:te.preventDefault(),B();break;case ke.tab:V();break;case ke.esc:W(te);break;case ke.home:te.preventDefault(),ce(0);break;case ke.end:te.preventDefault(),ce(m.value.length-1);break;case ke.pageUp:te.preventDefault(),ce(Math.max(0,h.value-10));break;case ke.pageDown:te.preventDefault(),ce(Math.min(m.value.length-1,h.value+10));break}};return Pt(()=>{ue?.()}),mt(()=>{var te;const J=(te=u.value)==null?void 0:te.ref;J&&([{key:"role",value:"textbox"},{key:"aria-autocomplete",value:"list"},{key:"aria-controls",value:"id"},{key:"aria-activedescendant",value:`${y.value}-item-${h.value}`}].forEach(({key:D,value:Z})=>J.setAttribute(D,Z)),v=J.hasAttribute("readonly"))}),t({highlightedIndex:h,activated:b,loading:w,inputRef:u,popperRef:d,suggestions:m,handleSelect:ae,handleKeyEnter:B,focus:j,blur:oe,close:V,highlight:ce,getData:O}),(te,J)=>(_(),ie(s(Pn),{ref_key:"popperRef",ref:d,visible:s(E),placement:te.placement,"fallback-placements":["bottom-start","top-start"],"popper-class":[s(i).e("popper"),te.popperClass],"popper-style":te.popperStyle,teleported:te.teleported,"append-to":te.appendTo,"gpu-acceleration":!1,pure:"","manual-mode":"",effect:"light",trigger:"click",transition:`${s(i).namespace.value}-zoom-in-top`,persistent:"",role:"listbox",onBeforeShow:$,onHide:M},{content:Y(()=>[K("div",{ref_key:"regionRef",ref:c,class:I([s(i).b("suggestion"),s(i).is("loading",s(T))]),style:Ye({[te.fitInputWidth?"width":"minWidth"]:g.value,outline:"none"}),role:"region"},[te.$slots.header?(_(),F("div",{key:0,class:I(s(i).be("suggestion","header")),onClick:Qe(()=>{},["stop"])},[re(te.$slots,"header")],10,["onClick"])):le("v-if",!0),U(s(Xo),{id:s(y),tag:"ul","wrap-class":s(i).be("suggestion","wrap"),"view-class":s(i).be("suggestion","list"),role:"listbox"},{default:Y(()=>[s(T)?(_(),F("li",{key:0},[re(te.$slots,"loading",{},()=>[U(s(Ve),{class:I(s(i).is("loading"))},{default:Y(()=>[U(s(Sa))]),_:1},8,["class"])])])):(_(!0),F(He,{key:1},bt(m.value,(D,Z)=>(_(),F("li",{id:`${s(y)}-item-${Z}`,key:Z,class:I({highlighted:h.value===Z}),role:"option","aria-selected":h.value===Z,onClick:se=>ae(D)},[re(te.$slots,"default",{item:D},()=>[lt(Ce(D[te.valueKey]),1)])],10,["id","aria-selected","onClick"]))),128))]),_:3},8,["id","wrap-class","view-class"]),te.$slots.footer?(_(),F("div",{key:1,class:I(s(i).be("suggestion","footer")),onClick:Qe(()=>{},["stop"])},[re(te.$slots,"footer")],10,["onClick"])):le("v-if",!0)],6)]),default:Y(()=>[K("div",{ref_key:"listboxRef",ref:f,class:I([s(i).b(),te.$attrs.class]),style:Ye(s(k)),role:"combobox","aria-haspopup":"listbox","aria-expanded":s(E),"aria-owns":s(y)},[U(s(qn),ht({ref_key:"inputRef",ref:u},ht(s(a),te.$attrs),{"model-value":te.modelValue,disabled:s(r),onInput:q,onChange:P,onFocus:N,onBlur:L,onClear:z,onKeydown:Q,onMousedown:X}),mo({_:2},[te.$slots.prepend?{name:"prepend",fn:Y(()=>[re(te.$slots,"prepend")])}:void 0,te.$slots.append?{name:"append",fn:Y(()=>[re(te.$slots,"append")])}:void 0,te.$slots.prefix?{name:"prefix",fn:Y(()=>[re(te.$slots,"prefix")])}:void 0,te.$slots.suffix?{name:"suffix",fn:Y(()=>[re(te.$slots,"suffix")])}:void 0]),1040,["model-value","disabled"])],14,["aria-expanded","aria-owns"])]),_:3},8,["visible","placement","popper-class","popper-style","teleported","append-to","transition"]))}});var Y6=Oe(q6,[["__file","autocomplete.vue"]]);const G6=rt(Y6),X6=Ee({size:{type:[Number,String],values:Oa,default:"",validator:e=>Ge(e)},shape:{type:String,values:["circle","square"],default:"circle"},icon:{type:Bt},src:{type:String,default:""},alt:String,srcSet:String,fit:{type:ee(String),default:"cover"}}),J6={error:e=>e instanceof Event},Z6=G({name:"ElAvatar"}),Q6=G({...Z6,props:X6,emits:J6,setup(e,{emit:t}){const n=e,o=be("avatar"),a=A(!1),l=S(()=>{const{size:c,icon:d,shape:f}=n,v=[o.b()];return ze(c)&&v.push(o.m(c)),d&&v.push(o.m("icon")),f&&v.push(o.m(f)),v}),r=S(()=>{const{size:c}=n;return Ge(c)?o.cssVarBlock({size:Qt(c)}):void 0}),i=S(()=>({objectFit:n.fit}));fe(()=>n.src,()=>a.value=!1);function u(c){a.value=!0,t("error",c)}return(c,d)=>(_(),F("span",{class:I(s(l)),style:Ye(s(r))},[(c.src||c.srcSet)&&!a.value?(_(),F("img",{key:0,src:c.src,alt:c.alt,srcset:c.srcSet,style:Ye(s(i)),onError:u},null,44,["src","alt","srcset"])):c.icon?(_(),ie(s(Ve),{key:1},{default:Y(()=>[(_(),ie(ft(c.icon)))]),_:1})):re(c.$slots,"default",{key:2})],6))}});var e8=Oe(Q6,[["__file","avatar.vue"]]);const t8=rt(e8),n8={visibilityHeight:{type:Number,default:200},target:{type:String,default:""},right:{type:Number,default:40},bottom:{type:Number,default:40}},o8={click:e=>e instanceof MouseEvent},a8=(e,t,n)=>{const o=jt(),a=jt(),l=A(!1),r=()=>{o.value&&(l.value=o.value.scrollTop>=e.visibilityHeight)},i=c=>{var d;(d=o.value)==null||d.scrollTo({top:0,behavior:"smooth"}),t("click",c)},u=OS(r,300,!0);return It(a,"scroll",u),mt(()=>{var c;a.value=document,o.value=document.documentElement,e.target&&(o.value=(c=document.querySelector(e.target))!=null?c:void 0,o.value||fn(n,`target does not exist: ${e.target}`),a.value=o.value),r()}),{visible:l,handleClick:i}},$k="ElBacktop",l8=G({name:$k}),r8=G({...l8,props:n8,emits:o8,setup(e,{emit:t}){const n=e,o=be("backtop"),{handleClick:a,visible:l}=a8(n,t,$k),r=S(()=>({right:`${n.right}px`,bottom:`${n.bottom}px`}));return(i,u)=>(_(),ie(xn,{name:`${s(o).namespace.value}-fade-in`},{default:Y(()=>[s(l)?(_(),F("div",{key:0,style:Ye(s(r)),class:I(s(o).b()),onClick:Qe(s(a),["stop"])},[re(i.$slots,"default",{},()=>[U(s(Ve),{class:I(s(o).e("icon"))},{default:Y(()=>[U(s(J4))]),_:1},8,["class"])])],14,["onClick"])):le("v-if",!0)]),_:3},8,["name"]))}});var s8=Oe(r8,[["__file","backtop.vue"]]);const i8=rt(s8),u8=Ee({value:{type:[String,Number],default:""},max:{type:Number,default:99},isDot:Boolean,hidden:Boolean,type:{type:String,values:["primary","success","warning","info","danger"],default:"danger"},showZero:{type:Boolean,default:!0},color:String,badgeStyle:{type:ee([String,Object,Array])},offset:{type:ee(Array),default:[0,0]},badgeClass:{type:String}}),c8=G({name:"ElBadge"}),d8=G({...c8,props:u8,setup(e,{expose:t}){const n=e,o=be("badge"),a=S(()=>n.isDot?"":Ge(n.value)&&Ge(n.max)?n.max{var r;return[{backgroundColor:n.color,marginRight:Qt(-n.offset[0]),marginTop:Qt(n.offset[1])},(r=n.badgeStyle)!=null?r:{}]});return t({content:a}),(r,i)=>(_(),F("div",{class:I(s(o).b())},[re(r.$slots,"default"),U(xn,{name:`${s(o).namespace.value}-zoom-in-center`,persisted:""},{default:Y(()=>[dt(K("sup",{class:I([s(o).e("content"),s(o).em("content",r.type),s(o).is("fixed",!!r.$slots.default),s(o).is("dot",r.isDot),s(o).is("hide-zero",!r.showZero&&r.value===0),r.badgeClass]),style:Ye(s(l))},[re(r.$slots,"content",{value:s(a)},()=>[lt(Ce(s(a)),1)])],6),[[Nt,!r.hidden&&(s(a)||r.isDot||r.$slots.content)]])]),_:3},8,["name"])],2))}});var f8=Oe(d8,[["__file","badge.vue"]]);const Nk=rt(f8),Rk=Symbol("breadcrumbKey"),p8=Ee({separator:{type:String,default:"/"},separatorIcon:{type:Bt}}),v8=G({name:"ElBreadcrumb"}),h8=G({...v8,props:p8,setup(e){const t=e,{t:n}=kt(),o=be("breadcrumb"),a=A();return wt(Rk,t),mt(()=>{const l=a.value.querySelectorAll(`.${o.e("item")}`);l.length&&l[l.length-1].setAttribute("aria-current","page")}),(l,r)=>(_(),F("div",{ref_key:"breadcrumb",ref:a,class:I(s(o).b()),"aria-label":s(n)("el.breadcrumb.label"),role:"navigation"},[re(l.$slots,"default")],10,["aria-label"]))}});var m8=Oe(h8,[["__file","breadcrumb.vue"]]);const g8=Ee({to:{type:ee([String,Object]),default:""},replace:Boolean}),b8=G({name:"ElBreadcrumbItem"}),y8=G({...b8,props:g8,setup(e){const t=e,n=vt(),o=Pe(Rk,void 0),a=be("breadcrumb"),l=n.appContext.config.globalProperties.$router,r=A(),i=()=>{!t.to||!l||(t.replace?l.replace(t.to):l.push(t.to))};return(u,c)=>{var d,f;return _(),F("span",{class:I(s(a).e("item"))},[K("span",{ref_key:"link",ref:r,class:I([s(a).e("inner"),s(a).is("link",!!u.to)]),role:"link",onClick:i},[re(u.$slots,"default")],2),(d=s(o))!=null&&d.separatorIcon?(_(),ie(s(Ve),{key:0,class:I(s(a).e("separator"))},{default:Y(()=>[(_(),ie(ft(s(o).separatorIcon)))]),_:1},8,["class"])):(_(),F("span",{key:1,class:I(s(a).e("separator")),role:"presentation"},Ce((f=s(o))==null?void 0:f.separator),3))],2)}}});var xk=Oe(y8,[["__file","breadcrumb-item.vue"]]);const w8=rt(m8,{BreadcrumbItem:xk}),C8=en(xk),Ik=Symbol("buttonGroupContextKey"),ba=({from:e,replacement:t,scope:n,version:o,ref:a,type:l="API"},r)=>{fe(()=>s(r),i=>{},{immediate:!0})},S8=(e,t)=>{ba({from:"type.text",replacement:"link",version:"3.0.0",scope:"props",ref:"https://element-plus.org/en-US/component/button.html#button-attributes"},S(()=>e.type==="text"));const n=Pe(Ik,void 0),o=Ps("button"),{form:a}=Nn(),l=vn(S(()=>n?.size)),r=tn(),i=A(),u=hn(),c=S(()=>{var b;return e.type||n?.type||((b=o.value)==null?void 0:b.type)||""}),d=S(()=>{var b,C,w;return(w=(C=e.autoInsertSpace)!=null?C:(b=o.value)==null?void 0:b.autoInsertSpace)!=null?w:!1}),f=S(()=>{var b,C,w;return(w=(C=e.plain)!=null?C:(b=o.value)==null?void 0:b.plain)!=null?w:!1}),v=S(()=>{var b,C,w;return(w=(C=e.round)!=null?C:(b=o.value)==null?void 0:b.round)!=null?w:!1}),p=S(()=>{var b,C,w;return(w=(C=e.text)!=null?C:(b=o.value)==null?void 0:b.text)!=null?w:!1}),m=S(()=>e.tag==="button"?{ariaDisabled:r.value||e.loading,disabled:r.value||e.loading,autofocus:e.autofocus,type:e.nativeType}:{}),h=S(()=>{var b;const C=(b=u.default)==null?void 0:b.call(u);if(d.value&&C?.length===1){const w=C[0];if(w?.type===Os){const y=w.children;return new RegExp("^\\p{Unified_Ideograph}{2}$","u").test(y.trim())}}return!1});return{_disabled:r,_size:l,_type:c,_ref:i,_props:m,_plain:f,_round:v,_text:p,shouldAddSpace:h,handleClick:b=>{if(r.value||e.loading){b.stopPropagation();return}e.nativeType==="reset"&&a?.resetFields(),t("click",b)}}},ov=["default","primary","success","warning","info","danger","text",""],k8=["button","submit","reset"],av=Ee({size:bn,disabled:{type:Boolean,default:void 0},type:{type:String,values:ov,default:""},icon:{type:Bt},nativeType:{type:String,values:k8,default:"button"},loading:Boolean,loadingIcon:{type:Bt,default:()=>Sa},plain:{type:Boolean,default:void 0},text:{type:Boolean,default:void 0},link:Boolean,bg:Boolean,autofocus:Boolean,round:{type:Boolean,default:void 0},circle:Boolean,color:String,dark:Boolean,autoInsertSpace:{type:Boolean,default:void 0},tag:{type:ee([String,Object]),default:"button"}}),E8={click:e=>e instanceof MouseEvent};function Dn(e,t){_8(e)&&(e="100%");var n=T8(e);return e=t===360?e:Math.min(t,Math.max(0,parseFloat(e))),n&&(e=parseInt(String(e*t),10)/100),Math.abs(e-t)<1e-6?1:(t===360?e=(e<0?e%t+t:e%t)/parseFloat(String(t)):e=e%t/parseFloat(String(t)),e)}function Ju(e){return Math.min(1,Math.max(0,e))}function _8(e){return typeof e=="string"&&e.indexOf(".")!==-1&&parseFloat(e)===1}function T8(e){return typeof e=="string"&&e.indexOf("%")!==-1}function Pk(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function Zu(e){return e<=1?"".concat(Number(e)*100,"%"):e}function tr(e){return e.length===1?"0"+e:String(e)}function O8(e,t,n){return{r:Dn(e,255)*255,g:Dn(t,255)*255,b:Dn(n,255)*255}}function Xy(e,t,n){e=Dn(e,255),t=Dn(t,255),n=Dn(n,255);var o=Math.max(e,t,n),a=Math.min(e,t,n),l=0,r=0,i=(o+a)/2;if(o===a)r=0,l=0;else{var u=o-a;switch(r=i>.5?u/(2-o-a):u/(o+a),o){case e:l=(t-n)/u+(t1&&(n-=1),n<1/6?e+(t-e)*(6*n):n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function $8(e,t,n){var o,a,l;if(e=Dn(e,360),t=Dn(t,100),n=Dn(n,100),t===0)a=n,l=n,o=n;else{var r=n<.5?n*(1+t):n+t-n*t,i=2*n-r;o=rp(i,r,e+1/3),a=rp(i,r,e),l=rp(i,r,e-1/3)}return{r:o*255,g:a*255,b:l*255}}function Jy(e,t,n){e=Dn(e,255),t=Dn(t,255),n=Dn(n,255);var o=Math.max(e,t,n),a=Math.min(e,t,n),l=0,r=o,i=o-a,u=o===0?0:i/o;if(o===a)l=0;else{switch(o){case e:l=(t-n)/i+(t>16,g:(e&65280)>>8,b:e&255}}var lv={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",goldenrod:"#daa520",gold:"#ffd700",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavenderblush:"#fff0f5",lavender:"#e6e6fa",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};function P8(e){var t={r:0,g:0,b:0},n=1,o=null,a=null,l=null,r=!1,i=!1;return typeof e=="string"&&(e=L8(e)),typeof e=="object"&&(Aa(e.r)&&Aa(e.g)&&Aa(e.b)?(t=O8(e.r,e.g,e.b),r=!0,i=String(e.r).substr(-1)==="%"?"prgb":"rgb"):Aa(e.h)&&Aa(e.s)&&Aa(e.v)?(o=Zu(e.s),a=Zu(e.v),t=N8(e.h,o,a),r=!0,i="hsv"):Aa(e.h)&&Aa(e.s)&&Aa(e.l)&&(o=Zu(e.s),l=Zu(e.l),t=$8(e.h,o,l),r=!0,i="hsl"),Object.prototype.hasOwnProperty.call(e,"a")&&(n=e.a)),n=Pk(n),{ok:r,format:e.format||i,r:Math.min(255,Math.max(t.r,0)),g:Math.min(255,Math.max(t.g,0)),b:Math.min(255,Math.max(t.b,0)),a:n}}var M8="[-\\+]?\\d+%?",A8="[-\\+]?\\d*\\.\\d+%?",$l="(?:".concat(A8,")|(?:").concat(M8,")"),sp="[\\s|\\(]+(".concat($l,")[,|\\s]+(").concat($l,")[,|\\s]+(").concat($l,")\\s*\\)?"),ip="[\\s|\\(]+(".concat($l,")[,|\\s]+(").concat($l,")[,|\\s]+(").concat($l,")[,|\\s]+(").concat($l,")\\s*\\)?"),Bo={CSS_UNIT:new RegExp($l),rgb:new RegExp("rgb"+sp),rgba:new RegExp("rgba"+ip),hsl:new RegExp("hsl"+sp),hsla:new RegExp("hsla"+ip),hsv:new RegExp("hsv"+sp),hsva:new RegExp("hsva"+ip),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};function L8(e){if(e=e.trim().toLowerCase(),e.length===0)return!1;var t=!1;if(lv[e])e=lv[e],t=!0;else if(e==="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var n=Bo.rgb.exec(e);return n?{r:n[1],g:n[2],b:n[3]}:(n=Bo.rgba.exec(e),n?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=Bo.hsl.exec(e),n?{h:n[1],s:n[2],l:n[3]}:(n=Bo.hsla.exec(e),n?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=Bo.hsv.exec(e),n?{h:n[1],s:n[2],v:n[3]}:(n=Bo.hsva.exec(e),n?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=Bo.hex8.exec(e),n?{r:yo(n[1]),g:yo(n[2]),b:yo(n[3]),a:Qy(n[4]),format:t?"name":"hex8"}:(n=Bo.hex6.exec(e),n?{r:yo(n[1]),g:yo(n[2]),b:yo(n[3]),format:t?"name":"hex"}:(n=Bo.hex4.exec(e),n?{r:yo(n[1]+n[1]),g:yo(n[2]+n[2]),b:yo(n[3]+n[3]),a:Qy(n[4]+n[4]),format:t?"name":"hex8"}:(n=Bo.hex3.exec(e),n?{r:yo(n[1]+n[1]),g:yo(n[2]+n[2]),b:yo(n[3]+n[3]),format:t?"name":"hex"}:!1)))))))))}function Aa(e){return!!Bo.CSS_UNIT.exec(String(e))}var Wr=(function(){function e(t,n){t===void 0&&(t=""),n===void 0&&(n={});var o;if(t instanceof e)return t;typeof t=="number"&&(t=I8(t)),this.originalInput=t;var a=P8(t);this.originalInput=t,this.r=a.r,this.g=a.g,this.b=a.b,this.a=a.a,this.roundA=Math.round(100*this.a)/100,this.format=(o=n.format)!==null&&o!==void 0?o:a.format,this.gradientType=n.gradientType,this.r<1&&(this.r=Math.round(this.r)),this.g<1&&(this.g=Math.round(this.g)),this.b<1&&(this.b=Math.round(this.b)),this.isValid=a.ok}return e.prototype.isDark=function(){return this.getBrightness()<128},e.prototype.isLight=function(){return!this.isDark()},e.prototype.getBrightness=function(){var t=this.toRgb();return(t.r*299+t.g*587+t.b*114)/1e3},e.prototype.getLuminance=function(){var t=this.toRgb(),n,o,a,l=t.r/255,r=t.g/255,i=t.b/255;return l<=.03928?n=l/12.92:n=Math.pow((l+.055)/1.055,2.4),r<=.03928?o=r/12.92:o=Math.pow((r+.055)/1.055,2.4),i<=.03928?a=i/12.92:a=Math.pow((i+.055)/1.055,2.4),.2126*n+.7152*o+.0722*a},e.prototype.getAlpha=function(){return this.a},e.prototype.setAlpha=function(t){return this.a=Pk(t),this.roundA=Math.round(100*this.a)/100,this},e.prototype.isMonochrome=function(){var t=this.toHsl().s;return t===0},e.prototype.toHsv=function(){var t=Jy(this.r,this.g,this.b);return{h:t.h*360,s:t.s,v:t.v,a:this.a}},e.prototype.toHsvString=function(){var t=Jy(this.r,this.g,this.b),n=Math.round(t.h*360),o=Math.round(t.s*100),a=Math.round(t.v*100);return this.a===1?"hsv(".concat(n,", ").concat(o,"%, ").concat(a,"%)"):"hsva(".concat(n,", ").concat(o,"%, ").concat(a,"%, ").concat(this.roundA,")")},e.prototype.toHsl=function(){var t=Xy(this.r,this.g,this.b);return{h:t.h*360,s:t.s,l:t.l,a:this.a}},e.prototype.toHslString=function(){var t=Xy(this.r,this.g,this.b),n=Math.round(t.h*360),o=Math.round(t.s*100),a=Math.round(t.l*100);return this.a===1?"hsl(".concat(n,", ").concat(o,"%, ").concat(a,"%)"):"hsla(".concat(n,", ").concat(o,"%, ").concat(a,"%, ").concat(this.roundA,")")},e.prototype.toHex=function(t){return t===void 0&&(t=!1),Zy(this.r,this.g,this.b,t)},e.prototype.toHexString=function(t){return t===void 0&&(t=!1),"#"+this.toHex(t)},e.prototype.toHex8=function(t){return t===void 0&&(t=!1),R8(this.r,this.g,this.b,this.a,t)},e.prototype.toHex8String=function(t){return t===void 0&&(t=!1),"#"+this.toHex8(t)},e.prototype.toHexShortString=function(t){return t===void 0&&(t=!1),this.a===1?this.toHexString(t):this.toHex8String(t)},e.prototype.toRgb=function(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}},e.prototype.toRgbString=function(){var t=Math.round(this.r),n=Math.round(this.g),o=Math.round(this.b);return this.a===1?"rgb(".concat(t,", ").concat(n,", ").concat(o,")"):"rgba(".concat(t,", ").concat(n,", ").concat(o,", ").concat(this.roundA,")")},e.prototype.toPercentageRgb=function(){var t=function(n){return"".concat(Math.round(Dn(n,255)*100),"%")};return{r:t(this.r),g:t(this.g),b:t(this.b),a:this.a}},e.prototype.toPercentageRgbString=function(){var t=function(n){return Math.round(Dn(n,255)*100)};return this.a===1?"rgb(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%)"):"rgba(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%, ").concat(this.roundA,")")},e.prototype.toName=function(){if(this.a===0)return"transparent";if(this.a<1)return!1;for(var t="#"+Zy(this.r,this.g,this.b,!1),n=0,o=Object.entries(lv);n=0,l=!n&&a&&(t.startsWith("hex")||t==="name");return l?t==="name"&&this.a===0?this.toName():this.toRgbString():(t==="rgb"&&(o=this.toRgbString()),t==="prgb"&&(o=this.toPercentageRgbString()),(t==="hex"||t==="hex6")&&(o=this.toHexString()),t==="hex3"&&(o=this.toHexString(!0)),t==="hex4"&&(o=this.toHex8String(!0)),t==="hex8"&&(o=this.toHex8String()),t==="name"&&(o=this.toName()),t==="hsl"&&(o=this.toHslString()),t==="hsv"&&(o=this.toHsvString()),o||this.toHexString())},e.prototype.toNumber=function(){return(Math.round(this.r)<<16)+(Math.round(this.g)<<8)+Math.round(this.b)},e.prototype.clone=function(){return new e(this.toString())},e.prototype.lighten=function(t){t===void 0&&(t=10);var n=this.toHsl();return n.l+=t/100,n.l=Ju(n.l),new e(n)},e.prototype.brighten=function(t){t===void 0&&(t=10);var n=this.toRgb();return n.r=Math.max(0,Math.min(255,n.r-Math.round(255*-(t/100)))),n.g=Math.max(0,Math.min(255,n.g-Math.round(255*-(t/100)))),n.b=Math.max(0,Math.min(255,n.b-Math.round(255*-(t/100)))),new e(n)},e.prototype.darken=function(t){t===void 0&&(t=10);var n=this.toHsl();return n.l-=t/100,n.l=Ju(n.l),new e(n)},e.prototype.tint=function(t){return t===void 0&&(t=10),this.mix("white",t)},e.prototype.shade=function(t){return t===void 0&&(t=10),this.mix("black",t)},e.prototype.desaturate=function(t){t===void 0&&(t=10);var n=this.toHsl();return n.s-=t/100,n.s=Ju(n.s),new e(n)},e.prototype.saturate=function(t){t===void 0&&(t=10);var n=this.toHsl();return n.s+=t/100,n.s=Ju(n.s),new e(n)},e.prototype.greyscale=function(){return this.desaturate(100)},e.prototype.spin=function(t){var n=this.toHsl(),o=(n.h+t)%360;return n.h=o<0?360+o:o,new e(n)},e.prototype.mix=function(t,n){n===void 0&&(n=50);var o=this.toRgb(),a=new e(t).toRgb(),l=n/100,r={r:(a.r-o.r)*l+o.r,g:(a.g-o.g)*l+o.g,b:(a.b-o.b)*l+o.b,a:(a.a-o.a)*l+o.a};return new e(r)},e.prototype.analogous=function(t,n){t===void 0&&(t=6),n===void 0&&(n=30);var o=this.toHsl(),a=360/n,l=[this];for(o.h=(o.h-(a*t>>1)+720)%360;--t;)o.h=(o.h+a)%360,l.push(new e(o));return l},e.prototype.complement=function(){var t=this.toHsl();return t.h=(t.h+180)%360,new e(t)},e.prototype.monochromatic=function(t){t===void 0&&(t=6);for(var n=this.toHsv(),o=n.h,a=n.s,l=n.v,r=[],i=1/t;t--;)r.push(new e({h:o,s:a,v:l})),l=(l+i)%1;return r},e.prototype.splitcomplement=function(){var t=this.toHsl(),n=t.h;return[this,new e({h:(n+72)%360,s:t.s,l:t.l}),new e({h:(n+216)%360,s:t.s,l:t.l})]},e.prototype.onBackground=function(t){var n=this.toRgb(),o=new e(t).toRgb(),a=n.a+o.a*(1-n.a);return new e({r:(n.r*n.a+o.r*o.a*(1-n.a))/a,g:(n.g*n.a+o.g*o.a*(1-n.a))/a,b:(n.b*n.a+o.b*o.a*(1-n.a))/a,a})},e.prototype.triad=function(){return this.polyad(3)},e.prototype.tetrad=function(){return this.polyad(4)},e.prototype.polyad=function(t){for(var n=this.toHsl(),o=n.h,a=[this],l=360/t,r=1;r{let o={},a=e.color;if(a){const l=a.match(/var\((.*?)\)/);l&&(a=window.getComputedStyle(window.document.documentElement).getPropertyValue(l[1]));const r=new Wr(a),i=e.dark?r.tint(20).toString():vl(r,20);if(e.plain)o=n.cssVarBlock({"bg-color":e.dark?vl(r,90):r.tint(90).toString(),"text-color":a,"border-color":e.dark?vl(r,50):r.tint(50).toString(),"hover-text-color":`var(${n.cssVarName("color-white")})`,"hover-bg-color":a,"hover-border-color":a,"active-bg-color":i,"active-text-color":`var(${n.cssVarName("color-white")})`,"active-border-color":i}),t.value&&(o[n.cssVarBlockName("disabled-bg-color")]=e.dark?vl(r,90):r.tint(90).toString(),o[n.cssVarBlockName("disabled-text-color")]=e.dark?vl(r,50):r.tint(50).toString(),o[n.cssVarBlockName("disabled-border-color")]=e.dark?vl(r,80):r.tint(80).toString());else{const u=e.dark?vl(r,30):r.tint(30).toString(),c=r.isDark()?`var(${n.cssVarName("color-white")})`:`var(${n.cssVarName("color-black")})`;if(o=n.cssVarBlock({"bg-color":a,"text-color":c,"border-color":a,"hover-bg-color":u,"hover-text-color":c,"hover-border-color":u,"active-bg-color":i,"active-border-color":i}),t.value){const d=e.dark?vl(r,50):r.tint(50).toString();o[n.cssVarBlockName("disabled-bg-color")]=d,o[n.cssVarBlockName("disabled-text-color")]=e.dark?"rgba(255, 255, 255, 0.5)":`var(${n.cssVarName("color-white")})`,o[n.cssVarBlockName("disabled-border-color")]=d}}}return o})}const B8=G({name:"ElButton"}),F8=G({...B8,props:av,emits:E8,setup(e,{expose:t,emit:n}){const o=e,a=D8(o),l=be("button"),{_ref:r,_size:i,_type:u,_disabled:c,_props:d,_plain:f,_round:v,_text:p,shouldAddSpace:m,handleClick:h}=S8(o,n),g=S(()=>[l.b(),l.m(u.value),l.m(i.value),l.is("disabled",c.value),l.is("loading",o.loading),l.is("plain",f.value),l.is("round",v.value),l.is("circle",o.circle),l.is("text",p.value),l.is("link",o.link),l.is("has-bg",o.bg)]);return t({ref:r,size:i,type:u,disabled:c,shouldAddSpace:m}),(b,C)=>(_(),ie(ft(b.tag),ht({ref_key:"_ref",ref:r},s(d),{class:s(g),style:s(a),onClick:s(h)}),{default:Y(()=>[b.loading?(_(),F(He,{key:0},[b.$slots.loading?re(b.$slots,"loading",{key:0}):(_(),ie(s(Ve),{key:1,class:I(s(l).is("loading"))},{default:Y(()=>[(_(),ie(ft(b.loadingIcon)))]),_:1},8,["class"]))],64)):b.icon||b.$slots.icon?(_(),ie(s(Ve),{key:1},{default:Y(()=>[b.icon?(_(),ie(ft(b.icon),{key:0})):re(b.$slots,"icon",{key:1})]),_:3})):le("v-if",!0),b.$slots.default?(_(),F("span",{key:2,class:I({[s(l).em("text","expand")]:s(m)})},[re(b.$slots,"default")],2)):le("v-if",!0)]),_:3},16,["class","style","onClick"]))}});var V8=Oe(F8,[["__file","button.vue"]]);const z8={size:av.size,type:av.type,direction:{type:ee(String),values:["horizontal","vertical"],default:"horizontal"}},H8=G({name:"ElButtonGroup"}),K8=G({...H8,props:z8,setup(e){const t=e;wt(Ik,Ot({size:Dt(t,"size"),type:Dt(t,"type")}));const n=be("button");return(o,a)=>(_(),F("div",{class:I([s(n).b("group"),s(n).bm("group",t.direction)])},[re(o.$slots,"default")],2))}});var Mk=Oe(K8,[["__file","button-group.vue"]]);const Tn=rt(V8,{ButtonGroup:Mk}),Ak=en(Mk);function dl(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var bc={exports:{}},W8=bc.exports,e0;function j8(){return e0||(e0=1,(function(e,t){(function(n,o){e.exports=o()})(W8,(function(){var n=1e3,o=6e4,a=36e5,l="millisecond",r="second",i="minute",u="hour",c="day",d="week",f="month",v="quarter",p="year",m="date",h="Invalid Date",g=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,b=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,C={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(q){var X=["th","st","nd","rd"],P=q%100;return"["+q+(X[(P-20)%10]||X[P]||X[0])+"]"}},w=function(q,X,P){var N=String(q);return!N||N.length>=X?q:""+Array(X+1-N.length).join(P)+q},y={s:w,z:function(q){var X=-q.utcOffset(),P=Math.abs(X),N=Math.floor(P/60),L=P%60;return(X<=0?"+":"-")+w(N,2,"0")+":"+w(L,2,"0")},m:function q(X,P){if(X.date()1)return q(B[0])}else{var W=X.name;E[W]=X,L=W}return!N&&L&&(k=L),L||!N&&k},M=function(q,X){if(x(q))return q.clone();var P=typeof X=="object"?X:{};return P.date=q,P.args=arguments,new R(P)},O=y;O.l=$,O.i=x,O.w=function(q,X){return M(q,{locale:X.$L,utc:X.$u,x:X.$x,$offset:X.$offset})};var R=(function(){function q(P){this.$L=$(P.locale,null,!0),this.parse(P),this.$x=this.$x||P.x||{},this[T]=!0}var X=q.prototype;return X.parse=function(P){this.$d=(function(N){var L=N.date,z=N.utc;if(L===null)return new Date(NaN);if(O.u(L))return new Date;if(L instanceof Date)return new Date(L);if(typeof L=="string"&&!/Z$/i.test(L)){var B=L.match(g);if(B){var W=B[2]-1||0,V=(B[7]||"0").substring(0,3);return z?new Date(Date.UTC(B[1],W,B[3]||1,B[4]||0,B[5]||0,B[6]||0,V)):new Date(B[1],W,B[3]||1,B[4]||0,B[5]||0,B[6]||0,V)}}return new Date(L)})(P),this.init()},X.init=function(){var P=this.$d;this.$y=P.getFullYear(),this.$M=P.getMonth(),this.$D=P.getDate(),this.$W=P.getDay(),this.$H=P.getHours(),this.$m=P.getMinutes(),this.$s=P.getSeconds(),this.$ms=P.getMilliseconds()},X.$utils=function(){return O},X.isValid=function(){return this.$d.toString()!==h},X.isSame=function(P,N){var L=M(P);return this.startOf(N)<=L&&L<=this.endOf(N)},X.isAfter=function(P,N){return M(P)[e>0?e-1:void 0,e,eArray.from(Array.from({length:e}).keys()),Lk=e=>e.replace(/\W?m{1,2}|\W?ZZ/g,"").replace(/\W?h{1,2}|\W?s{1,3}|\W?a/gi,"").trim(),Dk=e=>e.replace(/\W?D{1,2}|\W?Do|\W?d{1,4}|\W?M{1,4}|\W?Y{2,4}/g,"").trim(),t0=function(e,t){const n=Pl(e),o=Pl(t);return n&&o?e.getTime()===t.getTime():!n&&!o?e===t:!1},Bk=function(e,t){const n=Se(e),o=Se(t);return n&&o?e.length!==t.length?!1:e.every((a,l)=>t0(a,t[l])):!n&&!o?t0(e,t):!1},n0=function(e,t,n){const o=no(t)||t==="x"?st(e).locale(n):st(e,t).locale(n);return o.isValid()?o:void 0},o0=function(e,t,n){return no(t)?e:t==="x"?+e:st(e).locale(n).format(t)},cp=(e,t)=>{var n;const o=[],a=t?.();for(let l=0;lSe(e)?e.map(t=>t.toDate()):e.toDate(),q8=(e,t)=>{const n=e.subtract(1,"month").endOf("month").date();return Il(t).map((o,a)=>n-(t-a-1))},Y8=e=>{const t=e.daysInMonth();return Il(t).map((n,o)=>o+1)},G8=e=>Il(e.length/7).map(t=>{const n=t*7;return e.slice(n,n+7)}),X8=Ee({selectedDay:{type:ee(Object)},range:{type:ee(Array)},date:{type:ee(Object),required:!0},hideHeader:{type:Boolean}}),J8={pick:e=>it(e)};var wc={exports:{}},Z8=wc.exports,a0;function Q8(){return a0||(a0=1,(function(e,t){(function(n,o){e.exports=o()})(Z8,(function(){return function(n,o,a){var l=o.prototype,r=function(f){return f&&(f.indexOf?f:f.s)},i=function(f,v,p,m,h){var g=f.name?f:f.$locale(),b=r(g[v]),C=r(g[p]),w=b||C.map((function(k){return k.slice(0,m)}));if(!h)return w;var y=g.weekStart;return w.map((function(k,E){return w[(E+(y||0))%7]}))},u=function(){return a.Ls[a.locale()]},c=function(f,v){return f.formats[v]||(function(p){return p.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(m,h,g){return h||g.slice(1)}))})(f.formats[v.toUpperCase()])},d=function(){var f=this;return{months:function(v){return v?v.format("MMMM"):i(f,"months")},monthsShort:function(v){return v?v.format("MMM"):i(f,"monthsShort","months",3)},firstDayOfWeek:function(){return f.$locale().weekStart||0},weekdays:function(v){return v?v.format("dddd"):i(f,"weekdays")},weekdaysMin:function(v){return v?v.format("dd"):i(f,"weekdaysMin","weekdays",2)},weekdaysShort:function(v){return v?v.format("ddd"):i(f,"weekdaysShort","weekdays",3)},longDateFormat:function(v){return c(f.$locale(),v)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};l.localeData=function(){return d.bind(this)()},a.localeData=function(){var f=u();return{firstDayOfWeek:function(){return f.weekStart||0},weekdays:function(){return a.weekdays()},weekdaysShort:function(){return a.weekdaysShort()},weekdaysMin:function(){return a.weekdaysMin()},months:function(){return a.months()},monthsShort:function(){return a.monthsShort()},longDateFormat:function(v){return c(f,v)},meridiem:f.meridiem,ordinal:f.ordinal}},a.months=function(){return i(u(),"months")},a.monthsShort=function(){return i(u(),"monthsShort","months",3)},a.weekdays=function(f){return i(u(),"weekdays",null,null,f)},a.weekdaysShort=function(f){return i(u(),"weekdaysShort","weekdays",3,f)},a.weekdaysMin=function(f){return i(u(),"weekdaysMin","weekdays",2,f)}}}))})(wc)),wc.exports}var eB=Q8();const Fk=dl(eB),tB=["year","years","month","months","date","dates","week","datetime","datetimerange","daterange","monthrange","yearrange"],dp=["sun","mon","tue","wed","thu","fri","sat"],nB=(e,t)=>{st.extend(Fk);const n=st.localeData().firstDayOfWeek(),{t:o,lang:a}=kt(),l=st().locale(a.value),r=S(()=>!!e.range&&!!e.range.length),i=S(()=>{let v=[];if(r.value){const[p,m]=e.range,h=Il(m.date()-p.date()+1).map(C=>({text:p.date()+C,type:"current"}));let g=h.length%7;g=g===0?0:7-g;const b=Il(g).map((C,w)=>({text:w+1,type:"next"}));v=h.concat(b)}else{const p=e.date.startOf("month").day(),m=q8(e.date,(p-n+7)%7).map(C=>({text:C,type:"prev"})),h=Y8(e.date).map(C=>({text:C,type:"current"}));v=[...m,...h];const g=7-(v.length%7||7),b=Il(g).map((C,w)=>({text:w+1,type:"next"}));v=v.concat(b)}return G8(v)}),u=S(()=>{const v=n;return v===0?dp.map(p=>o(`el.datepicker.weeks.${p}`)):dp.slice(v).concat(dp.slice(0,v)).map(p=>o(`el.datepicker.weeks.${p}`))}),c=(v,p)=>{switch(p){case"prev":return e.date.startOf("month").subtract(1,"month").date(v);case"next":return e.date.startOf("month").add(1,"month").date(v);case"current":return e.date.date(v)}};return{now:l,isInRange:r,rows:i,weekDays:u,getFormattedDate:c,handlePickDay:({text:v,type:p})=>{const m=c(v,p);t("pick",m)},getSlotData:({text:v,type:p})=>{const m=c(v,p);return{isSelected:m.isSame(e.selectedDay),type:`${p}-month`,day:m.format("YYYY-MM-DD"),date:m.toDate()}}}},oB=G({name:"DateTable"}),aB=G({...oB,props:X8,emits:J8,setup(e,{expose:t,emit:n}){const o=e,{isInRange:a,now:l,rows:r,weekDays:i,getFormattedDate:u,handlePickDay:c,getSlotData:d}=nB(o,n),f=be("calendar-table"),v=be("calendar-day"),p=({text:m,type:h})=>{const g=[h];if(h==="current"){const b=u(m,h);b.isSame(o.selectedDay,"day")&&g.push(v.is("selected")),b.isSame(l,"day")&&g.push(v.is("today"))}return g};return t({getFormattedDate:u}),(m,h)=>(_(),F("table",{class:I([s(f).b(),s(f).is("range",s(a))]),cellspacing:"0",cellpadding:"0"},[m.hideHeader?le("v-if",!0):(_(),F("thead",{key:0},[K("tr",null,[(_(!0),F(He,null,bt(s(i),g=>(_(),F("th",{key:g,scope:"col"},Ce(g),1))),128))])])),K("tbody",null,[(_(!0),F(He,null,bt(s(r),(g,b)=>(_(),F("tr",{key:b,class:I({[s(f).e("row")]:!0,[s(f).em("row","hide-border")]:b===0&&m.hideHeader})},[(_(!0),F(He,null,bt(g,(C,w)=>(_(),F("td",{key:w,class:I(p(C)),onClick:y=>s(c)(C)},[K("div",{class:I(s(v).b())},[re(m.$slots,"date-cell",{data:s(d)(C)},()=>[K("span",null,Ce(C.text),1)])],2)],10,["onClick"]))),128))],2))),128))])],2))}});var l0=Oe(aB,[["__file","date-table.vue"]]);const lB=(e,t)=>{const n=e.endOf("month"),o=t.startOf("month"),l=n.isSame(o,"week")?o.add(1,"week"):o;return[[e,n],[l.startOf("week"),t]]},rB=(e,t)=>{const n=e.endOf("month"),o=e.add(1,"month").startOf("month"),a=n.isSame(o,"week")?o.add(1,"week"):o,l=a.endOf("month"),r=t.startOf("month"),i=l.isSame(r,"week")?r.add(1,"week"):r;return[[e,n],[a.startOf("week"),l],[i.startOf("week"),t]]},sB=(e,t,n)=>{const{lang:o}=kt(),a=A(),l=st().locale(o.value),r=S({get(){return e.modelValue?u.value:a.value},set(g){if(!g)return;a.value=g;const b=g.toDate();t(pn,b),t(et,b)}}),i=S(()=>{if(!e.range||!Se(e.range)||e.range.length!==2||e.range.some(w=>!Pl(w)))return[];const g=e.range.map(w=>st(w).locale(o.value)),[b,C]=g;return b.isAfter(C)?[]:b.isSame(C,"month")?p(b,C):b.add(1,"month").month()!==C.month()?[]:p(b,C)}),u=S(()=>e.modelValue?st(e.modelValue).locale(o.value):r.value||(i.value.length?i.value[0][0]:l)),c=S(()=>u.value.subtract(1,"month").date(1)),d=S(()=>u.value.add(1,"month").date(1)),f=S(()=>u.value.subtract(1,"year").date(1)),v=S(()=>u.value.add(1,"year").date(1)),p=(g,b)=>{const C=g.startOf("week"),w=b.endOf("week"),y=C.get("month"),k=w.get("month");return y===k?[[C,w]]:(y+1)%12===k?lB(C,w):y+2===k||(y+1)%11===k?rB(C,w):[]},m=g=>{r.value=g};return{calculateValidatedDateRange:p,date:u,realSelectedDay:r,pickDay:m,selectDate:g=>{const C={"prev-month":c.value,"next-month":d.value,"prev-year":f.value,"next-year":v.value,today:l}[g];C.isSame(u.value,"day")||m(C)},validatedRange:i}},iB=e=>Se(e)&&e.length===2&&e.every(t=>Pl(t)),uB=Ee({modelValue:{type:Date},range:{type:ee(Array),validator:iB}}),cB={[et]:e=>Pl(e),[pn]:e=>Pl(e)},dB="ElCalendar",fB=G({name:dB}),pB=G({...fB,props:uB,emits:cB,setup(e,{expose:t,emit:n}){const o=e,a=be("calendar"),{calculateValidatedDateRange:l,date:r,pickDay:i,realSelectedDay:u,selectDate:c,validatedRange:d}=sB(o,n),{t:f}=kt(),v=S(()=>{const p=`el.datepicker.month${r.value.format("M")}`;return`${r.value.year()} ${f("el.datepicker.year")} ${f(p)}`});return t({selectedDay:u,pickDay:i,selectDate:c,calculateValidatedDateRange:l}),(p,m)=>(_(),F("div",{class:I(s(a).b())},[K("div",{class:I(s(a).e("header"))},[re(p.$slots,"header",{date:s(v)},()=>[K("div",{class:I(s(a).e("title"))},Ce(s(v)),3),s(d).length===0?(_(),F("div",{key:0,class:I(s(a).e("button-group"))},[U(s(Ak),null,{default:Y(()=>[U(s(Tn),{size:"small",onClick:h=>s(c)("prev-month")},{default:Y(()=>[lt(Ce(s(f)("el.datepicker.prevMonth")),1)]),_:1},8,["onClick"]),U(s(Tn),{size:"small",onClick:h=>s(c)("today")},{default:Y(()=>[lt(Ce(s(f)("el.datepicker.today")),1)]),_:1},8,["onClick"]),U(s(Tn),{size:"small",onClick:h=>s(c)("next-month")},{default:Y(()=>[lt(Ce(s(f)("el.datepicker.nextMonth")),1)]),_:1},8,["onClick"])]),_:1})],2)):le("v-if",!0)])],2),s(d).length===0?(_(),F("div",{key:0,class:I(s(a).e("body"))},[U(l0,{date:s(r),"selected-day":s(u),onPick:s(i)},mo({_:2},[p.$slots["date-cell"]?{name:"date-cell",fn:Y(h=>[re(p.$slots,"date-cell",zo(va(h)))])}:void 0]),1032,["date","selected-day","onPick"])],2)):(_(),F("div",{key:1,class:I(s(a).e("body"))},[(_(!0),F(He,null,bt(s(d),(h,g)=>(_(),ie(l0,{key:g,date:h[0],"selected-day":s(u),range:h,"hide-header":g!==0,onPick:s(i)},mo({_:2},[p.$slots["date-cell"]?{name:"date-cell",fn:Y(b=>[re(p.$slots,"date-cell",zo(va(b)))])}:void 0]),1032,["date","selected-day","range","hide-header","onPick"]))),128))],2))],2))}});var vB=Oe(pB,[["__file","calendar.vue"]]);const hB=rt(vB),mB=Ee({header:{type:String,default:""},footer:{type:String,default:""},bodyStyle:{type:ee([String,Object,Array]),default:""},headerClass:String,bodyClass:String,footerClass:String,shadow:{type:String,values:["always","hover","never"],default:void 0}}),gB=G({name:"ElCard"}),bB=G({...gB,props:mB,setup(e){const t=Ps("card"),n=be("card");return(o,a)=>{var l;return _(),F("div",{class:I([s(n).b(),s(n).is(`${o.shadow||((l=s(t))==null?void 0:l.shadow)||"always"}-shadow`)])},[o.$slots.header||o.header?(_(),F("div",{key:0,class:I([s(n).e("header"),o.headerClass])},[re(o.$slots,"header",{},()=>[lt(Ce(o.header),1)])],2)):le("v-if",!0),K("div",{class:I([s(n).e("body"),o.bodyClass]),style:Ye(o.bodyStyle)},[re(o.$slots,"default")],6),o.$slots.footer||o.footer?(_(),F("div",{key:1,class:I([s(n).e("footer"),o.footerClass])},[re(o.$slots,"footer",{},()=>[lt(Ce(o.footer),1)])],2)):le("v-if",!0)],2)}}});var yB=Oe(bB,[["__file","card.vue"]]);const wB=rt(yB),CB=Ee({initialIndex:{type:Number,default:0},height:{type:String,default:""},trigger:{type:String,values:["hover","click"],default:"hover"},autoplay:{type:Boolean,default:!0},interval:{type:Number,default:3e3},indicatorPosition:{type:String,values:["","none","outside"],default:""},arrow:{type:String,values:["always","hover","never"],default:"hover"},type:{type:String,values:["","card"],default:""},cardScale:{type:Number,default:.83},loop:{type:Boolean,default:!0},direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},pauseOnHover:{type:Boolean,default:!0},motionBlur:Boolean}),SB={change:(e,t)=>[e,t].every(Ge)},Vk=Symbol("carouselContextKey"),rv="ElCarouselItem";var Ro=(e=>(e[e.TEXT=1]="TEXT",e[e.CLASS=2]="CLASS",e[e.STYLE=4]="STYLE",e[e.PROPS=8]="PROPS",e[e.FULL_PROPS=16]="FULL_PROPS",e[e.HYDRATE_EVENTS=32]="HYDRATE_EVENTS",e[e.STABLE_FRAGMENT=64]="STABLE_FRAGMENT",e[e.KEYED_FRAGMENT=128]="KEYED_FRAGMENT",e[e.UNKEYED_FRAGMENT=256]="UNKEYED_FRAGMENT",e[e.NEED_PATCH=512]="NEED_PATCH",e[e.DYNAMIC_SLOTS=1024]="DYNAMIC_SLOTS",e[e.HOISTED=-1]="HOISTED",e[e.BAIL=-2]="BAIL",e))(Ro||{});function sv(e){return Wt(e)&&e.type===He}function kB(e){return Wt(e)&&e.type===un}function EB(e){return Wt(e)&&!sv(e)&&!kB(e)}const _B=e=>{if(!Wt(e))return{};const t=e.props||{},n=(Wt(e.type)?e.type.props:void 0)||{},o={};return Object.keys(n).forEach(a=>{Rt(n[a],"default")&&(o[a]=n[a].default)}),Object.keys(t).forEach(a=>{o[oo(a)]=t[a]}),o},Vo=e=>{const t=Se(e)?e:[e],n=[];return t.forEach(o=>{var a;Se(o)?n.push(...Vo(o)):Wt(o)&&((a=o.component)!=null&&a.subTree)?n.push(o,...Vo(o.component.subTree)):Wt(o)&&Se(o.children)?n.push(...Vo(o.children)):Wt(o)&&o.shapeFlag===2?n.push(...Vo(o.type())):n.push(o)}),n},TB=(e,t,n)=>Vo(e.subTree).filter(l=>{var r;return Wt(l)&&((r=l.type)==null?void 0:r.name)===t&&!!l.component}).map(l=>l.component.uid).map(l=>n[l]).filter(l=>!!l),pf=(e,t)=>{const n=jt({}),o=jt([]),a=new WeakMap,l=d=>{n.value[d.uid]=d,dc(n),mt(()=>{const f=d.getVnode().el,v=f.parentNode;if(!a.has(v)){a.set(v,[]);const p=v.insertBefore.bind(v);v.insertBefore=(m,h)=>(a.get(v).some(b=>m===b||h===b)&&dc(n),p(m,h))}a.get(v).push(f)})},r=d=>{delete n.value[d.uid],dc(n);const f=d.getVnode().el,v=f.parentNode,p=a.get(v),m=p.indexOf(f);p.splice(m,1)},i=()=>{o.value=TB(e,t,n.value)},u=d=>d.render();return{children:o,addChild:l,removeChild:r,ChildrenSorter:G({setup(d,{slots:f}){return()=>(i(),f.default?Xe(u,{render:f.default}):null)}})}},r0=300,OB=(e,t,n)=>{const{children:o,addChild:a,removeChild:l,ChildrenSorter:r}=pf(vt(),rv),i=hn(),u=A(-1),c=A(null),d=A(!1),f=A(),v=A(0),p=A(!0),m=S(()=>e.arrow!=="never"&&!s(b)),h=S(()=>o.value.some(ae=>ae.props.label.toString().length>0)),g=S(()=>e.type==="card"),b=S(()=>e.direction==="vertical"),C=S(()=>e.height!=="auto"?{height:e.height}:{height:`${v.value}px`,overflow:"hidden"}),w=Ol(ae=>{$(ae)},r0,{trailing:!0}),y=Ol(ae=>{N(ae)},r0),k=ae=>p.value?u.value<=1?ae<=1:ae>1:!0;function E(){c.value&&(clearInterval(c.value),c.value=null)}function T(){e.interval<=0||!e.autoplay||c.value||(c.value=setInterval(()=>x(),e.interval))}const x=()=>{u.valueQ.props.name===ae);ue.length>0&&(ae=o.value.indexOf(ue[0]))}if(ae=Number(ae),Number.isNaN(ae)||ae!==Math.floor(ae))return;const ce=o.value.length,ne=u.value;ae<0?u.value=e.loop?ce-1:0:ae>=ce?u.value=e.loop?0:ce-1:u.value=ae,ne===u.value&&M(ne),B()}function M(ae){o.value.forEach((ce,ne)=>{ce.translateItem(ne,u.value,ae)})}function O(ae,ce){var ne,ue,Q,te;const J=s(o),D=J.length;if(D===0||!ae.states.inStage)return!1;const Z=ce+1,se=ce-1,pe=D-1,he=J[pe].states.active,ve=J[0].states.active,Ie=(ue=(ne=J[Z])==null?void 0:ne.states)==null?void 0:ue.active,_e=(te=(Q=J[se])==null?void 0:Q.states)==null?void 0:te.active;return ce===pe&&ve||Ie?"left":ce===0&&he||_e?"right":!1}function R(){d.value=!0,e.pauseOnHover&&E()}function H(){d.value=!1,T()}function q(ae){s(b)||o.value.forEach((ce,ne)=>{ae===O(ce,ne)&&(ce.states.hover=!0)})}function X(){s(b)||o.value.forEach(ae=>{ae.states.hover=!1})}function P(ae){u.value=ae}function N(ae){e.trigger==="hover"&&ae!==u.value&&(u.value=ae)}function L(){$(u.value-1)}function z(){$(u.value+1)}function B(){E(),e.pauseOnHover||T()}function W(ae){e.height==="auto"&&(v.value=ae)}function V(){var ae;const ce=(ae=i.default)==null?void 0:ae.call(i);if(!ce)return null;const ue=Vo(ce).filter(Q=>Wt(Q)&&Q.type.name===rv);return ue?.length===2&&e.loop&&!g.value?(p.value=!0,ue):(p.value=!1,null)}fe(()=>u.value,(ae,ce)=>{M(ce),p.value&&(ae=ae%2,ce=ce%2),ce>-1&&t(yt,ae,ce)});const j=S({get:()=>p.value?u.value%2:u.value,set:ae=>u.value=ae});fe(()=>e.autoplay,ae=>{ae?T():E()}),fe(()=>e.loop,()=>{$(u.value)}),fe(()=>e.interval,()=>{B()});const oe=jt();return mt(()=>{fe(()=>o.value,()=>{o.value.length>0&&$(e.initialIndex)},{immediate:!0}),oe.value=Yt(f.value,()=>{M()}),T()}),Pt(()=>{E(),f.value&&oe.value&&oe.value.stop()}),wt(Vk,{root:f,isCardType:g,isVertical:b,items:o,loop:e.loop,cardScale:e.cardScale,addItem:a,removeItem:l,setActiveItem:$,setContainerHeight:W}),{root:f,activeIndex:u,exposeActiveIndex:j,arrowDisplay:m,hasLabel:h,hover:d,isCardType:g,items:o,isVertical:b,containerStyle:C,isItemsTwoLength:p,handleButtonEnter:q,handleButtonLeave:X,handleIndicatorClick:P,handleMouseEnter:R,handleMouseLeave:H,setActiveItem:$,prev:L,next:z,PlaceholderItem:V,isTwoLengthShow:k,ItemsSorter:r,throttledArrowClick:w,throttledIndicatorHover:y}},$B="ElCarousel",NB=G({name:$B}),RB=G({...NB,props:CB,emits:SB,setup(e,{expose:t,emit:n}){const o=e,{root:a,activeIndex:l,exposeActiveIndex:r,arrowDisplay:i,hasLabel:u,hover:c,isCardType:d,items:f,isVertical:v,containerStyle:p,handleButtonEnter:m,handleButtonLeave:h,handleIndicatorClick:g,handleMouseEnter:b,handleMouseLeave:C,setActiveItem:w,prev:y,next:k,PlaceholderItem:E,isTwoLengthShow:T,ItemsSorter:x,throttledArrowClick:$,throttledIndicatorHover:M}=OB(o,n),O=be("carousel"),{t:R}=kt(),H=S(()=>{const N=[O.b(),O.m(o.direction)];return s(d)&&N.push(O.m("card")),N}),q=S(()=>{const N=[O.e("indicators"),O.em("indicators",o.direction)];return s(u)&&N.push(O.em("indicators","labels")),o.indicatorPosition==="outside"&&N.push(O.em("indicators","outside")),s(v)&&N.push(O.em("indicators","right")),N});function X(N){if(!o.motionBlur)return;const L=s(v)?`${O.namespace.value}-transitioning-vertical`:`${O.namespace.value}-transitioning`;N.currentTarget.classList.add(L)}function P(N){if(!o.motionBlur)return;const L=s(v)?`${O.namespace.value}-transitioning-vertical`:`${O.namespace.value}-transitioning`;N.currentTarget.classList.remove(L)}return t({activeIndex:r,setActiveItem:w,prev:y,next:k}),(N,L)=>(_(),F("div",{ref_key:"root",ref:a,class:I(s(H)),onMouseenter:Qe(s(b),["stop"]),onMouseleave:Qe(s(C),["stop"])},[s(i)?(_(),ie(xn,{key:0,name:"carousel-arrow-left",persisted:""},{default:Y(()=>[dt(K("button",{type:"button",class:I([s(O).e("arrow"),s(O).em("arrow","left")]),"aria-label":s(R)("el.carousel.leftArrow"),onMouseenter:z=>s(m)("left"),onMouseleave:s(h),onClick:Qe(z=>s($)(s(l)-1),["stop"])},[U(s(Ve),null,{default:Y(()=>[U(s(el))]),_:1})],42,["aria-label","onMouseenter","onMouseleave","onClick"]),[[Nt,(N.arrow==="always"||s(c))&&(N.loop||s(l)>0)]])]),_:1})):le("v-if",!0),s(i)?(_(),ie(xn,{key:1,name:"carousel-arrow-right",persisted:""},{default:Y(()=>[dt(K("button",{type:"button",class:I([s(O).e("arrow"),s(O).em("arrow","right")]),"aria-label":s(R)("el.carousel.rightArrow"),onMouseenter:z=>s(m)("right"),onMouseleave:s(h),onClick:Qe(z=>s($)(s(l)+1),["stop"])},[U(s(Ve),null,{default:Y(()=>[U(s(Gn))]),_:1})],42,["aria-label","onMouseenter","onMouseleave","onClick"]),[[Nt,(N.arrow==="always"||s(c))&&(N.loop||s(l)[N.indicatorPosition!=="none"?(_(),F("ul",{key:0,class:I(s(q))},[(_(!0),F(He,null,bt(s(f),(z,B)=>dt((_(),F("li",{key:B,class:I([s(O).e("indicator"),s(O).em("indicator",N.direction),s(O).is("active",B===s(l))]),onMouseenter:W=>s(M)(B),onClick:Qe(W=>s(g)(B),["stop"])},[K("button",{class:I(s(O).e("button")),"aria-label":s(R)("el.carousel.indicator",{index:B+1})},[s(u)?(_(),F("span",{key:0},Ce(z.props.label),1)):le("v-if",!0)],10,["aria-label"])],42,["onMouseenter","onClick"])),[[Nt,s(T)(B)]])),128))],2)):le("v-if",!0)]),_:1}),N.motionBlur?(_(),F("svg",{key:2,xmlns:"http://www.w3.org/2000/svg",version:"1.1",style:{display:"none"}},[K("defs",null,[K("filter",{id:"elCarouselHorizontal"},[K("feGaussianBlur",{in:"SourceGraphic",stdDeviation:"12,0"})]),K("filter",{id:"elCarouselVertical"},[K("feGaussianBlur",{in:"SourceGraphic",stdDeviation:"0,10"})])])])):le("v-if",!0)],42,["onMouseenter","onMouseleave"]))}});var xB=Oe(RB,[["__file","carousel.vue"]]);const IB=Ee({name:{type:String,default:""},label:{type:[String,Number],default:""}}),PB=e=>{const t=Pe(Vk),n=vt(),o=A(),a=A(!1),l=A(0),r=A(1),i=A(!1),u=A(!1),c=A(!1),d=A(!1),{isCardType:f,isVertical:v,cardScale:p}=t;function m(y,k,E){const T=E-1,x=k-1,$=k+1,M=E/2;return k===0&&y===T?-1:k===T&&y===0?E:y=M?E+1:y>$&&y-k>=M?-2:y}function h(y,k){var E,T;const x=s(v)?((E=t.root.value)==null?void 0:E.offsetHeight)||0:((T=t.root.value)==null?void 0:T.offsetWidth)||0;return c.value?x*((2-p)*(y-k)+1)/4:y{var T;const x=s(f),$=(T=t.items.value.length)!=null?T:Number.NaN,M=y===k;!x&&!Tt(E)&&(d.value=M||y===E),!M&&$>2&&t.loop&&(y=m(y,k,$));const O=s(v);i.value=M,x?(c.value=Math.round(Math.abs(y-k))<=1,l.value=h(y,k),r.value=s(i)?1:p):l.value=g(y,k,O),u.value=!0,M&&o.value&&t.setContainerHeight(o.value.offsetHeight)};function C(){if(t&&s(f)){const y=t.items.value.findIndex(({uid:k})=>k===n.uid);t.setActiveItem(y)}}const w={props:e,states:Ot({hover:a,translate:l,scale:r,active:i,ready:u,inStage:c,animating:d}),uid:n.uid,getVnode:()=>n.vnode,translateItem:b};return t.addItem(w),Pt(()=>{t.removeItem(w)}),{carouselItemRef:o,active:i,animating:d,hover:a,inStage:c,isVertical:v,translate:l,isCardType:f,scale:r,ready:u,handleItemClick:C}},MB=G({name:rv}),AB=G({...MB,props:IB,setup(e){const t=e,n=be("carousel"),{carouselItemRef:o,active:a,animating:l,hover:r,inStage:i,isVertical:u,translate:c,isCardType:d,scale:f,ready:v,handleItemClick:p}=PB(t),m=S(()=>[n.e("item"),n.is("active",a.value),n.is("in-stage",i.value),n.is("hover",r.value),n.is("animating",l.value),{[n.em("item","card")]:d.value,[n.em("item","card-vertical")]:d.value&&u.value}]),h=S(()=>{const b=`${`translate${s(u)?"Y":"X"}`}(${s(c)}px)`,C=`scale(${s(f)})`;return{transform:[b,C].join(" ")}});return(g,b)=>dt((_(),F("div",{ref_key:"carouselItemRef",ref:o,class:I(s(m)),style:Ye(s(h)),onClick:s(p)},[s(d)?dt((_(),F("div",{key:0,class:I(s(n).e("mask"))},null,2)),[[Nt,!s(a)]]):le("v-if",!0),re(g.$slots,"default")],14,["onClick"])),[[Nt,s(v)]])}});var zk=Oe(AB,[["__file","carousel-item.vue"]]);const LB=rt(xB,{CarouselItem:zk}),DB=en(zk),Hk={modelValue:{type:[Number,String,Boolean],default:void 0},label:{type:[String,Boolean,Number,Object],default:void 0},value:{type:[String,Boolean,Number,Object],default:void 0},indeterminate:Boolean,disabled:{type:Boolean,default:void 0},checked:Boolean,name:{type:String,default:void 0},trueValue:{type:[String,Number],default:void 0},falseValue:{type:[String,Number],default:void 0},trueLabel:{type:[String,Number],default:void 0},falseLabel:{type:[String,Number],default:void 0},id:{type:String,default:void 0},border:Boolean,size:bn,tabindex:[String,Number],validateEvent:{type:Boolean,default:!0},ariaLabel:String,...Xn(["ariaControls"])},Kk={[et]:e=>ze(e)||Ge(e)||Lt(e),change:e=>ze(e)||Ge(e)||Lt(e)},As=Symbol("checkboxGroupContextKey"),BB=({model:e,isChecked:t})=>{const n=Pe(As,void 0),o=Pe(Nr,void 0),a=S(()=>{var r,i;const u=(r=n?.max)==null?void 0:r.value,c=(i=n?.min)==null?void 0:i.value;return!Tt(u)&&e.value.length>=u&&!t.value||!Tt(c)&&e.value.length<=c&&t.value});return{isDisabled:tn(S(()=>{var r,i;return n===void 0?(r=o?.disabled)!=null?r:a.value:((i=n.disabled)==null?void 0:i.value)||a.value})),isLimitDisabled:a}},FB=(e,{model:t,isLimitExceeded:n,hasOwnLabel:o,isDisabled:a,isLabeledByFormItem:l})=>{const r=Pe(As,void 0),{formItem:i}=Nn(),{emit:u}=vt();function c(m){var h,g,b,C;return[!0,e.trueValue,e.trueLabel].includes(m)?(g=(h=e.trueValue)!=null?h:e.trueLabel)!=null?g:!0:(C=(b=e.falseValue)!=null?b:e.falseLabel)!=null?C:!1}function d(m,h){u(yt,c(m),h)}function f(m){if(n.value)return;const h=m.target;u(yt,c(h.checked),m)}async function v(m){n.value||!o.value&&!a.value&&l.value&&(m.composedPath().some(b=>b.tagName==="LABEL")||(t.value=c([!1,e.falseValue,e.falseLabel].includes(t.value)),await Me(),d(t.value,m)))}const p=S(()=>r?.validateEvent||e.validateEvent);return fe(()=>e.modelValue,()=>{p.value&&i?.validate("change").catch(m=>void 0)}),{handleChange:f,onClickRoot:v}},VB=e=>{const t=A(!1),{emit:n}=vt(),o=Pe(As,void 0),a=S(()=>Tt(o)===!1),l=A(!1),r=S({get(){var i,u;return a.value?(i=o?.modelValue)==null?void 0:i.value:(u=e.modelValue)!=null?u:t.value},set(i){var u,c;a.value&&Se(i)?(l.value=((u=o?.max)==null?void 0:u.value)!==void 0&&i.length>o?.max.value&&i.length>r.value.length,l.value===!1&&((c=o?.changeEvent)==null||c.call(o,i))):(n(et,i),t.value=i)}});return{model:r,isGroup:a,isLimitExceeded:l}},zB=(e,t,{model:n})=>{const o=Pe(As,void 0),a=A(!1),l=S(()=>co(e.value)?e.label:e.value),r=S(()=>{const d=n.value;return Lt(d)?d:Se(d)?it(l.value)?d.map(Kt).some(f=>nn(f,l.value)):d.map(Kt).includes(l.value):d!=null?d===e.trueValue||d===e.trueLabel:!!d}),i=vn(S(()=>{var d;return(d=o?.size)==null?void 0:d.value}),{prop:!0}),u=vn(S(()=>{var d;return(d=o?.size)==null?void 0:d.value})),c=S(()=>!!t.default||!co(l.value));return{checkboxButtonSize:i,isChecked:r,isFocused:a,checkboxSize:u,hasOwnLabel:c,actualValue:l}},Wk=(e,t)=>{const{formItem:n}=Nn(),{model:o,isGroup:a,isLimitExceeded:l}=VB(e),{isFocused:r,isChecked:i,checkboxButtonSize:u,checkboxSize:c,hasOwnLabel:d,actualValue:f}=zB(e,t,{model:o}),{isDisabled:v}=BB({model:o,isChecked:i}),{inputId:p,isLabeledByFormItem:m}=To(e,{formItemContext:n,disableIdGeneration:d,disableIdManagement:a}),{handleChange:h,onClickRoot:g}=FB(e,{model:o,isLimitExceeded:l,hasOwnLabel:d,isDisabled:v,isLabeledByFormItem:m});return(()=>{function C(){var w,y;Se(o.value)&&!o.value.includes(f.value)?o.value.push(f.value):o.value=(y=(w=e.trueValue)!=null?w:e.trueLabel)!=null?y:!0}e.checked&&C()})(),ba({from:"label act as value",replacement:"value",version:"3.0.0",scope:"el-checkbox",ref:"https://element-plus.org/en-US/component/checkbox.html"},S(()=>a.value&&co(e.value))),ba({from:"true-label",replacement:"true-value",version:"3.0.0",scope:"el-checkbox",ref:"https://element-plus.org/en-US/component/checkbox.html"},S(()=>!!e.trueLabel)),ba({from:"false-label",replacement:"false-value",version:"3.0.0",scope:"el-checkbox",ref:"https://element-plus.org/en-US/component/checkbox.html"},S(()=>!!e.falseLabel)),{inputId:p,isLabeledByFormItem:m,isChecked:i,isDisabled:v,isFocused:r,checkboxButtonSize:u,checkboxSize:c,hasOwnLabel:d,model:o,actualValue:f,handleChange:h,onClickRoot:g}},HB=G({name:"ElCheckbox"}),KB=G({...HB,props:Hk,emits:Kk,setup(e){const t=e,n=hn(),{inputId:o,isLabeledByFormItem:a,isChecked:l,isDisabled:r,isFocused:i,checkboxSize:u,hasOwnLabel:c,model:d,actualValue:f,handleChange:v,onClickRoot:p}=Wk(t,n),m=S(()=>{var C,w,y,k;return t.trueValue||t.falseValue||t.trueLabel||t.falseLabel?{"true-value":(w=(C=t.trueValue)!=null?C:t.trueLabel)!=null?w:!0,"false-value":(k=(y=t.falseValue)!=null?y:t.falseLabel)!=null?k:!1}:{value:f.value}}),h=be("checkbox"),g=S(()=>[h.b(),h.m(u.value),h.is("disabled",r.value),h.is("bordered",t.border),h.is("checked",l.value)]),b=S(()=>[h.e("input"),h.is("disabled",r.value),h.is("checked",l.value),h.is("indeterminate",t.indeterminate),h.is("focus",i.value)]);return(C,w)=>(_(),ie(ft(!s(c)&&s(a)?"span":"label"),{for:!s(c)&&s(a)?null:s(o),class:I(s(g)),"aria-controls":C.indeterminate?C.ariaControls:null,"aria-checked":C.indeterminate?"mixed":void 0,"aria-label":C.ariaLabel,onClick:s(p)},{default:Y(()=>[K("span",{class:I(s(b))},[dt(K("input",ht({id:s(o),"onUpdate:modelValue":y=>Ht(d)?d.value=y:null,class:s(h).e("original"),type:"checkbox",indeterminate:C.indeterminate,name:C.name,tabindex:C.tabindex,disabled:s(r)},s(m),{onChange:s(v),onFocus:y=>i.value=!0,onBlur:y=>i.value=!1,onClick:Qe(()=>{},["stop"])}),null,16,["id","onUpdate:modelValue","indeterminate","name","tabindex","disabled","onChange","onFocus","onBlur","onClick"]),[[gC,s(d)]]),K("span",{class:I(s(h).e("inner"))},null,2)],2),s(c)?(_(),F("span",{key:0,class:I(s(h).e("label"))},[re(C.$slots,"default"),C.$slots.default?le("v-if",!0):(_(),F(He,{key:0},[lt(Ce(C.label),1)],64))],2)):le("v-if",!0)]),_:3},8,["for","class","aria-controls","aria-checked","aria-label","onClick"]))}});var jk=Oe(KB,[["__file","checkbox.vue"]]);const WB=G({name:"ElCheckboxButton"}),jB=G({...WB,props:Hk,emits:Kk,setup(e){const t=e,n=hn(),{isFocused:o,isChecked:a,isDisabled:l,checkboxButtonSize:r,model:i,actualValue:u,handleChange:c}=Wk(t,n),d=S(()=>{var h,g,b,C;return t.trueValue||t.falseValue||t.trueLabel||t.falseLabel?{"true-value":(g=(h=t.trueValue)!=null?h:t.trueLabel)!=null?g:!0,"false-value":(C=(b=t.falseValue)!=null?b:t.falseLabel)!=null?C:!1}:{value:u.value}}),f=Pe(As,void 0),v=be("checkbox"),p=S(()=>{var h,g,b,C;const w=(g=(h=f?.fill)==null?void 0:h.value)!=null?g:"";return{backgroundColor:w,borderColor:w,color:(C=(b=f?.textColor)==null?void 0:b.value)!=null?C:"",boxShadow:w?`-1px 0 0 0 ${w}`:void 0}}),m=S(()=>[v.b("button"),v.bm("button",r.value),v.is("disabled",l.value),v.is("checked",a.value),v.is("focus",o.value)]);return(h,g)=>(_(),F("label",{class:I(s(m))},[dt(K("input",ht({"onUpdate:modelValue":b=>Ht(i)?i.value=b:null,class:s(v).be("button","original"),type:"checkbox",name:h.name,tabindex:h.tabindex,disabled:s(l)},s(d),{onChange:s(c),onFocus:b=>o.value=!0,onBlur:b=>o.value=!1,onClick:Qe(()=>{},["stop"])}),null,16,["onUpdate:modelValue","name","tabindex","disabled","onChange","onFocus","onBlur","onClick"]),[[gC,s(i)]]),h.$slots.default||h.label?(_(),F("span",{key:0,class:I(s(v).be("button","inner")),style:Ye(s(a)?s(p):void 0)},[re(h.$slots,"default",{},()=>[lt(Ce(h.label),1)])],6)):le("v-if",!0)],2))}});var bm=Oe(jB,[["__file","checkbox-button.vue"]]);const UB=Ee({modelValue:{type:ee(Array),default:()=>[]},disabled:{type:Boolean,default:void 0},min:Number,max:Number,size:bn,fill:String,textColor:String,tag:{type:String,default:"div"},validateEvent:{type:Boolean,default:!0},options:{type:ee(Array)},props:{type:ee(Object),default:()=>Uk},type:{type:String,values:["checkbox","button"],default:"checkbox"},...Xn(["ariaLabel"])}),qB={[et]:e=>Se(e),change:e=>Se(e)},Uk={label:"label",value:"value",disabled:"disabled"},YB=G({name:"ElCheckboxGroup"}),GB=G({...YB,props:UB,emits:qB,setup(e,{emit:t}){const n=e,o=be("checkbox"),a=tn(),{formItem:l}=Nn(),{inputId:r,isLabeledByFormItem:i}=To(n,{formItemContext:l}),u=async p=>{t(et,p),await Me(),t(yt,p)},c=S({get(){return n.modelValue},set(p){u(p)}}),d=S(()=>({...Uk,...n.props})),f=p=>{const{label:m,value:h,disabled:g}=d.value,b={label:p[m],value:p[h],disabled:p[g]};return{...of(p,[m,h,g]),...b}},v=S(()=>n.type==="button"?bm:jk);return wt(As,{...Ja(yn(n),["size","min","max","validateEvent","fill","textColor"]),disabled:a,modelValue:c,changeEvent:u}),fe(()=>n.modelValue,(p,m)=>{n.validateEvent&&!nn(p,m)&&l?.validate("change").catch(h=>void 0)}),(p,m)=>{var h;return _(),ie(ft(p.tag),{id:s(r),class:I(s(o).b("group")),role:"group","aria-label":s(i)?void 0:p.ariaLabel||"checkbox-group","aria-labelledby":s(i)?(h=s(l))==null?void 0:h.labelId:void 0},{default:Y(()=>[re(p.$slots,"default",{},()=>[(_(!0),F(He,null,bt(p.options,(g,b)=>(_(),ie(ft(s(v)),ht({key:b},f(g)),null,16))),128))])]),_:3},8,["id","class","aria-label","aria-labelledby"])}}});var qk=Oe(GB,[["__file","checkbox-group.vue"]]);const Jo=rt(jk,{CheckboxButton:bm,CheckboxGroup:qk}),XB=en(bm),ym=en(qk),Yk=Ee({modelValue:{type:[String,Number,Boolean],default:void 0},size:bn,disabled:{type:Boolean,default:void 0},label:{type:[String,Number,Boolean],default:void 0},value:{type:[String,Number,Boolean],default:void 0},name:{type:String,default:void 0}}),JB=Ee({...Yk,border:Boolean}),Gk={[et]:e=>ze(e)||Ge(e)||Lt(e),[yt]:e=>ze(e)||Ge(e)||Lt(e)},Xk=Symbol("radioGroupKey"),Jk=(e,t)=>{const n=A(),o=Pe(Xk,void 0),a=S(()=>!!o),l=S(()=>co(e.value)?e.label:e.value),r=S({get(){return a.value?o.modelValue:e.modelValue},set(f){a.value?o.changeEvent(f):t&&t(et,f),n.value.checked=e.modelValue===l.value}}),i=vn(S(()=>o?.size)),u=tn(S(()=>o?.disabled)),c=A(!1),d=S(()=>u.value||a.value&&r.value!==l.value?-1:0);return ba({from:"label act as value",replacement:"value",version:"3.0.0",scope:"el-radio",ref:"https://element-plus.org/en-US/component/radio.html"},S(()=>a.value&&co(e.value))),{radioRef:n,isGroup:a,radioGroup:o,focus:c,size:i,disabled:u,tabIndex:d,modelValue:r,actualValue:l}},ZB=G({name:"ElRadio"}),QB=G({...ZB,props:JB,emits:Gk,setup(e,{emit:t}){const n=e,o=be("radio"),{radioRef:a,radioGroup:l,focus:r,size:i,disabled:u,modelValue:c,actualValue:d}=Jk(n,t);function f(){Me(()=>t(yt,c.value))}return(v,p)=>{var m;return _(),F("label",{class:I([s(o).b(),s(o).is("disabled",s(u)),s(o).is("focus",s(r)),s(o).is("bordered",v.border),s(o).is("checked",s(c)===s(d)),s(o).m(s(i))])},[K("span",{class:I([s(o).e("input"),s(o).is("disabled",s(u)),s(o).is("checked",s(c)===s(d))])},[dt(K("input",{ref_key:"radioRef",ref:a,"onUpdate:modelValue":h=>Ht(c)?c.value=h:null,class:I(s(o).e("original")),value:s(d),name:v.name||((m=s(l))==null?void 0:m.name),disabled:s(u),checked:s(c)===s(d),type:"radio",onFocus:h=>r.value=!0,onBlur:h=>r.value=!1,onChange:f,onClick:Qe(()=>{},["stop"])},null,42,["onUpdate:modelValue","value","name","disabled","checked","onFocus","onBlur","onClick"]),[[bC,s(c)]]),K("span",{class:I(s(o).e("inner"))},null,2)],2),K("span",{class:I(s(o).e("label")),onKeydown:Qe(()=>{},["stop"])},[re(v.$slots,"default",{},()=>[lt(Ce(v.label),1)])],42,["onKeydown"])],2)}}});var Zk=Oe(QB,[["__file","radio.vue"]]);const eF=Ee({...Yk}),tF=G({name:"ElRadioButton"}),nF=G({...tF,props:eF,setup(e){const t=e,n=be("radio"),{radioRef:o,focus:a,size:l,disabled:r,modelValue:i,radioGroup:u,actualValue:c}=Jk(t),d=S(()=>({backgroundColor:u?.fill||"",borderColor:u?.fill||"",boxShadow:u?.fill?`-1px 0 0 0 ${u.fill}`:"",color:u?.textColor||""}));return(f,v)=>{var p;return _(),F("label",{class:I([s(n).b("button"),s(n).is("active",s(i)===s(c)),s(n).is("disabled",s(r)),s(n).is("focus",s(a)),s(n).bm("button",s(l))])},[dt(K("input",{ref_key:"radioRef",ref:o,"onUpdate:modelValue":m=>Ht(i)?i.value=m:null,class:I(s(n).be("button","original-radio")),value:s(c),type:"radio",name:f.name||((p=s(u))==null?void 0:p.name),disabled:s(r),onFocus:m=>a.value=!0,onBlur:m=>a.value=!1,onClick:Qe(()=>{},["stop"])},null,42,["onUpdate:modelValue","value","name","disabled","onFocus","onBlur","onClick"]),[[bC,s(i)]]),K("span",{class:I(s(n).be("button","inner")),style:Ye(s(i)===s(c)?s(d):{}),onKeydown:Qe(()=>{},["stop"])},[re(f.$slots,"default",{},()=>[lt(Ce(f.label),1)])],46,["onKeydown"])],2)}}});var wm=Oe(nF,[["__file","radio-button.vue"]]);const oF=Ee({id:{type:String,default:void 0},size:bn,disabled:{type:Boolean,default:void 0},modelValue:{type:[String,Number,Boolean],default:void 0},fill:{type:String,default:""},textColor:{type:String,default:""},name:{type:String,default:void 0},validateEvent:{type:Boolean,default:!0},options:{type:ee(Array)},props:{type:ee(Object),default:()=>Qk},type:{type:String,values:["radio","button"],default:"radio"},...Xn(["ariaLabel"])}),aF=Gk,Qk={label:"label",value:"value",disabled:"disabled"},lF=G({name:"ElRadioGroup"}),rF=G({...lF,props:oF,emits:aF,setup(e,{emit:t}){const n=e,o=be("radio"),a=In(),l=A(),{formItem:r}=Nn(),{inputId:i,isLabeledByFormItem:u}=To(n,{formItemContext:r}),c=m=>{t(et,m),Me(()=>t(yt,m))};mt(()=>{const m=l.value.querySelectorAll("[type=radio]"),h=m[0];!Array.from(m).some(g=>g.checked)&&h&&(h.tabIndex=0)});const d=S(()=>n.name||a.value),f=S(()=>({...Qk,...n.props})),v=m=>{const{label:h,value:g,disabled:b}=f.value,C={label:m[h],value:m[g],disabled:m[b]};return{...of(m,[h,g,b]),...C}},p=S(()=>n.type==="button"?wm:Zk);return wt(Xk,Ot({...yn(n),changeEvent:c,name:d})),fe(()=>n.modelValue,(m,h)=>{n.validateEvent&&!nn(m,h)&&r?.validate("change").catch(g=>void 0)}),(m,h)=>(_(),F("div",{id:s(i),ref_key:"radioGroupRef",ref:l,class:I(s(o).b("group")),role:"radiogroup","aria-label":s(u)?void 0:m.ariaLabel||"radio-group","aria-labelledby":s(u)?s(r).labelId:void 0},[re(m.$slots,"default",{},()=>[(_(!0),F(He,null,bt(m.options,(g,b)=>(_(),ie(ft(s(p)),ht({key:b},v(g)),null,16))),128))])],10,["id","aria-label","aria-labelledby"]))}});var eE=Oe(rF,[["__file","radio-group.vue"]]);const tE=rt(Zk,{RadioButton:wm,RadioGroup:eE}),sF=en(eE),iF=en(wm),vf=Symbol();function uF(e){return!!(Se(e)?e.every(({type:t})=>t===un):e?.type===un)}var cF=G({name:"NodeContent",props:{node:{type:Object,required:!0}},setup(e){const t=be("cascader-node"),{renderLabelFn:n}=Pe(vf),{node:o}=e,{data:a,label:l}=o,r=()=>{const i=n?.({node:o,data:a});return uF(i)?l:i??l};return()=>U("span",{class:t.e("label")},[r()])}});const dF=G({name:"ElCascaderNode"}),fF=G({...dF,props:{node:{type:Object,required:!0},menuId:String},emits:["expand"],setup(e,{emit:t}){const n=e,o=Pe(vf),a=be("cascader-node"),l=S(()=>o.isHoverMenu),r=S(()=>o.config.multiple),i=S(()=>o.config.checkStrictly),u=S(()=>o.config.showPrefix),c=S(()=>{var x;return(x=o.checkedNodes[0])==null?void 0:x.uid}),d=S(()=>n.node.isDisabled),f=S(()=>n.node.isLeaf),v=S(()=>i.value&&!f.value||!d.value),p=S(()=>h(o.expandingNode)),m=S(()=>i.value&&o.checkedNodes.some(h)),h=x=>{var $;const{level:M,uid:O}=n.node;return(($=x?.pathNodes[M-1])==null?void 0:$.uid)===O},g=()=>{p.value||o.expandNode(n.node)},b=x=>{const{node:$}=n;x!==$.checked&&o.handleCheckChange($,x)},C=()=>{o.lazyLoad(n.node,()=>{f.value||g()})},w=x=>{l.value&&(y(),!f.value&&t("expand",x))},y=()=>{const{node:x}=n;!v.value||x.loading||(x.loaded?g():C())},k=()=>{f.value&&!d.value&&!i.value&&!r.value?T(!0):(o.config.checkOnClickNode&&(r.value||i.value)||f.value&&o.config.checkOnClickLeaf)&&!d.value?E(!n.node.checked):l.value||y()},E=x=>{i.value?(b(x),n.node.loaded&&g()):T(x)},T=x=>{n.node.loaded?(b(x),!i.value&&g()):C()};return(x,$)=>(_(),F("li",{id:`${e.menuId}-${e.node.uid}`,role:"menuitem","aria-haspopup":!s(f),"aria-owns":s(f)?void 0:e.menuId,"aria-expanded":s(p),tabindex:s(v)?-1:void 0,class:I([s(a).b(),s(a).is("selectable",s(i)),s(a).is("active",e.node.checked),s(a).is("disabled",!s(v)),s(p)&&"in-active-path",s(m)&&"in-checked-path"]),onMouseenter:w,onFocus:w,onClick:k},[le(" prefix "),s(r)&&s(u)?(_(),ie(s(Jo),{key:0,"model-value":e.node.checked,indeterminate:e.node.indeterminate,disabled:s(d),onClick:Qe(()=>{},["stop"]),"onUpdate:modelValue":E},null,8,["model-value","indeterminate","disabled","onClick"])):s(i)&&s(u)?(_(),ie(s(tE),{key:1,"model-value":s(c),label:e.node.uid,disabled:s(d),"onUpdate:modelValue":E,onClick:Qe(()=>{},["stop"])},{default:Y(()=>[le(` Add an empty element to avoid render label, do not use empty fragment here for https://github.com/vuejs/vue-next/pull/2485 @@ -27,4 +27,4 @@ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./LoginPage-BT64PXO4.j `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const o=new this(t);return n.forEach(a=>o.set(a)),o}static accessor(t){const o=(this[Mw]=this[Mw]={accessors:{}}).accessors,a=this.prototype;function l(r){const i=Zs(r);o[i]||(bte(a,r),o[i]=!0)}return xe.isArray(t)?t.forEach(l):l(t),this}};ho.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);xe.reduceDescriptors(ho.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(o){this[n]=o}}});xe.freezeMethods(ho);function Np(e,t){const n=this||Mu,o=t||n,a=ho.from(o.headers);let l=o.data;return xe.forEach(e,function(i){l=i.call(n,l,a.normalize(),t?t.status:void 0)}),a.normalize(),l}function fT(e){return!!(e&&e.__CANCEL__)}function Fs(e,t,n){Ft.call(this,e??"canceled",Ft.ERR_CANCELED,t,n),this.name="CanceledError"}xe.inherits(Fs,Ft,{__CANCEL__:!0});function pT(e,t,n){const o=n.config.validateStatus;!n.status||!o||o(n.status)?e(n):t(new Ft("Request failed with status code "+n.status,[Ft.ERR_BAD_REQUEST,Ft.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function yte(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function wte(e,t){e=e||10;const n=new Array(e),o=new Array(e);let a=0,l=0,r;return t=t!==void 0?t:1e3,function(u){const c=Date.now(),d=o[l];r||(r=c),n[a]=u,o[a]=c;let f=l,v=0;for(;f!==a;)v+=n[f++],f=f%e;if(a=(a+1)%e,a===l&&(l=(l+1)%e),c-r{n=d,a=null,l&&(clearTimeout(l),l=null),e(...c)};return[(...c)=>{const d=Date.now(),f=d-n;f>=o?r(c,d):(a=c,l||(l=setTimeout(()=>{l=null,r(a)},o-f)))},()=>a&&r(a)]}const $d=(e,t,n=3)=>{let o=0;const a=wte(50,250);return Cte(l=>{const r=l.loaded,i=l.lengthComputable?l.total:void 0,u=r-o,c=a(u),d=r<=i;o=r;const f={loaded:r,total:i,progress:i?r/i:void 0,bytes:u,rate:c||void 0,estimated:c&&i&&d?(i-r)/c:void 0,event:l,lengthComputable:i!=null,[t?"download":"upload"]:!0};e(f)},n)},Aw=(e,t)=>{const n=e!=null;return[o=>t[0]({lengthComputable:n,total:e,loaded:o}),t[1]]},Lw=e=>(...t)=>xe.asap(()=>e(...t)),Ste=Un.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,Un.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(Un.origin),Un.navigator&&/(msie|trident)/i.test(Un.navigator.userAgent)):()=>!0,kte=Un.hasStandardBrowserEnv?{write(e,t,n,o,a,l,r){if(typeof document>"u")return;const i=[`${e}=${encodeURIComponent(t)}`];xe.isNumber(n)&&i.push(`expires=${new Date(n).toUTCString()}`),xe.isString(o)&&i.push(`path=${o}`),xe.isString(a)&&i.push(`domain=${a}`),l===!0&&i.push("secure"),xe.isString(r)&&i.push(`SameSite=${r}`),document.cookie=i.join("; ")},read(e){if(typeof document>"u")return null;const t=document.cookie.match(new RegExp("(?:^|; )"+e+"=([^;]*)"));return t?decodeURIComponent(t[1]):null},remove(e){this.write(e,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function Ete(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function _te(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function vT(e,t,n){let o=!Ete(t);return e&&(o||n==!1)?_te(e,t):t}const Dw=e=>e instanceof ho?{...e}:e;function kr(e,t){t=t||{};const n={};function o(c,d,f,v){return xe.isPlainObject(c)&&xe.isPlainObject(d)?xe.merge.call({caseless:v},c,d):xe.isPlainObject(d)?xe.merge({},d):xe.isArray(d)?d.slice():d}function a(c,d,f,v){if(xe.isUndefined(d)){if(!xe.isUndefined(c))return o(void 0,c,f,v)}else return o(c,d,f,v)}function l(c,d){if(!xe.isUndefined(d))return o(void 0,d)}function r(c,d){if(xe.isUndefined(d)){if(!xe.isUndefined(c))return o(void 0,c)}else return o(void 0,d)}function i(c,d,f){if(f in t)return o(c,d);if(f in e)return o(void 0,c)}const u={url:l,method:l,data:l,baseURL:r,transformRequest:r,transformResponse:r,paramsSerializer:r,timeout:r,timeoutMessage:r,withCredentials:r,withXSRFToken:r,adapter:r,responseType:r,xsrfCookieName:r,xsrfHeaderName:r,onUploadProgress:r,onDownloadProgress:r,decompress:r,maxContentLength:r,maxBodyLength:r,beforeRedirect:r,transport:r,httpAgent:r,httpsAgent:r,cancelToken:r,socketPath:r,responseEncoding:r,validateStatus:i,headers:(c,d,f)=>a(Dw(c),Dw(d),f,!0)};return xe.forEach(Object.keys({...e,...t}),function(d){const f=u[d]||a,v=f(e[d],t[d],d);xe.isUndefined(v)&&f!==i||(n[d]=v)}),n}const hT=e=>{const t=kr({},e);let{data:n,withXSRFToken:o,xsrfHeaderName:a,xsrfCookieName:l,headers:r,auth:i}=t;if(t.headers=r=ho.from(r),t.url=uT(vT(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),i&&r.set("Authorization","Basic "+btoa((i.username||"")+":"+(i.password?unescape(encodeURIComponent(i.password)):""))),xe.isFormData(n)){if(Un.hasStandardBrowserEnv||Un.hasStandardBrowserWebWorkerEnv)r.setContentType(void 0);else if(xe.isFunction(n.getHeaders)){const u=n.getHeaders(),c=["content-type","content-length"];Object.entries(u).forEach(([d,f])=>{c.includes(d.toLowerCase())&&r.set(d,f)})}}if(Un.hasStandardBrowserEnv&&(o&&xe.isFunction(o)&&(o=o(t)),o||o!==!1&&Ste(t.url))){const u=a&&l&&kte.read(l);u&&r.set(a,u)}return t},Tte=typeof XMLHttpRequest<"u",Ote=Tte&&function(e){return new Promise(function(n,o){const a=hT(e);let l=a.data;const r=ho.from(a.headers).normalize();let{responseType:i,onUploadProgress:u,onDownloadProgress:c}=a,d,f,v,p,m;function h(){p&&p(),m&&m(),a.cancelToken&&a.cancelToken.unsubscribe(d),a.signal&&a.signal.removeEventListener("abort",d)}let g=new XMLHttpRequest;g.open(a.method.toUpperCase(),a.url,!0),g.timeout=a.timeout;function b(){if(!g)return;const w=ho.from("getAllResponseHeaders"in g&&g.getAllResponseHeaders()),k={data:!i||i==="text"||i==="json"?g.responseText:g.response,status:g.status,statusText:g.statusText,headers:w,config:e,request:g};pT(function(T){n(T),h()},function(T){o(T),h()},k),g=null}"onloadend"in g?g.onloadend=b:g.onreadystatechange=function(){!g||g.readyState!==4||g.status===0&&!(g.responseURL&&g.responseURL.indexOf("file:")===0)||setTimeout(b)},g.onabort=function(){g&&(o(new Ft("Request aborted",Ft.ECONNABORTED,e,g)),g=null)},g.onerror=function(y){const k=y&&y.message?y.message:"Network Error",E=new Ft(k,Ft.ERR_NETWORK,e,g);E.event=y||null,o(E),g=null},g.ontimeout=function(){let y=a.timeout?"timeout of "+a.timeout+"ms exceeded":"timeout exceeded";const k=a.transitional||cT;a.timeoutErrorMessage&&(y=a.timeoutErrorMessage),o(new Ft(y,k.clarifyTimeoutError?Ft.ETIMEDOUT:Ft.ECONNABORTED,e,g)),g=null},l===void 0&&r.setContentType(null),"setRequestHeader"in g&&xe.forEach(r.toJSON(),function(y,k){g.setRequestHeader(k,y)}),xe.isUndefined(a.withCredentials)||(g.withCredentials=!!a.withCredentials),i&&i!=="json"&&(g.responseType=a.responseType),c&&([v,m]=$d(c,!0),g.addEventListener("progress",v)),u&&g.upload&&([f,p]=$d(u),g.upload.addEventListener("progress",f),g.upload.addEventListener("loadend",p)),(a.cancelToken||a.signal)&&(d=w=>{g&&(o(!w||w.type?new Fs(null,e,g):w),g.abort(),g=null)},a.cancelToken&&a.cancelToken.subscribe(d),a.signal&&(a.signal.aborted?d():a.signal.addEventListener("abort",d)));const C=yte(a.url);if(C&&Un.protocols.indexOf(C)===-1){o(new Ft("Unsupported protocol "+C+":",Ft.ERR_BAD_REQUEST,e));return}g.send(l||null)})},$te=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let o=new AbortController,a;const l=function(c){if(!a){a=!0,i();const d=c instanceof Error?c:this.reason;o.abort(d instanceof Ft?d:new Fs(d instanceof Error?d.message:d))}};let r=t&&setTimeout(()=>{r=null,l(new Ft(`timeout ${t} of ms exceeded`,Ft.ETIMEDOUT))},t);const i=()=>{e&&(r&&clearTimeout(r),r=null,e.forEach(c=>{c.unsubscribe?c.unsubscribe(l):c.removeEventListener("abort",l)}),e=null)};e.forEach(c=>c.addEventListener("abort",l));const{signal:u}=o;return u.unsubscribe=()=>xe.asap(i),u}},Nte=function*(e,t){let n=e.byteLength;if(n{const a=Rte(e,t);let l=0,r,i=u=>{r||(r=!0,o&&o(u))};return new ReadableStream({async pull(u){try{const{done:c,value:d}=await a.next();if(c){i(),u.close();return}let f=d.byteLength;if(n){let v=l+=f;n(v)}u.enqueue(new Uint8Array(d))}catch(c){throw i(c),c}},cancel(u){return i(u),a.return()}},{highWaterMark:2})},Fw=64*1024,{isFunction:ic}=xe,Ite=(({Request:e,Response:t})=>({Request:e,Response:t}))(xe.global),{ReadableStream:Vw,TextEncoder:zw}=xe.global,Hw=(e,...t)=>{try{return!!e(...t)}catch{return!1}},Pte=e=>{e=xe.merge.call({skipUndefined:!0},Ite,e);const{fetch:t,Request:n,Response:o}=e,a=t?ic(t):typeof fetch=="function",l=ic(n),r=ic(o);if(!a)return!1;const i=a&&ic(Vw),u=a&&(typeof zw=="function"?(m=>h=>m.encode(h))(new zw):async m=>new Uint8Array(await new n(m).arrayBuffer())),c=l&&i&&Hw(()=>{let m=!1;const h=new n(Un.origin,{body:new Vw,method:"POST",get duplex(){return m=!0,"half"}}).headers.has("Content-Type");return m&&!h}),d=r&&i&&Hw(()=>xe.isReadableStream(new o("").body)),f={stream:d&&(m=>m.body)};a&&["text","arrayBuffer","blob","formData","stream"].forEach(m=>{!f[m]&&(f[m]=(h,g)=>{let b=h&&h[m];if(b)return b.call(h);throw new Ft(`Response type '${m}' is not supported`,Ft.ERR_NOT_SUPPORT,g)})});const v=async m=>{if(m==null)return 0;if(xe.isBlob(m))return m.size;if(xe.isSpecCompliantForm(m))return(await new n(Un.origin,{method:"POST",body:m}).arrayBuffer()).byteLength;if(xe.isArrayBufferView(m)||xe.isArrayBuffer(m))return m.byteLength;if(xe.isURLSearchParams(m)&&(m=m+""),xe.isString(m))return(await u(m)).byteLength},p=async(m,h)=>{const g=xe.toFiniteNumber(m.getContentLength());return g??v(h)};return async m=>{let{url:h,method:g,data:b,signal:C,cancelToken:w,timeout:y,onDownloadProgress:k,onUploadProgress:E,responseType:T,headers:x,withCredentials:$="same-origin",fetchOptions:M}=hT(m),O=t||fetch;T=T?(T+"").toLowerCase():"text";let R=$te([C,w&&w.toAbortSignal()],y),H=null;const q=R&&R.unsubscribe&&(()=>{R.unsubscribe()});let X;try{if(E&&c&&g!=="get"&&g!=="head"&&(X=await p(x,b))!==0){let W=new n(h,{method:"POST",body:b,duplex:"half"}),V;if(xe.isFormData(b)&&(V=W.headers.get("content-type"))&&x.setContentType(V),W.body){const[j,oe]=Aw(X,$d(Lw(E)));b=Bw(W.body,Fw,j,oe)}}xe.isString($)||($=$?"include":"omit");const P=l&&"credentials"in n.prototype,N={...M,signal:R,method:g.toUpperCase(),headers:x.normalize().toJSON(),body:b,duplex:"half",credentials:P?$:void 0};H=l&&new n(h,N);let L=await(l?O(H,M):O(h,N));const z=d&&(T==="stream"||T==="response");if(d&&(k||z&&q)){const W={};["status","statusText","headers"].forEach(ae=>{W[ae]=L[ae]});const V=xe.toFiniteNumber(L.headers.get("content-length")),[j,oe]=k&&Aw(V,$d(Lw(k),!0))||[];L=new o(Bw(L.body,Fw,j,()=>{oe&&oe(),q&&q()}),W)}T=T||"text";let B=await f[xe.findKey(f,T)||"text"](L,m);return!z&&q&&q(),await new Promise((W,V)=>{pT(W,V,{data:B,headers:ho.from(L.headers),status:L.status,statusText:L.statusText,config:m,request:H})})}catch(P){throw q&&q(),P&&P.name==="TypeError"&&/Load failed|fetch/i.test(P.message)?Object.assign(new Ft("Network Error",Ft.ERR_NETWORK,m,H),{cause:P.cause||P}):Ft.from(P,P&&P.code,m,H)}}},Mte=new Map,mT=e=>{let t=e&&e.env||{};const{fetch:n,Request:o,Response:a}=t,l=[o,a,n];let r=l.length,i=r,u,c,d=Mte;for(;i--;)u=l[i],c=d.get(u),c===void 0&&d.set(u,c=i?new Map:Pte(t)),d=c;return c};mT();const Eg={http:Jee,xhr:Ote,fetch:{get:mT}};xe.forEach(Eg,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const Kw=e=>`- ${e}`,Ate=e=>xe.isFunction(e)||e===null||e===!1;function Lte(e,t){e=xe.isArray(e)?e:[e];const{length:n}=e;let o,a;const l={};for(let r=0;r`adapter ${u} `+(c===!1?"is not supported by the environment":"is not available in the build"));let i=n?r.length>1?`since : `+r.map(Kw).join(` `):" "+Kw(r[0]):"as no adapter specified";throw new Ft("There is no suitable adapter to dispatch the request "+i,"ERR_NOT_SUPPORT")}return a}const gT={getAdapter:Lte,adapters:Eg};function Rp(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Fs(null,e)}function Ww(e){return Rp(e),e.headers=ho.from(e.headers),e.data=Np.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),gT.getAdapter(e.adapter||Mu.adapter,e)(e).then(function(o){return Rp(e),o.data=Np.call(e,e.transformResponse,o),o.headers=ho.from(o.headers),o},function(o){return fT(o)||(Rp(e),o&&o.response&&(o.response.data=Np.call(e,e.transformResponse,o.response),o.response.headers=ho.from(o.response.headers))),Promise.reject(o)})}const bT="1.13.2",xf={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{xf[e]=function(o){return typeof o===e||"a"+(t<1?"n ":" ")+e}});const jw={};xf.transitional=function(t,n,o){function a(l,r){return"[Axios v"+bT+"] Transitional option '"+l+"'"+r+(o?". "+o:"")}return(l,r,i)=>{if(t===!1)throw new Ft(a(r," has been removed"+(n?" in "+n:"")),Ft.ERR_DEPRECATED);return n&&!jw[r]&&(jw[r]=!0,console.warn(a(r," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(l,r,i):!0}};xf.spelling=function(t){return(n,o)=>(console.warn(`${o} is likely a misspelling of ${t}`),!0)};function Dte(e,t,n){if(typeof e!="object")throw new Ft("options must be an object",Ft.ERR_BAD_OPTION_VALUE);const o=Object.keys(e);let a=o.length;for(;a-- >0;){const l=o[a],r=t[l];if(r){const i=e[l],u=i===void 0||r(i,l,e);if(u!==!0)throw new Ft("option "+l+" must be "+u,Ft.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new Ft("Unknown option "+l,Ft.ERR_BAD_OPTION)}}const Hc={assertOptions:Dte,validators:xf},ua=Hc.validators;let fr=class{constructor(t){this.defaults=t||{},this.interceptors={request:new Pw,response:new Pw}}async request(t,n){try{return await this._request(t,n)}catch(o){if(o instanceof Error){let a={};Error.captureStackTrace?Error.captureStackTrace(a):a=new Error;const l=a.stack?a.stack.replace(/^.+\n/,""):"";try{o.stack?l&&!String(o.stack).endsWith(l.replace(/^.+\n.+\n/,""))&&(o.stack+=` -`+l):o.stack=l}catch{}}throw o}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=kr(this.defaults,n);const{transitional:o,paramsSerializer:a,headers:l}=n;o!==void 0&&Hc.assertOptions(o,{silentJSONParsing:ua.transitional(ua.boolean),forcedJSONParsing:ua.transitional(ua.boolean),clarifyTimeoutError:ua.transitional(ua.boolean)},!1),a!=null&&(xe.isFunction(a)?n.paramsSerializer={serialize:a}:Hc.assertOptions(a,{encode:ua.function,serialize:ua.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),Hc.assertOptions(n,{baseUrl:ua.spelling("baseURL"),withXsrfToken:ua.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let r=l&&xe.merge(l.common,l[n.method]);l&&xe.forEach(["delete","get","head","post","put","patch","common"],m=>{delete l[m]}),n.headers=ho.concat(r,l);const i=[];let u=!0;this.interceptors.request.forEach(function(h){typeof h.runWhen=="function"&&h.runWhen(n)===!1||(u=u&&h.synchronous,i.unshift(h.fulfilled,h.rejected))});const c=[];this.interceptors.response.forEach(function(h){c.push(h.fulfilled,h.rejected)});let d,f=0,v;if(!u){const m=[Ww.bind(this),void 0];for(m.unshift(...i),m.push(...c),v=m.length,d=Promise.resolve(n);f{if(!o._listeners)return;let l=o._listeners.length;for(;l-- >0;)o._listeners[l](a);o._listeners=null}),this.promise.then=a=>{let l;const r=new Promise(i=>{o.subscribe(i),l=i}).then(a);return r.cancel=function(){o.unsubscribe(l)},r},t(function(l,r,i){o.reason||(o.reason=new Fs(l,r,i),n(o.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=o=>{t.abort(o)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new yT(function(a){t=a}),cancel:t}}};function Fte(e){return function(n){return e.apply(null,n)}}function Vte(e){return xe.isObject(e)&&e.isAxiosError===!0}const ah={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(ah).forEach(([e,t])=>{ah[t]=e});function wT(e){const t=new fr(e),n=J_(fr.prototype.request,t);return xe.extend(n,fr.prototype,t,{allOwnKeys:!0}),xe.extend(n,t,null,{allOwnKeys:!0}),n.create=function(a){return wT(kr(e,a))},n}const wn=wT(Mu);wn.Axios=fr;wn.CanceledError=Fs;wn.CancelToken=Bte;wn.isCancel=fT;wn.VERSION=bT;wn.toFormData=Rf;wn.AxiosError=Ft;wn.Cancel=wn.CanceledError;wn.all=function(t){return Promise.all(t)};wn.spread=Fte;wn.isAxiosError=Vte;wn.mergeConfig=kr;wn.AxiosHeaders=ho;wn.formToJSON=e=>dT(xe.isHTMLForm(e)?new FormData(e):e);wn.getAdapter=gT.getAdapter;wn.HttpStatusCode=ah;wn.default=wn;const{Axios:Qne,AxiosError:eoe,CanceledError:toe,isCancel:noe,CancelToken:ooe,VERSION:aoe,all:loe,Cancel:roe,isAxiosError:soe,spread:ioe,toFormData:uoe,AxiosHeaders:coe,HttpStatusCode:doe,formToJSON:foe,getAdapter:poe,mergeConfig:voe}=wn;let Uw="",qw=0;function uc(e,t,n=1500){const o=Date.now();e===Uw&&o-qwe,e=>{const t=e?.response?.status,n=e?.response?.data,o=n?.error||n?.message||e?.message||"请求失败";return t===401?(uc("401",o,3e3),(window.location?.pathname||"").startsWith("/login")||(window.location.href="/login")):t===403?uc("403",o,5e3):e?.code==="ECONNABORTED"?uc("timeout","请求超时",3e3):t||uc(`net:${o}`,o,3e3),Promise.reject(e)});async function zte(){const{data:e}=await Oo.get("/announcements/active");return e}async function Hte(e){const{data:t}=await Oo.post(`/announcements/${e}/dismiss`,{});return t}async function Kte(e){const{data:t}=await Oo.post("/feedback",e);return t}async function Wte(){const{data:e}=await Oo.get("/feedback");return e}async function jte(){const{data:e}=await Oo.get("/user/email");return e}async function Ute(e){const{data:t}=await Oo.post("/user/bind-email",e);return t}async function qte(){const{data:e}=await Oo.post("/user/unbind-email",{});return e}async function Yte(){const{data:e}=await Oo.get("/user/email-notify");return e}async function Gte(e){const{data:t}=await Oo.post("/user/email-notify",e);return t}async function Xte(e){const{data:t}=await Oo.post("/user/password",e);return t}let CT;const If=e=>CT=e,ST=Symbol();function lh(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var Ci;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(Ci||(Ci={}));function Jte(){const e=dh(!0),t=e.run(()=>A({}));let n=[],o=[];const a=Ko({install(l){If(a),a._a=l,l.provide(ST,a),l.config.globalProperties.$pinia=a,o.forEach(r=>n.push(r)),o=[]},use(l){return this._a?n.push(l):o.push(l),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return a}const kT=()=>{};function Yw(e,t,n,o=kT){e.add(t);const a=()=>{e.delete(t)&&o()};return!n&&fh()&&ph(a),a}function Br(e,...t){e.forEach(n=>{n(...t)})}const Zte=e=>e(),Gw=Symbol(),xp=Symbol();function rh(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,o)=>e.set(o,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const o=t[n],a=e[n];lh(a)&&lh(o)&&e.hasOwnProperty(n)&&!Ht(o)&&!Ka(o)?e[n]=rh(a,o):e[n]=o}return e}const Qte=Symbol();function ene(e){return!lh(e)||!Object.prototype.hasOwnProperty.call(e,Qte)}const{assign:yl}=Object;function tne(e){return!!(Ht(e)&&e.effect)}function nne(e,t,n,o){const{state:a,actions:l,getters:r}=t,i=n.state.value[e];let u;function c(){i||(n.state.value[e]=a?a():{});const d=yn(n.state.value[e]);return yl(d,l,Object.keys(r||{}).reduce((f,v)=>(f[v]=Ko(S(()=>{If(n);const p=n._s.get(e);return r[v].call(p,p)})),f),{}))}return u=ET(e,c,t,n,o,!0),u}function ET(e,t,n={},o,a,l){let r;const i=yl({actions:{}},n),u={deep:!0};let c,d,f=new Set,v=new Set,p;const m=o.state.value[e];!l&&!m&&(o.state.value[e]={}),A({});let h;function g(x){let $;c=d=!1,typeof x=="function"?(x(o.state.value[e]),$={type:Ci.patchFunction,storeId:e,events:p}):(rh(o.state.value[e],x),$={type:Ci.patchObject,payload:x,storeId:e,events:p});const M=h=Symbol();Me().then(()=>{h===M&&(c=!0)}),d=!0,Br(f,$,o.state.value[e])}const b=l?function(){const{state:$}=n,M=$?$():{};this.$patch(O=>{yl(O,M)})}:kT;function C(){r.stop(),f.clear(),v.clear(),o._s.delete(e)}const w=(x,$="")=>{if(Gw in x)return x[xp]=$,x;const M=function(){If(o);const O=Array.from(arguments),R=new Set,H=new Set;function q(N){R.add(N)}function X(N){H.add(N)}Br(v,{args:O,name:M[xp],store:k,after:q,onError:X});let P;try{P=x.apply(this&&this.$id===e?this:k,O)}catch(N){throw Br(H,N),N}return P instanceof Promise?P.then(N=>(Br(R,N),N)).catch(N=>(Br(H,N),Promise.reject(N))):(Br(R,P),P)};return M[Gw]=!0,M[xp]=$,M},y={_p:o,$id:e,$onAction:Yw.bind(null,v),$patch:g,$reset:b,$subscribe(x,$={}){const M=Yw(f,x,$.detached,()=>O()),O=r.run(()=>fe(()=>o.state.value[e],R=>{($.flush==="sync"?d:c)&&x({storeId:e,type:Ci.direct,events:p},R)},yl({},u,$)));return M},$dispose:C},k=Ot(y);o._s.set(e,k);const T=(o._a&&o._a.runWithContext||Zte)(()=>o._e.run(()=>(r=dh()).run(()=>t({action:w}))));for(const x in T){const $=T[x];if(Ht($)&&!tne($)||Ka($))l||(m&&ene($)&&(Ht($)?$.value=m[x]:rh($,m[x])),o.state.value[e][x]=$);else if(typeof $=="function"){const M=w($,x);T[x]=M,i.actions[x]=$}}return yl(k,T),yl(Kt(k),T),Object.defineProperty(k,"$state",{get:()=>o.state.value[e],set:x=>{g($=>{yl($,x)})}}),o._p.forEach(x=>{yl(k,r.run(()=>x({store:k,app:o._a,pinia:o,options:i})))}),m&&l&&n.hydrate&&n.hydrate(k.$state,m),c=!0,d=!0,k}function one(e,t,n){let o;const a=typeof t=="function";o=a?n:t;function l(r,i){const u=BO();return r=r||(u?Pe(ST,null):null),r&&If(r),r=CT,r._s.has(e)||(a?ET(e,t,o,r):nne(e,o,r)),r._s.get(e)}return l.$id=e,l}async function ane(){const{data:e}=await Oo.get("/user/vip");return e}async function lne(){const{data:e}=await Oo.post("/logout",{});return e}const rne=one("user",{state:()=>({vipInfo:null,loading:!1}),getters:{username:e=>e.vipInfo?.username||"",isVip:e=>!!e.vipInfo?.is_vip,vipDaysLeft:e=>Number(e.vipInfo?.days_left||0),vipExpireTime:e=>e.vipInfo?.expire_time||""},actions:{async refreshVipInfo(){this.loading=!0;try{this.vipInfo=await ane()}finally{this.loading=!1}},async logout(){try{await lne()}catch{}}}}),sne={class:"header-left"},ine={class:"header-right"},une={class:"user-meta"},cne={class:"user-name"},dne={key:2,class:"vip-warn"},fne={class:"drawer-user"},pne={class:"user-name"},vne={class:"drawer-actions"},hne={class:"announcement-body"},mne={class:"announcement-content"},gne={class:"feedback-title"},bne={class:"feedback-title-text"},yne={class:"feedback-time app-muted"},wne={class:"feedback-body"},Cne={class:"feedback-section"},Sne={class:"feedback-text"},kne={key:0,class:"feedback-section"},Ene={class:"feedback-text"},_ne={class:"settings-section"},Tne={class:"email-row"},One={class:"email-value"},$ne={class:"notify-row"},Nne={class:"settings-section"},Rne={class:"settings-section"},xne={key:0,class:"vip-info"},Ine={class:"vip-line"},Pne={class:"vip-line"},Mne={key:1,class:"vip-info"},Ane={__name:"AppLayout",setup(e){const t=uR(),n=iR(),o=rne(),a=A(!1),l=A(!1);let r;const i=A(!1),u=A(null),c=A(!1),d=A(!1),f=A("new"),v=A(!1),p=A(!1),m=A([]),h=Ot({title:"",description:"",contact:""}),g=A(!1),b=A("email"),C=A(!1),w=A(!1),y=Ot({email:"",email_verified:!1}),k=A(""),E=A(!1),T=A(!0),x=A(!1),$=Ot({current_password:"",new_password:"",confirm_password:""});function M(){a.value=!!r?.matches,a.value||(l.value=!1)}mt(()=>{r=window.matchMedia("(max-width: 768px)"),r.addEventListener?.("change",M),M(),o.refreshVipInfo().catch(()=>{window.location.href="/login"}),ue()}),Pt(()=>{r?.removeEventListener?.("change",M)});const O=[{path:"/app/accounts",label:"账号管理",icon:j3},{path:"/app/schedules",label:"定时任务",icon:KS},{path:"/app/screenshots",label:"截图管理",icon:Y4}],R=S(()=>t.path);async function H(J){await n.push(J),l.value=!1}async function q(){try{await eh.confirm("确定退出登录吗?","退出登录",{confirmButtonText:"退出",cancelButtonText:"取消",type:"warning"})}catch{return}await o.logout(),window.location.href="/login"}function X(){f.value="new",h.title="",h.description="",h.contact="",d.value=!0}async function P(){p.value=!0;try{const J=await Wte();m.value=Array.isArray(J)?J:[]}catch{m.value=[]}finally{p.value=!1}}function N(J){return J==="replied"?"已回复":J==="closed"?"已关闭":"待处理"}function L(J){return J==="replied"?"success":J==="closed"?"info":"warning"}async function z(){const J=h.title.trim(),D=h.description.trim(),Z=h.contact.trim();if(!J||!D){mn.error("标题和描述不能为空");return}v.value=!0;try{const se=await Kte({title:J,description:D,contact:Z});mn.success(se?.message||"反馈提交成功"),d.value=!1,h.title="",h.description="",h.contact=""}catch(se){const pe=se?.response?.data;mn.error(pe?.error||"提交失败")}finally{v.value=!1}}async function B(){g.value=!0,b.value="email",await W()}async function W(){await Promise.all([V(),j()])}async function V(){C.value=!0;try{const J=await jte();y.email=J?.email||"",y.email_verified=!!J?.email_verified,k.value=y.email||""}catch{y.email="",y.email_verified=!1,k.value=""}finally{C.value=!1}}async function j(){E.value=!0;try{const J=await Yte();T.value=!!J?.enabled}catch{T.value=!0}finally{E.value=!1}}async function oe(){const J=k.value.trim().toLowerCase();if(!J){mn.error("请输入邮箱地址");return}if(!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(J)){mn.error("邮箱格式不正确");return}w.value=!0;try{const Z=await Ute({email:J});mn.success(Z?.message||"验证邮件已发送"),y.email=J,y.email_verified=!1}catch(Z){const se=Z?.response?.data;mn.error(se?.error||"绑定失败")}finally{w.value=!1}}async function ae(){try{await eh.confirm("确定要解绑当前邮箱吗?","解绑邮箱",{confirmButtonText:"解绑",cancelButtonText:"取消",type:"warning"})}catch{return}try{const J=await qte();if(J?.success){mn.success(J?.message||"邮箱已解绑"),await V();return}mn.error(J?.error||"解绑失败")}catch(J){const D=J?.response?.data;mn.error(D?.error||"解绑失败")}}async function ce(J){const D=T.value;T.value=!!J,E.value=!0;try{const Z=await Gte({enabled:!!J});if(Z?.success){mn.success("已更新");return}T.value=D,mn.error(Z?.error||"更新失败")}catch(Z){T.value=D;const se=Z?.response?.data;mn.error(se?.error||"更新失败")}finally{E.value=!1}}async function ne(){const J=$.current_password,D=$.new_password,Z=$.confirm_password;if(!J||!D||!Z){mn.error("请填写完整信息");return}if(String(D).length<6){mn.error("新密码至少6位");return}if(D!==Z){mn.error("两次输入的新密码不一致");return}x.value=!0;try{const se=await Xte({current_password:J,new_password:D});if(se?.success){mn.success("密码修改成功"),$.current_password="",$.new_password="",$.confirm_password="";return}mn.error(se?.error||"修改失败")}catch(se){const pe=se?.response?.data;mn.error(pe?.error||"修改失败")}finally{x.value=!1}}async function ue(){c.value=!0;try{const D=(await zte())?.announcement;if(!D?.id)return;const Z=`announcement_closed_${D.id}`;if(window.sessionStorage.getItem(Z)==="1")return;u.value=D,i.value=!0}catch{}finally{c.value=!1}}function Q(){const J=u.value;J?.id&&window.sessionStorage.setItem(`announcement_closed_${J.id}`,"1"),i.value=!1}async function te(){const J=u.value;if(!J?.id){i.value=!1;return}try{(await Hte(J.id))?.success&&mn.success("已永久关闭")}catch{}finally{i.value=!1}}return(J,D)=>{const Z=pt("el-icon"),se=pt("el-menu-item"),pe=pt("el-menu"),he=pt("el-aside"),ve=pt("el-button"),Ie=pt("el-tag"),_e=pt("el-header"),De=pt("RouterView"),ye=pt("el-main"),Re=pt("el-container"),Ne=pt("el-drawer"),Ae=pt("el-dialog"),Fe=pt("el-input"),me=pt("el-form-item"),Ke=pt("el-form"),Le=pt("el-tab-pane"),Ct=pt("el-skeleton"),Et=pt("el-empty"),Je=pt("el-collapse-item"),ot=pt("el-collapse"),ut=pt("el-tabs"),ge=pt("el-alert"),Ue=pt("el-divider"),de=pt("el-switch"),je=Kd("loading");return _(),ie(Re,{class:"layout-root"},{default:Y(()=>[a.value?le("",!0):(_(),ie(he,{key:0,width:"220px",class:"layout-aside"},{default:Y(()=>[D[17]||(D[17]=K("div",{class:"brand"},[K("div",{class:"brand-title"},"知识管理平台"),K("div",{class:"brand-sub app-muted"},"用户中心")],-1)),U(pe,{"default-active":R.value,class:"aside-menu",router:"",onSelect:H},{default:Y(()=>[(_(),F(He,null,bt(O,We=>U(se,{key:We.path,index:We.path},{default:Y(()=>[U(Z,null,{default:Y(()=>[(_(),ie(ft(We.icon)))]),_:2},1024),K("span",null,Ce(We.label),1)]),_:2},1032,["index"])),64))]),_:1},8,["default-active"])]),_:1})),U(Re,null,{default:Y(()=>[U(_e,{class:"layout-header"},{default:Y(()=>[K("div",sne,[a.value?(_(),ie(ve,{key:0,text:"",class:"header-menu-btn",onClick:D[0]||(D[0]=We=>l.value=!0)},{default:Y(()=>[...D[18]||(D[18]=[lt(" 菜单 ",-1)])]),_:1})):le("",!0),D[19]||(D[19]=K("div",{class:"header-title"},"用户控制台",-1))]),K("div",ine,[K("div",une,[s(o).isVip?(_(),ie(Ie,{key:0,type:"success",size:"small",effect:"light"},{default:Y(()=>[...D[20]||(D[20]=[lt("VIP",-1)])]),_:1})):(_(),ie(Ie,{key:1,type:"info",size:"small",effect:"light"},{default:Y(()=>[...D[21]||(D[21]=[lt("普通",-1)])]),_:1})),K("span",cne,Ce(s(o).username||"用户"),1),s(o).isVip&&s(o).vipDaysLeft<=7&&s(o).vipDaysLeft>0?(_(),F("span",dne," ("+Ce(s(o).vipDaysLeft)+"天后到期) ",1)):le("",!0)]),U(ve,{text:"",type:"primary",onClick:X},{default:Y(()=>[...D[22]||(D[22]=[lt("反馈",-1)])]),_:1}),U(ve,{text:"",onClick:B},{default:Y(()=>[...D[23]||(D[23]=[lt("设置",-1)])]),_:1}),U(ve,{type:"primary",plain:"",onClick:q},{default:Y(()=>[...D[24]||(D[24]=[lt("退出",-1)])]),_:1})])]),_:1}),U(ye,{class:"layout-main"},{default:Y(()=>[U(De)]),_:1})]),_:1}),U(Ne,{modelValue:l.value,"onUpdate:modelValue":D[1]||(D[1]=We=>l.value=We),size:"240px","with-header":!1},{default:Y(()=>[D[30]||(D[30]=K("div",{class:"drawer-brand"},[K("div",{class:"brand-title"},"知识管理平台"),K("div",{class:"brand-sub app-muted"},"用户中心")],-1)),K("div",fne,[s(o).isVip?(_(),ie(Ie,{key:0,type:"success",size:"small",effect:"light"},{default:Y(()=>[...D[25]||(D[25]=[lt("VIP",-1)])]),_:1})):(_(),ie(Ie,{key:1,type:"info",size:"small",effect:"light"},{default:Y(()=>[...D[26]||(D[26]=[lt("普通",-1)])]),_:1})),K("span",pne,Ce(s(o).username||"用户"),1)]),U(pe,{"default-active":R.value,class:"aside-menu",router:"",onSelect:H},{default:Y(()=>[(_(),F(He,null,bt(O,We=>U(se,{key:We.path,index:We.path},{default:Y(()=>[U(Z,null,{default:Y(()=>[(_(),ie(ft(We.icon)))]),_:2},1024),K("span",null,Ce(We.label),1)]),_:2},1032,["index"])),64))]),_:1},8,["default-active"]),K("div",vne,[U(ve,{text:"",type:"primary",style:{width:"100%"},onClick:X},{default:Y(()=>[...D[27]||(D[27]=[lt("问题反馈",-1)])]),_:1}),U(ve,{text:"",style:{width:"100%"},onClick:B},{default:Y(()=>[...D[28]||(D[28]=[lt("个人设置",-1)])]),_:1}),U(ve,{type:"primary",plain:"",style:{width:"100%"},onClick:q},{default:Y(()=>[...D[29]||(D[29]=[lt("退出登录",-1)])]),_:1})])]),_:1},8,["modelValue"]),U(Ae,{modelValue:i.value,"onUpdate:modelValue":D[2]||(D[2]=We=>i.value=We),width:"min(560px, 92vw)",title:u.value?.title||"系统公告"},{footer:Y(()=>[U(ve,{onClick:Q},{default:Y(()=>[...D[31]||(D[31]=[lt("当次关闭",-1)])]),_:1}),U(ve,{type:"primary",onClick:te},{default:Y(()=>[...D[32]||(D[32]=[lt("永久关闭",-1)])]),_:1})]),default:Y(()=>[dt((_(),F("div",hne,[K("div",mne,Ce(u.value?.content||""),1)])),[[je,c.value]])]),_:1},8,["modelValue","title"]),U(Ae,{modelValue:d.value,"onUpdate:modelValue":D[9]||(D[9]=We=>d.value=We),title:"问题反馈",width:"min(720px, 92vw)"},{footer:Y(()=>[U(ve,{onClick:D[8]||(D[8]=We=>d.value=!1)},{default:Y(()=>[...D[35]||(D[35]=[lt("关闭",-1)])]),_:1}),f.value==="list"?(_(),ie(ve,{key:0,onClick:P},{default:Y(()=>[...D[36]||(D[36]=[lt("刷新",-1)])]),_:1})):le("",!0),f.value==="new"?(_(),ie(ve,{key:1,type:"primary",loading:v.value,onClick:z},{default:Y(()=>[...D[37]||(D[37]=[lt("提交",-1)])]),_:1},8,["loading"])):le("",!0)]),default:Y(()=>[U(ut,{modelValue:f.value,"onUpdate:modelValue":D[6]||(D[6]=We=>f.value=We),onTabChange:D[7]||(D[7]=We=>We==="list"&&P())},{default:Y(()=>[U(Le,{label:"提交反馈",name:"new"},{default:Y(()=>[U(Ke,{"label-position":"top"},{default:Y(()=>[U(me,{label:"标题"},{default:Y(()=>[U(Fe,{modelValue:h.title,"onUpdate:modelValue":D[3]||(D[3]=We=>h.title=We),placeholder:"简要描述问题",maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),U(me,{label:"详细描述"},{default:Y(()=>[U(Fe,{modelValue:h.description,"onUpdate:modelValue":D[4]||(D[4]=We=>h.description=We),type:"textarea",rows:5,placeholder:"请详细描述您遇到的问题",maxlength:"2000","show-word-limit":""},null,8,["modelValue"])]),_:1}),U(me,{label:"联系方式(可选)"},{default:Y(()=>[U(Fe,{modelValue:h.contact,"onUpdate:modelValue":D[5]||(D[5]=We=>h.contact=We),placeholder:"方便我们联系您"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),U(Le,{label:"我的反馈",name:"list"},{default:Y(()=>[p.value?(_(),ie(Ct,{key:0,rows:6,animated:""})):(_(),F(He,{key:1},[m.value.length===0?(_(),ie(Et,{key:0,description:"暂无反馈"})):(_(),ie(ot,{key:1,accordion:""},{default:Y(()=>[(_(!0),F(He,null,bt(m.value,We=>(_(),ie(Je,{key:We.id,name:String(We.id)},{title:Y(()=>[K("div",gne,[K("span",bne,Ce(We.title),1),U(Ie,{size:"small",effect:"light",type:L(We.status)},{default:Y(()=>[lt(Ce(N(We.status)),1)]),_:2},1032,["type"]),K("span",yne,Ce(We.created_at||""),1)])]),default:Y(()=>[K("div",wne,[K("div",Cne,[D[33]||(D[33]=K("div",{class:"feedback-label app-muted"},"描述",-1)),K("div",Sne,Ce(We.description),1)]),We.admin_reply?(_(),F("div",kne,[D[34]||(D[34]=K("div",{class:"feedback-label app-muted"},"管理员回复",-1)),K("div",Ene,Ce(We.admin_reply),1)])):le("",!0)])]),_:2},1032,["name"]))),128))]),_:1}))],64))]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["modelValue"]),U(Ae,{modelValue:g.value,"onUpdate:modelValue":D[16]||(D[16]=We=>g.value=We),title:"个人设置",width:"min(720px, 92vw)"},{footer:Y(()=>[U(ve,{onClick:D[15]||(D[15]=We=>g.value=!1)},{default:Y(()=>[...D[45]||(D[45]=[lt("关闭",-1)])]),_:1})]),default:Y(()=>[U(ut,{modelValue:b.value,"onUpdate:modelValue":D[14]||(D[14]=We=>b.value=We)},{default:Y(()=>[U(Le,{label:"邮箱绑定",name:"email"},{default:Y(()=>[dt((_(),F("div",_ne,[y.email&&y.email_verified?(_(),ie(ge,{key:0,type:"success",closable:!1,title:"邮箱已绑定并验证","show-icon":"",class:"settings-alert"},{default:Y(()=>[K("div",Tne,[K("div",One,Ce(y.email),1),U(ve,{type:"danger",text:"",onClick:ae},{default:Y(()=>[...D[38]||(D[38]=[lt("解绑",-1)])]),_:1})])]),_:1})):y.email?(_(),ie(ge,{key:1,type:"warning",closable:!1,title:"邮箱待验证:请查收验证邮件(含垃圾箱)","show-icon":"",class:"settings-alert"})):le("",!0),U(Ke,{"label-position":"top"},{default:Y(()=>[U(me,{label:"邮箱地址"},{default:Y(()=>[U(Fe,{modelValue:k.value,"onUpdate:modelValue":D[10]||(D[10]=We=>k.value=We),placeholder:"name@example.com"},null,8,["modelValue"])]),_:1}),U(ve,{type:"primary",loading:w.value,onClick:oe},{default:Y(()=>[...D[39]||(D[39]=[lt("发送验证邮件",-1)])]),_:1},8,["loading"])]),_:1}),U(Ue),K("div",$ne,[D[40]||(D[40]=K("div",null,[K("div",{class:"notify-title"},"任务完成通知"),K("div",{class:"app-muted notify-desc"},"定时任务完成后发送邮件")],-1)),U(de,{"model-value":T.value,disabled:!y.email_verified||E.value,"inline-prompt":"","active-text":"开","inactive-text":"关",onChange:ce},null,8,["model-value","disabled"])]),y.email_verified?le("",!0):(_(),ie(ge,{key:2,type:"info",closable:!1,title:"绑定并验证邮箱后可开启邮件通知。","show-icon":"",class:"settings-hint"}))])),[[je,C.value]])]),_:1}),U(Le,{label:"修改密码",name:"password"},{default:Y(()=>[K("div",Nne,[U(Ke,{"label-position":"top"},{default:Y(()=>[U(me,{label:"当前密码"},{default:Y(()=>[U(Fe,{modelValue:$.current_password,"onUpdate:modelValue":D[11]||(D[11]=We=>$.current_password=We),type:"password","show-password":"",autocomplete:"current-password"},null,8,["modelValue"])]),_:1}),U(me,{label:"新密码(至少6位)"},{default:Y(()=>[U(Fe,{modelValue:$.new_password,"onUpdate:modelValue":D[12]||(D[12]=We=>$.new_password=We),type:"password","show-password":"",autocomplete:"new-password"},null,8,["modelValue"])]),_:1}),U(me,{label:"确认新密码"},{default:Y(()=>[U(Fe,{modelValue:$.confirm_password,"onUpdate:modelValue":D[13]||(D[13]=We=>$.confirm_password=We),type:"password","show-password":"",autocomplete:"new-password",onKeyup:Jt(ne,["enter"])},null,8,["modelValue"])]),_:1}),U(ve,{type:"primary",loading:x.value,onClick:ne},{default:Y(()=>[...D[41]||(D[41]=[lt("确认修改",-1)])]),_:1},8,["loading"])]),_:1})])]),_:1}),U(Le,{label:"VIP信息",name:"vip"},{default:Y(()=>[K("div",Rne,[U(ge,{type:s(o).isVip?"success":"info",closable:!1,title:s(o).isVip?"当前为 VIP 会员":"当前为普通用户","show-icon":"",class:"settings-alert"},null,8,["type","title"]),s(o).isVip?(_(),F("div",xne,[K("div",Ine,[D[42]||(D[42]=K("span",{class:"app-muted"},"到期时间",-1)),K("span",null,Ce(s(o).vipExpireTime||"未知"),1)]),K("div",Pne,[D[43]||(D[43]=K("span",{class:"app-muted"},"剩余天数",-1)),K("span",null,Ce(s(o).vipDaysLeft),1)])])):(_(),F("div",Mne,[...D[44]||(D[44]=[K("div",{class:"app-muted"},"升级方式:请通过“反馈”联系管理员开通。",-1)])]))])]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["modelValue"])]),_:1})}}},Lne=kC(Ane,[["__scopeId","data-v-c86eff51"]]),Dne=()=>Er(()=>import("./LoginPage-BT64PXO4.js"),__vite__mapDeps([0,1,2,3]),import.meta.url),Bne=()=>Er(()=>import("./RegisterPage-DagmGD8v.js"),__vite__mapDeps([4,1,5]),import.meta.url),Fne=()=>Er(()=>import("./ResetPasswordPage-nfu9MGKT.js"),__vite__mapDeps([6,1,2,7]),import.meta.url),Xw=()=>Er(()=>import("./VerifyResultPage-BObYrtVV.js"),__vite__mapDeps([8,9]),import.meta.url),Vne=()=>Er(()=>import("./AccountsPage-BWpR5_67.js"),__vite__mapDeps([10,11,12]),import.meta.url),zne=()=>Er(()=>import("./SchedulesPage-DkN2oNFy.js"),__vite__mapDeps([13,11,14]),import.meta.url),Hne=()=>Er(()=>import("./ScreenshotsPage-DPHTVdqF.js"),__vite__mapDeps([15,16]),import.meta.url),Kne=[{path:"/",redirect:"/login"},{path:"/login",name:"login",component:Dne},{path:"/register",name:"register",component:Bne},{path:"/reset-password/:token",name:"reset_password",component:Fne},{path:"/api/verify-email/:token",name:"verify_email",component:Xw},{path:"/api/verify-bind-email/:token",name:"verify_bind_email",component:Xw},{path:"/app",component:Lne,children:[{path:"",redirect:"/app/accounts"},{path:"accounts",name:"accounts",component:Vne},{path:"schedules",name:"schedules",component:zne},{path:"screenshots",name:"screenshots",component:Hne}]},{path:"/:pathMatch(.*)*",redirect:"/login"}],Wne=sR({history:FN(),routes:Kne});var jne={name:"zh-cn",el:{breadcrumb:{label:"面包屑"},colorpicker:{confirm:"确定",clear:"清空",defaultLabel:"颜色选择器",description:"当前颜色 {color},按 Enter 键选择新颜色",alphaLabel:"选择透明度的值",alphaDescription:"透明度 {alpha}, 当前颜色 {color}",hueLabel:"选择色相值",hueDescription:"色相 {hue}, 当前颜色 {color}",svLabel:"选择饱和度与明度的值",svDescription:"饱和度 {saturation}, 明度 {brightness}, 当前颜色 {color}",predefineDescription:"选择 {value} 作为颜色"},datepicker:{now:"此刻",today:"今天",cancel:"取消",clear:"清空",confirm:"确定",dateTablePrompt:"使用方向键与 Enter 键可选择日期",monthTablePrompt:"使用方向键与 Enter 键可选择月份",yearTablePrompt:"使用方向键与 Enter 键可选择年份",selectedDate:"已选日期",selectDate:"选择日期",selectTime:"选择时间",startDate:"开始日期",startTime:"开始时间",endDate:"结束日期",endTime:"结束时间",prevYear:"前一年",nextYear:"后一年",prevMonth:"上个月",nextMonth:"下个月",year:"年",month1:"1 月",month2:"2 月",month3:"3 月",month4:"4 月",month5:"5 月",month6:"6 月",month7:"7 月",month8:"8 月",month9:"9 月",month10:"10 月",month11:"11 月",month12:"12 月",weeks:{sun:"日",mon:"一",tue:"二",wed:"三",thu:"四",fri:"五",sat:"六"},weeksFull:{sun:"星期日",mon:"星期一",tue:"星期二",wed:"星期三",thu:"星期四",fri:"星期五",sat:"星期六"},months:{jan:"一月",feb:"二月",mar:"三月",apr:"四月",may:"五月",jun:"六月",jul:"七月",aug:"八月",sep:"九月",oct:"十月",nov:"十一月",dec:"十二月"}},inputNumber:{decrease:"减少数值",increase:"增加数值"},select:{loading:"加载中",noMatch:"无匹配数据",noData:"无数据",placeholder:"请选择"},mention:{loading:"加载中"},dropdown:{toggleDropdown:"切换下拉选项"},cascader:{noMatch:"无匹配数据",loading:"加载中",placeholder:"请选择",noData:"暂无数据"},pagination:{goto:"前往",pagesize:"条/页",total:"共 {total} 条",pageClassifier:"页",page:"页",prev:"上一页",next:"下一页",currentPage:"第 {pager} 页",prevPages:"向前 {pager} 页",nextPages:"向后 {pager} 页",deprecationWarning:"你使用了一些已被废弃的用法,请参考 el-pagination 的官方文档"},dialog:{close:"关闭此对话框"},drawer:{close:"关闭此对话框"},messagebox:{title:"提示",confirm:"确定",cancel:"取消",error:"输入的数据不合法!",close:"关闭此对话框"},upload:{deleteTip:"按 Delete 键可删除",delete:"删除",preview:"查看图片",continue:"继续上传"},slider:{defaultLabel:"滑块介于 {min} 至 {max}",defaultRangeStartLabel:"选择起始值",defaultRangeEndLabel:"选择结束值"},table:{emptyText:"暂无数据",confirmFilter:"筛选",resetFilter:"重置",clearFilter:"全部",sumText:"合计",selectAllLabel:"选择所有行",selectRowLabel:"选择当前行",expandRowLabel:"展开当前行",collapseRowLabel:"收起当前行",sortLabel:"按 {column} 排序",filterLabel:"按 {column} 过滤"},tag:{close:"关闭此标签"},tour:{next:"下一步",previous:"上一步",finish:"结束导览",close:"关闭此对话框"},tree:{emptyText:"暂无数据"},transfer:{noMatch:"无匹配数据",noData:"无数据",titles:["列表 1","列表 2"],filterPlaceholder:"请输入搜索内容",noCheckedFormat:"共 {total} 项",hasCheckedFormat:"已选 {checked}/{total} 项"},image:{error:"加载失败"},pageHeader:{title:"返回"},popconfirm:{confirmButtonText:"确定",cancelButtonText:"取消"},carousel:{leftArrow:"上一张幻灯片",rightArrow:"下一张幻灯片",indicator:"幻灯片切换至索引 {index}"}}};SC(Q$).use(Jte()).use(Wne).use(dee,{locale:jne}).mount("#app");export{mn as E,He as F,kC as _,A as a,F as b,S as c,U as d,pt as e,_ as f,K as g,ie as h,le as i,Jt as j,lt as k,uR as l,Pt as m,rne as n,mt as o,Oo as p,fe as q,Ot as r,s,Ce as t,iR as u,bt as v,Y as w,eh as x}; +`+l):o.stack=l}catch{}}throw o}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=kr(this.defaults,n);const{transitional:o,paramsSerializer:a,headers:l}=n;o!==void 0&&Hc.assertOptions(o,{silentJSONParsing:ua.transitional(ua.boolean),forcedJSONParsing:ua.transitional(ua.boolean),clarifyTimeoutError:ua.transitional(ua.boolean)},!1),a!=null&&(xe.isFunction(a)?n.paramsSerializer={serialize:a}:Hc.assertOptions(a,{encode:ua.function,serialize:ua.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),Hc.assertOptions(n,{baseUrl:ua.spelling("baseURL"),withXsrfToken:ua.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let r=l&&xe.merge(l.common,l[n.method]);l&&xe.forEach(["delete","get","head","post","put","patch","common"],m=>{delete l[m]}),n.headers=ho.concat(r,l);const i=[];let u=!0;this.interceptors.request.forEach(function(h){typeof h.runWhen=="function"&&h.runWhen(n)===!1||(u=u&&h.synchronous,i.unshift(h.fulfilled,h.rejected))});const c=[];this.interceptors.response.forEach(function(h){c.push(h.fulfilled,h.rejected)});let d,f=0,v;if(!u){const m=[Ww.bind(this),void 0];for(m.unshift(...i),m.push(...c),v=m.length,d=Promise.resolve(n);f{if(!o._listeners)return;let l=o._listeners.length;for(;l-- >0;)o._listeners[l](a);o._listeners=null}),this.promise.then=a=>{let l;const r=new Promise(i=>{o.subscribe(i),l=i}).then(a);return r.cancel=function(){o.unsubscribe(l)},r},t(function(l,r,i){o.reason||(o.reason=new Fs(l,r,i),n(o.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=o=>{t.abort(o)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new yT(function(a){t=a}),cancel:t}}};function Fte(e){return function(n){return e.apply(null,n)}}function Vte(e){return xe.isObject(e)&&e.isAxiosError===!0}const ah={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(ah).forEach(([e,t])=>{ah[t]=e});function wT(e){const t=new fr(e),n=J_(fr.prototype.request,t);return xe.extend(n,fr.prototype,t,{allOwnKeys:!0}),xe.extend(n,t,null,{allOwnKeys:!0}),n.create=function(a){return wT(kr(e,a))},n}const wn=wT(Mu);wn.Axios=fr;wn.CanceledError=Fs;wn.CancelToken=Bte;wn.isCancel=fT;wn.VERSION=bT;wn.toFormData=Rf;wn.AxiosError=Ft;wn.Cancel=wn.CanceledError;wn.all=function(t){return Promise.all(t)};wn.spread=Fte;wn.isAxiosError=Vte;wn.mergeConfig=kr;wn.AxiosHeaders=ho;wn.formToJSON=e=>dT(xe.isHTMLForm(e)?new FormData(e):e);wn.getAdapter=gT.getAdapter;wn.HttpStatusCode=ah;wn.default=wn;const{Axios:Qne,AxiosError:eoe,CanceledError:toe,isCancel:noe,CancelToken:ooe,VERSION:aoe,all:loe,Cancel:roe,isAxiosError:soe,spread:ioe,toFormData:uoe,AxiosHeaders:coe,HttpStatusCode:doe,formToJSON:foe,getAdapter:poe,mergeConfig:voe}=wn;let Uw="",qw=0;function uc(e,t,n=1500){const o=Date.now();e===Uw&&o-qwe,e=>{const t=e?.response?.status,n=e?.response?.data,o=n?.error||n?.message||e?.message||"请求失败";return t===401?(uc("401",o,3e3),(window.location?.pathname||"").startsWith("/login")||(window.location.href="/login")):t===403?uc("403",o,5e3):e?.code==="ECONNABORTED"?uc("timeout","请求超时",3e3):t||uc(`net:${o}`,o,3e3),Promise.reject(e)});async function zte(){const{data:e}=await Oo.get("/announcements/active");return e}async function Hte(e){const{data:t}=await Oo.post(`/announcements/${e}/dismiss`,{});return t}async function Kte(e){const{data:t}=await Oo.post("/feedback",e);return t}async function Wte(){const{data:e}=await Oo.get("/feedback");return e}async function jte(){const{data:e}=await Oo.get("/user/email");return e}async function Ute(e){const{data:t}=await Oo.post("/user/bind-email",e);return t}async function qte(){const{data:e}=await Oo.post("/user/unbind-email",{});return e}async function Yte(){const{data:e}=await Oo.get("/user/email-notify");return e}async function Gte(e){const{data:t}=await Oo.post("/user/email-notify",e);return t}async function Xte(e){const{data:t}=await Oo.post("/user/password",e);return t}let CT;const If=e=>CT=e,ST=Symbol();function lh(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var Ci;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(Ci||(Ci={}));function Jte(){const e=dh(!0),t=e.run(()=>A({}));let n=[],o=[];const a=Ko({install(l){If(a),a._a=l,l.provide(ST,a),l.config.globalProperties.$pinia=a,o.forEach(r=>n.push(r)),o=[]},use(l){return this._a?n.push(l):o.push(l),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return a}const kT=()=>{};function Yw(e,t,n,o=kT){e.add(t);const a=()=>{e.delete(t)&&o()};return!n&&fh()&&ph(a),a}function Br(e,...t){e.forEach(n=>{n(...t)})}const Zte=e=>e(),Gw=Symbol(),xp=Symbol();function rh(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,o)=>e.set(o,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const o=t[n],a=e[n];lh(a)&&lh(o)&&e.hasOwnProperty(n)&&!Ht(o)&&!Ka(o)?e[n]=rh(a,o):e[n]=o}return e}const Qte=Symbol();function ene(e){return!lh(e)||!Object.prototype.hasOwnProperty.call(e,Qte)}const{assign:yl}=Object;function tne(e){return!!(Ht(e)&&e.effect)}function nne(e,t,n,o){const{state:a,actions:l,getters:r}=t,i=n.state.value[e];let u;function c(){i||(n.state.value[e]=a?a():{});const d=yn(n.state.value[e]);return yl(d,l,Object.keys(r||{}).reduce((f,v)=>(f[v]=Ko(S(()=>{If(n);const p=n._s.get(e);return r[v].call(p,p)})),f),{}))}return u=ET(e,c,t,n,o,!0),u}function ET(e,t,n={},o,a,l){let r;const i=yl({actions:{}},n),u={deep:!0};let c,d,f=new Set,v=new Set,p;const m=o.state.value[e];!l&&!m&&(o.state.value[e]={}),A({});let h;function g(x){let $;c=d=!1,typeof x=="function"?(x(o.state.value[e]),$={type:Ci.patchFunction,storeId:e,events:p}):(rh(o.state.value[e],x),$={type:Ci.patchObject,payload:x,storeId:e,events:p});const M=h=Symbol();Me().then(()=>{h===M&&(c=!0)}),d=!0,Br(f,$,o.state.value[e])}const b=l?function(){const{state:$}=n,M=$?$():{};this.$patch(O=>{yl(O,M)})}:kT;function C(){r.stop(),f.clear(),v.clear(),o._s.delete(e)}const w=(x,$="")=>{if(Gw in x)return x[xp]=$,x;const M=function(){If(o);const O=Array.from(arguments),R=new Set,H=new Set;function q(N){R.add(N)}function X(N){H.add(N)}Br(v,{args:O,name:M[xp],store:k,after:q,onError:X});let P;try{P=x.apply(this&&this.$id===e?this:k,O)}catch(N){throw Br(H,N),N}return P instanceof Promise?P.then(N=>(Br(R,N),N)).catch(N=>(Br(H,N),Promise.reject(N))):(Br(R,P),P)};return M[Gw]=!0,M[xp]=$,M},y={_p:o,$id:e,$onAction:Yw.bind(null,v),$patch:g,$reset:b,$subscribe(x,$={}){const M=Yw(f,x,$.detached,()=>O()),O=r.run(()=>fe(()=>o.state.value[e],R=>{($.flush==="sync"?d:c)&&x({storeId:e,type:Ci.direct,events:p},R)},yl({},u,$)));return M},$dispose:C},k=Ot(y);o._s.set(e,k);const T=(o._a&&o._a.runWithContext||Zte)(()=>o._e.run(()=>(r=dh()).run(()=>t({action:w}))));for(const x in T){const $=T[x];if(Ht($)&&!tne($)||Ka($))l||(m&&ene($)&&(Ht($)?$.value=m[x]:rh($,m[x])),o.state.value[e][x]=$);else if(typeof $=="function"){const M=w($,x);T[x]=M,i.actions[x]=$}}return yl(k,T),yl(Kt(k),T),Object.defineProperty(k,"$state",{get:()=>o.state.value[e],set:x=>{g($=>{yl($,x)})}}),o._p.forEach(x=>{yl(k,r.run(()=>x({store:k,app:o._a,pinia:o,options:i})))}),m&&l&&n.hydrate&&n.hydrate(k.$state,m),c=!0,d=!0,k}function one(e,t,n){let o;const a=typeof t=="function";o=a?n:t;function l(r,i){const u=BO();return r=r||(u?Pe(ST,null):null),r&&If(r),r=CT,r._s.has(e)||(a?ET(e,t,o,r):nne(e,o,r)),r._s.get(e)}return l.$id=e,l}async function ane(){const{data:e}=await Oo.get("/user/vip");return e}async function lne(){const{data:e}=await Oo.post("/logout",{});return e}const rne=one("user",{state:()=>({vipInfo:null,loading:!1}),getters:{username:e=>e.vipInfo?.username||"",isVip:e=>!!e.vipInfo?.is_vip,vipDaysLeft:e=>Number(e.vipInfo?.days_left||0),vipExpireTime:e=>e.vipInfo?.expire_time||""},actions:{async refreshVipInfo(){this.loading=!0;try{this.vipInfo=await ane()}finally{this.loading=!1}},async logout(){try{await lne()}catch{}}}}),sne={class:"header-left"},ine={class:"header-right"},une={class:"user-meta"},cne={class:"user-name"},dne={key:2,class:"vip-warn"},fne={class:"drawer-user"},pne={class:"user-name"},vne={class:"drawer-actions"},hne={class:"announcement-body"},mne={class:"announcement-content"},gne={class:"feedback-title"},bne={class:"feedback-title-text"},yne={class:"feedback-time app-muted"},wne={class:"feedback-body"},Cne={class:"feedback-section"},Sne={class:"feedback-text"},kne={key:0,class:"feedback-section"},Ene={class:"feedback-text"},_ne={class:"settings-section"},Tne={class:"email-row"},One={class:"email-value"},$ne={class:"notify-row"},Nne={class:"settings-section"},Rne={class:"settings-section"},xne={key:0,class:"vip-info"},Ine={class:"vip-line"},Pne={class:"vip-line"},Mne={key:1,class:"vip-info"},Ane={__name:"AppLayout",setup(e){const t=uR(),n=iR(),o=rne(),a=A(!1),l=A(!1);let r;const i=A(!1),u=A(null),c=A(!1),d=A(!1),f=A("new"),v=A(!1),p=A(!1),m=A([]),h=Ot({title:"",description:"",contact:""}),g=A(!1),b=A("email"),C=A(!1),w=A(!1),y=Ot({email:"",email_verified:!1}),k=A(""),E=A(!1),T=A(!0),x=A(!1),$=Ot({current_password:"",new_password:"",confirm_password:""});function M(){a.value=!!r?.matches,a.value||(l.value=!1)}mt(()=>{r=window.matchMedia("(max-width: 768px)"),r.addEventListener?.("change",M),M(),o.refreshVipInfo().catch(()=>{window.location.href="/login"}),ue()}),Pt(()=>{r?.removeEventListener?.("change",M)});const O=[{path:"/app/accounts",label:"账号管理",icon:j3},{path:"/app/schedules",label:"定时任务",icon:KS},{path:"/app/screenshots",label:"截图管理",icon:Y4}],R=S(()=>t.path);async function H(J){await n.push(J),l.value=!1}async function q(){try{await eh.confirm("确定退出登录吗?","退出登录",{confirmButtonText:"退出",cancelButtonText:"取消",type:"warning"})}catch{return}await o.logout(),window.location.href="/login"}function X(){f.value="new",h.title="",h.description="",h.contact="",d.value=!0}async function P(){p.value=!0;try{const J=await Wte();m.value=Array.isArray(J)?J:[]}catch{m.value=[]}finally{p.value=!1}}function N(J){return J==="replied"?"已回复":J==="closed"?"已关闭":"待处理"}function L(J){return J==="replied"?"success":J==="closed"?"info":"warning"}async function z(){const J=h.title.trim(),D=h.description.trim(),Z=h.contact.trim();if(!J||!D){mn.error("标题和描述不能为空");return}v.value=!0;try{const se=await Kte({title:J,description:D,contact:Z});mn.success(se?.message||"反馈提交成功"),d.value=!1,h.title="",h.description="",h.contact=""}catch(se){const pe=se?.response?.data;mn.error(pe?.error||"提交失败")}finally{v.value=!1}}async function B(){g.value=!0,b.value="email",await W()}async function W(){await Promise.all([V(),j()])}async function V(){C.value=!0;try{const J=await jte();y.email=J?.email||"",y.email_verified=!!J?.email_verified,k.value=y.email||""}catch{y.email="",y.email_verified=!1,k.value=""}finally{C.value=!1}}async function j(){E.value=!0;try{const J=await Yte();T.value=!!J?.enabled}catch{T.value=!0}finally{E.value=!1}}async function oe(){const J=k.value.trim().toLowerCase();if(!J){mn.error("请输入邮箱地址");return}if(!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(J)){mn.error("邮箱格式不正确");return}w.value=!0;try{const Z=await Ute({email:J});mn.success(Z?.message||"验证邮件已发送"),y.email=J,y.email_verified=!1}catch(Z){const se=Z?.response?.data;mn.error(se?.error||"绑定失败")}finally{w.value=!1}}async function ae(){try{await eh.confirm("确定要解绑当前邮箱吗?","解绑邮箱",{confirmButtonText:"解绑",cancelButtonText:"取消",type:"warning"})}catch{return}try{const J=await qte();if(J?.success){mn.success(J?.message||"邮箱已解绑"),await V();return}mn.error(J?.error||"解绑失败")}catch(J){const D=J?.response?.data;mn.error(D?.error||"解绑失败")}}async function ce(J){const D=T.value;T.value=!!J,E.value=!0;try{const Z=await Gte({enabled:!!J});if(Z?.success){mn.success("已更新");return}T.value=D,mn.error(Z?.error||"更新失败")}catch(Z){T.value=D;const se=Z?.response?.data;mn.error(se?.error||"更新失败")}finally{E.value=!1}}async function ne(){const J=$.current_password,D=$.new_password,Z=$.confirm_password;if(!J||!D||!Z){mn.error("请填写完整信息");return}if(String(D).length<6){mn.error("新密码至少6位");return}if(D!==Z){mn.error("两次输入的新密码不一致");return}x.value=!0;try{const se=await Xte({current_password:J,new_password:D});if(se?.success){mn.success("密码修改成功"),$.current_password="",$.new_password="",$.confirm_password="";return}mn.error(se?.error||"修改失败")}catch(se){const pe=se?.response?.data;mn.error(pe?.error||"修改失败")}finally{x.value=!1}}async function ue(){c.value=!0;try{const D=(await zte())?.announcement;if(!D?.id)return;const Z=`announcement_closed_${D.id}`;if(window.sessionStorage.getItem(Z)==="1")return;u.value=D,i.value=!0}catch{}finally{c.value=!1}}function Q(){const J=u.value;J?.id&&window.sessionStorage.setItem(`announcement_closed_${J.id}`,"1"),i.value=!1}async function te(){const J=u.value;if(!J?.id){i.value=!1;return}try{(await Hte(J.id))?.success&&mn.success("已永久关闭")}catch{}finally{i.value=!1}}return(J,D)=>{const Z=pt("el-icon"),se=pt("el-menu-item"),pe=pt("el-menu"),he=pt("el-aside"),ve=pt("el-button"),Ie=pt("el-tag"),_e=pt("el-header"),De=pt("RouterView"),ye=pt("el-main"),Re=pt("el-container"),Ne=pt("el-drawer"),Ae=pt("el-dialog"),Fe=pt("el-input"),me=pt("el-form-item"),Ke=pt("el-form"),Le=pt("el-tab-pane"),Ct=pt("el-skeleton"),Et=pt("el-empty"),Je=pt("el-collapse-item"),ot=pt("el-collapse"),ut=pt("el-tabs"),ge=pt("el-alert"),Ue=pt("el-divider"),de=pt("el-switch"),je=Kd("loading");return _(),ie(Re,{class:"layout-root"},{default:Y(()=>[a.value?le("",!0):(_(),ie(he,{key:0,width:"220px",class:"layout-aside"},{default:Y(()=>[D[17]||(D[17]=K("div",{class:"brand"},[K("div",{class:"brand-title"},"知识管理平台"),K("div",{class:"brand-sub app-muted"},"用户中心")],-1)),U(pe,{"default-active":R.value,class:"aside-menu",router:"",onSelect:H},{default:Y(()=>[(_(),F(He,null,bt(O,We=>U(se,{key:We.path,index:We.path},{default:Y(()=>[U(Z,null,{default:Y(()=>[(_(),ie(ft(We.icon)))]),_:2},1024),K("span",null,Ce(We.label),1)]),_:2},1032,["index"])),64))]),_:1},8,["default-active"])]),_:1})),U(Re,null,{default:Y(()=>[U(_e,{class:"layout-header"},{default:Y(()=>[K("div",sne,[a.value?(_(),ie(ve,{key:0,text:"",class:"header-menu-btn",onClick:D[0]||(D[0]=We=>l.value=!0)},{default:Y(()=>[...D[18]||(D[18]=[lt(" 菜单 ",-1)])]),_:1})):le("",!0),D[19]||(D[19]=K("div",{class:"header-title"},"用户控制台",-1))]),K("div",ine,[K("div",une,[s(o).isVip?(_(),ie(Ie,{key:0,type:"success",size:"small",effect:"light"},{default:Y(()=>[...D[20]||(D[20]=[lt("VIP",-1)])]),_:1})):(_(),ie(Ie,{key:1,type:"info",size:"small",effect:"light"},{default:Y(()=>[...D[21]||(D[21]=[lt("普通",-1)])]),_:1})),K("span",cne,Ce(s(o).username||"用户"),1),s(o).isVip&&s(o).vipDaysLeft<=7&&s(o).vipDaysLeft>0?(_(),F("span",dne," ("+Ce(s(o).vipDaysLeft)+"天后到期) ",1)):le("",!0)]),U(ve,{text:"",type:"primary",onClick:X},{default:Y(()=>[...D[22]||(D[22]=[lt("反馈",-1)])]),_:1}),U(ve,{text:"",onClick:B},{default:Y(()=>[...D[23]||(D[23]=[lt("设置",-1)])]),_:1}),U(ve,{type:"primary",plain:"",onClick:q},{default:Y(()=>[...D[24]||(D[24]=[lt("退出",-1)])]),_:1})])]),_:1}),U(ye,{class:"layout-main"},{default:Y(()=>[U(De)]),_:1})]),_:1}),U(Ne,{modelValue:l.value,"onUpdate:modelValue":D[1]||(D[1]=We=>l.value=We),size:"240px","with-header":!1},{default:Y(()=>[D[30]||(D[30]=K("div",{class:"drawer-brand"},[K("div",{class:"brand-title"},"知识管理平台"),K("div",{class:"brand-sub app-muted"},"用户中心")],-1)),K("div",fne,[s(o).isVip?(_(),ie(Ie,{key:0,type:"success",size:"small",effect:"light"},{default:Y(()=>[...D[25]||(D[25]=[lt("VIP",-1)])]),_:1})):(_(),ie(Ie,{key:1,type:"info",size:"small",effect:"light"},{default:Y(()=>[...D[26]||(D[26]=[lt("普通",-1)])]),_:1})),K("span",pne,Ce(s(o).username||"用户"),1)]),U(pe,{"default-active":R.value,class:"aside-menu",router:"",onSelect:H},{default:Y(()=>[(_(),F(He,null,bt(O,We=>U(se,{key:We.path,index:We.path},{default:Y(()=>[U(Z,null,{default:Y(()=>[(_(),ie(ft(We.icon)))]),_:2},1024),K("span",null,Ce(We.label),1)]),_:2},1032,["index"])),64))]),_:1},8,["default-active"]),K("div",vne,[U(ve,{text:"",type:"primary",style:{width:"100%"},onClick:X},{default:Y(()=>[...D[27]||(D[27]=[lt("问题反馈",-1)])]),_:1}),U(ve,{text:"",style:{width:"100%"},onClick:B},{default:Y(()=>[...D[28]||(D[28]=[lt("个人设置",-1)])]),_:1}),U(ve,{type:"primary",plain:"",style:{width:"100%"},onClick:q},{default:Y(()=>[...D[29]||(D[29]=[lt("退出登录",-1)])]),_:1})])]),_:1},8,["modelValue"]),U(Ae,{modelValue:i.value,"onUpdate:modelValue":D[2]||(D[2]=We=>i.value=We),width:"min(560px, 92vw)",title:u.value?.title||"系统公告"},{footer:Y(()=>[U(ve,{onClick:Q},{default:Y(()=>[...D[31]||(D[31]=[lt("当次关闭",-1)])]),_:1}),U(ve,{type:"primary",onClick:te},{default:Y(()=>[...D[32]||(D[32]=[lt("永久关闭",-1)])]),_:1})]),default:Y(()=>[dt((_(),F("div",hne,[K("div",mne,Ce(u.value?.content||""),1)])),[[je,c.value]])]),_:1},8,["modelValue","title"]),U(Ae,{modelValue:d.value,"onUpdate:modelValue":D[9]||(D[9]=We=>d.value=We),title:"问题反馈",width:"min(720px, 92vw)"},{footer:Y(()=>[U(ve,{onClick:D[8]||(D[8]=We=>d.value=!1)},{default:Y(()=>[...D[35]||(D[35]=[lt("关闭",-1)])]),_:1}),f.value==="list"?(_(),ie(ve,{key:0,onClick:P},{default:Y(()=>[...D[36]||(D[36]=[lt("刷新",-1)])]),_:1})):le("",!0),f.value==="new"?(_(),ie(ve,{key:1,type:"primary",loading:v.value,onClick:z},{default:Y(()=>[...D[37]||(D[37]=[lt("提交",-1)])]),_:1},8,["loading"])):le("",!0)]),default:Y(()=>[U(ut,{modelValue:f.value,"onUpdate:modelValue":D[6]||(D[6]=We=>f.value=We),onTabChange:D[7]||(D[7]=We=>We==="list"&&P())},{default:Y(()=>[U(Le,{label:"提交反馈",name:"new"},{default:Y(()=>[U(Ke,{"label-position":"top"},{default:Y(()=>[U(me,{label:"标题"},{default:Y(()=>[U(Fe,{modelValue:h.title,"onUpdate:modelValue":D[3]||(D[3]=We=>h.title=We),placeholder:"简要描述问题",maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),U(me,{label:"详细描述"},{default:Y(()=>[U(Fe,{modelValue:h.description,"onUpdate:modelValue":D[4]||(D[4]=We=>h.description=We),type:"textarea",rows:5,placeholder:"请详细描述您遇到的问题",maxlength:"2000","show-word-limit":""},null,8,["modelValue"])]),_:1}),U(me,{label:"联系方式(可选)"},{default:Y(()=>[U(Fe,{modelValue:h.contact,"onUpdate:modelValue":D[5]||(D[5]=We=>h.contact=We),placeholder:"方便我们联系您"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),U(Le,{label:"我的反馈",name:"list"},{default:Y(()=>[p.value?(_(),ie(Ct,{key:0,rows:6,animated:""})):(_(),F(He,{key:1},[m.value.length===0?(_(),ie(Et,{key:0,description:"暂无反馈"})):(_(),ie(ot,{key:1,accordion:""},{default:Y(()=>[(_(!0),F(He,null,bt(m.value,We=>(_(),ie(Je,{key:We.id,name:String(We.id)},{title:Y(()=>[K("div",gne,[K("span",bne,Ce(We.title),1),U(Ie,{size:"small",effect:"light",type:L(We.status)},{default:Y(()=>[lt(Ce(N(We.status)),1)]),_:2},1032,["type"]),K("span",yne,Ce(We.created_at||""),1)])]),default:Y(()=>[K("div",wne,[K("div",Cne,[D[33]||(D[33]=K("div",{class:"feedback-label app-muted"},"描述",-1)),K("div",Sne,Ce(We.description),1)]),We.admin_reply?(_(),F("div",kne,[D[34]||(D[34]=K("div",{class:"feedback-label app-muted"},"管理员回复",-1)),K("div",Ene,Ce(We.admin_reply),1)])):le("",!0)])]),_:2},1032,["name"]))),128))]),_:1}))],64))]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["modelValue"]),U(Ae,{modelValue:g.value,"onUpdate:modelValue":D[16]||(D[16]=We=>g.value=We),title:"个人设置",width:"min(720px, 92vw)"},{footer:Y(()=>[U(ve,{onClick:D[15]||(D[15]=We=>g.value=!1)},{default:Y(()=>[...D[45]||(D[45]=[lt("关闭",-1)])]),_:1})]),default:Y(()=>[U(ut,{modelValue:b.value,"onUpdate:modelValue":D[14]||(D[14]=We=>b.value=We)},{default:Y(()=>[U(Le,{label:"邮箱绑定",name:"email"},{default:Y(()=>[dt((_(),F("div",_ne,[y.email&&y.email_verified?(_(),ie(ge,{key:0,type:"success",closable:!1,title:"邮箱已绑定并验证","show-icon":"",class:"settings-alert"},{default:Y(()=>[K("div",Tne,[K("div",One,Ce(y.email),1),U(ve,{type:"danger",text:"",onClick:ae},{default:Y(()=>[...D[38]||(D[38]=[lt("解绑",-1)])]),_:1})])]),_:1})):y.email?(_(),ie(ge,{key:1,type:"warning",closable:!1,title:"邮箱待验证:请查收验证邮件(含垃圾箱)","show-icon":"",class:"settings-alert"})):le("",!0),U(Ke,{"label-position":"top"},{default:Y(()=>[U(me,{label:"邮箱地址"},{default:Y(()=>[U(Fe,{modelValue:k.value,"onUpdate:modelValue":D[10]||(D[10]=We=>k.value=We),placeholder:"name@example.com"},null,8,["modelValue"])]),_:1}),U(ve,{type:"primary",loading:w.value,onClick:oe},{default:Y(()=>[...D[39]||(D[39]=[lt("发送验证邮件",-1)])]),_:1},8,["loading"])]),_:1}),U(Ue),K("div",$ne,[D[40]||(D[40]=K("div",null,[K("div",{class:"notify-title"},"任务完成通知"),K("div",{class:"app-muted notify-desc"},"定时任务完成后发送邮件")],-1)),U(de,{"model-value":T.value,disabled:!y.email_verified||E.value,"inline-prompt":"","active-text":"开","inactive-text":"关",onChange:ce},null,8,["model-value","disabled"])]),y.email_verified?le("",!0):(_(),ie(ge,{key:2,type:"info",closable:!1,title:"绑定并验证邮箱后可开启邮件通知。","show-icon":"",class:"settings-hint"}))])),[[je,C.value]])]),_:1}),U(Le,{label:"修改密码",name:"password"},{default:Y(()=>[K("div",Nne,[U(Ke,{"label-position":"top"},{default:Y(()=>[U(me,{label:"当前密码"},{default:Y(()=>[U(Fe,{modelValue:$.current_password,"onUpdate:modelValue":D[11]||(D[11]=We=>$.current_password=We),type:"password","show-password":"",autocomplete:"current-password"},null,8,["modelValue"])]),_:1}),U(me,{label:"新密码(至少6位)"},{default:Y(()=>[U(Fe,{modelValue:$.new_password,"onUpdate:modelValue":D[12]||(D[12]=We=>$.new_password=We),type:"password","show-password":"",autocomplete:"new-password"},null,8,["modelValue"])]),_:1}),U(me,{label:"确认新密码"},{default:Y(()=>[U(Fe,{modelValue:$.confirm_password,"onUpdate:modelValue":D[13]||(D[13]=We=>$.confirm_password=We),type:"password","show-password":"",autocomplete:"new-password",onKeyup:Jt(ne,["enter"])},null,8,["modelValue"])]),_:1}),U(ve,{type:"primary",loading:x.value,onClick:ne},{default:Y(()=>[...D[41]||(D[41]=[lt("确认修改",-1)])]),_:1},8,["loading"])]),_:1})])]),_:1}),U(Le,{label:"VIP信息",name:"vip"},{default:Y(()=>[K("div",Rne,[U(ge,{type:s(o).isVip?"success":"info",closable:!1,title:s(o).isVip?"当前为 VIP 会员":"当前为普通用户","show-icon":"",class:"settings-alert"},null,8,["type","title"]),s(o).isVip?(_(),F("div",xne,[K("div",Ine,[D[42]||(D[42]=K("span",{class:"app-muted"},"到期时间",-1)),K("span",null,Ce(s(o).vipExpireTime||"未知"),1)]),K("div",Pne,[D[43]||(D[43]=K("span",{class:"app-muted"},"剩余天数",-1)),K("span",null,Ce(s(o).vipDaysLeft),1)])])):(_(),F("div",Mne,[...D[44]||(D[44]=[K("div",{class:"app-muted"},"升级方式:请通过“反馈”联系管理员开通。",-1)])]))])]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["modelValue"])]),_:1})}}},Lne=kC(Ane,[["__scopeId","data-v-c86eff51"]]),Dne=()=>Er(()=>import("./LoginPage-aGh2PQkO.js"),__vite__mapDeps([0,1,2,3]),import.meta.url),Bne=()=>Er(()=>import("./RegisterPage-Cfctkogt.js"),__vite__mapDeps([4,1,5]),import.meta.url),Fne=()=>Er(()=>import("./ResetPasswordPage-B37m0WGk.js"),__vite__mapDeps([6,1,2,7]),import.meta.url),Xw=()=>Er(()=>import("./VerifyResultPage-3EKG3rSu.js"),__vite__mapDeps([8,9]),import.meta.url),Vne=()=>Er(()=>import("./AccountsPage-UPsxd2hl.js"),__vite__mapDeps([10,11,12]),import.meta.url),zne=()=>Er(()=>import("./SchedulesPage-BHh5odxx.js"),__vite__mapDeps([13,11,14]),import.meta.url),Hne=()=>Er(()=>import("./ScreenshotsPage-CF9cDOW6.js"),__vite__mapDeps([15,16]),import.meta.url),Kne=[{path:"/",redirect:"/login"},{path:"/login",name:"login",component:Dne},{path:"/register",name:"register",component:Bne},{path:"/reset-password/:token",name:"reset_password",component:Fne},{path:"/api/verify-email/:token",name:"verify_email",component:Xw},{path:"/api/verify-bind-email/:token",name:"verify_bind_email",component:Xw},{path:"/app",component:Lne,children:[{path:"",redirect:"/app/accounts"},{path:"accounts",name:"accounts",component:Vne},{path:"schedules",name:"schedules",component:zne},{path:"screenshots",name:"screenshots",component:Hne}]},{path:"/:pathMatch(.*)*",redirect:"/login"}],Wne=sR({history:FN(),routes:Kne});var jne={name:"zh-cn",el:{breadcrumb:{label:"面包屑"},colorpicker:{confirm:"确定",clear:"清空",defaultLabel:"颜色选择器",description:"当前颜色 {color},按 Enter 键选择新颜色",alphaLabel:"选择透明度的值",alphaDescription:"透明度 {alpha}, 当前颜色 {color}",hueLabel:"选择色相值",hueDescription:"色相 {hue}, 当前颜色 {color}",svLabel:"选择饱和度与明度的值",svDescription:"饱和度 {saturation}, 明度 {brightness}, 当前颜色 {color}",predefineDescription:"选择 {value} 作为颜色"},datepicker:{now:"此刻",today:"今天",cancel:"取消",clear:"清空",confirm:"确定",dateTablePrompt:"使用方向键与 Enter 键可选择日期",monthTablePrompt:"使用方向键与 Enter 键可选择月份",yearTablePrompt:"使用方向键与 Enter 键可选择年份",selectedDate:"已选日期",selectDate:"选择日期",selectTime:"选择时间",startDate:"开始日期",startTime:"开始时间",endDate:"结束日期",endTime:"结束时间",prevYear:"前一年",nextYear:"后一年",prevMonth:"上个月",nextMonth:"下个月",year:"年",month1:"1 月",month2:"2 月",month3:"3 月",month4:"4 月",month5:"5 月",month6:"6 月",month7:"7 月",month8:"8 月",month9:"9 月",month10:"10 月",month11:"11 月",month12:"12 月",weeks:{sun:"日",mon:"一",tue:"二",wed:"三",thu:"四",fri:"五",sat:"六"},weeksFull:{sun:"星期日",mon:"星期一",tue:"星期二",wed:"星期三",thu:"星期四",fri:"星期五",sat:"星期六"},months:{jan:"一月",feb:"二月",mar:"三月",apr:"四月",may:"五月",jun:"六月",jul:"七月",aug:"八月",sep:"九月",oct:"十月",nov:"十一月",dec:"十二月"}},inputNumber:{decrease:"减少数值",increase:"增加数值"},select:{loading:"加载中",noMatch:"无匹配数据",noData:"无数据",placeholder:"请选择"},mention:{loading:"加载中"},dropdown:{toggleDropdown:"切换下拉选项"},cascader:{noMatch:"无匹配数据",loading:"加载中",placeholder:"请选择",noData:"暂无数据"},pagination:{goto:"前往",pagesize:"条/页",total:"共 {total} 条",pageClassifier:"页",page:"页",prev:"上一页",next:"下一页",currentPage:"第 {pager} 页",prevPages:"向前 {pager} 页",nextPages:"向后 {pager} 页",deprecationWarning:"你使用了一些已被废弃的用法,请参考 el-pagination 的官方文档"},dialog:{close:"关闭此对话框"},drawer:{close:"关闭此对话框"},messagebox:{title:"提示",confirm:"确定",cancel:"取消",error:"输入的数据不合法!",close:"关闭此对话框"},upload:{deleteTip:"按 Delete 键可删除",delete:"删除",preview:"查看图片",continue:"继续上传"},slider:{defaultLabel:"滑块介于 {min} 至 {max}",defaultRangeStartLabel:"选择起始值",defaultRangeEndLabel:"选择结束值"},table:{emptyText:"暂无数据",confirmFilter:"筛选",resetFilter:"重置",clearFilter:"全部",sumText:"合计",selectAllLabel:"选择所有行",selectRowLabel:"选择当前行",expandRowLabel:"展开当前行",collapseRowLabel:"收起当前行",sortLabel:"按 {column} 排序",filterLabel:"按 {column} 过滤"},tag:{close:"关闭此标签"},tour:{next:"下一步",previous:"上一步",finish:"结束导览",close:"关闭此对话框"},tree:{emptyText:"暂无数据"},transfer:{noMatch:"无匹配数据",noData:"无数据",titles:["列表 1","列表 2"],filterPlaceholder:"请输入搜索内容",noCheckedFormat:"共 {total} 项",hasCheckedFormat:"已选 {checked}/{total} 项"},image:{error:"加载失败"},pageHeader:{title:"返回"},popconfirm:{confirmButtonText:"确定",cancelButtonText:"取消"},carousel:{leftArrow:"上一张幻灯片",rightArrow:"下一张幻灯片",indicator:"幻灯片切换至索引 {index}"}}};SC(Q$).use(Jte()).use(Wne).use(dee,{locale:jne}).mount("#app");export{mn as E,He as F,kC as _,A as a,F as b,S as c,U as d,pt as e,_ as f,K as g,ie as h,le as i,Jt as j,lt as k,uR as l,Pt as m,rne as n,mt as o,Oo as p,fe as q,Ot as r,s,Ce as t,iR as u,bt as v,Y as w,eh as x}; diff --git a/static/app/index.html b/static/app/index.html index bf2a015..4b27c6d 100644 --- a/static/app/index.html +++ b/static/app/index.html @@ -4,7 +4,7 @@ 知识管理平台 - +