From fe87ee62c1ccb46e1e557538ee1f907b76643e2e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 23 Jan 2026 02:41:59 +0000 Subject: [PATCH] chore: update frontend build for v1.1.264 [skip ci] --- README.md | 4 +- .../AccountUsageRecordsView-CAVEOn9q.js | 2 - .../dist/assets/AccountsView-CWWlCm8X.css | 1 - .../dist/assets/AccountsView-mqqu5LbU.js | 71 -------- .../dist/assets/ActionDropdown-BAe-X9zd.css | 1 + .../dist/assets/ActionDropdown-GADQlLlI.js | 1 - .../assets/ApiKeyUsageRecordsView-DEBCoJV1.js | 2 - .../dist/assets/ApiKeysView-DZf3x888.js | 20 -- .../dist/assets/ApiKeysView-M9vmNqGR.css | 1 - .../dist/assets/ApiStatsView-BDCKkmc6.css | 1 - .../dist/assets/ApiStatsView-D5wlfbRX.js | 6 - .../dist/assets/ConfirmModal-BzWkJtgn.css | 1 - .../dist/assets/ConfirmModal-C2rCOkXI.js | 1 - .../dist/assets/DashboardView-BzrWMTub.js | 1 - .../dist/assets/DashboardView-C7pS8AeR.css | 1 - .../dist/assets/Inter-Bold-BOs3KVhN.woff2 | Bin 114840 -> 0 bytes .../dist/assets/Inter-Light-14LG-y7V.woff2 | Bin 112592 -> 0 bytes .../dist/assets/Inter-Medium-CDhBSFyE.woff2 | Bin 114348 -> 0 bytes .../dist/assets/Inter-Regular-COLGFB3M.woff2 | Bin 111268 -> 0 bytes .../dist/assets/Inter-SemiBold-BAEEcJ4E.woff2 | Bin 114812 -> 0 bytes .../dist/assets/LoginView-Bk2509Bx.js | 1 - .../dist/assets/LogoTitle-DF7a1vCs.js | 1 - .../dist/assets/LogoTitle-DXipqypn.css | 1 + .../dist/assets/MainLayout-C8oFjafl.js | 1 - .../dist/assets/MainLayout-DUrvC5cF.css | 1 - .../dist/assets/QuotaCardsView-B9kpLmPn.js | 3 - .../assets/RecordDetailModal-CZv4ajwT.css | 1 - .../dist/assets/RecordDetailModal-iWzEw88d.js | 1 - .../dist/assets/SettingsView-BSo4LhAq.js | 3 - .../dist/assets/SettingsView-D2Ttplqa.css | 1 - .../dist/assets/ThemeToggle-DROshBR1.js | 1 - .../dist/assets/ThemeToggle-MCe3g2y3.css | 1 - .../dist/assets/TutorialView-Cpvhof5r.js | 2 - .../dist/assets/TutorialView-DfJPWFZG.css | 1 - .../dist/assets/UserDashboardView-CxHhaP6a.js | 1 - .../dist/assets/UserLoginView-CQ2slm3o.js | 1 - .../assets/UserManagementView-CaiXdQvq.js | 1 - .../dist/assets/WindowCountdown-Cz478C_V.js | 1 - web/admin-spa/dist/assets/chart-yFHxLHpB.js | 13 -- .../dist/assets/element-plus-BSjV1f9S.js | 13 -- .../dist/assets/element-plus-BWHEPMNp.css | 1 + .../dist/assets/fa-brands-400-D1LuMI3I.ttf | Bin 0 -> 210792 bytes .../dist/assets/fa-brands-400-D_cYUPeE.woff2 | Bin 0 -> 118684 bytes .../dist/assets/fa-regular-400-BjRzuEpd.woff2 | Bin 0 -> 25472 bytes .../dist/assets/fa-regular-400-DZaxPHgR.ttf | Bin 0 -> 68064 bytes .../dist/assets/fa-solid-900-CTAAxXor.woff2 | Bin 0 -> 158220 bytes .../dist/assets/fa-solid-900-D0aA9rwL.ttf | Bin 0 -> 426112 bytes .../assets/fa-v4compatibility-C9RhG_FT.woff2 | Bin 0 -> 4796 bytes .../assets/fa-v4compatibility-CCth-dXg.ttf | Bin 0 -> 10836 bytes web/admin-spa/dist/assets/index-BahP9Xx9.js | 23 --- web/admin-spa/dist/assets/index-C0PReR6i.css | 5 - web/admin-spa/dist/assets/vendor-Dr8jvgFu.js | 171 ++++++++++++++++++ .../dist/assets/vue-vendor-DV7DYXbz.js | 25 --- web/admin-spa/dist/index.html | 20 ++ 54 files changed, 196 insertions(+), 212 deletions(-) delete mode 100644 web/admin-spa/dist/assets/AccountUsageRecordsView-CAVEOn9q.js delete mode 100644 web/admin-spa/dist/assets/AccountsView-CWWlCm8X.css delete mode 100644 web/admin-spa/dist/assets/AccountsView-mqqu5LbU.js create mode 100644 web/admin-spa/dist/assets/ActionDropdown-BAe-X9zd.css delete mode 100644 web/admin-spa/dist/assets/ActionDropdown-GADQlLlI.js delete mode 100644 web/admin-spa/dist/assets/ApiKeyUsageRecordsView-DEBCoJV1.js delete mode 100644 web/admin-spa/dist/assets/ApiKeysView-DZf3x888.js delete mode 100644 web/admin-spa/dist/assets/ApiKeysView-M9vmNqGR.css delete mode 100644 web/admin-spa/dist/assets/ApiStatsView-BDCKkmc6.css delete mode 100644 web/admin-spa/dist/assets/ApiStatsView-D5wlfbRX.js delete mode 100644 web/admin-spa/dist/assets/ConfirmModal-BzWkJtgn.css delete mode 100644 web/admin-spa/dist/assets/ConfirmModal-C2rCOkXI.js delete mode 100644 web/admin-spa/dist/assets/DashboardView-BzrWMTub.js delete mode 100644 web/admin-spa/dist/assets/DashboardView-C7pS8AeR.css delete mode 100644 web/admin-spa/dist/assets/Inter-Bold-BOs3KVhN.woff2 delete mode 100644 web/admin-spa/dist/assets/Inter-Light-14LG-y7V.woff2 delete mode 100644 web/admin-spa/dist/assets/Inter-Medium-CDhBSFyE.woff2 delete mode 100644 web/admin-spa/dist/assets/Inter-Regular-COLGFB3M.woff2 delete mode 100644 web/admin-spa/dist/assets/Inter-SemiBold-BAEEcJ4E.woff2 delete mode 100644 web/admin-spa/dist/assets/LoginView-Bk2509Bx.js delete mode 100644 web/admin-spa/dist/assets/LogoTitle-DF7a1vCs.js create mode 100644 web/admin-spa/dist/assets/LogoTitle-DXipqypn.css delete mode 100644 web/admin-spa/dist/assets/MainLayout-C8oFjafl.js delete mode 100644 web/admin-spa/dist/assets/MainLayout-DUrvC5cF.css delete mode 100644 web/admin-spa/dist/assets/QuotaCardsView-B9kpLmPn.js delete mode 100644 web/admin-spa/dist/assets/RecordDetailModal-CZv4ajwT.css delete mode 100644 web/admin-spa/dist/assets/RecordDetailModal-iWzEw88d.js delete mode 100644 web/admin-spa/dist/assets/SettingsView-BSo4LhAq.js delete mode 100644 web/admin-spa/dist/assets/SettingsView-D2Ttplqa.css delete mode 100644 web/admin-spa/dist/assets/ThemeToggle-DROshBR1.js delete mode 100644 web/admin-spa/dist/assets/ThemeToggle-MCe3g2y3.css delete mode 100644 web/admin-spa/dist/assets/TutorialView-Cpvhof5r.js delete mode 100644 web/admin-spa/dist/assets/TutorialView-DfJPWFZG.css delete mode 100644 web/admin-spa/dist/assets/UserDashboardView-CxHhaP6a.js delete mode 100644 web/admin-spa/dist/assets/UserLoginView-CQ2slm3o.js delete mode 100644 web/admin-spa/dist/assets/UserManagementView-CaiXdQvq.js delete mode 100644 web/admin-spa/dist/assets/WindowCountdown-Cz478C_V.js delete mode 100644 web/admin-spa/dist/assets/chart-yFHxLHpB.js delete mode 100644 web/admin-spa/dist/assets/element-plus-BSjV1f9S.js create mode 100644 web/admin-spa/dist/assets/element-plus-BWHEPMNp.css create mode 100644 web/admin-spa/dist/assets/fa-brands-400-D1LuMI3I.ttf create mode 100644 web/admin-spa/dist/assets/fa-brands-400-D_cYUPeE.woff2 create mode 100644 web/admin-spa/dist/assets/fa-regular-400-BjRzuEpd.woff2 create mode 100644 web/admin-spa/dist/assets/fa-regular-400-DZaxPHgR.ttf create mode 100644 web/admin-spa/dist/assets/fa-solid-900-CTAAxXor.woff2 create mode 100644 web/admin-spa/dist/assets/fa-solid-900-D0aA9rwL.ttf create mode 100644 web/admin-spa/dist/assets/fa-v4compatibility-C9RhG_FT.woff2 create mode 100644 web/admin-spa/dist/assets/fa-v4compatibility-CCth-dXg.ttf delete mode 100644 web/admin-spa/dist/assets/index-BahP9Xx9.js delete mode 100644 web/admin-spa/dist/assets/index-C0PReR6i.css create mode 100644 web/admin-spa/dist/assets/vendor-Dr8jvgFu.js delete mode 100644 web/admin-spa/dist/assets/vue-vendor-DV7DYXbz.js create mode 100644 web/admin-spa/dist/index.html diff --git a/README.md b/README.md index 61c3090d..d1c7d656 100644 --- a/README.md +++ b/README.md @@ -6,5 +6,5 @@ This branch contains the pre-built frontend assets for Claude Relay Service. These files are automatically generated by the CI/CD pipeline. -Version: 1.1.263 -Build Date: 2026-01-22 13:58:01 UTC +Version: 1.1.264 +Build Date: 2026-01-23 02:41:59 UTC diff --git a/web/admin-spa/dist/assets/AccountUsageRecordsView-CAVEOn9q.js b/web/admin-spa/dist/assets/AccountUsageRecordsView-CAVEOn9q.js deleted file mode 100644 index c93a4ec3..00000000 --- a/web/admin-spa/dist/assets/AccountUsageRecordsView-CAVEOn9q.js +++ /dev/null @@ -1,2 +0,0 @@ -import{E as de,a as ie,b as ce,c as pe,d as ue}from"./element-plus-BSjV1f9S.js";import{b as G}from"./vendor-Dr8jvgFu.js";import{c as D,aX as ge,r as h,_ as O,o as J,q as xe,x as p,z as e,R as g,P as o,u as c,J as w,O as K,Q as $,ac as U,aU as ye,y as i,I as Q}from"./vue-vendor-DV7DYXbz.js";import{c as P,f as x,b0 as X,s as j}from"./index-BahP9Xx9.js";import{R as me}from"./RecordDetailModal-iWzEw88d.js";const ke={class:"space-y-4 p-4 lg:p-6"},fe={class:"flex flex-wrap items-center justify-between gap-3"},_e={class:"flex items-center gap-3"},ve={class:"text-xl font-bold text-gray-900 dark:text-gray-100"},be={class:"text-xs text-gray-500 dark:text-gray-400"},he={class:"text-xs text-gray-500 dark:text-gray-400"},we={class:"flex items-center gap-2 text-sm text-gray-500 dark:text-gray-400"},Re={key:0},Ie={key:1},Ce={class:"grid gap-3 md:grid-cols-2 xl:grid-cols-4"},Te={class:"rounded-xl border border-gray-200 bg-white p-4 shadow-sm dark:border-gray-800 dark:bg-gray-900"},De={class:"mt-1 text-2xl font-bold text-gray-900 dark:text-gray-100"},Ke={class:"rounded-xl border border-gray-200 bg-white p-4 shadow-sm dark:border-gray-800 dark:bg-gray-900"},Pe={class:"mt-1 text-2xl font-bold text-gray-900 dark:text-gray-100"},Se={class:"rounded-xl border border-gray-200 bg-white p-4 shadow-sm dark:border-gray-800 dark:bg-gray-900"},Ve={class:"mt-1 text-2xl font-bold text-yellow-600 dark:text-yellow-400"},ze={class:"rounded-xl border border-gray-200 bg-white p-4 shadow-sm dark:border-gray-800 dark:bg-gray-900"},Oe={class:"mt-1 text-2xl font-bold text-gray-900 dark:text-gray-100"},$e={class:"rounded-xl border border-gray-200 bg-white p-4 shadow-sm dark:border-gray-800 dark:bg-gray-900"},Ue={class:"flex flex-wrap items-center gap-3"},je={class:"rounded-xl border border-gray-200 bg-white shadow-sm dark:border-gray-800 dark:bg-gray-900"},Ae={key:0,class:"flex items-center justify-center p-10 text-gray-500 dark:text-gray-400"},Ee={key:1},Fe={key:0,class:"flex flex-col items-center gap-2 p-10 text-gray-500 dark:text-gray-400"},Ne={key:1,class:"space-y-4"},Be={class:"hidden overflow-x-auto md:block"},Ye={class:"min-w-full divide-y divide-gray-200 dark:divide-gray-800"},Me={class:"divide-y divide-gray-200 bg-white dark:divide-gray-800 dark:bg-gray-900"},qe={class:"whitespace-nowrap px-4 py-3 text-sm text-gray-800 dark:text-gray-100"},He={class:"px-4 py-3 text-sm text-gray-800 dark:text-gray-100"},Le={class:"flex flex-col"},Ge={class:"font-semibold"},Je={class:"text-xs text-gray-500 dark:text-gray-400"},Qe={class:"whitespace-nowrap px-4 py-3 text-sm text-gray-800 dark:text-gray-100"},Xe={class:"whitespace-nowrap px-4 py-3 text-sm text-blue-600 dark:text-blue-400"},Ze={class:"whitespace-nowrap px-4 py-3 text-sm text-green-600 dark:text-green-400"},We={class:"whitespace-nowrap px-4 py-3 text-sm text-purple-600 dark:text-purple-400"},et={class:"whitespace-nowrap px-4 py-3 text-sm text-gray-800 dark:text-gray-100"},tt={class:"whitespace-nowrap px-4 py-3 text-sm text-yellow-600 dark:text-yellow-400"},at={class:"whitespace-nowrap px-4 py-3 text-right text-sm"},st={class:"space-y-3 md:hidden"},ot={class:"flex items-center justify-between"},lt={class:"text-sm font-semibold text-gray-900 dark:text-gray-100"},rt={class:"text-xs text-gray-500 dark:text-gray-400"},nt={class:"text-xs text-gray-500 dark:text-gray-400"},dt={class:"mt-3 grid grid-cols-2 gap-2 text-sm text-gray-700 dark:text-gray-300"},it={class:"text-yellow-600 dark:text-yellow-400"},ct={class:"flex items-center justify-between px-4 pb-4"},pt={class:"text-sm text-gray-500 dark:text-gray-400"},ft={__name:"AccountUsageRecordsView",setup(ut){const N=ge(),Z=ye(),f=D(()=>N.params.accountId),C=D(()=>N.query.platform),A=h(!1),S=h(!1),V=h([]),B=h([]),Y=h([]),n=O({currentPage:1,pageSize:50,totalRecords:0}),s=O({dateRange:null,model:"",apiKeyId:"",sortOrder:"desc"}),y=O({totalRequests:0,totalTokens:0,totalCost:0,avgCost:0}),R=O({id:f.value,name:"",platform:C.value||""}),E=h(!1),F=h(null),W=D(()=>R.name||R.id||f.value),M=D(()=>{const l={claude:"Claude官方","claude-console":"Claude Console",ccr:"Claude Console Relay",openai:"OpenAI","openai-responses":"OpenAI Responses",gemini:"Gemini","gemini-api":"Gemini API",droid:"Droid",unknown:"未知渠道"},t=R.platform||C.value||"unknown";return l[t]||"未知渠道"}),q=D(()=>!s.dateRange||s.dateRange.length!==2?"":`${P(s.dateRange[0])} ~ ${P(s.dateRange[1])}`),T=l=>{const t=typeof l=="number"?l:0;return t>=1?`$${t.toFixed(2)}`:t>=.001?`$${t.toFixed(4)}`:`$${t.toFixed(6)}`},H=l=>{const t={page:l,pageSize:n.pageSize,sortOrder:s.sortOrder};return s.model&&(t.model=s.model),s.apiKeyId&&(t.apiKeyId=s.apiKeyId),s.dateRange&&s.dateRange.length===2&&(t.startDate=G(s.dateRange[0]).toISOString(),t.endDate=G(s.dateRange[1]).toISOString()),C.value&&(t.platform=C.value),t},ee=l=>{var m,k,_,a,v;V.value=l.records||[];const t=l.pagination||{};n.currentPage=t.currentPage||1,n.pageSize=t.pageSize||n.pageSize,n.totalRecords=t.totalRecords||0;const r=l.filters||{};if(r.model!==void 0&&(s.model=r.model||""),r.apiKeyId!==void 0&&(s.apiKeyId=r.apiKeyId||""),r.sortOrder&&(s.sortOrder=r.sortOrder),r.startDate&&r.endDate){const b=[r.startDate,r.endDate],d=s.dateRange||[];(d[0]!==b[0]||d[1]!==b[1])&&(s.dateRange=b)}const u=l.summary||{};y.totalRequests=u.totalRequests||0,y.totalTokens=u.totalTokens||0,y.totalCost=u.totalCost||0,y.avgCost=u.avgCost||0,R.id=((m=l.accountInfo)==null?void 0:m.id)||f.value,R.name=((k=l.accountInfo)==null?void 0:k.name)||"",R.platform=((_=l.accountInfo)==null?void 0:_.platform)||C.value||"",B.value=((a=l.availableFilters)==null?void 0:a.models)||[],Y.value=((v=l.availableFilters)==null?void 0:v.apiKeys)||[]},I=async(l=n.currentPage)=>{A.value=!0;try{const t=await X(f.value,H(l));ee(t.data||{})}catch(t){j(`加载请求记录失败:${t.message||"未知错误"}`,"error")}finally{A.value=!1}},te=l=>{n.currentPage=l,I(l)},ae=l=>{n.pageSize=l,n.currentPage=1,I(1)},se=()=>{s.model="",s.apiKeyId="",s.dateRange=null,s.sortOrder="desc",n.currentPage=1,I(1)},L=l=>{F.value=l,E.value=!0},oe=()=>{E.value=!1,F.value=null},le=()=>{Z.push("/accounts")},re=async()=>{var l;if(!S.value){S.value=!0;try{const t=[];let r=1,u=1;const m=50;for(;r<=u&&r<=m;){const z=(await X(f.value,{...H(r),pageSize:200})).data||{};t.push(...z.records||[]),u=((l=z.pagination)==null?void 0:l.totalPages)||1,r+=1}if(t.length===0){j("没有可导出的记录","info");return}const _=[["时间","API Key","模型","输入Token","输出Token","缓存创建Token","缓存读取Token","总Token","费用"].join(",")];t.forEach(d=>{const z=[P(d.timestamp),d.apiKeyName||d.apiKeyId||"",d.model||"",d.inputTokens||0,d.outputTokens||0,d.cacheCreateTokens||0,d.cacheReadTokens||0,d.totalTokens||0,d.costFormatted||T(d.cost)];_.push(z.map(ne=>`"${String(ne).replace(/"/g,'""')}"`).join(","))});const a=new Blob([_.join(` -`)],{type:"text/csv;charset=utf-8;"}),v=URL.createObjectURL(a),b=document.createElement("a");b.href=v,b.download=`account-${f.value}-usage-records.csv`,b.click(),URL.revokeObjectURL(v),j("导出 CSV 成功","success")}catch(t){j(`导出失败:${t.message||"未知错误"}`,"error")}finally{S.value=!1}}};return J(()=>[s.model,s.apiKeyId,s.sortOrder],()=>{n.currentPage=1,I(1)}),J(()=>s.dateRange,()=>{n.currentPage=1,I(1)},{deep:!0}),xe(()=>{I()}),(l,t)=>{const r=de,u=ue,m=ie,k=ce,_=pe;return i(),p("div",ke,[e("div",fe,[e("div",_e,[e("button",{class:"rounded-full border border-gray-200 px-3 py-2 text-sm text-gray-700 transition hover:bg-gray-100 dark:border-gray-700 dark:text-gray-200 dark:hover:bg-gray-800",onClick:le}," ← 返回 "),e("div",null,[t[4]||(t[4]=e("p",{class:"text-xs font-semibold uppercase tracking-wide text-blue-600 dark:text-blue-400"}," 账户请求详情时间线 ",-1)),e("h2",ve,o(W.value),1),e("p",be,"ID: "+o(f.value),1),e("p",he,"渠道:"+o(M.value),1)])]),e("div",we,[t[5]||(t[5]=e("i",{class:"fas fa-clock text-blue-500"},null,-1)),q.value?(i(),p("span",Re,o(q.value),1)):(i(),p("span",Ie,"显示近 5000 条记录"))])]),e("div",Ce,[e("div",Te,[t[6]||(t[6]=e("p",{class:"text-xs uppercase text-gray-500 dark:text-gray-400"},"总请求",-1)),e("p",De,o(c(x)(y.totalRequests)),1)]),e("div",Ke,[t[7]||(t[7]=e("p",{class:"text-xs uppercase text-gray-500 dark:text-gray-400"},"总 Token",-1)),e("p",Pe,o(c(x)(y.totalTokens)),1)]),e("div",Se,[t[8]||(t[8]=e("p",{class:"text-xs uppercase text-gray-500 dark:text-gray-400"},"总费用",-1)),e("p",Ve,o(T(y.totalCost)),1)]),e("div",ze,[t[9]||(t[9]=e("p",{class:"text-xs uppercase text-gray-500 dark:text-gray-400"},"平均费用/次",-1)),e("p",Oe,o(T(y.avgCost)),1)])]),e("div",$e,[e("div",Ue,[g(r,{modelValue:s.dateRange,"onUpdate:modelValue":t[0]||(t[0]=a=>s.dateRange=a),class:"max-w-[320px]",clearable:"","end-placeholder":"结束时间",format:"YYYY-MM-DD HH:mm:ss","start-placeholder":"开始时间",type:"datetimerange","unlink-panels":"","value-format":"YYYY-MM-DDTHH:mm:ss[Z]"},null,8,["modelValue"]),g(m,{modelValue:s.model,"onUpdate:modelValue":t[1]||(t[1]=a=>s.model=a),class:"w-[180px]",clearable:"",filterable:"",placeholder:"所有模型"},{default:w(()=>[(i(!0),p($,null,U(B.value,a=>(i(),Q(u,{key:a,label:a,value:a},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),g(m,{modelValue:s.apiKeyId,"onUpdate:modelValue":t[2]||(t[2]=a=>s.apiKeyId=a),class:"w-[220px]",clearable:"",filterable:"",placeholder:"所有 API Key"},{default:w(()=>[(i(!0),p($,null,U(Y.value,a=>(i(),Q(u,{key:a.id,label:a.name||a.id,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),g(m,{modelValue:s.sortOrder,"onUpdate:modelValue":t[3]||(t[3]=a=>s.sortOrder=a),class:"w-[140px]",placeholder:"排序"},{default:w(()=>[g(u,{label:"时间降序",value:"desc"}),g(u,{label:"时间升序",value:"asc"})]),_:1},8,["modelValue"]),g(k,{onClick:se},{default:w(()=>t[10]||(t[10]=[e("i",{class:"fas fa-undo mr-2"},null,-1),K(" 重置 ",-1)])),_:1,__:[10]}),g(k,{loading:S.value,type:"primary",onClick:re},{default:w(()=>t[11]||(t[11]=[e("i",{class:"fas fa-file-export mr-2"},null,-1),K(" 导出 CSV ",-1)])),_:1,__:[11]},8,["loading"])])]),e("div",je,[A.value?(i(),p("div",Ae,t[12]||(t[12]=[e("i",{class:"fas fa-spinner fa-spin mr-2"},null,-1),K(" 加载中... ",-1)]))):(i(),p("div",Ee,[V.value.length===0?(i(),p("div",Fe,t[13]||(t[13]=[e("i",{class:"fas fa-inbox text-2xl"},null,-1),e("p",null,"暂无记录",-1)]))):(i(),p("div",Ne,[e("div",Be,[e("table",Ye,[t[15]||(t[15]=e("thead",{class:"bg-gray-50 dark:bg-gray-800"},[e("tr",null,[e("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 时间 "),e("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," API Key "),e("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 模型 "),e("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 输入 "),e("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 输出 "),e("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 缓存(创/读) "),e("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 总 Token "),e("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 费用 "),e("th",{class:"px-4 py-3 text-right text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 操作 ")])],-1)),e("tbody",Me,[(i(!0),p($,null,U(V.value,a=>(i(),p("tr",{key:a.timestamp+a.model},[e("td",qe,o(c(P)(a.timestamp)),1),e("td",He,[e("div",Le,[e("span",Ge,o(a.apiKeyName||a.apiKeyId||"未知 Key"),1),e("span",Je," ID: "+o(a.apiKeyId),1)])]),e("td",Qe,o(a.model),1),e("td",Xe,o(c(x)(a.inputTokens)),1),e("td",Ze,o(c(x)(a.outputTokens)),1),e("td",We,o(c(x)(a.cacheCreateTokens))+" / "+o(c(x)(a.cacheReadTokens)),1),e("td",et,o(c(x)(a.totalTokens)),1),e("td",tt,o(a.costFormatted||T(a.cost)),1),e("td",at,[g(k,{size:"small",onClick:v=>L(a)},{default:w(()=>t[14]||(t[14]=[K("详情",-1)])),_:2,__:[14]},1032,["onClick"])])]))),128))])])]),e("div",st,[(i(!0),p($,null,U(V.value,a=>(i(),p("div",{key:a.timestamp+a.model,class:"rounded-lg border border-gray-200 bg-white p-4 shadow-sm dark:border-gray-800 dark:bg-gray-900"},[e("div",ot,[e("div",null,[e("p",lt,o(a.apiKeyName||a.apiKeyId||"未知 Key"),1),e("p",rt," ID: "+o(a.apiKeyId)+" · "+o(c(P)(a.timestamp)),1),e("p",nt," 渠道:"+o(M.value),1)]),g(k,{size:"small",onClick:v=>L(a)},{default:w(()=>t[16]||(t[16]=[K("详情",-1)])),_:2,__:[16]},1032,["onClick"])]),e("div",dt,[e("div",null,"模型:"+o(a.model),1),e("div",null,"总 Token:"+o(c(x)(a.totalTokens)),1),e("div",null,"输入:"+o(c(x)(a.inputTokens)),1),e("div",null,"输出:"+o(c(x)(a.outputTokens)),1),e("div",null," 缓存创/读:"+o(c(x)(a.cacheCreateTokens))+" / "+o(c(x)(a.cacheReadTokens)),1),e("div",it," 费用:"+o(a.costFormatted||T(a.cost)),1)])]))),128))]),e("div",ct,[e("div",pt," 共 "+o(n.totalRecords)+" 条记录 ",1),g(_,{background:"","current-page":n.currentPage,layout:"prev, pager, next, sizes","page-size":n.pageSize,"page-sizes":[20,50,100,200],total:n.totalRecords,onCurrentChange:te,onSizeChange:ae},null,8,["current-page","page-size","total"])])]))]))]),g(me,{record:F.value,show:E.value,onClose:oe},null,8,["record","show"])])}}};export{ft as default}; diff --git a/web/admin-spa/dist/assets/AccountsView-CWWlCm8X.css b/web/admin-spa/dist/assets/AccountsView-CWWlCm8X.css deleted file mode 100644 index b24853b4..00000000 --- a/web/admin-spa/dist/assets/AccountsView-CWWlCm8X.css +++ /dev/null @@ -1 +0,0 @@ -@keyframes fadeIn-31bfe83b{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn[data-v-31bfe83b]{animation:fadeIn-31bfe83b .3s ease-out}.loading-spinner[data-v-3b48d107]{width:20px;height:20px;border:2px solid #e5e7eb;border-top:2px solid #14b8a6;border-radius:50%;animation:spin-3b48d107 1s linear infinite}@keyframes spin-3b48d107{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-spinner[data-v-c29b5f70]{border-top-color:transparent;border-radius:9999px;animation:spin-c29b5f70 .8s linear infinite}@keyframes spin-c29b5f70{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn-f19e4a71{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn[data-v-f19e4a71]{animation:fadeIn-f19e4a71 .2s ease-out}.loading-spinner[data-v-f19e4a71]{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin-f19e4a71 .8s linear infinite;display:inline-block}@keyframes spin-f19e4a71{0%{transform:rotate(0)}to{transform:rotate(360deg)}}[data-v-5e76f743] .balance-script-dialog{max-height:90vh;display:flex;flex-direction:column}[data-v-5e76f743] .balance-script-dialog .el-dialog__body{flex:1 1 auto;min-height:0;overflow:auto}[data-v-5e76f743] .balance-script-dialog .el-dialog__footer{border-top:1px solid rgba(229,231,235,.7)}.input-text[data-v-5e76f743]{width:100%;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1));--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.input-text[data-v-5e76f743]:focus{--tw-border-opacity: 1;border-color:rgb(129 140 248 / var(--tw-border-opacity, 1));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(199 210 254 / var(--tw-ring-opacity, 1))}.input-text[data-v-5e76f743]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.input-text[data-v-5e76f743]:focus:is(.dark *){--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1));--tw-ring-opacity: 1;--tw-ring-color: rgb(79 70 229 / var(--tw-ring-opacity, 1))}.accounts-container[data-v-f3c6543e]{min-height:calc(100vh - 300px)}.loading-spinner[data-v-f3c6543e]{width:24px;height:24px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:spin-f3c6543e 1s linear infinite}@keyframes spin-f3c6543e{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.table-wrapper[data-v-f3c6543e]{overflow:hidden;border-radius:12px;border:1px solid rgba(0,0,0,.05)}.dark .table-wrapper[data-v-f3c6543e]{border-color:#ffffff1a}.table-container[data-v-f3c6543e]{overflow-x:auto;overflow-y:hidden;margin:0;padding:0;max-width:100%;position:relative;-webkit-overflow-scrolling:touch}.table-container table[data-v-f3c6543e]{min-width:1400px;border-collapse:collapse;table-layout:auto}.table-container[data-v-f3c6543e]::-webkit-scrollbar{height:8px}.table-container[data-v-f3c6543e]::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}.table-container[data-v-f3c6543e]::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.table-container[data-v-f3c6543e]::-webkit-scrollbar-thumb:hover{background:#9ca3af}.dark .table-container[data-v-f3c6543e]::-webkit-scrollbar-track{background:var(--bg-gradient-mid)}.dark .table-container[data-v-f3c6543e]::-webkit-scrollbar-thumb{background:var(--bg-gradient-end)}.dark .table-container[data-v-f3c6543e]::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.table-container tbody tr:hover>td[data-v-f3c6543e]{background-color:rgba(var(--primary-rgb),.06)!important}.dark .table-container tbody tr:hover>td[data-v-f3c6543e]{background-color:rgba(var(--primary-rgb),.16)!important}.table-container tbody tr:nth-child(odd)>td[data-v-f3c6543e]{background-color:#fff}.table-container tbody tr:nth-child(2n)>td[data-v-f3c6543e]{background-color:#f9fafb}.dark .table-container tbody tr:nth-child(odd)>td[data-v-f3c6543e]{background-color:var(--bg-gradient-start)}.dark .table-container tbody tr:nth-child(2n)>td[data-v-f3c6543e]{background-color:var(--bg-gradient-mid)}.table-container thead .checkbox-column[data-v-f3c6543e],.table-container thead .name-column[data-v-f3c6543e]{z-index:30;background:linear-gradient(to bottom,#f9fafb,#f3f4f6)}.dark .table-container thead .checkbox-column[data-v-f3c6543e],.dark .table-container thead .name-column[data-v-f3c6543e]{background:linear-gradient(to bottom,var(--bg-gradient-mid),var(--bg-gradient-start))}.table-container thead .operations-column[data-v-f3c6543e]{z-index:30;background:linear-gradient(to bottom,#f9fafb,#f3f4f6)}.dark .table-container thead .operations-column[data-v-f3c6543e]{background:linear-gradient(to bottom,var(--bg-gradient-mid),var(--bg-gradient-start))}.table-container tbody .name-column[data-v-f3c6543e]{box-shadow:8px 0 12px -8px #0f172a29}.dark .table-container tbody .name-column[data-v-f3c6543e]{box-shadow:8px 0 12px -8px #1e293b73}.table-container tbody .operations-column[data-v-f3c6543e]{box-shadow:-8px 0 12px -8px #0f172a29}.dark .table-container tbody .operations-column[data-v-f3c6543e]{box-shadow:-8px 0 12px -8px #1e293b73} diff --git a/web/admin-spa/dist/assets/AccountsView-mqqu5LbU.js b/web/admin-spa/dist/assets/AccountsView-mqqu5LbU.js deleted file mode 100644 index 4407fd85..00000000 --- a/web/admin-spa/dist/assets/AccountsView-mqqu5LbU.js +++ /dev/null @@ -1,71 +0,0 @@ -import{b as qr,e as kr,f as Wr}from"./element-plus-BSjV1f9S.js";import{aP as Br,r as v,o as ve,V as Ha,x as n,y as o,z as e,L as m,K as b,al as je,aT as Et,O as f,aq as j,aa as Gr,P as u,aV as wa,aW as ka,C as $,c as Z,Z as Fr,an as Ie,Q as ke,q as ra,I as Xe,R as Ve,ac as Ne,u as Ye,a5 as Mt,B as Ze,aY as Qr,aU as Hr,D as ar,_ as hr,J as ot,Y as vt}from"./vue-vendor-DV7DYXbz.js";import{a4 as Jr,C as wr,D as $r,I as Ar,E as Cr,G as Tr,a5 as Ir,H as Ur,J as _r,a6 as Yr,a7 as Zr,a8 as Xr,a9 as es,aa as ts,ab as as,ac as rs,ad as ss,ae as ls,af as os,ag as ns,ah as is,ai as ds,aj as us,ak as ps,al as gs,am as cs,an as ha,ao as Kr,ap as ys,aq as Sr,ar as ms,as as xs,at as fs,au as bs,av as vs,aw as ks,ax as hs,ay as ws,az as $s,aA as As,aB as Cs,aC as Ts,s as V,c as Is,K as sr,aD as Us,aE as _s,aF as Ks,aG as Ss,_ as sa,aH as Ms,aI as Ds,aJ as Ps,aK as js,aL as Vs,aM as zs,aN as Ls,a as Rs,f as Je,aO as kt,aP as Mr,aQ as Dr,aR as Os,aS as Es,aT as Ns,F as qs,aU as Ws,aV as Bs,aW as Gs,aX as Fs,Z as cr,aY as Qs,aZ as Hs,a_ as Js,t as Ys,a$ as Zs}from"./index-BahP9Xx9.js";import{C as Ja}from"./ConfirmModal-C2rCOkXI.js";import{C as Xs}from"./chart-yFHxLHpB.js";import{C as Qa,_ as el}from"./ActionDropdown-GADQlLlI.js";import"./vendor-Dr8jvgFu.js";const yr={claude:{endpoint:"claude-accounts",stateKey:"claudeAccounts"},"claude-console":{endpoint:"claude-console-accounts",stateKey:"claudeConsoleAccounts"},bedrock:{endpoint:"bedrock-accounts",stateKey:"bedrockAccounts"},gemini:{endpoint:"gemini-accounts",stateKey:"geminiAccounts"},openai:{endpoint:"openai-accounts",stateKey:"openaiAccounts"},azure_openai:{endpoint:"azure-openai-accounts",stateKey:"azureOpenaiAccounts"},"openai-responses":{endpoint:"openai-responses-accounts",stateKey:"openaiResponsesAccounts"},droid:{endpoint:"droid-accounts",stateKey:"droidAccounts"}},Pr=Br("accounts",()=>{const F=v([]),_e=v([]),c=v([]),z=v([]),A=v([]),_=v([]),T=v([]),k=v([]),P=v(!1),O=v(null),Y=v(""),M=v("asc"),se={claudeAccounts:F,claudeConsoleAccounts:_e,bedrockAccounts:c,geminiAccounts:z,openaiAccounts:A,azureOpenaiAccounts:_,openaiResponsesAccounts:T,droidAccounts:k},ge=async(B,q)=>{P.value=!0;const Ee=await B();Ee.success?q.value=Ee.data||[]:O.value=Ee.message,P.value=!1},N=async(B,q,...Ee)=>{P.value=!0;const We=await B(...Ee);return We.success?await q():O.value=We.message,P.value=!1,We},E=()=>ge(wr,F),R=()=>ge($r,_e),y=()=>ge(Ar,c),p=()=>ge(Cr,z),D=()=>ge(Tr,A),de=()=>ge(Ir,_),le=()=>ge(Ur,T),ae=()=>ge(_r,k);return{claudeAccounts:F,claudeConsoleAccounts:_e,bedrockAccounts:c,geminiAccounts:z,openaiAccounts:A,azureOpenaiAccounts:_,openaiResponsesAccounts:T,droidAccounts:k,loading:P,error:O,sortBy:Y,sortOrder:M,fetchClaudeAccounts:E,fetchClaudeConsoleAccounts:R,fetchBedrockAccounts:y,fetchGeminiAccounts:p,fetchOpenAIAccounts:D,fetchAzureOpenAIAccounts:de,fetchOpenAIResponsesAccounts:le,fetchDroidAccounts:ae,fetchAllAccounts:async()=>{P.value=!0,await Promise.all([E(),R(),y(),p(),D(),de(),le(),ae()]),P.value=!1},createClaudeAccount:B=>N(Yr,E,B),createClaudeConsoleAccount:B=>N(Zr,R,B),createBedrockAccount:B=>N(Xr,y,B),createGeminiAccount:B=>N(es,p,B),createOpenAIAccount:B=>N(ts,D,B),createDroidAccount:B=>N(as,ae,B),updateDroidAccount:(B,q)=>N(ha,ae,B,q),createAzureOpenAIAccount:B=>N(rs,de,B),createOpenAIResponsesAccount:B=>N(ss,le,B),createGeminiApiAccount:B=>N(ls,p,B),updateClaudeAccount:(B,q)=>N(os,E,B,q),updateClaudeConsoleAccount:(B,q)=>N(ns,R,B,q),updateBedrockAccount:(B,q)=>N(is,y,B,q),updateGeminiAccount:(B,q)=>N(ds,p,B,q),updateOpenAIAccount:(B,q)=>N(us,D,B,q),updateAzureOpenAIAccount:(B,q)=>N(ps,de,B,q),updateOpenAIResponsesAccount:(B,q)=>N(gs,le,B,q),updateGeminiApiAccount:(B,q)=>N(cs,p,B,q),toggleAccount:async(B,q)=>{const Ee=yr[B];if(!Ee)return{success:!1,message:"未知平台"};P.value=!0;const We=await Kr(`/admin/${Ee.endpoint}/${q}/toggle`);return We.success?await ge(ys[`get${Ee.stateKey.charAt(0).toUpperCase()+Ee.stateKey.slice(1).replace("Accounts","")}AccountsApi`],se[Ee.stateKey]):O.value=We.message,P.value=!1,We},deleteAccount:async(B,q)=>{const Ee=yr[B];if(!Ee)return{success:!1,message:"未知平台"};P.value=!0;const We=await Sr(`/admin/${Ee.endpoint}/${q}`);return We.success?await{claude:E,"claude-console":R,bedrock:y,gemini:p,openai:D,azure_openai:de,"openai-responses":le,droid:ae}[B]():O.value=We.message,P.value=!1,We},refreshClaudeToken:async B=>{P.value=!0;const q=await ms(B);return q.success?await E():O.value=q.message,P.value=!1,q},generateClaudeAuthUrl:async B=>{const q=await xs(B);return q.success||(O.value=q.message),q.success?q.data:null},exchangeClaudeCode:async B=>{const q=await fs(B);return q.success||(O.value=q.message),q.success?q.data:null},generateClaudeSetupTokenUrl:async B=>{const q=await bs(B);return q.success||(O.value=q.message),q.success?q.data:null},exchangeClaudeSetupTokenCode:async B=>{const q=await vs(B);return q.success||(O.value=q.message),q.success?q.data:null},oauthWithCookie:async B=>{const q=await ks(B);return q.success||(O.value=q.message),q.success?q.data:null},oauthSetupTokenWithCookie:async B=>{const q=await hs(B);return q.success||(O.value=q.message),q.success?q.data:null},generateGeminiAuthUrl:async B=>{const q=await ws(B);return q.success||(O.value=q.message),q.success?q.data:null},exchangeGeminiCode:async B=>{const q=await $s(B);return q.success||(O.value=q.message),q.success?q.data:null},generateOpenAIAuthUrl:async B=>{const q=await As(B);return q.success||(O.value=q.message),q.success?q.data:null},exchangeOpenAICode:async B=>{const q=await Cs(B);return q.success||(O.value=q.message),q.success?q.data:null},generateDroidAuthUrl:async B=>{const q=await Ts(B);return q.success||(O.value=q.message),q.success?q.data:null},exchangeDroidCode:B=>Jr(B),sortAccounts:B=>{Y.value===B?M.value=M.value==="asc"?"desc":"asc":(Y.value=B,M.value="asc")},reset:()=>{F.value=[],_e.value=[],c.value=[],z.value=[],A.value=[],_.value=[],T.value=[],k.value=[],P.value=!1,O.value=null,Y.value="",M.value="asc"}}}),tl={class:"space-y-4"},al={class:"flex items-center justify-between"},rl={class:"flex cursor-pointer items-center"},sl={key:0,class:"space-y-4 rounded-lg border border-gray-200 bg-gray-50 p-4 dark:border-gray-600 dark:bg-gray-800"},ll={class:"relative"},ol={key:0,class:"mt-1 text-xs text-red-500"},nl={key:1,class:"mt-1 text-xs text-green-500"},il={class:"grid grid-cols-2 gap-4"},dl={class:"space-y-4"},ul={class:"flex items-center"},pl={key:0,class:"grid grid-cols-2 gap-4"},gl={class:"relative"},cl=["type"],rr={__name:"ProxyConfig",props:{modelValue:{type:Object,default:()=>({enabled:!1,type:"socks5",host:"",port:"",username:"",password:""})}},emits:["update:modelValue"],setup(F,{emit:_e}){const c=F,z=_e,A=v({...c.modelValue}),_=v(!!(A.value.username||A.value.password)),T=v(!1),k=v(""),P=v(""),O=v(!1);ve(()=>c.modelValue,R=>{JSON.stringify(R)!==JSON.stringify(A.value)&&(A.value={...R},_.value=!!(R.username||R.password))},{deep:!0}),ve(()=>A.value.enabled,()=>{M()}),ve(()=>A.value.type,()=>{M()}),ve(()=>A.value.host,()=>{M()}),ve(()=>A.value.port,()=>{M()}),ve(()=>A.value.username,()=>{M()}),ve(()=>A.value.password,()=>{M()}),ve(_,R=>{R||(A.value.username="",A.value.password="",M())});let Y=null;function M(){Y&&clearTimeout(Y),Y=setTimeout(()=>{const R={...A.value};_.value||(R.username="",R.password=""),z("update:modelValue",R)},100)}function se(){if(P.value="",O.value=!1,!!k.value)try{const R=k.value.split("#")[0].trim();if(!R)return;const y=/^(socks5|https?):\/\/(?:([^:@]+):([^@]+)@)?([^:]+):(\d+)$/i,p=R.match(y);if(!p){const he=/^([^:]+):(\d+)$/,W=R.match(he);if(W){A.value.type="socks5",A.value.host=W[1],A.value.port=W[2],A.value.username="",A.value.password="",_.value=!1,O.value=!0,M(),setTimeout(()=>{O.value=!1},3e3);return}P.value="无效的代理URL格式,请检查输入";return}const[,D,de,le,ae,oe]=p;A.value.type=D.toLowerCase(),A.value.host=ae,A.value.port=oe,de&&le?(A.value.username=decodeURIComponent(de),A.value.password=decodeURIComponent(le),_.value=!0):(A.value.username="",A.value.password="",_.value=!1),O.value=!0,M(),setTimeout(()=>{O.value=!1},3e3)}catch{P.value="解析失败,请检查URL格式"}}function ge(){k.value="",P.value="",O.value=!1}function N(){setTimeout(()=>{se()},0)}function E(){const R=k.value.trim();R.includes("://")?(/^(socks5|https?):\/\/[^:]+:\d+/i.test(R)||/^(socks5|https?):\/\/[^:@]+:[^@]+@[^:]+:\d+/i.test(R))&&se():/^[^:]+:\d{2,5}$/.test(R)&&se()}return Ha(()=>{Y&&clearTimeout(Y)}),(R,y)=>(o(),n("div",tl,[e("div",al,[y[10]||(y[10]=e("h4",{class:"text-sm font-semibold text-gray-700 dark:text-gray-300"},"代理设置 (可选)",-1)),e("label",rl,[b(e("input",{"onUpdate:modelValue":y[0]||(y[0]=p=>A.value.enabled=p),class:"h-4 w-4 rounded border-gray-300 bg-gray-100 text-blue-600 focus:ring-blue-500",type:"checkbox"},null,512),[[je,A.value.enabled]]),y[9]||(y[9]=e("span",{class:"ml-2 text-sm text-gray-700 dark:text-gray-300"},"启用代理",-1))])]),A.value.enabled?(o(),n("div",sl,[y[22]||(y[22]=Et('

配置代理以访问受限的网络资源。支持 SOCKS5 和 HTTP 代理。

请确保代理服务器稳定可用,否则会影响账户的正常使用。

',1)),e("div",null,[y[14]||(y[14]=e("label",{class:"mb-2 block text-sm font-medium text-gray-700 dark:text-gray-300"},[f(" 快速配置 "),e("span",{class:"ml-1 text-xs font-normal text-gray-500 dark:text-gray-400"}," (粘贴完整代理URL自动填充) ")],-1)),e("div",ll,[b(e("input",{"onUpdate:modelValue":y[1]||(y[1]=p=>k.value=p),class:"form-input w-full border-gray-300 pr-10 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"例如: socks5://username:password@host:port 或 http://host:port",type:"text",onInput:E,onKeyup:Gr(se,["enter"]),onPaste:N},null,544),[[j,k.value]]),k.value?(o(),n("button",{key:0,class:"absolute inset-y-0 right-0 flex items-center pr-3 text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-400",type:"button",onClick:ge},y[11]||(y[11]=[e("i",{class:"fas fa-times"},null,-1)]))):m("",!0)]),P.value?(o(),n("p",ol,[y[12]||(y[12]=e("i",{class:"fas fa-exclamation-circle mr-1"},null,-1)),f(" "+u(P.value),1)])):O.value?(o(),n("p",nl,y[13]||(y[13]=[e("i",{class:"fas fa-check-circle mr-1"},null,-1),f(" 代理配置已自动填充 ",-1)]))):m("",!0)]),y[23]||(y[23]=e("div",{class:"my-3 border-t border-gray-200 dark:border-gray-600"},null,-1)),e("div",null,[y[16]||(y[16]=e("label",{class:"mb-2 block text-sm font-medium text-gray-700 dark:text-gray-300"},"代理类型",-1)),b(e("select",{"onUpdate:modelValue":y[2]||(y[2]=p=>A.value.type=p),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200"},y[15]||(y[15]=[e("option",{value:"socks5"},"SOCKS5",-1),e("option",{value:"http"},"HTTP",-1),e("option",{value:"https"},"HTTPS",-1)]),512),[[wa,A.value.type]])]),e("div",il,[e("div",null,[y[17]||(y[17]=e("label",{class:"mb-2 block text-sm font-medium text-gray-700 dark:text-gray-300"},"主机地址",-1)),b(e("input",{"onUpdate:modelValue":y[3]||(y[3]=p=>A.value.host=p),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"例如: 192.168.1.100",type:"text"},null,512),[[j,A.value.host]])]),e("div",null,[y[18]||(y[18]=e("label",{class:"mb-2 block text-sm font-medium text-gray-700 dark:text-gray-300"},"端口",-1)),b(e("input",{"onUpdate:modelValue":y[4]||(y[4]=p=>A.value.port=p),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"例如: 1080",type:"number"},null,512),[[j,A.value.port]])])]),e("div",dl,[e("div",ul,[b(e("input",{id:"proxyAuth","onUpdate:modelValue":y[5]||(y[5]=p=>_.value=p),class:"h-4 w-4 rounded border-gray-300 bg-gray-100 text-blue-600 focus:ring-blue-500",type:"checkbox"},null,512),[[je,_.value]]),y[19]||(y[19]=e("label",{class:"ml-2 cursor-pointer text-sm text-gray-700 dark:text-gray-300",for:"proxyAuth"}," 需要身份验证 ",-1))]),_.value?(o(),n("div",pl,[e("div",null,[y[20]||(y[20]=e("label",{class:"mb-2 block text-sm font-medium text-gray-700 dark:text-gray-300"},"用户名",-1)),b(e("input",{"onUpdate:modelValue":y[6]||(y[6]=p=>A.value.username=p),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"代理用户名",type:"text"},null,512),[[j,A.value.username]])]),e("div",null,[y[21]||(y[21]=e("label",{class:"mb-2 block text-sm font-medium text-gray-700 dark:text-gray-300"},"密码",-1)),e("div",gl,[b(e("input",{"onUpdate:modelValue":y[7]||(y[7]=p=>A.value.password=p),class:"form-input w-full border-gray-300 pr-10 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"代理密码",type:T.value?"text":"password"},null,8,cl),[[ka,A.value.password]]),e("button",{class:"absolute inset-y-0 right-0 flex items-center pr-3 text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-400",type:"button",onClick:y[8]||(y[8]=p=>T.value=!T.value)},[e("i",{class:$(T.value?"fas fa-eye-slash":"fas fa-eye")},null,2)])])])])):m("",!0)]),y[24]||(y[24]=e("div",{class:"rounded-lg border border-blue-200 bg-blue-50 p-3 dark:border-blue-700 dark:bg-blue-900/30"},[e("p",{class:"text-xs text-blue-700 dark:text-blue-300"},[e("i",{class:"fas fa-info-circle mr-1"}),e("strong",null,"提示:"),f("代理设置将用于所有与此账户相关的API请求。请确保代理服务器支持HTTPS流量转发。 ")])],-1))])):m("",!0)]))}},yl={class:"space-y-6"},ml={key:0},xl={class:"rounded-lg border border-blue-200 bg-blue-50 p-6 dark:border-blue-700 dark:bg-blue-900/30"},fl={class:"flex items-start gap-4"},bl={class:"flex-1"},vl={class:"mb-4"},kl={class:"flex gap-4"},hl={class:"flex cursor-pointer items-center gap-2"},wl={class:"flex cursor-pointer items-center gap-2"},$l={key:0,class:"space-y-4"},Al={class:"rounded-lg border border-blue-300 bg-white/80 p-4 dark:border-blue-600 dark:bg-gray-800/80"},Cl={class:"mb-4"},Tl={class:"mb-2 flex items-center gap-2 text-sm font-semibold text-gray-700 dark:text-gray-300"},Il={key:0,class:"rounded-full bg-blue-500 px-2 py-0.5 text-xs text-white"},Ul={key:0,class:"mt-1 text-xs text-blue-600 dark:text-blue-400"},_l={key:0,class:"mb-4 rounded-lg border border-amber-200 bg-amber-50 p-3 dark:border-amber-700 dark:bg-amber-900/30"},Kl={key:1,class:"mb-4 rounded-lg border border-red-200 bg-red-50 p-3 dark:border-red-700 dark:bg-red-900/30"},Sl={class:"text-sm text-red-600 dark:text-red-400"},Ml=["disabled"],Dl={key:0,class:"loading-spinner mr-2"},Pl={key:1,class:"fas fa-magic mr-2"},jl={key:1},Vl={class:"space-y-4"},zl={class:"rounded-lg border border-blue-300 bg-white/80 p-4 dark:border-blue-600 dark:bg-gray-800/80"},Ll={class:"flex items-start gap-3"},Rl={class:"flex-1"},Ol=["disabled"],El={key:0,class:"fas fa-link mr-2"},Nl={key:1,class:"loading-spinner mr-2"},ql={key:1,class:"space-y-3"},Wl={class:"flex items-center gap-2"},Bl=["value"],Gl={class:"rounded-lg border border-blue-300 bg-white/80 p-4 dark:border-blue-600 dark:bg-gray-800/80"},Fl={class:"flex items-start gap-3"},Ql={class:"flex-1"},Hl={class:"space-y-3"},Jl={key:1},Yl={class:"rounded-lg border border-green-200 bg-green-50 p-6 dark:border-green-700 dark:bg-green-900/30"},Zl={class:"flex items-start gap-4"},Xl={class:"flex-1"},eo={class:"mb-4"},to={class:"text-sm text-green-800 dark:text-green-300"},ao={class:"font-semibold"},ro={class:"space-y-4"},so={class:"rounded-lg border border-green-300 bg-white/80 p-4 dark:border-green-600 dark:bg-gray-800/80"},lo={class:"flex items-start gap-3"},oo={class:"flex-1"},no=["disabled"],io={key:0,class:"fas fa-link mr-2"},uo={key:1,class:"loading-spinner mr-2"},po={key:1,class:"space-y-3"},go={class:"flex items-center gap-2"},co=["value"],yo={class:"rounded-lg border border-green-300 bg-white/80 p-4 dark:border-green-600 dark:bg-gray-800/80"},mo={class:"flex items-start gap-3"},xo={class:"flex-1"},fo={class:"space-y-3"},bo={key:2},vo={class:"rounded-lg border border-orange-200 bg-orange-50 p-6 dark:border-orange-700 dark:bg-orange-900/30"},ko={class:"flex items-start gap-4"},ho={class:"flex-1"},wo={class:"space-y-4"},$o={class:"rounded-lg border border-orange-300 bg-white/80 p-4 dark:border-orange-600 dark:bg-gray-800/80"},Ao={class:"flex items-start gap-3"},Co={class:"flex-1"},To=["disabled"],Io={key:0,class:"fas fa-link mr-2"},Uo={key:1,class:"loading-spinner mr-2"},_o={key:1,class:"space-y-3"},Ko={class:"flex items-center gap-2"},So=["value"],Mo={class:"rounded-lg border border-orange-300 bg-white/80 p-4 dark:border-orange-600 dark:bg-gray-800/80"},Do={class:"flex items-start gap-3"},Po={class:"flex-1"},jo={class:"space-y-3"},Vo={key:3},zo={class:"rounded-lg border border-cyan-200 bg-cyan-50 p-6 dark:border-cyan-700 dark:bg-cyan-900/30"},Lo={class:"flex items-start gap-4"},Ro={class:"flex-1"},Oo={class:"space-y-4"},Eo={class:"rounded-lg border border-cyan-300 bg-white/80 p-4 dark:border-cyan-600 dark:bg-gray-800/80"},No={class:"flex items-start gap-3"},qo={class:"flex-1"},Wo=["disabled"],Bo={key:0,class:"fas fa-link mr-2"},Go={key:1,class:"loading-spinner mr-2"},Fo={key:1,class:"space-y-4"},Qo={class:"space-y-2"},Ho={class:"flex flex-col gap-2 rounded-md border border-cyan-200 bg-white p-3 dark:border-cyan-700 dark:bg-gray-800"},Jo={class:"flex items-center gap-2"},Yo=["value"],Zo={class:"space-y-2"},Xo={class:"flex items-center justify-between rounded-md border border-cyan-200 bg-cyan-50 px-4 py-3 dark:border-cyan-700 dark:bg-cyan-900/30"},en={class:"font-mono text-xl font-semibold text-cyan-700 dark:text-cyan-200"},tn={class:"flex items-center justify-between text-xs text-gray-500 dark:text-gray-400"},an={class:"flex gap-3 pt-4"},rn=["disabled"],sn={key:0,class:"loading-spinner mr-2"},ln={__name:"OAuthFlow",props:{platform:{type:String,required:!0},proxy:{type:Object,default:null}},emits:["success","back"],setup(F,{expose:_e,emit:c}){const z=F,A=c,_=Pr(),T=v(!1),k=v(!1),P=v(""),O=v(""),Y=v(!1),M=Z(()=>z.platform==="gemini-antigravity"?"antigravity":"gemini-cli"),se=v(""),ge=v(""),N=v(""),E=v(""),R=v(0);let y=null;const p=v("manual"),D=v(""),de=v(!1),le=v(""),ae=v(!1),oe=v({current:0,total:0}),he=Z(()=>D.value.split(` -`).map(xe=>xe.trim()).filter(xe=>xe.length>0).length),W=Z(()=>z.platform==="droid"?!!se.value:P.value&&O.value.trim()),Q=Z(()=>{if(!R.value||R.value<=0)return"00:00";const xe=Math.floor(R.value/60),g=R.value%60;return`${xe.toString().padStart(2,"0")}:${g.toString().padStart(2,"0")}`}),H=xe=>{if(h(),!xe||xe<=0){R.value=0;return}R.value=Math.floor(xe),y=setInterval(()=>{R.value<=1?(R.value=0,h()):R.value-=1},1e3)},h=()=>{y&&(clearInterval(y),y=null)};ve(O,xe=>{if(z.platform==="droid"||!xe||typeof xe!="string")return;const g=xe.trim();if(!g)return;if(g.startsWith("http://")||g.startsWith("https://"))if(g.startsWith("http://localhost:45462")||g.startsWith("http://localhost:1455"))try{const re=new URL(g).searchParams.get("code");re?(O.value=re,V("成功提取授权码!","success"),console.log("Successfully extracted authorization code from URL")):V("URL 中未找到授权码参数,请检查链接是否正确","error")}catch(U){console.error("Failed to parse URL:",U),V("链接格式错误,请检查是否为完整的 URL","error")}else if(z.platform==="gemini"||z.platform==="gemini-antigravity"||z.platform==="openai")try{const re=new URL(g).searchParams.get("code");re&&(O.value=re,V("成功提取授权码!","success"))}catch{}else V("请粘贴以 http://localhost:1455 或 http://localhost:45462 开头的链接","error")});const X=async()=>{var xe;h(),P.value="",O.value="",ge.value="",N.value="",E.value="",R.value=0,se.value="",Y.value=!1,T.value=!0;try{const g=(xe=z.proxy)!=null&&xe.enabled?{proxy:{type:z.proxy.type,host:z.proxy.host,port:parseInt(z.proxy.port),username:z.proxy.username||null,password:z.proxy.password||null}}:{};if(z.platform==="claude"){const a=await _.generateClaudeAuthUrl(g);P.value=a.authUrl,se.value=a.sessionId}else if(z.platform==="gemini"||z.platform==="gemini-antigravity"){const a=await _.generateGeminiAuthUrl({...g,oauthProvider:M.value});P.value=a.authUrl,se.value=a.sessionId}else if(z.platform==="openai"){const a=await _.generateOpenAIAuthUrl(g);P.value=a.authUrl,se.value=a.sessionId}else if(z.platform==="droid"){const a=await _.generateDroidAuthUrl(g);P.value=a.verificationUriComplete||a.verificationUri,N.value=a.verificationUri,E.value=a.verificationUriComplete||a.verificationUri,ge.value=a.userCode,H(a.expiresIn||300),se.value=a.sessionId}}catch(g){V(g.message||"生成授权链接失败","error")}finally{T.value=!1}},C=()=>{h(),P.value="",O.value="",ge.value="",N.value="",E.value="",R.value=0,se.value="",X()},G=async()=>{if(!P.value){V("请先生成授权链接","warning");return}try{await navigator.clipboard.writeText(P.value),Y.value=!0,V("链接已复制","success"),setTimeout(()=>{Y.value=!1},2e3)}catch{const g=document.createElement("input");g.value=P.value,document.body.appendChild(g),g.select(),document.execCommand("copy"),document.body.removeChild(g),Y.value=!0,V("链接已复制","success"),setTimeout(()=>{Y.value=!1},2e3)}},K=async()=>{if(!ge.value){V("请先生成授权验证码","warning");return}try{await navigator.clipboard.writeText(ge.value),V("验证码已复制","success")}catch{const g=document.createElement("input");g.value=ge.value,document.body.appendChild(g),g.select(),document.execCommand("copy"),document.body.removeChild(g),V("验证码已复制","success")}},Ce=()=>{E.value?window.open(E.value,"_blank","noopener"):N.value&&window.open(N.value,"_blank","noopener")},ze=async()=>{var xe;if(W.value){k.value=!0;try{let g={};z.platform==="claude"?g={sessionId:se.value,callbackUrl:O.value.trim()}:z.platform==="gemini"||z.platform==="gemini-antigravity"?g={code:O.value.trim(),sessionId:se.value,oauthProvider:M.value}:z.platform==="openai"?g={code:O.value.trim(),sessionId:se.value}:z.platform==="droid"&&(g={sessionId:se.value}),(xe=z.proxy)!=null&&xe.enabled&&(g.proxy={type:z.proxy.type,host:z.proxy.host,port:parseInt(z.proxy.port),username:z.proxy.username||null,password:z.proxy.password||null});let a;if(z.platform==="claude")a=await _.exchangeClaudeCode(g);else if(z.platform==="gemini"||z.platform==="gemini-antigravity")a=await _.exchangeGeminiCode(g),a&&(a.oauthProvider=M.value);else if(z.platform==="openai")a=await _.exchangeOpenAICode(g);else if(z.platform==="droid"){const U=await _.exchangeDroidCode(g);if(!U.success){if(U.pending){const re=U.message||"授权尚未完成,请在浏览器确认后稍候再次尝试。";V(re,"info"),typeof U.expiresIn=="number"&&U.expiresIn>=0&&H(U.expiresIn);return}throw new Error(U.message||"授权失败,请重试")}a=U.data,h()}A("success",a)}catch(g){V(g.message||"授权失败,请检查授权码是否正确","error")}finally{k.value=!1}}};Fr(()=>{h()});const Ke=async()=>{var re;const xe=D.value.split(` -`).map(ne=>ne.trim()).filter(ne=>ne.length>0);if(xe.length===0){le.value="请输入至少一个 sessionKey";return}de.value=!0,le.value="",oe.value={current:0,total:xe.length};const g=(re=z.proxy)!=null&&re.enabled?{type:z.proxy.type,host:z.proxy.host,port:parseInt(z.proxy.port),username:z.proxy.username||null,password:z.proxy.password||null}:null,a=[],U=[];for(let ne=0;ne0?A("success",a):de.value=!1,U.length>0&&a.length===0?le.value="全部授权失败,请检查 sessionKey 是否有效":U.length>0&&(le.value=`${U.length} 个授权失败`)},Fe=()=>{D.value="",le.value="",de.value=!1,oe.value={current:0,total:0}},Qe=()=>{Fe(),P.value="",O.value="",se.value=""};return _e({resetCookieAuth:Fe}),(xe,g)=>(o(),n("div",yl,[F.platform==="claude"?(o(),n("div",ml,[e("div",xl,[e("div",fl,[g[29]||(g[29]=e("div",{class:"flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-lg bg-blue-500"},[e("i",{class:"fas fa-link text-white"})],-1)),e("div",bl,[g[28]||(g[28]=e("h4",{class:"mb-3 font-semibold text-blue-900 dark:text-blue-200"},"Claude 账户授权",-1)),e("div",vl,[g[10]||(g[10]=e("label",{class:"mb-2 block text-sm font-medium text-blue-800 dark:text-blue-300"}," 选择授权方式 ",-1)),e("div",kl,[e("label",hl,[b(e("input",{"onUpdate:modelValue":g[0]||(g[0]=a=>p.value=a),class:"text-blue-600 focus:ring-blue-500",name:"claude-auth-method",type:"radio",value:"manual",onChange:Qe},null,544),[[Ie,p.value]]),g[8]||(g[8]=e("span",{class:"text-sm text-blue-900 dark:text-blue-200"},"手动授权",-1))]),e("label",wl,[b(e("input",{"onUpdate:modelValue":g[1]||(g[1]=a=>p.value=a),class:"text-blue-600 focus:ring-blue-500",name:"claude-auth-method",type:"radio",value:"cookie",onChange:Qe},null,544),[[Ie,p.value]]),g[9]||(g[9]=e("span",{class:"text-sm text-blue-900 dark:text-blue-200"},"Cookie自动授权",-1))])])]),p.value==="cookie"?(o(),n("div",$l,[e("div",Al,[g[17]||(g[17]=e("p",{class:"mb-3 text-sm text-blue-700 dark:text-blue-300"}," 使用 claude.ai 的 sessionKey 自动完成 OAuth 授权流程,无需手动打开浏览器。 ",-1)),e("div",Cl,[e("label",Tl,[g[12]||(g[12]=e("i",{class:"fas fa-cookie text-blue-500"},null,-1)),g[13]||(g[13]=f(" sessionKey ",-1)),he.value>1?(o(),n("span",Il,u(he.value)+" 个 ",1)):m("",!0),e("button",{class:"text-blue-500 hover:text-blue-600",type:"button",onClick:g[2]||(g[2]=a=>ae.value=!ae.value)},g[11]||(g[11]=[e("i",{class:"fas fa-question-circle"},null,-1)]))]),b(e("textarea",{"onUpdate:modelValue":g[3]||(g[3]=a=>D.value=a),class:"form-input w-full resize-y font-mono text-sm",placeholder:`每行一个 sessionKey,例如: -sk-ant-sid01-xxxxx... -sk-ant-sid01-yyyyy...`,rows:"3"},null,512),[[j,D.value]]),he.value>1?(o(),n("p",Ul,[g[14]||(g[14]=e("i",{class:"fas fa-info-circle mr-1"},null,-1)),f(" 将批量创建 "+u(he.value)+" 个账户 ",1)])):m("",!0)]),ae.value?(o(),n("div",_l,g[15]||(g[15]=[Et('
如何获取 sessionKey
  1. 在浏览器中登录 claude.ai
  2. F12 打开开发者工具
  3. 切换到 Application(应用)标签页
  4. 在左侧找到 Cookieshttps://claude.ai
  5. 找到键为 sessionKey 的那一行
  6. 复制其 Value(值)列的内容

sessionKey 通常以 sk-ant-sid01- 开头

',3)]))):m("",!0),le.value?(o(),n("div",Kl,[e("p",Sl,[g[16]||(g[16]=e("i",{class:"fas fa-exclamation-circle mr-1"},null,-1)),f(" "+u(le.value),1)])])):m("",!0),e("button",{class:"btn btn-primary w-full px-4 py-3 text-base font-semibold",disabled:de.value||!D.value.trim(),type:"button",onClick:Ke},[de.value?(o(),n("div",Dl)):(o(),n("i",Pl)),de.value&&oe.value.total>1?(o(),n(ke,{key:2},[f(" 正在授权 "+u(oe.value.current)+"/"+u(oe.value.total)+"... ",1)],64)):de.value?(o(),n(ke,{key:3},[f(" 正在授权... ")],64)):(o(),n(ke,{key:4},[f(" 开始自动授权 ")],64))],8,Ml)])])):(o(),n("div",jl,[g[27]||(g[27]=e("p",{class:"mb-4 text-sm text-blue-800 dark:text-blue-300"}," 请按照以下步骤完成 Claude 账户的授权: ",-1)),e("div",Vl,[e("div",zl,[e("div",Ll,[g[20]||(g[20]=e("div",{class:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-full bg-blue-600 text-xs font-bold text-white"}," 1 ",-1)),e("div",Rl,[g[19]||(g[19]=e("p",{class:"mb-2 font-medium text-blue-900 dark:text-blue-200"}," 点击下方按钮生成授权链接 ",-1)),P.value?(o(),n("div",ql,[e("div",Wl,[e("input",{class:"form-input flex-1 bg-gray-50 font-mono text-xs dark:bg-gray-700",readonly:"",type:"text",value:P.value},null,8,Bl),e("button",{class:"rounded-lg bg-gray-100 px-3 py-2 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:hover:bg-gray-600",title:"复制链接",onClick:G},[e("i",{class:$(Y.value?"fas fa-check text-green-500":"fas fa-copy")},null,2)])]),e("button",{class:"text-xs text-blue-600 hover:text-blue-700",onClick:C},g[18]||(g[18]=[e("i",{class:"fas fa-sync-alt mr-1"},null,-1),f("重新生成 ",-1)]))])):(o(),n("button",{key:0,class:"btn btn-primary px-4 py-2 text-sm",disabled:T.value,onClick:X},[T.value?(o(),n("div",Nl)):(o(),n("i",El)),f(" "+u(T.value?"生成中...":"生成授权链接"),1)],8,Ol))])])]),g[26]||(g[26]=Et('
2

在浏览器中打开链接并完成授权

请在新标签页中打开授权链接,登录您的 Claude 账户并授权。

注意:如果您设置了代理,请确保浏览器也使用相同的代理访问授权页面。

',1)),e("div",Gl,[e("div",Fl,[g[25]||(g[25]=e("div",{class:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-full bg-blue-600 text-xs font-bold text-white"}," 3 ",-1)),e("div",Ql,[g[23]||(g[23]=e("p",{class:"mb-2 font-medium text-blue-900 dark:text-blue-200"}," 输入 Authorization Code ",-1)),g[24]||(g[24]=e("p",{class:"mb-3 text-sm text-blue-700 dark:text-blue-300"},[f(" 授权完成后,页面会显示一个 "),e("strong",null,"Authorization Code"),f(",请将其复制并粘贴到下方输入框: ")],-1)),e("div",Hl,[e("div",null,[g[21]||(g[21]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},[e("i",{class:"fas fa-key mr-2 text-blue-500"}),f("Authorization Code ")],-1)),b(e("textarea",{"onUpdate:modelValue":g[4]||(g[4]=a=>O.value=a),class:"form-input w-full resize-none font-mono text-sm",placeholder:"粘贴从Claude页面获取的Authorization Code...",rows:"3"},null,512),[[j,O.value]])]),g[22]||(g[22]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},[e("i",{class:"fas fa-info-circle mr-1"}),f(" 请粘贴从Claude页面复制的Authorization Code ")],-1))])])])])])]))])])])])):F.platform==="gemini"||F.platform==="gemini-antigravity"?(o(),n("div",Jl,[e("div",Yl,[e("div",Zl,[g[43]||(g[43]=e("div",{class:"flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-lg bg-green-500"},[e("i",{class:"fas fa-robot text-white"})],-1)),e("div",Xl,[g[41]||(g[41]=e("h4",{class:"mb-3 font-semibold text-green-900 dark:text-green-200"},"Gemini 账户授权",-1)),g[42]||(g[42]=e("p",{class:"mb-4 text-sm text-green-800 dark:text-green-300"}," 请按照以下步骤完成 Gemini 账户的授权: ",-1)),e("div",eo,[e("p",to,[g[30]||(g[30]=e("i",{class:"fas fa-info-circle mr-1"},null,-1)),g[31]||(g[31]=f(" 授权类型:",-1)),e("span",ao,u(F.platform==="gemini-antigravity"?"Antigravity OAuth":"Gemini CLI OAuth"),1)])]),e("div",ro,[e("div",so,[e("div",lo,[g[34]||(g[34]=e("div",{class:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-full bg-green-600 text-xs font-bold text-white"}," 1 ",-1)),e("div",oo,[g[33]||(g[33]=e("p",{class:"mb-2 font-medium text-green-900 dark:text-green-200"}," 点击下方按钮生成授权链接 ",-1)),P.value?(o(),n("div",po,[e("div",go,[e("input",{class:"form-input flex-1 bg-gray-50 font-mono text-xs dark:bg-gray-700",readonly:"",type:"text",value:P.value},null,8,co),e("button",{class:"rounded-lg bg-gray-100 px-3 py-2 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:hover:bg-gray-600",title:"复制链接",onClick:G},[e("i",{class:$(Y.value?"fas fa-check text-green-500":"fas fa-copy")},null,2)])]),e("button",{class:"text-xs text-green-600 hover:text-green-700",onClick:C},g[32]||(g[32]=[e("i",{class:"fas fa-sync-alt mr-1"},null,-1),f("重新生成 ",-1)]))])):(o(),n("button",{key:0,class:"btn btn-primary px-4 py-2 text-sm",disabled:T.value,onClick:X},[T.value?(o(),n("div",uo)):(o(),n("i",io)),f(" "+u(T.value?"生成中...":"生成授权链接"),1)],8,no))])])]),g[40]||(g[40]=Et('
2

在浏览器中打开链接并完成授权

请在新标签页中打开授权链接,登录您的 Gemini 账户并授权。

注意:如果您设置了代理,请确保浏览器也使用相同的代理访问授权页面。

',1)),e("div",yo,[e("div",mo,[g[39]||(g[39]=e("div",{class:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-full bg-green-600 text-xs font-bold text-white"}," 3 ",-1)),e("div",xo,[g[37]||(g[37]=e("p",{class:"mb-2 font-medium text-green-900 dark:text-green-200"}," 输入 Authorization Code ",-1)),g[38]||(g[38]=e("p",{class:"mb-3 text-sm text-green-700 dark:text-green-300"}," 授权完成后,页面会显示一个 Authorization Code,请将其复制并粘贴到下方输入框: ",-1)),e("div",fo,[e("div",null,[g[35]||(g[35]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},[e("i",{class:"fas fa-key mr-2 text-green-500"}),f("Authorization Code ")],-1)),b(e("textarea",{"onUpdate:modelValue":g[5]||(g[5]=a=>O.value=a),class:"form-input w-full resize-none font-mono text-sm",placeholder:"粘贴从Gemini页面获取的Authorization Code...",rows:"3"},null,512),[[j,O.value]])]),g[36]||(g[36]=e("div",{class:"mt-2 space-y-1"},[e("p",{class:"text-xs text-gray-600 dark:text-gray-400"},[e("i",{class:"fas fa-check-circle mr-1 text-green-500"}),f(" 请粘贴从Gemini页面复制的Authorization Code ")])],-1))])])])])])])])])])):F.platform==="openai"?(o(),n("div",bo,[e("div",vo,[e("div",ko,[g[55]||(g[55]=e("div",{class:"flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-lg bg-orange-500"},[e("i",{class:"fas fa-brain text-white"})],-1)),e("div",ho,[g[53]||(g[53]=e("h4",{class:"mb-3 font-semibold text-orange-900 dark:text-orange-200"},"OpenAI 账户授权",-1)),g[54]||(g[54]=e("p",{class:"mb-4 text-sm text-orange-800 dark:text-orange-300"}," 请按照以下步骤完成 OpenAI 账户的授权: ",-1)),e("div",wo,[e("div",$o,[e("div",Ao,[g[46]||(g[46]=e("div",{class:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-full bg-orange-600 text-xs font-bold text-white"}," 1 ",-1)),e("div",Co,[g[45]||(g[45]=e("p",{class:"mb-2 font-medium text-orange-900 dark:text-orange-200"}," 点击下方按钮生成授权链接 ",-1)),P.value?(o(),n("div",_o,[e("div",Ko,[e("input",{class:"form-input flex-1 bg-gray-50 font-mono text-xs dark:bg-gray-700",readonly:"",type:"text",value:P.value},null,8,So),e("button",{class:"rounded-lg bg-gray-100 px-3 py-2 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:hover:bg-gray-600",title:"复制链接",onClick:G},[e("i",{class:$(Y.value?"fas fa-check text-green-500":"fas fa-copy")},null,2)])]),e("button",{class:"text-xs text-orange-600 hover:text-orange-700",onClick:C},g[44]||(g[44]=[e("i",{class:"fas fa-sync-alt mr-1"},null,-1),f("重新生成 ",-1)]))])):(o(),n("button",{key:0,class:"btn btn-primary px-4 py-2 text-sm",disabled:T.value,onClick:X},[T.value?(o(),n("div",Uo)):(o(),n("i",Io)),f(" "+u(T.value?"生成中...":"生成授权链接"),1)],8,To))])])]),g[52]||(g[52]=Et('
2

在浏览器中打开链接并完成授权

请在新标签页中打开授权链接,登录您的 OpenAI 账户并授权。

重要提示:授权后页面可能会加载较长时间,请耐心等待。

当浏览器地址栏变为 http://localhost:1455/... 开头时,表示授权已完成。

注意:如果您设置了代理,请确保浏览器也使用相同的代理访问授权页面。

',1)),e("div",Mo,[e("div",Do,[g[51]||(g[51]=e("div",{class:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-full bg-orange-600 text-xs font-bold text-white"}," 3 ",-1)),e("div",Po,[g[49]||(g[49]=e("p",{class:"mb-2 font-medium text-orange-900 dark:text-orange-200"}," 输入授权链接或 Code ",-1)),g[50]||(g[50]=e("p",{class:"mb-3 text-sm text-orange-700 dark:text-orange-300"},[f(" 授权完成后,当页面地址变为 "),e("strong",{class:"font-mono"},"http://localhost:1455/..."),f(" 时: ")],-1)),e("div",jo,[e("div",null,[g[47]||(g[47]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},[e("i",{class:"fas fa-link mr-2 text-orange-500"}),f("授权链接或 Code ")],-1)),b(e("textarea",{"onUpdate:modelValue":g[6]||(g[6]=a=>O.value=a),class:"form-input w-full resize-none font-mono text-sm",placeholder:`方式1:复制完整的链接(http://localhost:1455/auth/callback?code=...) -方式2:仅复制 code 参数的值 -系统会自动识别并提取所需信息`,rows:"3"},null,512),[[j,O.value]])]),g[48]||(g[48]=Et('

提示:您可以直接复制整个链接或仅复制 code 参数值,系统会自动识别。

• 完整链接示例:http://localhost:1455/auth/callback?code=ac_4hm8...

• 仅 Code 示例:ac_4hm8iqmx9A2fzMy_cwye7U3W7...

',1))])])])])])])])])])):F.platform==="droid"?(o(),n("div",Vo,[e("div",zo,[e("div",Lo,[g[67]||(g[67]=e("div",{class:"flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-lg bg-cyan-500"},[e("i",{class:"fas fa-robot text-white"})],-1)),e("div",Ro,[g[65]||(g[65]=e("h4",{class:"mb-3 font-semibold text-cyan-900 dark:text-cyan-200"},"Droid 账户授权",-1)),g[66]||(g[66]=e("p",{class:"mb-4 text-sm text-cyan-800 dark:text-cyan-300"}," 请按照以下步骤完成 Factory (Droid) 账户的授权: ",-1)),e("div",Oo,[e("div",Eo,[e("div",No,[g[63]||(g[63]=e("div",{class:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-full bg-cyan-600 text-xs font-bold text-white"}," 1 ",-1)),e("div",qo,[g[62]||(g[62]=e("p",{class:"mb-2 font-medium text-cyan-900 dark:text-cyan-200"}," 点击下方按钮生成授权链接 ",-1)),P.value?(o(),n("div",Fo,[e("div",Qo,[g[58]||(g[58]=e("label",{class:"text-xs font-semibold text-gray-600 dark:text-gray-300"},"授权链接",-1)),e("div",Ho,[e("div",Jo,[e("input",{class:"form-input flex-1 bg-gray-50 font-mono text-xs dark:bg-gray-700",readonly:"",type:"text",value:P.value},null,8,Yo),e("button",{class:"rounded-lg bg-gray-100 px-3 py-2 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:hover:bg-gray-600",title:"复制链接",onClick:G},[e("i",{class:$(Y.value?"fas fa-check text-green-500":"fas fa-copy")},null,2)])]),e("div",{class:"flex flex-wrap items-center gap-2"},[e("button",{class:"inline-flex items-center gap-1 rounded-md border border-cyan-200 bg-white px-3 py-1.5 text-xs font-medium text-cyan-600 shadow-sm transition-colors hover:border-cyan-300 hover:bg-cyan-50 dark:border-cyan-700 dark:bg-cyan-900/40 dark:text-cyan-200 dark:hover:border-cyan-500 dark:hover:bg-cyan-900/60",onClick:Ce},g[56]||(g[56]=[e("i",{class:"fas fa-external-link-alt text-xs"},null,-1),f(" 在新标签中打开 ",-1)])),e("button",{class:"inline-flex items-center gap-1 rounded-md px-3 py-1.5 text-xs font-medium text-cyan-600 transition-colors hover:text-cyan-700 dark:text-cyan-300 dark:hover:text-cyan-200",onClick:C},g[57]||(g[57]=[e("i",{class:"fas fa-sync-alt text-xs"},null,-1),f("重新生成 ",-1)]))])])]),e("div",Zo,[g[60]||(g[60]=e("label",{class:"text-xs font-semibold text-gray-600 dark:text-gray-300"},"授权验证码",-1)),e("div",Xo,[e("span",en,u(ge.value||"------"),1),e("button",{class:"rounded-lg bg-white px-3 py-1 text-sm text-cyan-600 transition-colors hover:bg-cyan-100 dark:bg-cyan-800 dark:text-cyan-200 dark:hover:bg-cyan-700",onClick:K},g[59]||(g[59]=[e("i",{class:"fas fa-copy mr-1"},null,-1),f("复制 ",-1)]))])]),e("div",tn,[e("span",null,[g[61]||(g[61]=e("i",{class:"fas fa-hourglass-half mr-1 text-cyan-500"},null,-1)),f(" 剩余有效期:"+u(Q.value),1)])])])):(o(),n("button",{key:0,class:"btn btn-primary px-4 py-2 text-sm",disabled:T.value,onClick:X},[T.value?(o(),n("div",Go)):(o(),n("i",Bo)),f(" "+u(T.value?"生成中...":"生成授权链接"),1)],8,Wo))])])]),g[64]||(g[64]=Et('
2

在浏览器中打开链接并完成授权

在浏览器中打开授权页面,输入上方验证码并登录 Factory / Droid 账户,最后点击允许授权。

3

完成授权后点击下方“完成授权”按钮,系统会自动获取访问令牌。

若提示授权仍在等待确认,请稍候片刻后系统会自动重试。

',2))])])])])])):m("",!0),e("div",an,[e("button",{class:"flex-1 rounded-xl bg-gray-100 px-6 py-3 font-semibold text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700",type:"button",onClick:g[7]||(g[7]=a=>xe.$emit("back"))}," 上一步 "),F.platform==="claude"&&p.value==="cookie"?m("",!0):(o(),n("button",{key:0,class:"btn btn-primary flex-1 px-6 py-3 font-semibold",disabled:!W.value||k.value,type:"button",onClick:ze},[k.value?(o(),n("div",sn)):m("",!0),f(" "+u(k.value?"验证中...":"完成授权"),1)],8,rn))])]))}},on={key:0,class:"modal fixed inset-0 z-50 flex items-center justify-center p-3 sm:p-4"},nn={class:"modal-content custom-scrollbar mx-auto max-h-[90vh] w-full max-w-4xl overflow-y-auto p-4 sm:p-6 md:p-8"},dn={class:"mb-4 flex items-center justify-between sm:mb-6"},un={class:"mb-4 flex flex-wrap gap-2"},pn=["onClick"],gn={class:"ml-1 text-xs opacity-70"},cn={class:"space-y-4"},yn={key:0,class:"py-8 text-center"},mn={key:1,class:"rounded-lg bg-gray-50 py-8 text-center dark:bg-gray-800"},xn={key:2,class:"grid grid-cols-1 gap-4 md:grid-cols-2"},fn={class:"mb-3 flex items-start justify-between"},bn={class:"flex-1"},vn={class:"font-semibold text-gray-900"},kn={class:"mt-1 text-sm text-gray-500"},hn={class:"ml-4 flex items-center gap-2"},wn={class:"flex items-center justify-between text-sm text-gray-600"},$n={class:"flex items-center gap-4"},An={class:"flex items-center gap-2"},Cn=["onClick"],Tn=["disabled","onClick"],In={key:1,class:"modal fixed inset-0 z-50 flex items-center justify-center p-3 sm:p-4"},Un={class:"modal-content w-full max-w-lg p-4 sm:p-6"},_n={class:"space-y-4"},Kn={class:"rounded-lg bg-gray-100 px-3 py-2 text-sm text-gray-600"},Sn={class:"flex gap-3 pt-4"},Mn=["disabled"],Dn={key:0,class:"loading-spinner mr-2"},Pn={key:2,class:"modal fixed inset-0 z-50 flex items-center justify-center p-3 sm:p-4"},jn={class:"modal-content w-full max-w-lg p-4 sm:p-6"},Vn={class:"space-y-4"},zn={class:"flex flex-wrap gap-4"},Ln={class:"flex cursor-pointer items-center"},Rn={class:"flex cursor-pointer items-center"},On={class:"flex cursor-pointer items-center"},En={class:"flex cursor-pointer items-center"},Nn={class:"flex gap-3 pt-4"},qn=["disabled"],Wn={key:0,class:"loading-spinner mr-2"},jr={__name:"GroupManagementModal",emits:["close","refresh"],setup(F,{emit:_e}){const c=_e,z=v(!0),A=v(!1),_=v([]),T=v("all"),k=[{key:"all",label:"全部",color:"gray"},{key:"claude",label:"Claude",color:"purple"},{key:"gemini",label:"Gemini",color:"blue"},{key:"openai",label:"OpenAI",color:"gray"},{key:"droid",label:"Droid",color:"cyan"}],P=Z(()=>{const X={all:_.value.length};return k.slice(1).forEach(C=>{X[C.key]=_.value.filter(G=>G.platform===C.key).length}),X}),O=Z(()=>T.value==="all"?_.value:_.value.filter(X=>X.platform===T.value)),Y=v(!1),M=v(null),se=v(!1),ge=v(!1),N=v({name:"",platform:"claude",description:""}),E=v(!1),R=v(!1),y=v(null),p=v({name:"",platform:"",description:""}),D=async()=>{A.value=!0;try{const X=await sr();_.value=X.data||[]}catch{V("加载分组列表失败","error")}finally{A.value=!1}},de=async()=>{var X,C;if(!N.value.name||!N.value.platform){V("请填写必填项","error");return}ge.value=!0;try{await _s({name:N.value.name,platform:N.value.platform,description:N.value.description}),V("分组创建成功","success"),ae(),await D(),c("refresh")}catch(G){V(((C=(X=G.response)==null?void 0:X.data)==null?void 0:C.error)||"创建分组失败","error")}finally{ge.value=!1}},le=()=>{N.value.platform=T.value!=="all"?T.value:"claude",se.value=!0},ae=()=>{se.value=!1,N.value={name:"",platform:"claude",description:""}},oe=X=>{y.value=X,p.value={name:X.name,platform:X.platform,description:X.description||""},E.value=!0},he=async()=>{var X,C;if(!p.value.name){V("请填写分组名称","error");return}R.value=!0;try{await Us(y.value.id,{name:p.value.name,description:p.value.description}),V("分组更新成功","success"),W(),await D(),c("refresh")}catch(G){V(((C=(X=G.response)==null?void 0:X.data)==null?void 0:C.error)||"更新分组失败","error")}finally{R.value=!1}},W=()=>{E.value=!1,y.value=null,p.value={name:"",platform:"",description:""}},Q=X=>{if(X.memberCount>0){V("分组内还有成员,无法删除","error");return}M.value=X,Y.value=!0},H=async()=>{var X,C;if(M.value)try{await Ks(M.value.id),V("分组删除成功","success"),h(),await D(),c("refresh")}catch(G){V(((C=(X=G.response)==null?void 0:X.data)==null?void 0:C.error)||"删除分组失败","error")}},h=()=>{Y.value=!1,M.value=null};return ra(()=>{D()}),(X,C)=>{var G;return o(),Xe(Mt,{to:"body"},[z.value?(o(),n("div",on,[e("div",nn,[e("div",dn,[C[10]||(C[10]=e("div",{class:"flex items-center gap-2 sm:gap-3"},[e("div",{class:"flex h-8 w-8 items-center justify-center rounded-lg bg-gradient-to-br from-purple-500 to-purple-600 sm:h-10 sm:w-10 sm:rounded-xl"},[e("i",{class:"fas fa-layer-group text-sm text-white sm:text-base"})]),e("h3",{class:"text-lg font-bold text-gray-900 dark:text-gray-100 sm:text-xl"}," 账户分组管理 ")],-1)),e("button",{class:"p-1 text-gray-400 transition-colors hover:text-gray-600",onClick:C[0]||(C[0]=K=>X.$emit("close"))},C[9]||(C[9]=[e("i",{class:"fas fa-times text-lg sm:text-xl"},null,-1)]))]),e("div",un,[(o(),n(ke,null,Ne(k,K=>e("button",{key:K.key,class:$(["rounded-lg px-3 py-1.5 text-sm font-medium transition-all",T.value===K.key?K.key==="claude"?"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-300":K.key==="gemini"?"bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-300":K.key==="droid"?"bg-cyan-100 text-cyan-700 dark:bg-cyan-900/30 dark:text-cyan-300":"bg-gray-200 text-gray-700 dark:bg-gray-700 dark:text-gray-200":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-gray-800 dark:text-gray-400 dark:hover:bg-gray-700"]),onClick:Ce=>T.value=K.key},[f(u(K.label)+" ",1),e("span",gn,"("+u(P.value[K.key])+")",1)],10,pn)),64))]),e("div",{class:"mb-6"},[e("button",{class:"btn btn-primary px-4 py-2",onClick:le},C[11]||(C[11]=[e("i",{class:"fas fa-plus mr-2"},null,-1),f(" 创建新分组 ",-1)]))]),e("div",cn,[A.value?(o(),n("div",yn,C[12]||(C[12]=[e("div",{class:"loading-spinner-lg mx-auto mb-4"},null,-1),e("p",{class:"text-gray-500"},"加载中...",-1)]))):O.value.length===0?(o(),n("div",mn,C[13]||(C[13]=[e("i",{class:"fas fa-layer-group mb-4 text-4xl text-gray-300 dark:text-gray-600"},null,-1),e("p",{class:"text-gray-500 dark:text-gray-400"},"暂无分组",-1)]))):(o(),n("div",xn,[(o(!0),n(ke,null,Ne(O.value,K=>(o(),n("div",{key:K.id,class:"rounded-lg border bg-white p-4 transition-shadow hover:shadow-md"},[e("div",fn,[e("div",bn,[e("h4",vn,u(K.name),1),e("p",kn,u(K.description||"暂无描述"),1)]),e("div",hn,[e("span",{class:$(["rounded-full px-2 py-1 text-xs font-medium",K.platform==="claude"?"bg-purple-100 text-purple-700":K.platform==="gemini"?"bg-blue-100 text-blue-700":K.platform==="openai"?"bg-gray-100 text-gray-700":"bg-cyan-100 text-cyan-700"])},u(K.platform==="claude"?"Claude":K.platform==="gemini"?"Gemini":K.platform==="openai"?"OpenAI":"Droid"),3)])]),e("div",wn,[e("div",$n,[e("span",null,[C[14]||(C[14]=e("i",{class:"fas fa-users mr-1"},null,-1)),f(" "+u(K.memberCount||0)+" 个成员 ",1)]),e("span",null,[C[15]||(C[15]=e("i",{class:"fas fa-clock mr-1"},null,-1)),f(" "+u(Ye(Is)(K.createdAt)),1)])]),e("div",An,[e("button",{class:"text-blue-600 transition-colors hover:text-blue-800",title:"编辑",onClick:Ce=>oe(K)},C[16]||(C[16]=[e("i",{class:"fas fa-edit"},null,-1)]),8,Cn),e("button",{class:"text-red-600 transition-colors hover:text-red-800",disabled:K.memberCount>0,title:"删除",onClick:Ce=>Q(K)},C[17]||(C[17]=[e("i",{class:"fas fa-trash"},null,-1)]),8,Tn)])])]))),128))]))])])])):m("",!0),E.value?(o(),n("div",In,[e("div",Un,[e("div",{class:"mb-4 flex items-center justify-between"},[C[19]||(C[19]=e("h3",{class:"text-lg font-bold text-gray-900 dark:text-gray-100"},"编辑分组",-1)),e("button",{class:"text-gray-400 transition-colors hover:text-gray-600",onClick:W},C[18]||(C[18]=[e("i",{class:"fas fa-times"},null,-1)]))]),e("div",_n,[e("div",null,[C[20]||(C[20]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700"},"分组名称 *",-1)),b(e("input",{"onUpdate:modelValue":C[1]||(C[1]=K=>p.value.name=K),class:"form-input w-full",placeholder:"输入分组名称",type:"text"},null,512),[[j,p.value.name]])]),e("div",null,[C[22]||(C[22]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700"},"平台类型",-1)),e("div",Kn,[f(u(p.value.platform==="claude"?"Claude":p.value.platform==="gemini"?"Gemini":"OpenAI")+" ",1),C[21]||(C[21]=e("span",{class:"ml-2 text-xs text-gray-500"},"(不可修改)",-1))])]),e("div",null,[C[23]||(C[23]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700"},"描述 (可选)",-1)),b(e("textarea",{"onUpdate:modelValue":C[2]||(C[2]=K=>p.value.description=K),class:"form-input w-full resize-none",placeholder:"分组描述...",rows:"2"},null,512),[[j,p.value.description]])]),e("div",Sn,[e("button",{class:"btn btn-primary flex-1 px-4 py-2",disabled:!p.value.name||R.value,onClick:he},[R.value?(o(),n("div",Dn)):m("",!0),f(" "+u(R.value?"更新中...":"更新"),1)],8,Mn),e("button",{class:"btn btn-secondary flex-1 px-4 py-2",onClick:W},"取消")])])])])):m("",!0),se.value?(o(),n("div",Pn,[e("div",jn,[e("div",{class:"mb-4 flex items-center justify-between"},[C[25]||(C[25]=e("h3",{class:"text-lg font-bold text-gray-900 dark:text-gray-100"},"创建新分组",-1)),e("button",{class:"text-gray-400 transition-colors hover:text-gray-600 dark:hover:text-gray-300",onClick:ae},C[24]||(C[24]=[e("i",{class:"fas fa-times"},null,-1)]))]),e("div",Vn,[e("div",null,[C[26]||(C[26]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"分组名称 *",-1)),b(e("input",{"onUpdate:modelValue":C[3]||(C[3]=K=>N.value.name=K),class:"form-input w-full",placeholder:"输入分组名称",type:"text"},null,512),[[j,N.value.name]])]),e("div",null,[C[31]||(C[31]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"平台类型 *",-1)),e("div",zn,[e("label",Ln,[b(e("input",{"onUpdate:modelValue":C[4]||(C[4]=K=>N.value.platform=K),class:"mr-2",type:"radio",value:"claude"},null,512),[[Ie,N.value.platform]]),C[27]||(C[27]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"Claude",-1))]),e("label",Rn,[b(e("input",{"onUpdate:modelValue":C[5]||(C[5]=K=>N.value.platform=K),class:"mr-2",type:"radio",value:"gemini"},null,512),[[Ie,N.value.platform]]),C[28]||(C[28]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"Gemini",-1))]),e("label",On,[b(e("input",{"onUpdate:modelValue":C[6]||(C[6]=K=>N.value.platform=K),class:"mr-2",type:"radio",value:"openai"},null,512),[[Ie,N.value.platform]]),C[29]||(C[29]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"OpenAI",-1))]),e("label",En,[b(e("input",{"onUpdate:modelValue":C[7]||(C[7]=K=>N.value.platform=K),class:"mr-2",type:"radio",value:"droid"},null,512),[[Ie,N.value.platform]]),C[30]||(C[30]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"Droid",-1))])])]),e("div",null,[C[32]||(C[32]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"描述 (可选)",-1)),b(e("textarea",{"onUpdate:modelValue":C[8]||(C[8]=K=>N.value.description=K),class:"form-input w-full resize-none",placeholder:"分组描述...",rows:"2"},null,512),[[j,N.value.description]])]),e("div",Nn,[e("button",{class:"btn btn-primary flex-1 px-4 py-2",disabled:!N.value.name||!N.value.platform||ge.value,onClick:de},[ge.value?(o(),n("div",Wn)):m("",!0),f(" "+u(ge.value?"创建中...":"创建"),1)],8,qn),e("button",{class:"btn btn-secondary flex-1 px-4 py-2",onClick:ae},"取消")])])])])):m("",!0),Ve(Ja,{"cancel-text":"取消","confirm-text":"确认删除",message:`确定要删除分组 "${(G=M.value)==null?void 0:G.name}" 吗?此操作不可撤销。`,show:Y.value,title:"确认删除",type:"danger",onCancel:h,onConfirm:H},null,8,["message","show"])])}}},Bn={key:0,class:"modal fixed inset-0 z-[60] flex items-center justify-center p-3 sm:p-4"},Gn={class:"modal-content custom-scrollbar mx-auto max-h-[90vh] w-full max-w-4xl overflow-y-auto p-4 sm:p-6 md:p-8"},Fn={class:"mb-4 flex items-center justify-between sm:mb-6"},Qn={class:"flex items-center gap-2 sm:gap-3"},Hn={class:"text-xs text-gray-500 dark:text-gray-400 sm:text-sm"},Jn={class:"flex items-center gap-2"},Yn=["disabled"],Zn={key:0,class:"py-8 text-center"},Xn={key:1,class:"rounded-lg bg-gray-50 py-8 text-center dark:bg-gray-800"},ei={key:2},ti={class:"mb-4 space-y-3"},ai={class:"rounded-lg border border-gray-200 bg-white p-3 shadow-sm dark:border-gray-700 dark:bg-gray-800"},ri={class:"mb-3 flex flex-col gap-3 lg:flex-row lg:items-center lg:justify-between"},si={class:"flex items-center gap-2"},li={class:"flex gap-1"},oi={class:"flex flex-1 items-center gap-2 lg:max-w-md"},ni={class:"relative flex-1"},ii={class:"flex gap-1"},di={class:"flex flex-wrap items-center justify-between gap-2"},ui={class:"flex flex-wrap items-center gap-2"},pi=["disabled"],gi=["disabled"],ci=["disabled"],yi=["disabled"],mi={class:"flex items-center gap-2 rounded-md bg-purple-50 px-3 py-1.5 dark:bg-purple-900/20"},xi={class:"text-xs font-medium text-purple-700 dark:text-purple-300"},fi={class:"grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3"},bi={key:0,class:"absolute -left-2 -top-2 z-10"},vi=["title"],ki={class:"flex flex-col gap-3"},hi={class:"flex items-start justify-between gap-2"},wi=["title"],$i={class:"flex items-center gap-1"},Ai=["onClick"],Ci=["disabled","onClick"],Ti={key:0,class:"loading-spinner-sm"},Ii={key:1,class:"fas fa-redo"},Ui=["disabled","onClick"],_i={key:0,class:"loading-spinner-sm"},Ki={key:1,class:"fas fa-trash"},Si={class:"flex flex-wrap items-center gap-3 text-xs text-gray-600 dark:text-gray-400"},Mi={key:0},Di={key:0,class:"mt-4 flex items-center justify-between"},Pi={class:"text-sm text-gray-600 dark:text-gray-400"},ji={class:"flex items-center gap-2"},Vi=["disabled"],zi=["disabled"],Li={class:"px-3 py-1.5 text-sm font-medium text-gray-700 dark:text-gray-300"},Ri=["disabled"],Oi=["disabled"],Ei={__name:"ApiKeyManagementModal",props:{accountId:{type:String,required:!0},accountName:{type:String,default:""}},emits:["close","refresh"],setup(F,{emit:_e}){const c=F,z=_e,A=v(!0),_=v(!1),T=v(null),k=v(null),P=v([]),O=v(1),Y=v(15),M=v(!1),se=v("all"),ge=v(""),N=v("fuzzy"),E=v(!1),R=v(!1),y=v({title:"",message:"",type:"primary",confirmText:"确认",cancelText:"取消"}),p=v(null),D=(g,a,U="确认",re="取消",ne="primary")=>new Promise(Re=>{y.value={title:g,message:a,confirmText:U,cancelText:re,type:ne},p.value=Re,R.value=!0}),de=()=>{var g;R.value=!1,(g=p.value)==null||g.call(p,!0)},le=()=>{var g;R.value=!1,(g=p.value)==null||g.call(p,!1)},ae=g=>!g||g.length<12?g:`${g.substring(0,8)}...${g.substring(g.length-4)}`,oe=Z(()=>{let g=P.value;if(se.value!=="all"&&(g=g.filter(a=>a.status===se.value)),ge.value.trim()){const a=ge.value.trim();g=g.filter(U=>{const re=U.key;return N.value==="exact"?re===a:re.toLowerCase().includes(a.toLowerCase())})}return g}),he=Z(()=>oe.value.length),W=Z(()=>Math.ceil(he.value/Y.value)),Q=Z(()=>{const g=(O.value-1)*Y.value,a=g+Y.value;return oe.value.slice(g,a)}),H=Z(()=>P.value.filter(g=>g.status==="active").length),h=Z(()=>P.value.filter(g=>g.status==="error").length),X=async()=>{_.value=!0;try{const a=(await Ss(c.accountId)).data;let U=[];if(Array.isArray(a.apiKeys))U=a.apiKeys;else if(typeof a.apiKeys=="string")try{U=JSON.parse(a.apiKeys)}catch(ne){console.error("Failed to parse apiKeys:",ne)}const re=U.map(ne=>typeof ne=="string"?{key:ne,usageCount:0,status:"active",lastUsedAt:null,errorMessage:""}:typeof ne=="object"&&ne!==null?{key:ne.key||ne.apiKey||"",usageCount:ne.usageCount||ne.count||0,status:ne.status||"active",lastUsedAt:ne.lastUsedAt||ne.lastUsed||null,errorMessage:ne.errorMessage||""}:{key:String(ne),usageCount:0,status:"active",lastUsedAt:null,errorMessage:""});P.value=re.sort((ne,Re)=>ne.lastUsedAt&&Re.lastUsedAt?new Date(Re.lastUsedAt)-new Date(ne.lastUsedAt):ne.lastUsedAt&&!Re.lastUsedAt?-1:!ne.lastUsedAt&&Re.lastUsedAt?1:(Re.usageCount||0)-(ne.usageCount||0))}catch(g){console.error("Failed to load API keys:",g),V("加载 API Key 失败","error")}finally{_.value=!1,O.value=1}},C=async g=>{var a,U;if(await D("删除 API Key",`确定要删除 API Key "${ae(g.key)}" 吗?`,"删除","取消","danger")){T.value=g.key;try{const re={removeApiKeys:[g.key],apiKeyUpdateMode:"delete"};await ha(c.accountId,re),V("API Key 已删除","success"),await X(),z("refresh")}catch(re){console.error("Failed to delete API key:",re),V(((U=(a=re.response)==null?void 0:a.data)==null?void 0:U.error)||"删除 API Key 失败","error")}finally{T.value=null}}},G=async g=>{var a,U;if(await D("重置状态",`确定要重置 API Key "${ae(g.key)}" 的状态吗?这将清除错误信息并恢复为正常状态。`,"重置","取消","warning")){k.value=g.key;try{const re={apiKeys:[{key:g.key,status:"active",errorMessage:""}],apiKeyUpdateMode:"update"};await ha(c.accountId,re),V("API Key 状态已重置","success"),await X(),z("refresh")}catch(re){console.error("Failed to reset API key status:",re),V(((U=(a=re.response)==null?void 0:a.data)==null?void 0:U.error)||"重置 API Key 状态失败","error")}finally{k.value=null}}},K=async()=>{var a,U;const g=P.value.filter(re=>re.status==="error");if(g.length===0){V("没有异常状态的 API Key","warning");return}if(await D("删除异常 API Key",`确定要删除所有 ${g.length} 个异常状态的 API Key 吗?此操作不可恢复!`,"删除","取消","danger")){E.value=!0;try{const ne={removeApiKeys:g.map(Re=>Re.key),apiKeyUpdateMode:"delete"};await ha(c.accountId,ne),V(`成功删除 ${g.length} 个异常 API Key`,"success"),await X(),z("refresh")}catch(re){console.error("Failed to delete error API keys:",re),V(((U=(a=re.response)==null?void 0:a.data)==null?void 0:U.error)||"批量删除失败","error")}finally{E.value=!1}}},Ce=async()=>{var g,a;if(P.value.length===0){V("没有可删除的 API Key","warning");return}if(await D("删除全部 API Key",`确定要删除所有 ${P.value.length} 个 API Key 吗?此操作不可恢复! - -请再次确认:这将删除该账户下的所有 API Key。`,"删除","取消","danger")&&await D("最后确认","真的要删除所有 API Key 吗?","确认删除","取消","danger")){E.value=!0;try{const U=P.value.map(ne=>ne.key),re={removeApiKeys:U,apiKeyUpdateMode:"delete"};await ha(c.accountId,re),V(`成功删除所有 ${U.length} 个 API Key`,"success"),await X(),z("refresh")}catch(U){console.error("Failed to delete all API keys:",U),V(((a=(g=U.response)==null?void 0:g.data)==null?void 0:a.error)||"批量删除失败","error")}finally{E.value=!1}}},ze=g=>{let a=[],U="";if(g==="error"?(a=P.value.filter(st=>st.status==="error"),U=`error_api_keys_${c.accountName}_${new Date().toISOString().split("T")[0]}.txt`):(a=P.value,U=`all_api_keys_${c.accountName}_${new Date().toISOString().split("T")[0]}.txt`),a.length===0){V("没有可导出的 API Key","warning");return}const re=a.map(st=>st.key).join(` -`),ne=new Blob([re],{type:"text/plain;charset=utf-8"}),Re=URL.createObjectURL(ne),Oe=document.createElement("a");Oe.href=Re,Oe.download=U,document.body.appendChild(Oe),Oe.click(),document.body.removeChild(Oe),URL.revokeObjectURL(Re),V(`成功导出 ${a.length} 个 API Key`,"success")},Ke=async g=>{if(typeof navigator<"u"&&navigator.clipboard&&typeof navigator.clipboard.writeText=="function"&&(typeof window>"u"||window.isSecureContext!==!1)){await navigator.clipboard.writeText(g);return}if(typeof document>"u")throw new Error("clipboard unavailable");const U=document.createElement("textarea");U.value=g,U.setAttribute("readonly",""),U.style.position="fixed",U.style.opacity="0",U.style.pointerEvents="none",document.body.appendChild(U),U.select();try{const re=document.execCommand("copy");if(document.body.removeChild(U),!re)throw new Error("execCommand failed")}catch(re){throw document.body.removeChild(U),re}},Fe=async g=>{try{await Ke(g),V("API Key 已复制","success")}catch(a){console.error("Failed to copy:",a),V("复制失败,请手动复制","error")}},Qe=async()=>{if(!(!P.value.length||M.value)){M.value=!0;try{const g=P.value.map(a=>a.key).join(` -`);await Ke(g),V(`已复制 ${P.value.length} 条 API Key`,"success")}catch(g){console.error("Failed to copy all keys:",g),V("复制全部 API Key 失败,请手动复制","error")}finally{M.value=!1}}},xe=g=>{if(!g)return"-";try{return new Date(g).toLocaleString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"})}catch{return"-"}};return ra(()=>{X()}),(g,a)=>(o(),Xe(Mt,{to:"body"},[A.value?(o(),n("div",Bn,[e("div",Gn,[e("div",Fn,[e("div",Qn,[a[14]||(a[14]=e("div",{class:"flex h-8 w-8 items-center justify-center rounded-lg bg-gradient-to-br from-purple-500 to-purple-600 sm:h-10 sm:w-10 sm:rounded-xl"},[e("i",{class:"fas fa-key text-sm text-white sm:text-base"})],-1)),e("div",null,[a[13]||(a[13]=e("h3",{class:"text-lg font-bold text-gray-900 dark:text-gray-100 sm:text-xl"}," API Key 管理 ",-1)),e("p",Hn,u(F.accountName),1)])]),e("div",Jn,[e("button",{class:"flex items-center gap-2 rounded-lg border border-purple-200 bg-white/90 px-3 py-1.5 text-xs font-semibold text-purple-600 shadow-sm transition-all duration-200 hover:border-purple-300 hover:bg-purple-50 hover:text-purple-700 focus:outline-none focus:ring-2 focus:ring-purple-200 disabled:cursor-not-allowed disabled:opacity-60 dark:border-purple-600/60 dark:bg-purple-900/20 dark:text-purple-200 dark:hover:border-purple-500 dark:hover:bg-purple-900/40 dark:hover:text-purple-100 dark:focus:ring-purple-500/40 sm:text-sm",disabled:_.value||P.value.length===0||M.value,onClick:Qe},[e("i",{class:$(["text-sm sm:text-base",M.value?"fas fa-spinner fa-spin":"fas fa-clipboard-list"])},null,2),a[15]||(a[15]=e("span",null,"复制全部 Key",-1))],8,Yn),e("button",{class:"flex h-9 w-9 items-center justify-center rounded-full bg-gray-100 text-gray-400 transition-colors hover:text-gray-600 dark:bg-gray-800 dark:text-gray-400 dark:hover:text-gray-200 sm:h-10 sm:w-10",title:"关闭",onClick:a[0]||(a[0]=U=>g.$emit("close"))},a[16]||(a[16]=[e("i",{class:"fas fa-times text-base sm:text-lg"},null,-1)]))])]),_.value?(o(),n("div",Zn,a[17]||(a[17]=[e("div",{class:"loading-spinner-lg mx-auto mb-4"},null,-1),e("p",{class:"text-gray-500 dark:text-gray-400"},"加载中...",-1)]))):m("",!0),!_.value&&P.value.length===0?(o(),n("div",Xn,a[18]||(a[18]=[e("i",{class:"fas fa-key mb-4 text-4xl text-gray-300 dark:text-gray-600"},null,-1),e("p",{class:"text-gray-500 dark:text-gray-400"},"暂无 API Key",-1)]))):m("",!0),!_.value&&P.value.length>0?(o(),n("div",ei,[e("div",ti,[e("div",ai,[e("div",ri,[e("div",si,[a[21]||(a[21]=e("i",{class:"fas fa-filter text-gray-400 dark:text-gray-500"},null,-1)),a[22]||(a[22]=e("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"},"筛选:",-1)),e("div",li,[e("button",{class:$(["rounded-md px-3 py-1.5 text-xs font-medium transition-colors",se.value==="all"?"bg-purple-500 text-white shadow-sm":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-400 dark:hover:bg-gray-600"]),onClick:a[1]||(a[1]=U=>se.value="all")}," 全部 ("+u(P.value.length)+") ",3),e("button",{class:$(["rounded-md px-3 py-1.5 text-xs font-medium transition-colors",se.value==="active"?"bg-green-500 text-white shadow-sm":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-400 dark:hover:bg-gray-600"]),onClick:a[2]||(a[2]=U=>se.value="active")},[a[19]||(a[19]=e("i",{class:"fas fa-check-circle mr-1"},null,-1)),f(" 正常 ("+u(H.value)+") ",1)],2),e("button",{class:$(["rounded-md px-3 py-1.5 text-xs font-medium transition-colors",se.value==="error"?"bg-red-500 text-white shadow-sm":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-400 dark:hover:bg-gray-600"]),onClick:a[3]||(a[3]=U=>se.value="error")},[a[20]||(a[20]=e("i",{class:"fas fa-exclamation-triangle mr-1"},null,-1)),f(" 异常 ("+u(h.value)+") ",1)],2)])]),e("div",oi,[e("div",ni,[b(e("input",{"onUpdate:modelValue":a[4]||(a[4]=U=>ge.value=U),class:"w-full rounded-md border border-gray-300 bg-gray-50 py-2 pl-10 pr-3 text-sm text-gray-700 transition-colors placeholder:text-gray-400 focus:border-purple-500 focus:bg-white focus:outline-none focus:ring-2 focus:ring-purple-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-300 dark:placeholder:text-gray-500 dark:focus:border-purple-400 dark:focus:bg-gray-800",placeholder:"搜索 API Key...",type:"text"},null,512),[[j,ge.value]]),a[23]||(a[23]=e("i",{class:"fas fa-search absolute left-3 top-1/2 -translate-y-1/2 text-gray-400 dark:text-gray-500"},null,-1))]),e("div",ii,[e("button",{class:$(["rounded-md px-2.5 py-2 text-xs font-medium transition-colors",N.value==="fuzzy"?"bg-purple-500 text-white shadow-sm":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-400 dark:hover:bg-gray-600"]),title:"模糊搜索:包含查询字符串即可",onClick:a[5]||(a[5]=U=>N.value="fuzzy")},a[24]||(a[24]=[e("i",{class:"fas fa-search mr-1"},null,-1),f(" 模糊 ",-1)]),2),e("button",{class:$(["rounded-md px-2.5 py-2 text-xs font-medium transition-colors",N.value==="exact"?"bg-purple-500 text-white shadow-sm":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-400 dark:hover:bg-gray-600"]),title:"精确搜索:完全匹配完整 Key",onClick:a[6]||(a[6]=U=>N.value="exact")},a[25]||(a[25]=[e("i",{class:"fas fa-equals mr-1"},null,-1),f(" 精确 ",-1)]),2)])])]),a[35]||(a[35]=e("div",{class:"my-3 border-t border-gray-200 dark:border-gray-700"},null,-1)),e("div",di,[e("div",ui,[a[30]||(a[30]=e("span",{class:"text-xs font-medium text-gray-500 dark:text-gray-400"},"批量操作:",-1)),e("button",{class:"group rounded-md bg-gradient-to-r from-red-500 to-red-600 px-3 py-1.5 text-xs font-medium text-white shadow-sm transition-all hover:from-red-600 hover:to-red-700 hover:shadow disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:shadow-sm",disabled:h.value===0||E.value,title:"删除所有异常状态的 API Key",onClick:K},a[26]||(a[26]=[e("i",{class:"fas fa-trash-alt mr-1"},null,-1),f(" 删除异常 ",-1)]),8,pi),e("button",{class:"group rounded-md bg-gradient-to-r from-red-600 to-red-700 px-3 py-1.5 text-xs font-medium text-white shadow-sm transition-all hover:from-red-700 hover:to-red-800 hover:shadow disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:shadow-sm",disabled:P.value.length===0||E.value,title:"删除所有 API Key",onClick:Ce},a[27]||(a[27]=[e("i",{class:"fas fa-trash mr-1"},null,-1),f(" 删除全部 ",-1)]),8,gi),a[31]||(a[31]=e("div",{class:"mx-1 h-5 w-px bg-gray-300 dark:bg-gray-600"},null,-1)),e("button",{class:"rounded-md bg-gradient-to-r from-blue-500 to-blue-600 px-3 py-1.5 text-xs font-medium text-white shadow-sm transition-all hover:from-blue-600 hover:to-blue-700 hover:shadow disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:shadow-sm",disabled:h.value===0,title:"导出所有异常状态的 API Key",onClick:a[7]||(a[7]=U=>ze("error"))},a[28]||(a[28]=[e("i",{class:"fas fa-download mr-1"},null,-1),f(" 导出异常 ",-1)]),8,ci),e("button",{class:"rounded-md bg-gradient-to-r from-blue-600 to-blue-700 px-3 py-1.5 text-xs font-medium text-white shadow-sm transition-all hover:from-blue-700 hover:to-blue-800 hover:shadow disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:shadow-sm",disabled:P.value.length===0,title:"导出所有 API Key",onClick:a[8]||(a[8]=U=>ze("all"))},a[29]||(a[29]=[e("i",{class:"fas fa-file-export mr-1"},null,-1),f(" 导出全部 ",-1)]),8,yi)]),e("div",mi,[a[34]||(a[34]=e("i",{class:"fas fa-info-circle text-purple-500 dark:text-purple-400"},null,-1)),e("span",xi,[a[32]||(a[32]=f(" 显示 ",-1)),e("strong",null,u(oe.value.length),1),a[33]||(a[33]=f(" 个 ",-1))])])])])]),e("div",fi,[(o(!0),n(ke,null,Ne(Q.value,(U,re)=>(o(),n("div",{key:re,class:"relative rounded-lg border border-gray-200 bg-white p-4 transition-all hover:shadow-md dark:border-gray-700 dark:bg-gray-800"},[(U.status==="error"||U.status==="disabled")&&U.errorMessage?(o(),n("div",bi,[e("span",{class:$(["inline-flex items-center justify-center rounded-full px-2 py-0.5 text-[10px] font-semibold shadow-sm",[U.status==="error"?"bg-red-100 text-red-700 dark:bg-red-900/30 dark:text-red-400":"bg-yellow-100 text-yellow-700 dark:bg-yellow-900/30 dark:text-yellow-400"]]),title:`错误状态码: ${U.errorMessage}`},u(U.errorMessage),11,vi)])):m("",!0),e("div",ki,[e("div",hi,[e("span",{class:"flex-1 break-all font-mono text-xs font-medium text-gray-900 dark:text-gray-100",title:U.key},u(ae(U.key)),9,wi),e("div",$i,[e("button",{class:"text-xs text-gray-500 transition-colors hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200",title:"复制 API Key",onClick:ne=>Fe(U.key)},a[36]||(a[36]=[e("i",{class:"fas fa-copy"},null,-1)]),8,Ai),U.status==="error"||U.status==="disabled"?(o(),n("button",{key:0,class:$(["text-xs transition-colors disabled:cursor-not-allowed disabled:opacity-50",[U.status==="error"?"text-orange-500 hover:text-orange-700 dark:text-orange-400 dark:hover:text-orange-300":"text-yellow-500 hover:text-yellow-700 dark:text-yellow-400 dark:hover:text-yellow-300"]]),disabled:k.value===U.key,title:"重置状态",onClick:ne=>G(U)},[k.value===U.key?(o(),n("div",Ti)):(o(),n("i",Ii))],10,Ci)):m("",!0),e("button",{class:"text-xs text-red-500 transition-colors hover:text-red-700 disabled:cursor-not-allowed disabled:opacity-50 dark:text-red-400 dark:hover:text-red-600",disabled:T.value===U.key,onClick:ne=>C(U)},[T.value===U.key?(o(),n("div",_i)):(o(),n("i",Ki))],8,Ui)])]),e("div",Si,[e("div",null,[e("span",{class:$([U.status==="active"?"text-green-600 dark:text-green-400":U.status==="error"?"text-red-600 dark:text-red-400":"text-yellow-600 dark:text-yellow-400"])},[e("i",{class:$(["mr-1",[U.status==="active"?"fas fa-check-circle":U.status==="error"?"fas fa-exclamation-triangle":"fas fa-exclamation-circle"]])},null,2),f(" "+u(U.status==="active"?"正常":U.status==="error"?"异常":U.status==="disabled"?"禁用":U.status||"未知"),1)],2)]),e("div",null,[e("span",null,[a[37]||(a[37]=f("使用: ",-1)),e("strong",null,u(U.usageCount||0),1),a[38]||(a[38]=f("次",-1))])]),U.lastUsedAt?(o(),n("div",Mi,[e("span",null,u(xe(U.lastUsedAt)),1)])):m("",!0)])])]))),128))]),W.value>1?(o(),n("div",Di,[e("div",Pi," 显示 "+u((O.value-1)*Y.value+1)+"-"+u(Math.min(O.value*Y.value,he.value))+" 项,共 "+u(he.value)+" 项 ",1),e("div",ji,[e("button",{class:"rounded-lg bg-gray-100 px-3 py-1.5 text-sm font-medium text-gray-700 transition-colors hover:bg-gray-200 disabled:cursor-not-allowed disabled:opacity-50 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",disabled:O.value===1,onClick:a[9]||(a[9]=U=>O.value=1)},a[39]||(a[39]=[e("i",{class:"fas fa-angle-double-left"},null,-1)]),8,Vi),e("button",{class:"rounded-lg bg-gray-100 px-3 py-1.5 text-sm font-medium text-gray-700 transition-colors hover:bg-gray-200 disabled:cursor-not-allowed disabled:opacity-50 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",disabled:O.value===1,onClick:a[10]||(a[10]=U=>O.value--)},a[40]||(a[40]=[e("i",{class:"fas fa-angle-left"},null,-1)]),8,zi),e("span",Li,u(O.value)+" / "+u(W.value),1),e("button",{class:"rounded-lg bg-gray-100 px-3 py-1.5 text-sm font-medium text-gray-700 transition-colors hover:bg-gray-200 disabled:cursor-not-allowed disabled:opacity-50 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",disabled:O.value===W.value,onClick:a[11]||(a[11]=U=>O.value++)},a[41]||(a[41]=[e("i",{class:"fas fa-angle-right"},null,-1)]),8,Ri),e("button",{class:"rounded-lg bg-gray-100 px-3 py-1.5 text-sm font-medium text-gray-700 transition-colors hover:bg-gray-200 disabled:cursor-not-allowed disabled:opacity-50 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",disabled:O.value===W.value,onClick:a[12]||(a[12]=U=>O.value=W.value)},a[42]||(a[42]=[e("i",{class:"fas fa-angle-double-right"},null,-1)]),8,Oi)])])):m("",!0)])):m("",!0)])])):m("",!0),Ve(Ja,{"cancel-text":y.value.cancelText,"confirm-text":y.value.confirmText,message:y.value.message,show:R.value,title:y.value.title,type:y.value.type,onCancel:le,onConfirm:de},null,8,["cancel-text","confirm-text","message","show","title","type"])]))}},Ni={key:0,class:"modal fixed inset-0 z-50 flex items-center justify-center p-3 sm:p-4"},qi={class:"modal-content custom-scrollbar mx-auto max-h-[90vh] w-full max-w-2xl overflow-y-auto p-4 sm:p-6 md:p-8"},Wi={class:"mb-4 flex items-center justify-between sm:mb-6"},Bi={class:"flex items-center gap-2 sm:gap-3"},Gi={class:"text-lg font-bold text-gray-900 dark:text-gray-100 sm:text-xl"},Fi={key:0,class:"mb-4 flex items-center justify-center sm:mb-8"},Qi={class:"flex items-center space-x-2 sm:space-x-4"},Hi={class:"flex items-center"},Ji={class:"flex items-center"},Yi={key:1},Zi={class:"space-y-6"},Xi={key:0},ed={class:"space-y-3"},td={class:"grid grid-cols-2 gap-2 sm:grid-cols-4"},ad={class:"p-3"},rd={class:"flex items-center justify-between"},sd={key:0,class:"flex h-5 w-5 items-center justify-center rounded-full bg-indigo-500"},ld={class:"p-3"},od={class:"flex items-center justify-between"},nd={key:0,class:"flex h-5 w-5 items-center justify-center rounded-full bg-emerald-500"},id={class:"p-3"},dd={class:"flex items-center justify-between"},ud={key:0,class:"flex h-5 w-5 items-center justify-center rounded-full bg-blue-500"},pd={class:"p-3"},gd={class:"flex items-center justify-between"},cd={key:0,class:"flex h-5 w-5 items-center justify-center rounded-full bg-rose-500"},yd={key:0,class:"animate-fadeIn rounded-lg border border-gray-200 bg-gray-50 p-3 dark:border-gray-700 dark:bg-gray-800/50"},md={class:"grid grid-cols-2 gap-2 sm:grid-cols-3"},xd={key:0,class:"absolute right-1 top-1 flex h-4 w-4 items-center justify-center rounded-full bg-indigo-500"},fd={key:0,class:"absolute right-1 top-1 flex h-4 w-4 items-center justify-center rounded-full bg-purple-500"},bd={key:0,class:"absolute right-1 top-1 flex h-4 w-4 items-center justify-center rounded-full bg-orange-500"},vd={key:0,class:"absolute right-1 top-1 flex h-4 w-4 items-center justify-center rounded-full bg-cyan-500"},kd={key:0,class:"absolute right-1 top-1 flex h-4 w-4 items-center justify-center rounded-full bg-emerald-500"},hd={key:0,class:"absolute right-1 top-1 flex h-4 w-4 items-center justify-center rounded-full bg-teal-500"},wd={key:0,class:"absolute right-1 top-1 flex h-4 w-4 items-center justify-center rounded-full bg-blue-500"},$d={key:0,class:"absolute right-1 top-1 flex h-4 w-4 items-center justify-center rounded-full bg-blue-500"},Ad={key:0,class:"absolute right-1 top-1 flex h-4 w-4 items-center justify-center rounded-full bg-purple-500"},Cd={key:0,class:"absolute right-1 top-1 flex h-4 w-4 items-center justify-center rounded-full bg-amber-500"},Td={key:0,class:"absolute right-1 top-1 flex h-4 w-4 items-center justify-center rounded-full bg-rose-500"},Id={key:1},Ud={class:"flex flex-wrap gap-4"},_d={class:"flex cursor-pointer items-center"},Kd={class:"text-sm text-gray-700 dark:text-gray-300"},Sd={key:0},Md={key:0,class:"flex cursor-pointer items-center"},Dd={class:"flex cursor-pointer items-center"},Pd={key:1,class:"flex cursor-pointer items-center"},jd={key:0,class:"mt-1 text-xs text-red-500"},Vd={class:"flex gap-4"},zd={class:"flex cursor-pointer items-center"},Ld={class:"flex cursor-pointer items-center"},Rd={class:"flex cursor-pointer items-center"},Od={key:2},Ed={class:"rounded-lg border border-gray-200 bg-gray-50 p-3 dark:border-gray-700 dark:bg-gray-800"},Nd={key:0,class:"mt-3"},qd=["min"],Wd={key:1,class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},Bd={key:2,class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},Gd={key:3},Fd={class:"flex gap-2"},Qd={class:"flex-1"},Hd={class:"max-h-48 space-y-2 overflow-y-auto rounded-md border p-3 dark:border-gray-600 dark:bg-gray-700"},Jd={key:0,class:"text-sm text-gray-500 dark:text-gray-400"},Yd=["value"],Zd={class:"text-sm text-gray-700 dark:text-gray-200"},Xd={key:4},e0={key:5,class:"space-y-4"},t0={key:0,class:"flex gap-4"},a0={class:"flex cursor-pointer items-center"},r0={class:"flex cursor-pointer items-center"},s0={key:1,class:"flex gap-4"},l0={class:"flex items-center opacity-60"},o0={class:"flex items-center opacity-60"},n0={class:"mt-2 rounded-lg border border-blue-200 bg-blue-50 p-3 dark:border-blue-700 dark:bg-blue-900/30"},i0={class:"flex items-start gap-2"},d0={class:"text-xs text-blue-700 dark:text-blue-300"},u0={key:0,class:"font-medium"},p0={key:1,class:"font-medium"},g0={key:2,class:"mt-1 text-xs italic"},c0={key:0},y0={class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},m0=["placeholder","required"],x0={key:0,class:"mt-1 text-xs text-red-500"},f0={key:1,class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},b0={class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},v0=["placeholder","required"],k0={key:0,class:"mt-1 text-xs text-red-500"},h0={key:1,class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},w0=["placeholder"],$0={key:1},A0={class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},C0=["placeholder","required"],T0={key:0,class:"mt-1 text-xs text-red-500"},I0={key:1,class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},U0={key:0,class:"mt-1 text-xs text-red-500"},_0={key:6,class:"space-y-4"},K0={key:0,class:"mt-1 text-xs text-red-500"},S0={key:0,class:"mt-1 text-xs text-red-500"},M0={key:0,class:"mt-1 text-xs text-red-500"},D0={class:"flex flex-wrap gap-2"},P0=["value"],j0={class:"text-sm text-gray-700 dark:text-gray-300"},V0={key:7},z0={class:"mb-3"},L0={class:"inline-flex cursor-pointer items-center"},R0={key:0},O0={key:8,class:"space-y-4"},E0={key:0,class:"mt-1 text-xs text-red-500"},N0={key:0,class:"mt-1 text-xs text-red-500"},q0={class:"grid grid-cols-2 gap-4"},W0={class:"mb-4 flex gap-2"},B0={key:0},G0={class:"mb-3 grid grid-cols-2 gap-2"},F0=["value"],Q0={class:"text-sm font-medium text-gray-700 dark:text-gray-300"},H0={class:"text-xs text-gray-500 dark:text-gray-400"},J0={key:0},Y0={key:1},Z0={class:"mb-3 space-y-2"},X0=["onUpdate:modelValue"],eu=["onUpdate:modelValue"],tu=["onClick"],au={class:"mt-3 flex flex-wrap gap-2"},ru={class:"mb-3"},su={class:"inline-flex cursor-pointer items-center"},lu={key:0},ou={key:0},nu={class:"inline-flex cursor-pointer items-center"},iu={key:9,class:"space-y-4"},du={class:"relative"},uu=["type"],pu={key:10,class:"space-y-4"},gu={key:0,class:"mt-1 text-xs text-red-500 dark:text-red-400"},cu={class:"relative"},yu=["type"],mu={key:11},xu={class:"flex gap-4"},fu={class:"flex cursor-pointer items-center"},bu={class:"flex cursor-pointer items-center"},vu={key:12,class:"mt-4"},ku={class:"flex items-start"},hu={key:13,class:"mt-4"},wu={class:"flex items-start"},$u={key:14,class:"mt-4"},Au={class:"flex items-start"},Cu={key:15,class:"mt-4"},Tu={class:"flex items-start"},Iu={class:"ml-3"},Uu={key:0,class:"mt-1"},_u={class:"flex items-center justify-between"},Ku={class:"text-xs text-green-600 dark:text-green-400"},Su=["disabled"],Mu={key:0,class:"fas fa-trash-alt mr-1"},Du={key:1,class:"loading-spinner mr-1"},Pu={key:1,class:"mt-1"},ju={key:16,class:"mt-4"},Vu={class:"flex items-start"},zu={class:"ml-3 flex-1"},Lu={key:0,class:"mt-3"},Ru={class:"rounded-lg border border-gray-200 bg-gray-50 p-3 dark:border-gray-700 dark:bg-gray-800/50"},Ou={class:"flex items-center gap-2"},Eu={class:"block w-full select-all break-all rounded bg-gray-100 px-3 py-2 font-mono text-xs text-gray-700 dark:bg-gray-900 dark:text-gray-300"},Nu={class:"text-blue-600 dark:text-blue-400"},qu={class:"text-gray-500 dark:text-gray-500"},Wu={class:"text-blue-600 dark:text-blue-400"},Bu={key:17,class:"space-y-4 rounded-lg border border-blue-200 bg-blue-50 p-4"},Gu={class:"mb-4 flex items-start gap-3"},Fu={key:0,class:"mb-2 text-sm text-blue-800 dark:text-blue-300"},Qu={key:1,class:"mb-2 text-sm text-blue-800 dark:text-blue-300"},Hu={key:2,class:"mb-2 text-sm text-blue-800 dark:text-blue-300"},Ju={key:3,class:"mb-2 text-sm text-blue-800 dark:text-blue-300"},Yu={class:"mb-2 mt-2 rounded-lg border border-blue-300 bg-white/80 p-3 dark:border-blue-600 dark:bg-gray-800/80"},Zu={key:0,class:"text-xs text-blue-800 dark:text-blue-300"},Xu={key:1,class:"text-xs text-blue-800 dark:text-blue-300"},ep={key:2,class:"text-xs text-blue-800 dark:text-blue-300"},tp={key:3,class:"text-xs text-blue-800 dark:text-blue-300"},ap={key:4,class:"text-xs text-blue-600 dark:text-blue-400"},rp={key:5,class:"text-xs text-red-600 dark:text-red-400"},sp={key:0},lp={key:1},op={key:0,class:"mt-1 text-xs text-red-500"},np={key:2},ip={key:0,class:"mt-1 text-xs text-red-500"},dp={class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},up={key:3},pp={key:4},gp={key:18,class:"space-y-4 rounded-lg border border-purple-200 bg-purple-50 p-4 dark:border-purple-700 dark:bg-purple-900/30"},cp={key:0,class:"mt-1 text-xs text-red-500"},yp={class:"flex gap-3 pt-4"},mp=["disabled"],xp=["disabled"],fp={key:0,class:"loading-spinner mr-2"},bp={key:3,class:"space-y-6"},vp={key:0},kp={class:"rounded-lg border border-blue-200 bg-blue-50 p-6 dark:border-blue-700 dark:bg-blue-900/30"},hp={class:"flex items-start gap-4"},wp={class:"flex-1"},$p={class:"mb-4"},Ap={class:"flex flex-wrap gap-4"},Cp={class:"flex cursor-pointer items-center"},Tp={class:"flex cursor-pointer items-center"},Ip={key:0,class:"space-y-4"},Up={class:"rounded-lg border border-blue-300 bg-white/80 p-4 dark:border-blue-600 dark:bg-gray-800/80"},_p={class:"flex items-start gap-3"},Kp={class:"flex-1"},Sp=["disabled"],Mp={key:0,class:"fas fa-link mr-2"},Dp={key:1,class:"loading-spinner mr-2"},Pp={key:1,class:"space-y-3"},jp={class:"flex items-center gap-2"},Vp=["value"],zp={class:"rounded-lg border border-blue-300 bg-white/80 p-4 dark:border-blue-600 dark:bg-gray-800/80"},Lp={class:"flex items-start gap-3"},Rp={class:"flex-1"},Op={class:"space-y-3"},Ep={key:1,class:"space-y-4"},Np={class:"rounded-lg border border-blue-300 bg-white/80 p-4 dark:border-blue-600 dark:bg-gray-800/80"},qp={class:"space-y-4"},Wp={class:"mb-2 flex items-center gap-2 text-sm font-semibold text-gray-700 dark:text-gray-300"},Bp={key:0,class:"rounded-full bg-blue-500 px-2 py-0.5 text-xs text-white"},Gp={key:0,class:"mt-1 text-xs text-blue-600 dark:text-blue-400"},Fp={key:1,class:"mt-1 text-xs text-red-500"},Qp={key:0,class:"mt-3 rounded border border-gray-200 bg-gray-50 p-3 dark:border-gray-600 dark:bg-gray-700"},Hp=["disabled"],Jp={key:0,class:"loading-spinner mr-2"},Yp={key:1,class:"fas fa-magic mr-2"},Zp={class:"flex gap-3 pt-4"},Xp=["disabled"],eg={key:0,class:"loading-spinner mr-2"},tg={key:4,class:"space-y-6"},ag={class:"flex gap-4"},rg={class:"flex cursor-pointer items-center"},sg={class:"flex cursor-pointer items-center"},lg={class:"flex cursor-pointer items-center"},og={key:0},ng={class:"rounded-lg border border-gray-200 bg-gray-50 p-3 dark:border-gray-700 dark:bg-gray-800"},ig={key:0,class:"mt-3"},dg=["min"],ug={key:1,class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},pg={key:2,class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},gg={key:1},cg={class:"flex gap-2"},yg={class:"flex-1"},mg={class:"max-h-48 space-y-2 overflow-y-auto rounded-md border p-3 dark:border-gray-600 dark:bg-gray-700"},xg={key:0,class:"text-sm text-gray-500 dark:text-gray-400"},fg=["value"],bg={class:"text-sm text-gray-700 dark:text-gray-200"},vg={key:2},kg={key:3},hg={class:"flex gap-4"},wg={class:"flex cursor-pointer items-center"},$g={class:"flex cursor-pointer items-center"},Ag={key:4,class:"mt-4"},Cg={class:"flex items-start"},Tg={key:5,class:"mt-4"},Ig={class:"flex items-start"},Ug={key:6,class:"mt-4"},_g={class:"flex items-start"},Kg={key:7,class:"mt-4"},Sg={class:"flex items-start"},Mg={class:"ml-3"},Dg={key:0,class:"mt-1"},Pg={class:"flex items-center justify-between"},jg={class:"text-xs text-green-600 dark:text-green-400"},Vg=["disabled"],zg={key:0,class:"fas fa-trash-alt mr-1"},Lg={key:1,class:"loading-spinner mr-1"},Rg={key:1,class:"mt-1"},Og={key:8,class:"mt-4"},Eg={class:"flex items-start"},Ng={class:"ml-3 flex-1"},qg={key:0,class:"mt-3"},Wg={class:"rounded-lg border border-gray-200 bg-gray-50 p-3 dark:border-gray-700 dark:bg-gray-800/50"},Bg={class:"flex items-center gap-2"},Gg={class:"block w-full select-all break-all rounded bg-gray-100 px-3 py-2 font-mono text-xs text-gray-700 dark:bg-gray-900 dark:text-gray-300"},Fg={class:"text-blue-600 dark:text-blue-400"},Qg={class:"text-gray-500 dark:text-gray-500"},Hg={class:"text-blue-600 dark:text-blue-400"},Jg={key:9,class:"space-y-4"},Yg={class:"grid grid-cols-2 gap-4"},Zg={key:0,class:"rounded-lg bg-gray-50 p-4 dark:bg-gray-800"},Xg={class:"mb-2 flex items-center justify-between"},ec={class:"text-sm text-gray-500 dark:text-gray-400"},tc={class:"relative h-2 w-full rounded-full bg-gray-200 dark:bg-gray-700"},ac={class:"mt-2 flex items-center justify-between text-xs"},rc={class:"text-gray-500 dark:text-gray-400"},sc={class:"text-gray-500 dark:text-gray-400"},lc={class:"mb-4 flex gap-2"},oc={key:0},nc={class:"mb-3 grid grid-cols-2 gap-2"},ic=["value"],dc={class:"text-sm font-medium text-gray-700 dark:text-gray-300"},uc={class:"text-xs text-gray-500 dark:text-gray-400"},pc={key:0},gc={key:1},cc={class:"mb-3 space-y-2"},yc=["onUpdate:modelValue"],mc=["onUpdate:modelValue"],xc=["onClick"],fc={class:"mt-3 flex flex-wrap gap-2"},bc={class:"mb-3"},vc={class:"inline-flex cursor-pointer items-center"},kc={key:0},hc={key:1},wc={class:"inline-flex cursor-pointer items-center"},$c={key:10,class:"space-y-4"},Ac={class:"relative"},Cc=["type"],Tc={class:"grid grid-cols-2 gap-4"},Ic={key:11,class:"space-y-4"},Uc={key:0,class:"mt-1 text-xs text-red-500 dark:text-red-400"},_c={class:"relative"},Kc=["type"],Sc={key:12,class:"space-y-4"},Mc={class:"mb-3"},Dc={class:"inline-flex cursor-pointer items-center"},Pc={key:0},jc={key:13,class:"space-y-4"},Vc={key:0,class:"mt-1 text-xs text-red-500"},zc={key:0,class:"mt-1 text-xs text-red-500"},Lc={key:0,class:"mt-1 text-xs text-red-500"},Rc={class:"flex flex-wrap gap-2"},Oc=["value"],Ec={class:"text-sm text-gray-700 dark:text-gray-300"},Nc={key:14,class:"rounded-lg border border-purple-200 bg-purple-50 p-4 dark:border-purple-700 dark:bg-purple-900/30"},qc={class:"mb-4 flex items-start gap-3"},Wc={class:"flex-1"},Bc={class:"mb-2 flex items-center justify-between"},Gc={class:"mb-1 text-sm text-purple-800 dark:text-purple-200"},Fc={class:"space-y-4"},Qc={key:0,class:"mt-1 text-xs text-red-500"},Hc={class:"space-y-2"},Jc={class:"flex items-center justify-between"},Yc={class:"text-xs text-purple-600 dark:text-purple-300"},Zc={class:"relative grid h-11 grid-cols-3 overflow-hidden rounded-2xl border border-purple-200/80 bg-gradient-to-r from-purple-50/80 via-white to-purple-50/80 shadow-inner dark:border-purple-700/70 dark:from-purple-900/40 dark:via-purple-900/20 dark:to-purple-900/40"},Xc=["onClick"],ey={class:"text-xs text-purple-700 dark:text-purple-300"},ty={key:15,class:"rounded-lg border border-amber-200 bg-amber-50 p-4 dark:border-amber-700 dark:bg-amber-900/30"},ay={class:"space-y-4"},ry={key:16},sy={class:"flex gap-3 pt-4"},ly=["disabled"],oy={key:0,class:"loading-spinner mr-2"},ny={__name:"AccountForm",props:{account:{type:Object,default:null}},emits:["close","success","platform-changed"],setup(F,{emit:_e}){var Qt,ia,_a,rt,Ka,Sa,da,Ma,lt,Da,Ht,Kt,Pa,ja,Va,ua,za,pa,La,Ra,Oa,ga,Jt,ca,ya,Ea,xt,ft,Na,ma,Yt,xa,qa,fa,Zt,Wa,ba,Xt;const c=F,z=_e,A=Pr(),_=v(!1),T=v({title:"",message:"",confirmText:"继续",cancelText:"取消"});let k=null;const P=(d,t,ie="继续",ye="取消")=>new Promise(i=>{T.value={title:d,message:t,confirmText:ie,cancelText:ye},k=i,_.value=!0}),O=()=>{_.value=!1,k==null||k(!0),k=null},Y=()=>{_.value=!1,k==null||k(!1),k=null},M=Z(()=>!!c.account),se=v(!0),ge=v(null),N=v(1),E=v(!1),R=v(!1),y=v(!1),p=v(!1),D=v(""),de=v(""),le=v(!1),ae=v(""),oe=v("manual"),he=v(""),W=v(!1),Q=v(""),H=v(!1),h=v({current:0,total:0}),X=Z(()=>he.value.split(` -`).map(d=>d.trim()).filter(d=>d.length>0).length),C=v(""),G=v(!1),K=v(""),Ce=v(!1),ze=d=>["claude","claude-console","ccr","bedrock"].includes(d)?"claude":["openai","openai-responses","azure_openai"].includes(d)?"openai":["gemini","gemini-antigravity","gemini-api"].includes(d)?"gemini":d==="droid"?"droid":"",Ke=()=>({enabled:!1,type:"socks5",host:"",port:"",username:"",password:""}),Fe=d=>{if(!d)return null;let t=d;if(typeof d=="string")try{t=JSON.parse(d)}catch{return null}if(t&&typeof t=="object"&&t.proxy&&typeof t.proxy=="object"&&(t=t.proxy),!t||typeof t!="object")return null;const ie=typeof t.host=="string"?t.host.trim():t.host!==void 0&&t.host!==null?String(t.host).trim():"",ye=t.port!==void 0&&t.port!==null?String(t.port).trim():"",i=typeof t.type=="string"&&t.type.trim()?t.type.trim():"socks5",pe=typeof t.username=="string"?t.username:t.username!==void 0&&t.username!==null?String(t.username):"",me=typeof t.password=="string"?t.password:t.password!==void 0&&t.password!==null?String(t.password):"";return{type:i,host:ie,port:ye,username:pe,password:me}},Qe=d=>{const t=Fe(d);return t&&t.host&&t.port?{enabled:!0,type:t.type||"socks5",host:t.host,port:t.port,username:t.username||"",password:t.password||""}:Ke()},xe=d=>{if(!d||!d.enabled)return null;const t=(d.host||"").trim(),ie=Number.parseInt(d.port,10);if(!t||Number.isNaN(ie)||ie<=0)return null;const ye=d.username?d.username.trim():"",i=d.password?d.password.trim():"";return{type:d.type||"socks5",host:t,port:ie,username:ye||null,password:i||null}},g=()=>{var d;return Qe((d=c.account)==null?void 0:d.proxy)},a=v({platform:((Qt=c.account)==null?void 0:Qt.platform)||"claude",addType:(()=>{var t;const d=((t=c.account)==null?void 0:t.platform)||"claude";return d==="gemini"||d==="gemini-antigravity"||d==="openai"||d==="claude"?"oauth":"manual"})(),name:((ia=c.account)==null?void 0:ia.name)||"",description:((_a=c.account)==null?void 0:_a.description)||"",accountType:((rt=c.account)==null?void 0:rt.accountType)||"shared",authenticationMethod:((Ka=c.account)==null?void 0:Ka.authenticationMethod)||"",subscriptionType:"claude_max",autoStopOnWarning:((Sa=c.account)==null?void 0:Sa.autoStopOnWarning)||!1,useUnifiedUserAgent:((da=c.account)==null?void 0:da.useUnifiedUserAgent)||!1,useUnifiedClientId:((Ma=c.account)==null?void 0:Ma.useUnifiedClientId)||!1,unifiedClientId:((lt=c.account)==null?void 0:lt.unifiedClientId)||"",serialQueueEnabled:(((Da=c.account)==null?void 0:Da.maxConcurrency)||0)>0,interceptWarmup:((Ht=c.account)==null?void 0:Ht.interceptWarmup)===!0||((Kt=c.account)==null?void 0:Kt.interceptWarmup)==="true",groupId:"",groupIds:[],projectId:((Pa=c.account)==null?void 0:Pa.projectId)||"",accessToken:"",refreshToken:"",apiKeysInput:"",apiKeyUpdateMode:"append",proxy:g(),apiUrl:((ja=c.account)==null?void 0:ja.apiUrl)||"",apiKey:((Va=c.account)==null?void 0:Va.apiKey)||"",priority:((ua=c.account)==null?void 0:ua.priority)||50,endpointType:((za=c.account)==null?void 0:za.endpointType)||"anthropic",baseApi:((pa=c.account)==null?void 0:pa.baseApi)||"",baseUrl:((La=c.account)==null?void 0:La.baseUrl)||"https://generativelanguage.googleapis.com",rateLimitDuration:((Ra=c.account)==null?void 0:Ra.rateLimitDuration)||60,supportedModels:(()=>{var t;const d=(t=c.account)==null?void 0:t.supportedModels;return d?typeof d=="object"&&!Array.isArray(d)?Object.keys(d):Array.isArray(d)?d:[]:[]})(),userAgent:((Oa=c.account)==null?void 0:Oa.userAgent)||"",enableRateLimit:c.account?c.account.rateLimitDuration>0:!0,disableAutoProtection:((ga=c.account)==null?void 0:ga.disableAutoProtection)===!0,dailyQuota:((Jt=c.account)==null?void 0:Jt.dailyQuota)||0,dailyUsage:((ca=c.account)==null?void 0:ca.dailyUsage)||0,quotaResetTime:((ya=c.account)==null?void 0:ya.quotaResetTime)||"00:00",maxConcurrentTasks:((Ea=c.account)==null?void 0:Ea.maxConcurrentTasks)||0,credentialType:((xt=c.account)==null?void 0:xt.credentialType)||"access_key",accessKeyId:((ft=c.account)==null?void 0:ft.accessKeyId)||"",secretAccessKey:((Na=c.account)==null?void 0:Na.secretAccessKey)||"",region:((ma=c.account)==null?void 0:ma.region)||"",sessionToken:((Yt=c.account)==null?void 0:Yt.sessionToken)||"",bearerToken:((xa=c.account)==null?void 0:xa.bearerToken)||"",defaultModel:((qa=c.account)==null?void 0:qa.defaultModel)||"",smallFastModel:((fa=c.account)==null?void 0:fa.smallFastModel)||"",azureEndpoint:((Zt=c.account)==null?void 0:Zt.azureEndpoint)||"",apiVersion:((Wa=c.account)==null?void 0:Wa.apiVersion)||"",deploymentName:((ba=c.account)==null?void 0:ba.deploymentName)||"",expireDuration:(()=>{var d;return(d=c.account)!=null&&d.expiresAt?"custom":""})(),customExpireDate:(()=>{var d;return(d=c.account)!=null&&d.expiresAt?new Date(c.account.expiresAt).toISOString().slice(0,16):""})(),expiresAt:((Xt=c.account)==null?void 0:Xt.expiresAt)||null}),U=v("whitelist"),re=v(["claude-sonnet-4-20250514","claude-sonnet-4-5-20250929","claude-3-5-haiku-20241022"]),ne=v([]),Re=async()=>{var d;try{const t=await Ms();t.success&&((d=t.data)!=null&&d.all)&&(ne.value=t.data.all)}catch(t){console.error("Failed to load models:",t)}},Oe=v([]),st=()=>{var d;if((d=c.account)!=null&&d.supportedModels)if(typeof c.account.supportedModels=="object"&&!Array.isArray(c.account.supportedModels)){const t=Object.entries(c.account.supportedModels);t.every(([ye,i])=>ye===i)?(U.value="whitelist",re.value=t.map(([ye])=>ye),Oe.value=t.map(([ye,i])=>({from:ye,to:i}))):(U.value="mapping",Oe.value=t.map(([ye,i])=>({from:ye,to:i})))}else Array.isArray(c.account.supportedModels)&&(U.value="whitelist",re.value=c.account.supportedModels,Oe.value=c.account.supportedModels.map(t=>({from:t,to:t})))},nt=d=>{if(!d||typeof d!="string")return[];const t=d.split(/\r?\n/).map(ye=>ye.trim()).filter(ye=>ye.length>0);return t.length===0?[]:Array.from(new Set(t))},at=[{value:"append",label:"追加模式",description:"保留现有 Key,并在末尾追加新 Key 列表。"},{value:"replace",label:"覆盖模式",description:"先清空旧 Key,再写入上方的新 Key 列表。"},{value:"delete",label:"删除模式",description:"输入要移除的 Key,可精准删除失效或被封禁的 Key。"}],Dt=Z(()=>{const d=Math.max(at.findIndex(ie=>ie.value===a.value.apiKeyUpdateMode),0),t=100/at.length;return{width:`${t}%`,left:`${d*t}%`}}),Pt=Z(()=>{const d=at.find(t=>t.value===a.value.apiKeyUpdateMode);return d?d.label:at[0].label}),jt=Z(()=>{const d=at.find(t=>t.value===a.value.apiKeyUpdateMode);return d?d.description:at[0].description}),I=v({name:"",refreshToken:"",accessToken:"",apiKeys:"",apiUrl:"",apiKey:"",baseApi:"",accessKeyId:"",secretAccessKey:"",region:"",bearerToken:"",azureEndpoint:"",deploymentName:""}),Tt=Z(()=>{var d;return((d=a.value.name)==null?void 0:d.trim())&&a.value.platform}),gt=Z(()=>D.value&&de.value.trim()),ht=()=>{var d;return!M.value||!((d=c.account)!=null&&d.id)?0:typeof a.value.dailyUsage=="number"?a.value.dailyUsage:0},ct=Z(()=>!a.value.dailyQuota||a.value.dailyQuota<=0?0:ht()/a.value.dailyQuota*100),Vt=Z(()=>{if(!c.account||c.account.platform!=="droid")return 0;let d=0;if(Array.isArray(c.account.apiKeys))d=c.account.apiKeys.length;else if(typeof c.account.apiKeys=="string")try{const ie=JSON.parse(c.account.apiKeys);Array.isArray(ie)&&(d=ie.length)}catch{d=0}const t=c.account.apiKeyCount??c.account.apiKeysCount??c.account.api_key_count??d;return Number(t)||0}),wt=Z(()=>{var t,ie,ye;if(!M.value||a.value.platform!=="droid")return!1;const d=a.value.authenticationMethod||((t=c.account)==null?void 0:t.authenticationMethod)||((ie=c.account)==null?void 0:ie.authMethod)||((ye=c.account)==null?void 0:ye.authentication_mode)||"";return typeof d!="string"?!1:d.trim().toLowerCase()==="api_key"}),B=async()=>{var d;if(!(!M.value||!((d=c.account)!=null&&d.id)))try{const t=await Ps(c.account.id);t&&(a.value.dailyUsage=t.dailyUsage||0)}catch{}},q=d=>{K.value=d,d==="claude"?a.value.platform="claude":d==="openai"?a.value.platform="openai":d==="gemini"?a.value.platform="gemini":d==="droid"&&(a.value.platform="droid")},Ee=async()=>{if(I.value.name="",!Tt.value){(!a.value.name||a.value.name.trim()==="")&&(I.value.name="请填写账户名称");return}if(a.value.accountType==="group"&&(!a.value.groupIds||a.value.groupIds.length===0)){V("请选择一个分组","error");return}a.value.accountType==="group"&&(a.value.groupIds&&a.value.groupIds.length>0?a.value.groupId=a.value.groupIds[0]:a.value.groupId=""),!((a.value.platform==="gemini"||a.value.platform==="gemini-antigravity")&&N.value===1&&a.value.addType==="oauth"&&(!a.value.projectId||a.value.projectId.trim()==="")&&!await P("项目 ID 未填写",`您尚未填写项目 ID。 - -如果您的Google账号绑定了Google Cloud或被识别为Workspace账号,需要提供项目 ID。 -如果您使用的是普通个人账号,可以继续不填写。`,"继续","返回填写"))&&(N.value=2)},We=async()=>{y.value=!0;try{const d=xe(a.value.proxy),t=d?{proxy:d}:{},ie=await A.generateClaudeSetupTokenUrl(t);D.value=ie.authUrl,ae.value=ie.sessionId}catch(d){V(d.message||"生成Setup Token授权链接失败","error")}finally{y.value=!1}},ut=()=>{D.value="",de.value="",We()},Nt=async()=>{try{await navigator.clipboard.writeText(D.value),le.value=!0,V("链接已复制","success"),setTimeout(()=>{le.value=!1},2e3)}catch{const t=document.createElement("textarea");t.value=D.value,t.style.position="fixed",t.style.opacity="0",document.body.appendChild(t),t.select();try{document.execCommand("copy")?(le.value=!0,V("链接已复制","success")):V("复制失败,请手动复制","error")}catch{V("复制失败,请手动复制","error")}document.body.removeChild(t),setTimeout(()=>{le.value=!1},2e3)}},qt=async()=>{if(gt.value){p.value=!0;try{const d={sessionId:ae.value,callbackUrl:de.value.trim()},t=xe(a.value.proxy);t&&(d.proxy=t);const ie=await A.exchangeClaudeSetupTokenCode(d);a.value.useUnifiedClientId&&!a.value.unifiedClientId&&(a.value.unifiedClientId=mt()),await it(ie)}catch(d){V(d.message||"Setup Token授权失败,请检查授权码是否正确","error")}finally{p.value=!1}}},$t=async()=>{const d=he.value.split(` -`).map(pe=>pe.trim()).filter(pe=>pe.length>0);if(d.length===0){Q.value="请输入至少一个 sessionKey";return}W.value=!0,Q.value="",h.value={current:0,total:d.length};const t=a.value.addType==="setup-token",ie=xe(a.value.proxy),ye=[],i=[];for(let pe=0;pe0)try{await it(ye)}finally{W.value=!1}else W.value=!1;i.length>0&&ye.length===0?Q.value="全部授权失败,请检查 sessionKey 是否有效":i.length>0&&(Q.value=`${i.length} 个授权失败`)},zt=()=>{he.value="",Q.value="",H.value=!1,h.value={current:0,total:0}},Lt=()=>{oe.value==="manual"?zt():(D.value="",de.value="",ae.value="")},It=(d,t,ie)=>{var me,qe;const ye=xe(a.value.proxy),i=d.claudeAiOauth||d,pe={name:t,description:a.value.description,accountType:a.value.accountType,groupId:a.value.accountType==="group"?a.value.groupId:void 0,groupIds:a.value.accountType==="group"?a.value.groupIds:void 0,expiresAt:a.value.expiresAt||void 0,proxy:ye,claudeAiOauth:i,priority:a.value.priority||50,autoStopOnWarning:a.value.autoStopOnWarning||!1,interceptWarmup:a.value.interceptWarmup||!1,useUnifiedUserAgent:a.value.useUnifiedUserAgent||!1,useUnifiedClientId:a.value.useUnifiedClientId||!1,unifiedClientId:ie,maxConcurrency:a.value.serialQueueEnabled?1:0,subscriptionInfo:{accountType:a.value.subscriptionType||"claude_max",hasClaudeMax:a.value.subscriptionType==="claude_max",hasClaudePro:a.value.subscriptionType==="claude_pro",manuallySet:!0}};if(i){const He={},Le=i.extInfo;Le!=null&&Le.org_uuid&&(He.org_uuid=Le.org_uuid),Le!=null&&Le.account_uuid&&(He.account_uuid=Le.account_uuid),Le||((me=i.organization)!=null&&me.uuid&&(He.org_uuid=i.organization.uuid),(qe=i.account)!=null&&qe.uuid&&(He.account_uuid=i.account.uuid)),Object.keys(He).length>0&&(pe.extInfo=He)}return pe},it=async d=>{var t,ie,ye,i,pe,me,qe,He,Le;E.value=!0;try{const S=a.value.platform;if(S==="claude"&&Array.isArray(d)){const Me=d,Pe=Me.length>1,Ue=a.value.name,et=[],tt=[];for(let bt=0;bt0){const bt=Pe?`成功创建 ${et.length}/${Me.length} 个账户`:"账户创建成功";V(bt,"success"),z("success",et[0])}tt.length>0&&V(`${tt.length} 个账户创建失败`,"error");return}const L=Array.isArray(d)?d[0]:d;a.value.platform==="claude"&&a.value.useUnifiedClientId&&!a.value.unifiedClientId&&(a.value.unifiedClientId=mt());const $e=xe(a.value.proxy),J={name:a.value.name,description:a.value.description,accountType:a.value.accountType,groupId:a.value.accountType==="group"?a.value.groupId:void 0,groupIds:a.value.accountType==="group"?a.value.groupIds:void 0,expiresAt:a.value.expiresAt||void 0,proxy:$e};if(S==="claude"){const Me=L.claudeAiOauth||L;if(J.claudeAiOauth=Me,Me){const Pe={},Ue=Me.extInfo;if(Ue&&typeof Ue=="object"&&(Ue.org_uuid&&(Pe.org_uuid=Ue.org_uuid),Ue.account_uuid&&(Pe.account_uuid=Ue.account_uuid)),!Ue){const et=(t=Me.organization)==null?void 0:t.uuid,tt=(ie=Me.account)==null?void 0:ie.uuid;et&&(Pe.org_uuid=et),tt&&(Pe.account_uuid=tt)}Object.keys(Pe).length>0&&(J.extInfo=Pe)}J.priority=a.value.priority||50,J.autoStopOnWarning=a.value.autoStopOnWarning||!1,J.useUnifiedUserAgent=a.value.useUnifiedUserAgent||!1,J.useUnifiedClientId=a.value.useUnifiedClientId||!1,J.unifiedClientId=a.value.unifiedClientId||"",J.maxConcurrency=a.value.serialQueueEnabled?1:0,J.subscriptionInfo={accountType:a.value.subscriptionType||"claude_max",hasClaudeMax:a.value.subscriptionType==="claude_max",hasClaudePro:a.value.subscriptionType==="claude_pro",manuallySet:!0}}else if(S==="gemini"||S==="gemini-antigravity")J.geminiOauth=L.tokens||L,J.oauthProvider=S==="gemini-antigravity"?"antigravity":L.oauthProvider||"gemini-cli",a.value.projectId&&(J.projectId=a.value.projectId),J.priority=a.value.priority||50;else if(S==="openai")J.openaiOauth=L.tokens||L,J.accountInfo=L.accountInfo,J.priority=a.value.priority||50;else if(S==="droid"){const Me=L.tokens||L||{},Pe={accessToken:Me.accessToken||Me.access_token||"",refreshToken:Me.refreshToken||Me.refresh_token||"",expiresAt:Me.expiresAt||Me.expires_at||"",expiresIn:Me.expiresIn||Me.expires_in||null,tokenType:Me.tokenType||Me.token_type||"Bearer",organizationId:Me.organizationId||Me.organization_id||"",authenticationMethod:Me.authenticationMethod||Me.authentication_method||""};if(!Pe.refreshToken){E.value=!1,V("授权成功但未返回 Refresh Token,请确认已授予离线访问权限后重试。","error");return}if(J.refreshToken=Pe.refreshToken,J.accessToken=Pe.accessToken,J.expiresAt=Pe.expiresAt,Pe.expiresIn!==null&&Pe.expiresIn!==void 0&&(J.expiresIn=Pe.expiresIn),J.priority=a.value.priority||50,J.endpointType=a.value.endpointType||"anthropic",J.platform="droid",J.tokenType=Pe.tokenType,J.authenticationMethod=Pe.authenticationMethod,Pe.organizationId&&(J.organizationId=Pe.organizationId),Me.user){const Ue=Me.user,et=[];typeof Ue.first_name=="string"&&Ue.first_name.trim()&&et.push(Ue.first_name.trim()),typeof Ue.last_name=="string"&&Ue.last_name.trim()&&et.push(Ue.last_name.trim());const tt=et.join(" ").trim()||(typeof Ue.name=="string"?Ue.name.trim():"")||(typeof Ue.display_name=="string"?Ue.display_name.trim():"");typeof Ue.email=="string"&&Ue.email.trim()&&(J.ownerEmail=Ue.email.trim()),tt?(J.ownerName=tt,J.ownerDisplayName=tt):J.ownerEmail&&(J.ownerName=J.ownerName||J.ownerEmail,J.ownerDisplayName=J.ownerDisplayName||J.ownerEmail),typeof Ue.id=="string"&&Ue.id.trim()&&(J.userId=Ue.id.trim())}}let Se;S==="claude"?Se=await A.createClaudeAccount(J):S==="gemini"?Se=await A.createGeminiAccount(J):S==="openai"?Se=await A.createOpenAIAccount(J):S==="droid"?Se=await A.createDroidAccount(J):Se=await A.createGeminiAccount(J),z("success",Se)}catch(S){const L=((i=(ye=S.response)==null?void 0:ye.data)==null?void 0:i.error)||S.message||"账户创建失败",$e=((me=(pe=S.response)==null?void 0:pe.data)==null?void 0:me.suggestion)||"",J=((He=(qe=S.response)==null?void 0:qe.data)==null?void 0:He.errorDetails)||null;let Se=L;$e&&(Se+=` -${$e}`),J&&J.error_description?Se+=` -详细信息: ${J.error_description}`:J&&J.error&&J.error.message&&(Se+=` -详细信息: ${J.error.message}`),V(Se,"error","",8e3)}finally{E.value=!1,(Le=ge.value)==null||Le.resetCookieAuth()}},Ya=async()=>{var t,ie,ye,i,pe,me,qe,He;I.value.name="",I.value.accessToken="",I.value.refreshToken="",I.value.apiUrl="",I.value.apiKey="",I.value.apiKeys="";let d=!1;if((!a.value.name||a.value.name.trim()==="")&&(I.value.name="请填写账户名称",d=!0),a.value.platform==="claude-console"&&((!a.value.apiUrl||a.value.apiUrl.trim()==="")&&(I.value.apiUrl="请填写 API URL",d=!0),(!a.value.apiKey||a.value.apiKey.trim()==="")&&(I.value.apiKey="请填写 API Key",d=!0)),a.value.platform==="ccr"&&((!a.value.apiUrl||a.value.apiUrl.trim()==="")&&(I.value.apiUrl="请填写 API URL",d=!0),(!a.value.apiKey||a.value.apiKey.trim()==="")&&(I.value.apiKey="请填写 API Key",d=!0)),a.value.platform==="openai-responses"?((!a.value.baseApi||a.value.baseApi.trim()==="")&&(I.value.baseApi="请填写 API 基础地址",d=!0),(!a.value.apiKey||a.value.apiKey.trim()==="")&&(I.value.apiKey="请填写 API 密钥",d=!0)):a.value.platform==="bedrock"?(a.value.credentialType==="access_key"?M.value||((!a.value.accessKeyId||a.value.accessKeyId.trim()==="")&&(I.value.accessKeyId="请填写 AWS 访问密钥 ID",d=!0),(!a.value.secretAccessKey||a.value.secretAccessKey.trim()==="")&&(I.value.secretAccessKey="请填写 AWS 秘密访问密钥",d=!0)):a.value.credentialType==="bearer_token"&&(M.value||(!a.value.bearerToken||a.value.bearerToken.trim()==="")&&(I.value.bearerToken="请填写 Bearer Token",d=!0)),(!a.value.region||a.value.region.trim()==="")&&(I.value.region="请选择 AWS 区域",d=!0)):a.value.platform==="azure_openai"?((!a.value.azureEndpoint||a.value.azureEndpoint.trim()==="")&&(I.value.azureEndpoint="请填写 Azure Endpoint",d=!0),(!a.value.deploymentName||a.value.deploymentName.trim()==="")&&(I.value.deploymentName="请填写部署名称",d=!0),(!a.value.apiKey||a.value.apiKey.trim()==="")&&(I.value.apiKey="请填写 API Key",d=!0)):a.value.addType==="manual"?a.value.platform==="openai"?(!a.value.refreshToken||a.value.refreshToken.trim()==="")&&(I.value.refreshToken="请填写 Refresh Token",d=!0):a.value.platform==="gemini"?(!a.value.accessToken||a.value.accessToken.trim()==="")&&(I.value.accessToken="请填写 Access Token",d=!0):a.value.platform==="droid"?((!a.value.accessToken||a.value.accessToken.trim()==="")&&(I.value.accessToken="请填写 Access Token",d=!0),(!a.value.refreshToken||a.value.refreshToken.trim()==="")&&(I.value.refreshToken="请填写 Refresh Token",d=!0)):a.value.platform==="claude"&&(!a.value.accessToken||a.value.accessToken.trim()==="")&&(I.value.accessToken="请填写 Access Token",d=!0):a.value.addType==="apikey"&&(a.value.platform==="gemini-api"?((!a.value.apiKey||a.value.apiKey.trim()==="")&&(I.value.apiKey="请填写 API Key",d=!0),!a.value.baseUrl||a.value.baseUrl.trim()===""?(I.value.baseUrl="请填写 API 基础地址",d=!0):a.value.baseUrl.trim().endsWith("/models")||(I.value.baseUrl="API 基础地址必须以 /models 结尾",d=!0)):nt(a.value.apiKeysInput).length===0&&(I.value.apiKeys="请至少填写一个 API Key",d=!0)),a.value.accountType==="group"&&(!a.value.groupIds||a.value.groupIds.length===0)&&(V("请选择一个分组","error"),d=!0),a.value.accountType==="group"&&(a.value.groupIds&&a.value.groupIds.length>0?a.value.groupId=a.value.groupIds[0]:a.value.groupId=""),!d){E.value=!0;try{const Le=xe(a.value.proxy),S={name:a.value.name,description:a.value.description,accountType:a.value.accountType,groupId:a.value.accountType==="group"?a.value.groupId:void 0,groupIds:a.value.accountType==="group"?a.value.groupIds:void 0,expiresAt:a.value.expiresAt||void 0,proxy:Le};if(a.value.platform==="claude"){const $e=a.value.refreshToken?6e5:31536e6;a.value.useUnifiedClientId&&!a.value.unifiedClientId&&(a.value.unifiedClientId=mt()),S.claudeAiOauth={accessToken:a.value.accessToken,refreshToken:a.value.refreshToken||"",expiresAt:Date.now()+$e,scopes:[]},S.priority=a.value.priority||50,S.autoStopOnWarning=a.value.autoStopOnWarning||!1,S.useUnifiedUserAgent=a.value.useUnifiedUserAgent||!1,S.useUnifiedClientId=a.value.useUnifiedClientId||!1,S.unifiedClientId=a.value.unifiedClientId||"",S.maxConcurrency=a.value.serialQueueEnabled?1:0,S.subscriptionInfo={accountType:a.value.subscriptionType||"claude_max",hasClaudeMax:a.value.subscriptionType==="claude_max",hasClaudePro:a.value.subscriptionType==="claude_pro",manuallySet:!0}}else if(a.value.platform==="gemini"){const $e=a.value.refreshToken?6e5:31536e6;S.geminiOauth={access_token:a.value.accessToken,refresh_token:a.value.refreshToken||"",scope:"https://www.googleapis.com/auth/cloud-platform",token_type:"Bearer",expiry_date:Date.now()+$e},a.value.projectId&&(S.projectId=a.value.projectId),S.priority=a.value.priority||50}else if(a.value.platform==="openai"){const $e=a.value.refreshToken?6e5:31536e6;S.openaiOauth={idToken:"",accessToken:a.value.accessToken||"",refreshToken:a.value.refreshToken,expires_in:Math.floor($e/1e3)},S.accountInfo={accountId:"",chatgptUserId:"",organizationId:"",organizationRole:"",organizationTitle:"",planType:"",email:"",emailVerified:!1},S.needsImmediateRefresh=!0,S.requireRefreshSuccess=!0,S.priority=a.value.priority||50}else if(a.value.platform==="droid")if(S.priority=a.value.priority||50,S.endpointType=a.value.endpointType||"anthropic",S.platform="droid",a.value.addType==="apikey"){const $e=nt(a.value.apiKeysInput);S.apiKeys=$e,S.authenticationMethod="api_key",S.isActive=!0,S.schedulable=!0}else{const $e=((t=a.value.accessToken)==null?void 0:t.trim())||"",J=((ie=a.value.refreshToken)==null?void 0:ie.trim())||"",Se=new Date(Date.now()+8*60*60*1e3).toISOString();S.accessToken=$e,S.refreshToken=J,S.expiresAt=Se,S.expiresIn=8*60*60,S.tokenType="Bearer",S.authenticationMethod="manual"}else a.value.platform==="claude-console"||a.value.platform==="ccr"?(S.apiUrl=a.value.apiUrl,S.apiKey=a.value.apiKey,S.priority=a.value.priority||50,S.supportedModels=la()||{},S.userAgent=a.value.userAgent||null,S.rateLimitDuration=a.value.enableRateLimit?a.value.rateLimitDuration||60:0,a.value.platform==="claude-console"&&(S.disableAutoProtection=!!a.value.disableAutoProtection,S.interceptWarmup=!!a.value.interceptWarmup),S.dailyQuota=a.value.dailyQuota||0,S.quotaResetTime=a.value.quotaResetTime||"00:00",S.maxConcurrentTasks=a.value.maxConcurrentTasks||0):a.value.platform==="openai-responses"?(S.baseApi=a.value.baseApi,S.apiKey=a.value.apiKey,S.userAgent=a.value.userAgent||"",S.priority=a.value.priority||50,S.rateLimitDuration=60,S.dailyQuota=a.value.dailyQuota||0,S.quotaResetTime=a.value.quotaResetTime||"00:00"):a.value.platform==="gemini-antigravity"?(S.oauthProvider="antigravity",S.priority=a.value.priority||50):a.value.platform==="gemini-api"?(S.baseUrl=a.value.baseUrl||"https://generativelanguage.googleapis.com",S.apiKey=a.value.apiKey,S.priority=a.value.priority||50,S.supportedModels=Array.isArray(a.value.supportedModels)?a.value.supportedModels:[]):a.value.platform==="bedrock"?(S.credentialType=a.value.credentialType||"access_key",a.value.credentialType==="access_key"?S.awsCredentials={accessKeyId:a.value.accessKeyId,secretAccessKey:a.value.secretAccessKey,sessionToken:a.value.sessionToken||null}:a.value.credentialType==="bearer_token"&&(S.bearerToken=a.value.bearerToken),S.region=a.value.region,S.defaultModel=a.value.defaultModel||null,S.smallFastModel=a.value.smallFastModel||null,S.priority=a.value.priority||50,S.rateLimitDuration=a.value.enableRateLimit?a.value.rateLimitDuration||60:0):a.value.platform==="azure_openai"&&(S.azureEndpoint=a.value.azureEndpoint,S.apiKey=a.value.apiKey,S.apiVersion=a.value.apiVersion||"2024-02-01",S.deploymentName=a.value.deploymentName,S.supportedModels=Array.isArray(a.value.supportedModels)?a.value.supportedModels:[],S.priority=a.value.priority||50,S.isActive=a.value.isActive!==!1,S.schedulable=a.value.schedulable!==!1);let L;if(a.value.platform==="claude")L=await A.createClaudeAccount(S);else if(a.value.platform==="claude-console"||a.value.platform==="ccr")L=await A.createClaudeConsoleAccount(S);else if(a.value.platform==="droid")L=await A.createDroidAccount(S);else if(a.value.platform==="openai-responses")L=await A.createOpenAIResponsesAccount(S);else if(a.value.platform==="bedrock")L=await A.createBedrockAccount(S);else if(a.value.platform==="openai")L=await A.createOpenAIAccount(S);else if(a.value.platform==="azure_openai")L=await A.createAzureOpenAIAccount(S);else if(a.value.platform==="gemini"||a.value.platform==="gemini-antigravity")L=await A.createGeminiAccount(S);else if(a.value.platform==="gemini-api")L=await A.createGeminiApiAccount(S);else throw new Error(`不支持的平台: ${a.value.platform}`);z("success",L)}catch(Le){const S=((i=(ye=Le.response)==null?void 0:ye.data)==null?void 0:i.error)||Le.message||"账户创建失败",L=((me=(pe=Le.response)==null?void 0:pe.data)==null?void 0:me.suggestion)||"",$e=((He=(qe=Le.response)==null?void 0:qe.data)==null?void 0:He.errorDetails)||null;let J=S;L&&(J+=` -${L}`),$e&&$e.error_description?J+=` -详细信息: ${$e.error_description}`:$e&&$e.error&&$e.error.message&&(J+=` -详细信息: ${$e.error.message}`),V(J,"error","",8e3)}finally{E.value=!1}}},At=async()=>{var d,t,ie,ye,i,pe,me,qe,He,Le;if(I.value.name="",I.value.apiKeys="",I.value.baseUrl="",!a.value.name||a.value.name.trim()===""){I.value.name="请填写账户名称";return}if(a.value.platform==="gemini-api"){const S=((d=a.value.baseUrl)==null?void 0:d.trim())||"";if(!S){I.value.baseUrl="请填写 API 基础地址";return}if(!S.endsWith("/models")){I.value.baseUrl="API 基础地址必须以 /models 结尾";return}}if(a.value.accountType==="group"&&(!a.value.groupIds||a.value.groupIds.length===0)){V("请选择一个分组","error");return}if(a.value.accountType==="group"&&(a.value.groupIds&&a.value.groupIds.length>0?a.value.groupId=a.value.groupIds[0]:a.value.groupId=""),!(a.value.platform==="gemini"&&(!a.value.projectId||a.value.projectId.trim()==="")&&!await P("项目 ID 未填写",`您尚未填写项目 ID。 - -如果您的Google账号绑定了Google Cloud或被识别为Workspace账号,需要提供项目 ID。 -如果您使用的是普通个人账号,可以继续不填写。`,"继续保存","返回填写"))){E.value=!0;try{const S=xe(a.value.proxy),L={name:a.value.name,description:a.value.description,accountType:a.value.accountType,groupId:a.value.accountType==="group"?a.value.groupId:void 0,groupIds:a.value.accountType==="group"?a.value.groupIds:void 0,expiresAt:a.value.expiresAt||void 0,proxy:S};if(a.value.accessToken||a.value.refreshToken){const $e=((t=a.value.accessToken)==null?void 0:t.trim())||"",J=((ie=a.value.refreshToken)==null?void 0:ie.trim())||"";if(c.account.platform==="claude"){const Se=a.value.refreshToken?6e5:31536e6;L.claudeAiOauth={accessToken:$e||"",refreshToken:J||"",expiresAt:Date.now()+Se,scopes:c.account.scopes||[]}}else if(c.account.platform==="gemini"){const Se=a.value.refreshToken?6e5:31536e6;L.geminiOauth={access_token:$e||"",refresh_token:J||"",scope:"https://www.googleapis.com/auth/cloud-platform",token_type:"Bearer",expiry_date:Date.now()+Se}}else if(c.account.platform==="openai"){const Se=a.value.refreshToken?6e5:31536e6;L.openaiOauth={idToken:"",accessToken:$e||"",refreshToken:J||"",expires_in:Math.floor(Se/1e3)},J&&J!==c.account.refreshToken&&(L.needsImmediateRefresh=!0,L.requireRefreshSuccess=!0)}else c.account.platform==="droid"&&($e&&(L.accessToken=$e),J&&(L.refreshToken=J))}if(c.account.platform==="droid"){const $e=((ye=a.value.apiKeysInput)==null?void 0:ye.trim())||"",J=a.value.apiKeyUpdateMode||"append";if(J==="delete"){if(!$e){I.value.apiKeys="请填写需要删除的 API Key",E.value=!1;return}const Se=nt($e);if(Se.length===0){I.value.apiKeys="请填写需要删除的 API Key",E.value=!1;return}L.removeApiKeys=Se,L.apiKeyUpdateMode="delete"}else{if($e){const Se=nt($e);if(Se.length===0){I.value.apiKeys="请至少填写一个 API Key",E.value=!1;return}L.apiKeys=Se}else J==="replace"&&(L.apiKeys=[]);(J!=="append"||$e)&&(L.apiKeyUpdateMode=J)}wt.value&&(L.authenticationMethod="api_key")}if(c.account.platform==="gemini"&&(L.projectId=a.value.projectId||""),c.account.platform==="droid"&&(L.priority=a.value.priority||50,L.endpointType=a.value.endpointType||"anthropic"),c.account.platform==="claude"&&(a.value.useUnifiedClientId&&!a.value.unifiedClientId&&(a.value.unifiedClientId=mt()),L.priority=a.value.priority||50,L.autoStopOnWarning=a.value.autoStopOnWarning||!1,L.interceptWarmup=a.value.interceptWarmup||!1,L.useUnifiedUserAgent=a.value.useUnifiedUserAgent||!1,L.useUnifiedClientId=a.value.useUnifiedClientId||!1,L.unifiedClientId=a.value.unifiedClientId||"",L.maxConcurrency=a.value.serialQueueEnabled?1:0,L.subscriptionInfo={accountType:a.value.subscriptionType||"claude_max",hasClaudeMax:a.value.subscriptionType==="claude_max",hasClaudePro:a.value.subscriptionType==="claude_pro",manuallySet:!0}),c.account.platform==="openai"&&(L.priority=a.value.priority||50),c.account.platform==="gemini"&&(L.priority=a.value.priority||50),c.account.platform==="claude-console"&&(L.apiUrl=a.value.apiUrl,a.value.apiKey&&(L.apiKey=a.value.apiKey),L.priority=a.value.priority||50,L.supportedModels=la()||{},L.userAgent=a.value.userAgent||null,L.rateLimitDuration=a.value.enableRateLimit?a.value.rateLimitDuration||60:0,L.disableAutoProtection=!!a.value.disableAutoProtection,L.interceptWarmup=!!a.value.interceptWarmup,L.dailyQuota=a.value.dailyQuota||0,L.quotaResetTime=a.value.quotaResetTime||"00:00",L.maxConcurrentTasks=a.value.maxConcurrentTasks||0),c.account.platform==="openai-responses"&&(L.baseApi=a.value.baseApi,a.value.apiKey&&(L.apiKey=a.value.apiKey),L.userAgent=a.value.userAgent||"",L.priority=a.value.priority||50,L.dailyQuota=a.value.dailyQuota||0,L.quotaResetTime=a.value.quotaResetTime||"00:00"),c.account.platform==="bedrock"&&(a.value.credentialType&&(L.credentialType=a.value.credentialType),a.value.credentialType==="access_key"?(a.value.accessKeyId||a.value.secretAccessKey||a.value.sessionToken)&&(L.awsCredentials={},a.value.accessKeyId&&(L.awsCredentials.accessKeyId=a.value.accessKeyId),a.value.secretAccessKey&&(L.awsCredentials.secretAccessKey=a.value.secretAccessKey),a.value.sessionToken!==void 0&&(L.awsCredentials.sessionToken=a.value.sessionToken||null)):a.value.credentialType==="bearer_token"&&a.value.bearerToken&&a.value.bearerToken.trim()&&(L.bearerToken=a.value.bearerToken),a.value.region&&(L.region=a.value.region),L.defaultModel=a.value.defaultModel||null,L.smallFastModel=a.value.smallFastModel||null,L.priority=a.value.priority||50,L.rateLimitDuration=a.value.enableRateLimit?a.value.rateLimitDuration||60:0),c.account.platform==="azure_openai"&&(L.azureEndpoint=a.value.azureEndpoint,L.apiVersion=a.value.apiVersion||"2024-02-01",L.deploymentName=a.value.deploymentName,L.supportedModels=Array.isArray(a.value.supportedModels)?a.value.supportedModels:[],L.priority=a.value.priority||50,a.value.apiKey&&a.value.apiKey.trim()&&(L.apiKey=a.value.apiKey)),c.account.platform==="gemini-api"&&(L.baseUrl=a.value.baseUrl||"https://generativelanguage.googleapis.com",a.value.apiKey&&a.value.apiKey.trim()&&(L.apiKey=a.value.apiKey),L.priority=a.value.priority||50,L.supportedModels=Array.isArray(a.value.supportedModels)?a.value.supportedModels:[]),c.account.platform==="claude")await A.updateClaudeAccount(c.account.id,L);else if(c.account.platform==="claude-console")await A.updateClaudeConsoleAccount(c.account.id,L);else if(c.account.platform==="openai-responses")await A.updateOpenAIResponsesAccount(c.account.id,L);else if(c.account.platform==="bedrock")await A.updateBedrockAccount(c.account.id,L);else if(c.account.platform==="openai")await A.updateOpenAIAccount(c.account.id,L);else if(c.account.platform==="azure_openai")await A.updateAzureOpenAIAccount(c.account.id,L);else if(c.account.platform==="gemini")await A.updateGeminiAccount(c.account.id,L);else if(c.account.platform==="gemini-api")await A.updateGeminiApiAccount(c.account.id,L);else if(c.account.platform==="droid")await A.updateDroidAccount(c.account.id,L);else throw new Error(`不支持的平台: ${c.account.platform}`);z("success")}catch(S){const L=((pe=(i=S.response)==null?void 0:i.data)==null?void 0:pe.error)||S.message||"账户更新失败",$e=((qe=(me=S.response)==null?void 0:me.data)==null?void 0:qe.suggestion)||"",J=((Le=(He=S.response)==null?void 0:He.data)==null?void 0:Le.errorDetails)||null;let Se=L;$e&&(Se+=` -${$e}`),J&&J.error_description?Se+=` -详细信息: ${J.error_description}`:J&&J.error&&J.error.message&&(Se+=` -详细信息: ${J.error.message}`),V(Se,"error","",8e3)}finally{E.value=!1}}};ve(()=>a.value.name,()=>{var d;I.value.name&&((d=a.value.name)!=null&&d.trim())&&(I.value.name="")}),ve(()=>a.value.accessToken,()=>{var d;I.value.accessToken&&((d=a.value.accessToken)!=null&&d.trim())&&(I.value.accessToken="")}),ve(()=>a.value.refreshToken,()=>{var d;I.value.refreshToken&&((d=a.value.refreshToken)!=null&&d.trim())&&(I.value.refreshToken="")}),ve(()=>a.value.apiUrl,()=>{var d;I.value.apiUrl&&((d=a.value.apiUrl)!=null&&d.trim())&&(I.value.apiUrl="")}),ve(()=>a.value.apiKey,()=>{var d;I.value.apiKey&&((d=a.value.apiKey)!=null&&d.trim())&&(I.value.apiKey="")}),ve(()=>a.value.azureEndpoint,()=>{var d;I.value.azureEndpoint&&((d=a.value.azureEndpoint)!=null&&d.trim())&&(I.value.azureEndpoint="")}),ve(()=>a.value.deploymentName,()=>{var d;I.value.deploymentName&&((d=a.value.deploymentName)!=null&&d.trim())&&(I.value.deploymentName="")});const Ct=v([]),Wt=v(!1),Ut=v(!1),Bt=Z(()=>{let d=a.value.platform;return a.value.platform==="claude-console"||a.value.platform==="ccr"?d="claude":a.value.platform==="openai-responses"?d="openai":a.value.platform==="gemini-api"&&(d="gemini"),Ct.value.filter(t=>t.platform===d)}),Gt=async()=>{Wt.value=!0;try{const d=await sr();Ct.value=d.data||[]}catch{V("加载分组列表失败","error"),Ct.value=[]}finally{Wt.value=!1}},Ft=async()=>{await Gt(),V("分组列表已刷新","success")},Rt=()=>{Ut.value=!0},$a=async()=>{await Gt()},Aa=async()=>{var t;if(!((t=c.account)!=null&&t.id))return;const d=[typeof A.fetchDroidAccounts=="function"?A.fetchDroidAccounts:null,typeof A.fetchAllAccounts=="function"?A.fetchAllAccounts:null].filter(Boolean);for(const ie of d)try{await ie();return}catch(ye){console.error("刷新账户列表失败:",ye)}};ve(()=>a.value.platform,d=>{d==="claude-console"||d==="ccr"||d==="bedrock"||d==="openai-responses"?a.value.addType="manual":d==="claude"||d==="gemini"||d==="openai"?a.value.addType="oauth":(d==="gemini-api"||d==="azure_openai")&&(a.value.addType="apikey"),a.value.accountType==="group"&&(a.value.groupId="",a.value.groupIds=[])}),ve(()=>a.value.groupIds,d=>{a.value.accountType==="group"&&(d&&d.length>0?a.value.groupId=d[0]:a.value.groupId="")},{deep:!0}),ve(()=>a.value.addType,(d,t)=>{d!==t&&(d==="apikey"?(a.value.accessToken="",a.value.refreshToken="",I.value.accessToken="",I.value.refreshToken="",a.value.authenticationMethod="api_key",a.value.apiKeyUpdateMode="append"):t==="apikey"&&(a.value.apiKeysInput="",a.value.apiKeyUpdateMode="append",I.value.apiKeys="",M.value||(a.value.authenticationMethod="")))}),ve(()=>a.value.apiKeyUpdateMode,(d,t)=>{d!==t&&I.value.apiKeys&&(I.value.apiKeys="")}),ve(()=>a.value.apiKeysInput,d=>{if(!I.value.apiKeys)return;const t=nt(d),ie=a.value.apiKeyUpdateMode;if(ie==="append"&&t.length>0){I.value.apiKeys="";return}if(ie==="replace"){(t.length>0||!d||d.trim()==="")&&(I.value.apiKeys="");return}ie==="delete"&&t.length>0&&(I.value.apiKeys="")}),ve(de,d=>{if(!d||typeof d!="string")return;const t=d.trim();if(!t)return;if(t.startsWith("http://")||t.startsWith("https://"))if(t.startsWith("http://localhost:45462"))try{const i=new URL(t).searchParams.get("code");i?(de.value=i,V("成功提取授权码!","success")):V("URL 中未找到授权码参数,请检查链接是否正确","error")}catch{V("链接格式错误,请检查是否为完整的 URL","error")}else V("请粘贴以 http://localhost:45462 开头的链接","error")}),ve(()=>a.value.platform,d=>{M.value||z("platform-changed",d)}),ve(()=>a.value.accountType,d=>{d==="group"&&Ct.value.length===0&&Gt()}),ve(()=>a.value.groupId,d=>{d==="__new__"&&(a.value.groupId="",Ut.value=!0)});const Ca=()=>{Oe.value.push({from:"",to:""})},yt=d=>{Oe.value.splice(d,1)},De=(d,t)=>{if(Oe.value.some(ye=>ye.from===d)){V(`模型 ${d} 的映射已存在`,"info");return}Oe.value.push({from:d,to:t}),V(`已添加映射: ${d} → ${t}`,"success")},la=()=>{const d={};return U.value==="whitelist"?re.value.forEach(t=>{d[t]=t}):Oe.value.forEach(t=>{t.from&&t.to&&(d[t.from]=t.to)}),Object.keys(d).length>0?d:null};ve(()=>c.account,d=>{if(d){st();const t=Qe(d.proxy),ie=typeof d.authenticationMethod=="string"?d.authenticationMethod.trim().toLowerCase():"",ye=ie==="api_key"?"apikey":ie==="manual"?"manual":"oauth";let i="";d.accountType==="group"&&(i=d.groupId||d.groupInfo&&d.groupInfo.id||"");let pe="claude_max";if(d.subscriptionInfo){const me=typeof d.subscriptionInfo=="string"?JSON.parse(d.subscriptionInfo):d.subscriptionInfo;me.accountType?pe=me.accountType:me.hasClaudeMax?pe="claude_max":me.hasClaudePro?pe="claude_pro":pe="claude_free"}a.value={platform:d.platform,addType:ye,name:d.name,description:d.description||"",accountType:d.accountType||"shared",subscriptionType:pe,autoStopOnWarning:d.autoStopOnWarning||!1,interceptWarmup:d.interceptWarmup===!0||d.interceptWarmup==="true",useUnifiedUserAgent:d.useUnifiedUserAgent||!1,useUnifiedClientId:d.useUnifiedClientId||!1,unifiedClientId:d.unifiedClientId||"",serialQueueEnabled:(d.maxConcurrency||0)>0,groupId:i,groupIds:[],projectId:d.projectId||"",accessToken:"",refreshToken:"",authenticationMethod:d.authenticationMethod||"",apiKeysInput:"",apiKeyUpdateMode:"append",proxy:t,apiUrl:d.apiUrl||"",apiKey:"",priority:d.priority||50,supportedModels:(()=>{const me=d.supportedModels;return me?typeof me=="object"&&!Array.isArray(me)?Object.keys(me):Array.isArray(me)?me:[]:[]})(),userAgent:d.userAgent||"",enableRateLimit:!!(d.rateLimitDuration&&d.rateLimitDuration>0),rateLimitDuration:d.rateLimitDuration||60,accessKeyId:"",secretAccessKey:"",region:d.region||"",sessionToken:"",defaultModel:d.defaultModel||"",smallFastModel:d.smallFastModel||"",azureEndpoint:d.azureEndpoint||"",apiVersion:d.apiVersion||"",deploymentName:d.deploymentName||"",baseApi:d.baseApi||"",baseUrl:d.baseUrl||"https://generativelanguage.googleapis.com",dailyQuota:d.dailyQuota||0,dailyUsage:d.dailyUsage||0,quotaResetTime:d.quotaResetTime||"00:00",maxConcurrentTasks:d.maxConcurrentTasks||0,disableAutoProtection:d.disableAutoProtection===!0},d.platform==="claude-console"&&B(),d.accountType==="group"&&Gt().then(async()=>{const me=[];if(d.groupInfos&&Array.isArray(d.groupInfos)&&d.groupInfos.length>0)d.groupInfos.forEach(qe=>{qe&&qe.id&&me.push(qe.id)}),me.length>0&&(a.value.groupId=me[0]);else if(d.groupInfo&&d.groupInfo.id)a.value.groupId=d.groupInfo.id,me.push(d.groupInfo.id);else if(d.groupId)a.value.groupId=d.groupId,me.push(d.groupId);else if(d.groupIds&&Array.isArray(d.groupIds)&&d.groupIds.length>0)a.value.groupId=d.groupIds[0],me.push(...d.groupIds);else{const qe=Ct.value.map(async He=>{try{((await Vs(He.id)).data||[]).some(L=>L.id===d.id)&&(me.push(He.id),a.value.groupId||(a.value.groupId=He.id))}catch{}});await Promise.all(qe)}a.value.groupIds=me})}},{immediate:!0});const dt=async()=>{try{const d=await Ds();d.success&&d.userAgent?C.value=d.userAgent:C.value=""}catch{C.value=""}},_t=async()=>{G.value=!0;try{(await js()).success?(C.value="",V("统一User-Agent缓存已清除","success")):V("清除缓存失败","error")}catch(d){V("清除缓存失败:"+(d.message||"未知错误"),"error")}finally{G.value=!1}},mt=()=>{const d=new Uint8Array(32);return crypto.getRandomValues(d),Array.from(d,t=>t.toString(16).padStart(2,"0")).join("")},oa=()=>{a.value.unifiedClientId=mt(),V("已生成新的客户端标识","success")},Ta=()=>{a.value.useUnifiedClientId&&(a.value.useUnifiedUserAgent=!0,a.value.unifiedClientId||(a.value.unifiedClientId=mt()))},Ia=Z(()=>{const d=new Date;return d.setMinutes(d.getMinutes()+1),d.toISOString().slice(0,16)}),pt=()=>{if(!a.value.expireDuration){a.value.expiresAt=null;return}if(a.value.expireDuration==="custom")return;const d=new Date,ie=a.value.expireDuration.match(/(\d+)([d])/);if(ie){const[,ye,i]=ie,pe=parseInt(ye);i==="d"&&d.setDate(d.getDate()+pe),a.value.expiresAt=d.toISOString()}},na=()=>{a.value.customExpireDate&&(a.value.expiresAt=new Date(a.value.customExpireDate).toISOString())},Ua=d=>d?new Date(d).toLocaleString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}):"";return ra(()=>{var d;K.value=ze(a.value.platform),M.value&&st(),Re(),dt(),M.value&&((d=c.account)==null?void 0:d.platform)==="claude-console"&&B()}),ve(()=>a.value.platform,d=>{d==="claude"&&dt()}),(d,t)=>{var ie,ye;return o(),Xe(Mt,{to:"body"},[se.value?(o(),n("div",Ni,[e("div",qi,[e("div",Wi,[e("div",Bi,[t[171]||(t[171]=e("div",{class:"flex h-8 w-8 items-center justify-center rounded-lg bg-gradient-to-br from-green-500 to-green-600 sm:h-10 sm:w-10 sm:rounded-xl"},[e("i",{class:"fas fa-user-circle text-sm text-white sm:text-base"})],-1)),e("h3",Gi,u(M.value?"编辑账户":"添加账户"),1)]),e("button",{class:"p-1 text-gray-400 transition-colors hover:text-gray-600",onClick:t[0]||(t[0]=i=>d.$emit("close"))},t[172]||(t[172]=[e("i",{class:"fas fa-times text-lg sm:text-xl"},null,-1)]))]),!M.value&&(a.value.addType==="oauth"||a.value.addType==="setup-token")?(o(),n("div",Fi,[e("div",Qi,[e("div",Hi,[e("div",{class:$(["flex h-6 w-6 items-center justify-center rounded-full text-xs font-semibold sm:h-8 sm:w-8 sm:text-sm",N.value>=1?"bg-blue-500 text-white":"bg-gray-200 text-gray-500"])}," 1 ",2),t[173]||(t[173]=e("span",{class:"ml-1.5 text-xs font-medium text-gray-700 dark:text-gray-300 sm:ml-2 sm:text-sm"},"基本信息",-1))]),t[175]||(t[175]=e("div",{class:"h-0.5 w-4 bg-gray-300 sm:w-8"},null,-1)),e("div",Ji,[e("div",{class:$(["flex h-6 w-6 items-center justify-center rounded-full text-xs font-semibold sm:h-8 sm:w-8 sm:text-sm",N.value>=2?"bg-blue-500 text-white":"bg-gray-200 text-gray-500"])}," 2 ",2),t[174]||(t[174]=e("span",{class:"ml-1.5 text-xs font-medium text-gray-700 dark:text-gray-300 sm:ml-2 sm:text-sm"},"授权认证",-1))])])])):m("",!0),N.value===1&&!M.value?(o(),n("div",Yi,[e("div",Zi,[M.value?m("",!0):(o(),n("div",Xi,[t[215]||(t[215]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"选择平台",-1)),e("div",ed,[e("div",td,[e("div",{class:$(["group relative cursor-pointer overflow-hidden rounded-lg border-2 transition-all duration-200",[K.value==="claude"?"border-indigo-500 bg-gradient-to-br from-indigo-50 to-purple-50 shadow-md dark:from-indigo-900/20 dark:to-purple-900/20":"border-gray-200 bg-white hover:border-indigo-300 hover:shadow dark:border-gray-700 dark:bg-gray-800 dark:hover:border-indigo-600"]]),onClick:t[1]||(t[1]=i=>q("claude"))},[e("div",ad,[e("div",rd,[t[177]||(t[177]=e("div",{class:"flex h-8 w-8 items-center justify-center rounded-md bg-gradient-to-br from-indigo-500 to-purple-600"},[e("i",{class:"fas fa-brain text-sm text-white"})],-1)),K.value==="claude"?(o(),n("div",sd,t[176]||(t[176]=[e("i",{class:"fas fa-check text-xs text-white"},null,-1)]))):m("",!0)]),t[178]||(t[178]=e("h4",{class:"mt-2 text-sm font-semibold text-gray-900 dark:text-gray-100"}," Claude ",-1)),t[179]||(t[179]=e("p",{class:"text-xs text-gray-600 dark:text-gray-400"},"Anthropic",-1))])],2),e("div",{class:$(["group relative cursor-pointer overflow-hidden rounded-lg border-2 transition-all duration-200",[K.value==="openai"?"border-emerald-500 bg-gradient-to-br from-emerald-50 to-teal-50 shadow-md dark:from-emerald-900/20 dark:to-teal-900/20":"border-gray-200 bg-white hover:border-emerald-300 hover:shadow dark:border-gray-700 dark:bg-gray-800 dark:hover:border-emerald-600"]]),onClick:t[2]||(t[2]=i=>q("openai"))},[e("div",ld,[e("div",od,[t[181]||(t[181]=e("div",{class:"flex h-8 w-8 items-center justify-center rounded-md bg-gradient-to-br from-emerald-500 to-teal-600"},[e("svg",{class:"h-5 w-5 text-white",fill:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[e("path",{d:"M22.2819 9.8211a5.9847 5.9847 0 0 0-.5157-4.9108 6.0462 6.0462 0 0 0-6.5098-2.9A6.0651 6.0651 0 0 0 4.9807 4.1818a5.9847 5.9847 0 0 0-3.9977 2.9 6.0462 6.0462 0 0 0 .7427 7.0966 5.98 5.98 0 0 0 .511 4.9107 6.051 6.051 0 0 0 6.5146 2.9001A5.9847 5.9847 0 0 0 13.2599 24a6.0557 6.0557 0 0 0 5.7718-4.2058 5.9894 5.9894 0 0 0 3.9977-2.9001 6.0557 6.0557 0 0 0-.7475-7.0729zm-9.022 12.6081a4.4755 4.4755 0 0 1-2.8764-1.0408l.1419-.0804 4.7783-2.7582a.7948.7948 0 0 0 .3927-.6813v-6.7369l2.02 1.1686a.071.071 0 0 1 .038.052v5.5826a4.504 4.504 0 0 1-4.4945 4.4944zm-9.6607-4.1254a4.4708 4.4708 0 0 1-.5346-3.0137l.142.0852 4.783 2.7582a.7712.7712 0 0 0 .7806 0l5.8428-3.3685v2.3324a.0804.0804 0 0 1-.0332.0615L9.74 19.9502a4.4992 4.4992 0 0 1-6.1408-1.6464zM2.3408 7.8956a4.485 4.485 0 0 1 2.3655-1.9728V11.6a.7664.7664 0 0 0 .3879.6765l5.8144 3.3543-2.0201 1.1685a.0757.0757 0 0 1-.071 0l-4.8303-2.7865A4.504 4.504 0 0 1 2.3408 7.8956zm16.5963 3.8558L13.1038 8.364 15.1192 7.2a.0757.0757 0 0 1 .071 0l4.8303 2.7913a4.4944 4.4944 0 0 1-.6765 8.1042v-5.6772a.79.79 0 0 0-.4069-.6813zm2.0107-3.0231l-.142-.0852-4.7735-2.7818a.7759.7759 0 0 0-.7854 0L9.409 9.2297V6.8974a.0662.0662 0 0 1 .0284-.0615l4.8303-2.7866a4.4992 4.4992 0 0 1 6.6802 4.66zM8.3065 12.863l-2.02-1.1638a.0804.0804 0 0 1-.038-.0567V6.0742a4.4992 4.4992 0 0 1 7.3757-3.4537l-.142.0805L8.704 5.459a.7948.7948 0 0 0-.3927.6813zm1.0976-2.3654l2.602-1.4998 2.6069 1.4998v2.9994l-2.5974 1.4997-2.6067-1.4997Z"})])],-1)),K.value==="openai"?(o(),n("div",nd,t[180]||(t[180]=[e("i",{class:"fas fa-check text-xs text-white"},null,-1)]))):m("",!0)]),t[182]||(t[182]=e("h4",{class:"mt-2 text-sm font-semibold text-gray-900 dark:text-gray-100"}," OpenAI ",-1)),t[183]||(t[183]=e("p",{class:"text-xs text-gray-600 dark:text-gray-400"},"GPT 系列",-1))])],2),e("div",{class:$(["group relative cursor-pointer overflow-hidden rounded-lg border-2 transition-all duration-200",[K.value==="gemini"?"border-blue-500 bg-gradient-to-br from-blue-50 to-indigo-50 shadow-md dark:from-blue-900/20 dark:to-indigo-900/20":"border-gray-200 bg-white hover:border-blue-300 hover:shadow dark:border-gray-700 dark:bg-gray-800 dark:hover:border-blue-600"]]),onClick:t[3]||(t[3]=i=>q("gemini"))},[e("div",id,[e("div",dd,[t[185]||(t[185]=e("div",{class:"flex h-8 w-8 items-center justify-center rounded-md bg-gradient-to-br from-blue-500 to-indigo-600"},[e("i",{class:"fab fa-google text-sm text-white"})],-1)),K.value==="gemini"?(o(),n("div",ud,t[184]||(t[184]=[e("i",{class:"fas fa-check text-xs text-white"},null,-1)]))):m("",!0)]),t[186]||(t[186]=e("h4",{class:"mt-2 text-sm font-semibold text-gray-900 dark:text-gray-100"}," Gemini ",-1)),t[187]||(t[187]=e("p",{class:"text-xs text-gray-600 dark:text-gray-400"},"Google AI",-1))])],2),e("div",{class:$(["group relative cursor-pointer overflow-hidden rounded-lg border-2 transition-all duration-200",[K.value==="droid"?"border-rose-500 bg-gradient-to-br from-rose-50 to-orange-50 shadow-md dark:from-rose-900/20 dark:to-orange-900/20":"border-gray-200 bg-white hover:border-rose-300 hover:shadow dark:border-gray-700 dark:bg-gray-800 dark:hover:border-rose-600"]]),onClick:t[4]||(t[4]=i=>q("droid"))},[e("div",pd,[e("div",gd,[t[189]||(t[189]=e("div",{class:"flex h-8 w-8 items-center justify-center rounded-md bg-gradient-to-br from-rose-500 to-orange-500"},[e("i",{class:"fas fa-robot text-sm text-white"})],-1)),K.value==="droid"?(o(),n("div",cd,t[188]||(t[188]=[e("i",{class:"fas fa-check text-xs text-white"},null,-1)]))):m("",!0)]),t[190]||(t[190]=e("h4",{class:"mt-2 text-sm font-semibold text-gray-900 dark:text-gray-100"}," Droid ",-1)),t[191]||(t[191]=e("p",{class:"text-xs text-gray-600 dark:text-gray-400"},"Claude Droid",-1))])],2)]),K.value?(o(),n("div",yd,[t[214]||(t[214]=e("p",{class:"mb-2 text-xs font-medium text-gray-700 dark:text-gray-300"}," 选择具体平台类型: ",-1)),e("div",md,[K.value==="claude"?(o(),n(ke,{key:0},[e("label",{class:$(["group relative flex cursor-pointer items-center rounded-md border p-2 transition-all",[a.value.platform==="claude"?"border-indigo-500 bg-indigo-50 dark:border-indigo-400 dark:bg-indigo-900/30":"border-gray-300 bg-white hover:border-indigo-400 hover:bg-indigo-50/50 dark:border-gray-600 dark:bg-gray-700 dark:hover:border-indigo-500 dark:hover:bg-indigo-900/20"]])},[b(e("input",{"onUpdate:modelValue":t[5]||(t[5]=i=>a.value.platform=i),class:"sr-only",type:"radio",value:"claude"},null,512),[[Ie,a.value.platform]]),t[193]||(t[193]=e("div",{class:"flex items-center gap-2"},[e("i",{class:"fas fa-brain text-sm text-indigo-600 dark:text-indigo-400"}),e("div",null,[e("span",{class:"block text-xs font-medium text-gray-900 dark:text-gray-100"},"Claude Code"),e("span",{class:"text-xs text-gray-500 dark:text-gray-400"},"官方")])],-1)),a.value.platform==="claude"?(o(),n("div",xd,t[192]||(t[192]=[e("i",{class:"fas fa-check text-xs text-white"},null,-1)]))):m("",!0)],2),e("label",{class:$(["group relative flex cursor-pointer items-center rounded-md border p-2 transition-all",[a.value.platform==="claude-console"?"border-purple-500 bg-purple-50 dark:border-purple-400 dark:bg-purple-900/30":"border-gray-300 bg-white hover:border-purple-400 hover:bg-purple-50/50 dark:border-gray-600 dark:bg-gray-700 dark:hover:border-purple-500 dark:hover:bg-purple-900/20"]])},[b(e("input",{"onUpdate:modelValue":t[6]||(t[6]=i=>a.value.platform=i),class:"sr-only",type:"radio",value:"claude-console"},null,512),[[Ie,a.value.platform]]),t[195]||(t[195]=e("div",{class:"flex items-center gap-2"},[e("i",{class:"fas fa-terminal text-sm text-purple-600 dark:text-purple-400"}),e("div",null,[e("span",{class:"block text-xs font-medium text-gray-900 dark:text-gray-100"},"Claude Console"),e("span",{class:"text-xs text-gray-500 dark:text-gray-400"},"标准API")])],-1)),a.value.platform==="claude-console"?(o(),n("div",fd,t[194]||(t[194]=[e("i",{class:"fas fa-check text-xs text-white"},null,-1)]))):m("",!0)],2),e("label",{class:$(["group relative flex cursor-pointer items-center rounded-md border p-2 transition-all",[a.value.platform==="bedrock"?"border-orange-500 bg-orange-50 dark:border-orange-400 dark:bg-orange-900/30":"border-gray-300 bg-white hover:border-orange-400 hover:bg-orange-50/50 dark:border-gray-600 dark:bg-gray-700 dark:hover:border-orange-500 dark:hover:bg-orange-900/20"]])},[b(e("input",{"onUpdate:modelValue":t[7]||(t[7]=i=>a.value.platform=i),class:"sr-only",type:"radio",value:"bedrock"},null,512),[[Ie,a.value.platform]]),t[197]||(t[197]=e("div",{class:"flex items-center gap-2"},[e("i",{class:"fab fa-aws text-sm text-orange-600 dark:text-orange-400"}),e("div",null,[e("span",{class:"block text-xs font-medium text-gray-900 dark:text-gray-100"},"Bedrock"),e("span",{class:"text-xs text-gray-500 dark:text-gray-400"},"AWS")])],-1)),a.value.platform==="bedrock"?(o(),n("div",bd,t[196]||(t[196]=[e("i",{class:"fas fa-check text-xs text-white"},null,-1)]))):m("",!0)],2),e("label",{class:$(["group relative flex cursor-pointer items-center rounded-md border p-2 transition-all",[a.value.platform==="ccr"?"border-cyan-500 bg-cyan-50 dark:border-cyan-400 dark:bg-cyan-900/30":"border-gray-300 bg-white hover:border-cyan-400 hover:bg-cyan-50/50 dark:border-gray-600 dark:bg-gray-700 dark:hover:border-cyan-500 dark:hover:bg-cyan-900/20"]])},[b(e("input",{"onUpdate:modelValue":t[8]||(t[8]=i=>a.value.platform=i),class:"sr-only",type:"radio",value:"ccr"},null,512),[[Ie,a.value.platform]]),t[199]||(t[199]=e("div",{class:"flex items-center gap-2"},[e("i",{class:"fas fa-code-branch text-sm text-cyan-600 dark:text-cyan-400"}),e("div",null,[e("span",{class:"block text-xs font-medium text-gray-900 dark:text-gray-100"},"CCR"),e("span",{class:"text-xs text-gray-500 dark:text-gray-400"},"Claude Code Router")])],-1)),a.value.platform==="ccr"?(o(),n("div",vd,t[198]||(t[198]=[e("i",{class:"fas fa-check text-xs text-white"},null,-1)]))):m("",!0)],2)],64)):m("",!0),K.value==="openai"?(o(),n(ke,{key:1},[e("label",{class:$(["group relative flex cursor-pointer items-center rounded-md border p-2 transition-all",[a.value.platform==="openai"?"border-emerald-500 bg-emerald-50 dark:border-emerald-400 dark:bg-emerald-900/30":"border-gray-300 bg-white hover:border-emerald-400 hover:bg-emerald-50/50 dark:border-gray-600 dark:bg-gray-700 dark:hover:border-emerald-500 dark:hover:bg-emerald-900/20"]])},[b(e("input",{"onUpdate:modelValue":t[9]||(t[9]=i=>a.value.platform=i),class:"sr-only",type:"radio",value:"openai"},null,512),[[Ie,a.value.platform]]),t[201]||(t[201]=e("div",{class:"flex items-center gap-2"},[e("i",{class:"fas fa-robot text-sm text-emerald-600 dark:text-emerald-400"}),e("div",null,[e("span",{class:"block text-xs font-medium text-gray-900 dark:text-gray-100"},"Codex Cli"),e("span",{class:"text-xs text-gray-500 dark:text-gray-400"},"官方")])],-1)),a.value.platform==="openai"?(o(),n("div",kd,t[200]||(t[200]=[e("i",{class:"fas fa-check text-xs text-white"},null,-1)]))):m("",!0)],2),e("label",{class:$(["group relative flex cursor-pointer items-center rounded-md border p-2 transition-all",[a.value.platform==="openai-responses"?"border-teal-500 bg-teal-50 dark:border-teal-400 dark:bg-teal-900/30":"border-gray-300 bg-white hover:border-teal-400 hover:bg-teal-50/50 dark:border-gray-600 dark:bg-gray-700 dark:hover:border-teal-500 dark:hover:bg-teal-900/20"]])},[b(e("input",{"onUpdate:modelValue":t[10]||(t[10]=i=>a.value.platform=i),class:"sr-only",type:"radio",value:"openai-responses"},null,512),[[Ie,a.value.platform]]),t[203]||(t[203]=e("div",{class:"flex items-center gap-2"},[e("i",{class:"fas fa-server text-sm text-teal-600 dark:text-teal-400"}),e("div",null,[e("span",{class:"block text-xs font-medium text-gray-900 dark:text-gray-100"},"Responses"),e("span",{class:"text-xs text-gray-500 dark:text-gray-400"},"Openai-Responses")])],-1)),a.value.platform==="openai-responses"?(o(),n("div",hd,t[202]||(t[202]=[e("i",{class:"fas fa-check text-xs text-white"},null,-1)]))):m("",!0)],2),e("label",{class:$(["group relative flex cursor-pointer items-center rounded-md border p-2 transition-all",[a.value.platform==="azure_openai"?"border-blue-500 bg-blue-50 dark:border-blue-400 dark:bg-blue-900/30":"border-gray-300 bg-white hover:border-blue-400 hover:bg-blue-50/50 dark:border-gray-600 dark:bg-gray-700 dark:hover:border-blue-500 dark:hover:bg-blue-900/20"]])},[b(e("input",{"onUpdate:modelValue":t[11]||(t[11]=i=>a.value.platform=i),class:"sr-only",type:"radio",value:"azure_openai"},null,512),[[Ie,a.value.platform]]),t[205]||(t[205]=e("div",{class:"flex items-center gap-2"},[e("i",{class:"fab fa-microsoft text-sm text-blue-600 dark:text-blue-400"}),e("div",null,[e("span",{class:"block text-xs font-medium text-gray-900 dark:text-gray-100"},"Azure"),e("span",{class:"text-xs text-gray-500 dark:text-gray-400"},"Azure Openai")])],-1)),a.value.platform==="azure_openai"?(o(),n("div",wd,t[204]||(t[204]=[e("i",{class:"fas fa-check text-xs text-white"},null,-1)]))):m("",!0)],2)],64)):m("",!0),K.value==="gemini"?(o(),n(ke,{key:2},[e("label",{class:$(["group relative flex cursor-pointer items-center rounded-md border p-2 transition-all",[a.value.platform==="gemini"?"border-blue-500 bg-blue-50 dark:border-blue-400 dark:bg-blue-900/30":"border-gray-300 bg-white hover:border-blue-400 hover:bg-blue-50/50 dark:border-gray-600 dark:bg-gray-700 dark:hover:border-blue-500 dark:hover:bg-blue-900/20"]])},[b(e("input",{"onUpdate:modelValue":t[12]||(t[12]=i=>a.value.platform=i),class:"sr-only",type:"radio",value:"gemini"},null,512),[[Ie,a.value.platform]]),t[207]||(t[207]=e("div",{class:"flex items-center gap-2"},[e("i",{class:"fab fa-google text-sm text-blue-600 dark:text-blue-400"}),e("div",null,[e("span",{class:"block text-xs font-medium text-gray-900 dark:text-gray-100"},"Gemini Cli"),e("span",{class:"text-xs text-gray-500 dark:text-gray-400"},"官方")])],-1)),a.value.platform==="gemini"?(o(),n("div",$d,t[206]||(t[206]=[e("i",{class:"fas fa-check text-xs text-white"},null,-1)]))):m("",!0)],2),e("label",{class:$(["group relative flex cursor-pointer items-center rounded-md border p-2 transition-all",[a.value.platform==="gemini-antigravity"?"border-purple-500 bg-purple-50 dark:border-purple-400 dark:bg-purple-900/30":"border-gray-300 bg-white hover:border-purple-400 hover:bg-purple-50/50 dark:border-gray-600 dark:bg-gray-700 dark:hover:border-purple-500 dark:hover:bg-purple-900/20"]])},[b(e("input",{"onUpdate:modelValue":t[13]||(t[13]=i=>a.value.platform=i),class:"sr-only",type:"radio",value:"gemini-antigravity"},null,512),[[Ie,a.value.platform]]),t[209]||(t[209]=e("div",{class:"flex items-center gap-2"},[e("i",{class:"fas fa-rocket text-sm text-purple-600 dark:text-purple-400"}),e("div",null,[e("span",{class:"block text-xs font-medium text-gray-900 dark:text-gray-100"},"Antigravity"),e("span",{class:"text-xs text-gray-500 dark:text-gray-400"},"OAuth")])],-1)),a.value.platform==="gemini-antigravity"?(o(),n("div",Ad,t[208]||(t[208]=[e("i",{class:"fas fa-check text-xs text-white"},null,-1)]))):m("",!0)],2),e("label",{class:$(["group relative flex cursor-pointer items-center rounded-md border p-2 transition-all",[a.value.platform==="gemini-api"?"border-amber-500 bg-amber-50 dark:border-amber-400 dark:bg-amber-900/30":"border-gray-300 bg-white hover:border-amber-400 hover:bg-amber-50/50 dark:border-gray-600 dark:bg-gray-700 dark:hover:border-amber-500 dark:hover:bg-amber-900/20"]])},[b(e("input",{"onUpdate:modelValue":t[14]||(t[14]=i=>a.value.platform=i),class:"sr-only",type:"radio",value:"gemini-api"},null,512),[[Ie,a.value.platform]]),t[211]||(t[211]=e("div",{class:"flex items-center gap-2"},[e("i",{class:"fas fa-key text-sm text-amber-600 dark:text-amber-400"}),e("div",null,[e("span",{class:"block text-xs font-medium text-gray-900 dark:text-gray-100"},"Gemini API"),e("span",{class:"text-xs text-gray-500 dark:text-gray-400"},"API Key")])],-1)),a.value.platform==="gemini-api"?(o(),n("div",Cd,t[210]||(t[210]=[e("i",{class:"fas fa-check text-xs text-white"},null,-1)]))):m("",!0)],2)],64)):m("",!0),K.value==="droid"?(o(),n("label",{key:3,class:$(["group relative flex cursor-pointer items-center rounded-md border p-2 transition-all",[a.value.platform==="droid"?"border-rose-500 bg-rose-50 dark:border-rose-400 dark:bg-rose-900/30":"border-gray-300 bg-white hover:border-rose-400 hover:bg-rose-50/50 dark:border-gray-600 dark:bg-gray-700 dark:hover:border-rose-500 dark:hover:bg-rose-900/20"]])},[b(e("input",{"onUpdate:modelValue":t[15]||(t[15]=i=>a.value.platform=i),class:"sr-only",type:"radio",value:"droid"},null,512),[[Ie,a.value.platform]]),t[213]||(t[213]=e("div",{class:"flex items-center gap-2"},[e("i",{class:"fas fa-robot text-sm text-rose-600 dark:text-rose-400"}),e("div",null,[e("span",{class:"block text-xs font-medium text-gray-900 dark:text-gray-100"},"Droid 专属"),e("span",{class:"text-xs text-gray-500 dark:text-gray-400"},"官方")])],-1)),a.value.platform==="droid"?(o(),n("div",Td,t[212]||(t[212]=[e("i",{class:"fas fa-check text-xs text-white"},null,-1)]))):m("",!0)],2)):m("",!0)])])):m("",!0)])])),!M.value&&a.value.platform!=="claude-console"&&a.value.platform!=="ccr"&&a.value.platform!=="bedrock"&&a.value.platform!=="azure_openai"&&a.value.platform!=="openai-responses"&&a.value.platform!=="gemini-api"?(o(),n("div",Id,[t[220]||(t[220]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"添加方式",-1)),e("div",Ud,[e("label",_d,[b(e("input",{"onUpdate:modelValue":t[16]||(t[16]=i=>a.value.addType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"oauth"},null,512),[[Ie,a.value.addType]]),e("span",Kd,[t[216]||(t[216]=f(" OAuth 授权",-1)),a.value.platform==="claude"||a.value.platform==="openai"?(o(),n("span",Sd," (用量可视化)")):m("",!0)])]),a.value.platform==="claude"?(o(),n("label",Md,[b(e("input",{"onUpdate:modelValue":t[17]||(t[17]=i=>a.value.addType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"setup-token"},null,512),[[Ie,a.value.addType]]),t[217]||(t[217]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"Setup Token (效期长)",-1))])):m("",!0),e("label",Dd,[b(e("input",{"onUpdate:modelValue":t[18]||(t[18]=i=>a.value.addType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"manual"},null,512),[[Ie,a.value.addType]]),t[218]||(t[218]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"手动输入 Access Token",-1))]),a.value.platform==="droid"?(o(),n("label",Pd,[b(e("input",{"onUpdate:modelValue":t[19]||(t[19]=i=>a.value.addType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"apikey"},null,512),[[Ie,a.value.addType]]),t[219]||(t[219]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"使用 API Key (支持多个)",-1))])):m("",!0)])])):m("",!0),e("div",null,[t[221]||(t[221]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"账户名称",-1)),b(e("input",{"onUpdate:modelValue":t[20]||(t[20]=i=>a.value.name=i),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":I.value.name}]),placeholder:"为账户设置一个易识别的名称",required:"",type:"text"},null,2),[[j,a.value.name]]),I.value.name?(o(),n("p",jd,u(I.value.name),1)):m("",!0)]),e("div",null,[t[222]||(t[222]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"描述 (可选)",-1)),b(e("textarea",{"onUpdate:modelValue":t[21]||(t[21]=i=>a.value.description=i),class:"form-input w-full resize-none border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"账户用途说明...",rows:"3"},null,512),[[j,a.value.description]])]),e("div",null,[t[226]||(t[226]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"账户类型",-1)),e("div",Vd,[e("label",zd,[b(e("input",{"onUpdate:modelValue":t[22]||(t[22]=i=>a.value.accountType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"shared"},null,512),[[Ie,a.value.accountType]]),t[223]||(t[223]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"共享账户",-1))]),e("label",Ld,[b(e("input",{"onUpdate:modelValue":t[23]||(t[23]=i=>a.value.accountType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"dedicated"},null,512),[[Ie,a.value.accountType]]),t[224]||(t[224]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"专属账户",-1))]),e("label",Rd,[b(e("input",{"onUpdate:modelValue":t[24]||(t[24]=i=>a.value.accountType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"group"},null,512),[[Ie,a.value.accountType]]),t[225]||(t[225]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"分组调度",-1))])]),t[227]||(t[227]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"}," 共享账户:供所有API Key使用;专属账户:仅供特定API Key使用;分组调度:加入分组供分组内调度 ",-1))]),!M.value&&a.value.platform!=="gemini-api"?(o(),n("div",Od,[t[231]||(t[231]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"到期时间 (可选)",-1)),e("div",Ed,[b(e("select",{"onUpdate:modelValue":t[25]||(t[25]=i=>a.value.expireDuration=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",onChange:pt},t[228]||(t[228]=[e("option",{value:""},"永不过期",-1),e("option",{value:"30d"},"30 天",-1),e("option",{value:"90d"},"90 天",-1),e("option",{value:"180d"},"180 天",-1),e("option",{value:"365d"},"365 天",-1),e("option",{value:"custom"},"自定义日期",-1)]),544),[[wa,a.value.expireDuration]]),a.value.expireDuration==="custom"?(o(),n("div",Nd,[b(e("input",{"onUpdate:modelValue":t[26]||(t[26]=i=>a.value.customExpireDate=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",min:Ia.value,type:"datetime-local",onChange:na},null,40,qd),[[j,a.value.customExpireDate]])])):m("",!0),a.value.expiresAt?(o(),n("p",Wd,[t[229]||(t[229]=e("i",{class:"fas fa-calendar-alt mr-1"},null,-1)),f(" 将于 "+u(Ua(a.value.expiresAt))+" 过期 ",1)])):(o(),n("p",Bd,t[230]||(t[230]=[e("i",{class:"fas fa-infinity mr-1"},null,-1),f(" 账户永不过期 ",-1)])))]),t[232]||(t[232]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"}," 设置 Claude Max/Pro 订阅的到期时间,到期后将停止调度此账户 ",-1))])):m("",!0),a.value.accountType==="group"?(o(),n("div",Gd,[t[234]||(t[234]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"选择分组 *",-1)),e("div",Fd,[e("div",Qd,[e("div",Hd,[Bt.value.length===0?(o(),n("div",Jd," 暂无可用分组 ")):m("",!0),(o(!0),n(ke,null,Ne(Bt.value,i=>(o(),n("label",{key:i.id,class:"flex cursor-pointer items-center gap-2 rounded-md p-2 hover:bg-gray-50 dark:hover:bg-gray-600"},[b(e("input",{"onUpdate:modelValue":t[27]||(t[27]=pe=>a.value.groupIds=pe),class:"rounded border-gray-300 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox",value:i.id},null,8,Yd),[[je,a.value.groupIds]]),e("span",Zd,u(i.name)+" ("+u(i.memberCount||0)+" 个成员) ",1)]))),128)),e("div",{class:"border-t pt-2 dark:border-gray-600"},[e("button",{class:"flex items-center gap-2 text-sm text-blue-600 hover:text-blue-800 dark:text-blue-400 dark:hover:text-blue-300",type:"button",onClick:Rt},t[233]||(t[233]=[e("i",{class:"fas fa-plus"},null,-1),f(" 新建分组 ",-1)]))])])]),e("button",{class:"rounded-md border border-gray-300 bg-white px-3 py-2 text-sm font-medium text-gray-700 hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:hover:bg-gray-600",type:"button",onClick:Ft},[e("i",{class:$(["fas fa-sync-alt",{"animate-spin":Wt.value}])},null,2)])])])):m("",!0),a.value.platform==="gemini"||a.value.platform==="gemini-antigravity"?(o(),n("div",Xd,[t[235]||(t[235]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"项目 ID (可选)",-1)),b(e("input",{"onUpdate:modelValue":t[28]||(t[28]=i=>a.value.projectId=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"例如:verdant-wares-464411-k9",type:"text"},null,512),[[j,a.value.projectId]]),t[236]||(t[236]=e("div",{class:"mt-2 rounded-lg border border-yellow-200 bg-yellow-50 p-3"},[e("div",{class:"flex items-start gap-2"},[e("i",{class:"fas fa-info-circle mt-0.5 text-yellow-600"}),e("div",{class:"text-xs text-yellow-700"},[e("p",{class:"mb-1 font-medium"},"Google Cloud/Workspace 账号需要提供项目 ID"),e("p",null," 某些 Google 账号(特别是绑定了 Google Cloud 的账号)会被识别为 Workspace 账号,需要提供额外的项目 ID。 "),e("div",{class:"mt-2 rounded border border-yellow-300 bg-white p-2"},[e("p",{class:"mb-1 font-medium"},"如何获取项目 ID:"),e("ol",{class:"ml-2 list-inside list-decimal space-y-1"},[e("li",null,[f(" 访问 "),e("a",{class:"font-medium text-blue-600 hover:underline",href:"https://console.cloud.google.com/welcome",target:"_blank"},"Google Cloud Console")]),e("li",null,[f(" 复制"),e("span",{class:"font-semibold text-red-600"},"项目 ID(Project ID)"),f(",通常是字符串格式 ")]),e("li",{class:"text-red-600"}," ⚠️ 注意:要复制项目 ID(Project ID),不要复制项目编号(Project Number)! ")])]),e("p",{class:"mt-2"},[e("strong",null,"提示:"),f("如果您的账号是普通个人账号(未绑定 Google Cloud),请留空此字段。 ")])])])],-1))])):m("",!0),a.value.platform==="bedrock"?(o(),n("div",e0,[e("div",null,[t[242]||(t[242]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"凭证类型 *",-1)),M.value?(o(),n("div",s0,[e("label",l0,[b(e("input",{"onUpdate:modelValue":t[31]||(t[31]=i=>a.value.credentialType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",disabled:"",type:"radio",value:"access_key"},null,512),[[Ie,a.value.credentialType]]),t[239]||(t[239]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"AWS Access Key(访问密钥)",-1))]),e("label",o0,[b(e("input",{"onUpdate:modelValue":t[32]||(t[32]=i=>a.value.credentialType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",disabled:"",type:"radio",value:"bearer_token"},null,512),[[Ie,a.value.credentialType]]),t[240]||(t[240]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"Bearer Token(长期令牌)",-1))])])):(o(),n("div",t0,[e("label",a0,[b(e("input",{"onUpdate:modelValue":t[29]||(t[29]=i=>a.value.credentialType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"access_key"},null,512),[[Ie,a.value.credentialType]]),t[237]||(t[237]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"AWS Access Key(访问密钥)",-1))]),e("label",r0,[b(e("input",{"onUpdate:modelValue":t[30]||(t[30]=i=>a.value.credentialType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"bearer_token"},null,512),[[Ie,a.value.credentialType]]),t[238]||(t[238]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"Bearer Token(长期令牌)",-1))])])),e("div",n0,[e("div",i0,[t[241]||(t[241]=e("i",{class:"fas fa-info-circle mt-0.5 text-blue-600 dark:text-blue-400"},null,-1)),e("div",d0,[a.value.credentialType==="access_key"?(o(),n("p",u0," 使用 AWS Access Key ID 和 Secret Access Key 进行身份验证(支持临时凭证) ")):(o(),n("p",p0," 使用 AWS Bedrock API Keys 生成的 Bearer Token 进行身份验证,更简单、权限范围更小 ")),M.value?(o(),n("p",g0," 💡 编辑模式下凭证类型不可更改,如需切换类型请重新创建账户 ")):m("",!0)])])])]),a.value.credentialType==="access_key"?(o(),n("div",c0,[e("div",null,[e("label",y0,"AWS 访问密钥 ID "+u(M.value?"":"*"),1),b(e("input",{"onUpdate:modelValue":t[33]||(t[33]=i=>a.value.accessKeyId=i),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":I.value.accessKeyId}]),placeholder:M.value?"留空则保持原有凭证不变":"请输入 AWS Access Key ID",required:!M.value,type:"text"},null,10,m0),[[j,a.value.accessKeyId]]),I.value.accessKeyId?(o(),n("p",x0,u(I.value.accessKeyId),1)):m("",!0),M.value?(o(),n("p",f0," 💡 编辑模式下,留空则保持原有 Access Key ID 不变 ")):m("",!0)]),e("div",null,[e("label",b0,"AWS 秘密访问密钥 "+u(M.value?"":"*"),1),b(e("input",{"onUpdate:modelValue":t[34]||(t[34]=i=>a.value.secretAccessKey=i),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":I.value.secretAccessKey}]),placeholder:M.value?"留空则保持原有凭证不变":"请输入 AWS Secret Access Key",required:!M.value,type:"password"},null,10,v0),[[j,a.value.secretAccessKey]]),I.value.secretAccessKey?(o(),n("p",k0,u(I.value.secretAccessKey),1)):m("",!0),M.value?(o(),n("p",h0," 💡 编辑模式下,留空则保持原有 Secret Access Key 不变 ")):m("",!0)]),e("div",null,[t[243]||(t[243]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"会话令牌 (可选)",-1)),b(e("input",{"onUpdate:modelValue":t[35]||(t[35]=i=>a.value.sessionToken=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:M.value?"留空则保持原有 Session Token 不变":"如果使用临时凭证,请输入会话令牌",type:"password"},null,8,w0),[[j,a.value.sessionToken]]),t[244]||(t[244]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 仅在使用临时 AWS 凭证时需要填写 ",-1))])])):m("",!0),a.value.credentialType==="bearer_token"?(o(),n("div",$0,[e("label",A0,"Bearer Token "+u(M.value?"":"*"),1),b(e("input",{"onUpdate:modelValue":t[36]||(t[36]=i=>a.value.bearerToken=i),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":I.value.bearerToken}]),placeholder:M.value?"留空则保持原有 Bearer Token 不变":"请输入 AWS Bearer Token",required:!M.value,type:"password"},null,10,C0),[[j,a.value.bearerToken]]),I.value.bearerToken?(o(),n("p",T0,u(I.value.bearerToken),1)):m("",!0),M.value?(o(),n("p",I0," 💡 编辑模式下,留空则保持原有 Bearer Token 不变 ")):m("",!0),t[245]||(t[245]=e("div",{class:"mt-2 rounded-lg border border-green-200 bg-green-50 p-3 dark:border-green-700 dark:bg-green-900/30"},[e("div",{class:"flex items-start gap-2"},[e("i",{class:"fas fa-key mt-0.5 text-green-600 dark:text-green-400"}),e("div",{class:"text-xs text-green-700 dark:text-green-300"},[e("p",{class:"mb-1 font-medium"},"Bearer Token 说明:"),e("ul",{class:"list-inside list-disc space-y-1 text-xs"},[e("li",null,"输入 AWS Bedrock API Keys 生成的 Bearer Token"),e("li",null,"Bearer Token 仅限 Bedrock 服务访问,权限范围更小"),e("li",null,"相比 Access Key 更简单,无需 Secret Key"),e("li",null,[f(" 参考:"),e("a",{class:"text-green-600 underline dark:text-green-400",href:"https://aws.amazon.com/cn/blogs/machine-learning/accelerate-ai-development-with-amazon-bedrock-api-keys/",target:"_blank"},"AWS 官方文档")])])])])],-1))])):m("",!0),e("div",null,[t[246]||(t[246]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"AWS 区域 *",-1)),b(e("input",{"onUpdate:modelValue":t[37]||(t[37]=i=>a.value.region=i),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":I.value.region}]),placeholder:"例如:us-east-1",required:"",type:"text"},null,2),[[j,a.value.region]]),I.value.region?(o(),n("p",U0,u(I.value.region),1)):m("",!0),t[247]||(t[247]=e("div",{class:"mt-2 rounded-lg border border-blue-200 bg-blue-50 p-3 dark:border-blue-700 dark:bg-blue-900/30"},[e("div",{class:"flex items-start gap-2"},[e("i",{class:"fas fa-info-circle mt-0.5 text-blue-600 dark:text-blue-400"}),e("div",{class:"text-xs text-blue-700 dark:text-blue-300"},[e("p",{class:"mb-1 font-medium"},"常用 AWS 区域参考:"),e("div",{class:"grid grid-cols-2 gap-1 text-xs"},[e("span",null,"• us-east-1 (美国东部)"),e("span",null,"• us-west-2 (美国西部)"),e("span",null,"• eu-west-1 (欧洲爱尔兰)"),e("span",null,"• ap-southeast-1 (新加坡)"),e("span",null,"• ap-northeast-1 (东京)"),e("span",null,"• eu-central-1 (法兰克福)")]),e("p",{class:"mt-2 text-blue-600 dark:text-blue-400"}," 💡 请输入完整的区域代码,如 us-east-1 ")])])],-1))]),e("div",null,[t[248]||(t[248]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"默认主模型 (可选)",-1)),b(e("input",{"onUpdate:modelValue":t[38]||(t[38]=i=>a.value.defaultModel=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"例如:us.anthropic.claude-sonnet-4-20250514-v1:0",type:"text"},null,512),[[j,a.value.defaultModel]]),t[249]||(t[249]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 留空将使用系统默认模型。支持 inference profile ID 或 ARN ",-1)),t[250]||(t[250]=e("div",{class:"mt-2 rounded-lg border border-amber-200 bg-amber-50 p-3"},[e("div",{class:"flex items-start gap-2"},[e("i",{class:"fas fa-info-circle mt-0.5 text-amber-600"}),e("div",{class:"text-xs text-amber-700"},[e("p",{class:"mb-1 font-medium"},"Bedrock 模型配置说明:"),e("ul",{class:"list-inside list-disc space-y-1 text-xs"},[e("li",null,"支持 Inference Profile ID(推荐)"),e("li",null,"支持 Application Inference Profile ARN"),e("li",null,"常用模型:us.anthropic.claude-sonnet-4-20250514-v1:0"),e("li",null,"留空将使用系统配置的默认模型")])])])],-1))]),e("div",null,[t[251]||(t[251]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"小快速模型 (可选)",-1)),b(e("input",{"onUpdate:modelValue":t[39]||(t[39]=i=>a.value.smallFastModel=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"例如:us.anthropic.claude-3-5-haiku-20241022-v1:0",type:"text"},null,512),[[j,a.value.smallFastModel]]),t[252]||(t[252]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 用于快速响应的轻量级模型,留空将使用系统默认 ",-1))])])):m("",!0),a.value.platform==="azure_openai"&&!M.value?(o(),n("div",_0,[e("div",null,[t[253]||(t[253]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"Azure Endpoint *",-1)),b(e("input",{"onUpdate:modelValue":t[40]||(t[40]=i=>a.value.azureEndpoint=i),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":I.value.azureEndpoint}]),placeholder:"https://your-resource.openai.azure.com",required:"",type:"url"},null,2),[[j,a.value.azureEndpoint]]),I.value.azureEndpoint?(o(),n("p",K0,u(I.value.azureEndpoint),1)):m("",!0),t[254]||(t[254]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," Azure OpenAI 资源的终结点 URL,格式:https://your-resource.openai.azure.com ",-1))]),e("div",null,[t[255]||(t[255]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"API 版本",-1)),b(e("input",{"onUpdate:modelValue":t[41]||(t[41]=i=>a.value.apiVersion=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"2024-02-01",type:"text"},null,512),[[j,a.value.apiVersion]]),t[256]||(t[256]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," Azure OpenAI API 版本,默认使用最新稳定版本 2024-02-01 ",-1))]),e("div",null,[t[257]||(t[257]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"部署名称 *",-1)),b(e("input",{"onUpdate:modelValue":t[42]||(t[42]=i=>a.value.deploymentName=i),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":I.value.deploymentName}]),placeholder:"gpt-4",required:"",type:"text"},null,2),[[j,a.value.deploymentName]]),I.value.deploymentName?(o(),n("p",S0,u(I.value.deploymentName),1)):m("",!0),t[258]||(t[258]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 在 Azure OpenAI Studio 中创建的部署名称 ",-1))]),e("div",null,[t[259]||(t[259]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"API Key *",-1)),b(e("input",{"onUpdate:modelValue":t[43]||(t[43]=i=>a.value.apiKey=i),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":I.value.apiKey}]),placeholder:"请输入 Azure OpenAI API Key",required:"",type:"password"},null,2),[[j,a.value.apiKey]]),I.value.apiKey?(o(),n("p",M0,u(I.value.apiKey),1)):m("",!0),t[260]||(t[260]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 从 Azure 门户获取的 API 密钥 ",-1))]),e("div",null,[t[261]||(t[261]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"支持的模型",-1)),e("div",D0,[(o(),n(ke,null,Ne(["gpt-4","gpt-4-turbo","gpt-4o","gpt-4o-mini","gpt-5","gpt-5-mini","gpt-35-turbo","gpt-35-turbo-16k","codex-mini"],i=>e("label",{key:i,class:"flex cursor-pointer items-center"},[b(e("input",{"onUpdate:modelValue":t[44]||(t[44]=pe=>a.value.supportedModels=pe),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox",value:i},null,8,P0),[[je,a.value.supportedModels]]),e("span",j0,u(i),1)])),64))]),t[262]||(t[262]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 选择此部署支持的模型类型 ",-1))])])):m("",!0),a.value.platform==="bedrock"&&!M.value?(o(),n("div",V0,[e("div",null,[t[267]||(t[267]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"限流机制",-1)),e("div",z0,[e("label",L0,[b(e("input",{"onUpdate:modelValue":t[45]||(t[45]=i=>a.value.enableRateLimit=i),class:"mr-2 rounded border-gray-300 text-blue-600 focus:border-blue-500 focus:ring focus:ring-blue-200 dark:border-gray-600 dark:bg-gray-700",type:"checkbox"},null,512),[[je,a.value.enableRateLimit]]),t[263]||(t[263]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"启用限流机制",-1))]),t[264]||(t[264]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 启用后,当账号返回429错误时将暂停调度一段时间 ",-1))]),a.value.enableRateLimit?(o(),n("div",R0,[t[265]||(t[265]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"限流时间 (分钟)",-1)),b(e("input",{"onUpdate:modelValue":t[46]||(t[46]=i=>a.value.rateLimitDuration=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",min:"1",placeholder:"默认60分钟",type:"number"},null,512),[[j,a.value.rateLimitDuration,void 0,{number:!0}]]),t[266]||(t[266]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 账号被限流后暂停调度的时间(分钟) ",-1))])):m("",!0)])])):m("",!0),(a.value.platform==="claude-console"||a.value.platform==="ccr")&&!M.value?(o(),n("div",O0,[e("div",null,[t[268]||(t[268]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"API URL *",-1)),b(e("input",{"onUpdate:modelValue":t[47]||(t[47]=i=>a.value.apiUrl=i),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":I.value.apiUrl}]),placeholder:"例如:https://api.example.com",required:"",type:"text"},null,2),[[j,a.value.apiUrl]]),I.value.apiUrl?(o(),n("p",E0,u(I.value.apiUrl),1)):m("",!0)]),e("div",null,[t[269]||(t[269]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"API Key *",-1)),b(e("input",{"onUpdate:modelValue":t[48]||(t[48]=i=>a.value.apiKey=i),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":I.value.apiKey}]),placeholder:"请输入API Key",required:"",type:"password"},null,2),[[j,a.value.apiKey]]),I.value.apiKey?(o(),n("p",N0,u(I.value.apiKey),1)):m("",!0)]),e("div",q0,[e("div",null,[t[270]||(t[270]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"}," 每日额度限制 ($) ",-1)),b(e("input",{"onUpdate:modelValue":t[49]||(t[49]=i=>a.value.dailyQuota=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",min:"0",placeholder:"0 表示不限制",step:"0.01",type:"number"},null,512),[[j,a.value.dailyQuota,void 0,{number:!0}]]),t[271]||(t[271]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 设置每日使用额度,0 表示不限制 ",-1))]),e("div",null,[t[272]||(t[272]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"}," 额度重置时间 ",-1)),b(e("input",{"onUpdate:modelValue":t[50]||(t[50]=i=>a.value.quotaResetTime=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",placeholder:"00:00",type:"time"},null,512),[[j,a.value.quotaResetTime]]),t[273]||(t[273]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 每日自动重置额度的时间 ",-1))])]),e("div",null,[t[274]||(t[274]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"}," 最大并发任务数 ",-1)),b(e("input",{"onUpdate:modelValue":t[51]||(t[51]=i=>a.value.maxConcurrentTasks=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",min:"0",placeholder:"0 表示不限制",type:"number"},null,512),[[j,a.value.maxConcurrentTasks,void 0,{number:!0}]]),t[275]||(t[275]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 限制该账户的并发请求数量,0 表示不限制 ",-1))]),e("div",null,[t[283]||(t[283]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"模型限制 (可选)",-1)),e("div",W0,[e("button",{class:$(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",U.value==="whitelist"?"bg-blue-500 text-white shadow-md":"border border-gray-300 text-gray-600 hover:border-blue-300 dark:border-gray-600 dark:text-gray-400 dark:hover:border-blue-500"]),type:"button",onClick:t[52]||(t[52]=i=>U.value="whitelist")},t[276]||(t[276]=[e("i",{class:"fas fa-check-circle mr-2"},null,-1),f(" 模型白名单 ",-1)]),2),e("button",{class:$(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",U.value==="mapping"?"bg-purple-500 text-white shadow-md":"border border-gray-300 text-gray-600 hover:border-purple-300 dark:border-gray-600 dark:text-gray-400 dark:hover:border-purple-500"]),type:"button",onClick:t[53]||(t[53]=i=>U.value="mapping")},t[277]||(t[277]=[e("i",{class:"fas fa-random mr-2"},null,-1),f(" 模型映射 ",-1)]),2)]),U.value==="whitelist"?(o(),n("div",B0,[t[278]||(t[278]=e("div",{class:"mb-3 rounded-lg bg-blue-50 p-3 dark:bg-blue-900/30"},[e("p",{class:"text-xs text-blue-700 dark:text-blue-400"},[e("i",{class:"fas fa-info-circle mr-1"}),f(" 选择允许使用此账户的模型。留空表示支持所有模型。 ")])],-1)),e("div",G0,[(o(!0),n(ke,null,Ne(ne.value,i=>(o(),n("label",{key:i.value,class:$(["flex cursor-pointer items-center rounded-lg border p-3 transition-all hover:bg-gray-50 dark:border-gray-600 dark:hover:bg-gray-700",re.value.includes(i.value)?"border-blue-500 bg-blue-50 dark:border-blue-400 dark:bg-blue-900/30":"border-gray-300"])},[b(e("input",{"onUpdate:modelValue":t[54]||(t[54]=pe=>re.value=pe),class:"mr-2 text-blue-600 focus:ring-blue-500",type:"checkbox",value:i.value},null,8,F0),[[je,re.value]]),e("span",Q0,u(i.label),1)],2))),128))]),e("p",H0,[f(" 已选择 "+u(re.value.length)+" 个模型 ",1),re.value.length===0?(o(),n("span",J0,"(支持所有模型)")):m("",!0)])])):(o(),n("div",Y0,[t[282]||(t[282]=e("div",{class:"mb-3 rounded-lg bg-purple-50 p-3 dark:bg-purple-900/30"},[e("p",{class:"text-xs text-purple-700 dark:text-purple-400"},[e("i",{class:"fas fa-info-circle mr-1"}),f(" 配置模型映射关系。左侧是客户端请求的模型,右侧是实际发送给API的模型。 ")])],-1)),e("div",Z0,[(o(!0),n(ke,null,Ne(Oe.value,(i,pe)=>(o(),n("div",{key:pe,class:"flex items-center gap-2"},[b(e("input",{"onUpdate:modelValue":me=>i.from=me,class:"form-input flex-1 border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"原始模型名称",type:"text"},null,8,X0),[[j,i.from]]),t[280]||(t[280]=e("i",{class:"fas fa-arrow-right text-gray-400 dark:text-gray-500"},null,-1)),b(e("input",{"onUpdate:modelValue":me=>i.to=me,class:"form-input flex-1 border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"映射后的模型名称",type:"text"},null,8,eu),[[j,i.to]]),e("button",{class:"rounded-lg p-2 text-red-500 transition-colors hover:bg-red-50 dark:hover:bg-red-900/20",type:"button",onClick:me=>yt(pe)},t[279]||(t[279]=[e("i",{class:"fas fa-trash"},null,-1)]),8,tu)]))),128))]),e("button",{class:"w-full rounded-lg border-2 border-dashed border-gray-300 px-4 py-2 text-gray-600 transition-colors hover:border-gray-400 hover:text-gray-700 dark:border-gray-600 dark:text-gray-400 dark:hover:border-gray-500 dark:hover:text-gray-300",type:"button",onClick:Ca},t[281]||(t[281]=[e("i",{class:"fas fa-plus mr-2"},null,-1),f(" 添加模型映射 ",-1)])),e("div",au,[e("button",{class:"rounded-lg bg-blue-100 px-3 py-1 text-xs text-blue-700 transition-colors hover:bg-blue-200 dark:bg-blue-900/30 dark:text-blue-400 dark:hover:bg-blue-900/50",type:"button",onClick:t[55]||(t[55]=i=>De("claude-opus-4-5-20251101","claude-opus-4-5-20251101"))}," + Opus 4.5 "),e("button",{class:"rounded-lg bg-indigo-100 px-3 py-1 text-xs text-indigo-700 transition-colors hover:bg-indigo-200 dark:bg-indigo-900/30 dark:text-indigo-400 dark:hover:bg-indigo-900/50",type:"button",onClick:t[56]||(t[56]=i=>De("claude-sonnet-4-5-20250929","claude-sonnet-4-5-20250929"))}," + Sonnet 4.5 "),e("button",{class:"rounded-lg bg-emerald-100 px-3 py-1 text-xs text-emerald-700 transition-colors hover:bg-emerald-200 dark:bg-emerald-900/30 dark:text-emerald-400 dark:hover:bg-emerald-900/50",type:"button",onClick:t[57]||(t[57]=i=>De("claude-haiku-4-5-20251001","claude-haiku-4-5-20251001"))}," + Haiku 4.5 "),e("button",{class:"rounded-lg bg-cyan-100 px-3 py-1 text-xs text-cyan-700 transition-colors hover:bg-cyan-200 dark:bg-cyan-900/30 dark:text-cyan-400 dark:hover:bg-cyan-900/50",type:"button",onClick:t[58]||(t[58]=i=>De("deepseek-chat","deepseek-chat"))}," + DeepSeek "),e("button",{class:"rounded-lg bg-orange-100 px-3 py-1 text-xs text-orange-700 transition-colors hover:bg-orange-200 dark:bg-orange-900/30 dark:text-orange-400 dark:hover:bg-orange-900/50",type:"button",onClick:t[59]||(t[59]=i=>De("Qwen","Qwen"))}," + Qwen "),e("button",{class:"rounded-lg bg-pink-100 px-3 py-1 text-xs text-pink-700 transition-colors hover:bg-pink-200 dark:bg-pink-900/30 dark:text-pink-400 dark:hover:bg-pink-900/50",type:"button",onClick:t[60]||(t[60]=i=>De("Kimi","Kimi"))}," + Kimi "),e("button",{class:"rounded-lg bg-teal-100 px-3 py-1 text-xs text-teal-700 transition-colors hover:bg-teal-200 dark:bg-teal-900/30 dark:text-teal-400 dark:hover:bg-teal-900/50",type:"button",onClick:t[61]||(t[61]=i=>De("GLM","GLM"))}," + GLM "),e("button",{class:"rounded-lg bg-amber-100 px-3 py-1 text-xs text-amber-700 transition-colors hover:bg-amber-200 dark:bg-amber-900/30 dark:text-amber-400 dark:hover:bg-amber-900/50",type:"button",onClick:t[62]||(t[62]=i=>De("claude-opus-4-1-20250805","claude-sonnet-4-20250514"))}," + Opus → Sonnet ")])]))]),e("div",null,[t[284]||(t[284]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"自定义 User-Agent (可选)",-1)),b(e("input",{"onUpdate:modelValue":t[63]||(t[63]=i=>a.value.userAgent=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"留空则透传客户端 User-Agent",type:"text"},null,512),[[j,a.value.userAgent]]),t[285]||(t[285]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 留空时将自动使用客户端的 User-Agent,仅在需要固定特定 UA 时填写 ",-1))]),e("div",null,[t[290]||(t[290]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"限流机制",-1)),e("div",ru,[e("label",su,[b(e("input",{"onUpdate:modelValue":t[64]||(t[64]=i=>a.value.enableRateLimit=i),class:"mr-2 rounded border-gray-300 text-blue-600 focus:border-blue-500 focus:ring focus:ring-blue-200 dark:border-gray-600 dark:bg-gray-700",type:"checkbox"},null,512),[[je,a.value.enableRateLimit]]),t[286]||(t[286]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"启用限流机制",-1))]),t[287]||(t[287]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 启用后,当账号返回429错误时将暂停调度一段时间 ",-1))]),a.value.enableRateLimit?(o(),n("div",lu,[t[288]||(t[288]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"限流时间 (分钟)",-1)),b(e("input",{"onUpdate:modelValue":t[65]||(t[65]=i=>a.value.rateLimitDuration=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",min:"1",placeholder:"默认60分钟",type:"number"},null,512),[[j,a.value.rateLimitDuration,void 0,{number:!0}]]),t[289]||(t[289]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 账号被限流后暂停调度的时间(分钟) ",-1))])):m("",!0)]),a.value.platform==="claude-console"?(o(),n("div",ou,[t[292]||(t[292]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"上游错误处理",-1)),e("label",nu,[b(e("input",{"onUpdate:modelValue":t[66]||(t[66]=i=>a.value.disableAutoProtection=i),class:"mr-2 rounded border-gray-300 text-blue-600 focus:border-blue-500 focus:ring focus:ring-blue-200 dark:border-gray-600 dark:bg-gray-700",type:"checkbox"},null,512),[[je,a.value.disableAutoProtection]]),t[291]||(t[291]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"}," 上游错误不自动暂停调度 ",-1))]),t[293]||(t[293]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 勾选后遇到 401/400/429/529 等上游错误仅记录日志并透传,不自动禁用或限流 ",-1))])):m("",!0)])):m("",!0),a.value.platform==="openai-responses"&&!M.value?(o(),n("div",iu,[e("div",null,[t[294]||(t[294]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"API 基础地址 *",-1)),b(e("input",{"onUpdate:modelValue":t[67]||(t[67]=i=>a.value.baseApi=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"https://api.example.com/v1",required:"",type:"url"},null,512),[[j,a.value.baseApi]]),t[295]||(t[295]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 第三方 OpenAI 兼容 API 的基础地址,不要包含具体路径 ",-1))]),e("div",null,[t[296]||(t[296]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"API 密钥 *",-1)),e("div",du,[b(e("input",{"onUpdate:modelValue":t[68]||(t[68]=i=>a.value.apiKey=i),class:"form-input w-full border-gray-300 pr-10 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"sk-xxxxxxxxxxxx",required:"",type:R.value?"text":"password"},null,8,uu),[[ka,a.value.apiKey]]),e("button",{class:"absolute right-3 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-400",type:"button",onClick:t[69]||(t[69]=i=>R.value=!R.value)},[e("i",{class:$(R.value?"fas fa-eye-slash":"fas fa-eye")},null,2)])]),t[297]||(t[297]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 第三方服务提供的 API 密钥 ",-1))]),e("div",null,[t[298]||(t[298]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"自定义 User-Agent (可选)",-1)),b(e("input",{"onUpdate:modelValue":t[70]||(t[70]=i=>a.value.userAgent=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"留空则透传原始请求的 User-Agent",type:"text"},null,512),[[j,a.value.userAgent]]),t[299]||(t[299]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 可选项。如果设置,所有请求将使用此 User-Agent;否则透传客户端的 User-Agent ",-1))]),b(e("input",{"onUpdate:modelValue":t[71]||(t[71]=i=>a.value.rateLimitDuration=i),type:"hidden",value:"60"},null,512),[[j,a.value.rateLimitDuration,void 0,{number:!0}]])])):m("",!0),a.value.platform==="gemini-api"&&!M.value?(o(),n("div",pu,[e("div",null,[t[300]||(t[300]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"API 基础地址 *",-1)),b(e("input",{"onUpdate:modelValue":t[72]||(t[72]=i=>a.value.baseUrl=i),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500 dark:border-red-400":I.value.baseUrl}]),placeholder:"https://generativelanguage.googleapis.com/v1beta/models",required:"",type:"url"},null,2),[[j,a.value.baseUrl]]),I.value.baseUrl?(o(),n("p",gu,u(I.value.baseUrl),1)):m("",!0),t[301]||(t[301]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},[f(" 填写 API 基础地址,必须以 "),e("code",{class:"rounded bg-gray-100 px-1 dark:bg-gray-600"},"/models"),f(" 结尾。系统会自动拼接 "),e("code",{class:"rounded bg-gray-100 px-1 dark:bg-gray-600"},"/{model}:generateContent")],-1)),t[302]||(t[302]=e("p",{class:"mt-0.5 text-xs text-gray-400 dark:text-gray-500"},[f(" 官方: "),e("code",{class:"rounded bg-gray-100 px-1 dark:bg-gray-600"},"https://generativelanguage.googleapis.com/v1beta/models")],-1)),t[303]||(t[303]=e("p",{class:"mt-0.5 text-xs text-gray-400 dark:text-gray-500"},[f(" 上游为 CRS: "),e("code",{class:"rounded bg-gray-100 px-1 dark:bg-gray-600"},"https://your-crs.com/gemini/v1beta/models")],-1))]),e("div",null,[t[304]||(t[304]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"API 密钥 *",-1)),e("div",cu,[b(e("input",{"onUpdate:modelValue":t[73]||(t[73]=i=>a.value.apiKey=i),class:"form-input w-full border-gray-300 pr-10 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"AIzaSy...",required:"",type:R.value?"text":"password"},null,8,yu),[[ka,a.value.apiKey]]),e("button",{class:"absolute right-3 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-400",type:"button",onClick:t[74]||(t[74]=i=>R.value=!R.value)},[e("i",{class:$(R.value?"fas fa-eye-slash":"fas fa-eye")},null,2)])]),t[305]||(t[305]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 从 Google AI Studio 获取的 API 密钥 ",-1))])])):m("",!0),a.value.platform==="claude"?(o(),n("div",mu,[t[308]||(t[308]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"订阅类型",-1)),e("div",xu,[e("label",fu,[b(e("input",{"onUpdate:modelValue":t[75]||(t[75]=i=>a.value.subscriptionType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"claude_max"},null,512),[[Ie,a.value.subscriptionType]]),t[306]||(t[306]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"Claude Max",-1))]),e("label",bu,[b(e("input",{"onUpdate:modelValue":t[76]||(t[76]=i=>a.value.subscriptionType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"claude_pro"},null,512),[[Ie,a.value.subscriptionType]]),t[307]||(t[307]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"Claude Pro",-1))])]),t[309]||(t[309]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},[e("i",{class:"fas fa-info-circle mr-1"}),f(" Pro 账号不支持 Claude Opus 4 模型 ")],-1))])):m("",!0),a.value.platform==="claude"?(o(),n("div",vu,[e("label",ku,[b(e("input",{"onUpdate:modelValue":t[77]||(t[77]=i=>a.value.autoStopOnWarning=i),class:"mt-1 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox"},null,512),[[je,a.value.autoStopOnWarning]]),t[310]||(t[310]=e("div",{class:"ml-3"},[e("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"}," 5小时使用量接近限制时自动停止调度 "),e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 当系统检测到账户接近5小时使用限制时,自动暂停调度该账户。进入新的时间窗口后会自动恢复调度。 ")],-1))])])):m("",!0),a.value.platform==="claude"?(o(),n("div",hu,[e("label",wu,[b(e("input",{"onUpdate:modelValue":t[78]||(t[78]=i=>a.value.serialQueueEnabled=i),class:"mt-1 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox"},null,512),[[je,a.value.serialQueueEnabled]]),t[311]||(t[311]=e("div",{class:"ml-3"},[e("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"}," 启用账户级串行队列 "),e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 开启后强制该账户的用户消息串行处理,忽略全局串行队列设置。适用于并发限制较低的账户。 ")],-1))])])):m("",!0),a.value.platform==="claude"||a.value.platform==="claude-console"?(o(),n("div",$u,[e("label",Au,[b(e("input",{"onUpdate:modelValue":t[79]||(t[79]=i=>a.value.interceptWarmup=i),class:"mt-1 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox"},null,512),[[je,a.value.interceptWarmup]]),t[312]||(t[312]=e("div",{class:"ml-3"},[e("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"}," 拦截预热请求 "),e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 启用后,对标题生成、Warmup 等低价值请求直接返回模拟响应,不消耗上游 API 额度 ")],-1))])])):m("",!0),a.value.platform==="claude"?(o(),n("div",Cu,[e("label",Tu,[b(e("input",{"onUpdate:modelValue":t[80]||(t[80]=i=>a.value.useUnifiedUserAgent=i),class:"mt-1 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox"},null,512),[[je,a.value.useUnifiedUserAgent]]),e("div",Iu,[t[314]||(t[314]=e("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"}," 使用统一 Claude Code 版本 ",-1)),t[315]||(t[315]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 开启后将使用从真实 Claude Code 客户端捕获的统一 User-Agent,提高兼容性 ",-1)),C.value?(o(),n("div",Uu,[e("div",_u,[e("p",Ku," 💡 当前统一版本:"+u(C.value),1),e("button",{class:"ml-2 text-xs text-red-500 hover:text-red-700 dark:text-red-400 dark:hover:text-red-300",disabled:G.value,type:"button",onClick:_t},[G.value?(o(),n("div",Du)):(o(),n("i",Mu)),f(" "+u(G.value?"清除中...":"清除缓存"),1)],8,Su)])])):(o(),n("div",Pu,t[313]||(t[313]=[e("p",{class:"text-xs text-gray-500 dark:text-gray-400"}," ⏳ 等待从 Claude Code 客户端捕获 User-Agent ",-1),e("p",{class:"mt-1 text-xs text-gray-400 dark:text-gray-500"}," 💡 提示:如果长时间未能捕获,请确认有 Claude Code 客户端正在使用此账户, 或联系开发者检查 User-Agent 格式是否发生变化 ",-1)])))])])])):m("",!0),a.value.platform==="claude"?(o(),n("div",ju,[e("label",Vu,[b(e("input",{"onUpdate:modelValue":t[81]||(t[81]=i=>a.value.useUnifiedClientId=i),class:"mt-1 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox",onChange:Ta},null,544),[[je,a.value.useUnifiedClientId]]),e("div",zu,[t[319]||(t[319]=e("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"}," 使用统一的客户端标识 ",-1)),t[320]||(t[320]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 开启后将使用固定的客户端标识,使所有请求看起来来自同一个客户端,减少特征 ",-1)),a.value.useUnifiedClientId?(o(),n("div",Lu,[e("div",Ru,[e("div",{class:"mb-2 flex items-center justify-between"},[t[317]||(t[317]=e("span",{class:"text-xs font-medium text-gray-600 dark:text-gray-400"},"客户端标识 ID",-1)),e("button",{class:"rounded-md bg-blue-100 px-2.5 py-1 text-xs font-medium text-blue-700 transition-colors hover:bg-blue-200 dark:bg-blue-900/30 dark:text-blue-400 dark:hover:bg-blue-900/50",type:"button",onClick:oa},t[316]||(t[316]=[e("i",{class:"fas fa-sync-alt mr-1"},null,-1),f(" 重新生成 ",-1)]))]),e("div",Ou,[e("code",Eu,[e("span",Nu,u(a.value.unifiedClientId.substring(0,8)),1),e("span",qu,u(a.value.unifiedClientId.substring(8,56)),1),e("span",Wu,u(a.value.unifiedClientId.substring(56)),1)])]),t[318]||(t[318]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},[e("i",{class:"fas fa-info-circle mr-1 text-blue-500"}),f(" 此ID将替换请求中的user_id客户端部分,保留session部分用于粘性会话 ")],-1))])])):m("",!0)])])])):m("",!0),e("div",null,[t[321]||(t[321]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"调度优先级 (1-100)",-1)),b(e("input",{"onUpdate:modelValue":t[82]||(t[82]=i=>a.value.priority=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",max:"100",min:"1",placeholder:"数字越小优先级越高,默认50",type:"number"},null,512),[[j,a.value.priority,void 0,{number:!0}]]),t[322]||(t[322]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 数字越小优先级越高,建议范围:1-100 ",-1))]),a.value.addType==="manual"&&a.value.platform!=="claude-console"&&a.value.platform!=="ccr"&&a.value.platform!=="bedrock"&&a.value.platform!=="azure_openai"&&a.value.platform!=="openai-responses"?(o(),n("div",Bu,[e("div",Gu,[t[327]||(t[327]=e("div",{class:"mt-1 flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-lg bg-blue-500"},[e("i",{class:"fas fa-info text-sm text-white"})],-1)),e("div",null,[t[326]||(t[326]=e("h5",{class:"mb-2 font-semibold text-blue-900 dark:text-blue-300"}," 手动输入 Token ",-1)),a.value.platform==="claude"?(o(),n("p",Fu," 请输入有效的 Claude Access Token。如果您有 Refresh Token,建议也一并填写以支持自动刷新。 ")):a.value.platform==="gemini"||a.value.platform==="gemini-antigravity"?(o(),n("p",Qu," 请输入有效的 Gemini Access Token。如果您有 Refresh Token,建议也一并填写以支持自动刷新。 ")):a.value.platform==="openai"?(o(),n("p",Hu," 请输入有效的 OpenAI Access Token。如果您有 Refresh Token,建议也一并填写以支持自动刷新。 ")):a.value.platform==="droid"?(o(),n("p",Ju," 请输入有效的 Droid Access Token,并同时提供 Refresh Token 以支持自动刷新。 ")):m("",!0),e("div",Yu,[t[325]||(t[325]=e("p",{class:"mb-1 text-sm font-medium text-blue-900 dark:text-blue-300"},[e("i",{class:"fas fa-folder-open mr-1"}),f(" 获取 Access Token 的方法: ")],-1)),a.value.platform==="claude"?(o(),n("p",Zu,t[323]||(t[323]=[f(" 请从已登录 Claude Code 的机器上获取 ",-1),e("code",{class:"rounded bg-blue-100 px-1 py-0.5 font-mono dark:bg-blue-900/50"},"~/.claude/.credentials.json",-1),f(" 文件中的凭证, 请勿使用 Claude 官网 API Keys 页面的密钥。 ",-1)]))):a.value.platform==="gemini"||a.value.platform==="gemini-antigravity"?(o(),n("p",Xu,t[324]||(t[324]=[f(" 请从已登录 Gemini CLI 的机器上获取 ",-1),e("code",{class:"rounded bg-blue-100 px-1 py-0.5 font-mono dark:bg-blue-900/50"},"~/.config/.gemini/oauth_creds.json",-1),f(" 文件中的凭证。 ",-1)]))):a.value.platform==="openai"?(o(),n("p",ep," 请从已登录 OpenAI 账户的机器上获取认证凭证, 或通过 OAuth 授权流程获取 Access Token。 ")):a.value.platform==="droid"?(o(),n("p",tp," 请从已完成授权的 Droid CLI 或 Factory.ai 导出的凭证中获取 Access Token 与 Refresh Token。 ")):m("",!0)]),a.value.platform!=="droid"?(o(),n("p",ap," 💡 如果未填写 Refresh Token,Token 过期后需要手动更新。 ")):(o(),n("p",rp," ⚠️ Droid 账户必须填写 Refresh Token,缺失将导致无法自动刷新 Access Token。 "))])]),a.value.platform==="openai"?(o(),n("div",sp,[t[328]||(t[328]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"Access Token (可选)",-1)),b(e("textarea",{"onUpdate:modelValue":t[83]||(t[83]=i=>a.value.accessToken=i),class:"form-input w-full resize-none border-gray-300 font-mono text-xs dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"可选:如果不填写,系统会自动通过 Refresh Token 获取...",rows:"4"},null,512),[[j,a.value.accessToken]]),t[329]||(t[329]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},[e("i",{class:"fas fa-info-circle mr-1"}),f(" Access Token 可选填。如果不提供,系统会通过 Refresh Token 自动获取。 ")],-1))])):(o(),n("div",lp,[t[330]||(t[330]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"Access Token *",-1)),b(e("textarea",{"onUpdate:modelValue":t[84]||(t[84]=i=>a.value.accessToken=i),class:$(["form-input w-full resize-none border-gray-300 font-mono text-xs dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":I.value.accessToken}]),placeholder:"请输入 Access Token...",required:"",rows:"4"},null,2),[[j,a.value.accessToken]]),I.value.accessToken?(o(),n("p",op,u(I.value.accessToken),1)):m("",!0)])),a.value.platform==="openai"||a.value.platform==="droid"?(o(),n("div",np,[t[332]||(t[332]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"Refresh Token *",-1)),b(e("textarea",{"onUpdate:modelValue":t[85]||(t[85]=i=>a.value.refreshToken=i),class:$(["form-input w-full resize-none border-gray-300 font-mono text-xs dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":I.value.refreshToken}]),placeholder:"请输入 Refresh Token(必填)...",required:"",rows:"4"},null,2),[[j,a.value.refreshToken]]),I.value.refreshToken?(o(),n("p",ip,u(I.value.refreshToken),1)):m("",!0),e("p",dp,[t[331]||(t[331]=e("i",{class:"fas fa-info-circle mr-1"},null,-1)),a.value.platform==="openai"?(o(),n(ke,{key:0},[f(" 系统将使用 Refresh Token 自动获取 Access Token 和用户信息 ")],64)):(o(),n(ke,{key:1},[f(" 系统将使用 Refresh Token 自动刷新 Factory.ai 访问令牌,确保账户保持可用。 ")],64))])])):(o(),n("div",up,[t[333]||(t[333]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"Refresh Token (可选)",-1)),b(e("textarea",{"onUpdate:modelValue":t[86]||(t[86]=i=>a.value.refreshToken=i),class:"form-input w-full resize-none border-gray-300 font-mono text-xs dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"请输入 Refresh Token...",rows:"4"},null,512),[[j,a.value.refreshToken]])])),a.value.platform==="droid"?(o(),n("div",pp,[t[334]||(t[334]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"自定义 User-Agent (可选)",-1)),b(e("input",{"onUpdate:modelValue":t[87]||(t[87]=i=>a.value.userAgent=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"factory-cli/0.32.1",type:"text"},null,512),[[j,a.value.userAgent]]),t[335]||(t[335]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 留空使用默认值 factory-cli/0.32.1,可根据需要自定义 ",-1))])):m("",!0)])):m("",!0),a.value.addType==="apikey"&&a.value.platform==="droid"?(o(),n("div",gp,[t[340]||(t[340]=e("div",{class:"mb-4 flex items-start gap-3"},[e("div",{class:"mt-1 flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-lg bg-purple-500"},[e("i",{class:"fas fa-key text-sm text-white"})]),e("div",null,[e("h5",{class:"mb-2 font-semibold text-purple-900 dark:text-purple-200"}," 使用 API Key 调度 Droid "),e("p",{class:"text-sm text-purple-800 dark:text-purple-200"}," 请填写一个或多个 Factory.ai API Key,系统会自动在请求时随机挑选并结合会话哈希维持粘性,确保对话上下文保持稳定。 ")])],-1)),e("div",null,[t[336]||(t[336]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"API Key 列表 *",-1)),b(e("textarea",{"onUpdate:modelValue":t[88]||(t[88]=i=>a.value.apiKeysInput=i),class:$(["form-input w-full resize-none border-gray-300 font-mono text-xs dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":I.value.apiKeys}]),placeholder:"每行一个 API Key,可粘贴多行",required:"",rows:"6"},null,2),[[j,a.value.apiKeysInput]]),I.value.apiKeys?(o(),n("p",cp,u(I.value.apiKeys),1)):m("",!0),t[337]||(t[337]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},[e("i",{class:"fas fa-info-circle mr-1"}),f(" 建议为每条 Key 提供独立额度;系统会自动去重并忽略空白行。 ")],-1))]),e("div",null,[t[338]||(t[338]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"自定义 User-Agent (可选)",-1)),b(e("input",{"onUpdate:modelValue":t[89]||(t[89]=i=>a.value.userAgent=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"factory-cli/0.32.1",type:"text"},null,512),[[j,a.value.userAgent]]),t[339]||(t[339]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 留空使用默认值 factory-cli/0.32.1,可根据需要自定义 ",-1))]),t[341]||(t[341]=e("div",{class:"rounded-lg border border-purple-200 bg-white/70 p-3 text-xs text-purple-800 dark:border-purple-700 dark:bg-purple-800/20 dark:text-purple-100"},[e("p",{class:"font-medium"},[e("i",{class:"fas fa-random mr-1"}),f("分配策略说明")]),e("ul",{class:"mt-1 list-disc space-y-1 pl-4"},[e("li",null,"新会话将随机命中一个 Key,并在会话有效期内保持粘性。"),e("li",null,"若某 Key 失效,会自动切换到剩余可用 Key,最大化成功率。"),e("li",null," 若上游返回 4xx 错误码,该 Key 会被自动标记为异常;全部 Key 异常后账号将暂停调度。 ")])],-1))])):m("",!0),Ve(rr,{modelValue:a.value.proxy,"onUpdate:modelValue":t[90]||(t[90]=i=>a.value.proxy=i)},null,8,["modelValue"]),e("div",yp,[e("button",{class:"flex-1 rounded-xl bg-gray-100 px-6 py-3 font-semibold text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700",type:"button",onClick:t[91]||(t[91]=i=>d.$emit("close"))}," 取消 "),(a.value.addType==="oauth"||a.value.addType==="setup-token")&&a.value.platform!=="claude-console"&&a.value.platform!=="ccr"&&a.value.platform!=="bedrock"&&a.value.platform!=="azure_openai"&&a.value.platform!=="openai-responses"&&a.value.platform!=="gemini-api"?(o(),n("button",{key:0,class:"btn btn-primary flex-1 px-6 py-3 font-semibold",disabled:E.value,type:"button",onClick:Ee}," 下一步 ",8,mp)):(o(),n("button",{key:1,class:"btn btn-primary flex-1 px-6 py-3 font-semibold",disabled:E.value,type:"button",onClick:Ya},[E.value?(o(),n("div",fp)):m("",!0),f(" "+u(E.value?"创建中...":"创建"),1)],8,xp))])])])):m("",!0),N.value===2&&a.value.addType==="oauth"?(o(),Xe(ln,{key:2,ref_key:"oauthFlowRef",ref:ge,platform:a.value.platform,proxy:a.value.proxy,onBack:t[92]||(t[92]=i=>N.value=1),onSuccess:it},null,8,["platform","proxy"])):m("",!0),N.value===2&&a.value.addType==="setup-token"?(o(),n("div",bp,[a.value.platform==="claude"?(o(),n("div",vp,[e("div",kp,[e("div",hp,[t[363]||(t[363]=e("div",{class:"flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-lg bg-blue-500"},[e("i",{class:"fas fa-key text-white"})],-1)),e("div",wp,[t[362]||(t[362]=e("h4",{class:"mb-3 font-semibold text-blue-900 dark:text-blue-200"}," Claude Setup Token 授权 ",-1)),e("div",$p,[t[344]||(t[344]=e("p",{class:"mb-3 text-sm font-medium text-blue-800 dark:text-blue-300"}," 选择授权方式: ",-1)),e("div",Ap,[e("label",Cp,[b(e("input",{"onUpdate:modelValue":t[93]||(t[93]=i=>oe.value=i),class:"mr-2 text-blue-600 focus:ring-blue-500",type:"radio",value:"manual",onChange:Lt},null,544),[[Ie,oe.value]]),t[342]||(t[342]=e("span",{class:"text-sm text-blue-800 dark:text-blue-300"},[e("i",{class:"fas fa-link mr-1"}),f("手动授权 ")],-1))]),e("label",Tp,[b(e("input",{"onUpdate:modelValue":t[94]||(t[94]=i=>oe.value=i),class:"mr-2 text-blue-600 focus:ring-blue-500",type:"radio",value:"cookie",onChange:Lt},null,544),[[Ie,oe.value]]),t[343]||(t[343]=e("span",{class:"text-sm text-blue-800 dark:text-blue-300"},[e("i",{class:"fas fa-cookie mr-1"}),f("Cookie 自动授权 ")],-1))])])]),oe.value==="manual"?(o(),n("div",Ip,[t[353]||(t[353]=e("p",{class:"mb-4 text-sm text-blue-800 dark:text-blue-300"}," 请按照以下步骤通过 Setup Token 完成 Claude 账户的授权: ",-1)),e("div",Up,[e("div",_p,[t[347]||(t[347]=e("div",{class:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-full bg-blue-600 text-xs font-bold text-white"}," 1 ",-1)),e("div",Kp,[t[346]||(t[346]=e("p",{class:"mb-2 font-medium text-blue-900 dark:text-blue-200"}," 点击下方按钮生成授权链接 ",-1)),D.value?(o(),n("div",Pp,[e("div",jp,[e("input",{class:"form-input flex-1 bg-gray-50 font-mono text-xs dark:bg-gray-700",readonly:"",type:"text",value:D.value},null,8,Vp),e("button",{class:"rounded-lg bg-gray-100 px-3 py-2 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:hover:bg-gray-600",title:"复制链接",onClick:Nt},[e("i",{class:$(le.value?"fas fa-check text-green-500":"fas fa-copy")},null,2)])]),e("button",{class:"text-xs text-blue-600 hover:text-blue-700",onClick:ut},t[345]||(t[345]=[e("i",{class:"fas fa-sync-alt mr-1"},null,-1),f("重新生成 ",-1)]))])):(o(),n("button",{key:0,class:"btn btn-primary px-4 py-2 text-sm",disabled:y.value,onClick:We},[y.value?(o(),n("div",Dp)):(o(),n("i",Mp)),f(" "+u(y.value?"生成中...":"生成 Setup Token 授权链接"),1)],8,Sp))])])]),t[354]||(t[354]=e("div",{class:"rounded-lg border border-blue-300 bg-white/80 p-4 dark:border-blue-600 dark:bg-gray-800/80"},[e("div",{class:"flex items-start gap-3"},[e("div",{class:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-full bg-blue-600 text-xs font-bold text-white"}," 2 "),e("div",{class:"flex-1"},[e("p",{class:"mb-2 font-medium text-blue-900 dark:text-blue-200"}," 在浏览器中打开链接并完成授权 "),e("p",{class:"mb-2 text-sm text-blue-700 dark:text-blue-300"}," 请在新标签页中打开授权链接,登录您的 Claude 账户并授权 Claude Code。 "),e("div",{class:"rounded border border-yellow-300 bg-yellow-50 p-3 dark:border-yellow-700 dark:bg-yellow-900/30"},[e("p",{class:"text-xs text-yellow-800 dark:text-yellow-300"},[e("i",{class:"fas fa-exclamation-triangle mr-1"}),e("strong",null,"注意:"),f("如果您设置了代理,请确保浏览器也使用相同的代理访问授权页面。 ")])])])])],-1)),e("div",zp,[e("div",Lp,[t[352]||(t[352]=e("div",{class:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-full bg-blue-600 text-xs font-bold text-white"}," 3 ",-1)),e("div",Rp,[t[350]||(t[350]=e("p",{class:"mb-2 font-medium text-blue-900 dark:text-blue-200"}," 输入 Authorization Code ",-1)),t[351]||(t[351]=e("p",{class:"mb-3 text-sm text-blue-700 dark:text-blue-300"}," 授权完成后,从返回页面复制 Authorization Code,并粘贴到下方输入框: ",-1)),e("div",Op,[e("div",null,[t[348]||(t[348]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},[e("i",{class:"fas fa-key mr-2 text-blue-500"}),f("Authorization Code ")],-1)),b(e("textarea",{"onUpdate:modelValue":t[95]||(t[95]=i=>de.value=i),class:"form-input w-full resize-none border-gray-300 font-mono text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"粘贴从Claude Code授权页面获取的Authorization Code...",rows:"3"},null,512),[[j,de.value]])]),t[349]||(t[349]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},[e("i",{class:"fas fa-info-circle mr-1"}),f(" 请粘贴从Claude Code授权页面复制的Authorization Code ")],-1))])])])])])):m("",!0),oe.value==="cookie"?(o(),n("div",Ep,[t[360]||(t[360]=e("p",{class:"mb-4 text-sm text-blue-800 dark:text-blue-300"}," 使用 sessionKey 自动完成授权,无需手动打开链接。 ",-1)),e("div",Np,[e("div",qp,[e("div",null,[e("label",Wp,[t[355]||(t[355]=e("i",{class:"fas fa-cookie text-blue-500"},null,-1)),t[356]||(t[356]=f("sessionKey ",-1)),X.value>1?(o(),n("span",Bp,u(X.value)+" 个 ",1)):m("",!0)]),b(e("textarea",{"onUpdate:modelValue":t[96]||(t[96]=i=>he.value=i),class:$(["form-input w-full resize-y border-gray-300 font-mono text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":Q.value}]),placeholder:`每行一个 sessionKey,例如: -sk-ant-sid01-xxxxx... -sk-ant-sid01-yyyyy...`,rows:"3"},null,2),[[j,he.value]]),X.value>1?(o(),n("p",Gp,[t[357]||(t[357]=e("i",{class:"fas fa-info-circle mr-1"},null,-1)),f(" 将批量创建 "+u(X.value)+" 个账户 ",1)])):m("",!0),Q.value?(o(),n("p",Fp,u(Q.value),1)):m("",!0)]),e("div",null,[e("button",{class:"flex items-center text-xs text-blue-600 hover:text-blue-700",type:"button",onClick:t[97]||(t[97]=i=>H.value=!H.value)},[e("i",{class:$(H.value?"fas fa-chevron-down mr-1":"fas fa-chevron-right mr-1")},null,2),t[358]||(t[358]=f(" 如何获取 sessionKey? ",-1))]),H.value?(o(),n("div",Qp,t[359]||(t[359]=[e("ol",{class:"space-y-2 text-xs text-gray-600 dark:text-gray-300"},[e("li",null,[f("1. 在浏览器中登录 "),e("strong",null,"claude.ai")]),e("li",null,[f("2. 按 "),e("strong",null,"F12"),f(" 打开开发者工具")]),e("li",null,[f("3. 切换到 "),e("strong",null,'"Application"'),f(" (应用) 标签页")]),e("li",null,[f(" 4. 在左侧选择 "),e("strong",null,'"Cookies"'),f(" → "),e("strong",null,'"https://claude.ai"')]),e("li",null,[f("5. 找到键为 "),e("strong",null,'"sessionKey"'),f(" 的那一行")]),e("li",null,[f("6. 复制其 "),e("strong",null,'"Value"'),f(" (值) 列的内容")])],-1),e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},[e("i",{class:"fas fa-info-circle mr-1"}),f(' sessionKey 通常以 "sk-ant-" 开头 ')],-1)]))):m("",!0)]),e("button",{class:"btn btn-primary w-full px-4 py-3",disabled:W.value||!he.value.trim(),type:"button",onClick:$t},[W.value?(o(),n("div",Jp)):(o(),n("i",Yp)),W.value&&h.value.total>1?(o(),n(ke,{key:2},[f(" 正在授权 "+u(h.value.current)+"/"+u(h.value.total)+"... ",1)],64)):W.value?(o(),n(ke,{key:3},[f(" 授权中... ")],64)):(o(),n(ke,{key:4},[f(" 开始自动授权 ")],64))],8,Hp)])]),t[361]||(t[361]=e("div",{class:"rounded border border-yellow-300 bg-yellow-50 p-3 dark:border-yellow-700 dark:bg-yellow-900/30"},[e("p",{class:"text-xs text-yellow-800 dark:text-yellow-300"},[e("i",{class:"fas fa-exclamation-triangle mr-1"}),e("strong",null,"提示:"),f("如果您设置了代理,Cookie授权也会使用相同的代理配置。 ")])],-1))])):m("",!0)])])])])):m("",!0),e("div",Zp,[e("button",{class:"flex-1 rounded-xl bg-gray-100 px-6 py-3 font-semibold text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700",type:"button",onClick:t[98]||(t[98]=i=>N.value=1)}," 上一步 "),oe.value==="manual"?(o(),n("button",{key:0,class:"btn btn-primary flex-1 px-6 py-3 font-semibold",disabled:!gt.value||p.value,type:"button",onClick:qt},[p.value?(o(),n("div",eg)):m("",!0),f(" "+u(p.value?"验证中...":"完成授权"),1)],8,Xp)):m("",!0)])])):m("",!0),M.value?(o(),n("div",tg,[e("div",null,[t[364]||(t[364]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"账户名称",-1)),b(e("input",{"onUpdate:modelValue":t[99]||(t[99]=i=>a.value.name=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"为账户设置一个易识别的名称",required:"",type:"text"},null,512),[[j,a.value.name]])]),e("div",null,[t[365]||(t[365]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"描述 (可选)",-1)),b(e("textarea",{"onUpdate:modelValue":t[100]||(t[100]=i=>a.value.description=i),class:"form-input w-full resize-none border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"账户用途说明...",rows:"3"},null,512),[[j,a.value.description]])]),e("div",null,[t[369]||(t[369]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"账户类型",-1)),e("div",ag,[e("label",rg,[b(e("input",{"onUpdate:modelValue":t[101]||(t[101]=i=>a.value.accountType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"shared"},null,512),[[Ie,a.value.accountType]]),t[366]||(t[366]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"共享账户",-1))]),e("label",sg,[b(e("input",{"onUpdate:modelValue":t[102]||(t[102]=i=>a.value.accountType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"dedicated"},null,512),[[Ie,a.value.accountType]]),t[367]||(t[367]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"专属账户",-1))]),e("label",lg,[b(e("input",{"onUpdate:modelValue":t[103]||(t[103]=i=>a.value.accountType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"group"},null,512),[[Ie,a.value.accountType]]),t[368]||(t[368]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"分组调度",-1))])]),t[370]||(t[370]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"}," 共享账户:供所有API Key使用;专属账户:仅供特定API Key使用;分组调度:加入分组供分组内调度 ",-1))]),M.value?m("",!0):(o(),n("div",og,[t[374]||(t[374]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"到期时间 (可选)",-1)),e("div",ng,[b(e("select",{"onUpdate:modelValue":t[104]||(t[104]=i=>a.value.expireDuration=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",onChange:pt},t[371]||(t[371]=[e("option",{value:""},"永不过期",-1),e("option",{value:"30d"},"30 天",-1),e("option",{value:"90d"},"90 天",-1),e("option",{value:"180d"},"180 天",-1),e("option",{value:"365d"},"365 天",-1),e("option",{value:"custom"},"自定义日期",-1)]),544),[[wa,a.value.expireDuration]]),a.value.expireDuration==="custom"?(o(),n("div",ig,[b(e("input",{"onUpdate:modelValue":t[105]||(t[105]=i=>a.value.customExpireDate=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",min:Ia.value,type:"datetime-local",onChange:na},null,40,dg),[[j,a.value.customExpireDate]])])):m("",!0),a.value.expiresAt?(o(),n("p",ug,[t[372]||(t[372]=e("i",{class:"fas fa-calendar-alt mr-1"},null,-1)),f(" 将于 "+u(Ua(a.value.expiresAt))+" 过期 ",1)])):(o(),n("p",pg,t[373]||(t[373]=[e("i",{class:"fas fa-infinity mr-1"},null,-1),f(" 账户永不过期 ",-1)])))]),t[375]||(t[375]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"}," 设置 Claude Max/Pro 订阅的到期时间,到期后将停止调度此账户 ",-1))])),a.value.accountType==="group"?(o(),n("div",gg,[t[377]||(t[377]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"选择分组 *",-1)),e("div",cg,[e("div",yg,[e("div",mg,[Bt.value.length===0?(o(),n("div",xg," 暂无可用分组 ")):m("",!0),(o(!0),n(ke,null,Ne(Bt.value,i=>(o(),n("label",{key:i.id,class:"flex cursor-pointer items-center gap-2 rounded-md p-2 hover:bg-gray-50 dark:hover:bg-gray-600"},[b(e("input",{"onUpdate:modelValue":t[106]||(t[106]=pe=>a.value.groupIds=pe),class:"rounded border-gray-300 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox",value:i.id},null,8,fg),[[je,a.value.groupIds]]),e("span",bg,u(i.name)+" ("+u(i.memberCount||0)+" 个成员) ",1)]))),128)),e("div",{class:"border-t pt-2 dark:border-gray-600"},[e("button",{class:"flex items-center gap-2 text-sm text-blue-600 hover:text-blue-800 dark:text-blue-400 dark:hover:text-blue-300",type:"button",onClick:Rt},t[376]||(t[376]=[e("i",{class:"fas fa-plus"},null,-1),f(" 新建分组 ",-1)]))])])]),e("button",{class:"rounded-md border border-gray-300 bg-white px-3 py-2 text-sm font-medium text-gray-700 hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:hover:bg-gray-600",type:"button",onClick:Ft},[e("i",{class:$(["fas fa-sync-alt",{"animate-spin":Wt.value}])},null,2)])])])):m("",!0),a.value.platform==="gemini"||a.value.platform==="gemini-antigravity"?(o(),n("div",vg,[t[378]||(t[378]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"项目 ID (可选)",-1)),b(e("input",{"onUpdate:modelValue":t[107]||(t[107]=i=>a.value.projectId=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"例如:verdant-wares-464411-k9",type:"text"},null,512),[[j,a.value.projectId]]),t[379]||(t[379]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"}," Google Cloud/Workspace 账号可能需要提供项目 ID ",-1))])):m("",!0),a.value.platform==="claude"?(o(),n("div",kg,[t[382]||(t[382]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"订阅类型",-1)),e("div",hg,[e("label",wg,[b(e("input",{"onUpdate:modelValue":t[108]||(t[108]=i=>a.value.subscriptionType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"claude_max"},null,512),[[Ie,a.value.subscriptionType]]),t[380]||(t[380]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"Claude Max",-1))]),e("label",$g,[b(e("input",{"onUpdate:modelValue":t[109]||(t[109]=i=>a.value.subscriptionType=i),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"claude_pro"},null,512),[[Ie,a.value.subscriptionType]]),t[381]||(t[381]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"Claude Pro",-1))])]),t[383]||(t[383]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},[e("i",{class:"fas fa-info-circle mr-1"}),f(" Pro 账号不支持 Claude Opus 4 模型 ")],-1))])):m("",!0),a.value.platform==="claude"?(o(),n("div",Ag,[e("label",Cg,[b(e("input",{"onUpdate:modelValue":t[110]||(t[110]=i=>a.value.autoStopOnWarning=i),class:"mt-1 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox"},null,512),[[je,a.value.autoStopOnWarning]]),t[384]||(t[384]=e("div",{class:"ml-3"},[e("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"}," 5小时使用量接近限制时自动停止调度 "),e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 当系统检测到账户接近5小时使用限制时,自动暂停调度该账户。进入新的时间窗口后会自动恢复调度。 ")],-1))])])):m("",!0),a.value.platform==="claude"?(o(),n("div",Tg,[e("label",Ig,[b(e("input",{"onUpdate:modelValue":t[111]||(t[111]=i=>a.value.serialQueueEnabled=i),class:"mt-1 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox"},null,512),[[je,a.value.serialQueueEnabled]]),t[385]||(t[385]=e("div",{class:"ml-3"},[e("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"}," 启用账户级串行队列 "),e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 开启后强制该账户的用户消息串行处理,忽略全局串行队列设置。适用于并发限制较低的账户。 ")],-1))])])):m("",!0),a.value.platform==="claude"||a.value.platform==="claude-console"?(o(),n("div",Ug,[e("label",_g,[b(e("input",{"onUpdate:modelValue":t[112]||(t[112]=i=>a.value.interceptWarmup=i),class:"mt-1 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox"},null,512),[[je,a.value.interceptWarmup]]),t[386]||(t[386]=e("div",{class:"ml-3"},[e("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"}," 拦截预热请求 "),e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 启用后,对标题生成、Warmup 等低价值请求直接返回模拟响应,不消耗上游 API 额度 ")],-1))])])):m("",!0),a.value.platform==="claude"?(o(),n("div",Kg,[e("label",Sg,[b(e("input",{"onUpdate:modelValue":t[113]||(t[113]=i=>a.value.useUnifiedUserAgent=i),class:"mt-1 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox"},null,512),[[je,a.value.useUnifiedUserAgent]]),e("div",Mg,[t[388]||(t[388]=e("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"}," 使用统一 Claude Code 版本 ",-1)),t[389]||(t[389]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 开启后将使用从真实 Claude Code 客户端捕获的统一 User-Agent,提高兼容性 ",-1)),C.value?(o(),n("div",Dg,[e("div",Pg,[e("p",jg," 💡 当前统一版本:"+u(C.value),1),e("button",{class:"ml-2 text-xs text-red-500 hover:text-red-700 dark:text-red-400 dark:hover:text-red-300",disabled:G.value,type:"button",onClick:_t},[G.value?(o(),n("div",Lg)):(o(),n("i",zg)),f(" "+u(G.value?"清除中...":"清除缓存"),1)],8,Vg)])])):(o(),n("div",Rg,t[387]||(t[387]=[e("p",{class:"text-xs text-gray-500 dark:text-gray-400"}," ⏳ 等待从 Claude Code 客户端捕获 User-Agent ",-1),e("p",{class:"mt-1 text-xs text-gray-400 dark:text-gray-500"}," 💡 提示:如果长时间未能捕获,请确认有 Claude Code 客户端正在使用此账户, 或联系开发者检查 User-Agent 格式是否发生变化 ",-1)])))])])])):m("",!0),a.value.platform==="claude"?(o(),n("div",Og,[e("label",Eg,[b(e("input",{"onUpdate:modelValue":t[114]||(t[114]=i=>a.value.useUnifiedClientId=i),class:"mt-1 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox",onChange:Ta},null,544),[[je,a.value.useUnifiedClientId]]),e("div",Ng,[t[393]||(t[393]=e("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"}," 使用统一的客户端标识 ",-1)),t[394]||(t[394]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 开启后将使用固定的客户端标识,使所有请求看起来来自同一个客户端,减少特征 ",-1)),a.value.useUnifiedClientId?(o(),n("div",qg,[e("div",Wg,[e("div",{class:"mb-2 flex items-center justify-between"},[t[391]||(t[391]=e("span",{class:"text-xs font-medium text-gray-600 dark:text-gray-400"},"客户端标识 ID",-1)),e("button",{class:"rounded-md bg-blue-100 px-2.5 py-1 text-xs font-medium text-blue-700 transition-colors hover:bg-blue-200 dark:bg-blue-900/30 dark:text-blue-400 dark:hover:bg-blue-900/50",type:"button",onClick:oa},t[390]||(t[390]=[e("i",{class:"fas fa-sync-alt mr-1"},null,-1),f(" 重新生成 ",-1)]))]),e("div",Bg,[e("code",Gg,[e("span",Fg,u(a.value.unifiedClientId.substring(0,8)),1),e("span",Qg,u(a.value.unifiedClientId.substring(8,56)),1),e("span",Hg,u(a.value.unifiedClientId.substring(56)),1)])]),t[392]||(t[392]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},[e("i",{class:"fas fa-info-circle mr-1 text-blue-500"}),f(" 此ID将替换请求中的user_id客户端部分,保留session部分用于粘性会话 ")],-1))])])):m("",!0)])])])):m("",!0),e("div",null,[t[395]||(t[395]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"调度优先级 (1-100)",-1)),b(e("input",{"onUpdate:modelValue":t[115]||(t[115]=i=>a.value.priority=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",max:"100",min:"1",placeholder:"数字越小优先级越高",type:"number"},null,512),[[j,a.value.priority,void 0,{number:!0}]]),t[396]||(t[396]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 数字越小优先级越高,建议范围:1-100 ",-1))]),a.value.platform==="claude-console"||a.value.platform==="ccr"?(o(),n("div",Jg,[e("div",null,[t[397]||(t[397]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700"},"API URL",-1)),b(e("input",{"onUpdate:modelValue":t[116]||(t[116]=i=>a.value.apiUrl=i),class:"form-input w-full",placeholder:"例如:https://api.example.com",required:"",type:"text"},null,512),[[j,a.value.apiUrl]])]),e("div",null,[t[398]||(t[398]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700"},"API Key",-1)),b(e("input",{"onUpdate:modelValue":t[117]||(t[117]=i=>a.value.apiKey=i),class:"form-input w-full",placeholder:"留空表示不更新",type:"password"},null,512),[[j,a.value.apiKey]]),t[399]||(t[399]=e("p",{class:"mt-1 text-xs text-gray-500"},"留空表示不更新 API Key",-1))]),e("div",Yg,[e("div",null,[t[400]||(t[400]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"}," 每日额度限制 ($) ",-1)),b(e("input",{"onUpdate:modelValue":t[118]||(t[118]=i=>a.value.dailyQuota=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",min:"0",placeholder:"0 表示不限制",step:"0.01",type:"number"},null,512),[[j,a.value.dailyQuota,void 0,{number:!0}]]),t[401]||(t[401]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 设置每日使用额度,0 表示不限制 ",-1))]),e("div",null,[t[402]||(t[402]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"}," 额度重置时间 ",-1)),b(e("input",{"onUpdate:modelValue":t[119]||(t[119]=i=>a.value.quotaResetTime=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",placeholder:"00:00",type:"time"},null,512),[[j,a.value.quotaResetTime]]),t[403]||(t[403]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},"每日自动重置额度的时间",-1))])]),M.value&&a.value.dailyQuota>0?(o(),n("div",Zg,[e("div",Xg,[t[404]||(t[404]=e("span",{class:"text-sm font-semibold text-gray-700 dark:text-gray-300"}," 今日使用情况 ",-1)),e("span",ec," $"+u(ht().toFixed(4))+" / $"+u(a.value.dailyQuota.toFixed(2)),1)]),e("div",tc,[e("div",{class:$(["absolute left-0 top-0 h-full rounded-full transition-all",ct.value>=90?"bg-red-500":ct.value>=70?"bg-yellow-500":"bg-green-500"]),style:Ze({width:`${Math.min(ct.value,100)}%`})},null,6)]),e("div",ac,[e("span",rc," 剩余: $"+u(Math.max(0,a.value.dailyQuota-ht()).toFixed(2)),1),e("span",sc,u(ct.value.toFixed(1))+"% 已使用 ",1)])])):m("",!0),e("div",null,[t[405]||(t[405]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"}," 最大并发任务数 ",-1)),b(e("input",{"onUpdate:modelValue":t[120]||(t[120]=i=>a.value.maxConcurrentTasks=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",min:"0",placeholder:"0 表示不限制",type:"number"},null,512),[[j,a.value.maxConcurrentTasks,void 0,{number:!0}]]),t[406]||(t[406]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 限制该账户的并发请求数量,0 表示不限制 ",-1))]),e("div",null,[t[414]||(t[414]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"模型限制 (可选)",-1)),e("div",lc,[e("button",{class:$(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",U.value==="whitelist"?"bg-blue-500 text-white shadow-md":"border border-gray-300 text-gray-600 hover:border-blue-300 dark:border-gray-600 dark:text-gray-400 dark:hover:border-blue-500"]),type:"button",onClick:t[121]||(t[121]=i=>U.value="whitelist")},t[407]||(t[407]=[e("i",{class:"fas fa-check-circle mr-2"},null,-1),f(" 模型白名单 ",-1)]),2),e("button",{class:$(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",U.value==="mapping"?"bg-purple-500 text-white shadow-md":"border border-gray-300 text-gray-600 hover:border-purple-300 dark:border-gray-600 dark:text-gray-400 dark:hover:border-purple-500"]),type:"button",onClick:t[122]||(t[122]=i=>U.value="mapping")},t[408]||(t[408]=[e("i",{class:"fas fa-random mr-2"},null,-1),f(" 模型映射 ",-1)]),2)]),U.value==="whitelist"?(o(),n("div",oc,[t[409]||(t[409]=e("div",{class:"mb-3 rounded-lg bg-blue-50 p-3 dark:bg-blue-900/30"},[e("p",{class:"text-xs text-blue-700 dark:text-blue-400"},[e("i",{class:"fas fa-info-circle mr-1"}),f(" 选择允许使用此账户的模型。留空表示支持所有模型。 ")])],-1)),e("div",nc,[(o(!0),n(ke,null,Ne(ne.value,i=>(o(),n("label",{key:i.value,class:$(["flex cursor-pointer items-center rounded-lg border p-3 transition-all hover:bg-gray-50 dark:border-gray-600 dark:hover:bg-gray-700",re.value.includes(i.value)?"border-blue-500 bg-blue-50 dark:border-blue-400 dark:bg-blue-900/30":"border-gray-300"])},[b(e("input",{"onUpdate:modelValue":t[123]||(t[123]=pe=>re.value=pe),class:"mr-2 text-blue-600 focus:ring-blue-500",type:"checkbox",value:i.value},null,8,ic),[[je,re.value]]),e("span",dc,u(i.label),1)],2))),128))]),e("p",uc,[f(" 已选择 "+u(re.value.length)+" 个模型 ",1),re.value.length===0?(o(),n("span",pc,"(支持所有模型)")):m("",!0)])])):(o(),n("div",gc,[t[413]||(t[413]=e("div",{class:"mb-3 rounded-lg bg-purple-50 p-3 dark:bg-purple-900/30"},[e("p",{class:"text-xs text-purple-700 dark:text-purple-400"},[e("i",{class:"fas fa-info-circle mr-1"}),f(" 配置模型映射关系。左侧是客户端请求的模型,右侧是实际发送给API的模型。 ")])],-1)),e("div",cc,[(o(!0),n(ke,null,Ne(Oe.value,(i,pe)=>(o(),n("div",{key:pe,class:"flex items-center gap-2"},[b(e("input",{"onUpdate:modelValue":me=>i.from=me,class:"form-input flex-1 border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",placeholder:"原始模型名称",type:"text"},null,8,yc),[[j,i.from]]),t[411]||(t[411]=e("i",{class:"fas fa-arrow-right text-gray-400 dark:text-gray-500"},null,-1)),b(e("input",{"onUpdate:modelValue":me=>i.to=me,class:"form-input flex-1 border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",placeholder:"映射后的模型名称",type:"text"},null,8,mc),[[j,i.to]]),e("button",{class:"rounded-lg p-2 text-red-500 transition-colors hover:bg-red-50 dark:hover:bg-red-900/20",type:"button",onClick:me=>yt(pe)},t[410]||(t[410]=[e("i",{class:"fas fa-trash"},null,-1)]),8,xc)]))),128))]),e("button",{class:"w-full rounded-lg border-2 border-dashed border-gray-300 px-4 py-2 text-gray-600 transition-colors hover:border-gray-400 hover:text-gray-700 dark:border-gray-600 dark:text-gray-400 dark:hover:border-gray-500",type:"button",onClick:Ca},t[412]||(t[412]=[e("i",{class:"fas fa-plus mr-2"},null,-1),f(" 添加模型映射 ",-1)])),e("div",fc,[e("button",{class:"rounded-lg bg-blue-100 px-3 py-1 text-xs text-blue-700 transition-colors hover:bg-blue-200 dark:bg-blue-900/30 dark:text-blue-400 dark:hover:bg-blue-900/50",type:"button",onClick:t[124]||(t[124]=i=>De("claude-sonnet-4-20250514","claude-sonnet-4-20250514"))}," + Sonnet 4 "),e("button",{class:"rounded-lg bg-indigo-100 px-3 py-1 text-xs text-indigo-700 transition-colors hover:bg-indigo-200 dark:bg-indigo-900/30 dark:text-indigo-400 dark:hover:bg-indigo-900/50",type:"button",onClick:t[125]||(t[125]=i=>De("claude-sonnet-4-5-20250929","claude-sonnet-4-5-20250929"))}," + Sonnet 4.5 "),e("button",{class:"rounded-lg bg-purple-100 px-3 py-1 text-xs text-purple-700 transition-colors hover:bg-purple-200 dark:bg-purple-900/30 dark:text-purple-400 dark:hover:bg-purple-900/50",type:"button",onClick:t[126]||(t[126]=i=>De("claude-opus-4-1-20250805","claude-opus-4-1-20250805"))}," + Opus 4.1 "),e("button",{class:"rounded-lg bg-green-100 px-3 py-1 text-xs text-green-700 transition-colors hover:bg-green-200 dark:bg-green-900/30 dark:text-green-400 dark:hover:bg-green-900/50",type:"button",onClick:t[127]||(t[127]=i=>De("claude-3-5-haiku-20241022","claude-3-5-haiku-20241022"))}," + Haiku 3.5 "),e("button",{class:"rounded-lg bg-emerald-100 px-3 py-1 text-xs text-emerald-700 transition-colors hover:bg-emerald-200 dark:bg-emerald-900/30 dark:text-emerald-400 dark:hover:bg-emerald-900/50",type:"button",onClick:t[128]||(t[128]=i=>De("claude-haiku-4-5-20251001","claude-haiku-4-5-20251001"))}," + Haiku 4.5 "),e("button",{class:"rounded-lg bg-cyan-100 px-3 py-1 text-xs text-cyan-700 transition-colors hover:bg-cyan-200 dark:bg-cyan-900/30 dark:text-cyan-400 dark:hover:bg-cyan-900/50",type:"button",onClick:t[129]||(t[129]=i=>De("deepseek-chat","deepseek-chat"))}," + DeepSeek "),e("button",{class:"rounded-lg bg-orange-100 px-3 py-1 text-xs text-orange-700 transition-colors hover:bg-orange-200 dark:bg-orange-900/30 dark:text-orange-400 dark:hover:bg-orange-900/50",type:"button",onClick:t[130]||(t[130]=i=>De("Qwen","Qwen"))}," + Qwen "),e("button",{class:"rounded-lg bg-pink-100 px-3 py-1 text-xs text-pink-700 transition-colors hover:bg-pink-200 dark:bg-pink-900/30 dark:text-pink-400 dark:hover:bg-pink-900/50",type:"button",onClick:t[131]||(t[131]=i=>De("Kimi","Kimi"))}," + Kimi "),e("button",{class:"rounded-lg bg-teal-100 px-3 py-1 text-xs text-teal-700 transition-colors hover:bg-teal-200 dark:bg-teal-900/30 dark:text-teal-400 dark:hover:bg-teal-900/50",type:"button",onClick:t[132]||(t[132]=i=>De("GLM","GLM"))}," + GLM "),e("button",{class:"rounded-lg bg-amber-100 px-3 py-1 text-xs text-amber-700 transition-colors hover:bg-amber-200 dark:bg-amber-900/30 dark:text-amber-400 dark:hover:bg-amber-900/50",type:"button",onClick:t[133]||(t[133]=i=>De("claude-opus-4-1-20250805","claude-sonnet-4-20250514"))}," + Opus → Sonnet ")])]))]),e("div",null,[t[415]||(t[415]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700"},"自定义 User-Agent (可选)",-1)),b(e("input",{"onUpdate:modelValue":t[134]||(t[134]=i=>a.value.userAgent=i),class:"form-input w-full",placeholder:"留空则透传客户端 User-Agent",type:"text"},null,512),[[j,a.value.userAgent]]),t[416]||(t[416]=e("p",{class:"mt-1 text-xs text-gray-500"}," 留空时将自动使用客户端的 User-Agent,仅在需要固定特定 UA 时填写 ",-1))]),e("div",null,[t[421]||(t[421]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700"},"限流机制",-1)),e("div",bc,[e("label",vc,[b(e("input",{"onUpdate:modelValue":t[135]||(t[135]=i=>a.value.enableRateLimit=i),class:"mr-2 rounded border-gray-300 text-blue-600 focus:border-blue-500 focus:ring focus:ring-blue-200",type:"checkbox"},null,512),[[je,a.value.enableRateLimit]]),t[417]||(t[417]=e("span",{class:"text-sm text-gray-700"},"启用限流机制",-1))]),t[418]||(t[418]=e("p",{class:"mt-1 text-xs text-gray-500"}," 启用后,当账号返回429错误时将暂停调度一段时间 ",-1))]),a.value.enableRateLimit?(o(),n("div",kc,[t[419]||(t[419]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700"},"限流时间 (分钟)",-1)),b(e("input",{"onUpdate:modelValue":t[136]||(t[136]=i=>a.value.rateLimitDuration=i),class:"form-input w-full",min:"1",type:"number"},null,512),[[j,a.value.rateLimitDuration,void 0,{number:!0}]]),t[420]||(t[420]=e("p",{class:"mt-1 text-xs text-gray-500"},"账号被限流后暂停调度的时间(分钟)",-1))])):m("",!0)]),a.value.platform==="claude-console"?(o(),n("div",hc,[t[423]||(t[423]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"}," 上游错误处理 ",-1)),e("label",wc,[b(e("input",{"onUpdate:modelValue":t[137]||(t[137]=i=>a.value.disableAutoProtection=i),class:"mr-2 rounded border-gray-300 text-blue-600 focus:border-blue-500 focus:ring focus:ring-blue-200 dark:border-gray-600 dark:bg-gray-700",type:"checkbox"},null,512),[[je,a.value.disableAutoProtection]]),t[422]||(t[422]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"}," 上游错误不自动暂停调度 ",-1))]),t[424]||(t[424]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 勾选后遇到 401/400/429/529 等上游错误仅记录日志并透传,不自动禁用或限流 ",-1))])):m("",!0)])):m("",!0),a.value.platform==="openai-responses"?(o(),n("div",$c,[e("div",null,[t[425]||(t[425]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700"},"API 基础地址",-1)),b(e("input",{"onUpdate:modelValue":t[138]||(t[138]=i=>a.value.baseApi=i),class:"form-input w-full",placeholder:"https://api.example.com/v1",type:"url"},null,512),[[j,a.value.baseApi]])]),e("div",null,[t[426]||(t[426]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700"},"API 密钥",-1)),e("div",Ac,[b(e("input",{"onUpdate:modelValue":t[139]||(t[139]=i=>a.value.apiKey=i),class:"form-input w-full pr-10",placeholder:"留空表示不更新",type:R.value?"text":"password"},null,8,Cc),[[ka,a.value.apiKey]]),e("button",{class:"absolute right-3 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600",type:"button",onClick:t[140]||(t[140]=i=>R.value=!R.value)},[e("i",{class:$(R.value?"fas fa-eye-slash":"fas fa-eye")},null,2)])]),t[427]||(t[427]=e("p",{class:"mt-1 text-xs text-gray-500"},"留空表示不更新 API Key",-1))]),e("div",null,[t[428]||(t[428]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700"},"自定义 User-Agent",-1)),b(e("input",{"onUpdate:modelValue":t[141]||(t[141]=i=>a.value.userAgent=i),class:"form-input w-full",placeholder:"留空则透传客户端 User-Agent",type:"text"},null,512),[[j,a.value.userAgent]]),t[429]||(t[429]=e("p",{class:"mt-1 text-xs text-gray-500"}," 留空时将自动使用客户端的 User-Agent,仅在需要固定特定 UA 时填写 ",-1))]),b(e("input",{"onUpdate:modelValue":t[142]||(t[142]=i=>a.value.rateLimitDuration=i),type:"hidden"},null,512),[[j,a.value.rateLimitDuration,void 0,{number:!0}]]),e("div",Tc,[e("div",null,[t[430]||(t[430]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"}," 每日额度限制 ($) ",-1)),b(e("input",{"onUpdate:modelValue":t[143]||(t[143]=i=>a.value.dailyQuota=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",min:"0",placeholder:"0 表示不限制",step:"0.01",type:"number"},null,512),[[j,a.value.dailyQuota,void 0,{number:!0}]])]),e("div",null,[t[431]||(t[431]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"}," 额度重置时间 ",-1)),b(e("input",{"onUpdate:modelValue":t[144]||(t[144]=i=>a.value.quotaResetTime=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",type:"time"},null,512),[[j,a.value.quotaResetTime]])])]),e("div",null,[t[432]||(t[432]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"}," 最大并发任务数 ",-1)),b(e("input",{"onUpdate:modelValue":t[145]||(t[145]=i=>a.value.maxConcurrentTasks=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",min:"0",placeholder:"0 表示不限制",type:"number"},null,512),[[j,a.value.maxConcurrentTasks,void 0,{number:!0}]]),t[433]||(t[433]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 限制该账户的并发请求数量,0 表示不限制 ",-1))])])):m("",!0),a.value.platform==="gemini-api"?(o(),n("div",Ic,[e("div",null,[t[434]||(t[434]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"API 基础地址",-1)),b(e("input",{"onUpdate:modelValue":t[146]||(t[146]=i=>a.value.baseUrl=i),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",{"border-red-500 dark:border-red-400":I.value.baseUrl}]),placeholder:"https://generativelanguage.googleapis.com/v1beta/models",type:"url"},null,2),[[j,a.value.baseUrl]]),I.value.baseUrl?(o(),n("p",Uc,u(I.value.baseUrl),1)):m("",!0),t[435]||(t[435]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},[f(" 填写 API 基础地址,必须以 "),e("code",{class:"rounded bg-gray-100 px-1 dark:bg-gray-600"},"/models"),f(" 结尾。系统会自动拼接 "),e("code",{class:"rounded bg-gray-100 px-1 dark:bg-gray-600"},"/{model}:generateContent")],-1)),t[436]||(t[436]=e("p",{class:"mt-0.5 text-xs text-gray-400 dark:text-gray-500"},[f(" 官方: "),e("code",{class:"rounded bg-gray-100 px-1 dark:bg-gray-600"},"https://generativelanguage.googleapis.com/v1beta/models")],-1)),t[437]||(t[437]=e("p",{class:"mt-0.5 text-xs text-gray-400 dark:text-gray-500"},[f(" 上游为 CRS: "),e("code",{class:"rounded bg-gray-100 px-1 dark:bg-gray-600"},"https://your-crs.com/gemini/v1beta/models")],-1))]),e("div",null,[t[438]||(t[438]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"API 密钥",-1)),e("div",_c,[b(e("input",{"onUpdate:modelValue":t[147]||(t[147]=i=>a.value.apiKey=i),class:"form-input w-full border-gray-300 pr-10 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",placeholder:"留空表示不更新",type:R.value?"text":"password"},null,8,Kc),[[ka,a.value.apiKey]]),e("button",{class:"absolute right-3 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-400",type:"button",onClick:t[148]||(t[148]=i=>R.value=!R.value)},[e("i",{class:$(R.value?"fas fa-eye-slash":"fas fa-eye")},null,2)])]),t[439]||(t[439]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},"留空表示不更新 API Key",-1))])])):m("",!0),a.value.platform==="bedrock"?(o(),n("div",Sc,[e("div",null,[t[440]||(t[440]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700"},"AWS 访问密钥 ID",-1)),b(e("input",{"onUpdate:modelValue":t[149]||(t[149]=i=>a.value.accessKeyId=i),class:"form-input w-full",placeholder:"留空表示不更新",type:"text"},null,512),[[j,a.value.accessKeyId]]),t[441]||(t[441]=e("p",{class:"mt-1 text-xs text-gray-500"},"留空表示不更新 AWS Access Key ID",-1))]),e("div",null,[t[442]||(t[442]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700"},"AWS 秘密访问密钥",-1)),b(e("input",{"onUpdate:modelValue":t[150]||(t[150]=i=>a.value.secretAccessKey=i),class:"form-input w-full",placeholder:"留空表示不更新",type:"password"},null,512),[[j,a.value.secretAccessKey]]),t[443]||(t[443]=e("p",{class:"mt-1 text-xs text-gray-500"},"留空表示不更新 AWS Secret Access Key",-1))]),e("div",null,[t[444]||(t[444]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700"},"AWS 区域",-1)),b(e("input",{"onUpdate:modelValue":t[151]||(t[151]=i=>a.value.region=i),class:"form-input w-full",placeholder:"例如:us-east-1",type:"text"},null,512),[[j,a.value.region]]),t[445]||(t[445]=e("div",{class:"mt-2 rounded-lg border border-blue-200 bg-blue-50 p-3"},[e("div",{class:"flex items-start gap-2"},[e("i",{class:"fas fa-info-circle mt-0.5 text-blue-600"}),e("div",{class:"text-xs text-blue-700"},[e("p",{class:"mb-1 font-medium"},"常用 AWS 区域参考:"),e("div",{class:"grid grid-cols-2 gap-1 text-xs"},[e("span",null,"• us-east-1 (美国东部)"),e("span",null,"• us-west-2 (美国西部)"),e("span",null,"• eu-west-1 (欧洲爱尔兰)"),e("span",null,"• ap-southeast-1 (新加坡)"),e("span",null,"• ap-northeast-1 (东京)"),e("span",null,"• eu-central-1 (法兰克福)")])])])],-1))]),e("div",null,[t[446]||(t[446]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700"},"会话令牌 (可选)",-1)),b(e("input",{"onUpdate:modelValue":t[152]||(t[152]=i=>a.value.sessionToken=i),class:"form-input w-full",placeholder:"留空表示不更新",type:"password"},null,512),[[j,a.value.sessionToken]])]),e("div",null,[t[447]||(t[447]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700"},"默认主模型 (可选)",-1)),b(e("input",{"onUpdate:modelValue":t[153]||(t[153]=i=>a.value.defaultModel=i),class:"form-input w-full",placeholder:"例如:us.anthropic.claude-sonnet-4-20250514-v1:0",type:"text"},null,512),[[j,a.value.defaultModel]]),t[448]||(t[448]=e("p",{class:"mt-1 text-xs text-gray-500"}," 留空将使用系统默认模型。支持 inference profile ID 或 ARN ",-1))]),e("div",null,[t[449]||(t[449]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"小快速模型 (可选)",-1)),b(e("input",{"onUpdate:modelValue":t[154]||(t[154]=i=>a.value.smallFastModel=i),class:"form-input w-full",placeholder:"例如:us.anthropic.claude-3-5-haiku-20241022-v1:0",type:"text"},null,512),[[j,a.value.smallFastModel]]),t[450]||(t[450]=e("p",{class:"mt-1 text-xs text-gray-500"},"用于快速响应的轻量级模型,留空将使用系统默认",-1))]),e("div",null,[t[455]||(t[455]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700"},"限流机制",-1)),e("div",Mc,[e("label",Dc,[b(e("input",{"onUpdate:modelValue":t[155]||(t[155]=i=>a.value.enableRateLimit=i),class:"mr-2 rounded border-gray-300 text-blue-600 focus:border-blue-500 focus:ring focus:ring-blue-200",type:"checkbox"},null,512),[[je,a.value.enableRateLimit]]),t[451]||(t[451]=e("span",{class:"text-sm text-gray-700"},"启用限流机制",-1))]),t[452]||(t[452]=e("p",{class:"mt-1 text-xs text-gray-500"}," 启用后,当账号返回429错误时将暂停调度一段时间 ",-1))]),a.value.enableRateLimit?(o(),n("div",Pc,[t[453]||(t[453]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700"},"限流时间 (分钟)",-1)),b(e("input",{"onUpdate:modelValue":t[156]||(t[156]=i=>a.value.rateLimitDuration=i),class:"form-input w-full",min:"1",type:"number"},null,512),[[j,a.value.rateLimitDuration,void 0,{number:!0}]]),t[454]||(t[454]=e("p",{class:"mt-1 text-xs text-gray-500"},"账号被限流后暂停调度的时间(分钟)",-1))])):m("",!0)])])):m("",!0),a.value.platform==="azure_openai"?(o(),n("div",jc,[e("div",null,[t[456]||(t[456]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"Azure Endpoint",-1)),b(e("input",{"onUpdate:modelValue":t[157]||(t[157]=i=>a.value.azureEndpoint=i),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":I.value.azureEndpoint}]),placeholder:"https://your-resource.openai.azure.com",type:"url"},null,2),[[j,a.value.azureEndpoint]]),I.value.azureEndpoint?(o(),n("p",Vc,u(I.value.azureEndpoint),1)):m("",!0)]),e("div",null,[t[457]||(t[457]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"API 版本",-1)),b(e("input",{"onUpdate:modelValue":t[158]||(t[158]=i=>a.value.apiVersion=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"2024-02-01",type:"text"},null,512),[[j,a.value.apiVersion]]),t[458]||(t[458]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," Azure OpenAI API 版本,默认使用最新稳定版本 2024-02-01 ",-1))]),e("div",null,[t[459]||(t[459]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"部署名称",-1)),b(e("input",{"onUpdate:modelValue":t[159]||(t[159]=i=>a.value.deploymentName=i),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":I.value.deploymentName}]),placeholder:"gpt-4",type:"text"},null,2),[[j,a.value.deploymentName]]),I.value.deploymentName?(o(),n("p",zc,u(I.value.deploymentName),1)):m("",!0)]),e("div",null,[t[460]||(t[460]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"API Key",-1)),b(e("input",{"onUpdate:modelValue":t[160]||(t[160]=i=>a.value.apiKey=i),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":I.value.apiKey}]),placeholder:"留空表示不更新",type:"password"},null,2),[[j,a.value.apiKey]]),I.value.apiKey?(o(),n("p",Lc,u(I.value.apiKey),1)):m("",!0),t[461]||(t[461]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},"留空表示不更新 API Key",-1))]),e("div",null,[t[462]||(t[462]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"支持的模型",-1)),e("div",Rc,[(o(),n(ke,null,Ne(["gpt-4","gpt-4-turbo","gpt-4o","gpt-4o-mini","gpt-5","gpt-5-mini","gpt-35-turbo","gpt-35-turbo-16k","codex-mini"],i=>e("label",{key:i,class:"flex cursor-pointer items-center"},[b(e("input",{"onUpdate:modelValue":t[161]||(t[161]=pe=>a.value.supportedModels=pe),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox",value:i},null,8,Oc),[[je,a.value.supportedModels]]),e("span",Ec,u(i),1)])),64))]),t[463]||(t[463]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},"选择此部署支持的模型类型",-1))])])):m("",!0),M.value&&wt.value?(o(),n("div",Nc,[e("div",qc,[t[469]||(t[469]=e("div",{class:"mt-1 flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-lg bg-purple-500"},[e("i",{class:"fas fa-retweet text-sm text-white"})],-1)),e("div",Wc,[e("div",Bc,[t[465]||(t[465]=e("h5",{class:"font-semibold text-purple-900 dark:text-purple-200"},"更新 API Key",-1)),e("button",{class:"flex items-center gap-1.5 rounded-lg bg-purple-600 px-3 py-1.5 text-xs font-medium text-white transition-colors hover:bg-purple-700 dark:bg-purple-500 dark:hover:bg-purple-600",type:"button",onClick:t[162]||(t[162]=i=>Ce.value=!0)},t[464]||(t[464]=[e("i",{class:"fas fa-list-ul"},null,-1),e("span",null,"管理 API Key",-1)]))]),e("p",Gc,[t[466]||(t[466]=f(" 当前已保存 ",-1)),e("strong",null,u(Vt.value),1),t[467]||(t[467]=f(" 条 API Key。您可以追加新的 Key,或通过下方模式快速覆盖、删除指定 Key。 ",-1))]),t[468]||(t[468]=e("p",{class:"text-xs text-purple-700 dark:text-purple-300"}," 留空表示保留现有 Key 不变;根据所选模式决定是追加、覆盖还是删除输入的 Key。 ",-1))])]),e("div",Fc,[e("div",null,[t[470]||(t[470]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"新的 API Key 列表",-1)),b(e("textarea",{"onUpdate:modelValue":t[163]||(t[163]=i=>a.value.apiKeysInput=i),class:$(["form-input w-full resize-none border-gray-300 font-mono text-xs dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":I.value.apiKeys}]),placeholder:"根据模式填写;每行一个 API Key",rows:"6"},null,2),[[j,a.value.apiKeysInput]]),I.value.apiKeys?(o(),n("p",Qc,u(I.value.apiKeys),1)):m("",!0)]),e("div",Hc,[e("div",Jc,[t[471]||(t[471]=e("span",{class:"text-sm font-semibold text-purple-800 dark:text-purple-100"},"API Key 更新模式",-1)),e("span",Yc,u(Pt.value),1)]),e("div",Zc,[e("span",{class:"pointer-events-none absolute inset-y-0 rounded-2xl bg-gradient-to-r from-purple-500/90 via-purple-600 to-indigo-500/90 shadow-lg ring-1 ring-purple-100/80 transition-all duration-300 ease-out dark:from-purple-500/70 dark:via-purple-600/70 dark:to-indigo-500/70 dark:ring-purple-400/30",style:Ze(Dt.value)},null,4),(o(),n(ke,null,Ne(at,i=>e("button",{key:i.value,class:$(["relative z-10 flex items-center justify-center rounded-2xl px-2 text-xs font-semibold transition-all duration-200 ease-out focus:outline-none focus-visible:ring-2 focus-visible:ring-purple-500/60 dark:focus-visible:ring-purple-400/60",a.value.apiKeyUpdateMode===i.value?"text-white drop-shadow-sm":"text-purple-500/80 hover:text-purple-700 dark:text-purple-200/70 dark:hover:text-purple-100"]),type:"button",onClick:pe=>a.value.apiKeyUpdateMode=i.value},u(i.label),11,Xc)),64))]),e("p",ey,u(jt.value),1)]),t[472]||(t[472]=e("div",{class:"rounded-lg border border-purple-200 bg-white/70 p-3 text-xs text-purple-800 dark:border-purple-700 dark:bg-purple-800/20 dark:text-purple-100"},[e("p",{class:"font-medium"},[e("i",{class:"fas fa-lightbulb mr-1"}),f("小提示")]),e("ul",{class:"mt-1 list-disc space-y-1 pl-4"},[e("li",null,"系统会为新的 Key 自动建立粘性映射,保持同一会话命中同一个 Key。"),e("li",null,"追加模式会保留现有 Key 并在末尾追加新的 Key。"),e("li",null,"覆盖模式会先清空旧 Key 再写入上方的新列表。"),e("li",null,"删除模式会根据输入精准移除指定 Key,适合快速处理失效或被封禁的 Key。")])],-1))])])):m("",!0),!(M.value&&wt.value)&&a.value.platform!=="claude-console"&&a.value.platform!=="ccr"&&a.value.platform!=="bedrock"&&a.value.platform!=="azure_openai"&&a.value.platform!=="openai-responses"?(o(),n("div",ty,[t[475]||(t[475]=e("div",{class:"mb-4 flex items-start gap-3"},[e("div",{class:"mt-1 flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-lg bg-amber-500"},[e("i",{class:"fas fa-key text-sm text-white"})]),e("div",null,[e("h5",{class:"mb-2 font-semibold text-amber-900 dark:text-amber-300"},"更新 Token"),e("p",{class:"mb-2 text-sm text-amber-800 dark:text-amber-300"}," 可以更新 Access Token 和 Refresh Token。为了安全起见,不会显示当前的 Token 值。 "),e("p",{class:"text-xs text-amber-600 dark:text-amber-400"},"💡 留空表示不更新该字段。")])],-1)),e("div",ay,[e("div",null,[t[473]||(t[473]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"新的 Access Token",-1)),b(e("textarea",{"onUpdate:modelValue":t[164]||(t[164]=i=>a.value.accessToken=i),class:"form-input w-full resize-none border-gray-300 font-mono text-xs dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"留空表示不更新...",rows:"4"},null,512),[[j,a.value.accessToken]])]),e("div",null,[t[474]||(t[474]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"新的 Refresh Token",-1)),b(e("textarea",{"onUpdate:modelValue":t[165]||(t[165]=i=>a.value.refreshToken=i),class:"form-input w-full resize-none border-gray-300 font-mono text-xs dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"留空表示不更新...",rows:"4"},null,512),[[j,a.value.refreshToken]])])])])):m("",!0),a.value.platform==="droid"?(o(),n("div",ry,[t[476]||(t[476]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"自定义 User-Agent (可选)",-1)),b(e("input",{"onUpdate:modelValue":t[166]||(t[166]=i=>a.value.userAgent=i),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"factory-cli/0.32.1",type:"text"},null,512),[[j,a.value.userAgent]]),t[477]||(t[477]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 留空使用默认值 factory-cli/0.32.1,可根据需要自定义 ",-1))])):m("",!0),Ve(rr,{modelValue:a.value.proxy,"onUpdate:modelValue":t[167]||(t[167]=i=>a.value.proxy=i)},null,8,["modelValue"]),e("div",sy,[e("button",{class:"flex-1 rounded-xl bg-gray-100 px-6 py-3 font-semibold text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700",type:"button",onClick:t[168]||(t[168]=i=>d.$emit("close"))}," 取消 "),e("button",{class:"btn btn-primary flex-1 px-6 py-3 font-semibold",disabled:E.value,type:"button",onClick:At},[E.value?(o(),n("div",oy)):m("",!0),f(" "+u(E.value?"更新中...":"更新"),1)],8,ly)])])):m("",!0)])])):m("",!0),Ve(Ja,{"cancel-text":T.value.cancelText,"confirm-text":T.value.confirmText,message:T.value.message,show:_.value,title:T.value.title,onCancel:Y,onConfirm:O},null,8,["cancel-text","confirm-text","message","show","title"]),Ut.value?(o(),Xe(jr,{key:1,onClose:t[169]||(t[169]=i=>Ut.value=!1),onRefresh:$a})):m("",!0),Ce.value?(o(),Xe(Ei,{key:2,"account-id":(ie=c.account)==null?void 0:ie.id,"account-name":(ye=c.account)==null?void 0:ye.name,onClose:t[170]||(t[170]=i=>Ce.value=!1),onRefresh:Aa},null,8,["account-id","account-name"])):m("",!0)])}}},mr=sa(ny,[["__scopeId","data-v-31bfe83b"]]),iy={key:0,class:"modal fixed inset-0 z-50 flex items-center justify-center p-3 sm:p-4"},dy={class:"modal-content custom-scrollbar mx-auto max-h-[90vh] w-full max-w-2xl overflow-y-auto rounded-2xl bg-white/90 p-4 shadow-xl backdrop-blur-xl dark:bg-gray-800/95 dark:shadow-2xl sm:p-6 md:p-8"},uy={class:"mb-4 flex items-center justify-between sm:mb-6"},py={class:"flex items-center gap-2 sm:gap-3"},gy={class:"text-lg font-bold text-gray-900 dark:text-gray-100 sm:text-xl"},cy={class:"space-y-6"},yy={key:0,class:"mt-1 text-xs text-red-500"},my={class:"grid grid-cols-1 gap-4 sm:grid-cols-2"},xy={key:0,class:"mt-1 text-xs text-red-500"},fy={class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},by=["placeholder","required"],vy={key:0,class:"mt-1 text-xs text-red-500"},ky={class:"grid grid-cols-1 gap-4 sm:grid-cols-2"},hy={class:"mb-3"},wy={class:"inline-flex cursor-pointer items-center"},$y={key:0},Ay={class:"grid grid-cols-1 gap-4 sm:grid-cols-2"},Cy={class:"mb-3 space-y-2"},Ty=["onUpdate:modelValue"],Iy=["onUpdate:modelValue"],Uy=["onClick"],_y={class:"mt-2 flex gap-3"},Ky=["disabled"],Sy={key:0,class:"loading-spinner mr-2"},My={__name:"CcrAccountForm",props:{account:{type:Object,default:null}},emits:["close","success"],setup(F,{emit:_e}){const c=F,z=_e,A=v(!0),_=Z(()=>!!c.account),T=v(!1),k=v({name:"",description:"",apiUrl:"",apiKey:"",priority:50,userAgent:"",rateLimitDuration:60,dailyQuota:0,quotaResetTime:"00:00",proxy:null,supportedModels:{}}),P=v(!0),O=v({}),Y=v([]),M=()=>{const y={};for(const p of Y.value){const D=(p.from||"").trim(),de=(p.to||"").trim();D&&de&&(y[D]=de)}return y},se=()=>{Y.value.push({from:"",to:""})},ge=y=>{Y.value.splice(y,1)},N=()=>{const y={};return(!k.value.name||k.value.name.trim().length===0)&&(y.name="名称不能为空"),(!k.value.apiUrl||k.value.apiUrl.trim().length===0)&&(y.apiUrl="API URL 不能为空"),!_.value&&(!k.value.apiKey||k.value.apiKey.trim().length===0)&&(y.apiKey="API Key 不能为空"),O.value=y,Object.keys(y).length===0},E=async()=>{if(N()){T.value=!0;try{if(_.value){const y={name:k.value.name,description:k.value.description,apiUrl:k.value.apiUrl,priority:k.value.priority,userAgent:k.value.userAgent,rateLimitDuration:P.value?Number(k.value.rateLimitDuration||60):0,dailyQuota:Number(k.value.dailyQuota||0),quotaResetTime:k.value.quotaResetTime||"00:00",proxy:k.value.proxy||null,supportedModels:M()};k.value.apiKey&&k.value.apiKey.trim().length>0&&(y.apiKey=k.value.apiKey);const p=await zs(c.account.id,y);p.success?z("success"):V(p.message||"保存失败","error")}else{const y={name:k.value.name,description:k.value.description,apiUrl:k.value.apiUrl,apiKey:k.value.apiKey,priority:Number(k.value.priority||50),supportedModels:M(),userAgent:k.value.userAgent,rateLimitDuration:P.value?Number(k.value.rateLimitDuration||60):0,proxy:k.value.proxy,accountType:"shared",dailyQuota:Number(k.value.dailyQuota||0),quotaResetTime:k.value.quotaResetTime||"00:00"},p=await Ls(y);p.success?z("success"):V(p.message||"创建失败","error")}}catch(y){V(y.message||"请求失败","error")}finally{T.value=!1}}},R=()=>{if(!c.account)return;const y=c.account;k.value.name=y.name||"",k.value.description=y.description||"",k.value.apiUrl=y.apiUrl||"",k.value.priority=Number(y.priority||50),k.value.userAgent=y.userAgent||"",k.value.rateLimitDuration=Number(y.rateLimitDuration||60),k.value.dailyQuota=Number(y.dailyQuota||0),k.value.quotaResetTime=y.quotaResetTime||"00:00",k.value.proxy=y.proxy||null,P.value=k.value.rateLimitDuration>0,Y.value=[];const p=y.supportedModels||{};if(p&&typeof p=="object")for(const D of Object.keys(p))Y.value.push({from:D,to:p[D]})};return ra(()=>{_.value&&R()}),ve(()=>c.account,()=>{_.value&&R()}),(y,p)=>(o(),Xe(Mt,{to:"body"},[A.value?(o(),n("div",iy,[e("div",dy,[e("div",uy,[e("div",py,[p[13]||(p[13]=e("div",{class:"flex h-8 w-8 items-center justify-center rounded-lg bg-gradient-to-br from-teal-500 to-emerald-600 sm:h-10 sm:w-10 sm:rounded-xl"},[e("i",{class:"fas fa-code-branch text-sm text-white sm:text-base"})],-1)),e("h3",gy,u(_.value?"编辑 CCR 账户":"添加 CCR 账户"),1)]),e("button",{class:"p-1 text-gray-400 transition-colors hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300",onClick:p[0]||(p[0]=D=>y.$emit("close"))},p[14]||(p[14]=[e("i",{class:"fas fa-times text-lg sm:text-xl"},null,-1)]))]),e("div",cy,[e("div",null,[p[15]||(p[15]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"账户名称 *",-1)),b(e("input",{"onUpdate:modelValue":p[1]||(p[1]=D=>k.value.name=D),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",{"border-red-500":O.value.name}]),placeholder:"为账户设置一个易识别的名称",required:"",type:"text"},null,2),[[j,k.value.name]]),O.value.name?(o(),n("p",yy,u(O.value.name),1)):m("",!0)]),e("div",null,[p[16]||(p[16]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"描述 (可选)",-1)),b(e("textarea",{"onUpdate:modelValue":p[2]||(p[2]=D=>k.value.description=D),class:"form-input w-full resize-none border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",placeholder:"账户用途说明...",rows:"3"},null,512),[[j,k.value.description]])]),e("div",my,[e("div",null,[p[17]||(p[17]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"API URL *",-1)),b(e("input",{"onUpdate:modelValue":p[3]||(p[3]=D=>k.value.apiUrl=D),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",{"border-red-500":O.value.apiUrl}]),placeholder:"例如:https://api.example.com/v1/messages",required:"",type:"text"},null,2),[[j,k.value.apiUrl]]),O.value.apiUrl?(o(),n("p",xy,u(O.value.apiUrl),1)):m("",!0)]),e("div",null,[e("label",fy,"API Key "+u(_.value?"(留空不更新)":"*"),1),b(e("input",{"onUpdate:modelValue":p[4]||(p[4]=D=>k.value.apiKey=D),class:$(["form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",{"border-red-500":O.value.apiKey}]),placeholder:_.value?"留空表示不更新":"必填",required:!_.value,type:"password"},null,10,by),[[j,k.value.apiKey]]),O.value.apiKey?(o(),n("p",vy,u(O.value.apiKey),1)):m("",!0)])]),e("div",ky,[e("div",null,[p[18]||(p[18]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"优先级",-1)),b(e("input",{"onUpdate:modelValue":p[5]||(p[5]=D=>k.value.priority=D),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",max:"100",min:"1",placeholder:"默认50,数字越小优先级越高",type:"number"},null,512),[[j,k.value.priority,void 0,{number:!0}]]),p[19]||(p[19]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 建议范围:1-100,数字越小优先级越高 ",-1))]),e("div",null,[p[20]||(p[20]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"自定义 User-Agent (可选)",-1)),b(e("input",{"onUpdate:modelValue":p[6]||(p[6]=D=>k.value.userAgent=D),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",placeholder:"留空则透传客户端 User-Agent",type:"text"},null,512),[[j,k.value.userAgent]])])]),e("div",null,[p[24]||(p[24]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"限流机制",-1)),e("div",hy,[e("label",wy,[b(e("input",{"onUpdate:modelValue":p[7]||(p[7]=D=>P.value=D),class:"mr-2 rounded border-gray-300 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox"},null,512),[[je,P.value]]),p[21]||(p[21]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"启用限流机制(429 时暂停调度)",-1))])]),P.value?(o(),n("div",$y,[p[22]||(p[22]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"限流时间 (分钟)",-1)),b(e("input",{"onUpdate:modelValue":p[8]||(p[8]=D=>k.value.rateLimitDuration=D),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",min:"1",placeholder:"默认60分钟",type:"number"},null,512),[[j,k.value.rateLimitDuration,void 0,{number:!0}]]),p[23]||(p[23]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 账号被限流后暂停调度的时间(分钟) ",-1))])):m("",!0)]),e("div",Ay,[e("div",null,[p[25]||(p[25]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"每日额度限制 ($)",-1)),b(e("input",{"onUpdate:modelValue":p[9]||(p[9]=D=>k.value.dailyQuota=D),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",min:"0",placeholder:"0 表示不限制",step:"0.01",type:"number"},null,512),[[j,k.value.dailyQuota,void 0,{number:!0}]]),p[26]||(p[26]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 设置每日使用额度,0 表示不限制 ",-1))]),e("div",null,[p[27]||(p[27]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"额度重置时间",-1)),b(e("input",{"onUpdate:modelValue":p[10]||(p[10]=D=>k.value.quotaResetTime=D),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",placeholder:"00:00",type:"time"},null,512),[[j,k.value.quotaResetTime]]),p[28]||(p[28]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},"每日自动重置额度的时间",-1))])]),e("div",null,[p[32]||(p[32]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"模型映射表 (可选)",-1)),p[33]||(p[33]=e("div",{class:"mb-3 rounded-lg bg-blue-50 p-3 dark:bg-blue-900/30"},[e("p",{class:"text-xs text-blue-700 dark:text-blue-400"},[e("i",{class:"fas fa-info-circle mr-1"}),f(" 留空表示支持所有模型且不修改请求。配置映射后,左侧模型会被识别为支持的模型,右侧是实际发送的模型。 ")])],-1)),e("div",Cy,[(o(!0),n(ke,null,Ne(Y.value,(D,de)=>(o(),n("div",{key:de,class:"flex items-center gap-2"},[b(e("input",{"onUpdate:modelValue":le=>D.from=le,class:"form-input flex-1 border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"原始模型名称",type:"text"},null,8,Ty),[[j,D.from]]),p[30]||(p[30]=e("i",{class:"fas fa-arrow-right text-gray-400 dark:text-gray-500"},null,-1)),b(e("input",{"onUpdate:modelValue":le=>D.to=le,class:"form-input flex-1 border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"映射后的模型名称",type:"text"},null,8,Iy),[[j,D.to]]),e("button",{class:"rounded-lg p-2 text-red-500 transition-colors hover:bg-red-50 dark:hover:bg-red-900/20",type:"button",onClick:le=>ge(de)},p[29]||(p[29]=[e("i",{class:"fas fa-trash"},null,-1)]),8,Uy)]))),128))]),e("button",{class:"w-full rounded-lg border-2 border-dashed border-gray-300 px-4 py-2 text-gray-600 transition-colors hover:border-gray-400 hover:text-gray-700 dark:border-gray-600 dark:text-gray-400 dark:hover:border-gray-500 dark:hover:text-gray-300",type:"button",onClick:se},p[31]||(p[31]=[e("i",{class:"fas fa-plus mr-2"},null,-1),f(" 添加模型映射 ",-1)]))]),e("div",null,[Ve(rr,{modelValue:k.value.proxy,"onUpdate:modelValue":p[11]||(p[11]=D=>k.value.proxy=D)},null,8,["modelValue"])]),e("div",_y,[e("button",{class:"flex-1 rounded-xl bg-gray-100 px-6 py-3 font-semibold text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700",type:"button",onClick:p[12]||(p[12]=D=>y.$emit("close"))}," 取消 "),e("button",{class:"btn btn-primary flex-1 px-6 py-3 font-semibold",disabled:T.value,type:"button",onClick:E},[T.value?(o(),n("div",Sy)):m("",!0),f(" "+u(T.value?_.value?"保存中...":"创建中...":_.value?"保存":"创建"),1)],8,Ky)])])])])):m("",!0)]))}},xr=sa(My,[["__scopeId","data-v-3b48d107"]]),Dy={key:0,class:"fixed inset-0 z-[1050] flex items-center justify-center bg-gray-900/40 backdrop-blur-sm"},Py={class:"relative z-10 mx-3 flex max-h-[92vh] w-full max-w-6xl flex-col overflow-hidden rounded-2xl border border-gray-200/70 bg-white/95 shadow-2xl ring-1 ring-black/5 transition-all dark:border-gray-700/60 dark:bg-gray-900/95 dark:ring-white/10 sm:mx-4 sm:p-1"},jy={class:"flex flex-col gap-3 border-b border-gray-100 bg-white/80 px-5 py-4 backdrop-blur dark:border-gray-800 dark:bg-gray-900/80 sm:flex-row sm:items-center sm:justify-between"},Vy={class:"flex flex-1 items-start gap-3"},zy={class:"space-y-1"},Ly={class:"flex flex-wrap items-center gap-2"},Ry={class:"text-lg font-semibold text-gray-900 dark:text-gray-100 sm:text-xl"},Oy={key:0,class:"inline-flex items-center rounded-full bg-blue-100 px-2.5 py-0.5 text-xs font-medium text-blue-700 dark:bg-blue-500/10 dark:text-blue-300"},Ey={key:1,class:"inline-flex items-center rounded-full bg-purple-100 px-2.5 py-0.5 text-xs font-medium text-purple-700 dark:bg-purple-500/10 dark:text-purple-300"},Ny={class:"text-xs text-gray-500 dark:text-gray-400 sm:text-sm"},qy={key:0},Wy={class:"flex-1 overflow-y-auto px-5 py-4 sm:px-6"},By={key:0,class:"flex h-[50vh] items-center justify-center"},Gy={class:"mb-5 grid grid-cols-1 gap-4 sm:grid-cols-2 xl:grid-cols-4"},Fy={class:"flex items-start justify-between"},Qy={class:"text-xs font-medium uppercase tracking-wide text-gray-500 dark:text-gray-400"},Hy={class:"mt-2 text-xl font-semibold text-gray-900 dark:text-gray-100"},Jy={class:"mt-1 text-xs text-gray-400 dark:text-gray-500"},Yy={class:"flex h-10 w-10 items-center justify-center rounded-xl bg-gray-50 dark:bg-gray-800"},Zy={class:"mb-6 grid grid-cols-1 gap-4 lg:grid-cols-3"},Xy={class:"space-y-3 rounded-2xl border border-blue-100 bg-blue-50/60 p-4 dark:border-blue-500/20 dark:bg-blue-900/20"},em={class:"rounded-xl bg-white/80 p-3 text-sm text-gray-600 shadow-sm ring-1 ring-blue-100 dark:bg-gray-900/80 dark:text-gray-300 dark:ring-blue-500/20"},tm={class:"flex items-center justify-between"},am={class:"font-semibold text-gray-900 dark:text-gray-100"},rm={class:"mt-2 flex items-center justify-between"},sm={class:"font-semibold text-gray-900 dark:text-gray-100"},lm={class:"mt-2 flex items-center justify-between text-xs text-gray-500 dark:text-gray-400"},om={class:"space-y-3 rounded-2xl border border-amber-100 bg-amber-50/70 p-4 dark:border-amber-500/20 dark:bg-amber-900/20"},nm={class:"rounded-xl bg-white/80 p-3 text-sm text-gray-600 shadow-sm ring-1 ring-amber-100 dark:bg-gray-900/80 dark:text-gray-300 dark:ring-amber-500/20"},im={class:"flex items-center justify-between"},dm={class:"font-semibold text-gray-900 dark:text-gray-100"},um={class:"mt-2 flex items-center justify-between"},pm={class:"font-semibold text-gray-900 dark:text-gray-100"},gm={class:"mt-2 flex items-center justify-between text-xs text-gray-500 dark:text-gray-400"},cm={class:"space-y-3 rounded-2xl border border-emerald-100 bg-emerald-50/60 p-4 dark:border-emerald-500/20 dark:bg-emerald-900/20"},ym={class:"rounded-xl bg-white/80 p-3 text-sm text-gray-600 shadow-sm ring-1 ring-emerald-100 dark:bg-gray-900/80 dark:text-gray-300 dark:ring-emerald-500/20"},mm={class:"flex items-center justify-between"},xm={class:"font-semibold text-gray-900 dark:text-gray-100"},fm={class:"mt-2 flex items-center justify-between"},bm={class:"font-semibold text-gray-900 dark:text-gray-100"},vm={class:"mt-2 flex items-center justify-between text-xs text-gray-500 dark:text-gray-400"},km={class:"mb-6 grid grid-cols-1 gap-4 lg:grid-cols-3"},hm={class:"rounded-2xl border border-gray-100 bg-white/80 p-4 shadow-sm dark:border-gray-700 dark:bg-gray-900/70"},wm={class:"space-y-2 text-sm text-gray-600 dark:text-gray-300"},$m={class:"flex items-center justify-between"},Am={class:"font-semibold text-gray-900 dark:text-gray-100"},Cm={class:"flex items-center justify-between"},Tm={class:"font-semibold text-gray-900 dark:text-gray-100"},Im={class:"flex items-center justify-between text-xs text-gray-500 dark:text-gray-400"},Um={class:"rounded-2xl border border-gray-100 bg-white/80 p-4 shadow-sm dark:border-gray-700 dark:bg-gray-900/70"},_m={class:"space-y-2 text-sm text-gray-600 dark:text-gray-300"},Km={class:"flex items-center justify-between"},Sm={class:"font-semibold text-gray-900 dark:text-gray-100"},Mm={class:"flex items-center justify-between"},Dm={class:"font-semibold text-gray-900 dark:text-gray-100"},Pm={class:"flex items-center justify-between text-xs text-gray-500 dark:text-gray-400"},jm={class:"rounded-2xl border border-gray-100 bg-white/80 p-4 shadow-sm dark:border-gray-700 dark:bg-gray-900/70"},Vm={class:"space-y-2 text-sm text-gray-600 dark:text-gray-300"},zm={class:"flex items-center justify-between"},Lm={class:"font-semibold text-gray-900 dark:text-gray-100"},Rm={class:"flex items-center justify-between"},Om={class:"font-semibold text-gray-900 dark:text-gray-100"},Em={class:"flex items-center justify-between text-xs text-gray-500 dark:text-gray-400"},Nm={class:"mb-6 rounded-2xl border border-gray-100 bg-white/80 p-4 shadow-sm dark:border-gray-700 dark:bg-gray-900/70"},qm={class:"mb-4 flex flex-wrap items-center justify-between gap-2"},Wm={class:"text-xs text-gray-400 dark:text-gray-500"},Bm={class:"h-[260px] sm:h-[300px]"},Gm={__name:"AccountUsageDetailModal",props:{show:{type:Boolean,default:!1},account:{type:Object,default:()=>({})},history:{type:Array,default:()=>[]},summary:{type:Object,default:()=>({})},overview:{type:Object,default:()=>({})},generatedAt:{type:String,default:""},loading:{type:Boolean,default:!1}},emits:["close"],setup(F,{emit:_e}){const c=F,z=_e,A=Rs(),{isDarkMode:_}=Qr(A),T=Hr(),k=v(null);let P=null;const O={claude:"Claude","claude-console":"Claude Console",openai:"OpenAI","openai-responses":"OpenAI Responses",gemini:"Gemini","gemini-api":"Gemini API",droid:"Droid",bedrock:"Claude AWS Bedrock"},Y=Z(()=>{var H;return O[(H=c.account)==null?void 0:H.platform]||"未知平台"}),M=Z(()=>{var H;return(H=c.account)!=null&&H.accountType?c.account.accountType==="dedicated"?"专属":c.account.accountType==="group"?"分组":"共享":"共享"}),se=Z(()=>({text:_.value?"#e5e7eb":"#374151",grid:_.value?"rgba(75, 85, 99, 0.25)":"rgba(209, 213, 219, 0.4)",cost:"#3b82f6",costFill:"rgba(59, 130, 246, 0.15)",requests:"#f97316"})),ge=Z(()=>{var H;return((H=c.summary)==null?void 0:H.totalTokens)||0}),N=Z(()=>{var H,h;return((h=(H=c.overview)==null?void 0:H.total)==null?void 0:h.inputTokens)||0}),E=Z(()=>{var H,h;return((h=(H=c.overview)==null?void 0:H.total)==null?void 0:h.outputTokens)||0}),R=H=>{const h=Number(H||0);return Number.isNaN(h)?"$0.000000":h>=1?`$${h.toFixed(2)}`:h>=.01?`$${h.toFixed(3)}`:`$${h.toFixed(6)}`},y=H=>Math.round((Number(H)||0)*100)/100,p=H=>{if(!H)return"-";const h=new Date(H);if(Number.isNaN(h.getTime())){const G=H.split("-");return G.length===3?`${G[1]}-${G[2]}`:H}const X=String(h.getMonth()+1).padStart(2,"0"),C=String(h.getDate()).padStart(2,"0");return`${X}-${C}`},D=H=>{if(!H)return"暂无";const h=new Date(H);return Number.isNaN(h.getTime())?H:`${h.getFullYear()}-${String(h.getMonth()+1).padStart(2,"0")}-${String(h.getDate()).padStart(2,"0")} ${String(h.getHours()).padStart(2,"0")}:${String(h.getMinutes()).padStart(2,"0")}`},de=(H,h)=>{if(!H)return 0;const X=c.history.find(C=>C.date===H);return X&&X[h]||0},le=Z(()=>{var H,h;return c.generatedAt||((H=c.summary)==null?void 0:H.generatedAt)||((h=c.summary)==null?void 0:h.generated_at)||""}),ae=Z(()=>{var H,h,X,C,G,K,Ce,ze;return[{key:"totalCost",label:"30天总费用",value:((H=c.summary)==null?void 0:H.totalCostFormatted)||"$0.000000",subtitle:"累计成本",icon:"fa-file-invoice-dollar",iconClass:"text-emerald-500"},{key:"totalRequests",label:"30天总请求",value:Je(((h=c.summary)==null?void 0:h.totalRequests)||0),subtitle:"调用次数",icon:"fa-paper-plane",iconClass:"text-blue-500"},{key:"avgCost",label:"日均费用",value:((X=c.summary)==null?void 0:X.avgDailyCostFormatted)||R(((C=c.summary)==null?void 0:C.avgDailyCost)||0),subtitle:(G=c.summary)!=null&&G.actualDaysUsed&&((K=c.summary)==null?void 0:K.actualDaysUsed)<((Ce=c.summary)==null?void 0:Ce.days)?`基于 ${c.summary.actualDaysUsed} 天实际使用`:"平均每日成本",icon:"fa-wave-square",iconClass:"text-purple-500"},{key:"avgRequests",label:"日均请求",value:Je(y(((ze=c.summary)==null?void 0:ze.avgDailyRequests)||0)),subtitle:"平均每日调用",icon:"fa-chart-line",iconClass:"text-orange-500"}]}),oe=async()=>{if(await ar(),!c.show||!k.value)return;if(P&&P.destroy(),!c.history||c.history.length===0){P=null;return}const H=c.history.map(C=>C.label),h=c.history.map(C=>C.cost||0),X=c.history.map(C=>C.requests||0);P=new Xs(k.value,{type:"line",data:{labels:H,datasets:[{label:"费用 (USD)",data:h,borderColor:se.value.cost,backgroundColor:se.value.costFill,tension:.35,fill:!0,yAxisID:"y"},{label:"请求次数",data:X,borderColor:se.value.requests,backgroundColor:"transparent",tension:.35,yAxisID:"y1"}]},options:{responsive:!0,maintainAspectRatio:!1,interaction:{mode:"index",intersect:!1},plugins:{legend:{labels:{color:se.value.text}},tooltip:{callbacks:{label(C){return C.dataset.label==="费用 (USD)"?`${C.dataset.label}: ${R(C.parsed.y)}`:`${C.dataset.label}: ${Je(C.parsed.y)} 次`}}}},scales:{x:{ticks:{color:se.value.text},grid:{color:se.value.grid}},y:{position:"left",ticks:{color:se.value.text,callback:C=>R(C)},grid:{color:se.value.grid}},y1:{position:"right",ticks:{color:se.value.text,callback:C=>Je(C)},grid:{drawOnChartArea:!1}}}}})},he=()=>{P&&(P.destroy(),P=null)},W=()=>{he(),z("close")},Q=()=>{var H;(H=c.account)!=null&&H.id&&T.push({path:`/accounts/${c.account.id}/usage-records`,query:{platform:c.account.platform||c.account.accountType}})};return ve(()=>c.show,H=>{H&&!c.loading?oe():H||he()}),ve(()=>c.loading,H=>{!H&&c.show&&oe()}),ve(()=>c.history,()=>{c.show&&!c.loading&&oe()},{deep:!0}),ve(_,()=>{c.show&&!c.loading&&oe()}),Ha(()=>{he()}),(H,h)=>{var X,C,G,K,Ce,ze,Ke,Fe,Qe,xe,g,a,U,re,ne,Re,Oe,st,nt,at,Dt,Pt,jt,I,Tt,gt,ht,ct,Vt,wt,B,q,Ee,We,ut,Nt,qt,$t,zt,Lt,It;return o(),Xe(Mt,{to:"body"},[F.show?(o(),n("div",Dy,[e("div",{class:"absolute inset-0",onClick:W}),e("div",Py,[e("div",jy,[e("div",Vy,[h[2]||(h[2]=e("div",{class:"flex h-12 w-12 flex-shrink-0 items-center justify-center rounded-xl bg-gradient-to-br from-blue-500 to-indigo-500 text-white shadow-lg"},[e("i",{class:"fas fa-chart-area text-lg"})],-1)),e("div",zy,[e("div",Ly,[e("h3",Ry,u(((X=F.account)==null?void 0:X.name)||((C=F.account)==null?void 0:C.email)||"账号使用详情"),1),(G=F.account)!=null&&G.platform?(o(),n("span",Oy,[h[0]||(h[0]=e("i",{class:"fas fa-layer-group mr-1"},null,-1)),f(u(Y.value),1)])):m("",!0),(K=F.account)!=null&&K.accountType?(o(),n("span",Ey,[h[1]||(h[1]=e("i",{class:"fas fa-user-tag mr-1"},null,-1)),f(u(M.value),1)])):m("",!0)]),e("p",Ny,[f(" 近 "+u(((Ce=F.summary)==null?void 0:Ce.days)||30)+" 天内的费用与请求趋势 ",1),(ze=F.summary)!=null&&ze.actualDaysUsed&&((Ke=F.summary)==null?void 0:Ke.actualDaysUsed)<((Fe=F.summary)==null?void 0:Fe.days)?(o(),n("span",qy," (日均基于实际使用 "+u(F.summary.actualDaysUsed)+" 天) ",1)):m("",!0)])])]),e("div",{class:"flex items-center gap-2"},[e("button",{class:"flex items-center gap-2 rounded-full bg-purple-100 px-3 py-2 text-xs font-semibold text-purple-700 transition hover:bg-purple-200 dark:bg-purple-500/10 dark:text-purple-200 dark:hover:bg-purple-500/20",onClick:Q},h[3]||(h[3]=[e("i",{class:"fas fa-clock"},null,-1),f(" 请求时间线 ",-1)])),e("button",{class:"flex h-10 w-10 items-center justify-center rounded-full bg-gray-100 text-gray-500 transition hover:bg-gray-200 hover:text-gray-700 dark:bg-gray-800 dark:text-gray-400 dark:hover:bg-gray-700 dark:hover:text-gray-200",onClick:W},h[4]||(h[4]=[e("i",{class:"fas fa-times"},null,-1)]))])]),e("div",Wy,[F.loading?(o(),n("div",By,h[5]||(h[5]=[e("div",{class:"loading-spinner h-12 w-12 border-4 border-blue-500"},null,-1)]))):(o(),n(ke,{key:1},[e("div",Gy,[(o(!0),n(ke,null,Ne(ae.value,it=>(o(),n("div",{key:it.key,class:"rounded-2xl border border-gray-100 bg-white/80 p-4 shadow-sm transition dark:border-gray-700 dark:bg-gray-900/70"},[e("div",Fy,[e("div",null,[e("p",Qy,u(it.label),1),e("p",Hy,u(it.value),1),e("p",Jy,u(it.subtitle),1)]),e("div",Yy,[e("i",{class:$(["fas",it.icon,it.iconClass])},null,2)])])]))),128))]),e("div",Zy,[e("div",Xy,[h[9]||(h[9]=e("div",{class:"flex items-center gap-2 text-sm font-semibold text-blue-700 dark:text-blue-300"},[e("i",{class:"fas fa-sun"}),f(" 今日概览 ")],-1)),e("div",em,[e("div",tm,[h[6]||(h[6]=e("span",null,"费用",-1)),e("span",am,u(((xe=(Qe=F.summary)==null?void 0:Qe.today)==null?void 0:xe.costFormatted)||"$0.000000"),1)]),e("div",rm,[h[7]||(h[7]=e("span",null,"请求",-1)),e("span",sm,u(Ye(Je)(((a=(g=F.summary)==null?void 0:g.today)==null?void 0:a.requests)||0)),1)]),e("div",lm,[h[8]||(h[8]=e("span",null,"Tokens",-1)),e("span",null,u(Ye(Je)(((re=(U=F.summary)==null?void 0:U.today)==null?void 0:re.tokens)||0)),1)])])]),e("div",om,[h[13]||(h[13]=e("div",{class:"flex items-center gap-2 text-sm font-semibold text-amber-700 dark:text-amber-300"},[e("i",{class:"fas fa-crown"}),f(" 最高费用日 ")],-1)),e("div",nm,[e("div",im,[h[10]||(h[10]=e("span",null,"日期",-1)),e("span",dm,u(p((Re=(ne=F.summary)==null?void 0:ne.highestCostDay)==null?void 0:Re.date)),1)]),e("div",um,[h[11]||(h[11]=e("span",null,"费用",-1)),e("span",pm,u(((st=(Oe=F.summary)==null?void 0:Oe.highestCostDay)==null?void 0:st.formattedCost)||"$0.000000"),1)]),e("div",gm,[h[12]||(h[12]=e("span",null,"请求",-1)),e("span",null,u(Ye(Je)(de((at=(nt=F.summary)==null?void 0:nt.highestCostDay)==null?void 0:at.date,"requests"))),1)])])]),e("div",cm,[h[17]||(h[17]=e("div",{class:"flex items-center gap-2 text-sm font-semibold text-emerald-700 dark:text-emerald-300"},[e("i",{class:"fas fa-chart-bar"}),f(" 最高请求日 ")],-1)),e("div",ym,[e("div",mm,[h[14]||(h[14]=e("span",null,"日期",-1)),e("span",xm,u(p((Pt=(Dt=F.summary)==null?void 0:Dt.highestRequestDay)==null?void 0:Pt.date)),1)]),e("div",fm,[h[15]||(h[15]=e("span",null,"请求",-1)),e("span",bm,u(Ye(Je)(((I=(jt=F.summary)==null?void 0:jt.highestRequestDay)==null?void 0:I.requests)||0)),1)]),e("div",vm,[h[16]||(h[16]=e("span",null,"费用",-1)),e("span",null,u(R(de((gt=(Tt=F.summary)==null?void 0:Tt.highestRequestDay)==null?void 0:gt.date,"cost"))),1)])])])]),e("div",km,[e("div",hm,[h[21]||(h[21]=e("h4",{class:"mb-3 flex items-center text-sm font-semibold text-gray-700 dark:text-gray-300"},[e("i",{class:"fas fa-database mr-2 text-indigo-500"}),f(" 累计 Token ")],-1)),e("div",wm,[e("div",$m,[h[18]||(h[18]=e("span",null,"30天总计",-1)),e("span",Am,u(Ye(Je)(ge.value)),1)]),e("div",Cm,[h[19]||(h[19]=e("span",null,"日均 Token",-1)),e("span",Tm,u(Ye(Je)(Math.round(((ht=F.summary)==null?void 0:ht.avgDailyTokens)||0))),1)]),e("div",Im,[h[20]||(h[20]=e("span",null,"输入 / 输出",-1)),e("span",null,u(Ye(Je)(N.value))+" / "+u(Ye(Je)(E.value)),1)])])]),e("div",Um,[h[25]||(h[25]=e("h4",{class:"mb-3 flex items-center text-sm font-semibold text-gray-700 dark:text-gray-300"},[e("i",{class:"fas fa-tachometer-alt mr-2 text-purple-500"}),f(" 平均速率 ")],-1)),e("div",_m,[e("div",Km,[h[22]||(h[22]=e("span",null,"RPM",-1)),e("span",Sm,u(((Vt=(ct=F.overview)==null?void 0:ct.averages)==null?void 0:Vt.rpm)??0),1)]),e("div",Mm,[h[23]||(h[23]=e("span",null,"TPM",-1)),e("span",Dm,u(((B=(wt=F.overview)==null?void 0:wt.averages)==null?void 0:B.tpm)??0),1)]),e("div",Pm,[h[24]||(h[24]=e("span",null,"日均请求 / Token",-1)),e("span",null,u(Ye(Je)(Math.round((((Ee=(q=F.overview)==null?void 0:q.averages)==null?void 0:Ee.dailyRequests)||0)*100)/100))+" / "+u(Ye(Je)(Math.round((((ut=(We=F.overview)==null?void 0:We.averages)==null?void 0:ut.dailyTokens)||0)*100)/100)),1)])])]),e("div",jm,[h[29]||(h[29]=e("h4",{class:"mb-3 flex items-center text-sm font-semibold text-gray-700 dark:text-gray-300"},[e("i",{class:"fas fa-layer-group mr-2 text-teal-500"}),f(" 最近统计 ")],-1)),e("div",Vm,[e("div",zm,[h[26]||(h[26]=e("span",null,"今日请求",-1)),e("span",Lm,u(Ye(Je)(((qt=(Nt=F.overview)==null?void 0:Nt.daily)==null?void 0:qt.requests)||0)),1)]),e("div",Rm,[h[27]||(h[27]=e("span",null,"今日 Token",-1)),e("span",Om,u(Ye(Je)(((zt=($t=F.overview)==null?void 0:$t.daily)==null?void 0:zt.allTokens)||0)),1)]),e("div",Em,[h[28]||(h[28]=e("span",null,"今日费用",-1)),e("span",null,u(R(((It=(Lt=F.overview)==null?void 0:Lt.daily)==null?void 0:It.cost)||0)),1)])])])]),e("div",Nm,[e("div",qm,[h[30]||(h[30]=e("h4",{class:"flex items-center text-sm font-semibold text-gray-700 dark:text-gray-300"},[e("i",{class:"fas fa-chart-line mr-2 text-blue-500"}),f(" 30天费用与请求趋势 ")],-1)),e("span",Wm," 最新更新时间:"+u(D(le.value)),1)]),e("div",Bm,[e("canvas",{ref_key:"chartCanvas",ref:k,class:"h-full w-full"},null,512)])])],64))])])])):m("",!0)])}}},Fm=sa(Gm,[["__scopeId","data-v-c29b5f70"]]),Qm={key:0,class:"modal fixed inset-0 z-50 flex items-center justify-center p-4"},Hm={class:"modal-content relative mx-auto w-full max-w-lg p-8"},Jm={class:"mb-6 flex items-center justify-between"},Ym={class:"flex items-center gap-3"},Zm={class:"text-sm text-gray-600 dark:text-gray-400"},Xm={class:"space-y-6"},ex={class:"rounded-lg border border-gray-200 bg-gradient-to-r from-gray-50 to-gray-100 p-4 dark:border-gray-600 dark:from-gray-700 dark:to-gray-800"},tx={class:"flex items-center justify-between"},ax={class:"text-sm font-semibold text-gray-800 dark:text-gray-200"},rx={class:"flex h-12 w-12 items-center justify-center rounded-lg bg-white shadow-sm dark:bg-gray-700"},sx={class:"mb-3 grid grid-cols-3 gap-2"},lx=["onClick"],ox={key:0,class:"animate-fadeIn"},nx=["min"],ix={key:1,class:"rounded-lg border border-blue-200 bg-gradient-to-r from-blue-50 to-indigo-50 p-4 dark:border-blue-700 dark:from-blue-900/20 dark:to-indigo-900/20"},dx={class:"flex items-center justify-between"},ux={class:"text-sm font-semibold text-blue-900 dark:text-blue-200"},px={class:"flex gap-3 pt-2"},gx=["disabled"],cx={key:0,class:"loading-spinner mr-2"},yx={key:1,class:"fas fa-save mr-2"},mx={__name:"AccountExpiryEditModal",props:{show:{type:Boolean,required:!0},account:{type:Object,required:!0}},emits:["close","save"],setup(F,{expose:_e,emit:c}){const z=F,A=c,_=v(!1),T=hr({expireDuration:"",customExpireDate:"",expiresAt:null}),k=[{value:"",label:"永不过期"},{value:"30d",label:"30 天"},{value:"90d",label:"90 天"},{value:"180d",label:"180 天"},{value:"365d",label:"1 年"},{value:"730d",label:"2 年"}],P=Z(()=>{const y=new Date;return y.setMinutes(y.getMinutes()+1),y.toISOString().slice(0,16)});ve(()=>z.show,y=>{y&&O()}),ve(()=>{var y;return(y=z.account)==null?void 0:y.id},y=>{y&&z.show&&O()});const O=()=>{_.value=!1,z.account.expiresAt?(T.expireDuration="custom",T.customExpireDate=new Date(z.account.expiresAt).toISOString().slice(0,16),T.expiresAt=z.account.expiresAt):(T.expireDuration="",T.customExpireDate="",T.expiresAt=null)},Y=y=>{if(T.expireDuration=y,!y){T.expiresAt=null;return}if(y==="custom")return;const p=new Date,D=y.match(/(\d+)([dhmy])/);if(D){const[,de,le]=D,ae=parseInt(de);switch(le){case"d":p.setDate(p.getDate()+ae);break;case"h":p.setHours(p.getHours()+ae);break;case"m":p.setMonth(p.getMonth()+ae);break;case"y":p.setFullYear(p.getFullYear()+ae);break}T.expiresAt=p.toISOString()}},M=()=>{if(T.customExpireDate)try{const[y,p]=T.customExpireDate.split("T"),[D,de,le]=y.split("-").map(Number),[ae,oe]=p.split(":").map(Number),he=new Date(D,de-1,le,ae,oe,0,0);if(isNaN(he.getTime())){console.error("Invalid date:",T.customExpireDate);return}T.expiresAt=he.toISOString()}catch(y){console.error("Failed to parse custom expire date:",y)}},se=y=>y?new Date(y).toLocaleString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}):"",ge=y=>y?new Date(y){if(!y)return null;const p=new Date,de=new Date(y)-p,le=Math.ceil(de/(1e3*60*60*24));return de<0?{text:"已过期",class:"text-red-600"}:le<=7?{text:`${le} 天后过期`,class:"text-orange-600"}:le<=30?{text:`${le} 天后过期`,class:"text-yellow-600"}:{text:`${Math.ceil(le/30)} 个月后过期`,class:"text-green-600"}},E=()=>{_.value=!0,A("save",{accountId:z.account.id,expiresAt:T.expiresAt})};return _e({resetSaving:()=>{_.value=!1}}),(y,p)=>(o(),Xe(Mt,{to:"body"},[F.show?(o(),n("div",Qm,[e("div",{class:"fixed inset-0 bg-gray-900 bg-opacity-50 backdrop-blur-sm",onClick:p[0]||(p[0]=D=>y.$emit("close"))}),e("div",Hm,[e("div",Jm,[e("div",Ym,[p[6]||(p[6]=e("div",{class:"flex h-10 w-10 items-center justify-center rounded-xl bg-gradient-to-br from-amber-500 to-orange-600"},[e("i",{class:"fas fa-clock text-white"})],-1)),e("div",null,[p[5]||(p[5]=e("h3",{class:"text-xl font-bold text-gray-900 dark:text-gray-100"},"修改到期时间",-1)),e("p",Zm,' 为 "'+u(F.account.name||"Account")+'" 设置新的到期时间 ',1)])]),e("button",{class:"text-gray-400 transition-colors hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300",onClick:p[1]||(p[1]=D=>y.$emit("close"))},p[7]||(p[7]=[e("i",{class:"fas fa-times text-xl"},null,-1)]))]),e("div",Xm,[e("div",ex,[e("div",tx,[e("div",null,[p[10]||(p[10]=e("p",{class:"mb-1 text-xs font-medium text-gray-600 dark:text-gray-400"},"当前状态",-1)),e("p",ax,[F.account.expiresAt?(o(),n(ke,{key:0},[f(u(se(F.account.expiresAt))+" ",1),N(F.account.expiresAt)?(o(),n("span",{key:0,class:$(["ml-2 text-xs font-normal",N(F.account.expiresAt).class])}," ("+u(N(F.account.expiresAt).text)+") ",3)):m("",!0)],64)):(o(),n(ke,{key:1},[p[8]||(p[8]=e("i",{class:"fas fa-infinity mr-1 text-gray-500"},null,-1)),p[9]||(p[9]=f(" 永不过期 ",-1))],64))])]),e("div",rx,[e("i",{class:$(["fas fa-hourglass-half text-lg",F.account.expiresAt&&ge(F.account.expiresAt)?"text-red-500":"text-gray-400"])},null,2)])])]),e("div",null,[p[12]||(p[12]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"选择新的期限",-1)),e("div",sx,[(o(),n(ke,null,Ne(k,D=>e("button",{key:D.value,class:$(["rounded-lg px-3 py-2 text-sm font-medium transition-all",T.expireDuration===D.value?"bg-blue-500 text-white shadow-md":"bg-gray-100 text-gray-700 hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600"]),onClick:de=>Y(D.value)},u(D.label),11,lx)),64)),e("button",{class:$(["rounded-lg px-3 py-2 text-sm font-medium transition-all",T.expireDuration==="custom"?"bg-blue-500 text-white shadow-md":"bg-gray-100 text-gray-700 hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600"]),onClick:p[2]||(p[2]=D=>Y("custom"))},p[11]||(p[11]=[e("i",{class:"fas fa-calendar-alt mr-1"},null,-1),f(" 自定义 ",-1)]),2)])]),T.expireDuration==="custom"?(o(),n("div",ox,[p[13]||(p[13]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"选择日期和时间",-1)),b(e("input",{"onUpdate:modelValue":p[3]||(p[3]=D=>T.customExpireDate=D),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",min:P.value,type:"datetime-local",onChange:M},null,40,nx),[[j,T.customExpireDate]]),p[14]||(p[14]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"}," 选择一个未来的日期和时间作为到期时间 ",-1))])):m("",!0),T.expiresAt!==F.account.expiresAt?(o(),n("div",ix,[e("div",dx,[e("div",null,[p[17]||(p[17]=e("p",{class:"mb-1 text-xs font-medium text-blue-700 dark:text-blue-400"},[e("i",{class:"fas fa-arrow-right mr-1"}),f(" 新的到期时间 ")],-1)),e("p",ux,[T.expiresAt?(o(),n(ke,{key:0},[f(u(se(T.expiresAt))+" ",1),N(T.expiresAt)?(o(),n("span",{key:0,class:$(["ml-2 text-xs font-normal",N(T.expiresAt).class])}," ("+u(N(T.expiresAt).text)+") ",3)):m("",!0)],64)):(o(),n(ke,{key:1},[p[15]||(p[15]=e("i",{class:"fas fa-infinity mr-1"},null,-1)),p[16]||(p[16]=f(" 永不过期 ",-1))],64))])]),p[18]||(p[18]=e("div",{class:"flex h-12 w-12 items-center justify-center rounded-lg bg-white shadow-sm dark:bg-gray-700"},[e("i",{class:"fas fa-check text-lg text-green-500"})],-1))])])):m("",!0),e("div",px,[e("button",{class:"flex-1 rounded-lg bg-gray-100 px-4 py-2.5 font-semibold text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",onClick:p[4]||(p[4]=D=>y.$emit("close"))}," 取消 "),e("button",{class:"btn btn-primary flex-1 px-4 py-2.5 font-semibold",disabled:_.value||T.expiresAt===F.account.expiresAt,onClick:E},[_.value?(o(),n("div",cx)):(o(),n("i",yx)),f(" "+u(_.value?"保存中...":"保存更改"),1)],8,gx)])])])])):m("",!0)]))}},xx=sa(mx,[["__scopeId","data-v-f19e4a71"]]),fx={key:0,class:"fixed inset-0 z-[1050] flex items-center justify-center bg-gray-900/40 backdrop-blur-sm"},bx={class:"relative z-10 mx-3 flex w-full max-w-lg flex-col overflow-hidden rounded-2xl border border-gray-200/70 bg-white/95 shadow-2xl ring-1 ring-black/5 transition-all dark:border-gray-700/60 dark:bg-gray-900/95 dark:ring-white/10 sm:mx-4"},vx={class:"flex items-center justify-between border-b border-gray-100 bg-white/80 px-5 py-4 backdrop-blur dark:border-gray-800 dark:bg-gray-900/80"},kx={class:"flex items-center gap-3"},hx={class:"text-xs text-gray-500 dark:text-gray-400"},wx=["disabled"],$x={class:"px-5 py-4"},Ax={class:"mb-4 space-y-2"},Cx={class:"flex items-center justify-between text-sm"},Tx={key:0,class:"flex items-center justify-between text-sm"},Ix={class:"flex items-center justify-between text-sm"},Ux=["disabled"],_x=["value"],Kx={class:"flex items-center gap-3"},Sx={class:"text-xs text-gray-500 dark:text-gray-400"},Mx={key:0,class:"mb-4 overflow-hidden rounded-xl border border-gray-200 bg-gray-50 dark:border-gray-700 dark:bg-gray-800/50"},Dx={class:"flex items-center justify-between border-b border-gray-200 bg-gray-100 px-3 py-2 dark:border-gray-700 dark:bg-gray-800"},Px={key:0,class:"text-xs text-gray-500 dark:text-gray-500"},jx={class:"max-h-40 overflow-y-auto p-3"},Vx={key:0,class:"whitespace-pre-wrap text-sm text-gray-700 dark:text-gray-300"},zx={key:0,class:"inline-block h-4 w-1 animate-pulse bg-blue-500"},Lx={key:1,class:"flex items-center gap-2 text-sm text-gray-500 dark:text-gray-400"},Rx={key:2,class:"text-sm text-red-600 dark:text-red-400"},Ox={key:1,class:"mb-4 flex items-center justify-center gap-2 text-xs text-gray-500 dark:text-gray-400"},Ex={class:"flex items-center justify-end gap-3 border-t border-gray-100 bg-gray-50/80 px-5 py-3 dark:border-gray-800 dark:bg-gray-900/50"},Nx=["disabled"],qx=["disabled"],Wx={__name:"AccountTestModal",props:{show:{type:Boolean,default:!1},account:{type:Object,default:null}},emits:["close"],setup(F,{emit:_e}){const c=F,z=_e,A=v("idle"),_=v(""),T=v(""),k=v(0),P=v(null),O=v(null),Y=v(""),M=Z(()=>{if(!c.account)return[];const G=c.account.platform;return{claude:["claude-sonnet-4-5-20250929","claude-sonnet-4-20250514","claude-3-5-haiku-20241022"],"claude-console":["claude-sonnet-4-5-20250929","claude-sonnet-4-20250514","claude-3-5-haiku-20241022"],bedrock:["claude-sonnet-4-5-20250929","claude-sonnet-4-20250514","claude-3-5-haiku-20241022"],gemini:["gemini-2.5-flash","gemini-2.5-pro","gemini-2.0-flash"],"openai-responses":["gpt-4o-mini","gpt-4o","o3-mini"],"azure-openai":[c.account.deploymentName||"gpt-4o-mini"],droid:["claude-sonnet-4-20250514","claude-3-5-haiku-20241022"],ccr:["claude-sonnet-4-20250514","claude-3-5-haiku-20241022"]}[G]||[]}),se=Z(()=>{if(!c.account)return"";const G=c.account.platform;return{claude:"claude-sonnet-4-5-20250929","claude-console":"claude-sonnet-4-5-20250929",bedrock:"claude-sonnet-4-5-20250929",gemini:"gemini-2.5-flash","openai-responses":"gpt-4o-mini","azure-openai":c.account.deploymentName||"gpt-4o-mini",droid:"claude-sonnet-4-20250514",ccr:"claude-sonnet-4-20250514"}[G]||""});ve(()=>c.account,()=>{Y.value=se.value},{immediate:!0});const ge=Z(()=>c.account?["claude","claude-console"].includes(c.account.platform):!1),N=Z(()=>{if(!c.account)return"未知";const G=c.account.platform;return{claude:"Claude OAuth","claude-console":"Claude Console",bedrock:"AWS Bedrock",gemini:"Gemini","openai-responses":"OpenAI Responses","azure-openai":"Azure OpenAI",droid:"Droid",ccr:"CCR"}[G]||G}),E=Z(()=>{if(!c.account)return"fas fa-question";const G=c.account.platform;return{claude:"fas fa-brain","claude-console":"fas fa-brain",bedrock:"fab fa-aws",gemini:"fas fa-gem","openai-responses":"fas fa-code","azure-openai":"fab fa-microsoft",droid:"fas fa-robot",ccr:"fas fa-key"}[G]||"fas fa-robot"}),R=Z(()=>{if(!c.account)return"bg-gray-100 text-gray-700 dark:bg-gray-700 dark:text-gray-300";const G=c.account.platform;return{claude:"bg-indigo-100 text-indigo-700 dark:bg-indigo-500/20 dark:text-indigo-300","claude-console":"bg-purple-100 text-purple-700 dark:bg-purple-500/20 dark:text-purple-300",bedrock:"bg-orange-100 text-orange-700 dark:bg-orange-500/20 dark:text-orange-300",gemini:"bg-blue-100 text-blue-700 dark:bg-blue-500/20 dark:text-blue-300","openai-responses":"bg-green-100 text-green-700 dark:bg-green-500/20 dark:text-green-300","azure-openai":"bg-cyan-100 text-cyan-700 dark:bg-cyan-500/20 dark:text-cyan-300",droid:"bg-pink-100 text-pink-700 dark:bg-pink-500/20 dark:text-pink-300",ccr:"bg-amber-100 text-amber-700 dark:bg-amber-500/20 dark:text-amber-300"}[G]||"bg-gray-100 text-gray-700 dark:bg-gray-700 dark:text-gray-300"}),y=Z(()=>{if(!c.account||c.account.platform!=="bedrock")return"";const G=c.account.credentialType;return G==="access_key"?"Access Key":G==="bearer_token"?"Bearer Token":"Unknown"}),p=Z(()=>{if(!c.account||c.account.platform!=="bedrock")return"";const G=c.account.credentialType;return G==="access_key"?"fas fa-key":G==="bearer_token"?"fas fa-ticket":"fas fa-question"}),D=Z(()=>{if(!c.account||c.account.platform!=="bedrock")return"bg-gray-100 text-gray-700 dark:bg-gray-700 dark:text-gray-300";const G=c.account.credentialType;return G==="access_key"?"bg-blue-100 text-blue-700 dark:bg-blue-500/20 dark:text-blue-300":G==="bearer_token"?"bg-green-100 text-green-700 dark:bg-green-500/20 dark:text-green-300":"bg-gray-100 text-gray-700 dark:bg-gray-700 dark:text-gray-300"}),de=Z(()=>{switch(A.value){case"idle":return"准备就绪";case"testing":return"正在测试...";case"success":return"测试成功";case"error":return"测试失败";default:return"未知状态"}}),le=Z(()=>{const G=N.value||"API";switch(A.value){case"idle":return"点击下方按钮开始测试账户连通性";case"testing":return"正在发送测试请求并等待响应";case"success":return`账户可以正常访问 ${G}`;case"error":return T.value||`无法连接到 ${G}`;default:return""}}),ae=Z(()=>{switch(A.value){case"idle":return"border-gray-200 bg-gray-50 dark:border-gray-700 dark:bg-gray-800/50";case"testing":return"border-blue-200 bg-blue-50 dark:border-blue-500/30 dark:bg-blue-900/20";case"success":return"border-green-200 bg-green-50 dark:border-green-500/30 dark:bg-green-900/20";case"error":return"border-red-200 bg-red-50 dark:border-red-500/30 dark:bg-red-900/20";default:return"border-gray-200 bg-gray-50 dark:border-gray-700 dark:bg-gray-800/50"}}),oe=Z(()=>{switch(A.value){case"idle":return"bg-gray-200 dark:bg-gray-700";case"testing":return"bg-blue-100 dark:bg-blue-500/30";case"success":return"bg-green-100 dark:bg-green-500/30";case"error":return"bg-red-100 dark:bg-red-500/30";default:return"bg-gray-200 dark:bg-gray-700"}}),he=Z(()=>{switch(A.value){case"idle":return"fa-hourglass-start";case"testing":return"fa-spinner fa-spin";case"success":return"fa-check-circle";case"error":return"fa-exclamation-circle";default:return"fa-question-circle"}}),W=Z(()=>{switch(A.value){case"idle":return"text-gray-500 dark:text-gray-400";case"testing":return"text-blue-500 dark:text-blue-400";case"success":return"text-green-500 dark:text-green-400";case"error":return"text-red-500 dark:text-red-400";default:return"text-gray-500 dark:text-gray-400"}}),Q=Z(()=>{switch(A.value){case"idle":return"text-gray-700 dark:text-gray-300";case"testing":return"text-blue-700 dark:text-blue-300";case"success":return"text-green-700 dark:text-green-300";case"error":return"text-red-700 dark:text-red-300";default:return"text-gray-700 dark:text-gray-300"}});function H(){if(!c.account)return"";const G=c.account.platform;return{claude:`${kt.apiPrefix}/admin/claude-accounts/${c.account.id}/test`,"claude-console":`${kt.apiPrefix}/admin/claude-console-accounts/${c.account.id}/test`,bedrock:`${kt.apiPrefix}/admin/bedrock-accounts/${c.account.id}/test`,gemini:`${kt.apiPrefix}/admin/gemini-accounts/${c.account.id}/test`,"openai-responses":`${kt.apiPrefix}/admin/openai-responses-accounts/${c.account.id}/test`,"azure-openai":`${kt.apiPrefix}/admin/azure-openai-accounts/${c.account.id}/test`,droid:`${kt.apiPrefix}/admin/droid-accounts/${c.account.id}/test`,ccr:`${kt.apiPrefix}/admin/ccr-accounts/${c.account.id}/test`}[G]||""}async function h(){var K;if(!c.account)return;A.value="testing",_.value="",T.value="",k.value=0,P.value=Date.now(),O.value&&O.value.close();const G=H();if(!G){A.value="error",T.value="不支持的账户类型";return}try{const Ce=localStorage.getItem("authToken"),ze=await fetch(G,{method:"POST",headers:{"Content-Type":"application/json",Authorization:Ce?`Bearer ${Ce}`:""},body:JSON.stringify({model:Y.value})});if(!ze.ok){const Ke=await ze.json().catch(()=>({}));throw new Error(Ke.message||`HTTP ${ze.status}`)}if(ge.value){const Ke=ze.body.getReader(),Fe=new TextDecoder;let Qe=!1;for(;!Qe;){const{done:xe,value:g}=await Ke.read();if(xe){Qe=!0;continue}const U=Fe.decode(g).split(` -`);for(const re of U)if(re.startsWith("data: "))try{const ne=JSON.parse(re.substring(6));X(ne)}catch{}}}else{const Ke=await ze.json();k.value=Date.now()-P.value,Ke.success?(A.value="success",_.value=((K=Ke.data)==null?void 0:K.responseText)||"Test passed"):(A.value="error",T.value=Ke.message||"Test failed")}}catch(Ce){A.value="error",T.value=Ce.message||"连接失败",k.value=Date.now()-P.value}}function X(G){switch(G.type){case"test_start":break;case"content":_.value+=G.text;break;case"message_stop":break;case"test_complete":k.value=Date.now()-P.value,G.success?A.value="success":(A.value="error",T.value=G.error||"测试失败");break;case"error":A.value="error",T.value=G.error||"未知错误",k.value=Date.now()-P.value;break}}function C(){A.value!=="testing"&&(O.value&&(O.value.close(),O.value=null),A.value="idle",_.value="",T.value="",k.value=0,z("close"))}return ve(()=>c.show,G=>{var K;G&&(A.value="idle",_.value="",T.value="",k.value=0,((K=c.account)==null?void 0:K.platform)==="bedrock"?c.account.credentialType==="bearer_token"?Y.value="us.anthropic.claude-sonnet-4-5-20250929-v1:0":Y.value="us.anthropic.claude-3-5-haiku-20241022-v1:0":Y.value="claude-sonnet-4-5-20250929")}),Ha(()=>{O.value&&O.value.close()}),(G,K)=>{var Ce,ze;return o(),Xe(Mt,{to:"body"},[F.show?(o(),n("div",fx,[e("div",{class:"absolute inset-0",onClick:C}),e("div",bx,[e("div",vx,[e("div",kx,[e("div",{class:$(["flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-xl text-white shadow-lg",A.value==="success"?"bg-gradient-to-br from-green-500 to-emerald-500":A.value==="error"?"bg-gradient-to-br from-red-500 to-pink-500":"bg-gradient-to-br from-blue-500 to-indigo-500"])},[e("i",{class:$(["fas",A.value==="idle"?"fa-vial":A.value==="testing"?"fa-spinner fa-spin":A.value==="success"?"fa-check":"fa-times"])},null,2)],2),e("div",null,[K[1]||(K[1]=e("h3",{class:"text-lg font-semibold text-gray-900 dark:text-gray-100"},"账户连通性测试",-1)),e("p",hx,u(((Ce=F.account)==null?void 0:Ce.name)||"未知账户"),1)])]),e("button",{class:"flex h-9 w-9 items-center justify-center rounded-full bg-gray-100 text-gray-500 transition hover:bg-gray-200 hover:text-gray-700 dark:bg-gray-800 dark:text-gray-400 dark:hover:bg-gray-700 dark:hover:text-gray-200",disabled:A.value==="testing",onClick:C},K[2]||(K[2]=[e("i",{class:"fas fa-times text-sm"},null,-1)]),8,wx)]),e("div",$x,[e("div",Ax,[e("div",Cx,[K[3]||(K[3]=e("span",{class:"text-gray-500 dark:text-gray-400"},"平台类型",-1)),e("span",{class:$(["inline-flex items-center gap-1.5 rounded-full px-2.5 py-0.5 text-xs font-medium",R.value])},[e("i",{class:$(E.value)},null,2),f(" "+u(N.value),1)],2)]),((ze=c.account)==null?void 0:ze.platform)==="bedrock"?(o(),n("div",Tx,[K[4]||(K[4]=e("span",{class:"text-gray-500 dark:text-gray-400"},"账号类型",-1)),e("span",{class:$(["inline-flex items-center gap-1.5 rounded-full px-2.5 py-0.5 text-xs font-medium",D.value])},[e("i",{class:$(p.value)},null,2),f(" "+u(y.value),1)],2)])):m("",!0),e("div",Ix,[K[5]||(K[5]=e("span",{class:"text-gray-500 dark:text-gray-400"},"测试模型",-1)),b(e("select",{"onUpdate:modelValue":K[0]||(K[0]=Ke=>Y.value=Ke),class:"rounded-lg border border-gray-200 bg-white px-2 py-1 text-xs font-medium text-gray-700 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-300",disabled:A.value==="testing"},[(o(!0),n(ke,null,Ne(M.value,Ke=>(o(),n("option",{key:Ke,value:Ke},u(Ke),9,_x))),128))],8,Ux),[[wa,Y.value]])])]),e("div",{class:$(["mb-4 rounded-xl border p-4 transition-all duration-300",ae.value])},[e("div",Kx,[e("div",{class:$(["flex h-8 w-8 items-center justify-center rounded-lg",oe.value])},[e("i",{class:$(["fas text-sm",he.value,W.value])},null,2)],2),e("div",null,[e("p",{class:$(["font-medium",Q.value])},u(de.value),3),e("p",Sx,u(le.value),1)])])],2),A.value!=="idle"?(o(),n("div",Mx,[e("div",Dx,[K[6]||(K[6]=e("span",{class:"text-xs font-medium text-gray-600 dark:text-gray-400"},"AI 响应",-1)),_.value?(o(),n("span",Px,u(_.value.length)+" 字符 ",1)):m("",!0)]),e("div",jx,[_.value?(o(),n("p",Vx,[f(u(_.value)+" ",1),A.value==="testing"?(o(),n("span",zx)):m("",!0)])):A.value==="testing"?(o(),n("p",Lx,K[7]||(K[7]=[e("i",{class:"fas fa-circle-notch fa-spin"},null,-1),f(" 等待响应中... ",-1)]))):A.value==="error"&&T.value?(o(),n("p",Rx,u(T.value),1)):m("",!0)])])):m("",!0),k.value>0?(o(),n("div",Ox,[K[8]||(K[8]=e("i",{class:"fas fa-clock"},null,-1)),e("span",null,"耗时 "+u((k.value/1e3).toFixed(2))+" 秒",1)])):m("",!0)]),e("div",Ex,[e("button",{class:"rounded-lg border border-gray-200 bg-white px-4 py-2 text-sm font-medium text-gray-700 shadow-sm transition hover:bg-gray-50 hover:shadow dark:border-gray-700 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700",disabled:A.value==="testing",onClick:C}," 关闭 ",8,Nx),e("button",{class:$(["flex items-center gap-2 rounded-lg px-4 py-2 text-sm font-medium shadow-sm transition",A.value==="testing"?"cursor-not-allowed bg-gray-200 text-gray-400 dark:bg-gray-700 dark:text-gray-500":"bg-gradient-to-r from-blue-500 to-indigo-500 text-white hover:from-blue-600 hover:to-indigo-600 hover:shadow-md"]),disabled:A.value==="testing",onClick:h},[e("i",{class:$(["fas",A.value==="testing"?"fa-spinner fa-spin":"fa-play"])},null,2),f(" "+u(A.value==="testing"?"测试中...":A.value==="idle"?"开始测试":"重新测试"),1)],10,qx)])])])):m("",!0)])}}},Bx={key:0,class:"fixed inset-0 z-[1050] flex items-center justify-center bg-gray-900/40 backdrop-blur-sm"},Gx={class:"relative z-10 mx-3 flex w-full max-w-lg flex-col overflow-hidden rounded-2xl border border-gray-200/70 bg-white/95 shadow-2xl ring-1 ring-black/5 transition-all dark:border-gray-700/60 dark:bg-gray-900/95 dark:ring-white/10 sm:mx-4"},Fx={class:"flex items-center justify-between border-b border-gray-100 bg-white/80 px-5 py-4 backdrop-blur dark:border-gray-800 dark:bg-gray-900/80"},Qx={class:"flex items-center gap-3"},Hx={class:"text-xs text-gray-500 dark:text-gray-400"},Jx=["disabled"],Yx={class:"px-5 py-4"},Zx={key:0,class:"flex items-center justify-center py-8"},Xx={class:"mb-5 flex items-center justify-between"},ef={class:"mb-5"},tf=["disabled"],af={class:"mb-5"},rf={class:"flex flex-wrap gap-2"},sf=["disabled","onClick"],lf={class:"mb-5"},of=["disabled"],nf={class:"mt-2 flex flex-wrap gap-2"},df=["disabled","onClick"],uf={key:0,class:"mb-4"},pf={class:"max-h-40 space-y-2 overflow-y-auto rounded-lg border border-gray-200 bg-gray-50 p-3 dark:border-gray-700 dark:bg-gray-800/50"},gf={class:"flex items-center gap-2"},cf={class:"text-gray-600 dark:text-gray-400"},yf={key:0,class:"text-gray-500 dark:text-gray-500"},mf=["title"],xf={key:1,class:"mb-4 rounded-lg border border-gray-200 bg-gray-50 p-4 text-center text-sm text-gray-500 dark:border-gray-700 dark:bg-gray-800/50 dark:text-gray-400"},ff={class:"flex items-center justify-end gap-3 border-t border-gray-100 bg-gray-50/80 px-5 py-3 dark:border-gray-800 dark:bg-gray-900/50"},bf=["disabled"],vf=["disabled"],kf={__name:"AccountScheduledTestModal",props:{show:{type:Boolean,default:!1},account:{type:Object,default:null}},emits:["close","saved"],setup(F,{emit:_e}){const c=F,z=_e,A=v(!1),_=v(!1),T=v({enabled:!1,cronExpression:"0 8 * * *",model:"claude-sonnet-4-5-20250929"}),k=v([]),P=[{label:"每天 8:00",value:"0 8 * * *"},{label:"每天 12:00",value:"0 12 * * *"},{label:"每天 18:00",value:"0 18 * * *"},{label:"每6小时",value:"0 */6 * * *"},{label:"每12小时",value:"0 */12 * * *"},{label:"工作日 9:00",value:"0 9 * * 1-5"}],O=[{label:"Claude Sonnet 4.5",value:"claude-sonnet-4-5-20250929"},{label:"Claude Haiku 4.5",value:"claude-haiku-4-5-20251001"},{label:"Claude Opus 4.5",value:"claude-opus-4-5-20251101"}];function Y(N){return N?new Date(N).toLocaleString("zh-CN",{month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}):"未知"}async function M(){var N,E;if(c.account){A.value=!0;try{const R=localStorage.getItem("authToken"),y=c.account.platform;let p="";if(y==="claude")p=`${kt.apiPrefix}/admin/claude-accounts/${c.account.id}/test-config`;else{A.value=!1;return}const D=await fetch(p,{headers:{Authorization:R?`Bearer ${R}`:""}});if(D.ok){const ae=await D.json();ae.success&&((N=ae.data)!=null&&N.config)&&(T.value={enabled:ae.data.config.enabled||!1,cronExpression:ae.data.config.cronExpression||"0 8 * * *",model:ae.data.config.model||"claude-sonnet-4-5-20250929"})}const de=p.replace("/test-config","/test-history"),le=await fetch(de,{headers:{Authorization:R?`Bearer ${R}`:""}});if(le.ok){const ae=await le.json();ae.success&&((E=ae.data)!=null&&E.history)&&(k.value=ae.data.history)}}catch(R){V("加载配置失败: "+R.message,"error")}finally{A.value=!1}}}async function se(){if(c.account){_.value=!0;try{const N=localStorage.getItem("authToken"),E=c.account.platform;let R="";if(E==="claude")R=`${kt.apiPrefix}/admin/claude-accounts/${c.account.id}/test-config`;else{_.value=!1;return}const y=await fetch(R,{method:"PUT",headers:{"Content-Type":"application/json",Authorization:N?`Bearer ${N}`:""},body:JSON.stringify({enabled:T.value.enabled,cronExpression:T.value.cronExpression,model:T.value.model})});if(y.ok)V("配置已保存","success"),z("saved"),ge();else{const p=await y.json().catch(()=>({}));V(p.message||"保存失败","error")}}catch(N){V("保存失败: "+N.message,"error")}finally{_.value=!1}}}function ge(){_.value||z("close")}return ve(()=>c.show,N=>{N&&(T.value={enabled:!1,cronExpression:"0 8 * * *",model:"claude-sonnet-4-5-20250929"},k.value=[],M())}),(N,E)=>{var R;return o(),Xe(Mt,{to:"body"},[F.show?(o(),n("div",Bx,[e("div",{class:"absolute inset-0",onClick:ge}),e("div",Gx,[e("div",Fx,[e("div",Qx,[E[4]||(E[4]=e("div",{class:"flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-xl bg-gradient-to-br from-amber-500 to-orange-500 text-white shadow-lg"},[e("i",{class:"fas fa-clock"})],-1)),e("div",null,[E[3]||(E[3]=e("h3",{class:"text-lg font-semibold text-gray-900 dark:text-gray-100"},"定时测试配置",-1)),e("p",Hx,u(((R=F.account)==null?void 0:R.name)||"未知账户"),1)])]),e("button",{class:"flex h-9 w-9 items-center justify-center rounded-full bg-gray-100 text-gray-500 transition hover:bg-gray-200 hover:text-gray-700 dark:bg-gray-800 dark:text-gray-400 dark:hover:bg-gray-700 dark:hover:text-gray-200",disabled:_.value,onClick:ge},E[5]||(E[5]=[e("i",{class:"fas fa-times text-sm"},null,-1)]),8,Jx)]),e("div",Yx,[A.value?(o(),n("div",Zx,E[6]||(E[6]=[e("i",{class:"fas fa-spinner fa-spin mr-2 text-blue-500"},null,-1),e("span",{class:"text-gray-500 dark:text-gray-400"},"加载配置中...",-1)]))):(o(),n(ke,{key:1},[e("div",Xx,[E[7]||(E[7]=e("div",null,[e("p",{class:"font-medium text-gray-700 dark:text-gray-300"},"启用定时测试"),e("p",{class:"text-xs text-gray-500 dark:text-gray-400"},"按计划自动测试账户连通性")],-1)),e("button",{class:$(["relative h-6 w-11 rounded-full transition-colors duration-200",T.value.enabled?"bg-green-500":"bg-gray-300 dark:bg-gray-600"]),onClick:E[0]||(E[0]=y=>T.value.enabled=!T.value.enabled)},[e("span",{class:$(["absolute top-0.5 h-5 w-5 rounded-full bg-white shadow-md transition-transform duration-200",T.value.enabled?"left-5":"left-0.5"])},null,2)],2)]),e("div",ef,[E[8]||(E[8]=e("label",{class:"mb-2 block text-sm font-medium text-gray-700 dark:text-gray-300"}," Cron 表达式 ",-1)),b(e("input",{"onUpdate:modelValue":E[1]||(E[1]=y=>T.value.cronExpression=y),class:"w-full rounded-lg border border-gray-200 bg-white px-3 py-2 text-sm text-gray-700 placeholder-gray-400 transition focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-700 dark:bg-gray-800 dark:text-gray-300 dark:placeholder-gray-500",disabled:!T.value.enabled,placeholder:"0 8 * * *",type:"text"},null,8,tf),[[j,T.value.cronExpression]]),E[9]||(E[9]=e("p",{class:"mt-1.5 text-xs text-gray-500 dark:text-gray-400"},' 格式: 分 时 日 月 周 (例: "0 8 * * *" = 每天8:00) ',-1))]),e("div",af,[E[10]||(E[10]=e("label",{class:"mb-2 block text-sm font-medium text-gray-700 dark:text-gray-300"}," 快捷设置 ",-1)),e("div",rf,[(o(),n(ke,null,Ne(P,y=>e("button",{key:y.value,class:$(["rounded-lg border px-3 py-1.5 text-xs font-medium transition",T.value.cronExpression===y.value?"border-blue-500 bg-blue-50 text-blue-700 dark:border-blue-400 dark:bg-blue-900/30 dark:text-blue-300":"border-gray-200 bg-gray-50 text-gray-600 hover:bg-gray-100 dark:border-gray-700 dark:bg-gray-800 dark:text-gray-400 dark:hover:bg-gray-700",!T.value.enabled&&"cursor-not-allowed opacity-50"]),disabled:!T.value.enabled,onClick:p=>T.value.cronExpression=y.value},u(y.label),11,sf)),64))])]),e("div",lf,[E[11]||(E[11]=e("label",{class:"mb-2 block text-sm font-medium text-gray-700 dark:text-gray-300"}," 测试模型 ",-1)),b(e("input",{"onUpdate:modelValue":E[2]||(E[2]=y=>T.value.model=y),class:"w-full rounded-lg border border-gray-200 bg-white px-3 py-2 text-sm text-gray-700 placeholder-gray-400 transition focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-700 dark:bg-gray-800 dark:text-gray-300 dark:placeholder-gray-500",disabled:!T.value.enabled,placeholder:"claude-sonnet-4-5-20250929",type:"text"},null,8,of),[[j,T.value.model]]),e("div",nf,[(o(),n(ke,null,Ne(O,y=>e("button",{key:y.value,class:$(["rounded-lg border px-3 py-1.5 text-xs font-medium transition",T.value.model===y.value?"border-blue-500 bg-blue-50 text-blue-700 dark:border-blue-400 dark:bg-blue-900/30 dark:text-blue-300":"border-gray-200 bg-gray-50 text-gray-600 hover:bg-gray-100 dark:border-gray-700 dark:bg-gray-800 dark:text-gray-400 dark:hover:bg-gray-700",!T.value.enabled&&"cursor-not-allowed opacity-50"]),disabled:!T.value.enabled,onClick:p=>T.value.model=y.value},u(y.label),11,df)),64))])]),k.value.length>0?(o(),n("div",uf,[E[12]||(E[12]=e("label",{class:"mb-2 block text-sm font-medium text-gray-700 dark:text-gray-300"}," 最近测试记录 ",-1)),e("div",pf,[(o(!0),n(ke,null,Ne(k.value,(y,p)=>(o(),n("div",{key:p,class:"flex items-center justify-between text-xs"},[e("div",gf,[e("i",{class:$(["fas",y.success?"fa-check-circle text-green-500":"fa-times-circle text-red-500"])},null,2),e("span",cf,u(Y(y.timestamp)),1)]),y.latencyMs?(o(),n("span",yf,u(y.latencyMs)+"ms ",1)):y.error?(o(),n("span",{key:1,class:"max-w-[150px] truncate text-red-500",title:y.error},u(y.error),9,mf)):m("",!0)]))),128))])])):(o(),n("div",xf,E[13]||(E[13]=[e("i",{class:"fas fa-history mb-2 text-2xl text-gray-300 dark:text-gray-600"},null,-1),e("p",null,"暂无测试记录",-1)])))],64))]),e("div",ff,[e("button",{class:"rounded-lg border border-gray-200 bg-white px-4 py-2 text-sm font-medium text-gray-700 shadow-sm transition hover:bg-gray-50 hover:shadow dark:border-gray-700 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700",disabled:_.value,onClick:ge}," 取消 ",8,bf),e("button",{class:$(["flex items-center gap-2 rounded-lg px-4 py-2 text-sm font-medium shadow-sm transition",_.value?"cursor-not-allowed bg-gray-200 text-gray-400 dark:bg-gray-700 dark:text-gray-500":"bg-gradient-to-r from-blue-500 to-indigo-500 text-white hover:from-blue-600 hover:to-indigo-600 hover:shadow-md"]),disabled:_.value||A.value,onClick:se},[e("i",{class:$(["fas",_.value?"fa-spinner fa-spin":"fa-save"])},null,2),f(" "+u(_.value?"保存中...":"保存配置"),1)],10,vf)])])])):m("",!0)])}}},hf={class:"min-w-[200px] space-y-1"},wf={key:0,class:"flex items-center gap-2"},$f={key:1,class:"flex items-center gap-2"},Af={class:"text-xs text-red-600 dark:text-red-400"},Cf=["disabled"],Tf={key:2,class:"space-y-1"},If={key:0,class:"text-xs text-red-500"},Uf={class:"flex items-center justify-between gap-2"},_f={class:"flex items-center gap-2"},Kf={class:"text-sm font-semibold text-gray-900 dark:text-gray-100"},Sf=["disabled","title"],Mf={key:1,class:"space-y-2"},Df={class:"flex items-center justify-between text-xs text-gray-600 dark:text-gray-400"},Pf={class:"space-y-1"},jf=["title"],Vf={class:"flex w-[94px] flex-col gap-0.5"},zf={class:"h-1.5 w-full rounded-full bg-gray-200 dark:bg-gray-600"},Lf={class:"flex items-center justify-between text-[11px] text-gray-500 dark:text-gray-300"},Rf={key:0,class:"text-gray-400 dark:text-gray-400"},Of={key:2,class:"space-y-1"},Ef={class:"flex items-center justify-between text-xs text-gray-600 dark:text-gray-400"},Nf={class:"h-1.5 w-full rounded-full bg-gray-200 dark:bg-gray-700"},qf={class:"flex items-center justify-between text-xs"},Wf={class:"text-gray-500 dark:text-gray-400"},Bf={key:0,class:"text-gray-400 dark:text-gray-500"},Gf={key:3,class:"flex items-center gap-2"},Ff={key:4,class:"text-xs text-gray-400 dark:text-gray-500"},Qf={key:3,class:"text-xs text-gray-400 dark:text-gray-500"},fr={__name:"BalanceDisplay",props:{accountId:{type:String,required:!0},platform:{type:String,required:!0},initialBalance:{type:Object,default:null},hideRefresh:{type:Boolean,default:!1},autoLoad:{type:Boolean,default:!0},queryMode:{type:String,default:"local"}},emits:["refreshed","error"],setup(F,{expose:_e,emit:c}){const z=F,A=c,_=v(z.initialBalance),T=v(!1),k=v(!1),P=v(null),O=Z(()=>{var Q;const W=(Q=_.value)==null?void 0:Q.source;return{"bg-blue-100 text-blue-700 dark:bg-blue-900/40 dark:text-blue-300":W==="api","bg-gray-100 text-gray-600 dark:bg-gray-700/60 dark:text-gray-300":W==="cache","bg-yellow-100 text-yellow-700 dark:bg-yellow-900/40 dark:text-yellow-300":W==="local"}}),Y=Z(()=>{var Q;const W=(Q=_.value)==null?void 0:Q.source;return{api:"API",cache:"缓存",local:"本地"}[W]||"未知"}),M=Z(()=>{var Q;const W=(Q=_.value)==null?void 0:Q.quota;return!W||W.unlimited||typeof W.percentage!="number"||!Number.isFinite(W.percentage)?null:{used:W.used??0,remaining:W.remaining??0,percentage:W.percentage,resetAt:W.resetAt||null}}),se=Z(()=>{var W,Q;return((Q=(W=_.value)==null?void 0:W.quota)==null?void 0:Q.type)==="antigravity"}),ge=Z(()=>{var C,G;if(!se.value)return[];const W=(G=(C=_.value)==null?void 0:C.quota)==null?void 0:G.buckets,Q=Array.isArray(W)?W:[],H=new Map(Q.map(K=>[K==null?void 0:K.category,K])),h=["Gemini Pro","Claude","Gemini Flash","Gemini Image"],X={"Gemini Pro":{dotClass:"bg-blue-500",barClass:"bg-blue-500 dark:bg-blue-400"},Claude:{dotClass:"bg-purple-500",barClass:"bg-purple-500 dark:bg-purple-400"},"Gemini Flash":{dotClass:"bg-cyan-500",barClass:"bg-cyan-500 dark:bg-cyan-400"},"Gemini Image":{dotClass:"bg-emerald-500",barClass:"bg-emerald-500 dark:bg-emerald-400"}};return h.map(K=>{var Fe,Qe;const Ce=H.get(K)||null,ze=Ce==null?void 0:Ce.remaining,Ke=Number.isFinite(Number(ze))?Math.max(0,Math.min(100,Number(ze))):null;return{category:K,remainingPercent:Ke,remainingText:Ke===null?"—":`${Math.round(Ke)}%`,resetAt:(Ce==null?void 0:Ce.resetAt)||null,dotClass:((Fe=X[K])==null?void 0:Fe.dotClass)||"bg-gray-400",barClass:((Qe=X[K])==null?void 0:Qe.barClass)||"bg-gray-400"}})}),N=Z(()=>{var Q;const W=((Q=M.value)==null?void 0:Q.percentage)||0;return W>=90?"bg-red-500 dark:bg-red-600":W>=70?"bg-yellow-500 dark:bg-yellow-600":"bg-green-500 dark:bg-green-600"}),E=Z(()=>{if(z.queryMode==="api"||z.queryMode==="auto")return!0;const W=_.value;return!W||W.scriptEnabled===!1?!1:!!W.scriptConfigured}),R=Z(()=>{var W;return k.value?"刷新中...":E.value?se.value?"刷新配额(调用 Antigravity API)":"刷新余额(调用脚本配置的余额 API)":((W=_.value)==null?void 0:W.scriptEnabled)===!1?"余额脚本功能已禁用":"请先配置余额脚本"}),y=Z(()=>{var Q,H,h,X;if((H=(Q=_.value)==null?void 0:Q.balance)!=null&&H.formattedAmount)return _.value.balance.formattedAmount;const W=Number(((X=(h=_.value)==null?void 0:h.statistics)==null?void 0:X.dailyCost)||0);return`今日成本 ${ae(W)}`}),p=async()=>{if(!z.autoLoad||!z.accountId||!z.platform)return;T.value=!0,P.value=null;const W={platform:z.platform,queryApi:z.queryMode==="api"?!0:z.queryMode==="auto"?"auto":!1},Q=await Mr(z.accountId,W);Q!=null&&Q.success?_.value=Q.data:P.value=(Q==null?void 0:Q.error)||"加载失败",T.value=!1},D=async()=>{if(!z.accountId||!z.platform||k.value||!E.value)return;k.value=!0,P.value=null;const W=await Dr(z.accountId,{platform:z.platform});W!=null&&W.success?(_.value=W.data,A("refreshed",W.data)):P.value=(W==null?void 0:W.error)||"刷新失败",k.value=!1},de=async()=>{await p()},le=W=>{if(W===1/0)return"∞";const Q=Number(W);return Number.isFinite(Q)?se.value?`${Math.round(Q)}%`:Je(Q):"N/A"},ae=W=>{const Q=Number(W);return Number.isFinite(Q)?Q>=1?`$${Q.toFixed(2)}`:Q>=.01?`$${Q.toFixed(3)}`:`$${Q.toFixed(6)}`:"$0.00"},oe=W=>{const Q=new Date(W),H=new Date,h=Q.getTime()-H.getTime();if(!Number.isFinite(h))return"未知";if(h<0)return"已过期";const X=Math.floor(h/(1e3*60)),C=Math.floor(X/60),G=X%60;return C>=24?`${Math.floor(C/24)}天后`:`${C}小时${G}分钟`},he=W=>{const Q=new Date(W);return Number.isNaN(Q.getTime())?"未知":Q.toLocaleTimeString("zh-CN",{hour:"2-digit",minute:"2-digit"})};return ve(()=>z.initialBalance,W=>{W&&(_.value=W)}),ra(()=>{z.initialBalance||p()}),_e({refresh:D,reload:de}),(W,Q)=>{var H;return o(),n("div",hf,[T.value?(o(),n("div",wf,Q[0]||(Q[0]=[e("i",{class:"fas fa-spinner fa-spin text-gray-400 dark:text-gray-500"},null,-1),e("span",{class:"text-xs text-gray-500 dark:text-gray-400"},"加载中...",-1)]))):P.value?(o(),n("div",$f,[Q[1]||(Q[1]=e("i",{class:"fas fa-exclamation-circle text-red-500"},null,-1)),e("span",Af,u(P.value),1),e("button",{class:"text-xs text-blue-500 hover:text-blue-600 dark:text-blue-400",disabled:k.value,onClick:de}," 重试 ",8,Cf)])):_.value?(o(),n("div",Tf,[_.value.status==="error"&&_.value.error?(o(),n("div",If,u(_.value.error),1)):m("",!0),e("div",Uf,[e("div",_f,[e("i",{class:$(["fas",_.value.balance?"fa-wallet text-green-600 dark:text-green-400":"fa-chart-line text-gray-500 dark:text-gray-400"])},null,2),e("span",Kf,u(y.value),1),e("span",{class:$(["rounded px-1.5 py-0.5 text-xs",O.value])},u(Y.value),3)]),F.hideRefresh?m("",!0):(o(),n("button",{key:0,class:"text-xs text-gray-500 hover:text-blue-600 disabled:cursor-not-allowed disabled:opacity-40 dark:text-gray-400 dark:hover:text-blue-400",disabled:k.value||!E.value,title:R.value,onClick:D},[e("i",{class:$(["fas fa-sync-alt",{"fa-spin":k.value}])},null,2)],8,Sf))]),M.value&&se.value?(o(),n("div",Mf,[e("div",Df,[Q[2]||(Q[2]=e("span",null,"剩余",-1)),e("span",null,u(le(M.value.remaining)),1)]),e("div",Pf,[(o(!0),n(ke,null,Ne(ge.value,h=>(o(),n("div",{key:h.category,class:"flex items-center gap-2 rounded-md bg-gray-50 px-2 py-1.5 dark:bg-gray-700/60"},[e("span",{class:$(["h-2 w-2 shrink-0 rounded-full",h.dotClass])},null,2),e("span",{class:"min-w-0 flex-1 truncate text-xs font-medium text-gray-800 dark:text-gray-100",title:h.category},u(h.category),9,jf),e("div",Vf,[e("div",zf,[e("div",{class:$(["h-1.5 rounded-full transition-all",h.barClass]),style:Ze({width:`${h.remainingPercent??0}%`})},null,6)]),e("div",Lf,[e("span",null,u(h.remainingText),1),h.resetAt?(o(),n("span",Rf,u(oe(h.resetAt)),1)):m("",!0)])])]))),128))])])):M.value?(o(),n("div",Of,[e("div",Ef,[e("span",null,"已用: "+u(le(M.value.used)),1),e("span",null,"剩余: "+u(le(M.value.remaining)),1)]),e("div",Nf,[e("div",{class:$(["h-1.5 rounded-full transition-all",N.value]),style:Ze({width:`${Math.min(100,M.value.percentage)}%`})},null,6)]),e("div",qf,[e("span",Wf,u(M.value.percentage.toFixed(1))+"% 已使用 ",1),M.value.resetAt?(o(),n("span",Bf," 重置: "+u(oe(M.value.resetAt)),1)):m("",!0)])])):(H=_.value.quota)!=null&&H.unlimited?(o(),n("div",Gf,Q[3]||(Q[3]=[e("i",{class:"fas fa-infinity text-blue-500 dark:text-blue-400"},null,-1),e("span",{class:"text-xs text-gray-600 dark:text-gray-400"},"无限制",-1)]))):m("",!0),_.value.cacheExpiresAt&&_.value.source==="cache"?(o(),n("div",Ff," 缓存至: "+u(he(_.value.cacheExpiresAt)),1)):m("",!0)])):(o(),n("div",Qf,"暂无余额数据"))])}}},Hf={class:"space-y-4"},Jf={class:"grid gap-3 md:grid-cols-2"},Yf={class:"space-y-2"},Zf={class:"space-y-2"},Xf={class:"space-y-2"},eb={class:"space-y-2"},tb={class:"space-y-2"},ab={class:"space-y-2"},rb={key:0,class:"rounded-lg bg-gray-50 p-3 text-sm dark:bg-gray-800/60"},sb={class:"flex items-center justify-between"},lb={class:"mt-2 text-xs text-gray-600 dark:text-gray-300"},ob={key:0},nb={key:1,class:"text-red-500"},ib={class:"text-xs text-gray-500 dark:text-gray-400"},db={class:"mt-1 whitespace-pre-wrap break-all"},ub={class:"text-xs text-gray-500 dark:text-gray-400"},pb={class:"mt-1 whitespace-pre-wrap break-all"},gb={class:"flex items-center gap-2"},br=`({ - request: { - url: "{{baseUrl}}/api/user/self", - method: "GET", - headers: { - "Content-Type": "application/json", - "Authorization": "Bearer {{apiKey}}", - "New-Api-User": "{{extra}}" - } - }, - extractor: function (response) { - if (response && response.success && response.data) { - const quota = response.data.quota || 0; - const used = response.data.used_quota || 0; - return { - planName: response.data.group || "默认套餐", - remaining: quota / 500000, - used: used / 500000, - total: (quota + used) / 500000, - unit: "USD" - }; - } - return { - isValid: false, - invalidMessage: (response && response.message) || "查询失败" - }; - } -})`,cb={__name:"AccountBalanceScriptModal",props:{show:{type:Boolean,default:!1},account:{type:Object,default:()=>({})}},emits:["close","saved"],setup(F,{emit:_e}){const c=F,z=_e,A=v(!1),_=v(!1),T=v(null),k=hr({baseUrl:"",apiKey:"",token:"",extra:"",timeoutSeconds:10,autoIntervalMinutes:0,scriptBody:""}),P=()=>({baseUrl:"",apiKey:"",token:"",extra:"",timeoutSeconds:10,autoIntervalMinutes:0,scriptBody:br}),O=()=>z("close"),Y=()=>{Object.assign(k,P()),T.value=null,A.value=!1,_.value=!1},M=async()=>{var p,D;if(!((p=c.account)!=null&&p.id)||!((D=c.account)!=null&&D.platform))return;const y=await Ns(c.account.id,c.account.platform);y!=null&&y.success&&y.data&&Object.assign(k,y.data)},se=async()=>{var p,D;if(!((p=c.account)!=null&&p.id)||!((D=c.account)!=null&&D.platform))return;A.value=!0;const y=await Es(c.account.id,c.account.platform,{...k});y!=null&&y.success?(V("已保存","success"),z("saved")):V((y==null?void 0:y.message)||"保存失败","error"),A.value=!1},ge=async()=>{var p,D;if(!((p=c.account)!=null&&p.id)||!((D=c.account)!=null&&D.platform))return;_.value=!0,T.value=null;const y=await Os(c.account.id,c.account.platform,{...k});y!=null&&y.success?(T.value=y.data,V("测试完成","success")):V((y==null?void 0:y.error)||"测试失败","error"),_.value=!1},N=()=>{k.scriptBody=br},E=y=>y==null||Number.isNaN(Number(y))?"—":Number(y).toFixed(2),R=y=>{try{return JSON.stringify(y,null,2)}catch{return String(y)}};return ve(()=>c.show,y=>{y&&(Y(),M())}),(y,p)=>{var le;const D=qr,de=kr;return o(),Xe(de,{"append-to-body":!0,class:"balance-script-dialog","close-on-click-modal":!1,"destroy-on-close":!0,"model-value":F.show,title:`配置余额脚本 - ${((le=F.account)==null?void 0:le.name)||""}`,top:"5vh",width:"720px",onClose:O},{footer:ot(()=>[e("div",gb,[Ve(D,{loading:_.value,onClick:ge},{default:ot(()=>p[20]||(p[20]=[f("测试脚本",-1)])),_:1,__:[20]},8,["loading"]),Ve(D,{loading:A.value,type:"primary",onClick:se},{default:ot(()=>p[21]||(p[21]=[f("保存配置",-1)])),_:1,__:[21]},8,["loading"]),Ve(D,{onClick:O},{default:ot(()=>p[22]||(p[22]=[f("取消",-1)])),_:1,__:[22]})])]),default:ot(()=>{var ae,oe,he,W,Q,H;return[e("div",Hf,[e("div",Jf,[e("div",Yf,[p[7]||(p[7]=e("label",{class:"text-sm font-medium text-gray-700 dark:text-gray-200"},"API Key",-1)),b(e("input",{"onUpdate:modelValue":p[0]||(p[0]=h=>k.apiKey=h),class:"input-text",placeholder:"access token / key"},null,512),[[j,k.apiKey]])]),e("div",Zf,[p[8]||(p[8]=e("label",{class:"text-sm font-medium text-gray-700 dark:text-gray-200"},"请求地址(baseUrl)",-1)),b(e("input",{"onUpdate:modelValue":p[1]||(p[1]=h=>k.baseUrl=h),class:"input-text",placeholder:"https://api.example.com"},null,512),[[j,k.baseUrl]])]),e("div",Xf,[p[9]||(p[9]=e("label",{class:"text-sm font-medium text-gray-700 dark:text-gray-200"},"Token(可选)",-1)),b(e("input",{"onUpdate:modelValue":p[2]||(p[2]=h=>k.token=h),class:"input-text",placeholder:"Bearer token"},null,512),[[j,k.token]])]),e("div",eb,[p[10]||(p[10]=e("label",{class:"text-sm font-medium text-gray-700 dark:text-gray-200"},"额外参数 (extra / userId)",-1)),b(e("input",{"onUpdate:modelValue":p[3]||(p[3]=h=>k.extra=h),class:"input-text",placeholder:"用户ID等"},null,512),[[j,k.extra]])]),e("div",tb,[p[11]||(p[11]=e("label",{class:"text-sm font-medium text-gray-700 dark:text-gray-200"},"超时时间(秒)",-1)),b(e("input",{"onUpdate:modelValue":p[4]||(p[4]=h=>k.timeoutSeconds=h),class:"input-text",min:"1",type:"number"},null,512),[[j,k.timeoutSeconds,void 0,{number:!0}]])]),e("div",ab,[p[12]||(p[12]=e("label",{class:"text-sm font-medium text-gray-700 dark:text-gray-200"},"自动查询间隔(分钟)",-1)),b(e("input",{"onUpdate:modelValue":p[5]||(p[5]=h=>k.autoIntervalMinutes=h),class:"input-text",min:"0",type:"number"},null,512),[[j,k.autoIntervalMinutes,void 0,{number:!0}]]),p[13]||(p[13]=e("p",{class:"text-xs text-gray-500 dark:text-gray-400"},"0 表示仅手动刷新",-1))]),p[14]||(p[14]=e("div",{class:"text-xs text-gray-500 dark:text-gray-400 md:col-span-2"}," 可用变量:"+u("{")+u("{")+"baseUrl"+u("}")+u("}")+"、"+u("{")+u("{")+"apiKey"+u("}")+u("}")+"、"+u("{")+u("{")+"token"+u("}")+u("}")+"、"+u("{")+u("{")+"accountId"+u("}")+u("}")+"、"+u("{")+u("{")+"platform"+u("}")+u("}")+"、"+u("{")+u("{")+"extra"+u("}")+u("}"),-1))]),e("div",null,[e("div",{class:"mb-2 flex items-center justify-between"},[p[15]||(p[15]=e("div",{class:"text-sm font-semibold text-gray-800 dark:text-gray-100"},"提取器代码",-1)),e("button",{class:"rounded bg-gray-200 px-2 py-1 text-xs dark:bg-gray-700",onClick:N}," 使用示例 ")]),b(e("textarea",{"onUpdate:modelValue":p[6]||(p[6]=h=>k.scriptBody=h),class:"min-h-[260px] w-full rounded-xl bg-gray-900 font-mono text-sm text-gray-100 shadow-inner focus:outline-none focus:ring-2 focus:ring-indigo-500",spellcheck:"false"},null,512),[[j,k.scriptBody]]),p[16]||(p[16]=e("div",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," extractor 可返回:isValid、invalidMessage、remaining、unit、planName、total、used、extra ",-1))]),T.value?(o(),n("div",rb,[e("div",sb,[p[17]||(p[17]=e("span",{class:"font-semibold"},"测试结果",-1)),e("span",{class:$(["rounded px-2 py-0.5 text-xs",((ae=T.value.mapped)==null?void 0:ae.status)==="success"?"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-200":"bg-red-100 text-red-700 dark:bg-red-900/40 dark:text-red-200"])},u(((oe=T.value.mapped)==null?void 0:oe.status)||"unknown"),3)]),e("div",lb,[e("div",null,"余额: "+u(E((he=T.value.mapped)==null?void 0:he.balance)),1),e("div",null,"单位: "+u(((W=T.value.mapped)==null?void 0:W.currency)||"—"),1),(Q=T.value.mapped)!=null&&Q.planName?(o(),n("div",ob,"套餐: "+u(T.value.mapped.planName),1)):m("",!0),(H=T.value.mapped)!=null&&H.errorMessage?(o(),n("div",nb," 错误: "+u(T.value.mapped.errorMessage),1)):m("",!0)]),e("details",ib,[p[18]||(p[18]=e("summary",{class:"cursor-pointer"},"查看 extractor 输出",-1)),e("pre",db,u(R(T.value.extracted)),1)]),e("details",ub,[p[19]||(p[19]=e("summary",{class:"cursor-pointer"},"查看原始响应",-1)),e("pre",pb,u(R(T.value.response)),1)])])):m("",!0)])]}),_:1},8,["model-value","title"])}}},yb=sa(cb,[["__scopeId","data-v-5e76f743"]]),mb={class:"accounts-container"},xb={class:"card p-4 sm:p-6"},fb={class:"mb-4 flex flex-col gap-4 sm:mb-6"},bb={class:"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between"},vb={class:"flex flex-col gap-3 sm:flex-row sm:flex-wrap sm:items-center sm:gap-3"},kb={class:"group relative min-w-[160px]"},hb={class:"group relative min-w-[140px]"},wb={class:"group relative min-w-[160px]"},$b={class:"group relative min-w-[120px]"},Ab={class:"group relative min-w-[200px]"},Cb={class:"relative flex items-center"},Tb={class:"flex w-full flex-col gap-3 sm:w-auto sm:flex-row sm:items-center sm:gap-3"},Ib={class:"relative"},Ub={class:"relative"},_b=["disabled"],Kb={class:"relative"},Sb=["disabled"],Mb={class:"relative"},Db={class:"relative"},Pb={key:0,class:"py-12 text-center"},jb={key:1,class:"py-12 text-center"},Vb={key:2,class:"table-wrapper hidden md:block"},zb={class:"w-full"},Lb={class:"sticky top-0 z-10 bg-gradient-to-b from-gray-50 to-gray-100/90 backdrop-blur-sm dark:from-gray-700 dark:to-gray-800/90"},Rb={key:0,class:"checkbox-column sticky left-0 z-20 min-w-[50px] px-3 py-4 text-left"},Ob={class:"flex items-center"},Eb=["indeterminate"],Nb={key:1,class:"fas fa-sort ml-1 text-gray-400"},qb={key:1,class:"fas fa-sort ml-1 text-gray-400"},Wb={key:1,class:"fas fa-sort ml-1 text-gray-400"},Bb={class:"min-w-[210px] px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"},Gb={class:"flex items-center gap-2"},Fb={key:1,class:"fas fa-sort ml-1 text-gray-400"},Qb={key:1,class:"fas fa-sort ml-1 text-gray-400"},Hb={class:"divide-y divide-gray-200/50 dark:divide-gray-600/50"},Jb={key:0,class:"checkbox-column sticky left-0 z-10 px-3 py-3"},Yb={class:"flex items-center"},Zb=["value"],Xb={class:"flex items-center"},ev={class:"min-w-0"},tv={class:"flex items-center gap-2"},av=["onClick"],rv={key:0,class:"inline-flex items-center rounded-full bg-purple-100 px-2 py-0.5 text-xs font-medium text-purple-800"},sv={key:1,class:"inline-flex items-center rounded-full bg-blue-100 px-2 py-0.5 text-xs font-medium text-blue-800"},lv={key:2,class:"inline-flex items-center rounded-full bg-green-100 px-2 py-0.5 text-xs font-medium text-green-800"},ov={key:0,class:"my-2 flex flex-wrap items-center gap-2"},nv=["title"],iv=["title"],dv={class:"px-3 py-4"},uv={class:"flex items-center gap-1"},pv={key:0,class:"flex items-center gap-1.5 rounded-lg border border-yellow-200 bg-gradient-to-r from-yellow-100 to-amber-100 px-2.5 py-1"},gv={class:"text-xs font-medium text-yellow-700"},cv={key:1,class:"flex items-center gap-1.5 rounded-lg border border-purple-200 bg-gradient-to-r from-purple-100 to-pink-100 px-2.5 py-1"},yv={key:2,class:"flex items-center gap-1.5 rounded-lg border border-orange-200 bg-gradient-to-r from-orange-100 to-red-100 px-2.5 py-1"},mv={key:3,class:"flex items-center gap-1.5 rounded-lg border border-gray-700 bg-gray-100 bg-gradient-to-r from-gray-100 to-gray-100 px-2.5 py-1"},xv={class:"text-xs font-medium text-gray-950"},fv={key:4,class:"flex items-center gap-1.5 rounded-lg border border-blue-200 bg-gradient-to-r from-blue-100 to-cyan-100 px-2.5 py-1 dark:border-blue-700 dark:from-blue-900/20 dark:to-cyan-900/20"},bv={key:5,class:"flex items-center gap-1.5 rounded-lg border border-teal-200 bg-gradient-to-r from-teal-100 to-green-100 px-2.5 py-1 dark:border-teal-700 dark:from-teal-900/20 dark:to-green-900/20"},vv={key:6,class:"flex items-center gap-1.5 rounded-lg border border-indigo-200 bg-gradient-to-r from-indigo-100 to-blue-100 px-2.5 py-1"},kv={class:"text-xs font-semibold text-indigo-800"},hv={class:"text-xs font-medium text-indigo-700"},wv={key:7,class:"flex items-center gap-1.5 rounded-lg border border-teal-200 bg-gradient-to-r from-teal-100 to-emerald-100 px-2.5 py-1 dark:border-teal-700 dark:from-teal-900/20 dark:to-emerald-900/20"},$v={key:8,class:"flex items-center gap-1.5 rounded-lg border border-cyan-200 bg-gradient-to-r from-cyan-100 to-sky-100 px-2.5 py-1 dark:border-cyan-700 dark:from-cyan-900/20 dark:to-sky-900/20"},Av={class:"text-xs font-medium text-cyan-700 dark:text-cyan-300"},Cv={key:9,class:"flex items-center gap-1.5 rounded-lg border border-amber-200 bg-gradient-to-r from-amber-100 to-yellow-100 px-2.5 py-1 dark:border-amber-700 dark:from-amber-900/20 dark:to-yellow-900/20"},Tv={key:10,class:"flex items-center gap-1.5 rounded-lg border border-gray-200 bg-gradient-to-r from-gray-100 to-gray-200 px-2.5 py-1"},Iv={class:"w-[100px] min-w-[100px] max-w-[100px] whitespace-nowrap px-3 py-4"},Uv={class:"flex flex-col gap-1"},_v={key:0,class:"inline-flex items-center rounded-full bg-yellow-100 px-3 py-1 text-xs font-semibold text-yellow-800"},Kv={key:0},Sv={key:1,class:"inline-flex items-center rounded-full bg-gray-100 px-3 py-1 text-xs font-semibold text-gray-700"},Mv=["title"],Dv={key:3,class:"text-xs text-gray-500 dark:text-gray-400"},Pv={class:"whitespace-nowrap px-3 py-4 text-sm"},jv={key:0,class:"space-y-1"},Vv={class:"flex items-center gap-2"},zv={class:"text-sm font-medium text-gray-900 dark:text-gray-100"},Lv={class:"flex items-center gap-2"},Rv={class:"text-xs text-gray-600 dark:text-gray-300"},Ov={class:"flex items-center gap-2"},Ev={class:"text-xs text-gray-600 dark:text-gray-300"},Nv={key:0,class:"text-xs text-gray-500 dark:text-gray-400"},qv={key:1,class:"text-xs text-gray-400"},Wv={class:"whitespace-nowrap px-3 py-4"},Bv={class:"mt-1 text-xs"},Gv=["onClick"],Fv={class:"whitespace-nowrap px-3 py-4"},Qv={key:0,class:"space-y-2"},Hv={key:0,class:"space-y-2"},Jv={class:"rounded-lg bg-gray-50 p-2 dark:bg-gray-700/70"},Yv={class:"flex items-center gap-2"},Zv={class:"flex-1"},Xv={class:"flex items-center gap-2"},e1={class:"h-2 flex-1 rounded-full bg-gray-200 dark:bg-gray-600"},t1={class:"w-12 text-right text-xs font-semibold text-gray-800 dark:text-gray-100"},a1={class:"mt-1 text-[11px] text-gray-500 dark:text-gray-400"},r1={class:"rounded-lg bg-gray-50 p-2 dark:bg-gray-700/70"},s1={class:"flex items-center gap-2"},l1={class:"flex-1"},o1={class:"flex items-center gap-2"},n1={class:"h-2 flex-1 rounded-full bg-gray-200 dark:bg-gray-600"},i1={class:"w-12 text-right text-xs font-semibold text-gray-800 dark:text-gray-100"},d1={class:"mt-1 text-[11px] text-gray-500 dark:text-gray-400"},u1={class:"rounded-lg bg-gray-50 p-2 dark:bg-gray-700/70"},p1={class:"flex items-center gap-2"},g1={class:"flex-1"},c1={class:"flex items-center gap-2"},y1={class:"h-2 flex-1 rounded-full bg-gray-200 dark:bg-gray-600"},m1={class:"w-12 text-right text-xs font-semibold text-gray-800 dark:text-gray-100"},x1={class:"mt-1 text-[11px] text-gray-500 dark:text-gray-400"},f1={key:1,class:"space-y-2"},b1={key:0,class:"flex items-center gap-3 text-xs"},v1={class:"flex items-center gap-1"},k1={class:"font-medium text-gray-900 dark:text-gray-100"},h1={class:"flex items-center gap-1"},w1={class:"font-medium text-gray-900 dark:text-gray-100"},$1={class:"flex items-center gap-2"},A1={class:"h-2 w-24 rounded-full bg-gray-200 dark:bg-gray-700"},C1={class:"min-w-[32px] text-xs font-medium text-gray-700 dark:text-gray-200"},T1={class:"text-xs text-gray-600 dark:text-gray-400"},I1={key:0,class:"font-medium text-indigo-600 dark:text-indigo-400"},U1={key:2,class:"text-xs text-gray-400"},_1={key:1,class:"space-y-3"},K1={class:"flex items-center justify-between text-xs"},S1={class:"font-medium text-gray-700 dark:text-gray-200"},M1={class:"flex items-center gap-2"},D1={class:"h-2 w-24 rounded-full bg-gray-200 dark:bg-gray-700"},P1={class:"min-w-[32px] text-xs font-medium text-gray-700 dark:text-gray-200"},j1={class:"text-xs text-gray-600 dark:text-gray-400"},V1={class:"ml-2 text-gray-400"},z1={key:1,class:"text-sm text-gray-400"},L1={class:"space-y-1"},R1={class:"flex items-center justify-between text-xs"},O1={key:0,class:"font-medium text-gray-700 dark:text-gray-200"},E1={key:0,class:"flex items-center gap-2"},N1={class:"h-2 w-24 rounded-full bg-gray-200 dark:bg-gray-700"},q1={key:1,class:"inline-flex items-center rounded-full bg-gray-100 px-2 py-0.5 text-xs font-medium text-gray-500 dark:bg-gray-700 dark:text-gray-300"},W1={key:2,class:"space-y-2"},B1={key:0,class:"space-y-2"},G1={class:"rounded-lg bg-gray-50 p-2 dark:bg-gray-700/70"},F1={class:"flex items-center gap-2"},Q1={class:"inline-flex min-w-[32px] justify-center rounded-full bg-indigo-100 px-2 py-0.5 text-[11px] font-medium text-indigo-600 dark:bg-indigo-500/20 dark:text-indigo-300"},H1={class:"flex-1"},J1={class:"flex items-center gap-2"},Y1={class:"h-2 flex-1 rounded-full bg-gray-200 dark:bg-gray-600"},Z1={class:"w-12 text-right text-xs font-semibold text-gray-800 dark:text-gray-100"},X1={class:"mt-1 text-[11px] text-gray-500 dark:text-gray-400"},ek={class:"rounded-lg bg-gray-50 p-2 dark:bg-gray-700/70"},tk={class:"flex items-center gap-2"},ak={class:"inline-flex min-w-[32px] justify-center rounded-full bg-blue-100 px-2 py-0.5 text-[11px] font-medium text-blue-600 dark:bg-blue-500/20 dark:text-blue-300"},rk={class:"flex-1"},sk={class:"flex items-center gap-2"},lk={class:"h-2 flex-1 rounded-full bg-gray-200 dark:bg-gray-600"},ok={class:"w-12 text-right text-xs font-semibold text-gray-800 dark:text-gray-100"},nk={class:"mt-1 text-[11px] text-gray-500 dark:text-gray-400"},ik={key:1,class:"text-sm text-gray-400"},dk={key:3,class:"text-sm text-gray-400"},uk={class:"whitespace-nowrap px-3 py-4 text-sm text-gray-600 dark:text-gray-300"},pk={class:"whitespace-nowrap px-3 py-4"},gk={key:0,class:"flex items-center gap-2"},ck={class:"h-2 w-16 rounded-full bg-gray-200"},yk={class:"min-w-[20px] text-xs font-medium text-gray-700 dark:text-gray-200"},mk={key:1,class:"text-sm text-gray-400"},xk={class:"px-3 py-4 text-sm text-gray-600"},fk=["title"],bk={key:1,class:"text-gray-400"},vk={class:"whitespace-nowrap px-3 py-4"},kk={class:"flex flex-col gap-1"},hk={key:0},wk=["onClick"],$k=["onClick"],Ak=["onClick"],Ck=["onClick"],Tk={class:"operations-column sticky right-0 z-10 whitespace-nowrap px-3 py-4 text-sm font-medium"},Ik={key:0,class:"flex items-center gap-1"},Uk=["disabled","title","onClick"],_k=["disabled","title","onClick"],Kk={class:"ml-1"},Sk=["onClick"],Mk=["onClick"],Dk=["onClick"],Pk=["onClick"],jk=["onClick"],Vk={key:1,class:"flex items-center gap-1"},zk=["disabled","title","onClick"],Lk={class:"ml-1"},Rk=["onClick"],Ok={key:3,class:"space-y-3 md:hidden"},Ek={class:"mb-3 flex items-start justify-between"},Nk={class:"flex items-center gap-3"},qk=["value"],Wk=["onClick"],Bk={class:"mt-0.5 flex items-center gap-2"},Gk={class:"text-xs text-gray-500 dark:text-gray-400"},Fk={class:"text-xs text-gray-500 dark:text-gray-400"},Qk={class:"mb-3 grid grid-cols-2 gap-3"},Hk={class:"space-y-1"},Jk={class:"flex items-center gap-1.5"},Yk={class:"text-sm font-semibold text-gray-900 dark:text-gray-100"},Zk={class:"flex items-center gap-1.5"},Xk={class:"text-xs text-gray-600 dark:text-gray-400"},e2={class:"flex items-center gap-1.5"},t2={class:"text-xs text-gray-600 dark:text-gray-400"},a2={key:0,class:"space-y-1"},r2={class:"flex items-center gap-1.5"},s2={class:"text-sm font-semibold text-gray-900 dark:text-gray-100"},l2={class:"flex items-center gap-1.5"},o2={class:"text-xs text-gray-600 dark:text-gray-400"},n2={key:1,class:"text-sm font-semibold text-gray-400"},i2={class:"mb-3"},d2={class:"mt-1 text-xs"},u2=["onClick"],p2={class:"mb-3 space-y-2"},g2={key:0,class:"space-y-2"},c2={key:0,class:"space-y-2"},y2={class:"rounded-lg bg-gray-50 p-2 dark:bg-gray-700/70"},m2={class:"flex items-center gap-2"},x2={class:"flex-1"},f2={class:"flex items-center gap-2"},b2={class:"h-2 flex-1 rounded-full bg-gray-200 dark:bg-gray-600"},v2={class:"w-12 text-right text-xs font-semibold text-gray-800 dark:text-gray-100"},k2={class:"mt-1 text-[11px] text-gray-500 dark:text-gray-400"},h2={class:"rounded-lg bg-gray-50 p-2 dark:bg-gray-700/70"},w2={class:"flex items-center gap-2"},$2={class:"flex-1"},A2={class:"flex items-center gap-2"},C2={class:"h-2 flex-1 rounded-full bg-gray-200 dark:bg-gray-600"},T2={class:"w-12 text-right text-xs font-semibold text-gray-800 dark:text-gray-100"},I2={class:"mt-1 text-[11px] text-gray-500 dark:text-gray-400"},U2={class:"rounded-lg bg-gray-50 p-2 dark:bg-gray-700/70"},_2={class:"flex items-center gap-2"},K2={class:"flex-1"},S2={class:"flex items-center gap-2"},M2={class:"h-2 flex-1 rounded-full bg-gray-200 dark:bg-gray-600"},D2={class:"w-12 text-right text-xs font-semibold text-gray-800 dark:text-gray-100"},P2={class:"mt-1 text-[11px] text-gray-500 dark:text-gray-400"},j2={key:1,class:"space-y-1.5 rounded-lg bg-gray-50 p-2 dark:bg-gray-700"},V2={class:"flex items-center justify-between text-xs"},z2={class:"flex items-center gap-1"},L2={class:"font-medium text-gray-700 dark:text-gray-200"},R2={class:"h-2 w-full overflow-hidden rounded-full bg-gray-200 dark:bg-gray-600"},O2={class:"flex items-center justify-between text-xs"},E2={class:"text-gray-500 dark:text-gray-400"},N2={key:0,class:"font-medium text-indigo-600"},q2={key:1,class:"text-gray-500"},W2={key:2,class:"text-xs text-gray-400"},B2={key:1,class:"space-y-2"},G2={key:0,class:"space-y-2"},F2={class:"rounded-lg bg-gray-50 p-2 dark:bg-gray-700"},Q2={class:"flex items-center gap-2"},H2={class:"inline-flex min-w-[32px] justify-center rounded-full bg-indigo-100 px-2 py-0.5 text-[11px] font-medium text-indigo-600 dark:bg-indigo-500/20 dark:text-indigo-300"},J2={class:"flex-1"},Y2={class:"flex items-center gap-2"},Z2={class:"h-2 flex-1 rounded-full bg-gray-200 dark:bg-gray-600"},X2={class:"w-12 text-right text-xs font-semibold text-gray-800 dark:text-gray-100"},e3={class:"mt-1 text-[11px] text-gray-500 dark:text-gray-400"},t3={class:"rounded-lg bg-gray-50 p-2 dark:bg-gray-700"},a3={class:"flex items-center gap-2"},r3={class:"inline-flex min-w-[32px] justify-center rounded-full bg-blue-100 px-2 py-0.5 text-[11px] font-medium text-blue-600 dark:bg-blue-500/20 dark:text-blue-300"},s3={class:"flex-1"},l3={class:"flex items-center gap-2"},o3={class:"h-2 flex-1 rounded-full bg-gray-200 dark:bg-gray-600"},n3={class:"w-12 text-right text-xs font-semibold text-gray-800 dark:text-gray-100"},i3={class:"mt-1 text-[11px] text-gray-500 dark:text-gray-400"},d3={key:1,class:"text-xs text-gray-400"},u3={class:"flex items-center justify-between text-xs"},p3={class:"text-gray-700 dark:text-gray-200"},g3={key:2,class:"flex items-center justify-between text-xs"},c3={class:"text-gray-700 dark:text-gray-200"},y3={class:"flex items-center justify-between text-xs"},m3={class:"font-medium text-gray-700 dark:text-gray-200"},x3={class:"mt-3 flex gap-2 border-t border-gray-100 pt-3"},f3=["disabled","onClick"],b3=["onClick"],v3=["onClick"],k3=["onClick"],h3=["onClick"],w3=["onClick"],$3={key:0,class:"mt-4 flex flex-col items-center justify-between gap-4 sm:mt-6 sm:flex-row"},A3={class:"flex w-full flex-col items-center gap-3 sm:w-auto sm:flex-row"},C3={class:"text-xs text-gray-600 dark:text-gray-400 sm:text-sm"},T3={class:"flex items-center gap-2"},I3=["value"],U3={class:"flex items-center gap-2"},_3=["disabled"],K3={class:"flex items-center gap-1"},S3={key:1,class:"hidden px-2 text-sm text-gray-500 dark:text-gray-400 sm:block"},M3=["onClick"],D3={key:2,class:"hidden px-2 text-sm text-gray-500 dark:text-gray-400 sm:block"},P3=["disabled"],j3={class:"space-y-4"},V3={class:"overflow-x-auto"},z3={class:"w-full border-collapse text-sm",style:{"min-width":"1000px"}},L3={class:"border border-gray-300 px-4 py-2 font-medium dark:border-gray-600"},R3={class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"},O3={class:"text-green-600 dark:text-green-400"},E3={class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"},N3={class:"text-yellow-600 dark:text-yellow-400"},q3={class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"},W3={class:"text-orange-600 dark:text-orange-400"},B3={class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"},G3={class:"text-orange-600 dark:text-orange-400"},F3={class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"},Q3={class:"text-orange-600 dark:text-orange-400"},H3={class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"},J3={class:"text-orange-600 dark:text-orange-400"},Y3={class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"},Z3={class:"text-orange-600 dark:text-orange-400"},X3={class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"},e5={class:"text-red-600 dark:text-red-400"},t5={class:"border border-gray-300 bg-blue-50 px-4 py-2 text-center font-bold dark:border-gray-600 dark:bg-blue-900/30"},a5={class:"bg-blue-50 font-bold dark:bg-blue-900/30"},r5={class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"},s5={class:"text-green-600 dark:text-green-400"},l5={class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"},o5={class:"text-yellow-600 dark:text-yellow-400"},n5={class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"},i5={class:"text-orange-600 dark:text-orange-400"},d5={class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"},u5={class:"text-orange-600 dark:text-orange-400"},p5={class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"},g5={class:"text-orange-600 dark:text-orange-400"},c5={class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"},y5={class:"text-orange-600 dark:text-orange-400"},m5={class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"},x5={class:"text-orange-600 dark:text-orange-400"},f5={class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"},b5={class:"text-red-600 dark:text-red-400"},v5={class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"},vr="accountsPageSize",k5={__name:"AccountsView",setup(F){const _e=v(!1),c=v({title:"",message:"",confirmText:"继续",cancelText:"取消"});let z=null;const A=(r,s,x="继续",w="取消")=>new Promise(l=>{c.value={title:r,message:s,confirmText:x,cancelText:w},z=l,_e.value=!0}),_=()=>{_e.value=!1,z==null||z(!0),z=null},T=()=>{_e.value=!1,z==null||z(!1),z=null},k=v([]),P=v(!1),O=v(!1),Y=v("name"),M=v("asc"),se=v([]),ge=v({}),N=v([]),E=v("all"),R=v("all"),y=v("all"),p=v(""),D=()=>{const r=localStorage.getItem(vr);if(r){const s=parseInt(r,10);if([10,20,50,100].includes(s))return s}return 10},de=[10,20,50,100],le=v(D()),ae=v(1),oe=v([]),he=v(!1),W=v(!1),Q=v(!1),H=v(!1),h=v(!1),X=v(null),C=v([]),G=v({}),K=v({}),Ce=v(""),ze=["claude","claude-console","openai","openai-responses","gemini","droid","gemini-api","bedrock"],Ke=v(null),Fe=v(null),Qe=v(!1),xe=v(null),g=v(!1),a=v(null),U=v(!1),re=v(!1),ne=v(null),Re=v(!1),Oe=v(!1),st=v(!1),nt=v(!1),at=v(!1),Dt=v(new Map),Pt=v([{value:"name",label:"按名称排序",icon:"fa-font"},{value:"dailyTokens",label:"按今日Token排序",icon:"fa-coins"},{value:"dailyRequests",label:"按今日请求数排序",icon:"fa-chart-line"},{value:"totalTokens",label:"按总Token排序",icon:"fa-database"},{value:"lastUsed",label:"按最后使用排序",icon:"fa-clock"},{value:"rateLimitTime",label:"按限流时间排序",icon:"fa-hourglass"}]),jt=[{value:"group-claude",label:"Claude(全部)",icon:"fa-brain",children:[{value:"claude",label:"Claude 官方/OAuth",icon:"fa-brain"},{value:"claude-console",label:"Claude Console",icon:"fa-terminal"},{value:"bedrock",label:"Bedrock",icon:"fab fa-aws"},{value:"ccr",label:"CCR Relay",icon:"fa-code-branch"}]},{value:"group-openai",label:"Codex / OpenAI(全部)",icon:"fa-openai",children:[{value:"openai",label:"OpenAI 官方",icon:"fa-openai"},{value:"openai-responses",label:"OpenAI-Responses (Codex)",icon:"fa-server"},{value:"azure_openai",label:"Azure OpenAI",icon:"fab fa-microsoft"}]},{value:"group-gemini",label:"Gemini(全部)",icon:"fab fa-google",children:[{value:"gemini",label:"Gemini OAuth",icon:"fab fa-google"},{value:"gemini-api",label:"Gemini API",icon:"fa-key"}]},{value:"group-droid",label:"Droid(全部)",icon:"fa-robot",children:[{value:"droid",label:"Droid",icon:"fa-robot"}]}],I={"group-claude":["claude","claude-console","bedrock","ccr"],"group-openai":["openai","openai-responses","azure_openai"],"group-gemini":["gemini","gemini-api"],"group-droid":["droid"]},Tt={claude:()=>wr(),"claude-console":()=>$r(),bedrock:()=>Ar(),gemini:()=>Cr(),openai:()=>Tr(),azure_openai:()=>Ir(),"openai-responses":()=>Ur(),ccr:()=>Ws(),droid:()=>_r(),"gemini-api":()=>qs()},gt=Object.keys(Tt),ht=r=>r==="all"?gt:I[r]?I[r]:gt.includes(r)?[r]:gt,ct=Z(()=>{const r=[{value:"all",label:"所有平台",icon:"fa-globe",indent:0}];return jt.forEach(s=>{var x;r.push({...s,indent:0,isGroup:!0}),(x=s.children)==null||x.forEach(w=>{r.push({...w,indent:1,parent:s.value})})}),r}),Vt=v([{value:"normal",label:"正常",icon:"fa-check-circle"},{value:"unschedulable",label:"不可调度",icon:"fa-ban"},{value:"rateLimited",label:"限流",icon:"fa-hourglass-half"},{value:"other",label:"其他",icon:"fa-exclamation-triangle"},{value:"all",label:"全部状态",icon:"fa-list"}]),wt=Z(()=>{const r=[{value:"all",label:"所有账户",icon:"fa-globe"},{value:"ungrouped",label:"未分组账户",icon:"fa-user"}];return N.value.forEach(s=>{r.push({value:s.id,label:`${s.name} (${s.platform==="claude"?"Claude":s.platform==="gemini"?"Gemini":s.platform==="openai"?"OpenAI":"Droid"})`,icon:s.platform==="claude"?"fa-brain":s.platform==="gemini"?"fa-robot":s.platform==="openai"?"fa-openai":"fa-robot"})}),r}),B=Z(()=>Q.value),q=v(!1),Ee=v(null),We=v(!1),ut=v(null),Nt=r=>{const s=new Set;return[r==null?void 0:r.name,r==null?void 0:r.email,r==null?void 0:r.accountName,r==null?void 0:r.owner,r==null?void 0:r.ownerName,r==null?void 0:r.ownerDisplayName,r==null?void 0:r.displayName,r==null?void 0:r.username,r==null?void 0:r.identifier,r==null?void 0:r.alias,r==null?void 0:r.title,r==null?void 0:r.label].forEach(w=>{if(typeof w=="string"){const l=w.trim();l&&s.add(l)}}),Array.isArray(r==null?void 0:r.groupInfos)&&r.groupInfos.forEach(w=>{if(w&&typeof w.name=="string"){const l=w.name.trim();l&&s.add(l)}}),Object.entries(r||{}).forEach(([w,l])=>{if(typeof l=="string"){const te=w.toLowerCase();if(te.includes("name")||te.includes("email")){const we=l.trim();we&&s.add(we)}}}),Array.from(s)},qt=(r,s)=>s?Nt(r).some(x=>x.toLowerCase().includes(s)):!0,$t=r=>!!r&&ze.includes(r.platform),zt=r=>{var x;return["claude","claude-console","openai","openai-responses","gemini","gemini-api","ccr"].includes(r.platform)&&(r.status==="unauthorized"||r.status!=="active"||((x=r.rateLimitStatus)==null?void 0:x.isRateLimited)||r.rateLimitStatus==="limited"||!r.isActive)},Lt=r=>{const s=[];return zt(r)&&s.push({key:"reset",label:"重置状态",icon:"fa-redo",color:"orange",handler:()=>ba(r)}),$t(r)&&s.push({key:"usage",label:"详情",icon:"fa-chart-line",color:"indigo",handler:()=>It(r)}),At(r)&&(s.push({key:"test",label:"测试",icon:"fa-vial",color:"blue",handler:()=>Ct(r)}),s.push({key:"scheduled-test",label:"定时测试",icon:"fa-clock",color:"amber",handler:()=>Ut(r)})),s.push({key:"delete",label:"删除",icon:"fa-trash",color:"red",handler:()=>Zt(r)}),s},It=async r=>{if(!$t(r)){V("该账户类型暂不支持查看详情","warning");return}X.value=r,H.value=!0,h.value=!0,C.value=[],G.value={},K.value={},Ce.value="";const s=await Js(r.id,r.platform,30);if(s.success){const x=s.data||{};C.value=x.history||[],G.value=x.summary||{},K.value=x.overview||{},Ce.value=x.generatedAt||""}else V(s.error||"加载账号使用详情失败","error");h.value=!1},it=()=>{H.value=!1,h.value=!1,X.value=null},Ya=["claude","claude-console","bedrock","gemini","openai-responses","azure-openai","droid","ccr"],At=r=>!!r&&Ya.includes(r.platform),Ct=r=>{if(!At(r)){V("该账户类型暂不支持测试","warning");return}xe.value=r,Qe.value=!0},Wt=()=>{Qe.value=!1,xe.value=null},Ut=r=>{if(!At(r)){V("该账户类型暂不支持定时测试","warning");return}a.value=r,g.value=!0},Bt=()=>{g.value=!1,a.value=null},Gt=()=>{V("定时测试配置已保存","success")},Ft=v(!1),Rt=v(null),$a=r=>{Rt.value=r,Ft.value=!0},Aa=()=>{Ft.value=!1,Rt.value=null},Ca=async()=>{V("余额脚本已保存","success");const r=Rt.value;if(Aa(),!(!(r!=null&&r.id)||!(r!=null&&r.platform)))try{const s=await Mr(r.id,{platform:r.platform,queryApi:!1});s!=null&&s.success&&s.data&&Qt(r.id,s.data)}catch(s){console.debug("Failed to reload balance after saving script:",s)}},yt=Z(()=>{let r=k.value;const s=p.value.trim();if(s){const w=s.toLowerCase();r=r.filter(l=>qt(l,w))}return y.value!=="all"&&(r=r.filter(w=>{const l=xt(w),te=w.status==="blocked"||w.status==="unauthorized";return y.value==="rateLimited"?w.isActive&&l:y.value==="normal"?w.isActive&&!l&&!te&&w.schedulable!==!1:y.value==="unschedulable"?w.isActive&&!l&&!te&&w.schedulable===!1:y.value==="other"?!l&&(!w.isActive||te):!0})),Y.value?[...r].sort((w,l)=>{var ce,Te,ee,fe,Ae,ue,be,Ge,Be,ir,dr,ur;let te=w[Y.value],we=l[Y.value];if(Y.value==="dailyTokens"?(te=((Te=(ce=w.usage)==null?void 0:ce.daily)==null?void 0:Te.allTokens)||0,we=((fe=(ee=l.usage)==null?void 0:ee.daily)==null?void 0:fe.allTokens)||0):Y.value==="dailyRequests"?(te=((ue=(Ae=w.usage)==null?void 0:Ae.daily)==null?void 0:ue.requests)||0,we=((Ge=(be=l.usage)==null?void 0:be.daily)==null?void 0:Ge.requests)||0):Y.value==="totalTokens"&&(te=((ir=(Be=w.usage)==null?void 0:Be.total)==null?void 0:ir.allTokens)||0,we=((ur=(dr=l.usage)==null?void 0:dr.total)==null?void 0:ur.allTokens)||0),Y.value==="lastUsed"&&(te=w.lastUsedAt?new Date(w.lastUsedAt).getTime():0,we=l.lastUsedAt?new Date(l.lastUsedAt).getTime():0),Y.value==="status"&&(te=w.isActive?1:0,we=l.isActive?1:0),Y.value==="rateLimitTime"){const er=xt(w),tr=xt(l),pr=er?ft(w):0,gr=tr?ft(l):0;return!er&&tr?-1:er&&!tr?1:prgr?1:0}return tewe?M.value==="asc"?1:-1:0}):r}),De=Z(()=>{const r=yt.value.length;return Math.ceil(r/le.value)||0}),la=Z(()=>[{value:"claude",label:"Claude"},{value:"claude-console",label:"Claude Console"},{value:"gemini",label:"Gemini"},{value:"gemini-api",label:"Gemini API"},{value:"openai",label:"OpenAI"},{value:"azure_openai",label:"Azure OpenAI"},{value:"bedrock",label:"Bedrock"},{value:"openai-responses",label:"OpenAI-Responses"},{value:"ccr",label:"CCR"},{value:"droid",label:"Droid"}].map(s=>{const x=k.value.filter(ue=>ue.platform===s.value),w=x.filter(ue=>xt(ue)),l=x.filter(ue=>{const be=xt(ue),Ge=ue.status==="blocked"||ue.status==="unauthorized";return!be&&ue.isActive&&!Ge&&ue.schedulable!==!1}).length,te=x.filter(ue=>{const be=xt(ue),Ge=ue.status==="blocked"||ue.status==="unauthorized";return!be&&ue.isActive&&!Ge&&ue.schedulable===!1}).length,we=x.filter(ue=>{const be=xt(ue),Ge=ue.status==="blocked"||ue.status==="unauthorized";return!be&&(!ue.isActive||Ge)}).length,ce=w.filter(ue=>{const be=ft(ue);return be>0&&be<=60}).length,Te=w.filter(ue=>{const be=ft(ue);return be>60&&be<=300}).length,ee=w.filter(ue=>{const be=ft(ue);return be>300&&be<=720}).length,fe=w.filter(ue=>{const be=ft(ue);return be>720&&be<=1440}).length,Ae=w.filter(ue=>ft(ue)>1440).length;return{platform:s.value,platformLabel:s.label,normal:l,unschedulable:te,rateLimit0_1h:ce,rateLimit1_5h:Te,rateLimit5_12h:ee,rateLimit12_24h:fe,rateLimitOver24h:Ae,other:we,total:x.length}}).filter(s=>s.total>0)),dt=Z(()=>la.value.reduce((r,s)=>(r.normal+=s.normal,r.unschedulable+=s.unschedulable,r.rateLimit0_1h+=s.rateLimit0_1h,r.rateLimit1_5h+=s.rateLimit1_5h,r.rateLimit5_12h+=s.rateLimit5_12h,r.rateLimit12_24h+=s.rateLimit12_24h,r.rateLimitOver24h+=s.rateLimitOver24h,r.other+=s.other,r.total+=s.total,r),{normal:0,unschedulable:0,rateLimit0_1h:0,rateLimit1_5h:0,rateLimit5_12h:0,rateLimit12_24h:0,rateLimitOver24h:0,other:0,total:0})),_t=Z(()=>{const r=De.value,s=ae.value,x=[];if(r<=7)for(let w=1;w<=r;w++)x.push(w);else{let w=Math.max(1,s-2),l=Math.min(r,s+2);s<=3?l=5:s>=r-2&&(w=r-4);for(let te=w;te<=l;te++)x.push(te)}return x}),mt=Z(()=>{const r=_t.value;return r.length===0?!1:r[0]>1}),oa=Z(()=>{const r=_t.value;return r.length===0?!1:r[r.length-1]{const r=_t.value;return r.length===0?!1:mt.value&&r[0]>2}),Ia=Z(()=>{const r=_t.value;return r.length===0?!1:oa.value&&r[r.length-1]{const r=(ae.value-1)*le.value,s=r+le.value;return yt.value.slice(r,s)}),na=Z(()=>{const r=pt.value;return!Array.isArray(r)||r.length===0?!1:r.some(s=>{const x=s==null?void 0:s.balanceInfo;return(x==null?void 0:x.scriptEnabled)!==!1&&!!(x!=null&&x.scriptConfigured)})}),Ua=Z(()=>P.value?"正在加载账户...":O.value?"刷新中...":na.value?"刷新当前页余额(仅对已配置余额脚本的账户生效)":"当前页未配置余额脚本,无法刷新"),Qt=(r,s)=>{k.value=k.value.map(x=>x.id!==r?x:{...x,balanceInfo:s})},ia=(r,s)=>{const x=(s==null?void 0:s.message)||"余额查询失败";V(x,"error")},_a=async()=>{if(O.value)return;const r=pt.value;if(!r||r.length===0)return;const s=r.filter(w=>{const l=w==null?void 0:w.balanceInfo;return(l==null?void 0:l.scriptEnabled)!==!1&&!!(l!=null&&l.scriptConfigured)});if(s.length===0){V("当前页没有配置余额脚本的账户","warning");return}const x=r.length-s.length;O.value=!0;try{const w=await Promise.all(s.map(async Te=>{try{const ee=await Dr(Te.id,{platform:Te.platform});return{id:Te.id,success:!!(ee!=null&&ee.success),data:(ee==null?void 0:ee.data)||null}}catch(ee){return{id:Te.id,success:!1,error:(ee==null?void 0:ee.message)||"刷新失败"}}})),l=w.reduce((Te,ee)=>(ee.success&&ee.data&&(Te[ee.id]=ee.data),Te),{}),te=w.filter(Te=>Te.success).length,we=w.length-te,ce=x>0?`,跳过 ${x} 个未配置脚本`:"";Object.keys(l).length>0&&(k.value=k.value.map(Te=>{const ee=l[Te.id];return ee?{...Te,balanceInfo:ee}:Te})),we===0?V(`成功刷新 ${te} 个账户余额${ce}`,"success"):V(`刷新完成:${te} 成功,${we} 失败${ce}`,"warning")}finally{O.value=!1}},rt=()=>{const r=pt.value.map(w=>w.id),s=r.filter(w=>oe.value.includes(w)).length,x=r.length;s===0?(he.value=!1,W.value=!1):s===x?(he.value=!0,W.value=!1):(he.value=!1,W.value=!0)},Ka=()=>{if(he.value)pt.value.forEach(r=>{oe.value.includes(r.id)||oe.value.push(r.id)});else{const r=new Set(pt.value.map(s=>s.id));oe.value=oe.value.filter(s=>!r.has(s))}rt()},Sa=()=>{Q.value=!Q.value,Q.value?rt():(oe.value=[],he.value=!1,W.value=!1)},da=()=>{const r=new Set(k.value.map(s=>s.id));oe.value=oe.value.filter(s=>r.has(s)),rt()},Ma=async()=>{const r=k.value;if(!Array.isArray(r)||r.length===0)return;const s=Array.from(new Set(r.map(l=>l.platform).filter(Boolean)));if(s.length===0)return;const w=(await Promise.all(s.map(async l=>{try{const te=await Fs(l,{queryApi:!1});return{platform:l,success:!!(te!=null&&te.success),data:(te==null?void 0:te.data)||[]}}catch(te){return console.debug(`Failed to load balance cache for ${l}:`,te),{platform:l,success:!1,data:[]}}}))).reduce((l,te)=>(te.success&&(Array.isArray(te.data)?te.data:[]).forEach(ce=>{var ee;const Te=(ee=ce==null?void 0:ce.data)==null?void 0:ee.accountId;Te&&(l[Te]=ce.data)}),l),{});Object.keys(w).length!==0&&(k.value=k.value.map(l=>({...l,balanceInfo:w[l.id]||l.balanceInfo||null})))},lt=async(r=!1)=>{P.value=!0;try{const s={};R.value!=="all"&&!I[R.value]&&(s.platform=R.value),E.value!=="all"&&(s.groupId=E.value);const x=ht(R.value);await Promise.all([ua(r),pa(r)]);const w=await Promise.all(x.map(async ee=>{const fe=Tt[ee];if(!fe)return{platform:ee,success:!0,data:[]};try{const Ae=await fe(s);return{platform:ee,success:Ae==null?void 0:Ae.success,data:Ae==null?void 0:Ae.data}}catch(Ae){return console.debug(`Failed to load ${ee} accounts:`,Ae),{platform:ee,success:!1,data:[]}}})),l=[],te=ge.value||{};let we=[];const ce=(ee,fe)=>{const Ae=Array.isArray(fe)?fe:[];if(Ae.length!==0)switch(ee){case"claude":{const ue=Ae.map(be=>{var Be;const Ge=((Be=te.claudeAccountId)==null?void 0:Be[be.id])||0;return{...be,platform:"claude",boundApiKeysCount:Ge}});l.push(...ue);break}case"claude-console":{const ue=Ae.map(be=>{var Be;const Ge=((Be=te.claudeConsoleAccountId)==null?void 0:Be[be.id])||0;return{...be,platform:"claude-console",boundApiKeysCount:Ge}});l.push(...ue);break}case"bedrock":{const ue=Ae.map(be=>({...be,platform:"bedrock",boundApiKeysCount:0}));l.push(...ue);break}case"gemini":{const ue=Ae.map(be=>{var Be;const Ge=((Be=te.geminiAccountId)==null?void 0:Be[be.id])||0;return{...be,platform:"gemini",boundApiKeysCount:Ge}});l.push(...ue);break}case"openai":{const ue=Ae.map(be=>{var Be;const Ge=((Be=te.openaiAccountId)==null?void 0:Be[be.id])||0;return{...be,platform:"openai",boundApiKeysCount:Ge}});l.push(...ue);break}case"azure_openai":{const ue=Ae.map(be=>{var Be;const Ge=((Be=te.azureOpenaiAccountId)==null?void 0:Be[be.id])||0;return{...be,platform:"azure_openai",boundApiKeysCount:Ge}});l.push(...ue);break}case"openai-responses":{we=Ae;break}case"ccr":{const ue=Ae.map(be=>({...be,platform:"ccr",boundApiKeysCount:0}));l.push(...ue);break}case"droid":{const ue=Ae.map(be=>{var Be;const Ge=((Be=te.droidAccountId)==null?void 0:Be[be.id])||be.boundApiKeysCount||0;return{...be,platform:"droid",boundApiKeysCount:Ge}});l.push(...ue);break}case"gemini-api":{const ue=Ae.map(be=>{var Be;const Ge=((Be=te.geminiAccountId)==null?void 0:Be[`api:${be.id}`])||0;return{...be,platform:"gemini-api",boundApiKeysCount:Ge}});l.push(...ue);break}default:break}};if(w.forEach(({platform:ee,success:fe,data:Ae})=>{fe&&ce(ee,Ae||[])}),we.length>0){const ee=we.map(fe=>{var ue;const Ae=((ue=te.openaiAccountId)==null?void 0:ue[`responses:${fe.id}`])||0;return{...fe,platform:"openai-responses",boundApiKeysCount:Ae}});l.push(...ee)}let Te=l;E.value!=="all"&&(E.value==="ungrouped"?Te=l.filter(ee=>!ee.groupInfos||ee.groupInfos.length===0):Te=l.filter(ee=>!ee.groupInfos||ee.groupInfos.length===0?!1:ee.groupInfos.some(fe=>fe.id===E.value))),Te=Te.map(ee=>{const fe=ga(ee.proxyConfig||ee.proxy);return{...ee,proxyConfig:fe||null}}),k.value=Te,da(),Te.some(ee=>ee.platform==="claude")&&Da().catch(ee=>{console.debug("Claude usage loading failed:",ee)}),Ma().catch(ee=>{console.debug("Balance cache loading failed:",ee)})}catch{V("加载账户失败","error")}finally{P.value=!1}},Da=async()=>{const r=await Gs();if(r.success&&r.data){const s=r.data;k.value=k.value.map(x=>x.platform==="claude"&&s[x.id]?{...x,claudeUsage:s[x.id]}:x)}};let Ht="name";const Kt=r=>{r&&(Y.value===r?M.value=M.value==="asc"?"desc":"asc":(Y.value=r,M.value="asc"),Ht=r)},Pa=r=>{r===Ht?M.value=M.value==="asc"?"desc":"asc":M.value="asc",Ht=r},ja=r=>{if(!r)return"从未使用";const s=new Date(r),w=new Date-s;return w<6e4?"刚刚":w<36e5?`${Math.floor(w/6e4)} 分钟前`:w<864e5?`${Math.floor(w/36e5)} 小时前`:w<6048e5?`${Math.floor(w/864e5)} 天前`:s.toLocaleDateString("zh-CN")},Va=()=>{p.value="",ae.value=1},ua=async(r=!1)=>{if(!r&&st.value)return;const s=await Bs();s.success&&(ge.value=s.data||{},st.value=!0)},za=async(r=!1)=>{var x;if(!r&&Oe.value)return;const s=await Ys();s.success&&(se.value=((x=s.data)==null?void 0:x.items)||s.data||[],Oe.value=!0)},pa=async(r=!1)=>{if(!r&&nt.value)return;const s=await sr();s.success&&(N.value=s.data||[],nt.value=!0)},La=()=>{Oe.value=!1,st.value=!1,nt.value=!1,at.value=!1,Dt.value.clear()},Ra=()=>{ae.value=1,lt()},Oa=()=>{ae.value=1,lt()};function ga(r){if(!r)return null;let s=r;if(typeof r=="string")try{s=JSON.parse(r)}catch{return null}if(!s||typeof s!="object")return null;const x=s.proxy&&typeof s.proxy=="object"?s.proxy:s,w=typeof x.host=="string"?x.host.trim():x.host!==void 0&&x.host!==null?String(x.host).trim():"",l=x.port!==void 0&&x.port!==null?String(x.port).trim():"";if(!w||!l)return null;const te=typeof x.type=="string"&&x.type.trim()?x.type.trim():"socks5",we=typeof x.username=="string"?x.username:x.username!==void 0&&x.username!==null?String(x.username):"",ce=typeof x.password=="string"?x.password:x.password!==void 0&&x.password!==null?String(x.password):"";return{type:te,host:w,port:l,username:we,password:ce}}const Jt=r=>{const s=ga(r);if(!s)return null;const x=s.type.toLowerCase()==="socks5"?"S5":s.type.toUpperCase();let w=s.host;w.length>15&&(w=w.substring(0,12)+"...");let l=`${x}://${w}:${s.port}`;return s.username&&(l=`${x}://***@${w}:${s.port}`),l},ca=(r,s)=>{if(!r||!s)return"--";const x=new Date(r),w=new Date(s),l=x.getHours().toString().padStart(2,"0"),te=x.getMinutes().toString().padStart(2,"0"),we=w.getHours().toString().padStart(2,"0"),ce=w.getMinutes().toString().padStart(2,"0");return`${l}:${te} - ${we}:${ce}`},ya=r=>{if(!r||r<=0)return"已结束";const s=Math.floor(r/60),x=r%60;return s>0?`${s}小时${x}分钟`:`${x}分钟`},Ea=r=>{if(!r||r<=0)return"";r=Math.floor(r);const s=Math.floor(r/1440),x=r%1440,w=Math.floor(x/60),l=x%60;return s>0?w>0?`${s}天${w}小时`:`${s}天`:w>0?l>0?`${w}小时${l}分钟`:`${w}小时`:`${l}分钟`},xt=r=>r?!!(r.rateLimitStatus&&(typeof r.rateLimitStatus=="string"&&r.rateLimitStatus==="limited"||typeof r.rateLimitStatus=="object"&&r.rateLimitStatus.isRateLimited===!0)):!1,ft=r=>{if(!r||!r.rateLimitStatus)return 0;if(typeof r.rateLimitStatus=="object"){const s=r.rateLimitStatus;if(Number.isFinite(s.minutesRemaining))return Math.max(0,Math.ceil(s.minutesRemaining));if(Number.isFinite(s.remainingMinutes))return Math.max(0,Math.ceil(s.remainingMinutes));if(Number.isFinite(s.remainingSeconds))return Math.max(0,Math.ceil(s.remainingSeconds/60));if(s.rateLimitResetAt){const x=new Date(s.rateLimitResetAt).getTime()-Date.now();return x>0?Math.ceil(x/6e4):0}}if(r.rateLimitUntil){const s=new Date().getTime(),w=new Date(r.rateLimitUntil).getTime()-s;return w>0?Math.ceil(w/6e4):0}return 0},Na=()=>{Ee.value=null,q.value=!0},ma=()=>{q.value=!1,Ee.value=null},Yt=r=>{ut.value=r,We.value=!0},xa=r=>!r||!r.id?[]:se.value.filter(s=>{const x=r.id;return s.claudeAccountId===x||s.claudeConsoleAccountId===x||s.geminiAccountId===x||s.openaiAccountId===x||s.azureOpenaiAccountId===x||s.openaiAccountId===`responses:${x}`||s.geminiAccountId===`api:${x}`}),qa=r=>{switch(r.platform){case"claude":return`/admin/claude-accounts/${r.id}`;case"claude-console":return`/admin/claude-console-accounts/${r.id}`;case"bedrock":return`/admin/bedrock-accounts/${r.id}`;case"openai":return`/admin/openai-accounts/${r.id}`;case"azure_openai":return`/admin/azure-openai-accounts/${r.id}`;case"openai-responses":return`/admin/openai-responses-accounts/${r.id}`;case"ccr":return`/admin/ccr-accounts/${r.id}`;case"gemini":return`/admin/gemini-accounts/${r.id}`;case"droid":return`/admin/droid-accounts/${r.id}`;case"gemini-api":return`/admin/gemini-api-accounts/${r.id}`;default:return null}},fa=async r=>{const s=qa(r);if(!s)return{success:!1,message:"不支持的账户类型"};const x=await Sr(s);return x.success?{success:!0,data:x}:{success:!1,message:x.message||"删除失败"}},Zt=async r=>{const x=xa(r).length;let w=`确定要删除账户 "${r.name}" 吗?`;if(x>0&&(w+=` - -⚠️ 注意:此账号有 ${x} 个 API Key 绑定。`,w+=` -删除后,这些 API Key 将自动切换为共享池模式。`),w+=` - -此操作不可恢复。`,!await A("删除账户",w,"删除","取消"))return;const te=await fa(r);if(te.success){const we=te.data;let ce="账户已成功删除";(we==null?void 0:we.unboundKeys)>0&&(ce+=`,${we.unboundKeys} 个 API Key 已切换为共享池模式`),V(ce,"success"),oe.value=oe.value.filter(Te=>Te!==r.id),rt(),at.value=!1,Oe.value=!1,st.value=!1,lt(),za(!0),ua(!0)}else V(te.message||"删除失败","error")},Wa=async()=>{var ee;if(oe.value.length===0){V("请先选择要删除的账户","warning");return}const r=new Map(k.value.map(fe=>[fe.id,fe])),s=oe.value.map(fe=>r.get(fe)).filter(fe=>!!fe);if(s.length===0){V("选中的账户已不存在","warning"),oe.value=[],rt();return}let x=`确定要删除选中的 ${s.length} 个账户吗?此操作不可恢复。`;const w=s.map(fe=>({account:fe,boundKeys:xa(fe)})).filter(fe=>fe.boundKeys.length>0);if(w.length>0&&(x+=` - -⚠️ 以下账户存在绑定的 API Key,将自动解绑:`,w.forEach(({account:fe,boundKeys:Ae})=>{const ue=fe.name||fe.email||fe.accountName||fe.id;x+=` -- ${ue}: ${Ae.length} 个`}),x+=` -删除后,这些 API Key 将切换为共享池模式。`),x+=` - -请再次确认是否继续。`,!await A("批量删除账户",x,"删除","取消"))return;let te=0,we=0,ce=0;const Te=[];for(const fe of s){const Ae=await fa(fe);Ae.success?(te+=1,ce+=((ee=Ae.data)==null?void 0:ee.unboundKeys)||0):(we+=1,Te.push({name:fe.name||fe.email||fe.accountName||fe.id,message:Ae.message||"删除失败"}))}if(te>0){let fe=`成功删除 ${te} 个账户`;ce>0&&(fe+=`,${ce} 个 API Key 已切换为共享池模式`),V(fe,we>0?"warning":"success"),oe.value=[],he.value=!1,W.value=!1,at.value=!1,Oe.value=!1,await lt(!0)}if(we>0){const fe=Te.map(Ae=>`${Ae.name}: ${Ae.message}`).join(` -`);V(`有 ${we} 个账户删除失败: -${fe}`,te>0?"warning":"error")}rt()},ba=async r=>{if(!(r.isResetting||!await A("重置账户状态","确定要重置此账户的所有异常状态吗?这将清除限流状态、401错误计数等所有异常标记。","确定重置","取消")))try{r.isResetting=!0;let x="";if(r.platform==="openai")x=`/admin/openai-accounts/${r.id}/reset-status`;else if(r.platform==="openai-responses")x=`/admin/openai-responses-accounts/${r.id}/reset-status`;else if(r.platform==="claude")x=`/admin/claude-accounts/${r.id}/reset-status`;else if(r.platform==="claude-console")x=`/admin/claude-console-accounts/${r.id}/reset-status`;else if(r.platform==="ccr")x=`/admin/ccr-accounts/${r.id}/reset-status`;else if(r.platform==="droid")x=`/admin/droid-accounts/${r.id}/reset-status`;else if(r.platform==="gemini-api")x=`/admin/gemini-api-accounts/${r.id}/reset-status`;else if(r.platform==="gemini")x=`/admin/gemini-accounts/${r.id}/reset-status`;else{V("不支持的账户类型","error"),r.isResetting=!1;return}const w=await Hs(x);w.success?(V("账户状态已重置","success"),lt(!0)):V(w.message||"状态重置失败","error"),r.isResetting=!1}catch(x){V(x.message||"状态重置失败","error"),r.isResetting=!1}},Xt=async r=>{if(r.isTogglingSchedulable)return;r.isTogglingSchedulable=!0;let s;if(r.platform==="claude")s=`/admin/claude-accounts/${r.id}/toggle-schedulable`;else if(r.platform==="claude-console")s=`/admin/claude-console-accounts/${r.id}/toggle-schedulable`;else if(r.platform==="bedrock")s=`/admin/bedrock-accounts/${r.id}/toggle-schedulable`;else if(r.platform==="gemini")s=`/admin/gemini-accounts/${r.id}/toggle-schedulable`;else if(r.platform==="openai")s=`/admin/openai-accounts/${r.id}/toggle-schedulable`;else if(r.platform==="azure_openai")s=`/admin/azure-openai-accounts/${r.id}/toggle-schedulable`;else if(r.platform==="openai-responses")s=`/admin/openai-responses-accounts/${r.id}/toggle-schedulable`;else if(r.platform==="ccr")s=`/admin/ccr-accounts/${r.id}/toggle-schedulable`;else if(r.platform==="droid")s=`/admin/droid-accounts/${r.id}/toggle-schedulable`;else if(r.platform==="gemini-api")s=`/admin/gemini-api-accounts/${r.id}/toggle-schedulable`;else{V("该账户类型暂不支持调度控制","warning"),r.isTogglingSchedulable=!1;return}const x=await Kr(s);x.success?(r.schedulable=x.schedulable,V(x.schedulable?"已启用调度":"已禁用调度","success")):V(x.message||"操作失败","error"),r.isTogglingSchedulable=!1},d=()=>{q.value=!1,V("账户创建成功","success"),La(),lt()},t=()=>{We.value=!1,V("账户更新成功","success"),at.value=!1,lt()},ie=r=>!r.lastRefreshAt||r.lastRefreshAt===""?"Setup":"OAuth",ye=()=>"OAuth",i=()=>"OAuth",pe=r=>{if(!r||typeof r!="object")return"OAuth";const s=r.isApiKeyMode??r.is_api_key_mode??r.apiKeyMode??r.api_key_mode;if(s===!0||s==="true"||s===1||s==="1")return"API Key";const x=r.authenticationMethod||r.authMethod||r.authentication_mode||r.authenticationMode||r.authentication_method||r.auth_type||r.authType||r.authentication_type||r.authenticationType||r.droidAuthType||r.droidAuthenticationMethod||r.method||r.auth||"";return typeof x=="string"&&x.trim().toLowerCase().replace(/[\s_-]/g,"")==="apikey"?"API Key":"OAuth"},me=r=>pe(r)==="API Key",qe=r=>{if(!r||typeof r!="object")return 0;if(Array.isArray(r.apiKeys))return r.apiKeys.filter(x=>x.status!=="error").length;if(typeof r.apiKeys=="string"&&r.apiKeys.trim())try{const x=JSON.parse(r.apiKeys);if(Array.isArray(x))return x.filter(w=>w.status!=="error").length}catch{}const s=[r.apiKeyCount,r.api_key_count,r.apiKeysCount,r.api_keys_count];for(const x of s){const w=Number(x);if(Number.isFinite(w)&&w>=0)return w}return 0},He=r=>{const s=qe(r),x="ml-1 inline-flex items-center gap-1 rounded-md border px-1.5 py-[1px] text-[10px] font-medium shadow-sm backdrop-blur-sm";return s>0?[x,"border-cyan-200 bg-cyan-50/90 text-cyan-700 dark:border-cyan-500/40 dark:bg-cyan-900/40 dark:text-cyan-200"]:[x,"border-rose-200 bg-rose-50/90 text-rose-600 dark:border-rose-500/40 dark:bg-rose-900/40 dark:text-rose-200"]},Le=r=>{if(r.subscriptionInfo)try{const s=typeof r.subscriptionInfo=="string"?JSON.parse(r.subscriptionInfo):r.subscriptionInfo;return s.hasClaudeMax===!0?"Claude Max":s.hasClaudePro===!0?"Claude Pro":"Claude Free"}catch{return"Claude"}return"Claude"},S=r=>{if(r.schedulable!==!1)return null;if(r.platform==="claude-console"){if(r.status==="unauthorized")return"API Key无效或已过期(401错误)";if(r.overloadStatus==="overloaded")return"服务过载(529错误)";if(r.rateLimitStatus==="limited")return"触发限流(429错误)";if(r.status==="blocked"&&r.errorMessage)return r.errorMessage}if(r.platform==="claude"){if(r.status==="unauthorized")return"认证失败(401错误)";if(r.status==="temp_error"&&r.errorMessage||r.status==="error"&&r.errorMessage)return r.errorMessage;if(r.isRateLimited)return"触发限流(429错误)";if(r.stoppedReason)return r.stoppedReason;if(r.fiveHourAutoStopped==="true"||r.fiveHourAutoStopped===!0)return"5小时使用量接近限制,已自动停止调度"}if(r.platform==="openai"){if(r.status==="unauthorized")return"认证失败(401错误)";if(r.rateLimitStatus&&r.rateLimitStatus.isRateLimited||r.isRateLimited)return"触发限流(429错误)";if(r.status==="error"&&r.errorMessage)return r.errorMessage}if(r.platform==="openai-responses"){if(r.status==="unauthorized")return"认证失败(401错误)";if(r.rateLimitStatus&&r.rateLimitStatus.isRateLimited||r.isRateLimited)return"触发限流(429错误)";if(r.status==="error"&&r.errorMessage)return r.errorMessage;if(r.status==="rateLimited")return"触发限流(429错误)"}return r.stoppedReason?r.stoppedReason:r.errorMessage?r.errorMessage:"手动停止调度"},L=r=>r.status==="blocked"?"已封锁":r.status==="unauthorized"?"异常":r.isRateLimited||r.status==="rate_limited"||r.rateLimitStatus&&r.rateLimitStatus.isRateLimited||r.rateLimitStatus==="limited"?"限流中":r.status==="temp_error"?"临时异常":r.status==="error"||!r.isActive?"错误":r.schedulable===!1?"已暂停":"正常",$e=r=>r.status==="blocked"||r.status==="unauthorized"?"bg-red-100 text-red-800":r.isRateLimited||r.status==="rate_limited"||r.rateLimitStatus&&r.rateLimitStatus.isRateLimited||r.rateLimitStatus==="limited"||r.status==="temp_error"?"bg-orange-100 text-orange-800":r.status==="error"||!r.isActive?"bg-red-100 text-red-800":r.schedulable===!1?"bg-gray-100 text-gray-800":"bg-green-100 text-green-800",J=r=>r.status==="blocked"||r.status==="unauthorized"?"bg-red-500":r.isRateLimited||r.status==="rate_limited"||r.rateLimitStatus&&r.rateLimitStatus.isRateLimited||r.rateLimitStatus==="limited"||r.status==="temp_error"?"bg-orange-500":r.status==="error"||!r.isActive?"bg-red-500":r.schedulable===!1?"bg-gray-500":"bg-green-500",Se=(r,s=null)=>{if(!r)return"bg-gradient-to-r from-blue-500 to-indigo-600";if(s&&(s.isRateLimited||s.status==="rate_limited"||s.rateLimitStatus&&s.rateLimitStatus.isRateLimited||s.rateLimitStatus==="limited"))return"bg-gradient-to-r from-red-500 to-red-600";const w=String(r).toLowerCase();return w==="rejected"?"bg-gradient-to-r from-red-500 to-red-600":w==="allowed_warning"?"bg-gradient-to-r from-yellow-500 to-orange-500":"bg-gradient-to-r from-blue-500 to-indigo-600"},Me=r=>r.authType==="oauth",Pe=r=>!r||r.utilization===null||r.utilization===void 0?"-":`${r.utilization}%`,Ue=r=>!r||r.utilization===null||r.utilization===void 0?"0%":`${r.utilization}%`,et=r=>{const s=(r==null?void 0:r.utilization)||0;return s<60?"bg-gradient-to-r from-blue-500 to-indigo-600":s<90?"bg-gradient-to-r from-yellow-500 to-orange-500":"bg-gradient-to-r from-red-500 to-red-600"},tt=r=>{if(!r||!r.remainingSeconds)return"-";const s=r.remainingSeconds,x=Math.floor(s/86400),w=Math.floor(s%86400/3600),l=Math.floor(s%3600/60);return x>0?w>0?`${x}天${w}小时`:`${x}天`:w>0?l>0?`${w}小时${l}分钟`:`${w}小时`:l>0?`${l}分钟`:`${Math.floor(s%60)}秒`},bt=r=>{if(!r)return null;const s=typeof r.usedPercent=="number"&&!Number.isNaN(r.usedPercent)?r.usedPercent:null,x=typeof r.resetAfterSeconds=="number"&&!Number.isNaN(r.resetAfterSeconds)?r.resetAfterSeconds:null,w=typeof r.remainingSeconds=="number"?r.remainingSeconds:null,l=r.resetAt?Date.parse(r.resetAt):null;return x!==null&&(w!==null&&w<=0||l!==null&&!Number.isNaN(l)&&Date.now()>=l)?0:s===null?null:Math.max(0,Math.min(100,s))},ea=r=>{const s=bt(r);return s===null?"bg-gradient-to-r from-gray-300 to-gray-400":s>=90?"bg-gradient-to-r from-red-500 to-red-600":s>=75?"bg-gradient-to-r from-yellow-500 to-orange-500":"bg-gradient-to-r from-emerald-500 to-teal-500"},Ot=r=>{const s=bt(r);return s===null?"--":`${s.toFixed(1)}%`},ta=r=>{const s=bt(r);return s===null?"0%":`${s}%`},aa=r=>r==="secondary"?"周限":"5h",St=r=>{if(!r)return"--";let s=r.remainingSeconds;if(s==null&&(s=r.resetAfterSeconds),s==null||Number.isNaN(Number(s)))return"--";s=Math.max(0,Math.floor(Number(s)));const x=Math.floor(s/86400),w=Math.floor(s%86400/3600),l=Math.floor(s%3600/60),te=s%60;return x>0?w>0?`${x}天${w}小时`:`${x}天`:w>0?l>0?`${w}小时${l}分钟`:`${w}小时`:l>0?`${l}分钟`:`${te}秒`},Ba=r=>!r||r===0?"0.0000":r<1e-4?r.toExponential(2):r<.01?r.toFixed(6):r<1?r.toFixed(4):r.toFixed(2),Za=r=>{var w,l;const s=Number(((l=(w=r==null?void 0:r.usage)==null?void 0:w.daily)==null?void 0:l.cost)||0),x=Number((r==null?void 0:r.dailyQuota)||0);return!x||x<=0?0:s/x*100},Vr=r=>r>=90?"bg-red-500":r>=70?"bg-yellow-500":"bg-green-500",Xa=r=>{const s=Number((r==null?void 0:r.maxConcurrentTasks)||0);if(!s||s<=0)return 0;const x=Number((r==null?void 0:r.activeTaskCount)||0);return Math.min(100,x/s*100)},zr=r=>r>=100?"bg-red-500":r>=80?"bg-yellow-500":"bg-green-500",Lr=r=>{const s=Number((r==null?void 0:r.maxConcurrentTasks)||0);if(!s||s<=0)return"text-gray-500 dark:text-gray-400";const x=Number((r==null?void 0:r.activeTaskCount)||0);return x>=s?"text-red-600 dark:text-red-400":x>=s*.8?"text-yellow-600 dark:text-yellow-400":"text-gray-700 dark:text-gray-200"},Rr=r=>{var w,l;const s=Number(((l=(w=r==null?void 0:r.usage)==null?void 0:w.daily)==null?void 0:l.cost)||0),x=Number((r==null?void 0:r.dailyQuota)||0);return!x||x<=0?"0.00":Math.max(0,x-s).toFixed(2)},lr=r=>!r.usage||!r.usage.daily?"0.0000":r.usage.daily.cost!==void 0?Ba(r.usage.daily.cost):"0.0000";ve(p,()=>{ae.value=1,rt()}),ve(le,r=>{localStorage.setItem(vr,r.toString()),rt()}),ve(()=>yt.value.length,()=>{ae.value>De.value&&(ae.value=De.value||1),rt()}),ve(ae,()=>{rt()}),ve(pt,()=>{rt(),ar(()=>{va()})}),ve(k,()=>{da()});const or=r=>r?new Date(r).toLocaleDateString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit"}):"",Or=r=>r?new Date(r){if(!r)return!1;const s=new Date,w=(new Date(r)-s)/(1e3*60*60*24);return w>0&&w<=7},Ga=r=>{Ke.value=r},nr=()=>{Ke.value=null},Nr=async({accountId:r,expiresAt:s})=>{try{const x=k.value.find(te=>te.id===r);if(!x){V("未找到账户","error");return}let w="";switch(x.platform){case"claude":case"claude-oauth":w=`/admin/claude-accounts/${r}`;break;case"gemini":w=`/admin/gemini-accounts/${r}`;break;case"claude-console":w=`/admin/claude-console-accounts/${r}`;break;case"bedrock":w=`/admin/bedrock-accounts/${r}`;break;case"ccr":w=`/admin/ccr-accounts/${r}`;break;case"openai":w=`/admin/openai-accounts/${r}`;break;case"droid":w=`/admin/droid-accounts/${r}`;break;case"azure_openai":w=`/admin/azure-openai-accounts/${r}`;break;case"openai-responses":w=`/admin/openai-responses-accounts/${r}`;break;default:V(`不支持的平台类型: ${x.platform}`,"error");return}const l=await Zs(w,{expiresAt:s||null});l.success?(V("账户到期时间已更新","success"),x.expiresAt=s||null,nr()):(V(l.message||"更新失败","error"),Fe.value&&Fe.value.resetSaving())}catch(x){V(x.message||"更新失败","error"),Fe.value&&Fe.value.resetSaving()}},va=()=>{ne.value&&(Re.value=ne.value.scrollWidth>ne.value.clientWidth)};let Fa=null;return ra(()=>{lt(!0),ar(()=>{ne.value&&(Fa=new ResizeObserver(()=>{va()}),Fa.observe(ne.value),va())}),window.addEventListener("resize",va)}),Ha(()=>{Fa&&Fa.disconnect(),window.removeEventListener("resize",va)}),(r,s)=>{const x=Wr,w=kr;return o(),n("div",mb,[e("div",xb,[e("div",fb,[s[45]||(s[45]=e("div",null,[e("h3",{class:"mb-1 text-lg font-bold text-gray-900 dark:text-gray-100 sm:mb-2 sm:text-xl"}," 账户管理 "),e("p",{class:"text-sm text-gray-600 dark:text-gray-400 sm:text-base"}," 管理 Claude、Gemini、OpenAI 等账户与代理配置 ")],-1)),e("div",bb,[e("div",vb,[e("div",kb,[s[29]||(s[29]=e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-indigo-500 to-blue-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1)),Ve(Qa,{modelValue:Y.value,"onUpdate:modelValue":s[0]||(s[0]=l=>Y.value=l),icon:M.value==="asc"?"fa-sort-amount-up":"fa-sort-amount-down","icon-color":"text-indigo-500",options:Pt.value,placeholder:"选择排序",onChange:Pa},null,8,["modelValue","icon","options"])]),e("div",hb,[s[30]||(s[30]=e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-blue-500 to-indigo-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1)),Ve(Qa,{modelValue:R.value,"onUpdate:modelValue":s[1]||(s[1]=l=>R.value=l),icon:"fa-server","icon-color":"text-blue-500",options:ct.value,placeholder:"选择平台",onChange:Ra},null,8,["modelValue","options"])]),e("div",wb,[s[31]||(s[31]=e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-purple-500 to-pink-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1)),Ve(Qa,{modelValue:E.value,"onUpdate:modelValue":s[2]||(s[2]=l=>E.value=l),icon:"fa-layer-group","icon-color":"text-purple-500",options:wt.value,placeholder:"选择分组",onChange:Oa},null,8,["modelValue","options"])]),e("div",$b,[s[32]||(s[32]=e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-green-500 to-emerald-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1)),Ve(Qa,{modelValue:y.value,"onUpdate:modelValue":s[3]||(s[3]=l=>y.value=l),icon:"fa-check-circle","icon-color":"text-green-500",options:Vt.value,placeholder:"选择状态"},null,8,["modelValue","options"])]),e("div",Ab,[s[35]||(s[35]=e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-cyan-500 to-teal-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1)),e("div",Cb,[b(e("input",{"onUpdate:modelValue":s[4]||(s[4]=l=>p.value=l),class:"h-10 w-full rounded-lg border border-gray-200 bg-white px-3 pl-9 text-sm text-gray-700 placeholder-gray-400 shadow-sm transition-all duration-200 hover:border-gray-300 focus:border-cyan-500 focus:outline-none focus:ring-2 focus:ring-cyan-500/20 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-200 dark:placeholder-gray-500 dark:hover:border-gray-500",placeholder:"搜索账户名称...",type:"text"},null,512),[[j,p.value]]),s[34]||(s[34]=e("i",{class:"fas fa-search absolute left-3 text-sm text-cyan-500"},null,-1)),p.value?(o(),n("button",{key:0,class:"absolute right-2 flex h-5 w-5 items-center justify-center rounded-full text-gray-400 hover:bg-gray-100 hover:text-gray-600 dark:hover:bg-gray-700 dark:hover:text-gray-300",onClick:Va},s[33]||(s[33]=[e("i",{class:"fas fa-times text-xs"},null,-1)]))):m("",!0)])])]),e("div",Tb,[e("div",Ib,[Ve(x,{content:"查看账户统计汇总",effect:"dark",placement:"bottom"},{default:ot(()=>[e("button",{class:"group relative flex items-center justify-center gap-2 rounded-lg border border-gray-200 bg-white px-4 py-2 text-sm font-medium text-gray-700 shadow-sm transition-all duration-200 hover:border-gray-300 hover:shadow-md dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:border-gray-500 sm:w-auto",onClick:s[5]||(s[5]=l=>U.value=!0)},s[36]||(s[36]=[e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-violet-500 to-purple-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1),e("i",{class:"fas fa-chart-bar relative text-violet-500"},null,-1),e("span",{class:"relative"},"统计",-1)]))]),_:1})]),e("div",Ub,[Ve(x,{content:"刷新数据 (Ctrl/⌘+点击强制刷新所有缓存)",effect:"dark",placement:"bottom"},{default:ot(()=>[e("button",{class:"group relative flex items-center justify-center gap-2 rounded-lg border border-gray-200 bg-white px-4 py-2 text-sm font-medium text-gray-700 shadow-sm transition-all duration-200 hover:border-gray-300 hover:shadow-md disabled:cursor-not-allowed disabled:opacity-50 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:border-gray-500 sm:w-auto",disabled:P.value,onClick:[s[6]||(s[6]=vt(l=>lt(!0),["ctrl","exact"])),s[7]||(s[7]=vt(l=>lt(!1),["exact"])),s[8]||(s[8]=vt(l=>lt(!0),["meta","exact"]))]},[s[37]||(s[37]=e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-green-500 to-teal-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1)),e("i",{class:$(["fas relative text-green-500",P.value?"fa-spinner fa-spin":"fa-sync-alt"])},null,2),s[38]||(s[38]=e("span",{class:"relative"},"刷新",-1))],8,_b)]),_:1})]),e("div",Kb,[Ve(x,{content:Ua.value,effect:"dark",placement:"bottom"},{default:ot(()=>[e("button",{class:"group relative flex items-center justify-center gap-2 rounded-lg border border-gray-200 bg-white px-4 py-2 text-sm font-medium text-gray-700 shadow-sm transition-all duration-200 hover:border-gray-300 hover:shadow-md disabled:cursor-not-allowed disabled:opacity-50 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:border-gray-500 sm:w-auto",disabled:P.value||O.value||!na.value,onClick:_a},[s[39]||(s[39]=e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-blue-500 to-indigo-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1)),e("i",{class:$(["fas relative text-blue-500",O.value?"fa-spinner fa-spin":"fa-wallet"])},null,2),s[40]||(s[40]=e("span",{class:"relative"},"刷新余额",-1))],8,Sb)]),_:1},8,["content"])]),e("button",{class:"flex items-center gap-2 rounded-lg border border-gray-200 bg-white px-4 py-2 text-sm font-medium text-gray-700 shadow-sm transition-all duration-200 hover:border-gray-300 hover:bg-gray-50 hover:shadow-md dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700",onClick:Sa},[e("i",{class:$(Q.value?"fas fa-times":"fas fa-check-square")},null,2),e("span",null,u(Q.value?"取消选择":"选择"),1)]),e("div",Mb,[Ve(x,{content:"管理账户分组",effect:"dark",placement:"bottom"},{default:ot(()=>[e("button",{class:"group relative flex items-center justify-center gap-2 rounded-lg border border-gray-200 bg-white px-4 py-2 text-sm font-medium text-gray-700 shadow-sm transition-all duration-200 hover:border-gray-300 hover:shadow-md dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:border-gray-500 sm:w-auto",onClick:s[9]||(s[9]=l=>re.value=!0)},s[41]||(s[41]=[e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-purple-500 to-pink-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1),e("i",{class:"fas fa-layer-group relative text-purple-500"},null,-1),e("span",{class:"relative"},"分组",-1)]))]),_:1})]),oe.value.length>0?(o(),n("button",{key:0,class:"group relative flex items-center justify-center gap-2 rounded-lg border border-red-200 bg-red-50 px-4 py-2 text-sm font-medium text-red-700 shadow-sm transition-all duration-200 hover:border-red-300 hover:bg-red-100 hover:shadow-md dark:border-red-700 dark:bg-red-900/30 dark:text-red-300 dark:hover:bg-red-900/50 sm:w-auto",onClick:Wa},[s[42]||(s[42]=e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-red-500 to-pink-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1)),s[43]||(s[43]=e("i",{class:"fas fa-trash relative text-red-600 dark:text-red-400"},null,-1)),e("span",Db,"删除选中 ("+u(oe.value.length)+")",1)])):m("",!0),e("button",{class:"flex w-full items-center justify-center gap-2 rounded-lg bg-gradient-to-r from-green-500 to-green-600 px-5 py-2.5 text-sm font-medium text-white shadow-md transition-all duration-200 hover:from-green-600 hover:to-green-700 hover:shadow-lg sm:w-auto",onClick:vt(Na,["stop"])},s[44]||(s[44]=[e("i",{class:"fas fa-plus"},null,-1),e("span",null,"添加账户",-1)]))])])]),P.value?(o(),n("div",Pb,s[46]||(s[46]=[e("div",{class:"loading-spinner mx-auto mb-4"},null,-1),e("p",{class:"text-gray-500 dark:text-gray-400"},"正在加载账户...",-1)]))):yt.value.length===0?(o(),n("div",jb,s[47]||(s[47]=[e("div",{class:"mx-auto mb-4 flex h-16 w-16 items-center justify-center rounded-full bg-gray-100 dark:bg-gray-700"},[e("i",{class:"fas fa-user-circle text-xl text-gray-400"})],-1),e("p",{class:"text-lg text-gray-500 dark:text-gray-400"},"暂无账户",-1),e("p",{class:"mt-2 text-sm text-gray-400 dark:text-gray-500"},"点击上方按钮添加您的第一个账户",-1)]))):(o(),n("div",Vb,[e("div",{ref_key:"tableContainerRef",ref:ne,class:"table-container"},[e("table",zb,[e("thead",Lb,[e("tr",null,[B.value?(o(),n("th",Rb,[e("div",Ob,[b(e("input",{"onUpdate:modelValue":s[10]||(s[10]=l=>he.value=l),class:"h-4 w-4 rounded border-gray-300 text-blue-600 focus:ring-blue-500",indeterminate:W.value,type:"checkbox",onChange:Ka},null,40,Eb),[[je,he.value]])])])):m("",!0),e("th",{class:$(["name-column sticky z-20 min-w-[180px] cursor-pointer px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 hover:bg-gray-100 dark:text-gray-300 dark:hover:bg-gray-600",B.value?"left-[50px]":"left-0"]),onClick:s[11]||(s[11]=l=>Kt("name"))},[s[48]||(s[48]=f(" 名称 ",-1)),Y.value==="name"?(o(),n("i",{key:0,class:$(["fas",M.value==="asc"?"fa-sort-up":"fa-sort-down","ml-1"])},null,2)):(o(),n("i",Nb))],2),e("th",{class:"min-w-[220px] cursor-pointer px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 hover:bg-gray-100 dark:text-gray-300 dark:hover:bg-gray-600",onClick:s[12]||(s[12]=l=>Kt("platform"))},[s[49]||(s[49]=f(" 平台/类型 ",-1)),Y.value==="platform"?(o(),n("i",{key:0,class:$(["fas",M.value==="asc"?"fa-sort-up":"fa-sort-down","ml-1"])},null,2)):(o(),n("i",qb))]),e("th",{class:"w-[120px] min-w-[180px] max-w-[200px] cursor-pointer px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 hover:bg-gray-100 dark:text-gray-300 dark:hover:bg-gray-600",onClick:s[13]||(s[13]=l=>Kt("status"))},[s[50]||(s[50]=f(" 状态 ",-1)),Y.value==="status"?(o(),n("i",{key:0,class:$(["fas",M.value==="asc"?"fa-sort-up":"fa-sort-down","ml-1"])},null,2)):(o(),n("i",Wb))]),s[56]||(s[56]=e("th",{class:"min-w-[150px] px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 今日使用 ",-1)),s[57]||(s[57]=e("th",{class:"min-w-[220px] px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 余额/配额 ",-1)),e("th",Bb,[e("div",Gb,[s[53]||(s[53]=e("span",null,"会话窗口",-1)),Ve(x,{placement:"top"},{content:ot(()=>s[51]||(s[51]=[e("div",{class:"w-[260px] space-y-3 text-xs leading-relaxed text-white dark:text-gray-800"},[e("div",{class:"space-y-2"},[e("div",{class:"text-sm font-semibold text-white dark:text-gray-900"}," Claude 系列 "),e("div",{class:"text-gray-200 dark:text-gray-600"}," 会话窗口进度表示 5 小时窗口的时间推移,颜色提示当前调度状态。 "),e("div",{class:"space-y-1 pt-1 text-gray-200 dark:text-gray-600"},[e("div",{class:"flex items-center gap-2"},[e("div",{class:"h-2 w-16 rounded bg-gradient-to-r from-blue-500 to-indigo-600"}),e("span",{class:"font-medium text-white dark:text-gray-900"},"正常:请求正常处理")]),e("div",{class:"flex items-center gap-2"},[e("div",{class:"h-2 w-16 rounded bg-gradient-to-r from-yellow-500 to-orange-500"}),e("span",{class:"font-medium text-white dark:text-gray-900"},"警告:接近限制")]),e("div",{class:"flex items-center gap-2"},[e("div",{class:"h-2 w-16 rounded bg-gradient-to-r from-red-500 to-red-600"}),e("span",{class:"font-medium text-white dark:text-gray-900"},"拒绝:达到速率限制")])])]),e("div",{class:"h-px bg-gray-200 dark:bg-gray-600/50"}),e("div",{class:"space-y-2"},[e("div",{class:"text-sm font-semibold text-white dark:text-gray-900"}," OpenAI "),e("div",{class:"text-gray-200 dark:text-gray-600"}," 进度条分别展示 5h 与周限窗口的额度使用比例,颜色含义与上方保持一致。 "),e("div",{class:"space-y-1 text-gray-200 dark:text-gray-600"},[e("div",{class:"flex items-start gap-2"},[e("i",{class:"fas fa-clock mt-[2px] text-[10px] text-blue-500"}),e("span",{class:"font-medium text-white dark:text-gray-900"},"5h 窗口:5小时使用量进度,到达重置时间后会自动归零。")]),e("div",{class:"flex items-start gap-2"},[e("i",{class:"fas fa-history mt-[2px] text-[10px] text-emerald-500"}),e("span",{class:"font-medium text-white dark:text-gray-900"},"周限窗口:7天使用量进度,重置时同样回到 0%。")]),e("div",{class:"flex items-start gap-2"},[e("i",{class:"fas fa-info-circle mt-[2px] text-[10px] text-indigo-500"}),e("span",{class:"font-medium text-white dark:text-gray-900"},'当"重置剩余"为 0 时,进度条与百分比会同步清零。')])])]),e("div",{class:"h-px bg-gray-200 dark:bg-gray-600/50"}),e("div",{class:"space-y-2"},[e("div",{class:"text-sm font-semibold text-white dark:text-gray-900"}," Claude OAuth 账户 "),e("div",{class:"text-gray-200 dark:text-gray-600"}," 展示三个窗口的使用率(utilization百分比),颜色含义同上。 "),e("div",{class:"space-y-1 text-gray-200 dark:text-gray-600"},[e("div",{class:"flex items-start gap-2"},[e("i",{class:"fas fa-clock mt-[2px] text-[10px] text-indigo-500"}),e("span",{class:"font-medium text-white dark:text-gray-900"},"5h 窗口:5小时滑动窗口的使用率。")]),e("div",{class:"flex items-start gap-2"},[e("i",{class:"fas fa-calendar-alt mt-[2px] text-[10px] text-emerald-500"}),e("span",{class:"font-medium text-white dark:text-gray-900"},"7d 窗口:7天总限额的使用率。")]),e("div",{class:"flex items-start gap-2"},[e("i",{class:"fas fa-gem mt-[2px] text-[10px] text-purple-500"}),e("span",{class:"font-medium text-white dark:text-gray-900"},"Sonnet窗口:7天Sonnet模型专用限额。")]),e("div",{class:"flex items-start gap-2"},[e("i",{class:"fas fa-sync-alt mt-[2px] text-[10px] text-blue-500"}),e("span",{class:"font-medium text-white dark:text-gray-900"},"到达重置时间后自动归零。")])])])],-1)])),default:ot(()=>[s[52]||(s[52]=e("i",{class:"fas fa-question-circle cursor-help text-xs text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-400"},null,-1))]),_:1,__:[52]})])]),s[58]||(s[58]=e("th",{class:"min-w-[80px] px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 最后使用 ",-1)),e("th",{class:"min-w-[80px] cursor-pointer px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 hover:bg-gray-100 dark:text-gray-300 dark:hover:bg-gray-600",onClick:s[14]||(s[14]=l=>Kt("priority"))},[s[54]||(s[54]=f(" 优先级 ",-1)),Y.value==="priority"?(o(),n("i",{key:0,class:$(["fas",M.value==="asc"?"fa-sort-up":"fa-sort-down","ml-1"])},null,2)):(o(),n("i",Fb))]),s[59]||(s[59]=e("th",{class:"min-w-[150px] px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 代理 ",-1)),e("th",{class:"min-w-[110px] cursor-pointer px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 hover:bg-gray-100 dark:text-gray-300 dark:hover:bg-gray-600",onClick:s[15]||(s[15]=l=>Kt("expiresAt"))},[s[55]||(s[55]=f(" 到期时间 ",-1)),Y.value==="expiresAt"?(o(),n("i",{key:0,class:$(["fas",M.value==="asc"?"fa-sort-up":"fa-sort-down","ml-1"])},null,2)):(o(),n("i",Qb))]),e("th",{class:$(["operations-column sticky right-0 z-20 px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300",Re.value?"min-w-[170px]":"min-w-[200px]"])}," 操作 ",2)])]),e("tbody",Hb,[(o(!0),n(ke,null,Ne(pt.value,l=>{var te,we;return o(),n("tr",{key:l.id,class:"table-row"},[B.value?(o(),n("td",Jb,[e("div",Yb,[b(e("input",{"onUpdate:modelValue":s[16]||(s[16]=ce=>oe.value=ce),class:"h-4 w-4 rounded border-gray-300 text-blue-600 focus:ring-blue-500",type:"checkbox",value:l.id,onChange:rt},null,40,Zb),[[je,oe.value]])])])):m("",!0),e("td",{class:$(["name-column sticky z-10 px-3 py-4",B.value?"left-[50px]":"left-0"])},[e("div",Xb,[s[64]||(s[64]=e("div",{class:"mr-2 flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-lg bg-gradient-to-br from-green-500 to-green-600"},[e("i",{class:"fas fa-user-circle text-xs text-white"})],-1)),e("div",ev,[e("div",tv,[e("div",{class:"cursor-pointer truncate text-sm font-semibold text-gray-900 hover:text-blue-600 dark:text-gray-100 dark:hover:text-blue-400",title:"点击复制",onClick:vt(ce=>Ye(cr)(l.name),["stop"])},u(l.name),9,av),l.accountType==="dedicated"?(o(),n("span",rv,s[60]||(s[60]=[e("i",{class:"fas fa-lock mr-1"},null,-1),f("专属 ",-1)]))):l.accountType==="group"?(o(),n("span",sv,s[61]||(s[61]=[e("i",{class:"fas fa-layer-group mr-1"},null,-1),f("分组调度 ",-1)]))):(o(),n("span",lv,s[62]||(s[62]=[e("i",{class:"fas fa-share-alt mr-1"},null,-1),f("共享 ",-1)])))]),l.groupInfos&&l.groupInfos.length>0?(o(),n("div",ov,[(o(!0),n(ke,null,Ne(l.groupInfos,ce=>(o(),n("span",{key:ce.id,class:"inline-flex items-center rounded-full bg-gray-100 px-2 py-0.5 text-xs font-medium text-gray-600 dark:bg-gray-700 dark:text-gray-400",title:`所属分组: ${ce.name}`},[s[63]||(s[63]=e("i",{class:"fas fa-folder mr-1"},null,-1)),f(u(ce.name),1)],8,nv))),128))])):m("",!0),e("div",{class:"truncate text-xs text-gray-500 dark:text-gray-400",title:l.id},u(l.id),9,iv)])])],2),e("td",dv,[e("div",uv,[l.platform==="gemini"?(o(),n("div",pv,[s[65]||(s[65]=e("i",{class:"fas fa-robot text-xs text-yellow-700"},null,-1)),s[66]||(s[66]=e("span",{class:"text-xs font-semibold text-yellow-800"},"Gemini",-1)),s[67]||(s[67]=e("span",{class:"mx-1 h-4 w-px bg-yellow-300"},null,-1)),e("span",gv,u(ye()),1)])):l.platform==="claude-console"?(o(),n("div",cv,s[68]||(s[68]=[e("i",{class:"fas fa-terminal text-xs text-purple-700"},null,-1),e("span",{class:"text-xs font-semibold text-purple-800"},"Console",-1),e("span",{class:"mx-1 h-4 w-px bg-purple-300"},null,-1),e("span",{class:"text-xs font-medium text-purple-700"},"API Key",-1)]))):l.platform==="bedrock"?(o(),n("div",yv,s[69]||(s[69]=[e("i",{class:"fab fa-aws text-xs text-orange-700"},null,-1),e("span",{class:"text-xs font-semibold text-orange-800"},"Bedrock",-1),e("span",{class:"mx-1 h-4 w-px bg-orange-300"},null,-1),e("span",{class:"text-xs font-medium text-orange-700"},"AWS",-1)]))):l.platform==="openai"?(o(),n("div",mv,[s[70]||(s[70]=e("div",{class:"fa-openai"},null,-1)),s[71]||(s[71]=e("span",{class:"text-xs font-semibold text-gray-950"},"OpenAi",-1)),s[72]||(s[72]=e("span",{class:"mx-1 h-4 w-px bg-gray-400"},null,-1)),e("span",xv,u(i()),1)])):l.platform==="azure_openai"?(o(),n("div",fv,s[73]||(s[73]=[e("i",{class:"fab fa-microsoft text-xs text-blue-700 dark:text-blue-400"},null,-1),e("span",{class:"text-xs font-semibold text-blue-800 dark:text-blue-300"},"Azure OpenAI",-1),e("span",{class:"mx-1 h-4 w-px bg-blue-300 dark:bg-blue-600"},null,-1),e("span",{class:"text-xs font-medium text-blue-700 dark:text-blue-400"},"API Key",-1)]))):l.platform==="openai-responses"?(o(),n("div",bv,s[74]||(s[74]=[e("i",{class:"fas fa-server text-xs text-teal-700 dark:text-teal-400"},null,-1),e("span",{class:"text-xs font-semibold text-teal-800 dark:text-teal-300"},"OpenAI-Api",-1),e("span",{class:"mx-1 h-4 w-px bg-teal-300 dark:bg-teal-600"},null,-1),e("span",{class:"text-xs font-medium text-teal-700 dark:text-teal-400"},"API Key",-1)]))):l.platform==="claude"||l.platform==="claude-oauth"?(o(),n("div",vv,[s[75]||(s[75]=e("i",{class:"fas fa-brain text-xs text-indigo-700"},null,-1)),e("span",kv,u(Le(l)),1),s[76]||(s[76]=e("span",{class:"mx-1 h-4 w-px bg-indigo-300"},null,-1)),e("span",hv,u(ie(l)),1)])):l.platform==="ccr"?(o(),n("div",wv,s[77]||(s[77]=[e("i",{class:"fas fa-code-branch text-xs text-teal-700 dark:text-teal-400"},null,-1),e("span",{class:"text-xs font-semibold text-teal-800 dark:text-teal-300"},"CCR",-1),e("span",{class:"mx-1 h-4 w-px bg-teal-300 dark:bg-teal-600"},null,-1),e("span",{class:"text-xs font-medium text-teal-700 dark:text-teal-300"},"Relay",-1)]))):l.platform==="droid"?(o(),n("div",$v,[s[79]||(s[79]=e("i",{class:"fas fa-robot text-xs text-cyan-700 dark:text-cyan-400"},null,-1)),s[80]||(s[80]=e("span",{class:"text-xs font-semibold text-cyan-800 dark:text-cyan-300"},"Droid",-1)),s[81]||(s[81]=e("span",{class:"mx-1 h-4 w-px bg-cyan-300 dark:bg-cyan-600"},null,-1)),e("span",Av,u(pe(l)),1),me(l)?(o(),n("span",{key:0,class:$(He(l))},[s[78]||(s[78]=e("i",{class:"fas fa-key text-[9px]"},null,-1)),e("span",null,"x"+u(qe(l)),1)],2)):m("",!0)])):l.platform==="gemini-api"?(o(),n("div",Cv,s[82]||(s[82]=[e("i",{class:"fas fa-robot text-xs text-amber-700 dark:text-amber-400"},null,-1),e("span",{class:"text-xs font-semibold text-amber-800 dark:text-amber-300"},"Gemini-API",-1),e("span",{class:"mx-1 h-4 w-px bg-amber-300 dark:bg-amber-600"},null,-1),e("span",{class:"text-xs font-medium text-amber-700 dark:text-amber-400"},"API Key",-1)]))):(o(),n("div",Tv,s[83]||(s[83]=[e("i",{class:"fas fa-question text-xs text-gray-700"},null,-1),e("span",{class:"text-xs font-semibold text-gray-800"},"未知",-1)])))])]),e("td",Iv,[e("div",Uv,[e("span",{class:$(["inline-flex items-center rounded-full px-3 py-1 text-xs font-semibold",l.status==="blocked"?"bg-orange-100 text-orange-800":l.status==="unauthorized"?"bg-red-100 text-red-800":l.status==="temp_error"?"bg-orange-100 text-orange-800":l.isActive?"bg-green-100 text-green-800":"bg-red-100 text-red-800"])},[e("div",{class:$(["mr-2 h-2 w-2 rounded-full",l.status==="blocked"?"bg-orange-500":l.status==="unauthorized"?"bg-red-500":l.status==="temp_error"?"bg-orange-500":l.isActive?"bg-green-500":"bg-red-500"])},null,2),f(" "+u(l.status==="blocked"?"已封锁":l.status==="unauthorized"?"异常":l.status==="temp_error"?"临时异常":l.isActive?"正常":"异常"),1)],2),l.rateLimitStatus&&l.rateLimitStatus.isRateLimited||l.rateLimitStatus==="limited"?(o(),n("span",_v,[s[84]||(s[84]=e("i",{class:"fas fa-exclamation-triangle mr-1"},null,-1)),s[85]||(s[85]=f(" 限流中 ",-1)),l.rateLimitStatus&&typeof l.rateLimitStatus=="object"&&l.rateLimitStatus.minutesRemaining>0?(o(),n("span",Kv,"("+u(Ea(l.rateLimitStatus.minutesRemaining))+")",1)):m("",!0)])):m("",!0),l.schedulable===!1?(o(),n("span",Sv,[s[87]||(s[87]=e("i",{class:"fas fa-pause-circle mr-1"},null,-1)),s[88]||(s[88]=f(" 不可调度 ",-1)),S(l)?(o(),Xe(x,{key:0,content:S(l),effect:"dark",placement:"top"},{default:ot(()=>s[86]||(s[86]=[e("i",{class:"fas fa-question-circle ml-1 cursor-help text-gray-500"},null,-1)])),_:2,__:[86]},1032,["content"])):m("",!0)])):m("",!0),l.status==="blocked"&&l.errorMessage?(o(),n("span",{key:2,class:"mt-1 max-w-xs truncate text-xs text-gray-500 dark:text-gray-400",title:l.errorMessage},u(l.errorMessage),9,Mv)):m("",!0),l.accountType==="dedicated"?(o(),n("span",Dv," 绑定: "+u(l.boundApiKeysCount||0)+" 个API Key ",1)):m("",!0)])]),e("td",Pv,[l.usage&&l.usage.daily?(o(),n("div",jv,[e("div",Vv,[s[89]||(s[89]=e("div",{class:"h-2 w-2 rounded-full bg-blue-500"},null,-1)),e("span",zv,u(l.usage.daily.requests||0)+" 次",1)]),e("div",Lv,[s[90]||(s[90]=e("div",{class:"h-2 w-2 rounded-full bg-purple-500"},null,-1)),e("span",Rv,u(Ye(Je)(l.usage.daily.allTokens||0)),1)]),e("div",Ov,[s[91]||(s[91]=e("div",{class:"h-2 w-2 rounded-full bg-green-500"},null,-1)),e("span",Ev,"$"+u(lr(l)),1)]),l.usage.averages&&l.usage.averages.rpm>0?(o(),n("div",Nv," 平均 "+u(l.usage.averages.rpm.toFixed(2))+" RPM ",1)):m("",!0)])):(o(),n("div",qv,"暂无数据"))]),e("td",Wv,[Ve(fr,{"account-id":l.id,"initial-balance":l.balanceInfo,platform:l.platform,"query-mode":l.platform==="gemini"&&l.oauthProvider==="antigravity"?"auto":"local",onError:ce=>ia(l.id,ce),onRefreshed:ce=>Qt(l.id,ce)},null,8,["account-id","initial-balance","platform","query-mode","onError","onRefreshed"]),e("div",Bv,[l.platform==="gemini"&&l.oauthProvider==="antigravity"?m("",!0):(o(),n("button",{key:0,class:"text-blue-500 hover:underline dark:text-blue-300",onClick:ce=>$a(l)}," 配置余额脚本 ",8,Gv))])]),e("td",Fv,[l.platform==="claude"?(o(),n("div",Qv,[Me(l)&&l.claudeUsage?(o(),n("div",Hv,[e("div",Jv,[e("div",Yv,[s[92]||(s[92]=e("span",{class:"inline-flex min-w-[32px] justify-center rounded-full bg-indigo-100 px-2 py-0.5 text-[11px] font-medium text-indigo-600 dark:bg-indigo-500/20 dark:text-indigo-300"}," 5h ",-1)),e("div",Zv,[e("div",Xv,[e("div",e1,[e("div",{class:$(["h-2 rounded-full transition-all duration-300",et(l.claudeUsage.fiveHour)]),style:Ze({width:Ue(l.claudeUsage.fiveHour)})},null,6)]),e("span",t1,u(Pe(l.claudeUsage.fiveHour)),1)])])]),e("div",a1," 重置剩余 "+u(tt(l.claudeUsage.fiveHour)),1)]),e("div",r1,[e("div",s1,[s[93]||(s[93]=e("span",{class:"inline-flex min-w-[32px] justify-center rounded-full bg-emerald-100 px-2 py-0.5 text-[11px] font-medium text-emerald-600 dark:bg-emerald-500/20 dark:text-emerald-300"}," 7d ",-1)),e("div",l1,[e("div",o1,[e("div",n1,[e("div",{class:$(["h-2 rounded-full transition-all duration-300",et(l.claudeUsage.sevenDay)]),style:Ze({width:Ue(l.claudeUsage.sevenDay)})},null,6)]),e("span",i1,u(Pe(l.claudeUsage.sevenDay)),1)])])]),e("div",d1," 重置剩余 "+u(tt(l.claudeUsage.sevenDay)),1)]),e("div",u1,[e("div",p1,[s[94]||(s[94]=e("span",{class:"inline-flex min-w-[32px] justify-center rounded-full bg-purple-100 px-2 py-0.5 text-[11px] font-medium text-purple-600 dark:bg-purple-500/20 dark:text-purple-300"}," sonnet ",-1)),e("div",g1,[e("div",c1,[e("div",y1,[e("div",{class:$(["h-2 rounded-full transition-all duration-300",et(l.claudeUsage.sevenDayOpus)]),style:Ze({width:Ue(l.claudeUsage.sevenDayOpus)})},null,6)]),e("span",m1,u(Pe(l.claudeUsage.sevenDayOpus)),1)])])]),e("div",x1," 重置剩余 "+u(tt(l.claudeUsage.sevenDayOpus)),1)])])):!Me(l)&&l.sessionWindow&&l.sessionWindow.hasActiveWindow?(o(),n("div",f1,[l.usage&&l.usage.sessionWindow?(o(),n("div",b1,[e("div",v1,[s[95]||(s[95]=e("div",{class:"h-1.5 w-1.5 rounded-full bg-purple-500"},null,-1)),e("span",k1,u(Ye(Je)(l.usage.sessionWindow.totalTokens)),1)]),e("div",h1,[s[96]||(s[96]=e("div",{class:"h-1.5 w-1.5 rounded-full bg-green-500"},null,-1)),e("span",w1," $"+u(Ba(l.usage.sessionWindow.totalCost)),1)])])):m("",!0),e("div",$1,[e("div",A1,[e("div",{class:$(["h-2 rounded-full transition-all duration-300",Se(l.sessionWindow.sessionWindowStatus,l)]),style:Ze({width:l.sessionWindow.progress+"%"})},null,6)]),e("span",C1,u(l.sessionWindow.progress)+"% ",1)]),e("div",T1,[e("div",null,u(ca(l.sessionWindow.windowStart,l.sessionWindow.windowEnd)),1),l.sessionWindow.remainingTime>0?(o(),n("div",I1," 剩余 "+u(ya(l.sessionWindow.remainingTime)),1)):m("",!0)])])):(o(),n("div",U1,"暂无统计"))])):l.platform==="claude-console"?(o(),n("div",_1,[e("div",null,[Number(l.dailyQuota)>0?(o(),n(ke,{key:0},[e("div",K1,[s[97]||(s[97]=e("span",{class:"text-gray-600 dark:text-gray-300"},"额度进度",-1)),e("span",S1,u(Za(l).toFixed(1))+"% ",1)]),e("div",M1,[e("div",D1,[e("div",{class:$(["h-2 rounded-full transition-all duration-300",Vr(Za(l))]),style:Ze({width:Math.min(100,Za(l))+"%"})},null,6)]),e("span",P1," $"+u(Ba(((we=(te=l.usage)==null?void 0:te.daily)==null?void 0:we.cost)||0))+" / $"+u(Number(l.dailyQuota).toFixed(2)),1)]),e("div",j1,[f(" 剩余 $"+u(Rr(l))+" ",1),e("span",V1,"重置 "+u(l.quotaResetTime||"00:00"),1)])],64)):(o(),n("div",z1,s[98]||(s[98]=[e("i",{class:"fas fa-minus"},null,-1)])))]),e("div",L1,[e("div",R1,[s[99]||(s[99]=e("span",{class:"text-gray-600 dark:text-gray-300"},"并发状态",-1)),Number(l.maxConcurrentTasks||0)>0?(o(),n("span",O1,u(Xa(l).toFixed(0))+"% ",1)):m("",!0)]),Number(l.maxConcurrentTasks||0)>0?(o(),n("div",E1,[e("div",N1,[e("div",{class:$(["h-2 rounded-full transition-all duration-300",zr(Xa(l))]),style:Ze({width:Math.min(100,Xa(l))+"%"})},null,6)]),e("span",{class:$(["min-w-[48px] text-xs font-medium",Lr(l)])},u(Number(l.activeTaskCount||0))+" / "+u(Number(l.maxConcurrentTasks||0)),3)])):(o(),n("div",q1,s[100]||(s[100]=[e("i",{class:"fas fa-infinity mr-1"},null,-1),f("并发无限制 ",-1)])))])])):l.platform==="openai"?(o(),n("div",W1,[l.codexUsage?(o(),n("div",B1,[e("div",G1,[e("div",F1,[e("span",Q1,u(aa("primary")),1),e("div",H1,[e("div",J1,[e("div",Y1,[e("div",{class:$(["h-2 rounded-full transition-all duration-300",ea(l.codexUsage.primary)]),style:Ze({width:ta(l.codexUsage.primary)})},null,6)]),e("span",Z1,u(Ot(l.codexUsage.primary)),1)])])]),e("div",X1," 重置剩余 "+u(St(l.codexUsage.primary)),1)]),e("div",ek,[e("div",tk,[e("span",ak,u(aa("secondary")),1),e("div",rk,[e("div",sk,[e("div",lk,[e("div",{class:$(["h-2 rounded-full transition-all duration-300",ea(l.codexUsage.secondary)]),style:Ze({width:ta(l.codexUsage.secondary)})},null,6)]),e("span",ok,u(Ot(l.codexUsage.secondary)),1)])])]),e("div",nk," 重置剩余 "+u(St(l.codexUsage.secondary)),1)])])):(o(),n("div",ik,s[101]||(s[101]=[e("span",{class:"text-xs"},"N/A",-1)])))])):(o(),n("div",dk,s[102]||(s[102]=[e("span",{class:"text-xs"},"N/A",-1)])))]),e("td",uk,u(ja(l.lastUsedAt)),1),e("td",pk,[l.platform==="claude"||l.platform==="claude-console"||l.platform==="bedrock"||l.platform==="gemini"||l.platform==="openai"||l.platform==="openai-responses"||l.platform==="azure_openai"||l.platform==="ccr"||l.platform==="droid"||l.platform==="gemini-api"?(o(),n("div",gk,[e("div",ck,[e("div",{class:"h-2 rounded-full bg-gradient-to-r from-green-500 to-blue-600 transition-all duration-300",style:Ze({width:101-(l.priority||50)+"%"})},null,4)]),e("span",yk,u(l.priority||50),1)])):(o(),n("div",mk,s[103]||(s[103]=[e("span",{class:"text-xs"},"N/A",-1)])))]),e("td",xk,[Jt(l.proxy)?(o(),n("div",{key:0,class:"break-all rounded bg-blue-50 px-2 py-1 font-mono text-xs",title:Jt(l.proxy)},u(Jt(l.proxy)),9,fk)):(o(),n("div",bk,"无代理"))]),e("td",vk,[e("div",kk,[l.expiresAt?(o(),n("span",hk,[Or(l.expiresAt)?(o(),n("span",{key:0,class:"inline-flex cursor-pointer items-center text-red-600 hover:underline",style:{"font-size":"13px"},onClick:vt(ce=>Ga(l),["stop"])},s[104]||(s[104]=[e("i",{class:"fas fa-exclamation-circle mr-1 text-xs"},null,-1),f(" 已过期 ",-1)]),8,wk)):Er(l.expiresAt)?(o(),n("span",{key:1,class:"inline-flex cursor-pointer items-center text-orange-600 hover:underline",style:{"font-size":"13px"},onClick:vt(ce=>Ga(l),["stop"])},[s[105]||(s[105]=e("i",{class:"fas fa-clock mr-1 text-xs"},null,-1)),f(" "+u(or(l.expiresAt)),1)],8,$k)):(o(),n("span",{key:2,class:"cursor-pointer text-gray-600 hover:underline dark:text-gray-400",style:{"font-size":"13px"},onClick:vt(ce=>Ga(l),["stop"])},u(or(l.expiresAt)),9,Ak))])):(o(),n("span",{key:1,class:"inline-flex cursor-pointer items-center text-gray-400 hover:underline dark:text-gray-500",style:{"font-size":"13px"},onClick:vt(ce=>Ga(l),["stop"])},s[106]||(s[106]=[e("i",{class:"fas fa-infinity mr-1 text-xs"},null,-1),f(" 永不过期 ",-1)]),8,Ck))])]),e("td",Tk,[Re.value?(o(),n("div",Vk,[e("button",{class:$(["rounded px-2.5 py-1 text-xs font-medium transition-colors",l.isTogglingSchedulable?"cursor-not-allowed bg-gray-100 text-gray-400":l.schedulable?"bg-green-100 text-green-700 hover:bg-green-200":"bg-gray-100 text-gray-700 hover:bg-gray-200"]),disabled:l.isTogglingSchedulable,title:l.schedulable?"点击禁用调度":"点击启用调度",onClick:ce=>Xt(l)},[e("i",{class:$(["fas",l.schedulable?"fa-toggle-on":"fa-toggle-off"])},null,2),e("span",Lk,u(l.schedulable?"调度":"停用"),1)],10,zk),e("button",{class:"rounded bg-blue-100 px-2.5 py-1 text-xs font-medium text-blue-700 transition-colors hover:bg-blue-200",title:"编辑账户",onClick:ce=>Yt(l)},s[113]||(s[113]=[e("i",{class:"fas fa-edit"},null,-1),e("span",{class:"ml-1"},"编辑",-1)]),8,Rk),Ve(el,{actions:Lt(l)},null,8,["actions"])])):(o(),n("div",Ik,[zt(l)?(o(),n("button",{key:0,class:$(["rounded px-2.5 py-1 text-xs font-medium transition-colors",l.isResetting?"cursor-not-allowed bg-gray-100 text-gray-400":"bg-yellow-100 text-yellow-700 hover:bg-yellow-200"]),disabled:l.isResetting,title:l.isResetting?"重置中...":"重置所有异常状态",onClick:ce=>ba(l)},[e("i",{class:$(["fas fa-redo",l.isResetting?"animate-spin":""])},null,2),s[107]||(s[107]=e("span",{class:"ml-1"},"重置状态",-1))],10,Uk)):m("",!0),e("button",{class:$(["rounded px-2.5 py-1 text-xs font-medium transition-colors",l.isTogglingSchedulable?"cursor-not-allowed bg-gray-100 text-gray-400":l.schedulable?"bg-green-100 text-green-700 hover:bg-green-200":"bg-gray-100 text-gray-700 hover:bg-gray-200"]),disabled:l.isTogglingSchedulable,title:l.schedulable?"点击禁用调度":"点击启用调度",onClick:ce=>Xt(l)},[e("i",{class:$(["fas",l.schedulable?"fa-toggle-on":"fa-toggle-off"])},null,2),e("span",Kk,u(l.schedulable?"调度":"停用"),1)],10,_k),$t(l)?(o(),n("button",{key:1,class:"rounded bg-indigo-100 px-2.5 py-1 text-xs font-medium text-indigo-700 transition-colors hover:bg-indigo-200",title:"查看使用详情",onClick:ce=>It(l)},s[108]||(s[108]=[e("i",{class:"fas fa-chart-line"},null,-1),e("span",{class:"ml-1"},"详情",-1)]),8,Sk)):m("",!0),At(l)?(o(),n("button",{key:2,class:"rounded bg-cyan-100 px-2.5 py-1 text-xs font-medium text-cyan-700 transition-colors hover:bg-cyan-200 dark:bg-cyan-900/40 dark:text-cyan-300 dark:hover:bg-cyan-800/50",title:"测试账户连通性",onClick:ce=>Ct(l)},s[109]||(s[109]=[e("i",{class:"fas fa-vial"},null,-1),e("span",{class:"ml-1"},"测试",-1)]),8,Mk)):m("",!0),At(l)?(o(),n("button",{key:3,class:"rounded bg-amber-100 px-2.5 py-1 text-xs font-medium text-amber-700 transition-colors hover:bg-amber-200 dark:bg-amber-900/40 dark:text-amber-300 dark:hover:bg-amber-800/50",title:"定时测试配置",onClick:ce=>Ut(l)},s[110]||(s[110]=[e("i",{class:"fas fa-clock"},null,-1),e("span",{class:"ml-1"},"定时",-1)]),8,Dk)):m("",!0),e("button",{class:"rounded bg-blue-100 px-2.5 py-1 text-xs font-medium text-blue-700 transition-colors hover:bg-blue-200",title:"编辑账户",onClick:ce=>Yt(l)},s[111]||(s[111]=[e("i",{class:"fas fa-edit"},null,-1),e("span",{class:"ml-1"},"编辑",-1)]),8,Pk),e("button",{class:"rounded bg-red-100 px-2.5 py-1 text-xs font-medium text-red-700 transition-colors hover:bg-red-200",title:"删除账户",onClick:ce=>Zt(l)},s[112]||(s[112]=[e("i",{class:"fas fa-trash"},null,-1),e("span",{class:"ml-1"},"删除",-1)]),8,jk)]))])])}),128))])])],512)])),!P.value&&yt.value.length>0?(o(),n("div",Ok,[(o(!0),n(ke,null,Ne(pt.value,l=>{var te,we,ce,Te;return o(),n("div",{key:l.id,class:"card p-4 transition-shadow hover:shadow-lg"},[e("div",Ek,[e("div",Nk,[B.value?b((o(),n("input",{key:0,"onUpdate:modelValue":s[17]||(s[17]=ee=>oe.value=ee),class:"mt-1 h-4 w-4 rounded border-gray-300 text-blue-600 focus:ring-blue-500",type:"checkbox",value:l.id,onChange:rt},null,40,qk)),[[je,oe.value]]):m("",!0),e("div",{class:$(["flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-lg",l.platform==="claude"?"bg-gradient-to-br from-purple-500 to-purple-600":l.platform==="bedrock"?"bg-gradient-to-br from-orange-500 to-red-600":l.platform==="azure_openai"?"bg-gradient-to-br from-blue-500 to-cyan-600":l.platform==="openai"?"bg-gradient-to-br from-gray-600 to-gray-700":l.platform==="ccr"?"bg-gradient-to-br from-teal-500 to-emerald-600":l.platform==="droid"?"bg-gradient-to-br from-cyan-500 to-sky-600":"bg-gradient-to-br from-blue-500 to-blue-600"])},[e("i",{class:$(["text-sm text-white",l.platform==="claude"?"fas fa-brain":l.platform==="bedrock"?"fab fa-aws":l.platform==="azure_openai"?"fab fa-microsoft":l.platform==="openai"?"fas fa-openai":l.platform==="ccr"?"fas fa-code-branch":(l.platform==="droid","fas fa-robot")])},null,2)],2),e("div",null,[e("h4",{class:"cursor-pointer text-sm font-semibold text-gray-900 hover:text-blue-600 dark:hover:text-blue-400",title:"点击复制",onClick:vt(ee=>Ye(cr)(l.name||l.email),["stop"])},u(l.name||l.email),9,Wk),e("div",Bk,[e("span",Gk,u(l.platform),1),s[114]||(s[114]=e("span",{class:"text-xs text-gray-400"},"|",-1)),e("span",Fk,u(l.type),1)])])]),e("span",{class:$(["inline-flex items-center rounded-full px-2 py-1 text-xs font-semibold",$e(l)])},[e("div",{class:$(["mr-1.5 h-1.5 w-1.5 rounded-full",J(l)])},null,2),f(" "+u(L(l)),1)],2)]),e("div",Qk,[e("div",null,[s[118]||(s[118]=e("p",{class:"text-xs text-gray-500 dark:text-gray-400"},"今日使用",-1)),e("div",Hk,[e("div",Jk,[s[115]||(s[115]=e("div",{class:"h-1.5 w-1.5 rounded-full bg-blue-500"},null,-1)),e("p",Yk,u(((we=(te=l.usage)==null?void 0:te.daily)==null?void 0:we.requests)||0)+" 次 ",1)]),e("div",Zk,[s[116]||(s[116]=e("div",{class:"h-1.5 w-1.5 rounded-full bg-purple-500"},null,-1)),e("p",Xk,u(Ye(Je)(((Te=(ce=l.usage)==null?void 0:ce.daily)==null?void 0:Te.allTokens)||0)),1)]),e("div",e2,[s[117]||(s[117]=e("div",{class:"h-1.5 w-1.5 rounded-full bg-green-500"},null,-1)),e("p",t2," $"+u(lr(l)),1)])])]),e("div",null,[s[121]||(s[121]=e("p",{class:"text-xs text-gray-500 dark:text-gray-400"},"会话窗口",-1)),l.usage&&l.usage.sessionWindow?(o(),n("div",a2,[e("div",r2,[s[119]||(s[119]=e("div",{class:"h-1.5 w-1.5 rounded-full bg-purple-500"},null,-1)),e("p",s2,u(Ye(Je)(l.usage.sessionWindow.totalTokens)),1)]),e("div",l2,[s[120]||(s[120]=e("div",{class:"h-1.5 w-1.5 rounded-full bg-green-500"},null,-1)),e("p",o2," $"+u(Ba(l.usage.sessionWindow.totalCost)),1)])])):(o(),n("div",n2,"-"))])]),e("div",i2,[s[122]||(s[122]=e("p",{class:"mb-1 text-xs text-gray-500 dark:text-gray-400"},"余额/配额",-1)),Ve(fr,{"account-id":l.id,"initial-balance":l.balanceInfo,platform:l.platform,"query-mode":l.platform==="gemini"&&l.oauthProvider==="antigravity"?"auto":"local",onError:ee=>ia(l.id,ee),onRefreshed:ee=>Qt(l.id,ee)},null,8,["account-id","initial-balance","platform","query-mode","onError","onRefreshed"]),e("div",d2,[l.platform==="gemini"&&l.oauthProvider==="antigravity"?m("",!0):(o(),n("button",{key:0,class:"text-blue-500 hover:underline dark:text-blue-300",onClick:ee=>$a(l)}," 配置余额脚本 ",8,u2))])]),e("div",p2,[l.platform==="claude"?(o(),n("div",g2,[Me(l)&&l.claudeUsage?(o(),n("div",c2,[e("div",y2,[e("div",m2,[s[123]||(s[123]=e("span",{class:"inline-flex min-w-[32px] justify-center rounded-full bg-indigo-100 px-2 py-0.5 text-[11px] font-medium text-indigo-600 dark:bg-indigo-500/20 dark:text-indigo-300"}," 5h ",-1)),e("div",x2,[e("div",f2,[e("div",b2,[e("div",{class:$(["h-2 rounded-full transition-all duration-300",et(l.claudeUsage.fiveHour)]),style:Ze({width:Ue(l.claudeUsage.fiveHour)})},null,6)]),e("span",v2,u(Pe(l.claudeUsage.fiveHour)),1)])])]),e("div",k2," 重置剩余 "+u(tt(l.claudeUsage.fiveHour)),1)]),e("div",h2,[e("div",w2,[s[124]||(s[124]=e("span",{class:"inline-flex min-w-[32px] justify-center rounded-full bg-emerald-100 px-2 py-0.5 text-[11px] font-medium text-emerald-600 dark:bg-emerald-500/20 dark:text-emerald-300"}," 7d ",-1)),e("div",$2,[e("div",A2,[e("div",C2,[e("div",{class:$(["h-2 rounded-full transition-all duration-300",et(l.claudeUsage.sevenDay)]),style:Ze({width:Ue(l.claudeUsage.sevenDay)})},null,6)]),e("span",T2,u(Pe(l.claudeUsage.sevenDay)),1)])])]),e("div",I2," 重置剩余 "+u(tt(l.claudeUsage.sevenDay)),1)]),e("div",U2,[e("div",_2,[s[125]||(s[125]=e("span",{class:"inline-flex min-w-[32px] justify-center rounded-full bg-purple-100 px-2 py-0.5 text-[11px] font-medium text-purple-600 dark:bg-purple-500/20 dark:text-purple-300"}," Opus ",-1)),e("div",K2,[e("div",S2,[e("div",M2,[e("div",{class:$(["h-2 rounded-full transition-all duration-300",et(l.claudeUsage.sevenDayOpus)]),style:Ze({width:Ue(l.claudeUsage.sevenDayOpus)})},null,6)]),e("span",D2,u(Pe(l.claudeUsage.sevenDayOpus)),1)])])]),e("div",P2," 重置剩余 "+u(tt(l.claudeUsage.sevenDayOpus)),1)])])):!Me(l)&&l.sessionWindow&&l.sessionWindow.hasActiveWindow?(o(),n("div",j2,[e("div",V2,[e("div",z2,[s[127]||(s[127]=e("span",{class:"font-medium text-gray-600 dark:text-gray-300"},"会话窗口",-1)),Ve(x,{content:"会话窗口进度不代表使用量,仅表示距离下一个5小时窗口的剩余时间",placement:"top"},{default:ot(()=>s[126]||(s[126]=[e("i",{class:"fas fa-question-circle cursor-help text-xs text-gray-400 hover:text-gray-600"},null,-1)])),_:1,__:[126]})]),e("span",L2,u(l.sessionWindow.progress)+"% ",1)]),e("div",R2,[e("div",{class:$(["h-full transition-all duration-300",Se(l.sessionWindow.sessionWindowStatus,l)]),style:Ze({width:l.sessionWindow.progress+"%"})},null,6)]),e("div",O2,[e("span",E2,u(ca(l.sessionWindow.windowStart,l.sessionWindow.windowEnd)),1),l.sessionWindow.remainingTime>0?(o(),n("span",N2," 剩余 "+u(ya(l.sessionWindow.remainingTime)),1)):(o(),n("span",q2," 已结束 "))])])):(o(),n("div",W2,"暂无统计"))])):l.platform==="openai"?(o(),n("div",B2,[l.codexUsage?(o(),n("div",G2,[e("div",F2,[e("div",Q2,[e("span",H2,u(aa("primary")),1),e("div",J2,[e("div",Y2,[e("div",Z2,[e("div",{class:$(["h-2 rounded-full transition-all duration-300",ea(l.codexUsage.primary)]),style:Ze({width:ta(l.codexUsage.primary)})},null,6)]),e("span",X2,u(Ot(l.codexUsage.primary)),1)])])]),e("div",e3," 重置剩余 "+u(St(l.codexUsage.primary)),1)]),e("div",t3,[e("div",a3,[e("span",r3,u(aa("secondary")),1),e("div",s3,[e("div",l3,[e("div",o3,[e("div",{class:$(["h-2 rounded-full transition-all duration-300",ea(l.codexUsage.secondary)]),style:Ze({width:ta(l.codexUsage.secondary)})},null,6)]),e("span",n3,u(Ot(l.codexUsage.secondary)),1)])])]),e("div",i3," 重置剩余 "+u(St(l.codexUsage.secondary)),1)])])):m("",!0),l.codexUsage?m("",!0):(o(),n("div",d3,"暂无统计"))])):m("",!0),e("div",u3,[s[128]||(s[128]=e("span",{class:"text-gray-500 dark:text-gray-400"},"最后使用",-1)),e("span",p3,u(l.lastUsedAt?Ye(Qs)(l.lastUsedAt):"从未使用"),1)]),l.proxyConfig&&l.proxyConfig.type!=="none"?(o(),n("div",g3,[s[129]||(s[129]=e("span",{class:"text-gray-500 dark:text-gray-400"},"代理",-1)),e("span",c3,u(l.proxyConfig.type.toUpperCase()),1)])):m("",!0),e("div",y3,[s[130]||(s[130]=e("span",{class:"text-gray-500 dark:text-gray-400"},"优先级",-1)),e("span",m3,u(l.priority||50),1)])]),e("div",x3,[e("button",{class:$(["flex flex-1 items-center justify-center gap-1 rounded-lg px-3 py-2 text-xs transition-colors",l.schedulable?"bg-gray-50 text-gray-600 hover:bg-gray-100":"bg-green-50 text-green-600 hover:bg-green-100"]),disabled:l.isTogglingSchedulable,onClick:ee=>Xt(l)},[e("i",{class:$(["fas",l.schedulable?"fa-pause":"fa-play"])},null,2),f(" "+u(l.schedulable?"暂停":"启用"),1)],10,f3),$t(l)?(o(),n("button",{key:0,class:"flex flex-1 items-center justify-center gap-1 rounded-lg bg-indigo-50 px-3 py-2 text-xs text-indigo-600 transition-colors hover:bg-indigo-100",onClick:ee=>It(l)},s[131]||(s[131]=[e("i",{class:"fas fa-chart-line"},null,-1),f(" 详情 ",-1)]),8,b3)):m("",!0),At(l)?(o(),n("button",{key:1,class:"flex flex-1 items-center justify-center gap-1 rounded-lg bg-cyan-50 px-3 py-2 text-xs text-cyan-600 transition-colors hover:bg-cyan-100 dark:bg-cyan-900/40 dark:text-cyan-300 dark:hover:bg-cyan-800/50",onClick:ee=>Ct(l)},s[132]||(s[132]=[e("i",{class:"fas fa-vial"},null,-1),f(" 测试 ",-1)]),8,v3)):m("",!0),At(l)?(o(),n("button",{key:2,class:"flex flex-1 items-center justify-center gap-1 rounded-lg bg-amber-50 px-3 py-2 text-xs text-amber-600 transition-colors hover:bg-amber-100 dark:bg-amber-900/40 dark:text-amber-300 dark:hover:bg-amber-800/50",onClick:ee=>Ut(l)},s[133]||(s[133]=[e("i",{class:"fas fa-clock"},null,-1),f(" 定时 ",-1)]),8,k3)):m("",!0),e("button",{class:"flex-1 rounded-lg bg-gray-50 px-3 py-2 text-xs text-gray-600 transition-colors hover:bg-gray-100",onClick:ee=>Yt(l)},s[134]||(s[134]=[e("i",{class:"fas fa-edit mr-1"},null,-1),f(" 编辑 ",-1)]),8,h3),e("button",{class:"rounded-lg bg-red-50 px-3 py-2 text-xs text-red-600 transition-colors hover:bg-red-100",onClick:ee=>Zt(l)},s[135]||(s[135]=[e("i",{class:"fas fa-trash"},null,-1)]),8,w3)])])}),128))])):m("",!0)]),!P.value&&yt.value.length>0?(o(),n("div",$3,[e("div",A3,[e("span",C3," 共 "+u(yt.value.length)+" 条记录 ",1),e("div",T3,[s[136]||(s[136]=e("span",{class:"text-xs text-gray-600 dark:text-gray-400 sm:text-sm"},"每页显示",-1)),b(e("select",{"onUpdate:modelValue":s[18]||(s[18]=l=>le.value=l),class:"rounded-md border border-gray-200 bg-white px-2 py-1 text-xs text-gray-700 transition-colors hover:border-gray-300 focus:border-transparent focus:outline-none focus:ring-2 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:border-gray-500 sm:text-sm",onChange:s[19]||(s[19]=l=>ae.value=1)},[(o(),n(ke,null,Ne(de,l=>e("option",{key:l,value:l},u(l),9,I3)),64))],544),[[wa,le.value]]),s[137]||(s[137]=e("span",{class:"text-xs text-gray-600 dark:text-gray-400 sm:text-sm"},"条",-1))])]),e("div",U3,[e("button",{class:"rounded-md border border-gray-300 bg-white px-3 py-1.5 text-xs font-medium text-gray-700 hover:bg-gray-50 disabled:cursor-not-allowed disabled:opacity-50 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700 sm:py-1 sm:text-sm",disabled:ae.value===1,onClick:s[20]||(s[20]=l=>ae.value--)},s[138]||(s[138]=[e("i",{class:"fas fa-chevron-left"},null,-1)]),8,_3),e("div",K3,[mt.value?(o(),n("button",{key:0,class:"hidden rounded-md border border-gray-300 bg-white px-3 py-1 text-sm font-medium text-gray-700 hover:bg-gray-50 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700 sm:block",onClick:s[21]||(s[21]=l=>ae.value=1)}," 1 ")):m("",!0),Ta.value?(o(),n("span",S3," ... ")):m("",!0),(o(!0),n(ke,null,Ne(_t.value,l=>(o(),n("button",{key:l,class:$(["rounded-md border px-3 py-1 text-xs font-medium transition-colors sm:text-sm",l===ae.value?"border-blue-500 bg-blue-50 text-blue-600 dark:border-blue-400 dark:bg-blue-500/10 dark:text-blue-300":"border-gray-300 bg-white text-gray-700 hover:bg-gray-50 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700"]),onClick:te=>ae.value=l},u(l),11,M3))),128)),Ia.value?(o(),n("span",D3," ... ")):m("",!0),oa.value?(o(),n("button",{key:3,class:"hidden rounded-md border border-gray-300 bg-white px-3 py-1 text-sm font-medium text-gray-700 hover:bg-gray-50 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700 sm:block",onClick:s[22]||(s[22]=l=>ae.value=De.value)},u(De.value),1)):m("",!0)]),e("button",{class:"rounded-md border border-gray-300 bg-white px-3 py-1.5 text-xs font-medium text-gray-700 hover:bg-gray-50 disabled:cursor-not-allowed disabled:opacity-50 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700 sm:py-1 sm:text-sm",disabled:ae.value===De.value||De.value===0,onClick:s[23]||(s[23]=l=>ae.value++)},s[139]||(s[139]=[e("i",{class:"fas fa-chevron-right"},null,-1)]),8,P3)])])):m("",!0),q.value&&(!Ee.value||Ee.value!=="ccr")?(o(),Xe(mr,{key:1,onClose:ma,onPlatformChanged:s[24]||(s[24]=l=>Ee.value=l),onSuccess:d})):q.value&&Ee.value==="ccr"?(o(),Xe(xr,{key:2,onClose:ma,onSuccess:d})):m("",!0),We.value&&ut.value&&ut.value.platform==="ccr"?(o(),Xe(xr,{key:3,account:ut.value,onClose:s[25]||(s[25]=l=>We.value=!1),onSuccess:t},null,8,["account"])):We.value?(o(),Xe(mr,{key:4,account:ut.value,onClose:s[26]||(s[26]=l=>We.value=!1),onSuccess:t},null,8,["account"])):m("",!0),Ve(Ja,{"cancel-text":c.value.cancelText,"confirm-text":c.value.confirmText,message:c.value.message,show:_e.value,title:c.value.title,onCancel:T,onConfirm:_},null,8,["cancel-text","confirm-text","message","show","title"]),H.value?(o(),Xe(Fm,{key:5,account:X.value||{},"generated-at":Ce.value,history:C.value,loading:h.value,overview:K.value,show:H.value,summary:G.value,onClose:it},null,8,["account","generated-at","history","loading","overview","show","summary"])):m("",!0),Ve(xx,{ref_key:"expiryEditModalRef",ref:Fe,account:Ke.value||{id:null,expiresAt:null,name:""},show:!!Ke.value,onClose:nr,onSave:Nr},null,8,["account","show"]),Ve(Wx,{account:xe.value,show:Qe.value,onClose:Wt},null,8,["account","show"]),Ve(kf,{account:a.value,show:g.value,onClose:Bt,onSaved:Gt},null,8,["account","show"]),Ve(yb,{account:Rt.value,show:Ft.value,onClose:Aa,onSaved:Ca},null,8,["account","show"]),Ve(w,{modelValue:U.value,"onUpdate:modelValue":s[27]||(s[27]=l=>U.value=l),style:{maxWidth:"1200px"},title:"账户统计汇总",width:"90%"},{default:ot(()=>[e("div",j3,[e("div",V3,[e("table",z3,[s[141]||(s[141]=e("thead",{class:"bg-gray-100 dark:bg-gray-700"},[e("tr",null,[e("th",{class:"border border-gray-300 px-4 py-2 text-left dark:border-gray-600"}," 平台类型 "),e("th",{class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"}," 正常 "),e("th",{class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"}," 不可调度 "),e("th",{class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"}," 限流0-1h "),e("th",{class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"}," 限流1-5h "),e("th",{class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"}," 限流5-12h "),e("th",{class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"}," 限流12-24h "),e("th",{class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"}," 限流>24h "),e("th",{class:"border border-gray-300 px-4 py-2 text-center dark:border-gray-600"}," 其他 "),e("th",{class:"border border-gray-300 bg-blue-50 px-4 py-2 text-center font-bold dark:border-gray-600 dark:bg-blue-900/30"}," 合计 ")])],-1)),e("tbody",null,[(o(!0),n(ke,null,Ne(la.value,l=>(o(),n("tr",{key:l.platform},[e("td",L3,u(l.platformLabel),1),e("td",R3,[e("span",O3,u(l.normal),1)]),e("td",E3,[e("span",N3,u(l.unschedulable),1)]),e("td",q3,[e("span",W3,u(l.rateLimit0_1h),1)]),e("td",B3,[e("span",G3,u(l.rateLimit1_5h),1)]),e("td",F3,[e("span",Q3,u(l.rateLimit5_12h),1)]),e("td",H3,[e("span",J3,u(l.rateLimit12_24h),1)]),e("td",Y3,[e("span",Z3,u(l.rateLimitOver24h),1)]),e("td",X3,[e("span",e5,u(l.other),1)]),e("td",t5,u(l.total),1)]))),128)),e("tr",a5,[s[140]||(s[140]=e("td",{class:"border border-gray-300 px-4 py-2 dark:border-gray-600"},"合计",-1)),e("td",r5,[e("span",s5,u(dt.value.normal),1)]),e("td",l5,[e("span",o5,u(dt.value.unschedulable),1)]),e("td",n5,[e("span",i5,u(dt.value.rateLimit0_1h),1)]),e("td",d5,[e("span",u5,u(dt.value.rateLimit1_5h),1)]),e("td",p5,[e("span",g5,u(dt.value.rateLimit5_12h),1)]),e("td",c5,[e("span",y5,u(dt.value.rateLimit12_24h),1)]),e("td",m5,[e("span",x5,u(dt.value.rateLimitOver24h),1)]),e("td",f5,[e("span",b5,u(dt.value.other),1)]),e("td",v5,u(dt.value.total),1)])])])]),s[142]||(s[142]=e("p",{class:"text-sm text-gray-500 dark:text-gray-400"}," 注:限流时间列表示剩余限流时间在指定范围内的账户数量 ",-1))])]),_:1},8,["modelValue"]),re.value?(o(),Xe(jr,{key:6,onClose:s[28]||(s[28]=l=>re.value=!1),onRefresh:pa})):m("",!0)])}}},U5=sa(k5,[["__scopeId","data-v-f3c6543e"]]);export{U5 as default}; diff --git a/web/admin-spa/dist/assets/ActionDropdown-BAe-X9zd.css b/web/admin-spa/dist/assets/ActionDropdown-BAe-X9zd.css new file mode 100644 index 00000000..270f0c8e --- /dev/null +++ b/web/admin-spa/dist/assets/ActionDropdown-BAe-X9zd.css @@ -0,0 +1 @@ +.max-h-60[data-v-8ae1c2f4]::-webkit-scrollbar{width:6px}.max-h-60[data-v-8ae1c2f4]::-webkit-scrollbar-track{background:#f3f4f6;border-radius:3px}.max-h-60[data-v-8ae1c2f4]::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.max-h-60[data-v-8ae1c2f4]::-webkit-scrollbar-thumb:hover{background:#9ca3af} diff --git a/web/admin-spa/dist/assets/ActionDropdown-GADQlLlI.js b/web/admin-spa/dist/assets/ActionDropdown-GADQlLlI.js deleted file mode 100644 index aef3e0e2..00000000 --- a/web/admin-spa/dist/assets/ActionDropdown-GADQlLlI.js +++ /dev/null @@ -1 +0,0 @@ -import{r as f,c as F,q as O,Z as W,x as s,y as l,z as u,I as H,L,C as v,P as z,R as N,J as T,B,Q as q,ac as I,T as M,a5 as P,D as G,Y as D}from"./vue-vendor-DV7DYXbz.js";import{_ as J}from"./index-BahP9Xx9.js";const Q={class:"relative"},U={class:"select-none whitespace-nowrap text-sm font-medium text-gray-700 dark:text-gray-200"},Y={class:"max-h-60 overflow-y-auto py-1"},Z=["onClick"],K={key:1,class:"fas fa-check ml-auto pl-3 text-xs text-blue-600 dark:text-blue-400"},X={__name:"CustomDropdown",props:{modelValue:{type:[String,Number,Array],default:""},options:{type:Array,required:!0},placeholder:{type:String,default:"请选择"},icon:{type:String,default:""},iconColor:{type:String,default:"text-gray-500"},multiple:{type:Boolean,default:!1}},emits:["update:modelValue","change"],setup(g,{emit:A}){const n=g,o=A,a=f(!1),i=f(null),y=f(null),E=f({}),b=e=>n.multiple?Array.isArray(n.modelValue)&&n.modelValue.includes(e):n.modelValue===e,R=F(()=>{if(n.multiple){const r=Array.isArray(n.modelValue)?n.modelValue.length:0;return r>0?`已选 ${r} 个`:""}const e=n.options.find(r=>r.value===n.modelValue);return e?e.label:""}),S=async()=>{a.value=!a.value,a.value&&(await G(),h())},d=()=>{a.value=!1},$=e=>{if(n.multiple){const r=Array.isArray(n.modelValue)?[...n.modelValue]:[],t=r.indexOf(e.value);t>=0?r.splice(t,1):r.push(e.value),o("update:modelValue",r),o("change",r)}else o("update:modelValue",e.value),o("change",e.value),d()},h=()=>{if(!i.value||!a.value)return;const e=i.value.getBoundingClientRect(),r=250,t=window.innerHeight-e.bottom,c=e.top;let m,p;t>=r||t>=c?m=e.bottom+8:m=e.top-r-8,p=e.left;const V=200;p+V>window.innerWidth&&(p=window.innerWidth-V-10),p<10&&(p=10),E.value={top:`${m}px`,left:`${p}px`,minWidth:`${e.width}px`}},x=()=>{a.value&&h()},k=()=>{a.value&&d()},_=e=>{!i.value||!a.value||i.value.contains(e.target)||(y.value&&!y.value.contains(e.target)?d():y.value||d())};return O(()=>{window.addEventListener("scroll",x,!0),window.addEventListener("resize",k),document.addEventListener("click",_)}),W(()=>{window.removeEventListener("scroll",x,!0),window.removeEventListener("resize",k),document.removeEventListener("click",_)}),(e,r)=>(l(),s("div",Q,[u("div",{ref_key:"triggerRef",ref:i,class:v(["relative flex cursor-pointer items-center gap-2 rounded-lg border border-gray-200 bg-white px-3 py-2 shadow-sm transition-all duration-200 hover:shadow-md dark:border-gray-600 dark:bg-gray-800",[a.value&&"border-blue-400 shadow-md"]]),onClick:S},[g.icon?(l(),s("i",{key:0,class:v(["fas",g.icon,"text-sm",g.iconColor])},null,2)):L("",!0),u("span",U,z(R.value||g.placeholder),1),u("i",{class:v(["fas fa-chevron-down ml-auto text-xs text-gray-400 transition-transform duration-200 dark:text-gray-500",a.value&&"rotate-180"])},null,2)],2),(l(),H(P,{to:"body"},[N(M,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"transform scale-95 opacity-0","enter-to-class":"transform scale-100 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"transform scale-100 opacity-100","leave-to-class":"transform scale-95 opacity-0"},{default:T(()=>[a.value?(l(),s("div",{key:0,ref_key:"dropdownRef",ref:y,class:"fixed z-[9999] min-w-max overflow-hidden rounded-lg border border-gray-200 bg-white shadow-lg dark:border-gray-600 dark:bg-gray-800",style:B(E.value)},[u("div",Y,[(l(!0),s(q,null,I(g.options,t=>(l(),s("div",{key:t.value,class:v(["flex cursor-pointer items-center gap-2 whitespace-nowrap py-2 text-sm transition-colors duration-150",[b(t.value)?"bg-blue-50 font-medium text-blue-700 dark:bg-blue-900/30 dark:text-blue-400":t.isGroup?"bg-gray-50 font-semibold text-gray-800 dark:bg-gray-700/50 dark:text-gray-200":"text-gray-700 hover:bg-gray-50 dark:text-gray-300 dark:hover:bg-gray-700"]]),style:B({paddingLeft:t.indent?`${12+t.indent*16}px`:"12px",paddingRight:"12px"}),onClick:c=>$(t)},[t.icon?(l(),s("i",{key:0,class:v(["fas",t.icon,"text-xs"])},null,2)):L("",!0),u("span",null,z(t.label),1),b(t.value)?(l(),s("i",K)):L("",!0)],14,Z))),128))])],4)):L("",!0)]),_:1})]))]))}},oe=J(X,[["__scopeId","data-v-8ae1c2f4"]]),ee={class:"relative"},te=["onClick"],ne={__name:"ActionDropdown",props:{actions:{type:Array,required:!0}},emits:["action"],setup(g,{emit:A}){const n=A,o=f(!1),a=f(null),i=f(null),y=f({}),E=e=>{const r={purple:"text-purple-600 hover:bg-purple-50 dark:text-purple-400 dark:hover:bg-purple-900/20",indigo:"text-indigo-600 hover:bg-indigo-50 dark:text-indigo-400 dark:hover:bg-indigo-900/20",blue:"text-blue-600 hover:bg-blue-50 dark:text-blue-400 dark:hover:bg-blue-900/20",green:"text-green-600 hover:bg-green-50 dark:text-green-400 dark:hover:bg-green-900/20",orange:"text-orange-600 hover:bg-orange-50 dark:text-orange-400 dark:hover:bg-orange-900/20",red:"text-red-600 hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-900/20",gray:"text-gray-600 hover:bg-gray-50 dark:text-gray-400 dark:hover:bg-gray-700"};return r[e.color]||r.gray},b=Symbol("action-dropdown"),R=e=>{var r;((r=e==null?void 0:e.detail)==null?void 0:r.id)!==b&&d()},S=async()=>{o.value||window.dispatchEvent(new CustomEvent("action-dropdown-open",{detail:{id:b}})),o.value=!o.value,o.value&&(await G(),h())},d=()=>{o.value=!1},$=e=>{d(),e.handler&&e.handler(),n("action",e.key)},h=()=>{if(!a.value||!o.value)return;const e=a.value.getBoundingClientRect(),r=200,t=180,c=8,m=window.innerHeight-e.bottom,p=e.top,V=window.innerWidth-e.right,j=e.left;let C,w;m>=r||m>=p?C=e.bottom+c:C=e.top-r-c,V>=t+c?w=e.right+c:j>=t+c?w=e.left-t-c+e.width:w=window.innerWidth-t-10,w<10&&(w=10),C<10&&(C=10),y.value={top:`${C}px`,left:`${w}px`}},x=()=>{o.value&&h()},k=()=>{o.value&&d()},_=e=>{!a.value||!o.value||a.value.contains(e.target)||(i.value&&!i.value.contains(e.target)?d():i.value||d())};return O(()=>{window.addEventListener("scroll",x,!0),window.addEventListener("resize",k),document.addEventListener("click",_),window.addEventListener("action-dropdown-open",R)}),W(()=>{window.removeEventListener("scroll",x,!0),window.removeEventListener("resize",k),document.removeEventListener("click",_),window.removeEventListener("action-dropdown-open",R)}),(e,r)=>(l(),s("div",ee,[u("button",{ref_key:"triggerRef",ref:a,class:v(["flex h-8 w-8 items-center justify-center rounded-lg border border-gray-200 bg-white text-gray-600 transition-all duration-200 hover:border-gray-300 hover:bg-gray-50 hover:text-gray-900 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-400 dark:hover:border-gray-500 dark:hover:bg-gray-700 dark:hover:text-gray-200",[o.value&&"border-blue-400 bg-blue-50 text-blue-600 dark:border-blue-500 dark:bg-blue-900/30 dark:text-blue-400"]]),title:"更多操作",onClick:D(S,["stop"])},r[0]||(r[0]=[u("i",{class:"fas fa-ellipsis-v text-sm"},null,-1)]),2),(l(),H(P,{to:"body"},[N(M,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"transform scale-95 opacity-0","enter-to-class":"transform scale-100 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"transform scale-100 opacity-100","leave-to-class":"transform scale-95 opacity-0"},{default:T(()=>[o.value?(l(),s("div",{key:0,ref_key:"dropdownRef",ref:i,class:"fixed z-[9999] min-w-[140px] overflow-hidden rounded-lg border border-gray-200 bg-white py-1 shadow-lg dark:border-gray-600 dark:bg-gray-800",style:B(y.value)},[(l(!0),s(q,null,I(g.actions,t=>(l(),s("button",{key:t.key,class:v(["flex w-full items-center gap-2 whitespace-nowrap px-3 py-2 text-left text-sm transition-colors duration-150",E(t)]),onClick:D(c=>$(t),["stop"])},[u("i",{class:v(["fas",t.icon,"w-4 text-center text-xs"])},null,2),u("span",null,z(t.label),1)],10,te))),128))],4)):L("",!0)]),_:1})]))]))}};export{oe as C,ne as _}; diff --git a/web/admin-spa/dist/assets/ApiKeyUsageRecordsView-DEBCoJV1.js b/web/admin-spa/dist/assets/ApiKeyUsageRecordsView-DEBCoJV1.js deleted file mode 100644 index d34e476a..00000000 --- a/web/admin-spa/dist/assets/ApiKeyUsageRecordsView-DEBCoJV1.js +++ /dev/null @@ -1,2 +0,0 @@ -import{E as le,a as ne,b as de,c as ie,d as ce}from"./element-plus-BSjV1f9S.js";import{b as A}from"./vendor-Dr8jvgFu.js";import{c as F,aX as ge,r as b,_ as z,o as H,q as ue,x as c,z as e,R as p,P as o,u as i,J as h,O as C,Q as $,ac as O,aU as pe,y as d,I as L}from"./vue-vendor-DV7DYXbz.js";import{c as I,f as x,a3 as J,s as N}from"./index-BahP9Xx9.js";import{R as xe}from"./RecordDetailModal-iWzEw88d.js";const ye={class:"space-y-4 p-4 lg:p-6"},me={class:"flex flex-wrap items-center justify-between gap-3"},ke={class:"flex items-center gap-3"},fe={class:"text-xl font-bold text-gray-900 dark:text-gray-100"},_e={class:"text-xs text-gray-500 dark:text-gray-400"},ve={class:"flex items-center gap-2 text-sm text-gray-500 dark:text-gray-400"},be={key:0},he={key:1},we={class:"grid gap-3 md:grid-cols-2 xl:grid-cols-4"},Re={class:"rounded-xl border border-gray-200 bg-white p-4 shadow-sm dark:border-gray-800 dark:bg-gray-900"},Te={class:"mt-1 text-2xl font-bold text-gray-900 dark:text-gray-100"},Ce={class:"rounded-xl border border-gray-200 bg-white p-4 shadow-sm dark:border-gray-800 dark:bg-gray-900"},Ie={class:"mt-1 text-2xl font-bold text-gray-900 dark:text-gray-100"},Se={class:"rounded-xl border border-gray-200 bg-white p-4 shadow-sm dark:border-gray-800 dark:bg-gray-900"},De={class:"mt-1 text-2xl font-bold text-yellow-600 dark:text-yellow-400"},Pe={class:"rounded-xl border border-gray-200 bg-white p-4 shadow-sm dark:border-gray-800 dark:bg-gray-900"},Ve={class:"mt-1 text-2xl font-bold text-gray-900 dark:text-gray-100"},ze={class:"rounded-xl border border-gray-200 bg-white p-4 shadow-sm dark:border-gray-800 dark:bg-gray-900"},$e={class:"flex flex-wrap items-center gap-3"},Oe={class:"rounded-xl border border-gray-200 bg-white shadow-sm dark:border-gray-800 dark:bg-gray-900"},Ne={key:0,class:"flex items-center justify-center p-10 text-gray-500 dark:text-gray-400"},Ue={key:1},je={key:0,class:"flex flex-col items-center gap-2 p-10 text-gray-500 dark:text-gray-400"},Ee={key:1,class:"space-y-4"},Fe={class:"hidden overflow-x-auto md:block"},Ye={class:"min-w-full divide-y divide-gray-200 dark:divide-gray-800"},Be={class:"divide-y divide-gray-200 bg-white dark:divide-gray-800 dark:bg-gray-900"},Ke={class:"whitespace-nowrap px-4 py-3 text-sm text-gray-800 dark:text-gray-100"},Me={class:"px-4 py-3 text-sm text-gray-800 dark:text-gray-100"},qe={class:"flex flex-col"},Ae={class:"font-semibold"},He={class:"text-xs text-gray-500 dark:text-gray-400"},Le={class:"whitespace-nowrap px-4 py-3 text-sm text-gray-800 dark:text-gray-100"},Je={class:"whitespace-nowrap px-4 py-3 text-sm text-blue-600 dark:text-blue-400"},Qe={class:"whitespace-nowrap px-4 py-3 text-sm text-green-600 dark:text-green-400"},Xe={class:"whitespace-nowrap px-4 py-3 text-sm text-purple-600 dark:text-purple-400"},Ze={class:"whitespace-nowrap px-4 py-3 text-sm text-gray-800 dark:text-gray-100"},Ge={class:"whitespace-nowrap px-4 py-3 text-sm text-yellow-600 dark:text-yellow-400"},We={class:"whitespace-nowrap px-4 py-3 text-right text-sm"},et={class:"space-y-3 md:hidden"},tt={class:"flex items-center justify-between"},at={class:"text-sm font-semibold text-gray-900 dark:text-gray-100"},st={class:"text-xs text-gray-500 dark:text-gray-400"},ot={class:"mt-3 grid grid-cols-2 gap-2 text-sm text-gray-700 dark:text-gray-300"},rt={class:"text-yellow-600 dark:text-yellow-400"},lt={class:"flex items-center justify-between px-4 pb-4"},nt={class:"text-sm text-gray-500 dark:text-gray-400"},xt={__name:"ApiKeyUsageRecordsView",setup(dt){const Q=ge(),X=pe(),_=F(()=>Q.params.keyId),U=b(!1),S=b(!1),D=b([]),Y=b([]),B=b([]),n=z({currentPage:1,pageSize:50,totalRecords:0}),s=z({dateRange:null,model:"",accountId:"",sortOrder:"desc"}),y=z({totalRequests:0,totalTokens:0,totalCost:0,avgCost:0}),P=z({id:_.value,name:""}),j=b(!1),E=b(null),Z=F(()=>P.name||P.id||_.value),K=F(()=>!s.dateRange||s.dateRange.length!==2?"":`${I(s.dateRange[0])} ~ ${I(s.dateRange[1])}`),T=r=>{const t=typeof r=="number"?r:0;return t>=1?`$${t.toFixed(2)}`:t>=.001?`$${t.toFixed(4)}`:`$${t.toFixed(6)}`},M=r=>{const t={page:r,pageSize:n.pageSize,sortOrder:s.sortOrder};return s.model&&(t.model=s.model),s.accountId&&(t.accountId=s.accountId),s.dateRange&&s.dateRange.length===2&&(t.startDate=A(s.dateRange[0]).toISOString(),t.endDate=A(s.dateRange[1]).toISOString()),t},G=r=>{var m,k,v,a;D.value=r.records||[];const t=r.pagination||{};n.currentPage=t.currentPage||1,n.pageSize=t.pageSize||n.pageSize,n.totalRecords=t.totalRecords||0;const l=r.filters||{};if(l.model!==void 0&&(s.model=l.model||""),l.accountId!==void 0&&(s.accountId=l.accountId||""),l.sortOrder&&(s.sortOrder=l.sortOrder),l.startDate&&l.endDate){const f=[l.startDate,l.endDate],R=s.dateRange||[];(R[0]!==f[0]||R[1]!==f[1])&&(s.dateRange=f)}const g=r.summary||{};y.totalRequests=g.totalRequests||0,y.totalTokens=g.totalTokens||0,y.totalCost=g.totalCost||0,y.avgCost=g.avgCost||0,P.id=((m=r.apiKeyInfo)==null?void 0:m.id)||_.value,P.name=((k=r.apiKeyInfo)==null?void 0:k.name)||"",Y.value=((v=r.availableFilters)==null?void 0:v.models)||[],B.value=((a=r.availableFilters)==null?void 0:a.accounts)||[]},w=async(r=n.currentPage)=>{U.value=!0;try{const t=await J(_.value,M(r));G(t.data||{})}catch(t){N(`加载请求记录失败:${t.message||"未知错误"}`,"error")}finally{U.value=!1}},W=r=>{n.currentPage=r,w(r)},ee=r=>{n.pageSize=r,n.currentPage=1,w(1)},te=()=>{s.model="",s.accountId="",s.dateRange=null,s.sortOrder="desc",n.currentPage=1,w(1)},q=r=>{E.value=r,j.value=!0},ae=()=>{j.value=!1,E.value=null},se=()=>{X.push("/api-keys")},oe=async()=>{var r;if(!S.value){S.value=!0;try{const t=[];let l=1,g=1;const m=50;for(;l<=g&&l<=m;){const V=(await J(_.value,{...M(l),pageSize:200})).data||{};t.push(...V.records||[]),g=((r=V.pagination)==null?void 0:r.totalPages)||1,l+=1}if(t.length===0){N("没有可导出的记录","info");return}const v=[["时间","账户","渠道","模型","输入Token","输出Token","缓存创建Token","缓存读取Token","总Token","费用"].join(",")];t.forEach(u=>{const V=[I(u.timestamp),u.accountName||"",u.accountTypeName||"",u.model||"",u.inputTokens||0,u.outputTokens||0,u.cacheCreateTokens||0,u.cacheReadTokens||0,u.totalTokens||0,u.costFormatted||T(u.cost)];v.push(V.map(re=>`"${String(re).replace(/"/g,'""')}"`).join(","))});const a=new Blob([v.join(` -`)],{type:"text/csv;charset=utf-8;"}),f=URL.createObjectURL(a),R=document.createElement("a");R.href=f,R.download=`api-key-${_.value}-usage-records.csv`,R.click(),URL.revokeObjectURL(f),N("导出 CSV 成功","success")}catch(t){N(`导出失败:${t.message||"未知错误"}`,"error")}finally{S.value=!1}}};return H(()=>[s.model,s.accountId,s.sortOrder],()=>{n.currentPage=1,w(1)}),H(()=>s.dateRange,()=>{n.currentPage=1,w(1)},{deep:!0}),ue(()=>{w()}),(r,t)=>{const l=le,g=ce,m=ne,k=de,v=ie;return d(),c("div",ye,[e("div",me,[e("div",ke,[e("button",{class:"rounded-full border border-gray-200 px-3 py-2 text-sm text-gray-700 transition hover:bg-gray-100 dark:border-gray-700 dark:text-gray-200 dark:hover:bg-gray-800",onClick:se}," ← 返回 "),e("div",null,[t[4]||(t[4]=e("p",{class:"text-xs font-semibold uppercase tracking-wide text-blue-600 dark:text-blue-400"}," API Key 请求详情时间线 ",-1)),e("h2",fe,o(Z.value),1),e("p",_e,"ID: "+o(_.value),1)])]),e("div",ve,[t[5]||(t[5]=e("i",{class:"fas fa-clock text-blue-500"},null,-1)),K.value?(d(),c("span",be,o(K.value),1)):(d(),c("span",he,"显示近 5000 条记录"))])]),e("div",we,[e("div",Re,[t[6]||(t[6]=e("p",{class:"text-xs uppercase text-gray-500 dark:text-gray-400"},"总请求",-1)),e("p",Te,o(i(x)(y.totalRequests)),1)]),e("div",Ce,[t[7]||(t[7]=e("p",{class:"text-xs uppercase text-gray-500 dark:text-gray-400"},"总 Token",-1)),e("p",Ie,o(i(x)(y.totalTokens)),1)]),e("div",Se,[t[8]||(t[8]=e("p",{class:"text-xs uppercase text-gray-500 dark:text-gray-400"},"总费用",-1)),e("p",De,o(T(y.totalCost)),1)]),e("div",Pe,[t[9]||(t[9]=e("p",{class:"text-xs uppercase text-gray-500 dark:text-gray-400"},"平均费用/次",-1)),e("p",Ve,o(T(y.avgCost)),1)])]),e("div",ze,[e("div",$e,[p(l,{modelValue:s.dateRange,"onUpdate:modelValue":t[0]||(t[0]=a=>s.dateRange=a),class:"max-w-[320px]",clearable:"","end-placeholder":"结束时间",format:"YYYY-MM-DD HH:mm:ss","start-placeholder":"开始时间",type:"datetimerange","unlink-panels":"","value-format":"YYYY-MM-DDTHH:mm:ss[Z]"},null,8,["modelValue"]),p(m,{modelValue:s.model,"onUpdate:modelValue":t[1]||(t[1]=a=>s.model=a),class:"w-[180px]",clearable:"",filterable:"",placeholder:"所有模型"},{default:h(()=>[(d(!0),c($,null,O(Y.value,a=>(d(),L(g,{key:a,label:a,value:a},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),p(m,{modelValue:s.accountId,"onUpdate:modelValue":t[2]||(t[2]=a=>s.accountId=a),class:"w-[220px]",clearable:"",filterable:"",placeholder:"所有账户"},{default:h(()=>[(d(!0),c($,null,O(B.value,a=>(d(),L(g,{key:a.id,label:`${a.name}(${a.accountTypeName})`,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),p(m,{modelValue:s.sortOrder,"onUpdate:modelValue":t[3]||(t[3]=a=>s.sortOrder=a),class:"w-[140px]",placeholder:"排序"},{default:h(()=>[p(g,{label:"时间降序",value:"desc"}),p(g,{label:"时间升序",value:"asc"})]),_:1},8,["modelValue"]),p(k,{onClick:te},{default:h(()=>t[10]||(t[10]=[e("i",{class:"fas fa-undo mr-2"},null,-1),C(" 重置 ",-1)])),_:1,__:[10]}),p(k,{loading:S.value,type:"primary",onClick:oe},{default:h(()=>t[11]||(t[11]=[e("i",{class:"fas fa-file-export mr-2"},null,-1),C(" 导出 CSV ",-1)])),_:1,__:[11]},8,["loading"])])]),e("div",Oe,[U.value?(d(),c("div",Ne,t[12]||(t[12]=[e("i",{class:"fas fa-spinner fa-spin mr-2"},null,-1),C(" 加载中... ",-1)]))):(d(),c("div",Ue,[D.value.length===0?(d(),c("div",je,t[13]||(t[13]=[e("i",{class:"fas fa-inbox text-2xl"},null,-1),e("p",null,"暂无记录",-1)]))):(d(),c("div",Ee,[e("div",Fe,[e("table",Ye,[t[15]||(t[15]=e("thead",{class:"bg-gray-50 dark:bg-gray-800"},[e("tr",null,[e("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 时间 "),e("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 账户 "),e("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 模型 "),e("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 输入 "),e("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 输出 "),e("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 缓存(创/读) "),e("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 总 Token "),e("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 费用 "),e("th",{class:"px-4 py-3 text-right text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 操作 ")])],-1)),e("tbody",Be,[(d(!0),c($,null,O(D.value,a=>(d(),c("tr",{key:a.timestamp+a.model},[e("td",Ke,o(i(I)(a.timestamp)),1),e("td",Me,[e("div",qe,[e("span",Ae,o(a.accountName||"未知账户"),1),e("span",He,o(a.accountTypeName||"未知渠道"),1)])]),e("td",Le,o(a.model),1),e("td",Je,o(i(x)(a.inputTokens)),1),e("td",Qe,o(i(x)(a.outputTokens)),1),e("td",Xe,o(i(x)(a.cacheCreateTokens))+" / "+o(i(x)(a.cacheReadTokens)),1),e("td",Ze,o(i(x)(a.totalTokens)),1),e("td",Ge,o(a.costFormatted||T(a.cost)),1),e("td",We,[p(k,{size:"small",onClick:f=>q(a)},{default:h(()=>t[14]||(t[14]=[C("详情",-1)])),_:2,__:[14]},1032,["onClick"])])]))),128))])])]),e("div",et,[(d(!0),c($,null,O(D.value,a=>(d(),c("div",{key:a.timestamp+a.model,class:"rounded-lg border border-gray-200 bg-white p-4 shadow-sm dark:border-gray-800 dark:bg-gray-900"},[e("div",tt,[e("div",null,[e("p",at,o(a.accountName||"未知账户"),1),e("p",st,o(i(I)(a.timestamp)),1)]),p(k,{size:"small",onClick:f=>q(a)},{default:h(()=>t[16]||(t[16]=[C("详情",-1)])),_:2,__:[16]},1032,["onClick"])]),e("div",ot,[e("div",null,"模型:"+o(a.model),1),e("div",null,"总 Token:"+o(i(x)(a.totalTokens)),1),e("div",null,"输入:"+o(i(x)(a.inputTokens)),1),e("div",null,"输出:"+o(i(x)(a.outputTokens)),1),e("div",null," 缓存创/读:"+o(i(x)(a.cacheCreateTokens))+" / "+o(i(x)(a.cacheReadTokens)),1),e("div",rt," 费用:"+o(a.costFormatted||T(a.cost)),1)])]))),128))]),e("div",lt,[e("div",nt," 共 "+o(n.totalRecords)+" 条记录 ",1),p(v,{background:"","current-page":n.currentPage,layout:"prev, pager, next, sizes","page-size":n.pageSize,"page-sizes":[20,50,100,200],total:n.totalRecords,onCurrentChange:W,onSizeChange:ee},null,8,["current-page","page-size","total"])])]))]))]),p(xe,{record:E.value,show:j.value,onClose:ae},null,8,["record","show"])])}}};export{xt as default}; diff --git a/web/admin-spa/dist/assets/ApiKeysView-DZf3x888.js b/web/admin-spa/dist/assets/ApiKeysView-DZf3x888.js deleted file mode 100644 index 6d3bda45..00000000 --- a/web/admin-spa/dist/assets/ApiKeysView-DZf3x888.js +++ /dev/null @@ -1,20 +0,0 @@ -import{E as Sa}from"./element-plus-BSjV1f9S.js";import{aP as Es,r as A,c as j,q as wt,V as Os,o as Re,x as n,y as o,z as e,I as he,C as F,P as u,R as ne,J as js,L as $,B as Rt,K as _,aq as le,Q as re,ac as ge,u as Ae,T as Gs,a5 as Oe,D as Ma,_ as ut,Y as $e,an as De,O as K,aa as tt,al as Ie,aV as kt,f as bt,aU as Ua}from"./vue-vendor-DV7DYXbz.js";import{r as Ra,t as Va,v as zs,w as Vt,x as Pa,y as qs,z as Ea,A as Oa,_ as st,c as Pe,s as R,B as ja,C as Pt,D as Et,E as Ot,F as jt,G as Gt,H as zt,I as qt,J as Ft,K as Bt,L as Ga,M as za,f as vt,N as qa,O as Fa,P as Ba,Q as Wa,u as Na,R as Ha,S as Ya,T as Qa,U as Ja,V as Xa,W as Za,X as er,Y as tr,Z as rs,$ as sr,a0 as ar,a1 as rr,a2 as or}from"./index-BahP9Xx9.js";import{Q as et}from"./vendor-Dr8jvgFu.js";import{C as at}from"./ConfirmModal-C2rCOkXI.js";import{_ as lr}from"./WindowCountdown-Cz478C_V.js";import{C as Ut,_ as nr}from"./ActionDropdown-GADQlLlI.js";const Fs=Es("clients",{state:()=>({supportedClients:[],loading:!1,error:null}),actions:{async loadSupportedClients(){if(this.supportedClients.length>0)return this.supportedClients;this.loading=!0;const h=await Ra();return h.success?this.supportedClients=h.data||[]:this.error=h.message,this.loading=!1,this.supportedClients}}}),ls=Es("apiKeys",()=>{const h=A([]),J=A(!1),c=A(null),P=A("all"),Y=A(""),I=A("asc"),z=async()=>{J.value=!0;const G=await Va();G.success?h.value=G.data||[]:c.value=G.message,J.value=!1},S=async G=>{J.value=!0;const ee=await zs(G);return ee.success?await z():c.value=ee.message,J.value=!1,ee},W=async(G,ee)=>{J.value=!0;const te=await Vt(G,ee);return te.success?await z():c.value=te.message,J.value=!1,te};return{apiKeys:h,loading:J,error:c,statsTimeRange:P,sortBy:Y,sortOrder:I,fetchApiKeys:z,createApiKey:S,updateApiKey:W,toggleApiKey:async G=>{J.value=!0;const ee=await Pa(G);return ee.success?await z():c.value=ee.message,J.value=!1,ee},renewApiKey:(G,ee)=>W(G,ee),deleteApiKey:async G=>{J.value=!0;const ee=await qs(G);return ee.success?await z():c.value=ee.message,J.value=!1,ee},fetchApiKeyStats:async(G,ee="all")=>{const te=await Ea(G,{timeRange:ee});return te.success?te.stats:null},fetchTags:async()=>{const G=await Oa();return G.success?G.data||[]:[]},sortApiKeys:G=>{Y.value===G?I.value=I.value==="asc"?"desc":"asc":(Y.value=G,I.value="asc")},reset:()=>{h.value=[],J.value=!1,c.value=null,P.value="all",Y.value="",I.value="asc"}}}),ir={class:"flex-shrink-0 border-b border-gray-200 p-3 dark:border-gray-600"},dr={class:"relative"},ur={class:"custom-scrollbar flex-1 overflow-y-auto"},cr={key:0,class:"border-b border-gray-200 dark:border-gray-600"},gr=["onClick"],pr={class:"text-gray-700 dark:text-gray-300"},mr={key:0,class:"ml-2 text-xs text-gray-400 dark:text-gray-500"},xr={class:"text-gray-700 dark:text-gray-300"},yr={key:1},fr=["onClick"],br={class:"flex items-center justify-between"},vr={class:"text-gray-700 dark:text-gray-300"},kr={class:"text-xs text-gray-500 dark:text-gray-400"},wr={key:2},hr={class:"bg-gray-50 px-4 py-2 text-xs font-semibold text-gray-500 dark:bg-gray-700 dark:text-gray-400"},Ar=["onClick"],Cr={class:"flex items-center justify-between"},$r={class:"text-gray-700 dark:text-gray-300"},Ir={class:"text-xs text-gray-400 dark:text-gray-500"},Kr={key:3},Lr=["onClick"],Dr={class:"flex items-center justify-between"},Tr={class:"text-gray-700 dark:text-gray-300"},_r={class:"text-xs text-gray-400 dark:text-gray-500"},Sr={key:4},Mr=["onClick"],Ur={class:"flex items-center justify-between"},Rr={class:"text-gray-700 dark:text-gray-300"},Vr={class:"text-xs text-gray-400 dark:text-gray-500"},Pr={key:5},Er=["onClick"],Or={class:"flex items-center justify-between"},jr={class:"text-gray-700 dark:text-gray-300"},Gr={class:"text-xs text-gray-400 dark:text-gray-500"},zr={key:6,class:"px-4 py-8 text-center text-gray-500 dark:text-gray-400"},qr={__name:"AccountSelector",props:{modelValue:{type:String,default:""},platform:{type:String,required:!0,validator:h=>["claude","gemini","openai","bedrock","droid"].includes(h)},accounts:{type:Array,default:()=>[]},groups:{type:Array,default:()=>[]},disabled:{type:Boolean,default:!1},placeholder:{type:String,default:"请选择账号"},defaultOptionText:{type:String,default:"使用共享账号池"},specialOptions:{type:Array,default:()=>[]}},emits:["update:modelValue"],setup(h,{emit:J}){const c=h,P=J,Y=A(!1),I=A(""),z=A(null),S=A(null),W=A({}),X=A(null),Q=A(""),v=j(()=>c.specialOptions||[]),L=j(()=>{const d=v.value.find(b=>b.value===c.modelValue);if(d)return d.label;if(!c.modelValue)return c.defaultOptionText;if(c.modelValue.startsWith("group:")){const b=c.modelValue.substring(6),oe=c.groups.find(xe=>xe.id===b);return oe?`${oe.name} (${oe.memberCount||0} 个成员)`:""}if(c.modelValue.startsWith("console:")){const b=c.modelValue.substring(8),oe=c.accounts.find(xe=>xe.id===b&&xe.platform==="claude-console");return oe?`${oe.name} (${f(oe)})`:""}if(c.modelValue.startsWith("responses:")){const b=c.modelValue.substring(10),oe=c.accounts.find(xe=>xe.id===b&&xe.platform==="openai-responses");return oe?`${oe.name} (${f(oe)})`:""}if(c.modelValue.startsWith("api:")){const b=c.modelValue.substring(4),oe=c.accounts.find(xe=>xe.id===b&&xe.platform==="gemini-api");return oe?`${oe.name} (${f(oe)})`:""}const p=c.accounts.find(b=>b.id===c.modelValue);return p?`${p.name} (${f(p)})`:""}),f=d=>{if(!d)return"未知";if(!(d.isActive==="true"||d.isActive===!0))switch(d.status){case"unauthorized":return"未授权";case"error":return"Token错误";case"created":return"待验证";case"rate_limited":return"限流中";case"quota_exceeded":return"额度超限";default:return"异常"}return d.status==="rate_limited"?"限流中":"正常"},M=j(()=>[...c.accounts].sort((d,p)=>{const b=new Date(d.createdAt||0);return new Date(p.createdAt||0)-b})),se=j(()=>{let d=c.groups.filter(p=>p.platform?p.platform===c.platform:!0);if(I.value){const p=I.value.toLowerCase();d=d.filter(b=>b.name.toLowerCase().includes(p))}return d}),G=j(()=>{let d=[];if(c.platform==="claude"?d=M.value.filter(p=>p.platform==="claude-oauth"):c.platform==="openai"?d=M.value.filter(p=>p.platform==="openai"):c.platform==="droid"?d=M.value.filter(p=>p.platform==="droid"):c.platform==="gemini"?d=M.value.filter(p=>p.platform==="gemini"):d=M.value.filter(p=>!["claude-oauth","claude-console","openai-responses","gemini-api"].includes(p.platform)),I.value){const p=I.value.toLowerCase();d=d.filter(b=>b.name.toLowerCase().includes(p))}return d}),ee=j(()=>{if(c.platform!=="claude")return[];let d=M.value.filter(p=>p.platform==="claude-console");if(I.value){const p=I.value.toLowerCase();d=d.filter(b=>b.name.toLowerCase().includes(p))}return d}),te=j(()=>{if(c.platform!=="openai")return[];let d=M.value.filter(p=>p.platform==="openai-responses");if(I.value){const p=I.value.toLowerCase();d=d.filter(b=>b.name.toLowerCase().includes(p))}return d}),H=j(()=>{if(c.platform!=="gemini")return[];let d=M.value.filter(p=>p.platform==="gemini-api");if(I.value){const p=I.value.toLowerCase();d=d.filter(b=>b.name.toLowerCase().includes(p))}return d}),C=j(()=>se.value.length>0||G.value.length>0||ee.value.length>0||te.value.length>0||H.value.length>0),T=()=>{if(!Y.value||!S.value||!X.value)return;const d=X.value;if(!d)return;const p=d.getBoundingClientRect(),b=window.innerHeight,oe=window.innerWidth,xe=b-p.bottom,Te=p.top,Ce=8,N=xe-Ce,i=Te-Ce;let k=!1,ie=N;Q.value==="above"&&i>=150?(k=!0,ie=i):Q.value==="below"&&N>=150?(k=!1,ie=N):i>N&&N<200&&(k=!0,ie=i),Q.value=k?"above":"below";let ae=p.left;const E=p.width;ae+E>oe-Ce&&(ae=oe-E-Ce),ae{if(!Y.value&&X.value){const d=X.value.getBoundingClientRect(),b=window.innerHeight-d.bottom,oe=8;W.value={position:"fixed",left:`${d.left}px`,width:`${d.width}px`,maxHeight:`${Math.min(b-oe,400)}px`,top:`${d.bottom}px`}}Y.value=!Y.value,Y.value&&Ma(()=>{var d;T(),(d=z.value)==null||d.focus()})},Z=d=>{P("update:modelValue",d||""),Y.value=!1,I.value=""},V=()=>{},D=()=>{var d;I.value="",(d=z.value)==null||d.focus()},U=d=>{var p,b;!((p=X.value)!=null&&p.contains(d.target))&&!((b=S.value)!=null&&b.contains(d.target))&&(Y.value=!1)},x=()=>{Y.value&&T()};return wt(()=>{document.addEventListener("click",U),window.addEventListener("scroll",x,!0),window.addEventListener("resize",T)}),Os(()=>{document.removeEventListener("click",U),window.removeEventListener("scroll",x,!0),window.removeEventListener("resize",T)}),Re(Y,d=>{d||(I.value="",Q.value="")}),(d,p)=>(o(),n("div",{ref_key:"triggerRef",ref:X,class:"relative"},[e("div",{class:F(["form-input flex w-full cursor-pointer items-center justify-between border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",{"opacity-50":h.disabled}]),onClick:p[0]||(p[0]=b=>!h.disabled&&a())},[e("span",{class:F(h.modelValue?"text-gray-900 dark:text-gray-200":"text-gray-500 dark:text-gray-400")},u(L.value),3),e("i",{class:F(["fas fa-chevron-down text-gray-400 transition-transform duration-200 dark:text-gray-500",{"rotate-180":Y.value}])},null,2)],2),(o(),he(Oe,{to:"body"},[ne(Gs,{"enter-active-class":"transition ease-out duration-100","enter-from-class":"transform opacity-0 scale-95","enter-to-class":"transform opacity-100 scale-100","leave-active-class":"transition ease-in duration-75","leave-from-class":"transform opacity-100 scale-100","leave-to-class":"transform opacity-0 scale-95"},{default:js(()=>[Y.value?(o(),n("div",{key:0,ref_key:"dropdownRef",ref:S,class:"absolute z-50 flex flex-col rounded-lg border border-gray-200 bg-white shadow-lg dark:border-gray-600 dark:bg-gray-800",style:Rt(W.value)},[e("div",ir,[e("div",dr,[_(e("input",{ref_key:"searchInput",ref:z,"onUpdate:modelValue":p[1]||(p[1]=b=>I.value=b),class:"form-input w-full border-gray-300 text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"搜索账号名称...",style:{"padding-left":"40px","padding-right":"36px"},type:"text",onInput:V},null,544),[[le,I.value]]),p[4]||(p[4]=e("i",{class:"fas fa-search pointer-events-none absolute left-3 top-1/2 -translate-y-1/2 text-sm text-gray-400 dark:text-gray-500"},null,-1)),I.value?(o(),n("button",{key:0,class:"absolute right-3 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-400",type:"button",onClick:D},p[3]||(p[3]=[e("i",{class:"fas fa-times text-sm"},null,-1)]))):$("",!0)])]),e("div",ur,[v.value.length>0?(o(),n("div",cr,[(o(!0),n(re,null,ge(v.value,b=>(o(),n("div",{key:`special-${b.value}`,class:F(["cursor-pointer px-4 py-2 transition-colors hover:bg-gray-50 dark:hover:bg-gray-700",{"bg-blue-50 dark:bg-blue-900/20":h.modelValue===b.value}]),onClick:oe=>Z(b.value)},[e("span",pr,u(b.label),1),b.description?(o(),n("span",mr,u(b.description),1)):$("",!0)],10,gr))),128))])):$("",!0),e("div",{class:F(["cursor-pointer px-4 py-2 transition-colors hover:bg-gray-50 dark:hover:bg-gray-700",{"bg-blue-50 dark:bg-blue-900/20":!h.modelValue}]),onClick:p[2]||(p[2]=b=>Z(null))},[e("span",xr,u(h.defaultOptionText),1)],2),se.value.length>0?(o(),n("div",yr,[p[5]||(p[5]=e("div",{class:"bg-gray-50 px-4 py-2 text-xs font-semibold text-gray-500 dark:bg-gray-700 dark:text-gray-400"}," 调度分组 ",-1)),(o(!0),n(re,null,ge(se.value,b=>(o(),n("div",{key:`group:${b.id}`,class:F(["cursor-pointer px-4 py-2 transition-colors hover:bg-gray-50 dark:hover:bg-gray-700",{"bg-blue-50 dark:bg-blue-900/20":h.modelValue===`group:${b.id}`}]),onClick:oe=>Z(`group:${b.id}`)},[e("div",br,[e("span",vr,u(b.name),1),e("span",kr,u(b.memberCount||0)+" 个成员",1)])],10,fr))),128))])):$("",!0),G.value.length>0?(o(),n("div",wr,[e("div",hr,u(h.platform==="claude"?"Claude OAuth 专属账号":h.platform==="openai"?"OpenAI 专属账号":h.platform==="droid"?"Droid 专属账号":h.platform==="gemini"?"Gemini OAuth 专属账号":"OAuth 专属账号"),1),(o(!0),n(re,null,ge(G.value,b=>(o(),n("div",{key:b.id,class:F(["cursor-pointer px-4 py-2 transition-colors hover:bg-gray-50 dark:hover:bg-gray-700",{"bg-blue-50 dark:bg-blue-900/20":h.modelValue===b.id}]),onClick:oe=>Z(b.id)},[e("div",Cr,[e("div",null,[e("span",$r,u(b.name),1),e("span",{class:F(["ml-2 rounded-full px-2 py-0.5 text-xs",b.isActive?"bg-green-100 text-green-700 dark:bg-green-900/30 dark:text-green-400":b.status==="unauthorized"?"bg-orange-100 text-orange-700 dark:bg-orange-900/30 dark:text-orange-400":"bg-red-100 text-red-700 dark:bg-red-900/30 dark:text-red-400"])},u(f(b)),3)]),e("span",Ir,u(Ae(Pe)(b.createdAt)),1)])],10,Ar))),128))])):$("",!0),h.platform==="claude"&&ee.value.length>0?(o(),n("div",Kr,[p[6]||(p[6]=e("div",{class:"bg-gray-50 px-4 py-2 text-xs font-semibold text-gray-500 dark:bg-gray-700 dark:text-gray-400"}," Claude Console 专属账号 ",-1)),(o(!0),n(re,null,ge(ee.value,b=>(o(),n("div",{key:b.id,class:F(["cursor-pointer px-4 py-2 transition-colors hover:bg-gray-50 dark:hover:bg-gray-700",{"bg-blue-50 dark:bg-blue-900/20":h.modelValue===`console:${b.id}`}]),onClick:oe=>Z(`console:${b.id}`)},[e("div",Dr,[e("div",null,[e("span",Tr,u(b.name),1),e("span",{class:F(["ml-2 rounded-full px-2 py-0.5 text-xs",b.isActive?"bg-green-100 text-green-700 dark:bg-green-900/30 dark:text-green-400":b.status==="unauthorized"?"bg-orange-100 text-orange-700 dark:bg-orange-900/30 dark:text-orange-400":"bg-red-100 text-red-700 dark:bg-red-900/30 dark:text-red-400"])},u(f(b)),3)]),e("span",_r,u(Ae(Pe)(b.createdAt)),1)])],10,Lr))),128))])):$("",!0),h.platform==="openai"&&te.value.length>0?(o(),n("div",Sr,[p[7]||(p[7]=e("div",{class:"bg-gray-50 px-4 py-2 text-xs font-semibold text-gray-500 dark:bg-gray-700 dark:text-gray-400"}," OpenAI-Responses 专属账号 ",-1)),(o(!0),n(re,null,ge(te.value,b=>(o(),n("div",{key:b.id,class:F(["cursor-pointer px-4 py-2 transition-colors hover:bg-gray-50 dark:hover:bg-gray-700",{"bg-blue-50 dark:bg-blue-900/20":h.modelValue===`responses:${b.id}`}]),onClick:oe=>Z(`responses:${b.id}`)},[e("div",Ur,[e("div",null,[e("span",Rr,u(b.name),1),e("span",{class:F(["ml-2 rounded-full px-2 py-0.5 text-xs",b.isActive==="true"||b.isActive===!0?"bg-green-100 text-green-700 dark:bg-green-900/30 dark:text-green-400":b.status==="rate_limited"?"bg-orange-100 text-orange-700 dark:bg-orange-900/30 dark:text-orange-400":"bg-red-100 text-red-700 dark:bg-red-900/30 dark:text-red-400"])},u(f(b)),3)]),e("span",Vr,u(Ae(Pe)(b.createdAt)),1)])],10,Mr))),128))])):$("",!0),h.platform==="gemini"&&H.value.length>0?(o(),n("div",Pr,[p[8]||(p[8]=e("div",{class:"bg-gray-50 px-4 py-2 text-xs font-semibold text-gray-500 dark:bg-gray-700 dark:text-gray-400"}," Gemini-API 专属账号 ",-1)),(o(!0),n(re,null,ge(H.value,b=>(o(),n("div",{key:b.id,class:F(["cursor-pointer px-4 py-2 transition-colors hover:bg-gray-50 dark:hover:bg-gray-700",{"bg-blue-50 dark:bg-blue-900/20":h.modelValue===`api:${b.id}`}]),onClick:oe=>Z(`api:${b.id}`)},[e("div",Or,[e("div",null,[e("span",jr,u(b.name),1),e("span",{class:F(["ml-2 rounded-full px-2 py-0.5 text-xs",b.isActive==="true"||b.isActive===!0?"bg-green-100 text-green-700 dark:bg-green-900/30 dark:text-green-400":b.status==="rate_limited"?"bg-orange-100 text-orange-700 dark:bg-orange-900/30 dark:text-orange-400":"bg-red-100 text-red-700 dark:bg-red-900/30 dark:text-red-400"])},u(f(b)),3)]),e("span",Gr,u(Ae(Pe)(b.createdAt)),1)])],10,Er))),128))])):$("",!0),I.value&&!C.value?(o(),n("div",zr,p[9]||(p[9]=[e("i",{class:"fas fa-search mb-2 text-2xl"},null,-1),e("p",{class:"text-sm"},"没有找到匹配的账号",-1)]))):$("",!0)])],4)):$("",!0)]),_:1})]))],512))}},_e=st(qr,[["__scopeId","data-v-15b77cd6"]]),Fr={class:"modal fixed inset-0 z-50 flex items-center justify-center p-3 sm:p-4"},Br={class:"modal-content mx-auto flex max-h-[90vh] w-full max-w-4xl flex-col p-4 sm:p-6"},Wr={class:"mb-4 flex items-center justify-between"},Nr={class:"rounded-lg border border-blue-200 bg-gradient-to-r from-blue-50 to-indigo-50 p-3 dark:border-blue-700 dark:from-blue-900/20 dark:to-indigo-900/20 sm:p-4"},Hr={class:"flex items-center gap-3 sm:gap-4"},Yr={class:"flex cursor-pointer items-center"},Qr={class:"flex cursor-pointer items-center"},Jr={key:0,class:"mt-3"},Xr={class:"flex items-center gap-4"},Zr={class:"flex-1"},eo={class:"flex items-center gap-2"},to={class:"mt-2 flex items-start text-xs text-amber-600 dark:text-amber-400"},so=["placeholder"],ao={key:0,class:"mt-1 text-xs text-red-500 dark:text-red-400"},ro={class:"space-y-4"},oo={key:0},lo={class:"flex flex-wrap gap-2"},no=["onClick"],io={key:1},uo={class:"flex flex-wrap gap-2"},co=["onClick"],go={class:"flex gap-2"},po=["onKeypress"],mo={class:"rounded-lg border border-blue-200 bg-blue-50 p-3 dark:border-blue-700 dark:bg-blue-900/20"},xo={class:"space-y-2"},yo={class:"grid grid-cols-1 gap-2 lg:grid-cols-3"},fo={class:"space-y-2"},bo={class:"flex gap-2"},vo={class:"space-y-2"},ko={class:"flex gap-2"},wo={class:"space-y-2"},ho={class:"flex gap-2"},Ao={class:"rounded-lg border border-purple-200 bg-gradient-to-r from-purple-50 to-indigo-50 p-3 dark:border-purple-700 dark:from-purple-900/20 dark:to-indigo-900/20 sm:p-4"},Co={class:"flex items-center justify-between"},$o={class:"flex items-center gap-2"},Io={key:0,class:"mt-3 space-y-2"},Ko={class:"w-20 text-xs text-gray-600 dark:text-gray-400"},Lo=["onUpdate:modelValue"],Do={class:"mb-3 rounded-lg border border-gray-200 bg-gray-50 p-3 dark:border-gray-700 dark:bg-gray-800"},To={class:"flex items-center gap-4"},_o={class:"flex cursor-pointer items-center"},So={class:"flex cursor-pointer items-center"},Mo={class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},Uo={key:0},Ro={key:1},Vo={key:0},Po={key:0,class:"mt-3"},Eo=["min"],Oo={key:1,class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},jo={key:1},Go={class:"flex items-center gap-2"},zo=["max","placeholder"],qo={class:"mt-2 flex flex-wrap gap-2"},Fo=["onClick"],Bo={class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},Wo={class:"flex flex-wrap gap-4"},No={class:"flex cursor-pointer items-center"},Ho={class:"flex cursor-pointer items-center"},Yo={class:"flex cursor-pointer items-center"},Qo={class:"flex cursor-pointer items-center"},Jo={class:"mb-2 flex items-center justify-between"},Xo=["disabled"],Zo={class:"grid grid-cols-1 gap-3"},el={class:"mb-2 flex items-center"},tl={key:0,class:"space-y-3"},sl={class:"mb-3 flex min-h-[32px] flex-wrap gap-2 rounded-lg border border-gray-200 bg-gray-50 p-2"},al=["onClick"],rl={key:0,class:"text-sm text-gray-400"},ol={class:"space-y-3"},ll={class:"flex flex-wrap gap-2"},nl=["onClick"],il={key:0,class:"text-sm italic text-gray-400"},dl={class:"flex gap-2"},ul=["onKeydown"],cl={class:"mb-2 flex items-center"},gl={key:0,class:"rounded-lg border border-green-200 bg-green-50 p-3 dark:border-green-700 dark:bg-green-900/20"},pl={class:"space-y-1"},ml=["id","value"],xl=["for"],yl={class:"text-sm font-medium text-gray-700 dark:text-gray-300"},fl={class:"block text-xs text-gray-500 dark:text-gray-400"},bl={class:"flex gap-3 pt-2"},vl=["disabled"],kl={key:0,class:"loading-spinner mr-2"},wl={key:1,class:"fas fa-plus mr-2"},hl={__name:"CreateApiKeyModal",props:{accounts:{type:Object,default:()=>({claude:[],gemini:[],openai:[],bedrock:[],droid:[],claudeGroups:[],geminiGroups:[],openaiGroups:[],droidGroups:[]})}},emits:["close","success","batch-success"],setup(h,{emit:J}){const c=h,P=J,Y=Fs(),I=ls(),z=A(!1),S=A(!1),W=A(!1),X=A({title:"",message:"",type:"primary",confirmText:"确认",cancelText:"取消"}),Q=A(null),v=(E,l,y="确认",de="取消",Ue="primary")=>new Promise(Se=>{X.value={title:E,message:l,confirmText:y,cancelText:de,type:Ue},Q.value=Se,W.value=!0}),L=()=>{var E;W.value=!1,(E=Q.value)==null||E.call(Q,!0)},f=()=>{var E;W.value=!1,(E=Q.value)==null||E.call(Q,!1)},M=A({claude:[],gemini:[],openai:[],bedrock:[],droid:[],claudeGroups:[],geminiGroups:[],openaiGroups:[],droidGroups:[]}),se=A({name:""}),G=A(""),ee=A([]),te=j(()=>ee.value.filter(E=>!a.tags.includes(E))),H=A([]),C=A(!1),T=[{key:"claude",label:"Claude"},{key:"gemini",label:"Gemini"},{key:"codex",label:"Codex"},{key:"droid",label:"Droid"},{key:"bedrock",label:"Bedrock"},{key:"azure",label:"Azure"},{key:"ccr",label:"CCR"}],a=ut({createType:"single",batchCount:10,name:"",description:"",serviceRates:{},rateLimitWindow:"",rateLimitRequests:"",rateLimitCost:"",concurrencyLimit:"",dailyCostLimit:"",totalCostLimit:"",weeklyOpusCostLimit:"",expireDuration:"",customExpireDate:"",expiresAt:null,expirationMode:"fixed",activationDays:30,activationUnit:"days",permissions:[],claudeAccountId:"",geminiAccountId:"",openaiAccountId:"",bedrockAccountId:"",droidAccountId:"",enableModelRestriction:!1,restrictedModels:[],modelInput:"",enableClientRestriction:!1,allowedClients:[],tags:[]}),Z=()=>{};wt(async()=>{if(H.value=await Y.loadSupportedClients(),ee.value=await I.fetchTags(),c.accounts){const E=(c.accounts.gemini||[]).map(y=>({...y,platform:y.platform||"gemini"})),l=[];c.accounts.openai&&c.accounts.openai.forEach(y=>{l.push({...y,platform:y.platform||"openai"})}),c.accounts.openaiResponses&&c.accounts.openaiResponses.forEach(y=>{l.push({...y,platform:y.platform||"openai-responses"})}),M.value={claude:c.accounts.claude||[],gemini:E,openai:l,bedrock:c.accounts.bedrock||[],droid:(c.accounts.droid||[]).map(y=>({...y,platform:y.platform||"droid"})),claudeGroups:c.accounts.claudeGroups||[],geminiGroups:c.accounts.geminiGroups||[],openaiGroups:c.accounts.openaiGroups||[],droidGroups:c.accounts.droidGroups||[]}}});const V=async()=>{var E,l;S.value=!0;try{const[y,de,Ue,Se,Be,ye,Qe,ce,Ve]=await Promise.all([Pt(),Et(),Ot(),jt(),Gt(),zt(),qt(),Ft(),Bt()]),ze=[];y.success&&((E=y.data)==null||E.forEach(pe=>{ze.push({...pe,platform:"claude-oauth",isDedicated:pe.accountType==="dedicated"})})),de.success&&((l=de.data)==null||l.forEach(pe=>{ze.push({...pe,platform:"claude-console",isDedicated:pe.accountType==="dedicated"})})),M.value.claude=ze;const We=[];Ue.success&&(Ue.data||[]).forEach(pe=>{We.push({...pe,platform:"gemini",isDedicated:pe.accountType==="dedicated"})}),Se.success&&(Se.data||[]).forEach(pe=>{We.push({...pe,platform:"gemini-api",isDedicated:pe.accountType==="dedicated"})}),M.value.gemini=We;const Ne=[];if(Be.success&&(Be.data||[]).forEach(pe=>{Ne.push({...pe,platform:"openai",isDedicated:pe.accountType==="dedicated"})}),ye.success&&(ye.data||[]).forEach(pe=>{Ne.push({...pe,platform:"openai-responses",isDedicated:pe.accountType==="dedicated"})}),M.value.openai=Ne,Qe.success&&(M.value.bedrock=(Qe.data||[]).map(pe=>({...pe,isDedicated:pe.accountType==="dedicated"}))),ce.success&&(M.value.droid=(ce.data||[]).map(pe=>({...pe,platform:"droid",isDedicated:pe.accountType==="dedicated"}))),Ve.success){const pe=Ve.data||[];M.value.claudeGroups=pe.filter(Ee=>Ee.platform==="claude"),M.value.geminiGroups=pe.filter(Ee=>Ee.platform==="gemini"),M.value.openaiGroups=pe.filter(Ee=>Ee.platform==="openai"),M.value.droidGroups=pe.filter(Ee=>Ee.platform==="droid")}R("账号列表已刷新","success")}catch{R("刷新账号列表失败","error")}finally{S.value=!1}},D=j(()=>{const E=new Date;return E.setMinutes(E.getMinutes()+1),E.toISOString().slice(0,16)}),U=()=>{if(!a.expireDuration){a.expiresAt=null;return}if(a.expireDuration==="custom")return;const E=new Date,y=a.expireDuration.match(/(\d+)([dhmy])/);if(y){const[,de,Ue]=y,Se=parseInt(de);switch(Ue){case"d":E.setDate(E.getDate()+Se);break;case"h":E.setHours(E.getHours()+Se);break;case"m":E.setMonth(E.getMonth()+Se);break;case"y":E.setFullYear(E.getFullYear()+Se);break}a.expiresAt=E.toISOString()}},x=()=>{a.customExpireDate&&(a.expiresAt=new Date(a.customExpireDate).toISOString())},d=E=>new Date(E).toLocaleString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}),p=()=>{a.modelInput&&!a.restrictedModels.includes(a.modelInput)&&(a.restrictedModels.push(a.modelInput),a.modelInput="")},b=E=>{a.restrictedModels.splice(E,1)},oe=A(["claude-opus-4-20250514","claude-opus-4-1-20250805"]),xe=j(()=>oe.value.filter(E=>!a.restrictedModels.includes(E))),Te=E=>{a.restrictedModels.includes(E)||a.restrictedModels.push(E)},Ce=()=>{if(G.value&&G.value.trim()){const E=G.value.trim();a.tags.includes(E)||a.tags.push(E),G.value=""}},N=E=>{a.tags.includes(E)||a.tags.push(E)},i=E=>{a.tags.splice(E,1)},k=()=>a.activationUnit==="hours"?[{value:1,label:"1小时"},{value:3,label:"3小时"},{value:6,label:"6小时"},{value:12,label:"12小时"}]:[{value:30,label:"30天"},{value:90,label:"90天"},{value:180,label:"180天"},{value:365,label:"365天"}],ie=()=>{a.activationUnit==="hours"?a.activationDays>24&&(a.activationDays=24):a.activationDays<1&&(a.activationDays=1)},ae=async()=>{if(se.value.name="",!a.name||!a.name.trim()){se.value.name="请输入API Key名称";return}if(a.createType==="batch"&&(!a.batchCount||a.batchCount<2||a.batchCount>500)){R("批量创建数量必须在 2-500 之间","error");return}if(!(a.rateLimitWindow&&(!a.rateLimitCost||parseFloat(a.rateLimitCost)===0)&&!await v("费用限制提醒",`您设置了时间窗口但费用限制为0,这意味着不会有费用限制。 - -是否继续?`,"继续创建","返回修改","warning"))){z.value=!0;try{const E={};if(C.value)for(const[y,de]of Object.entries(a.serviceRates))de!=null&&de!==""&&(E[y]=de);const l={description:a.description||void 0,serviceRates:E,tokenLimit:0,rateLimitWindow:a.rateLimitWindow!==""&&a.rateLimitWindow!==null?parseInt(a.rateLimitWindow):null,rateLimitRequests:a.rateLimitRequests!==""&&a.rateLimitRequests!==null?parseInt(a.rateLimitRequests):null,rateLimitCost:a.rateLimitCost!==""&&a.rateLimitCost!==null?parseFloat(a.rateLimitCost):null,concurrencyLimit:a.concurrencyLimit!==""&&a.concurrencyLimit!==null?parseInt(a.concurrencyLimit):0,dailyCostLimit:a.dailyCostLimit!==""&&a.dailyCostLimit!==null?parseFloat(a.dailyCostLimit):0,totalCostLimit:a.totalCostLimit!==""&&a.totalCostLimit!==null?parseFloat(a.totalCostLimit):0,weeklyOpusCostLimit:a.weeklyOpusCostLimit!==""&&a.weeklyOpusCostLimit!==null?parseFloat(a.weeklyOpusCostLimit):0,expiresAt:a.expirationMode==="fixed"&&a.expiresAt||void 0,expirationMode:a.expirationMode,activationDays:a.expirationMode==="activation"?a.activationDays:void 0,activationUnit:a.expirationMode==="activation"?a.activationUnit:void 0,permissions:a.permissions,tags:a.tags.length>0?a.tags:void 0,enableModelRestriction:a.enableModelRestriction,restrictedModels:a.restrictedModels,enableClientRestriction:a.enableClientRestriction,allowedClients:a.allowedClients};if(a.claudeAccountId&&(a.claudeAccountId.startsWith("console:")?(l.claudeConsoleAccountId=a.claudeAccountId.substring(8),delete l.claudeAccountId):(l.claudeAccountId=a.claudeAccountId,delete l.claudeConsoleAccountId)),a.geminiAccountId&&(l.geminiAccountId=a.geminiAccountId),a.openaiAccountId&&(l.openaiAccountId=a.openaiAccountId),a.bedrockAccountId&&(l.bedrockAccountId=a.bedrockAccountId),a.droidAccountId&&(l.droidAccountId=a.droidAccountId),a.createType==="single"){const y={...l,name:a.name},de=await zs(y);de.success?(R("API Key 创建成功","success"),P("success",de.data),P("close")):R(de.message||"创建失败","error")}else{const y={...l,createType:"batch",baseName:a.name,count:a.batchCount},de=await ja(y);de.success?(R(`成功创建 ${de.data.length} 个 API Key`,"success"),P("batch-success",de.data),P("close")):R(de.message||"批量创建失败","error")}}catch{R("创建失败","error")}finally{z.value=!1}}};return(E,l)=>(o(),he(Oe,{to:"body"},[e("div",Fr,[e("div",Br,[e("div",Wr,[l[49]||(l[49]=e("div",{class:"flex items-center gap-2 sm:gap-3"},[e("div",{class:"flex h-8 w-8 items-center justify-center rounded-lg bg-gradient-to-br from-blue-500 to-blue-600 sm:h-10 sm:w-10 sm:rounded-xl"},[e("i",{class:"fas fa-key text-sm text-white sm:text-base"})]),e("h3",{class:"text-lg font-bold text-gray-900 dark:text-gray-100 sm:text-xl"}," 创建新的 API Key ")],-1)),e("button",{class:"p-1 text-gray-400 transition-colors hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300",onClick:l[0]||(l[0]=y=>E.$emit("close"))},l[48]||(l[48]=[e("i",{class:"fas fa-times text-lg sm:text-xl"},null,-1)]))]),e("form",{class:"modal-scroll-content custom-scrollbar flex-1 space-y-4",onSubmit:$e(ae,["prevent"])},[e("div",Nr,[e("div",{class:F(["flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between",a.createType==="batch"?"mb-3":""])},[l[52]||(l[52]=e("label",{class:"flex h-full items-center text-xs font-semibold text-gray-700 dark:text-gray-300 sm:text-sm"},"创建类型",-1)),e("div",Hr,[e("label",Yr,[_(e("input",{"onUpdate:modelValue":l[1]||(l[1]=y=>a.createType=y),class:"mr-1.5 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 sm:mr-2",type:"radio",value:"single"},null,512),[[De,a.createType]]),l[50]||(l[50]=e("span",{class:"flex items-center text-xs text-gray-700 dark:text-gray-300 sm:text-sm"},[e("i",{class:"fas fa-key mr-1 text-xs"}),K(" 单个创建 ")],-1))]),e("label",Qr,[_(e("input",{"onUpdate:modelValue":l[2]||(l[2]=y=>a.createType=y),class:"mr-1.5 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 sm:mr-2",type:"radio",value:"batch"},null,512),[[De,a.createType]]),l[51]||(l[51]=e("span",{class:"flex items-center text-xs text-gray-700 dark:text-gray-300 sm:text-sm"},[e("i",{class:"fas fa-layer-group mr-1 text-xs"}),K(" 批量创建 ")],-1))])])],2),a.createType==="batch"?(o(),n("div",Jr,[e("div",Xr,[e("div",Zr,[l[54]||(l[54]=e("label",{class:"mb-1 block text-xs font-medium text-gray-600 dark:text-gray-400"},"创建数量",-1)),e("div",eo,[_(e("input",{"onUpdate:modelValue":l[3]||(l[3]=y=>a.batchCount=y),class:"form-input w-full border-gray-300 text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",max:"500",min:"2",placeholder:"输入数量 (2-500)",required:"",type:"number"},null,512),[[le,a.batchCount,void 0,{number:!0}]]),l[53]||(l[53]=e("div",{class:"whitespace-nowrap text-xs text-gray-500 dark:text-gray-400"}," 最大支持 500 个 ",-1))])])]),e("p",to,[l[55]||(l[55]=e("i",{class:"fas fa-info-circle mr-1 mt-0.5 flex-shrink-0"},null,-1)),e("span",null,"批量创建时,每个 Key 的名称会自动添加序号后缀,例如:"+u(a.name||"MyKey")+"_1, "+u(a.name||"MyKey")+"_2 ...",1)])])):$("",!0)]),e("div",null,[l[56]||(l[56]=e("label",{class:"mb-1.5 block text-xs font-semibold text-gray-700 dark:text-gray-300 sm:mb-2 sm:text-sm"},[K("名称 "),e("span",{class:"text-red-500"},"*")],-1)),e("div",null,[_(e("input",{"onUpdate:modelValue":l[4]||(l[4]=y=>a.name=y),class:F(["form-input flex-1 border-gray-300 text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",{"border-red-500":se.value.name}]),placeholder:a.createType==="batch"?"输入基础名称(将自动添加序号)":"为您的 API Key 取一个名称",required:"",type:"text",onInput:l[5]||(l[5]=y=>se.value.name="")},null,42,so),[[le,a.name]])]),se.value.name?(o(),n("p",ao,u(se.value.name),1)):$("",!0)]),e("div",null,[l[64]||(l[64]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"标签",-1)),e("div",ro,[a.tags.length>0?(o(),n("div",oo,[l[58]||(l[58]=e("div",{class:"mb-2 text-xs font-medium text-gray-600 dark:text-gray-400"}," 已选择的标签: ",-1)),e("div",lo,[(o(!0),n(re,null,ge(a.tags,(y,de)=>(o(),n("span",{key:"selected-"+de,class:"inline-flex items-center gap-1 rounded-full bg-blue-100 px-3 py-1 text-sm text-blue-800 dark:bg-blue-900/30 dark:text-blue-400"},[K(u(y)+" ",1),e("button",{class:"ml-1 hover:text-blue-900 dark:hover:text-blue-300",type:"button",onClick:Ue=>i(de)},l[57]||(l[57]=[e("i",{class:"fas fa-times text-xs"},null,-1)]),8,no)]))),128))])])):$("",!0),te.value.length>0?(o(),n("div",io,[l[60]||(l[60]=e("div",{class:"mb-2 text-xs font-medium text-gray-600 dark:text-gray-400"}," 点击选择已有标签: ",-1)),e("div",uo,[(o(!0),n(re,null,ge(te.value,y=>(o(),n("button",{key:"available-"+y,class:"inline-flex items-center gap-1 rounded-full bg-gray-100 px-3 py-1 text-sm text-gray-700 transition-colors hover:bg-blue-100 hover:text-blue-700 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-blue-900/30 dark:hover:text-blue-400",type:"button",onClick:de=>N(y)},[l[59]||(l[59]=e("i",{class:"fas fa-tag text-xs text-gray-500 dark:text-gray-400"},null,-1)),K(" "+u(y),1)],8,co))),128))])])):$("",!0),e("div",null,[l[62]||(l[62]=e("div",{class:"mb-2 text-xs font-medium text-gray-600 dark:text-gray-400"}," 创建新标签: ",-1)),e("div",go,[_(e("input",{"onUpdate:modelValue":l[6]||(l[6]=y=>G.value=y),class:"form-input flex-1 border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"输入新标签名称",type:"text",onKeypress:tt($e(Ce,["prevent"]),["enter"])},null,40,po),[[le,G.value]]),e("button",{class:"rounded-lg bg-green-500 px-4 py-2 text-white transition-colors hover:bg-green-600",type:"button",onClick:Ce},l[61]||(l[61]=[e("i",{class:"fas fa-plus"},null,-1)]))])]),l[63]||(l[63]=e("p",{class:"text-xs text-gray-500 dark:text-gray-400"}," 用于标记不同团队或用途,方便筛选管理 ",-1))])]),e("div",mo,[l[72]||(l[72]=e("div",{class:"mb-2 flex items-center gap-2"},[e("div",{class:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded bg-blue-500"},[e("i",{class:"fas fa-tachometer-alt text-xs text-white"})]),e("h4",{class:"text-sm font-semibold text-gray-800 dark:text-gray-200"}," 速率限制设置 (可选) ")],-1)),e("div",xo,[e("div",yo,[e("div",null,[l[65]||(l[65]=e("label",{class:"mb-1 block text-xs font-medium text-gray-700 dark:text-gray-300"},"时间窗口 (分钟)",-1)),_(e("input",{"onUpdate:modelValue":l[7]||(l[7]=y=>a.rateLimitWindow=y),class:"form-input w-full border-gray-300 text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",min:"1",placeholder:"无限制",type:"number"},null,512),[[le,a.rateLimitWindow]]),l[66]||(l[66]=e("p",{class:"ml-2 mt-0.5 text-xs text-gray-500 dark:text-gray-400"},"时间段单位",-1))]),e("div",null,[l[67]||(l[67]=e("label",{class:"mb-1 block text-xs font-medium text-gray-700 dark:text-gray-300"},"请求次数限制",-1)),_(e("input",{"onUpdate:modelValue":l[8]||(l[8]=y=>a.rateLimitRequests=y),class:"form-input w-full border-gray-300 text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",min:"1",placeholder:"无限制",type:"number"},null,512),[[le,a.rateLimitRequests]]),l[68]||(l[68]=e("p",{class:"ml-2 mt-0.5 text-xs text-gray-500 dark:text-gray-400"},"窗口内最大请求",-1))]),e("div",null,[l[69]||(l[69]=e("label",{class:"mb-1 block text-xs font-medium text-gray-700 dark:text-gray-300"},"费用限制 (美元)",-1)),_(e("input",{"onUpdate:modelValue":l[9]||(l[9]=y=>a.rateLimitCost=y),class:"form-input w-full border-gray-300 text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",min:"0",placeholder:"无限制",step:"0.01",type:"number"},null,512),[[le,a.rateLimitCost]]),l[70]||(l[70]=e("p",{class:"ml-2 mt-0.5 text-xs text-gray-500 dark:text-gray-400"},"窗口内最大费用",-1))])]),l[71]||(l[71]=e("div",{class:"rounded-lg bg-blue-100 p-2 dark:bg-blue-900/30"},[e("h5",{class:"mb-1 text-xs font-semibold text-blue-800 dark:text-blue-400"}," 💡 使用示例 "),e("div",{class:"space-y-0.5 text-xs text-blue-700 dark:text-blue-300"},[e("div",null,[e("strong",null,"示例1:"),K(" 时间窗口=60,请求次数=1000 → 每60分钟最多1000次请求 ")]),e("div",null,[e("strong",null,"示例2:"),K(" 时间窗口=1,费用=0.1 → 每分钟最多$0.1费用")]),e("div",null,[e("strong",null,"示例3:"),K(" 窗口=30,请求=50,费用=5 → 每30分钟50次请求且不超$5费用 ")])])],-1))])]),e("div",null,[l[74]||(l[74]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"每日费用限制 (美元)",-1)),e("div",fo,[e("div",bo,[e("button",{class:"rounded bg-gray-100 px-2 py-1 text-xs font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:l[10]||(l[10]=y=>a.dailyCostLimit="50")}," $50 "),e("button",{class:"rounded bg-gray-100 px-2 py-1 text-xs font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:l[11]||(l[11]=y=>a.dailyCostLimit="100")}," $100 "),e("button",{class:"rounded bg-gray-100 px-2 py-1 text-xs font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:l[12]||(l[12]=y=>a.dailyCostLimit="200")}," $200 "),e("button",{class:"rounded bg-gray-100 px-2 py-1 text-xs font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:l[13]||(l[13]=y=>a.dailyCostLimit="")}," 自定义 ")]),_(e("input",{"onUpdate:modelValue":l[14]||(l[14]=y=>a.dailyCostLimit=y),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",min:"0",placeholder:"0 表示无限制",step:"0.01",type:"number"},null,512),[[le,a.dailyCostLimit]]),l[73]||(l[73]=e("p",{class:"dark:text灰-400 text-xs text-gray-500"}," 设置此 API Key 每日的费用限制,超过限制将拒绝请求,0 或留空表示无限制 ",-1))])]),e("div",null,[l[76]||(l[76]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"总费用限制 (美元)",-1)),e("div",vo,[e("div",ko,[e("button",{class:"rounded bg-gray-100 px-2 py-1 text-xs font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:l[15]||(l[15]=y=>a.totalCostLimit="100")}," $100 "),e("button",{class:"rounded bg-gray-100 px-2 py-1 text-xs font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:l[16]||(l[16]=y=>a.totalCostLimit="500")}," $500 "),e("button",{class:"rounded bg-gray-100 px-2 py-1 text-xs font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:l[17]||(l[17]=y=>a.totalCostLimit="1000")}," $1000 "),e("button",{class:"rounded bg-gray-100 px-2 py-1 text-xs font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:l[18]||(l[18]=y=>a.totalCostLimit="")}," 自定义 ")]),_(e("input",{"onUpdate:modelValue":l[19]||(l[19]=y=>a.totalCostLimit=y),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",min:"0",placeholder:"0 表示无限制",step:"0.01",type:"number"},null,512),[[le,a.totalCostLimit]]),l[75]||(l[75]=e("p",{class:"text-xs text-gray-500 dark:text-gray-400"}," 设置此 API Key 的累计总费用限制,达到限制后将拒绝所有后续请求,0 或留空表示无限制 ",-1))])]),e("div",null,[l[78]||(l[78]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"Claude 模型周费用限制 (美元)",-1)),e("div",wo,[e("div",ho,[e("button",{class:"rounded bg-gray-100 px-2 py-1 text-xs font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:l[20]||(l[20]=y=>a.weeklyOpusCostLimit="100")}," $100 "),e("button",{class:"rounded bg-gray-100 px-2 py-1 text-xs font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:l[21]||(l[21]=y=>a.weeklyOpusCostLimit="500")}," $500 "),e("button",{class:"rounded bg-gray-100 px-2 py-1 text-xs font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:l[22]||(l[22]=y=>a.weeklyOpusCostLimit="1000")}," $1000 "),e("button",{class:"rounded bg-gray-100 px-2 py-1 text-xs font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:l[23]||(l[23]=y=>a.weeklyOpusCostLimit="")}," 自定义 ")]),_(e("input",{"onUpdate:modelValue":l[24]||(l[24]=y=>a.weeklyOpusCostLimit=y),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",min:"0",placeholder:"0 表示无限制",step:"0.01",type:"number"},null,512),[[le,a.weeklyOpusCostLimit]]),l[77]||(l[77]=e("p",{class:"text-xs text-gray-500 dark:text-gray-400"}," 设置 Claude 模型的周费用限制(周一到周日),仅对 Claude 模型请求生效,0 或留空表示无限制 ",-1))])]),e("div",null,[l[79]||(l[79]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"并发限制 (可选)",-1)),_(e("input",{"onUpdate:modelValue":l[25]||(l[25]=y=>a.concurrencyLimit=y),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",min:"0",placeholder:"0 表示无限制",type:"number"},null,512),[[le,a.concurrencyLimit]]),l[80]||(l[80]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"}," 设置此 API Key 可同时处理的最大请求数,0 或留空表示无限制 ",-1))]),e("div",null,[l[81]||(l[81]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"备注 (可选)",-1)),_(e("textarea",{"onUpdate:modelValue":l[26]||(l[26]=y=>a.description=y),class:"form-input w-full resize-none border-gray-300 text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"描述此 API Key 的用途...",rows:"2"},null,512),[[le,a.description]])]),e("div",Ao,[e("div",Co,[e("div",$o,[_(e("input",{id:"enableServiceRates","onUpdate:modelValue":l[27]||(l[27]=y=>C.value=y),class:"h-4 w-4 rounded border-gray-300 bg-gray-100 text-purple-600 focus:ring-purple-500",type:"checkbox"},null,512),[[Ie,C.value]]),l[82]||(l[82]=e("label",{class:"cursor-pointer text-sm font-semibold text-gray-700 dark:text-gray-300",for:"enableServiceRates"}," 自定义服务倍率 ",-1))]),l[83]||(l[83]=e("span",{class:"text-xs text-gray-500 dark:text-gray-400"}," 与全局倍率相乘,用于 VIP 折扣等(如全局1.5 × Key倍率0.8 = 1.2) ",-1))]),C.value?(o(),n("div",Io,[(o(),n(re,null,ge(T,y=>e("div",{key:y.key,class:"flex items-center gap-2"},[e("span",Ko,u(y.label),1),_(e("input",{"onUpdate:modelValue":de=>a.serviceRates[y.key]=de,class:"form-input w-24 border-gray-300 text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",min:"0",placeholder:"1.0",step:"0.1",type:"number"},null,8,Lo),[[le,a.serviceRates[y.key],void 0,{number:!0}]]),l[84]||(l[84]=e("span",{class:"text-xs text-gray-400"},"默认 1.0",-1))])),64))])):$("",!0)]),e("div",null,[l[92]||(l[92]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"过期设置",-1)),e("div",Do,[e("div",To,[e("label",_o,[_(e("input",{"onUpdate:modelValue":l[28]||(l[28]=y=>a.expirationMode=y),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"fixed"},null,512),[[De,a.expirationMode]]),l[85]||(l[85]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"固定时间过期",-1))]),e("label",So,[_(e("input",{"onUpdate:modelValue":l[29]||(l[29]=y=>a.expirationMode=y),class:"mr-2 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"radio",value:"activation"},null,512),[[De,a.expirationMode]]),l[86]||(l[86]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"首次使用后激活",-1))])]),e("p",Mo,[a.expirationMode==="fixed"?(o(),n("span",Uo,l[87]||(l[87]=[e("i",{class:"fas fa-info-circle mr-1"},null,-1),K(" 固定时间模式:Key 创建后立即生效,按设定时间过期(支持小时和天数) ",-1)]))):(o(),n("span",Ro,l[88]||(l[88]=[e("i",{class:"fas fa-info-circle mr-1"},null,-1),K(" 激活模式:Key 首次使用时激活,激活后按设定时间过期(支持小时和天数,适合批量销售) ",-1)])))])]),a.expirationMode==="fixed"?(o(),n("div",Vo,[_(e("select",{"onUpdate:modelValue":l[30]||(l[30]=y=>a.expireDuration=y),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",onChange:U},l[89]||(l[89]=[e("option",{value:""},"永不过期",-1),e("option",{value:"1h"},"1 小时",-1),e("option",{value:"3h"},"3 小时",-1),e("option",{value:"6h"},"6 小时",-1),e("option",{value:"12h"},"12 小时",-1),e("option",{value:"1d"},"1 天",-1),e("option",{value:"7d"},"7 天",-1),e("option",{value:"30d"},"30 天",-1),e("option",{value:"90d"},"90 天",-1),e("option",{value:"180d"},"180 天",-1),e("option",{value:"365d"},"365 天",-1),e("option",{value:"custom"},"自定义日期",-1)]),544),[[kt,a.expireDuration]]),a.expireDuration==="custom"?(o(),n("div",Po,[_(e("input",{"onUpdate:modelValue":l[31]||(l[31]=y=>a.customExpireDate=y),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",min:D.value,type:"datetime-local",onChange:x},null,40,Eo),[[le,a.customExpireDate]])])):$("",!0),a.expiresAt?(o(),n("p",Oo," 将于 "+u(d(a.expiresAt))+" 过期 ",1)):$("",!0)])):(o(),n("div",jo,[e("div",Go,[_(e("input",{"onUpdate:modelValue":l[32]||(l[32]=y=>a.activationDays=y),class:"form-input flex-1 border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",max:a.activationUnit==="hours"?8760:3650,min:"1",placeholder:a.activationUnit==="hours"?"输入小时数":"输入天数",type:"number"},null,8,zo),[[le,a.activationDays,void 0,{number:!0}]]),_(e("select",{"onUpdate:modelValue":l[33]||(l[33]=y=>a.activationUnit=y),class:"form-input w-20 border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",onChange:ie},l[90]||(l[90]=[e("option",{value:"hours"},"小时",-1),e("option",{value:"days"},"天",-1)]),544),[[kt,a.activationUnit]])]),e("div",qo,[(o(!0),n(re,null,ge(k(),y=>(o(),n("button",{key:y.value,class:"rounded-md border border-gray-300 px-3 py-1 text-xs hover:bg-gray-100 dark:border-gray-600 dark:hover:bg-gray-700",type:"button",onClick:de=>a.activationDays=y.value},u(y.label),9,Fo))),128))]),e("p",Bo,[l[91]||(l[91]=e("i",{class:"fas fa-clock mr-1"},null,-1)),K(" Key 将在首次使用后激活,激活后 "+u(a.activationDays||(a.activationUnit==="hours"?24:30))+" "+u(a.activationUnit==="hours"?"小时":"天")+"过期 ",1)])]))]),e("div",null,[l[97]||(l[97]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"服务权限",-1)),e("div",Wo,[e("label",No,[_(e("input",{"onUpdate:modelValue":l[34]||(l[34]=y=>a.permissions=y),class:"mr-2 rounded text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox",value:"claude",onChange:Z},null,544),[[Ie,a.permissions]]),l[93]||(l[93]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"Claude",-1))]),e("label",Ho,[_(e("input",{"onUpdate:modelValue":l[35]||(l[35]=y=>a.permissions=y),class:"mr-2 rounded text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox",value:"gemini",onChange:Z},null,544),[[Ie,a.permissions]]),l[94]||(l[94]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"Gemini",-1))]),e("label",Yo,[_(e("input",{"onUpdate:modelValue":l[36]||(l[36]=y=>a.permissions=y),class:"mr-2 rounded text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox",value:"openai",onChange:Z},null,544),[[Ie,a.permissions]]),l[95]||(l[95]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"OpenAI",-1))]),e("label",Qo,[_(e("input",{"onUpdate:modelValue":l[37]||(l[37]=y=>a.permissions=y),class:"mr-2 rounded text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox",value:"droid",onChange:Z},null,544),[[Ie,a.permissions]]),l[96]||(l[96]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"Droid",-1))])]),l[98]||(l[98]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"}," 不选择任何服务表示允许访问全部服务 ",-1))]),e("div",null,[e("div",Jo,[l[99]||(l[99]=e("label",{class:"text-sm font-semibold text-gray-700 dark:text-gray-300"},"专属账号绑定 (可选)",-1)),e("button",{class:"flex items-center gap-1 text-sm text-blue-600 transition-colors hover:text-blue-800 disabled:cursor-not-allowed disabled:opacity-50 dark:text-blue-400 dark:hover:text-blue-300",disabled:S.value,title:"刷新账号列表",type:"button",onClick:V},[e("i",{class:F(["fas",S.value?"fa-spinner fa-spin":"fa-sync-alt","text-xs"])},null,2),e("span",null,u(S.value?"刷新中...":"刷新账号"),1)],8,Xo)]),e("div",Zo,[e("div",null,[l[100]||(l[100]=e("label",{class:"mb-1 block text-sm font-medium text-gray-600 dark:text-gray-400"},"Claude 专属账号",-1)),ne(_e,{modelValue:a.claudeAccountId,"onUpdate:modelValue":l[38]||(l[38]=y=>a.claudeAccountId=y),accounts:M.value.claude,"default-option-text":"使用共享账号池",disabled:a.permissions.length>0&&!a.permissions.includes("claude"),groups:M.value.claudeGroups,placeholder:"请选择Claude账号",platform:"claude"},null,8,["modelValue","accounts","disabled","groups"])]),e("div",null,[l[101]||(l[101]=e("label",{class:"mb-1 block text-sm font-medium text-gray-600 dark:text-gray-400"},"Gemini 专属账号",-1)),ne(_e,{modelValue:a.geminiAccountId,"onUpdate:modelValue":l[39]||(l[39]=y=>a.geminiAccountId=y),accounts:M.value.gemini,"default-option-text":"使用共享账号池",disabled:a.permissions.length>0&&!a.permissions.includes("gemini"),groups:M.value.geminiGroups,placeholder:"请选择Gemini账号",platform:"gemini"},null,8,["modelValue","accounts","disabled","groups"])]),e("div",null,[l[102]||(l[102]=e("label",{class:"mb-1 block text-sm font-medium text-gray-600 dark:text-gray-400"},"OpenAI 专属账号",-1)),ne(_e,{modelValue:a.openaiAccountId,"onUpdate:modelValue":l[40]||(l[40]=y=>a.openaiAccountId=y),accounts:M.value.openai,"default-option-text":"使用共享账号池",disabled:a.permissions.length>0&&!a.permissions.includes("openai"),groups:M.value.openaiGroups,placeholder:"请选择OpenAI账号",platform:"openai"},null,8,["modelValue","accounts","disabled","groups"])]),e("div",null,[l[103]||(l[103]=e("label",{class:"mb-1 block text-sm font-medium text-gray-600 dark:text-gray-400"},"Bedrock 专属账号",-1)),ne(_e,{modelValue:a.bedrockAccountId,"onUpdate:modelValue":l[41]||(l[41]=y=>a.bedrockAccountId=y),accounts:M.value.bedrock,"default-option-text":"使用共享账号池",disabled:a.permissions.length>0&&!a.permissions.includes("claude"),groups:[],placeholder:"请选择Bedrock账号",platform:"bedrock"},null,8,["modelValue","accounts","disabled"])]),e("div",null,[l[104]||(l[104]=e("label",{class:"mb-1 block text-sm font-medium text-gray-600 dark:text-gray-400"},"Droid 专属账号",-1)),ne(_e,{modelValue:a.droidAccountId,"onUpdate:modelValue":l[42]||(l[42]=y=>a.droidAccountId=y),accounts:M.value.droid,"default-option-text":"使用共享账号池",disabled:a.permissions.length>0&&!a.permissions.includes("droid"),groups:M.value.droidGroups,placeholder:"请选择Droid账号",platform:"droid"},null,8,["modelValue","accounts","disabled","groups"])])]),l[105]||(l[105]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"}," 选择专属账号后,此API Key将只使用该账号,不选择则使用共享账号池 ",-1))]),e("div",null,[e("div",el,[_(e("input",{id:"enableModelRestriction","onUpdate:modelValue":l[43]||(l[43]=y=>a.enableModelRestriction=y),class:"h-4 w-4 rounded border-gray-300 bg-gray-100 text-blue-600 focus:ring-blue-500",type:"checkbox"},null,512),[[Ie,a.enableModelRestriction]]),l[106]||(l[106]=e("label",{class:"ml-2 cursor-pointer text-sm font-semibold text-gray-700 dark:text-gray-300",for:"enableModelRestriction"}," 启用模型限制 ",-1))]),a.enableModelRestriction?(o(),n("div",tl,[e("div",null,[l[109]||(l[109]=e("label",{class:"mb-2 block text-sm font-medium text-gray-600"},"限制的模型列表",-1)),e("div",sl,[(o(!0),n(re,null,ge(a.restrictedModels,(y,de)=>(o(),n("span",{key:de,class:"inline-flex items-center rounded-full bg-red-100 px-3 py-1 text-sm text-red-800"},[K(u(y)+" ",1),e("button",{class:"ml-2 text-red-600 hover:text-red-800",type:"button",onClick:Ue=>b(de)},l[107]||(l[107]=[e("i",{class:"fas fa-times text-xs"},null,-1)]),8,al)]))),128)),a.restrictedModels.length===0?(o(),n("span",rl," 暂无限制的模型 ")):$("",!0)]),e("div",ol,[e("div",ll,[(o(!0),n(re,null,ge(xe.value,y=>(o(),n("button",{key:y,class:"flex-shrink-0 rounded-lg bg-gray-100 px-3 py-1 text-xs text-gray-700 transition-colors hover:bg-gray-200 sm:text-sm",type:"button",onClick:de=>Te(y)},u(y),9,nl))),128)),xe.value.length===0?(o(),n("span",il," 所有常用模型已在限制列表中 ")):$("",!0)]),e("div",dl,[_(e("input",{"onUpdate:modelValue":l[44]||(l[44]=y=>a.modelInput=y),class:"form-input flex-1",placeholder:"输入模型名称,按回车添加",type:"text",onKeydown:tt($e(p,["prevent"]),["enter"])},null,40,ul),[[le,a.modelInput]]),e("button",{class:"rounded-lg bg-red-500 px-4 py-2 text-white transition-colors hover:bg-red-600",type:"button",onClick:p},l[108]||(l[108]=[e("i",{class:"fas fa-plus"},null,-1)]))])]),l[110]||(l[110]=e("p",{class:"mt-2 text-xs text-gray-500"}," 设置此API Key无法访问的模型,例如:claude-opus-4-20250514 ",-1))])])):$("",!0)]),e("div",null,[e("div",cl,[_(e("input",{id:"enableClientRestriction","onUpdate:modelValue":l[45]||(l[45]=y=>a.enableClientRestriction=y),class:"h-4 w-4 rounded border-gray-300 bg-gray-100 text-blue-600 focus:ring-blue-500",type:"checkbox"},null,512),[[Ie,a.enableClientRestriction]]),l[111]||(l[111]=e("label",{class:"ml-2 cursor-pointer text-sm font-semibold text-gray-700 dark:text-gray-300",for:"enableClientRestriction"}," 启用客户端限制 ",-1))]),a.enableClientRestriction?(o(),n("div",gl,[e("div",null,[l[112]||(l[112]=e("label",{class:"mb-2 block text-xs font-medium text-gray-700 dark:text-gray-300"},"允许的客户端",-1)),e("div",pl,[(o(!0),n(re,null,ge(H.value,y=>(o(),n("div",{key:y.id,class:"flex items-start"},[_(e("input",{id:`client_${y.id}`,"onUpdate:modelValue":l[46]||(l[46]=de=>a.allowedClients=de),class:"mt-0.5 h-4 w-4 rounded border-gray-300 bg-gray-100 text-blue-600 focus:ring-blue-500",type:"checkbox",value:y.id},null,8,ml),[[Ie,a.allowedClients]]),e("label",{class:"ml-2 flex-1 cursor-pointer",for:`client_${y.id}`},[e("span",yl,u(y.name),1),e("span",fl,u(y.description),1)],8,xl)]))),128))])])])):$("",!0)]),e("div",bl,[e("button",{class:"flex-1 rounded-lg bg-gray-100 px-4 py-2.5 text-sm font-semibold text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:l[47]||(l[47]=y=>E.$emit("close"))}," 取消 "),e("button",{class:"btn btn-primary flex-1 px-4 py-2.5 text-sm font-semibold",disabled:z.value,type:"submit"},[z.value?(o(),n("div",kl)):(o(),n("i",wl)),K(" "+u(z.value?"创建中...":"创建"),1)],8,vl)])],32)])]),ne(at,{"cancel-text":X.value.cancelText,"confirm-text":X.value.confirmText,message:X.value.message,show:W.value,title:X.value.title,type:X.value.type,onCancel:f,onConfirm:L},null,8,["cancel-text","confirm-text","message","show","title","type"])]))}},Al={class:"modal fixed inset-0 z-50 flex items-center justify-center p-3 sm:p-4"},Cl={class:"modal-content mx-auto flex max-h-[90vh] w-full max-w-4xl flex-col p-4 sm:p-6 md:p-8"},$l={class:"mb-4 flex items-center justify-between sm:mb-6"},Il={class:"rounded-lg border border-purple-200 bg-gradient-to-r from-purple-50 to-indigo-50 p-3 dark:border-purple-700 dark:from-purple-900/20 dark:to-indigo-900/20 sm:p-4"},Kl={class:"flex items-center justify-between"},Ll={class:"flex items-center gap-2"},Dl={key:0,class:"mt-3 space-y-2"},Tl={class:"w-20 text-xs text-gray-600 dark:text-gray-400"},_l=["onUpdate:modelValue"],Sl=["value"],Ml={key:0,class:"text-gray-500"},Ul={class:"space-y-4"},Rl={key:0},Vl={class:"flex flex-wrap gap-2"},Pl=["onClick"],El={key:1},Ol={class:"flex flex-wrap gap-2"},jl=["onClick"],Gl={class:"flex gap-2"},zl=["onKeypress"],ql={class:"rounded-lg border border-blue-200 bg-blue-50 p-3 dark:border-blue-700 dark:bg-blue-900/20"},Fl={class:"space-y-2"},Bl={class:"grid grid-cols-1 gap-2 lg:grid-cols-3"},Wl={class:"space-y-3"},Nl={class:"flex gap-2"},Hl={class:"space-y-3"},Yl={class:"flex gap-2"},Ql={class:"space-y-3"},Jl={class:"flex gap-2"},Xl={class:"mb-3 flex items-center"},Zl={class:"flex flex-wrap gap-4"},en={class:"flex cursor-pointer items-center"},tn={class:"flex cursor-pointer items-center"},sn={class:"flex cursor-pointer items-center"},an={class:"flex cursor-pointer items-center"},rn={class:"mb-3 flex items-center justify-between"},on=["disabled"],ln={class:"grid grid-cols-1 gap-3"},nn={class:"mb-3 flex items-center"},dn={key:0,class:"space-y-3"},un={class:"mb-3 flex min-h-[32px] flex-wrap gap-2 rounded-lg border border-gray-200 bg-gray-50 p-2 dark:border-gray-600 dark:bg-gray-700"},cn=["onClick"],gn={key:0,class:"text-sm text-gray-400 dark:text-gray-500"},pn={class:"space-y-3"},mn={class:"flex flex-wrap gap-2"},xn=["onClick"],yn={key:0,class:"text-sm italic text-gray-400 dark:text-gray-500"},fn={class:"flex gap-2"},bn=["onKeydown"],vn={class:"mb-3 flex items-center"},kn={key:0,class:"space-y-3"},wn={class:"space-y-2"},hn=["id","value"],An=["for"],Cn={class:"text-sm font-medium text-gray-700 dark:text-gray-300"},$n={class:"block text-xs text-gray-500 dark:text-gray-400"},In={class:"flex gap-3 pt-4"},Kn=["disabled"],Ln={key:0,class:"loading-spinner mr-2"},Dn={key:1,class:"fas fa-save mr-2"},Tn={__name:"EditApiKeyModal",props:{apiKey:{type:Object,required:!0},accounts:{type:Object,default:()=>({claude:[],gemini:[],openai:[],bedrock:[],droid:[],claudeGroups:[],geminiGroups:[],openaiGroups:[],droidGroups:[],openaiResponses:[]})}},emits:["close","success"],setup(h,{emit:J}){const c=h,P=J,Y=Fs(),I=ls(),z=A(!1),S=A(!1),W=A(!1),X=A({title:"",message:"",type:"primary",confirmText:"确认",cancelText:"取消"}),Q=A(null),v=(N,i,k="确认",ie="取消",ae="primary")=>new Promise(E=>{X.value={title:N,message:i,confirmText:k,cancelText:ie,type:ae},Q.value=E,W.value=!0}),L=()=>{var N;W.value=!1,(N=Q.value)==null||N.call(Q,!0)},f=()=>{var N;W.value=!1,(N=Q.value)==null||N.call(Q,!1)},M=A({claude:[],gemini:[],openai:[],bedrock:[],droid:[],claudeGroups:[],geminiGroups:[],openaiGroups:[],droidGroups:[]}),se=A([]),G=A([]),ee=A(""),te=A([]),H=j(()=>te.value.filter(N=>!a.tags.includes(N))),C=A(!1),T=[{key:"claude",label:"Claude"},{key:"gemini",label:"Gemini"},{key:"codex",label:"Codex"},{key:"droid",label:"Droid"},{key:"bedrock",label:"Bedrock"},{key:"azure",label:"Azure"},{key:"ccr",label:"CCR"}],a=ut({name:"",serviceRates:{},tokenLimit:"",rateLimitWindow:"",rateLimitRequests:"",rateLimitCost:"",concurrencyLimit:"",dailyCostLimit:"",totalCostLimit:"",weeklyOpusCostLimit:"",permissions:[],claudeAccountId:"",geminiAccountId:"",openaiAccountId:"",bedrockAccountId:"",droidAccountId:"",enableModelRestriction:!1,restrictedModels:[],modelInput:"",enableClientRestriction:!1,allowedClients:[],tags:[],isActive:!0,ownerId:""}),Z=()=>{},V=()=>{a.modelInput&&!a.restrictedModels.includes(a.modelInput)&&(a.restrictedModels.push(a.modelInput),a.modelInput="")},D=N=>{a.restrictedModels.splice(N,1)},U=A(["claude-opus-4-20250514","claude-opus-4-1-20250805"]),x=j(()=>U.value.filter(N=>!a.restrictedModels.includes(N))),d=N=>{a.restrictedModels.includes(N)||a.restrictedModels.push(N)},p=()=>{if(ee.value&&ee.value.trim()){const N=ee.value.trim();a.tags.includes(N)||a.tags.push(N),ee.value=""}},b=N=>{a.tags.includes(N)||a.tags.push(N)},oe=N=>{a.tags.splice(N,1)},xe=async()=>{if(!(a.rateLimitWindow&&(!a.rateLimitCost||parseFloat(a.rateLimitCost)===0)&&!await v("费用限制提醒",`您设置了时间窗口但费用限制为0,这意味着不会有费用限制。 - -是否继续?`,"继续保存","返回修改","warning"))){z.value=!0;try{const N={};if(C.value)for(const[ie,ae]of Object.entries(a.serviceRates))ae!=null&&ae!==""&&(N[ie]=ae);const i={name:a.name,serviceRates:N,tokenLimit:0,rateLimitWindow:a.rateLimitWindow!==""&&a.rateLimitWindow!==null?parseInt(a.rateLimitWindow):0,rateLimitRequests:a.rateLimitRequests!==""&&a.rateLimitRequests!==null?parseInt(a.rateLimitRequests):0,rateLimitCost:a.rateLimitCost!==""&&a.rateLimitCost!==null?parseFloat(a.rateLimitCost):0,concurrencyLimit:a.concurrencyLimit!==""&&a.concurrencyLimit!==null?parseInt(a.concurrencyLimit):0,dailyCostLimit:a.dailyCostLimit!==""&&a.dailyCostLimit!==null?parseFloat(a.dailyCostLimit):0,totalCostLimit:a.totalCostLimit!==""&&a.totalCostLimit!==null?parseFloat(a.totalCostLimit):0,weeklyOpusCostLimit:a.weeklyOpusCostLimit!==""&&a.weeklyOpusCostLimit!==null?parseFloat(a.weeklyOpusCostLimit):0,permissions:a.permissions,tags:a.tags};a.claudeAccountId?a.claudeAccountId.startsWith("console:")?(i.claudeConsoleAccountId=a.claudeAccountId.substring(8),i.claudeAccountId=null):(a.claudeAccountId.startsWith("group:"),i.claudeAccountId=a.claudeAccountId,i.claudeConsoleAccountId=null):(i.claudeAccountId=null,i.claudeConsoleAccountId=null),a.geminiAccountId?i.geminiAccountId=a.geminiAccountId:i.geminiAccountId=null,a.openaiAccountId?i.openaiAccountId=a.openaiAccountId:i.openaiAccountId=null,a.bedrockAccountId?i.bedrockAccountId=a.bedrockAccountId:i.bedrockAccountId=null,a.droidAccountId?i.droidAccountId=a.droidAccountId:i.droidAccountId=null,i.enableModelRestriction=a.enableModelRestriction,i.restrictedModels=a.restrictedModels,i.enableClientRestriction=a.enableClientRestriction,i.allowedClients=a.allowedClients,i.isActive=a.isActive,a.ownerId!==void 0&&(i.ownerId=a.ownerId);const k=await Vt(c.apiKey.id,i);k.success?(P("success"),P("close")):R(k.message||"更新失败","error")}catch{R("更新失败","error")}finally{z.value=!1}}},Te=async()=>{var N,i;S.value=!0;try{const[k,ie,ae,E,l,y,de,Ue,Se]=await Promise.all([Pt(),Et(),Ot(),jt(),Gt(),zt(),qt(),Ft(),Bt()]),Be=[];k.success&&((N=k.data)==null||N.forEach(ce=>{Be.push({...ce,platform:"claude-oauth",isDedicated:ce.accountType==="dedicated"})})),ie.success&&((i=ie.data)==null||i.forEach(ce=>{Be.push({...ce,platform:"claude-console",isDedicated:ce.accountType==="dedicated"})})),M.value.claude=Be;const ye=[];ae.success&&(ae.data||[]).forEach(ce=>{ye.push({...ce,platform:"gemini",isDedicated:ce.accountType==="dedicated"})}),E.success&&(E.data||[]).forEach(ce=>{ye.push({...ce,platform:"gemini-api",isDedicated:ce.accountType==="dedicated"})}),M.value.gemini=ye;const Qe=[];if(l.success&&(l.data||[]).forEach(ce=>{Qe.push({...ce,platform:"openai",isDedicated:ce.accountType==="dedicated"})}),y.success&&(y.data||[]).forEach(ce=>{Qe.push({...ce,platform:"openai-responses",isDedicated:ce.accountType==="dedicated"})}),M.value.openai=Qe,de.success&&(M.value.bedrock=(de.data||[]).map(ce=>({...ce,isDedicated:ce.accountType==="dedicated"}))),Ue.success&&(M.value.droid=(Ue.data||[]).map(ce=>({...ce,platform:"droid",isDedicated:ce.accountType==="dedicated"}))),Se.success){const ce=Se.data||[];M.value.claudeGroups=ce.filter(Ve=>Ve.platform==="claude"),M.value.geminiGroups=ce.filter(Ve=>Ve.platform==="gemini"),M.value.openaiGroups=ce.filter(Ve=>Ve.platform==="openai"),M.value.droidGroups=ce.filter(Ve=>Ve.platform==="droid")}R("账号列表已刷新","success")}catch{R("刷新账号列表失败","error")}finally{S.value=!1}},Ce=async()=>{try{const N=await Ga();N.success&&(G.value=N.data||[])}catch{G.value=[{id:"admin",username:"admin",displayName:"Admin",email:"",role:"admin"}]}};return wt(async()=>{try{const[k,ie]=await Promise.all([Y.loadSupportedClients(),I.fetchTags(),Ce()]);se.value=k||[],te.value=ie||[]}catch{se.value=[],te.value=[]}if(c.accounts){const k=(c.accounts.gemini||[]).map(ae=>({...ae,platform:ae.platform||"gemini"})),ie=[];c.accounts.openai&&c.accounts.openai.forEach(ae=>{ie.push({...ae,platform:ae.platform||"openai"})}),c.accounts.openaiResponses&&c.accounts.openaiResponses.forEach(ae=>{ie.push({...ae,platform:ae.platform||"openai-responses"})}),M.value={claude:c.accounts.claude||[],gemini:k,openai:ie,bedrock:c.accounts.bedrock||[],droid:(c.accounts.droid||[]).map(ae=>({...ae,platform:ae.platform||"droid"})),claudeGroups:c.accounts.claudeGroups||[],geminiGroups:c.accounts.geminiGroups||[],openaiGroups:c.accounts.openaiGroups||[],droidGroups:c.accounts.droidGroups||[]}}a.name=c.apiKey.name,a.serviceRates=c.apiKey.serviceRates||{},C.value=Object.keys(a.serviceRates).length>0,a.tokenLimit=c.apiKey.tokenLimit||"",a.rateLimitCost=c.apiKey.rateLimitCost||"",c.apiKey.tokenLimit>0&&c.apiKey.rateLimitCost,a.rateLimitWindow=c.apiKey.rateLimitWindow||"",a.rateLimitRequests=c.apiKey.rateLimitRequests||"",a.concurrencyLimit=c.apiKey.concurrencyLimit||"",a.dailyCostLimit=c.apiKey.dailyCostLimit||"",a.totalCostLimit=c.apiKey.totalCostLimit||"",a.weeklyOpusCostLimit=c.apiKey.weeklyOpusCostLimit||"";const N=["claude","gemini","openai","droid"];let i=c.apiKey.permissions;if(typeof i=="string")if(i==="all"||i==="")i=[];else if(i.startsWith("["))try{i=JSON.parse(i)}catch{i=N.includes(i)?[i]:[]}else i.includes(",")?i=i.split(",").map(k=>k.trim()).filter(k=>N.includes(k)):N.includes(i)?i=[i]:i=[];Array.isArray(i)?a.permissions=i.filter(k=>N.includes(k)):a.permissions=[],c.apiKey.claudeConsoleAccountId?a.claudeAccountId=`console:${c.apiKey.claudeConsoleAccountId}`:a.claudeAccountId=c.apiKey.claudeAccountId||"",a.geminiAccountId=c.apiKey.geminiAccountId||"",a.openaiAccountId=c.apiKey.openaiAccountId||"",a.bedrockAccountId=c.apiKey.bedrockAccountId||"",a.droidAccountId=c.apiKey.droidAccountId||"",a.restrictedModels=c.apiKey.restrictedModels||[],a.allowedClients=c.apiKey.allowedClients||[],a.tags=c.apiKey.tags||[],a.enableModelRestriction=c.apiKey.enableModelRestriction===!0||c.apiKey.enableModelRestriction==="true",a.enableClientRestriction=c.apiKey.enableClientRestriction===!0||c.apiKey.enableClientRestriction==="true",a.isActive=c.apiKey.isActive===void 0||c.apiKey.isActive===!0||c.apiKey.isActive==="true",a.ownerId=c.apiKey.userId||"admin"}),(N,i)=>(o(),he(Oe,{to:"body"},[e("div",Al,[e("div",Cl,[e("div",$l,[i[40]||(i[40]=e("div",{class:"flex items-center gap-2 sm:gap-3"},[e("div",{class:"flex h-8 w-8 items-center justify-center rounded-lg bg-gradient-to-br from-blue-500 to-blue-600 sm:h-10 sm:w-10 sm:rounded-xl"},[e("i",{class:"fas fa-edit text-sm text-white sm:text-base"})]),e("h3",{class:"text-lg font-bold text-gray-900 dark:text-gray-100 sm:text-xl"}," 编辑 API Key ")],-1)),e("button",{class:"p-1 text-gray-400 transition-colors hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300",onClick:i[0]||(i[0]=k=>N.$emit("close"))},i[39]||(i[39]=[e("i",{class:"fas fa-times text-lg sm:text-xl"},null,-1)]))]),e("form",{class:"modal-scroll-content custom-scrollbar flex-1 space-y-4 sm:space-y-6",onSubmit:$e(xe,["prevent"])},[e("div",null,[i[41]||(i[41]=e("label",{class:"mb-1.5 block text-xs font-semibold text-gray-700 dark:text-gray-300 sm:mb-3 sm:text-sm"},"名称",-1)),e("div",null,[_(e("input",{"onUpdate:modelValue":i[1]||(i[1]=k=>a.name=k),class:"form-input flex-1 border-gray-300 text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",maxlength:"100",placeholder:"请输入API Key名称",required:"",type:"text"},null,512),[[le,a.name]])]),i[42]||(i[42]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400 sm:mt-2"}," 用于识别此 API Key 的用途 ",-1))]),e("div",Il,[e("div",Kl,[e("div",Ll,[_(e("input",{id:"editEnableServiceRates","onUpdate:modelValue":i[2]||(i[2]=k=>C.value=k),class:"h-4 w-4 rounded border-gray-300 bg-gray-100 text-purple-600 focus:ring-purple-500",type:"checkbox"},null,512),[[Ie,C.value]]),i[43]||(i[43]=e("label",{class:"cursor-pointer text-sm font-semibold text-gray-700 dark:text-gray-300",for:"editEnableServiceRates"}," 自定义服务倍率 ",-1))]),i[44]||(i[44]=e("span",{class:"text-xs text-gray-500 dark:text-gray-400"}," 与全局倍率相乘,用于 VIP 折扣等(如全局1.5 × Key倍率0.8 = 1.2) ",-1))]),C.value?(o(),n("div",Dl,[(o(),n(re,null,ge(T,k=>e("div",{key:k.key,class:"flex items-center gap-2"},[e("span",Tl,u(k.label),1),_(e("input",{"onUpdate:modelValue":ie=>a.serviceRates[k.key]=ie,class:"form-input w-24 border-gray-300 text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",min:"0",placeholder:"1.0",step:"0.1",type:"number"},null,8,_l),[[le,a.serviceRates[k.key],void 0,{number:!0}]]),i[45]||(i[45]=e("span",{class:"text-xs text-gray-400"},"默认 1.0",-1))])),64))])):$("",!0)]),e("div",null,[i[46]||(i[46]=e("label",{class:"mb-1.5 block text-xs font-semibold text-gray-700 dark:text-gray-300 sm:mb-3 sm:text-sm"},"所有者",-1)),_(e("select",{"onUpdate:modelValue":i[3]||(i[3]=k=>a.ownerId=k),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200"},[(o(!0),n(re,null,ge(G.value,k=>(o(),n("option",{key:k.id,value:k.id},[K(u(k.displayName)+" ("+u(k.username)+") ",1),k.role==="admin"?(o(),n("span",Ml,"- 管理员")):$("",!0)],8,Sl))),128))],512),[[kt,a.ownerId]]),i[47]||(i[47]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400 sm:mt-2"}," 分配此 API Key 给指定用户或管理员,管理员分配时不受用户 API Key 数量限制 ",-1))]),e("div",null,[i[55]||(i[55]=e("label",{class:"mb-1.5 block text-xs font-semibold text-gray-700 dark:text-gray-300 sm:mb-3 sm:text-sm"},"标签",-1)),e("div",Ul,[a.tags.length>0?(o(),n("div",Rl,[i[49]||(i[49]=e("div",{class:"mb-2 text-xs font-medium text-gray-600 dark:text-gray-400"}," 已选择的标签: ",-1)),e("div",Vl,[(o(!0),n(re,null,ge(a.tags,(k,ie)=>(o(),n("span",{key:"selected-"+ie,class:"inline-flex items-center gap-1 rounded-full bg-blue-100 px-3 py-1 text-sm text-blue-800 dark:bg-blue-900/30 dark:text-blue-400"},[K(u(k)+" ",1),e("button",{class:"ml-1 hover:text-blue-900 dark:hover:text-blue-300",type:"button",onClick:ae=>oe(ie)},i[48]||(i[48]=[e("i",{class:"fas fa-times text-xs"},null,-1)]),8,Pl)]))),128))])])):$("",!0),H.value.length>0?(o(),n("div",El,[i[51]||(i[51]=e("div",{class:"mb-2 text-xs font-medium text-gray-600 dark:text-gray-400"}," 点击选择已有标签: ",-1)),e("div",Ol,[(o(!0),n(re,null,ge(H.value,k=>(o(),n("button",{key:"available-"+k,class:"inline-flex items-center gap-1 rounded-full bg-gray-100 px-3 py-1 text-sm text-gray-700 transition-colors hover:bg-blue-100 hover:text-blue-700 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-blue-900/30 dark:hover:text-blue-400",type:"button",onClick:ie=>b(k)},[i[50]||(i[50]=e("i",{class:"fas fa-tag text-xs text-gray-500 dark:text-gray-400"},null,-1)),K(" "+u(k),1)],8,jl))),128))])])):$("",!0),e("div",null,[i[53]||(i[53]=e("div",{class:"mb-2 text-xs font-medium text-gray-600 dark:text-gray-400"}," 创建新标签: ",-1)),e("div",Gl,[_(e("input",{"onUpdate:modelValue":i[4]||(i[4]=k=>ee.value=k),class:"form-input flex-1 border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"输入新标签名称",type:"text",onKeypress:tt($e(p,["prevent"]),["enter"])},null,40,zl),[[le,ee.value]]),e("button",{class:"rounded-lg bg-green-500 px-4 py-2 text-white transition-colors hover:bg-green-600",type:"button",onClick:p},i[52]||(i[52]=[e("i",{class:"fas fa-plus"},null,-1)]))])]),i[54]||(i[54]=e("p",{class:"text-xs text-gray-500 dark:text-gray-400"}," 用于标记不同团队或用途,方便筛选管理 ",-1))])]),e("div",ql,[i[63]||(i[63]=e("div",{class:"mb-2 flex items-center gap-2"},[e("div",{class:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded bg-blue-500"},[e("i",{class:"fas fa-tachometer-alt text-xs text-white"})]),e("h4",{class:"text-sm font-semibold text-gray-800 dark:text-gray-200"}," 速率限制设置 (可选) ")],-1)),e("div",Fl,[e("div",Bl,[e("div",null,[i[56]||(i[56]=e("label",{class:"mb-1 block text-xs font-medium text-gray-700 dark:text-gray-300"},"时间窗口 (分钟)",-1)),_(e("input",{"onUpdate:modelValue":i[5]||(i[5]=k=>a.rateLimitWindow=k),class:"form-input w-full border-gray-300 text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",min:"1",placeholder:"无限制",type:"number"},null,512),[[le,a.rateLimitWindow]]),i[57]||(i[57]=e("p",{class:"ml-2 mt-0.5 text-xs text-gray-500 dark:text-gray-400"},"时间段单位",-1))]),e("div",null,[i[58]||(i[58]=e("label",{class:"mb-1 block text-xs font-medium text-gray-700 dark:text-gray-300"},"请求次数限制",-1)),_(e("input",{"onUpdate:modelValue":i[6]||(i[6]=k=>a.rateLimitRequests=k),class:"form-input w-full border-gray-300 text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",min:"1",placeholder:"无限制",type:"number"},null,512),[[le,a.rateLimitRequests]]),i[59]||(i[59]=e("p",{class:"ml-2 mt-0.5 text-xs text-gray-500 dark:text-gray-400"},"窗口内最大请求",-1))]),e("div",null,[i[60]||(i[60]=e("label",{class:"mb-1 block text-xs font-medium text-gray-700 dark:text-gray-300"},"费用限制 (美元)",-1)),_(e("input",{"onUpdate:modelValue":i[7]||(i[7]=k=>a.rateLimitCost=k),class:"form-input w-full border-gray-300 text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",min:"0",placeholder:"无限制",step:"0.01",type:"number"},null,512),[[le,a.rateLimitCost]]),i[61]||(i[61]=e("p",{class:"ml-2 mt-0.5 text-xs text-gray-500 dark:text-gray-400"},"窗口内最大费用",-1))])]),i[62]||(i[62]=e("div",{class:"rounded-lg bg-blue-100 p-2 dark:bg-blue-900/30"},[e("h5",{class:"mb-1 text-xs font-semibold text-blue-800 dark:text-blue-400"}," 💡 使用示例 "),e("div",{class:"space-y-0.5 text-xs text-blue-700 dark:text-blue-300"},[e("div",null,[e("strong",null,"示例1:"),K(" 时间窗口=60,请求次数=1000 → 每60分钟最多1000次请求 ")]),e("div",null,[e("strong",null,"示例2:"),K(" 时间窗口=1,费用=0.1 → 每分钟最多$0.1费用")]),e("div",null,[e("strong",null,"示例3:"),K(" 窗口=30,请求=50,费用=5 → 每30分钟50次请求且不超$5费用 ")])])],-1))])]),e("div",null,[i[65]||(i[65]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"每日费用限制 (美元)",-1)),e("div",Wl,[e("div",Nl,[e("button",{class:"rounded-lg bg-gray-100 px-3 py-1 text-sm font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:i[8]||(i[8]=k=>a.dailyCostLimit="50")}," $50 "),e("button",{class:"rounded-lg bg-gray-100 px-3 py-1 text-sm font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:i[9]||(i[9]=k=>a.dailyCostLimit="100")}," $100 "),e("button",{class:"rounded-lg bg-gray-100 px-3 py-1 text-sm font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:i[10]||(i[10]=k=>a.dailyCostLimit="200")}," $200 "),e("button",{class:"rounded-lg bg-gray-100 px-3 py-1 text-sm font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:i[11]||(i[11]=k=>a.dailyCostLimit="")}," 自定义 ")]),_(e("input",{"onUpdate:modelValue":i[12]||(i[12]=k=>a.dailyCostLimit=k),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",min:"0",placeholder:"0 表示无限制",step:"0.01",type:"number"},null,512),[[le,a.dailyCostLimit]]),i[64]||(i[64]=e("p",{class:"text-xs text-gray-500 dark:text-gray-400"}," 设置此 API Key 每日的费用限制,超过限制将拒绝请求,0 或留空表示无限制 ",-1))])]),e("div",null,[i[67]||(i[67]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"总费用限制 (美元)",-1)),e("div",Hl,[e("div",Yl,[e("button",{class:"rounded-lg bg-gray-100 px-3 py-1 text-sm font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:i[13]||(i[13]=k=>a.totalCostLimit="100")}," $100 "),e("button",{class:"rounded-lg bg-gray-100 px-3 py-1 text-sm font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:i[14]||(i[14]=k=>a.totalCostLimit="500")}," $500 "),e("button",{class:"rounded-lg bg-gray-100 px-3 py-1 text-sm font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:i[15]||(i[15]=k=>a.totalCostLimit="1000")}," $1000 "),e("button",{class:"rounded-lg bg-gray-100 px-3 py-1 text-sm font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:i[16]||(i[16]=k=>a.totalCostLimit="")}," 自定义 ")]),_(e("input",{"onUpdate:modelValue":i[17]||(i[17]=k=>a.totalCostLimit=k),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",min:"0",placeholder:"0 表示无限制",step:"0.01",type:"number"},null,512),[[le,a.totalCostLimit]]),i[66]||(i[66]=e("p",{class:"text-xs text-gray-500 dark:text-gray-400"}," 设置此 API Key 的累计总费用限制,达到限制后将拒绝所有后续请求,0 或留空表示无限制 ",-1))])]),e("div",null,[i[69]||(i[69]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"Claude 模型周费用限制 (美元)",-1)),e("div",Ql,[e("div",Jl,[e("button",{class:"rounded-lg bg-gray-100 px-3 py-1 text-sm font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:i[18]||(i[18]=k=>a.weeklyOpusCostLimit="100")}," $100 "),e("button",{class:"rounded-lg bg-gray-100 px-3 py-1 text-sm font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:i[19]||(i[19]=k=>a.weeklyOpusCostLimit="500")}," $500 "),e("button",{class:"rounded-lg bg-gray-100 px-3 py-1 text-sm font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:i[20]||(i[20]=k=>a.weeklyOpusCostLimit="1000")}," $1000 "),e("button",{class:"rounded-lg bg-gray-100 px-3 py-1 text-sm font-medium hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:i[21]||(i[21]=k=>a.weeklyOpusCostLimit="")}," 自定义 ")]),_(e("input",{"onUpdate:modelValue":i[22]||(i[22]=k=>a.weeklyOpusCostLimit=k),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",min:"0",placeholder:"0 表示无限制",step:"0.01",type:"number"},null,512),[[le,a.weeklyOpusCostLimit]]),i[68]||(i[68]=e("p",{class:"text-xs text-gray-500 dark:text-gray-400"}," 设置 Claude 模型的周费用限制(周一到周日),仅对 Claude 模型请求生效,0 或留空表示无限制 ",-1))])]),e("div",null,[i[70]||(i[70]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"并发限制",-1)),_(e("input",{"onUpdate:modelValue":i[23]||(i[23]=k=>a.concurrencyLimit=k),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",min:"0",placeholder:"0 表示无限制",type:"number"},null,512),[[le,a.concurrencyLimit]]),i[71]||(i[71]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"}," 设置此 API Key 可同时处理的最大请求数 ",-1))]),e("div",null,[e("div",Xl,[_(e("input",{id:"editIsActive","onUpdate:modelValue":i[24]||(i[24]=k=>a.isActive=k),class:"h-4 w-4 rounded border-gray-300 bg-gray-100 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox"},null,512),[[Ie,a.isActive]]),i[72]||(i[72]=e("label",{class:"ml-2 cursor-pointer text-sm font-semibold text-gray-700 dark:text-gray-300",for:"editIsActive"}," 激活账号 ",-1))]),i[73]||(i[73]=e("p",{class:"mb-4 text-xs text-gray-500 dark:text-gray-400"}," 取消勾选将禁用此 API Key,暂停所有请求,客户端返回 401 错误 ",-1))]),e("div",null,[i[78]||(i[78]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"服务权限",-1)),e("div",Zl,[e("label",en,[_(e("input",{"onUpdate:modelValue":i[25]||(i[25]=k=>a.permissions=k),class:"mr-2 rounded text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox",value:"claude",onChange:Z},null,544),[[Ie,a.permissions]]),i[74]||(i[74]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"Claude",-1))]),e("label",tn,[_(e("input",{"onUpdate:modelValue":i[26]||(i[26]=k=>a.permissions=k),class:"mr-2 rounded text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox",value:"gemini",onChange:Z},null,544),[[Ie,a.permissions]]),i[75]||(i[75]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"Gemini",-1))]),e("label",sn,[_(e("input",{"onUpdate:modelValue":i[27]||(i[27]=k=>a.permissions=k),class:"mr-2 rounded text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox",value:"openai",onChange:Z},null,544),[[Ie,a.permissions]]),i[76]||(i[76]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"OpenAI",-1))]),e("label",an,[_(e("input",{"onUpdate:modelValue":i[28]||(i[28]=k=>a.permissions=k),class:"mr-2 rounded text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox",value:"droid",onChange:Z},null,544),[[Ie,a.permissions]]),i[77]||(i[77]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"Droid",-1))])]),i[79]||(i[79]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"}," 不选择任何服务表示允许访问全部服务 ",-1))]),e("div",null,[e("div",rn,[i[80]||(i[80]=e("label",{class:"text-sm font-semibold text-gray-700 dark:text-gray-300"},"专属账号绑定",-1)),e("button",{class:"flex items-center gap-1 text-sm text-blue-600 transition-colors hover:text-blue-800 disabled:cursor-not-allowed disabled:opacity-50 dark:text-blue-400 dark:hover:text-blue-300",disabled:S.value,title:"刷新账号列表",type:"button",onClick:Te},[e("i",{class:F(["fas",S.value?"fa-spinner fa-spin":"fa-sync-alt","text-xs"])},null,2),e("span",null,u(S.value?"刷新中...":"刷新账号"),1)],8,on)]),e("div",ln,[e("div",null,[i[81]||(i[81]=e("label",{class:"mb-1 block text-sm font-medium text-gray-600 dark:text-gray-400"},"Claude 专属账号",-1)),ne(_e,{modelValue:a.claudeAccountId,"onUpdate:modelValue":i[29]||(i[29]=k=>a.claudeAccountId=k),accounts:M.value.claude,"default-option-text":"使用共享账号池",disabled:a.permissions.length>0&&!a.permissions.includes("claude"),groups:M.value.claudeGroups,placeholder:"请选择Claude账号",platform:"claude"},null,8,["modelValue","accounts","disabled","groups"])]),e("div",null,[i[82]||(i[82]=e("label",{class:"mb-1 block text-sm font-medium text-gray-600 dark:text-gray-400"},"Gemini 专属账号",-1)),ne(_e,{modelValue:a.geminiAccountId,"onUpdate:modelValue":i[30]||(i[30]=k=>a.geminiAccountId=k),accounts:M.value.gemini,"default-option-text":"使用共享账号池",disabled:a.permissions.length>0&&!a.permissions.includes("gemini"),groups:M.value.geminiGroups,placeholder:"请选择Gemini账号",platform:"gemini"},null,8,["modelValue","accounts","disabled","groups"])]),e("div",null,[i[83]||(i[83]=e("label",{class:"mb-1 block text-sm font-medium text-gray-600 dark:text-gray-400"},"OpenAI 专属账号",-1)),ne(_e,{modelValue:a.openaiAccountId,"onUpdate:modelValue":i[31]||(i[31]=k=>a.openaiAccountId=k),accounts:M.value.openai,"default-option-text":"使用共享账号池",disabled:a.permissions.length>0&&!a.permissions.includes("openai"),groups:M.value.openaiGroups,placeholder:"请选择OpenAI账号",platform:"openai"},null,8,["modelValue","accounts","disabled","groups"])]),e("div",null,[i[84]||(i[84]=e("label",{class:"mb-1 block text-sm font-medium text-gray-600 dark:text-gray-400"},"Bedrock 专属账号",-1)),ne(_e,{modelValue:a.bedrockAccountId,"onUpdate:modelValue":i[32]||(i[32]=k=>a.bedrockAccountId=k),accounts:M.value.bedrock,"default-option-text":"使用共享账号池",disabled:a.permissions.length>0&&!a.permissions.includes("claude"),groups:[],placeholder:"请选择Bedrock账号",platform:"bedrock"},null,8,["modelValue","accounts","disabled"])]),e("div",null,[i[85]||(i[85]=e("label",{class:"mb-1 block text-sm font-medium text-gray-600 dark:text-gray-400"},"Droid 专属账号",-1)),ne(_e,{modelValue:a.droidAccountId,"onUpdate:modelValue":i[33]||(i[33]=k=>a.droidAccountId=k),accounts:M.value.droid,"default-option-text":"使用共享账号池",disabled:a.permissions.length>0&&!a.permissions.includes("droid"),groups:M.value.droidGroups,placeholder:"请选择Droid账号",platform:"droid"},null,8,["modelValue","accounts","disabled","groups"])])]),i[86]||(i[86]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"}," 修改绑定账号将影响此API Key的请求路由 ",-1))]),e("div",null,[e("div",nn,[_(e("input",{id:"editEnableModelRestriction","onUpdate:modelValue":i[34]||(i[34]=k=>a.enableModelRestriction=k),class:"h-4 w-4 rounded border-gray-300 bg-gray-100 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox"},null,512),[[Ie,a.enableModelRestriction]]),i[87]||(i[87]=e("label",{class:"ml-2 cursor-pointer text-sm font-semibold text-gray-700 dark:text-gray-300",for:"editEnableModelRestriction"}," 启用模型限制 ",-1))]),a.enableModelRestriction?(o(),n("div",dn,[e("div",null,[i[90]||(i[90]=e("label",{class:"mb-2 block text-sm font-medium text-gray-600 dark:text-gray-400"},"限制的模型列表",-1)),e("div",un,[(o(!0),n(re,null,ge(a.restrictedModels,(k,ie)=>(o(),n("span",{key:ie,class:"inline-flex items-center rounded-full bg-red-100 px-3 py-1 text-sm text-red-800 dark:bg-red-900/30 dark:text-red-400"},[K(u(k)+" ",1),e("button",{class:"ml-2 text-red-600 hover:text-red-800 dark:text-red-400 dark:hover:text-red-300",type:"button",onClick:ae=>D(ie)},i[88]||(i[88]=[e("i",{class:"fas fa-times text-xs"},null,-1)]),8,cn)]))),128)),a.restrictedModels.length===0?(o(),n("span",gn," 暂无限制的模型 ")):$("",!0)]),e("div",pn,[e("div",mn,[(o(!0),n(re,null,ge(x.value,k=>(o(),n("button",{key:k,class:"flex-shrink-0 rounded-lg bg-gray-100 px-3 py-1 text-xs text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600 sm:text-sm",type:"button",onClick:ie=>d(k)},u(k),9,xn))),128)),x.value.length===0?(o(),n("span",yn," 所有常用模型已在限制列表中 ")):$("",!0)]),e("div",fn,[_(e("input",{"onUpdate:modelValue":i[35]||(i[35]=k=>a.modelInput=k),class:"form-input flex-1 border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:placeholder-gray-400",placeholder:"输入模型名称,按回车添加",type:"text",onKeydown:tt($e(V,["prevent"]),["enter"])},null,40,bn),[[le,a.modelInput]]),e("button",{class:"rounded-lg bg-red-500 px-4 py-2 text-white transition-colors hover:bg-red-600",type:"button",onClick:V},i[89]||(i[89]=[e("i",{class:"fas fa-plus"},null,-1)]))])]),i[91]||(i[91]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"}," 设置此API Key无法访问的模型,例如:claude-opus-4-20250514 ",-1))])])):$("",!0)]),e("div",null,[e("div",vn,[_(e("input",{id:"editEnableClientRestriction","onUpdate:modelValue":i[36]||(i[36]=k=>a.enableClientRestriction=k),class:"h-4 w-4 rounded border-gray-300 bg-gray-100 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox"},null,512),[[Ie,a.enableClientRestriction]]),i[92]||(i[92]=e("label",{class:"ml-2 cursor-pointer text-sm font-semibold text-gray-700 dark:text-gray-300",for:"editEnableClientRestriction"}," 启用客户端限制 ",-1))]),a.enableClientRestriction?(o(),n("div",kn,[e("div",null,[i[93]||(i[93]=e("label",{class:"mb-2 block text-sm font-medium text-gray-600 dark:text-gray-400"},"允许的客户端",-1)),i[94]||(i[94]=e("p",{class:"mb-3 text-xs text-gray-500 dark:text-gray-400"}," 勾选允许使用此API Key的客户端 ",-1)),e("div",wn,[(o(!0),n(re,null,ge(se.value,k=>(o(),n("div",{key:k.id,class:"flex items-start"},[_(e("input",{id:`edit_client_${k.id}`,"onUpdate:modelValue":i[37]||(i[37]=ie=>a.allowedClients=ie),class:"mt-0.5 h-4 w-4 rounded border-gray-300 bg-gray-100 text-blue-600 focus:ring-blue-500",type:"checkbox",value:k.id},null,8,hn),[[Ie,a.allowedClients]]),e("label",{class:"ml-2 flex-1 cursor-pointer",for:`edit_client_${k.id}`},[e("span",Cn,u(k.name),1),e("span",$n,u(k.description),1)],8,An)]))),128))])])])):$("",!0)]),e("div",In,[e("button",{class:"flex-1 rounded-xl bg-gray-100 px-6 py-3 font-semibold text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:i[38]||(i[38]=k=>N.$emit("close"))}," 取消 "),e("button",{class:"btn btn-primary flex-1 px-6 py-3 font-semibold",disabled:z.value,type:"submit"},[z.value?(o(),n("div",Ln)):(o(),n("i",Dn)),K(" "+u(z.value?"保存中...":"保存修改"),1)],8,Kn)])],32)])]),ne(at,{"cancel-text":X.value.cancelText,"confirm-text":X.value.confirmText,message:X.value.message,show:W.value,title:X.value.title,type:X.value.type,onCancel:f,onConfirm:L},null,8,["cancel-text","confirm-text","message","show","title","type"])]))}},_n={class:"modal fixed inset-0 z-50 flex items-center justify-center p-4"},Sn={class:"modal-content mx-auto flex max-h-[90vh] w-full max-w-md flex-col p-8"},Mn={class:"mb-6 flex items-center justify-between"},Un={class:"modal-scroll-content custom-scrollbar flex-1 space-y-6"},Rn={class:"rounded-lg border border-blue-200 bg-blue-50 p-4"},Vn={class:"flex items-start gap-3"},Pn={class:"text-sm text-gray-700"},En={class:"mt-1 text-xs text-gray-600"},On={key:0,class:"mt-3"},jn=["min"],Gn={key:1,class:"mt-2 text-xs text-gray-500"},zn={class:"flex gap-3 pt-4"},qn=["disabled"],Fn={key:0,class:"loading-spinner mr-2"},Bn={key:1,class:"fas fa-clock mr-2"},Wn={__name:"RenewApiKeyModal",props:{apiKey:{type:Object,required:!0}},emits:["close","success"],setup(h,{emit:J}){const c=h,P=J,Y=A(!1),I=ut({renewDuration:"30d",customExpireDate:"",newExpiresAt:null}),z=j(()=>{const v=new Date;return c.apiKey.expiresAt&&new Date(c.apiKey.expiresAt)>v?new Date(c.apiKey.expiresAt).toISOString().slice(0,16):(v.setMinutes(v.getMinutes()+1),v.toISOString().slice(0,16))}),S=v=>new Date(v).toLocaleString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}),W=()=>{if(!I.renewDuration){I.newExpiresAt=null;return}if(I.renewDuration==="permanent"){I.newExpiresAt=null;return}if(I.renewDuration==="custom")return;const v=c.apiKey.expiresAt&&new Date(c.apiKey.expiresAt)>new Date?new Date(c.apiKey.expiresAt):new Date,f=I.renewDuration.match(/(\d+)([dhmy])/);if(f){const[,M,se]=f,G=parseInt(M);switch(se){case"d":v.setDate(v.getDate()+G);break;case"h":v.setHours(v.getHours()+G);break;case"m":v.setMonth(v.getMonth()+G);break;case"y":v.setFullYear(v.getFullYear()+G);break}I.newExpiresAt=v.toISOString()}},X=()=>{I.customExpireDate&&(I.newExpiresAt=new Date(I.customExpireDate).toISOString())},Q=async()=>{Y.value=!0;try{const v={expiresAt:I.renewDuration==="permanent"?null:I.newExpiresAt},L=await Vt(c.apiKey.id,v);L.success?(R("API Key 续期成功","success"),P("success"),P("close")):R(L.message||"续期失败","error")}catch{R("续期失败","error")}finally{Y.value=!1}};return W(),(v,L)=>(o(),he(Oe,{to:"body"},[e("div",_n,[e("div",Sn,[e("div",Mn,[L[5]||(L[5]=e("div",{class:"flex items-center gap-3"},[e("div",{class:"flex h-10 w-10 items-center justify-center rounded-xl bg-gradient-to-br from-green-500 to-green-600"},[e("i",{class:"fas fa-clock text-white"})]),e("h3",{class:"text-xl font-bold text-gray-900"},"续期 API Key")],-1)),e("button",{class:"text-gray-400 transition-colors hover:text-gray-600",onClick:L[0]||(L[0]=f=>v.$emit("close"))},L[4]||(L[4]=[e("i",{class:"fas fa-times text-xl"},null,-1)]))]),e("div",Un,[e("div",Rn,[e("div",Vn,[L[7]||(L[7]=e("div",{class:"flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-lg bg-blue-500"},[e("i",{class:"fas fa-info text-sm text-white"})],-1)),e("div",null,[L[6]||(L[6]=e("h4",{class:"mb-1 font-semibold text-gray-800"},"API Key 信息",-1)),e("p",Pn,u(h.apiKey.name),1),e("p",En," 当前过期时间:"+u(h.apiKey.expiresAt?S(h.apiKey.expiresAt):"永不过期"),1)])])]),e("div",null,[L[9]||(L[9]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700"},"续期时长",-1)),_(e("select",{"onUpdate:modelValue":L[1]||(L[1]=f=>I.renewDuration=f),class:"form-input w-full",onChange:W},L[8]||(L[8]=[e("option",{value:"7d"},"延长 7 天",-1),e("option",{value:"30d"},"延长 30 天",-1),e("option",{value:"90d"},"延长 90 天",-1),e("option",{value:"180d"},"延长 180 天",-1),e("option",{value:"365d"},"延长 365 天",-1),e("option",{value:"custom"},"自定义日期",-1),e("option",{value:"permanent"},"设为永不过期",-1)]),544),[[kt,I.renewDuration]]),I.renewDuration==="custom"?(o(),n("div",On,[_(e("input",{"onUpdate:modelValue":L[2]||(L[2]=f=>I.customExpireDate=f),class:"form-input w-full",min:z.value,type:"datetime-local",onChange:X},null,40,jn),[[le,I.customExpireDate]])])):$("",!0),I.newExpiresAt?(o(),n("p",Gn," 新的过期时间:"+u(S(I.newExpiresAt)),1)):$("",!0)])]),e("div",zn,[e("button",{class:"flex-1 rounded-xl bg-gray-100 px-6 py-3 font-semibold text-gray-700 transition-colors hover:bg-gray-200",type:"button",onClick:L[3]||(L[3]=f=>v.$emit("close"))}," 取消 "),e("button",{class:"btn btn-primary flex-1 px-6 py-3 font-semibold",disabled:Y.value||!I.renewDuration,type:"button",onClick:Q},[Y.value?(o(),n("div",Fn)):(o(),n("i",Bn)),K(" "+u(Y.value?"续期中...":"确认续期"),1)],8,qn)])])])]))}},Nn={class:"modal fixed inset-0 z-50 flex items-center justify-center p-4"},Hn={class:"modal-content custom-scrollbar mx-auto max-h-[90vh] w-full max-w-lg overflow-y-auto p-8"},Yn={class:"mb-6 space-y-4"},Qn={class:"rounded-lg border border-gray-200 bg-gray-50 p-3 dark:border-gray-600 dark:bg-gray-800"},Jn={class:"font-medium text-gray-900 dark:text-gray-100"},Xn={key:0},Zn={class:"rounded-lg border border-gray-200 bg-gray-50 p-3 dark:border-gray-600 dark:bg-gray-800"},ei={class:"text-gray-700 dark:text-gray-300"},ti={class:"relative"},si={class:"flex min-h-[60px] items-center break-all rounded-lg border border-gray-700 bg-gray-900 p-4 pr-14 font-mono text-sm text-white dark:border-gray-600 dark:bg-gray-900"},ai={class:"absolute right-3 top-3"},ri=["title"],oi={__name:"NewApiKeyModal",props:{apiKey:{type:Object,required:!0}},emits:["close"],setup(h,{emit:J}){const c=h,P=J,Y=A(!1),I=A(!1),z=A({title:"",message:"",type:"primary",confirmText:"确认",cancelText:"取消"}),S=A(null),W=(C,T,a="确认",Z="取消",V="primary")=>new Promise(D=>{z.value={title:C,message:T,confirmText:a,cancelText:Z,type:V},S.value=D,I.value=!0}),X=()=>{var C;I.value=!1,(C=S.value)==null||C.call(S,!0)},Q=()=>{var C;I.value=!1,(C=S.value)==null||C.call(S,!1)},v=()=>{if(typeof window<"u"){const C=window.location.protocol,T=window.location.host;let a=C+"//"+T;const Z=window.location.href,V=Z.indexOf("/",8);return V!==-1&&(a=Z.substring(0,V)),a}return""},L=j(()=>v()+"/api"),f=()=>{Y.value=!Y.value},M=()=>{const C=c.apiKey.apiKey||c.apiKey.key||"";return C?Y.value||C.length<=12?C:C.substring(0,8)+"●".repeat(Math.max(0,C.length-12))+C.substring(C.length-4):""},se=async(C,T)=>{try{await navigator.clipboard.writeText(C),R(T,"success")}catch{const Z=document.createElement("textarea");Z.value=C,document.body.appendChild(Z),Z.select();try{document.execCommand("copy"),R(T,"success")}catch{R("复制失败,请手动复制","error")}finally{document.body.removeChild(Z)}}},G=async()=>{const C=c.apiKey.apiKey||c.apiKey.key||"";if(!C){R("API Key 不存在","error");return}const T=`export ANTHROPIC_BASE_URL="${L.value}" -export ANTHROPIC_AUTH_TOKEN="${C}"`;await se(T,"配置信息已复制到剪贴板")},ee=async()=>{const C=c.apiKey.apiKey||c.apiKey.key||"";if(!C){R("API Key 不存在","error");return}await se(C,"API Key 已复制")},te=async()=>{await W("关闭提醒",`关闭后将无法再次查看完整的API Key,请确保已经妥善保存。 - -确定要关闭吗?`,"确定关闭","取消","warning")&&P("close")},H=async()=>{await W("确定要关闭吗?",`您还没有保存API Key,关闭后将无法再次查看。 - -建议您先复制API Key再关闭。`,"仍然关闭","返回复制","warning")&&P("close")};return(C,T)=>(o(),he(Oe,{to:"body"},[e("div",Nn,[e("div",Hn,[e("div",{class:"mb-6 flex items-center justify-between"},[T[1]||(T[1]=e("div",{class:"flex items-center gap-3"},[e("div",{class:"flex h-12 w-12 items-center justify-center rounded-xl bg-gradient-to-br from-green-500 to-green-600"},[e("i",{class:"fas fa-check text-lg text-white"})]),e("div",null,[e("h3",{class:"text-xl font-bold text-gray-900 dark:text-gray-100"},"API Key 创建成功"),e("p",{class:"text-sm text-gray-600 dark:text-gray-400"},"请妥善保存您的 API Key")])],-1)),e("button",{class:"text-gray-400 transition-colors hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300",title:"直接关闭(不推荐)",onClick:H},T[0]||(T[0]=[e("i",{class:"fas fa-times text-xl"},null,-1)]))]),T[9]||(T[9]=e("div",{class:"mb-6 border-l-4 border-amber-400 bg-amber-50 p-4 dark:border-amber-500 dark:bg-amber-900/20"},[e("div",{class:"flex items-start"},[e("div",{class:"mt-0.5 flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-lg bg-amber-400 dark:bg-amber-500"},[e("i",{class:"fas fa-exclamation-triangle text-sm text-white"})]),e("div",{class:"ml-3"},[e("h5",{class:"mb-1 font-semibold text-amber-900 dark:text-amber-400"},"重要提醒"),e("p",{class:"text-sm text-amber-800 dark:text-amber-300"}," 这是您唯一能看到完整 API Key 的机会。关闭此窗口后,系统将不再显示完整的 API Key。请立即复制并妥善保存。 ")])])],-1)),e("div",Yn,[e("div",null,[T[2]||(T[2]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"API Key 名称",-1)),e("div",Qn,[e("span",Jn,u(h.apiKey.name),1)])]),h.apiKey.description?(o(),n("div",Xn,[T[3]||(T[3]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"备注",-1)),e("div",Zn,[e("span",ei,u(h.apiKey.description||"无描述"),1)])])):$("",!0),e("div",null,[T[4]||(T[4]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"API Key",-1)),e("div",ti,[e("div",si,u(M()),1),e("div",ai,[e("button",{class:"btn-icon-sm bg-gray-700 hover:bg-gray-800 dark:bg-gray-700 dark:hover:bg-gray-600",title:Y.value?"隐藏API Key":"显示完整API Key",type:"button",onClick:f},[e("i",{class:F(["fas",Y.value?"fa-eye-slash":"fa-eye","text-gray-300"])},null,2)],8,ri)])]),T[5]||(T[5]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"}," 点击眼睛图标切换显示模式,使用下方按钮复制环境变量配置 ",-1))])]),e("div",{class:"flex flex-col gap-3 sm:gap-4"},[e("div",{class:"flex flex-col gap-3 sm:flex-row sm:gap-4"},[e("button",{class:"flex w-full items-center justify-center gap-2 rounded-xl border border-blue-200 bg-blue-50 px-5 py-3 text-sm font-semibold text-blue-700 transition-colors hover:border-blue-300 hover:bg-blue-100 dark:border-blue-500/50 dark:bg-blue-500/10 dark:text-blue-200 dark:hover:bg-blue-500/20 sm:flex-1 sm:text-base",onClick:ee},T[6]||(T[6]=[e("i",{class:"fas fa-key"},null,-1),K(" 仅复制密钥 ",-1)])),e("button",{class:"btn btn-primary flex w-full items-center justify-center gap-2 px-5 py-3 text-sm font-semibold sm:flex-1 sm:text-base",onClick:G},T[7]||(T[7]=[e("i",{class:"fas fa-copy"},null,-1),K(" 复制Claude配置 ",-1)]))]),e("button",{class:"flex w-full items-center justify-center gap-2 rounded-xl border border-gray-300 bg-gray-200 px-5 py-3 text-sm font-semibold text-gray-800 transition-colors hover:border-gray-400 hover:bg-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200 dark:hover:bg-gray-600 sm:text-base",onClick:te},T[8]||(T[8]=[e("i",{class:"fas fa-check-circle"},null,-1),K(" 我已保存 ",-1)]))])])]),ne(at,{"cancel-text":z.value.cancelText,"confirm-text":z.value.confirmText,message:z.value.message,show:I.value,title:z.value.title,type:z.value.type,onCancel:Q,onConfirm:X},null,8,["cancel-text","confirm-text","message","show","title","type"])]))}},li=st(oi,[["__scopeId","data-v-42e73733"]]),ni={class:"modal fixed inset-0 z-50 flex items-center justify-center p-4"},ii={class:"modal-content custom-scrollbar mx-auto max-h-[90vh] w-full max-w-2xl overflow-y-auto p-8"},di={class:"mb-6 flex items-center justify-between"},ui={class:"flex items-center gap-3"},ci={class:"text-sm text-gray-600"},gi={class:"mb-6 grid grid-cols-2 gap-4 md:grid-cols-4"},pi={class:"rounded-lg border border-blue-200 bg-gradient-to-br from-blue-50 to-blue-100 p-4"},mi={class:"flex items-center justify-between"},xi={class:"mt-1 text-2xl font-bold text-blue-900"},yi={class:"rounded-lg border border-green-200 bg-gradient-to-br from-green-50 to-green-100 p-4"},fi={class:"flex items-center justify-between"},bi={class:"mt-1 truncate text-lg font-bold text-green-900"},vi={class:"rounded-lg border border-purple-200 bg-gradient-to-br from-purple-50 to-purple-100 p-4"},ki={class:"flex items-center justify-between"},wi={class:"mt-1 text-lg font-bold text-purple-900"},hi={class:"rounded-lg border border-orange-200 bg-gradient-to-br from-orange-50 to-orange-100 p-4"},Ai={class:"flex items-center justify-between"},Ci={class:"mt-1 text-lg font-bold text-orange-900"},$i={class:"mb-6"},Ii={class:"mb-3 flex items-center justify-between"},Ki={class:"flex items-center gap-2"},Li={key:0,class:"custom-scrollbar max-h-48 overflow-y-auto rounded-lg bg-gray-900 p-4"},Di={class:"font-mono text-xs text-gray-300"},Ti={__name:"BatchApiKeyModal",props:{apiKeys:{type:Array,required:!0}},emits:["close"],setup(h,{emit:J}){const c=h,P=J,Y=A(!1),I=A(!1),z=A({title:"",message:"",type:"primary",confirmText:"确认",cancelText:"取消"}),S=A(null),W=(H,C,T="确认",a="取消",Z="primary")=>new Promise(V=>{z.value={title:H,message:C,confirmText:T,cancelText:a,type:Z},S.value=V,I.value=!0}),X=()=>{var H;I.value=!1,(H=S.value)==null||H.call(S,!0)},Q=()=>{var H;I.value=!1,(H=S.value)==null||H.call(S,!1)},v=j(()=>{if(c.apiKeys.length>0){const H=c.apiKeys[0],C=H.name.match(/^(.+)_\d+$/);return C?C[1]:H.name}return""}),L=()=>{if(c.apiKeys.length===0)return"未知";const H=c.apiKeys[0].permissions;return{all:"全部服务",claude:"仅 Claude",gemini:"仅 Gemini"}[H]||H},f=()=>{if(c.apiKeys.length===0)return"未知";const H=c.apiKeys[0].expiresAt;if(!H)return"永不过期";const C=new Date(H),a=Math.ceil((C-new Date)/(1e3*60*60*24));return a<=7?`${a}天`:a<=30?`${Math.ceil(a/7)}周`:a<=365?`${Math.ceil(a/30)}个月`:`${Math.ceil(a/365)}年`},M=()=>{Y.value=!Y.value},se=()=>{const C=c.apiKeys.slice(0,10).map(T=>`${T.name}: ${T.apiKey||T.key||""}`);return c.apiKeys.length>10&&C.push(`... 还有 ${c.apiKeys.length-10} 个 API Key`),C.join(` -`)},G=()=>{const H=c.apiKeys.map(V=>`${V.name}: ${V.apiKey||V.key||""}`).join(` -`),C=new Blob([H],{type:"text/plain;charset=utf-8"}),T=URL.createObjectURL(C),a=document.createElement("a");a.href=T;const Z=new Date().toISOString().replace(/[:.]/g,"-").slice(0,-5);a.download=`api-keys-${v.value}-${Z}.txt`,document.body.appendChild(a),a.click(),document.body.removeChild(a),URL.revokeObjectURL(T),R("API Keys 文件已下载","success")},ee=async()=>{await W("关闭提醒",`关闭后将无法再次查看这些 API Key,请确保已经下载并妥善保存。 - -确定要关闭吗?`,"确定关闭","返回下载","warning")&&P("close")},te=async()=>{await W("确定要关闭吗?",`您还没有下载 API Keys,关闭后将无法再次查看。 - -强烈建议您先下载保存。`,"仍然关闭","返回下载","warning")&&P("close")};return(H,C)=>(o(),he(Oe,{to:"body"},[e("div",ni,[e("div",ii,[e("div",di,[e("div",ui,[C[1]||(C[1]=e("div",{class:"flex h-12 w-12 items-center justify-center rounded-xl bg-gradient-to-br from-green-500 to-green-600"},[e("i",{class:"fas fa-layer-group text-lg text-white"})],-1)),e("div",null,[C[0]||(C[0]=e("h3",{class:"text-xl font-bold text-gray-900"},"批量创建成功",-1)),e("p",ci,"成功创建 "+u(h.apiKeys.length)+" 个 API Key",1)])]),e("button",{class:"text-gray-400 transition-colors hover:text-gray-600",title:"直接关闭(不推荐)",onClick:te},C[2]||(C[2]=[e("i",{class:"fas fa-times text-xl"},null,-1)]))]),C[14]||(C[14]=e("div",{class:"mb-6 border-l-4 border-amber-400 bg-amber-50 p-4"},[e("div",{class:"flex items-start"},[e("div",{class:"mt-0.5 flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-lg bg-amber-400"},[e("i",{class:"fas fa-exclamation-triangle text-sm text-white"})]),e("div",{class:"ml-3"},[e("h5",{class:"mb-1 font-semibold text-amber-900"},"重要提醒"),e("p",{class:"text-sm text-amber-800"}," 这是您唯一能看到所有 API Key 的机会。关闭此窗口后,系统将不再显示完整的 API Key。请立即下载并妥善保存。 ")])])],-1)),e("div",gi,[e("div",pi,[e("div",mi,[e("div",null,[C[3]||(C[3]=e("p",{class:"text-xs font-medium text-blue-600"},"创建数量",-1)),e("p",xi,u(h.apiKeys.length),1)]),C[4]||(C[4]=e("div",{class:"flex h-10 w-10 items-center justify-center rounded-lg bg-blue-500 bg-opacity-20"},[e("i",{class:"fas fa-key text-blue-600"})],-1))])]),e("div",yi,[e("div",fi,[e("div",null,[C[5]||(C[5]=e("p",{class:"text-xs font-medium text-green-600"},"基础名称",-1)),e("p",bi,u(v.value),1)]),C[6]||(C[6]=e("div",{class:"flex h-10 w-10 items-center justify-center rounded-lg bg-green-500 bg-opacity-20"},[e("i",{class:"fas fa-tag text-green-600"})],-1))])]),e("div",vi,[e("div",ki,[e("div",null,[C[7]||(C[7]=e("p",{class:"text-xs font-medium text-purple-600"},"权限范围",-1)),e("p",wi,u(L()),1)]),C[8]||(C[8]=e("div",{class:"flex h-10 w-10 items-center justify-center rounded-lg bg-purple-500 bg-opacity-20"},[e("i",{class:"fas fa-shield-alt text-purple-600"})],-1))])]),e("div",hi,[e("div",Ai,[e("div",null,[C[9]||(C[9]=e("p",{class:"text-xs font-medium text-orange-600"},"过期时间",-1)),e("p",Ci,u(f()),1)]),C[10]||(C[10]=e("div",{class:"flex h-10 w-10 items-center justify-center rounded-lg bg-orange-500 bg-opacity-20"},[e("i",{class:"fas fa-clock text-orange-600"})],-1))])])]),e("div",$i,[e("div",Ii,[C[12]||(C[12]=e("label",{class:"text-sm font-semibold text-gray-700"},"API Keys 预览",-1)),e("div",Ki,[e("button",{class:"flex items-center gap-1 text-xs text-blue-600 hover:text-blue-800",type:"button",onClick:M},[e("i",{class:F(["fas",Y.value?"fa-eye-slash":"fa-eye"])},null,2),K(" "+u(Y.value?"隐藏":"显示")+"预览 ",1)]),C[11]||(C[11]=e("span",{class:"text-xs text-gray-500"},"(最多显示前10个)",-1))])]),Y.value?(o(),n("div",Li,[e("pre",Di,u(se()),1)])):$("",!0)]),e("div",{class:"flex gap-3"},[e("button",{class:"btn btn-primary flex flex-1 items-center justify-center gap-2 px-6 py-3 font-semibold",onClick:G},C[13]||(C[13]=[e("i",{class:"fas fa-download"},null,-1),K(" 下载所有 API Keys ",-1)])),e("button",{class:"rounded-xl border border-gray-300 bg-gray-200 px-6 py-3 font-semibold text-gray-800 transition-colors hover:bg-gray-300",onClick:ee}," 我已保存 ")]),C[15]||(C[15]=e("div",{class:"mt-4 rounded-lg border border-blue-200 bg-blue-50 p-3"},[e("p",{class:"flex items-start text-xs text-blue-700"},[e("i",{class:"fas fa-info-circle mr-2 mt-0.5 flex-shrink-0"}),e("span",null," 下载的文件格式为文本文件(.txt),每行包含一个 API Key。 请将文件保存在安全的位置,避免泄露。 ")])],-1))])]),ne(at,{"cancel-text":z.value.cancelText,"confirm-text":z.value.confirmText,message:z.value.message,show:I.value,title:z.value.title,type:z.value.type,onCancel:Q,onConfirm:X},null,8,["cancel-text","confirm-text","message","show","title","type"])]))}},_i=st(Ti,[["__scopeId","data-v-fa69edb5"]]),Si={class:"modal fixed inset-0 z-50 flex items-center justify-center p-3 sm:p-4"},Mi={class:"modal-content mx-auto flex max-h-[90vh] w-full max-w-4xl flex-col p-4 sm:p-6 md:p-8"},Ui={class:"mb-4 flex items-center justify-between sm:mb-6"},Ri={class:"flex items-center gap-2 sm:gap-3"},Vi={class:"text-lg font-bold text-gray-900 dark:text-gray-100 sm:text-xl"},Pi={class:"rounded-lg bg-blue-50 p-4 dark:bg-blue-900/20"},Ei={class:"flex items-start gap-3"},Oi={class:"mt-1 text-sm text-blue-700 dark:text-blue-400"},ji={class:"space-y-4"},Gi={class:"flex flex-wrap gap-4"},zi={class:"flex cursor-pointer items-center"},qi={class:"flex cursor-pointer items-center"},Fi={class:"flex cursor-pointer items-center"},Bi={class:"flex cursor-pointer items-center"},Wi={key:0,class:"space-y-3"},Ni={key:0},Hi={class:"mb-2 text-xs font-medium text-gray-600 dark:text-gray-400"},Yi={class:"flex flex-wrap gap-2"},Qi=["onClick"],Ji={key:1},Xi={class:"flex flex-wrap gap-2"},Zi=["onClick"],ed={class:"flex gap-2"},td=["onKeypress"],sd={class:"rounded-lg border border-blue-200 bg-blue-50 p-3 dark:border-blue-700 dark:bg-blue-900/20"},ad={class:"space-y-2"},rd={class:"grid grid-cols-1 gap-2 lg:grid-cols-3"},od={class:"mb-3 flex items-center gap-4"},ld={class:"flex gap-4"},nd={class:"flex cursor-pointer items-center"},id={class:"flex cursor-pointer items-center"},dd={class:"flex cursor-pointer items-center"},ud={class:"flex flex-wrap gap-4"},cd={class:"flex cursor-pointer items-center"},gd={class:"flex cursor-pointer items-center"},pd={class:"flex cursor-pointer items-center"},md={class:"flex cursor-pointer items-center"},xd={class:"flex cursor-pointer items-center"},yd={class:"flex cursor-pointer items-center"},fd={class:"mb-3 flex items-center justify-between"},bd=["disabled"],vd={class:"grid grid-cols-1 gap-3"},kd={class:"flex gap-3 pt-4"},wd=["disabled"],hd={key:0,class:"loading-spinner mr-2"},Ad={key:1,class:"fas fa-save mr-2"},os="__KEEP_ORIGINAL__",Cd={__name:"BatchEditApiKeyModal",props:{selectedKeys:{type:Array,required:!0},accounts:{type:Object,default:()=>({claude:[],gemini:[],openai:[],openaiResponses:[],bedrock:[],droid:[],claudeGroups:[],geminiGroups:[],openaiGroups:[],droidGroups:[]})}},emits:["close","success"],setup(h,{emit:J}){const c=h,P=J,Y=ls(),I=A(!1),z=A(!1),S=A({claude:[],gemini:[],openai:[],bedrock:[],droid:[],claudeGroups:[],geminiGroups:[],openaiGroups:[],droidGroups:[]}),W=A(""),X=A([]),Q=A("none"),v=j(()=>c.selectedKeys.length),L=j(()=>X.value.filter(x=>!f.tags.includes(x))),f=ut({rateLimitCost:"",rateLimitWindow:"",rateLimitRequests:"",concurrencyLimit:"",dailyCostLimit:"",totalCostLimit:"",weeklyOpusCostLimit:"",permissions:"",claudeAccountId:"",geminiAccountId:"",openaiAccountId:"",bedrockAccountId:"",droidAccountId:"",tags:[],isActive:null}),M=[{value:os,label:"不修改"},{value:"SHARED_POOL",label:"使用共享账号池"}],se=x=>j({get:()=>f[x]===""?os:f[x],set:d=>{!d||d===os?f[x]="":f[x]=d}}),G=se("claudeAccountId"),ee=se("geminiAccountId"),te=se("openaiAccountId"),H=se("bedrockAccountId"),C=se("droidAccountId"),T=x=>!f.permissions||f.permissions==="all"||Array.isArray(f.permissions)&&f.permissions.length===0?!0:Array.isArray(f.permissions)?f.permissions.includes(x):f.permissions===x,a=()=>{if(W.value&&W.value.trim()){const x=W.value.trim();f.tags.includes(x)||f.tags.push(x),W.value=""}},Z=x=>{f.tags.includes(x)||f.tags.push(x)},V=x=>{f.tags.splice(x,1)},D=async()=>{var x,d;z.value=!0;try{const[p,b,oe,xe,Te,Ce,N,i,k]=await Promise.all([Pt(),Et(),Ot(),jt(),Gt(),zt(),qt(),Ft(),Bt()]),ie=[];p.success&&((x=p.data)==null||x.forEach(l=>{ie.push({...l,platform:"claude-oauth",isDedicated:l.accountType==="dedicated"})})),b.success&&((d=b.data)==null||d.forEach(l=>{ie.push({...l,platform:"claude-console",isDedicated:l.accountType==="dedicated"})})),S.value.claude=ie;const ae=[];oe.success&&(oe.data||[]).forEach(l=>{ae.push({...l,platform:"gemini",isDedicated:l.accountType==="dedicated"})}),xe.success&&(xe.data||[]).forEach(l=>{ae.push({...l,platform:"gemini-api",isDedicated:l.accountType==="dedicated"})}),S.value.gemini=ae;const E=[];if(Te.success&&(Te.data||[]).forEach(l=>{E.push({...l,platform:"openai",isDedicated:l.accountType==="dedicated"})}),Ce.success&&(Ce.data||[]).forEach(l=>{E.push({...l,platform:"openai-responses",isDedicated:l.accountType==="dedicated"})}),S.value.openai=E,N.success&&(S.value.bedrock=(N.data||[]).map(l=>({...l,isDedicated:l.accountType==="dedicated"}))),i.success&&(S.value.droid=(i.data||[]).map(l=>({...l,platform:"droid",isDedicated:l.accountType==="dedicated"}))),k.success){const l=k.data||[];S.value.claudeGroups=l.filter(y=>y.platform==="claude"),S.value.geminiGroups=l.filter(y=>y.platform==="gemini"),S.value.openaiGroups=l.filter(y=>y.platform==="openai"),S.value.droidGroups=l.filter(y=>y.platform==="droid")}R("账号列表已刷新","success")}catch{R("刷新账号列表失败","error")}finally{z.value=!1}},U=async()=>{I.value=!0;try{const x={};f.rateLimitCost!==""&&f.rateLimitCost!==null&&(x.rateLimitCost=parseFloat(f.rateLimitCost)),f.rateLimitWindow!==""&&f.rateLimitWindow!==null&&(x.rateLimitWindow=parseInt(f.rateLimitWindow)),f.rateLimitRequests!==""&&f.rateLimitRequests!==null&&(x.rateLimitRequests=parseInt(f.rateLimitRequests)),f.concurrencyLimit!==""&&f.concurrencyLimit!==null&&(x.concurrencyLimit=parseInt(f.concurrencyLimit)),f.dailyCostLimit!==""&&f.dailyCostLimit!==null&&(x.dailyCostLimit=parseFloat(f.dailyCostLimit)),f.totalCostLimit!==""&&f.totalCostLimit!==null&&(x.totalCostLimit=parseFloat(f.totalCostLimit)),f.weeklyOpusCostLimit!==""&&f.weeklyOpusCostLimit!==null&&(x.weeklyOpusCostLimit=parseFloat(f.weeklyOpusCostLimit)),f.permissions!==""&&(x.permissions=f.permissions),f.claudeAccountId!==""&&(f.claudeAccountId==="SHARED_POOL"?(x.claudeAccountId=null,x.claudeConsoleAccountId=null):f.claudeAccountId.startsWith("console:")?(x.claudeConsoleAccountId=f.claudeAccountId.substring(8),x.claudeAccountId=null):(f.claudeAccountId.startsWith("group:"),x.claudeAccountId=f.claudeAccountId,x.claudeConsoleAccountId=null)),f.geminiAccountId!==""&&(f.geminiAccountId==="SHARED_POOL"?x.geminiAccountId=null:x.geminiAccountId=f.geminiAccountId),f.openaiAccountId!==""&&(f.openaiAccountId==="SHARED_POOL"?x.openaiAccountId=null:x.openaiAccountId=f.openaiAccountId),f.bedrockAccountId!==""&&(f.bedrockAccountId==="SHARED_POOL"?x.bedrockAccountId=null:x.bedrockAccountId=f.bedrockAccountId),f.droidAccountId!==""&&(f.droidAccountId==="SHARED_POOL"?x.droidAccountId=null:x.droidAccountId=f.droidAccountId),f.isActive!==null&&(x.isActive=f.isActive),Q.value!=="none"&&(x.tags=f.tags,x.tagOperation=Q.value);const d=await za({keyIds:c.selectedKeys,updates:x});if(d.success){const{successCount:p,failedCount:b,errors:oe}=d.data;if(p>0){if(R(`成功批量编辑 ${p} 个 API Keys`,"success"),b>0){const xe=oe.map(Te=>`${Te.keyId}: ${Te.error}`).join(` -`);R(`${b} 个编辑失败: -${xe}`,"warning")}}else R("所有 API Keys 编辑失败","error");P("success"),P("close")}else R(d.message||"批量编辑失败","error")}catch(x){R("批量编辑失败","error"),console.error("批量编辑 API Keys 失败:",x)}finally{I.value=!1}};return wt(async()=>{if(X.value=await Y.fetchTags(),c.accounts){const x=(c.accounts.gemini||[]).map(p=>({...p,platform:p.platform||"gemini"})),d=[];c.accounts.openai&&c.accounts.openai.forEach(p=>{d.push({...p,platform:p.platform||"openai"})}),c.accounts.openaiResponses&&c.accounts.openaiResponses.forEach(p=>{d.push({...p,platform:p.platform||"openai-responses"})}),S.value={claude:c.accounts.claude||[],gemini:x,openai:d,bedrock:c.accounts.bedrock||[],droid:(c.accounts.droid||[]).map(p=>({...p,platform:p.platform||"droid"})),claudeGroups:c.accounts.claudeGroups||[],geminiGroups:c.accounts.geminiGroups||[],openaiGroups:c.accounts.openaiGroups||[],droidGroups:c.accounts.droidGroups||[]}}}),(x,d)=>(o(),he(Oe,{to:"body"},[e("div",Si,[e("div",Mi,[e("div",Ui,[e("div",Ri,[d[28]||(d[28]=e("div",{class:"flex h-8 w-8 items-center justify-center rounded-lg bg-gradient-to-br from-blue-500 to-blue-600 sm:h-10 sm:w-10 sm:rounded-xl"},[e("i",{class:"fas fa-edit text-sm text-white sm:text-base"})],-1)),e("h3",Vi," 批量编辑 API Keys ("+u(v.value)+" 个) ",1)]),e("button",{class:"p-1 text-gray-400 transition-colors hover:text-gray-600 dark:hover:text-gray-300",onClick:d[0]||(d[0]=p=>x.$emit("close"))},d[29]||(d[29]=[e("i",{class:"fas fa-times text-lg sm:text-xl"},null,-1)]))]),e("form",{class:"modal-scroll-content custom-scrollbar flex-1 space-y-4 sm:space-y-6",onSubmit:$e(U,["prevent"])},[e("div",Pi,[e("div",Ei,[d[31]||(d[31]=e("i",{class:"fas fa-info-circle mt-1 text-blue-500"},null,-1)),e("div",null,[d[30]||(d[30]=e("p",{class:"text-sm font-medium text-blue-800 dark:text-blue-300"},"批量编辑说明",-1)),e("p",Oi," 以下设置将应用到所选的 "+u(v.value)+" 个 API Key。只有填写或修改的字段才会被更新,空白字段将保持原值不变。 ",1)])])]),e("div",null,[d[41]||(d[41]=e("label",{class:"mb-1.5 block text-xs font-semibold text-gray-700 dark:text-gray-300 sm:mb-3 sm:text-sm"}," 标签 (批量操作) ",-1)),e("div",ji,[e("div",Gi,[e("label",zi,[_(e("input",{"onUpdate:modelValue":d[1]||(d[1]=p=>Q.value=p),class:"mr-2",type:"radio",value:"replace"},null,512),[[De,Q.value]]),d[32]||(d[32]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"替换标签",-1))]),e("label",qi,[_(e("input",{"onUpdate:modelValue":d[2]||(d[2]=p=>Q.value=p),class:"mr-2",type:"radio",value:"add"},null,512),[[De,Q.value]]),d[33]||(d[33]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"添加标签",-1))]),e("label",Fi,[_(e("input",{"onUpdate:modelValue":d[3]||(d[3]=p=>Q.value=p),class:"mr-2",type:"radio",value:"remove"},null,512),[[De,Q.value]]),d[34]||(d[34]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"移除标签",-1))]),e("label",Bi,[_(e("input",{"onUpdate:modelValue":d[4]||(d[4]=p=>Q.value=p),class:"mr-2",type:"radio",value:"none"},null,512),[[De,Q.value]]),d[35]||(d[35]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"不修改标签",-1))])]),Q.value!=="none"?(o(),n("div",Wi,[f.tags.length>0?(o(),n("div",Ni,[e("div",Hi,u(Q.value==="replace"?"新标签列表:":Q.value==="add"?"要添加的标签:":"要移除的标签:"),1),e("div",Yi,[(o(!0),n(re,null,ge(f.tags,(p,b)=>(o(),n("span",{key:"selected-"+b,class:"inline-flex items-center gap-1 rounded-full bg-blue-100 px-3 py-1 text-sm text-blue-800 dark:bg-blue-900/30 dark:text-blue-300"},[K(u(p)+" ",1),e("button",{class:"ml-1 hover:text-blue-900",type:"button",onClick:oe=>V(b)},d[36]||(d[36]=[e("i",{class:"fas fa-times text-xs"},null,-1)]),8,Qi)]))),128))])])):$("",!0),L.value.length>0?(o(),n("div",Ji,[d[38]||(d[38]=e("div",{class:"mb-2 text-xs font-medium text-gray-600 dark:text-gray-400"}," 点击选择已有标签: ",-1)),e("div",Xi,[(o(!0),n(re,null,ge(L.value,p=>(o(),n("button",{key:"available-"+p,class:"inline-flex items-center gap-1 rounded-full bg-gray-100 px-3 py-1 text-sm text-gray-700 transition-colors hover:bg-blue-100 hover:text-blue-700 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-blue-900/30 dark:hover:text-blue-300",type:"button",onClick:b=>Z(p)},[d[37]||(d[37]=e("i",{class:"fas fa-tag text-xs text-gray-500 dark:text-gray-400"},null,-1)),K(" "+u(p),1)],8,Zi))),128))])])):$("",!0),e("div",null,[d[40]||(d[40]=e("div",{class:"mb-2 text-xs font-medium text-gray-600 dark:text-gray-400"}," 创建新标签: ",-1)),e("div",ed,[_(e("input",{"onUpdate:modelValue":d[5]||(d[5]=p=>W.value=p),class:"form-input flex-1 border-gray-300 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-200",placeholder:"输入新标签名称",type:"text",onKeypress:tt($e(a,["prevent"]),["enter"])},null,40,td),[[le,W.value]]),e("button",{class:"rounded-lg bg-green-500 px-4 py-2 text-white transition-colors hover:bg-green-600 dark:bg-green-600 dark:hover:bg-green-700",type:"button",onClick:a},d[39]||(d[39]=[e("i",{class:"fas fa-plus"},null,-1)]))])])])):$("",!0)])]),e("div",sd,[d[45]||(d[45]=e("div",{class:"mb-2 flex items-center gap-2"},[e("div",{class:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded bg-blue-500"},[e("i",{class:"fas fa-tachometer-alt text-xs text-white"})]),e("h4",{class:"text-sm font-semibold text-gray-800 dark:text-gray-200"},"速率限制设置")],-1)),e("div",ad,[e("div",rd,[e("div",null,[d[42]||(d[42]=e("label",{class:"mb-1 block text-xs font-medium text-gray-700 dark:text-gray-300"}," 时间窗口 (分钟) ",-1)),_(e("input",{"onUpdate:modelValue":d[6]||(d[6]=p=>f.rateLimitWindow=p),class:"form-input w-full border-gray-300 text-sm dark:border-gray-600 dark:bg-gray-800 dark:text-gray-200",min:"1",placeholder:"不修改",type:"number"},null,512),[[le,f.rateLimitWindow]])]),e("div",null,[d[43]||(d[43]=e("label",{class:"mb-1 block text-xs font-medium text-gray-700 dark:text-gray-300"},"请求次数限制",-1)),_(e("input",{"onUpdate:modelValue":d[7]||(d[7]=p=>f.rateLimitRequests=p),class:"form-input w-full border-gray-300 text-sm dark:border-gray-600 dark:bg-gray-800 dark:text-gray-200",min:"1",placeholder:"不修改",type:"number"},null,512),[[le,f.rateLimitRequests]])]),e("div",null,[d[44]||(d[44]=e("label",{class:"mb-1 block text-xs font-medium text-gray-700 dark:text-gray-300"},"费用限制 (美元)",-1)),_(e("input",{"onUpdate:modelValue":d[8]||(d[8]=p=>f.rateLimitCost=p),class:"form-input w-full border-gray-300 text-sm dark:border-gray-600 dark:bg-gray-800 dark:text-gray-200",min:"0",placeholder:"不修改",step:"0.01",type:"number"},null,512),[[le,f.rateLimitCost]])])])])]),e("div",null,[d[46]||(d[46]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"}," 每日费用限制 (美元) ",-1)),_(e("input",{"onUpdate:modelValue":d[9]||(d[9]=p=>f.dailyCostLimit=p),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-200",min:"0",placeholder:"不修改 (0 表示无限制)",step:"0.01",type:"number"},null,512),[[le,f.dailyCostLimit]])]),e("div",null,[d[47]||(d[47]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"}," 总费用限制 (美元) ",-1)),_(e("input",{"onUpdate:modelValue":d[10]||(d[10]=p=>f.totalCostLimit=p),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-200",min:"0",placeholder:"不修改 (0 表示无限制)",step:"0.01",type:"number"},null,512),[[le,f.totalCostLimit]])]),e("div",null,[d[48]||(d[48]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"}," Claude 模型周费用限制 (美元) ",-1)),_(e("input",{"onUpdate:modelValue":d[11]||(d[11]=p=>f.weeklyOpusCostLimit=p),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-200",min:"0",placeholder:"不修改 (0 表示无限制)",step:"0.01",type:"number"},null,512),[[le,f.weeklyOpusCostLimit]]),d[49]||(d[49]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 设置 Claude 模型的周费用限制(周一到周日),仅对 Claude 模型请求生效 ",-1))]),e("div",null,[d[50]||(d[50]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"并发限制",-1)),_(e("input",{"onUpdate:modelValue":d[12]||(d[12]=p=>f.concurrencyLimit=p),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-200",min:"0",placeholder:"不修改 (0 表示无限制)",type:"number"},null,512),[[le,f.concurrencyLimit]])]),e("div",null,[e("div",od,[d[54]||(d[54]=e("label",{class:"text-sm font-semibold text-gray-700 dark:text-gray-300"},"激活状态",-1)),e("div",ld,[e("label",nd,[_(e("input",{"onUpdate:modelValue":d[13]||(d[13]=p=>f.isActive=p),class:"mr-2",type:"radio",value:!0},null,512),[[De,f.isActive]]),d[51]||(d[51]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"激活",-1))]),e("label",id,[_(e("input",{"onUpdate:modelValue":d[14]||(d[14]=p=>f.isActive=p),class:"mr-2",type:"radio",value:!1},null,512),[[De,f.isActive]]),d[52]||(d[52]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"禁用",-1))]),e("label",dd,[_(e("input",{"onUpdate:modelValue":d[15]||(d[15]=p=>f.isActive=p),class:"mr-2",type:"radio",value:null},null,512),[[De,f.isActive]]),d[53]||(d[53]=e("span",{class:"text-sm text-gray-700 dark:text-gray-300"},"不修改",-1))])])])]),e("div",null,[d[61]||(d[61]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"服务权限",-1)),e("div",ud,[e("label",cd,[_(e("input",{"onUpdate:modelValue":d[16]||(d[16]=p=>f.permissions=p),class:"mr-2",type:"radio",value:""},null,512),[[De,f.permissions]]),d[55]||(d[55]=e("span",{class:"text-sm text-gray-700"},"不修改",-1))]),e("label",gd,[_(e("input",{"onUpdate:modelValue":d[17]||(d[17]=p=>f.permissions=p),class:"mr-2",type:"radio",value:"all"},null,512),[[De,f.permissions]]),d[56]||(d[56]=e("span",{class:"text-sm text-gray-700"},"全部服务",-1))]),e("label",pd,[_(e("input",{"onUpdate:modelValue":d[18]||(d[18]=p=>f.permissions=p),class:"mr-2",type:"radio",value:"claude"},null,512),[[De,f.permissions]]),d[57]||(d[57]=e("span",{class:"text-sm text-gray-700"},"仅 Claude",-1))]),e("label",md,[_(e("input",{"onUpdate:modelValue":d[19]||(d[19]=p=>f.permissions=p),class:"mr-2",type:"radio",value:"gemini"},null,512),[[De,f.permissions]]),d[58]||(d[58]=e("span",{class:"text-sm text-gray-700"},"仅 Gemini",-1))]),e("label",xd,[_(e("input",{"onUpdate:modelValue":d[20]||(d[20]=p=>f.permissions=p),class:"mr-2",type:"radio",value:"openai"},null,512),[[De,f.permissions]]),d[59]||(d[59]=e("span",{class:"text-sm text-gray-700"},"仅 OpenAI",-1))]),e("label",yd,[_(e("input",{"onUpdate:modelValue":d[21]||(d[21]=p=>f.permissions=p),class:"mr-2",type:"radio",value:"droid"},null,512),[[De,f.permissions]]),d[60]||(d[60]=e("span",{class:"text-sm text-gray-700"},"仅 Droid",-1))])])]),e("div",null,[e("div",fd,[d[62]||(d[62]=e("label",{class:"text-sm font-semibold text-gray-700 dark:text-gray-300"},"专属账号绑定",-1)),e("button",{class:"flex items-center gap-1 text-sm text-blue-600 transition-colors hover:text-blue-800 disabled:cursor-not-allowed disabled:opacity-50 dark:text-blue-400 dark:hover:text-blue-300",disabled:z.value,title:"刷新账号列表",type:"button",onClick:D},[e("i",{class:F(["fas",z.value?"fa-spinner fa-spin":"fa-sync-alt","text-xs"])},null,2),e("span",null,u(z.value?"刷新中...":"刷新账号"),1)],8,bd)]),e("div",vd,[e("div",null,[d[63]||(d[63]=e("label",{class:"mb-1 block text-sm font-medium text-gray-600 dark:text-gray-400"},"Claude 专属账号",-1)),ne(_e,{modelValue:Ae(G),"onUpdate:modelValue":d[22]||(d[22]=p=>bt(G)?G.value=p:null),accounts:S.value.claude,"default-option-text":"请选择Claude账号",disabled:!T("claude"),groups:S.value.claudeGroups,placeholder:"请选择Claude账号",platform:"claude","special-options":M},null,8,["modelValue","accounts","disabled","groups"])]),e("div",null,[d[64]||(d[64]=e("label",{class:"mb-1 block text-sm font-medium text-gray-600 dark:text-gray-400"},"Gemini 专属账号",-1)),ne(_e,{modelValue:Ae(ee),"onUpdate:modelValue":d[23]||(d[23]=p=>bt(ee)?ee.value=p:null),accounts:S.value.gemini,"default-option-text":"请选择Gemini账号",disabled:!T("gemini"),groups:S.value.geminiGroups,placeholder:"请选择Gemini账号",platform:"gemini","special-options":M},null,8,["modelValue","accounts","disabled","groups"])]),e("div",null,[d[65]||(d[65]=e("label",{class:"mb-1 block text-sm font-medium text-gray-600 dark:text-gray-400"},"OpenAI 专属账号",-1)),ne(_e,{modelValue:Ae(te),"onUpdate:modelValue":d[24]||(d[24]=p=>bt(te)?te.value=p:null),accounts:S.value.openai,"default-option-text":"请选择OpenAI账号",disabled:!T("openai"),groups:S.value.openaiGroups,placeholder:"请选择OpenAI账号",platform:"openai","special-options":M},null,8,["modelValue","accounts","disabled","groups"])]),e("div",null,[d[66]||(d[66]=e("label",{class:"mb-1 block text-sm font-medium text-gray-600 dark:text-gray-400"},"Bedrock 专属账号",-1)),ne(_e,{modelValue:Ae(H),"onUpdate:modelValue":d[25]||(d[25]=p=>bt(H)?H.value=p:null),accounts:S.value.bedrock,"default-option-text":"请选择Bedrock账号",disabled:!T("openai"),groups:[],placeholder:"请选择Bedrock账号",platform:"bedrock","special-options":M},null,8,["modelValue","accounts","disabled"])]),e("div",null,[d[67]||(d[67]=e("label",{class:"mb-1 block text-sm font-medium text-gray-600 dark:text-gray-400"},"Droid 专属账号",-1)),ne(_e,{modelValue:Ae(C),"onUpdate:modelValue":d[26]||(d[26]=p=>bt(C)?C.value=p:null),accounts:S.value.droid,"default-option-text":"请选择Droid账号",disabled:!T("droid"),groups:S.value.droidGroups,placeholder:"请选择Droid账号",platform:"droid","special-options":M},null,8,["modelValue","accounts","disabled","groups"])])])]),e("div",kd,[e("button",{class:"flex-1 rounded-xl bg-gray-100 px-6 py-3 font-semibold text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:d[27]||(d[27]=p=>x.$emit("close"))}," 取消 "),e("button",{class:"btn btn-primary flex-1 px-6 py-3 font-semibold",disabled:I.value,type:"submit"},[I.value?(o(),n("div",hd)):(o(),n("i",Ad)),K(" "+u(I.value?"保存中...":"批量保存"),1)],8,wd)])],32)])])]))}},$d={key:0,class:"modal fixed inset-0 z-50 flex items-center justify-center p-4"},Id={class:"modal-content relative mx-auto w-full max-w-lg p-8"},Kd={class:"mb-6 flex items-center justify-between"},Ld={class:"flex items-center gap-3"},Dd={class:"text-sm text-gray-600 dark:text-gray-400"},Td={class:"space-y-6"},_d={class:"rounded-lg border border-gray-200 bg-gradient-to-r from-gray-50 to-gray-100 p-4 dark:border-gray-600 dark:from-gray-700 dark:to-gray-800"},Sd={class:"flex items-center justify-between"},Md={class:"text-sm font-semibold text-gray-800 dark:text-gray-200"},Ud={class:"ml-2 text-xs font-normal text-gray-600"},Rd={class:"flex h-12 w-12 items-center justify-center rounded-lg bg-white shadow-sm dark:bg-gray-700"},Vd={key:0,class:"mb-4"},Pd={class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},Ed={class:"mb-3 grid grid-cols-3 gap-2"},Od=["onClick"],jd={key:1,class:"animate-fadeIn"},Gd=["min"],zd={key:2,class:"rounded-lg border border-blue-200 bg-gradient-to-r from-blue-50 to-indigo-50 p-4 dark:border-blue-700 dark:from-blue-900/20 dark:to-indigo-900/20"},qd={class:"flex items-center justify-between"},Fd={class:"text-sm font-semibold text-blue-900 dark:text-blue-200"},Bd={class:"flex gap-3 pt-2"},Wd=["disabled"],Nd={key:0,class:"loading-spinner mr-2"},Hd={key:1,class:"fas fa-save mr-2"},Yd={__name:"ExpiryEditModal",props:{show:{type:Boolean,required:!0},apiKey:{type:Object,required:!0}},emits:["close","save"],setup(h,{expose:J,emit:c}){const P=h,Y=c,I=A(!1),z=A(!1),S=A({title:"",message:"",type:"primary",confirmText:"确认",cancelText:"取消"}),W=A(null),X=(V,D,U="确认",x="取消",d="primary")=>new Promise(p=>{S.value={title:V,message:D,confirmText:U,cancelText:x,type:d},W.value=p,z.value=!0}),Q=()=>{var V;z.value=!1,(V=W.value)==null||V.call(W,!0)},v=()=>{var V;z.value=!1,(V=W.value)==null||V.call(W,!1)},L=ut({expireDuration:"",customExpireDate:"",expiresAt:null}),f=[{value:"",label:"永不过期"},{value:"1d",label:"1 天"},{value:"7d",label:"7 天"},{value:"30d",label:"30 天"},{value:"90d",label:"90 天"},{value:"180d",label:"180 天"},{value:"365d",label:"1 年"},{value:"730d",label:"2 年"}],M=j(()=>{const V=new Date;return V.setMinutes(V.getMinutes()+1),V.toISOString().slice(0,16)});Re(()=>P.show,V=>{V&&se()}),Re(()=>{var V;return(V=P.apiKey)==null?void 0:V.id},V=>{V&&P.show&&se()});const se=()=>{I.value=!1,P.apiKey.expiresAt?(L.expireDuration="custom",L.customExpireDate=new Date(P.apiKey.expiresAt).toISOString().slice(0,16),L.expiresAt=P.apiKey.expiresAt):(L.expireDuration="",L.customExpireDate="",L.expiresAt=null)},G=V=>{if(L.expireDuration=V,!V){L.expiresAt=null;return}if(V==="custom")return;const D=new Date,U=V.match(/(\d+)([dhmy])/);if(U){const[,x,d]=U,p=parseInt(x);switch(d){case"d":D.setDate(D.getDate()+p);break;case"h":D.setHours(D.getHours()+p);break;case"m":D.setMonth(D.getMonth()+p);break;case"y":D.setFullYear(D.getFullYear()+p);break}L.expiresAt=D.toISOString()}},ee=()=>{L.customExpireDate&&(L.expiresAt=new Date(L.customExpireDate).toISOString())},te=V=>V?new Date(V).toLocaleString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}):"",H=V=>V?new Date(V){if(!V)return null;const D=new Date,x=new Date(V)-D,d=Math.ceil(x/(1e3*60*60*24));return x<0?{text:"已过期",class:"text-red-600"}:d<=7?{text:`${d} 天后过期`,class:"text-orange-600"}:d<=30?{text:`${d} 天后过期`,class:"text-yellow-600"}:{text:`${Math.ceil(d/30)} 个月后过期`,class:"text-green-600"}},T=()=>{I.value=!0,Y("save",{keyId:P.apiKey.id,expiresAt:L.expiresAt})},a=async()=>{await X("激活 API Key",`确定要立即激活此 API Key 吗?激活后将在 ${P.apiKey.activationDays||(P.apiKey.activationUnit==="hours"?24:30)} ${P.apiKey.activationUnit==="hours"?"小时":"天"}后自动过期。`,"确定激活","取消","warning")&&(I.value=!0,Y("save",{keyId:P.apiKey.id,activateNow:!0}))};return J({resetSaving:()=>{I.value=!1}}),(V,D)=>(o(),he(Oe,{to:"body"},[h.show?(o(),n("div",$d,[e("div",{class:"fixed inset-0 bg-gray-900 bg-opacity-50 backdrop-blur-sm",onClick:D[0]||(D[0]=U=>V.$emit("close"))}),e("div",Id,[e("div",Kd,[e("div",Ld,[D[6]||(D[6]=e("div",{class:"flex h-10 w-10 items-center justify-center rounded-xl bg-gradient-to-br from-amber-500 to-orange-600"},[e("i",{class:"fas fa-clock text-white"})],-1)),e("div",null,[D[5]||(D[5]=e("h3",{class:"text-xl font-bold text-gray-900 dark:text-gray-100"},"修改过期时间",-1)),e("p",Dd,' 为 "'+u(h.apiKey.name||"API Key")+'" 设置新的过期时间 ',1)])]),e("button",{class:"text-gray-400 transition-colors hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300",onClick:D[1]||(D[1]=U=>V.$emit("close"))},D[7]||(D[7]=[e("i",{class:"fas fa-times text-xl"},null,-1)]))]),e("div",Td,[e("div",_d,[e("div",Sd,[e("div",null,[D[12]||(D[12]=e("p",{class:"mb-1 text-xs font-medium text-gray-600 dark:text-gray-400"},"当前状态",-1)),e("p",Md,[h.apiKey.expirationMode==="activation"&&!h.apiKey.isActivated?(o(),n(re,{key:0},[D[8]||(D[8]=e("i",{class:"fas fa-pause-circle mr-1 text-blue-500"},null,-1)),D[9]||(D[9]=K(" 未激活 ",-1)),e("span",Ud," (激活后 "+u(h.apiKey.activationDays||(h.apiKey.activationUnit==="hours"?24:30))+" "+u(h.apiKey.activationUnit==="hours"?"小时":"天")+"过期) ",1)],64)):h.apiKey.expiresAt?(o(),n(re,{key:1},[K(u(te(h.apiKey.expiresAt))+" ",1),C(h.apiKey.expiresAt)?(o(),n("span",{key:0,class:F(["ml-2 text-xs font-normal",C(h.apiKey.expiresAt).class])}," ("+u(C(h.apiKey.expiresAt).text)+") ",3)):$("",!0)],64)):(o(),n(re,{key:2},[D[10]||(D[10]=e("i",{class:"fas fa-infinity mr-1 text-gray-500"},null,-1)),D[11]||(D[11]=K(" 永不过期 ",-1))],64))])]),e("div",Rd,[e("i",{class:F(["fas fa-hourglass-half text-lg",h.apiKey.expiresAt&&H(h.apiKey.expiresAt)?"text-red-500":"text-gray-400"])},null,2)])])]),h.apiKey.expirationMode==="activation"&&!h.apiKey.isActivated?(o(),n("div",Vd,[e("button",{class:"w-full rounded-lg bg-gradient-to-r from-blue-500 to-blue-600 px-4 py-3 font-semibold text-white transition-all hover:from-blue-600 hover:to-blue-700 hover:shadow-lg",onClick:a},[D[13]||(D[13]=e("i",{class:"fas fa-rocket mr-2"},null,-1)),K(" 立即激活 (激活后 "+u(h.apiKey.activationDays||(h.apiKey.activationUnit==="hours"?24:30))+" "+u(h.apiKey.activationUnit==="hours"?"小时":"天")+"过期) ",1)]),e("p",Pd,[D[14]||(D[14]=e("i",{class:"fas fa-info-circle mr-1"},null,-1)),K(" 点击立即激活此 API Key,激活后将在 "+u(h.apiKey.activationDays||(h.apiKey.activationUnit==="hours"?24:30))+" "+u(h.apiKey.activationUnit==="hours"?"小时":"天")+"后过期 ",1)])])):$("",!0),e("div",null,[D[16]||(D[16]=e("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"选择新的期限",-1)),e("div",Ed,[(o(),n(re,null,ge(f,U=>e("button",{key:U.value,class:F(["rounded-lg px-3 py-2 text-sm font-medium transition-all",L.expireDuration===U.value?"bg-blue-500 text-white shadow-md":"bg-gray-100 text-gray-700 hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600"]),onClick:x=>G(U.value)},u(U.label),11,Od)),64)),e("button",{class:F(["rounded-lg px-3 py-2 text-sm font-medium transition-all",L.expireDuration==="custom"?"bg-blue-500 text-white shadow-md":"bg-gray-100 text-gray-700 hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600"]),onClick:D[2]||(D[2]=U=>G("custom"))},D[15]||(D[15]=[e("i",{class:"fas fa-calendar-alt mr-1"},null,-1),K(" 自定义 ",-1)]),2)])]),L.expireDuration==="custom"?(o(),n("div",jd,[D[17]||(D[17]=e("label",{class:"mb-2 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"选择日期和时间",-1)),_(e("input",{"onUpdate:modelValue":D[3]||(D[3]=U=>L.customExpireDate=U),class:"form-input w-full border-gray-300 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",min:M.value,type:"datetime-local",onChange:ee},null,40,Gd),[[le,L.customExpireDate]]),D[18]||(D[18]=e("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"}," 选择一个未来的日期和时间作为过期时间 ",-1))])):$("",!0),L.expiresAt!==h.apiKey.expiresAt?(o(),n("div",zd,[e("div",qd,[e("div",null,[D[21]||(D[21]=e("p",{class:"mb-1 text-xs font-medium text-blue-700 dark:text-blue-400"},[e("i",{class:"fas fa-arrow-right mr-1"}),K(" 新的过期时间 ")],-1)),e("p",Fd,[L.expiresAt?(o(),n(re,{key:0},[K(u(te(L.expiresAt))+" ",1),C(L.expiresAt)?(o(),n("span",{key:0,class:F(["ml-2 text-xs font-normal",C(L.expiresAt).class])}," ("+u(C(L.expiresAt).text)+") ",3)):$("",!0)],64)):(o(),n(re,{key:1},[D[19]||(D[19]=e("i",{class:"fas fa-infinity mr-1"},null,-1)),D[20]||(D[20]=K(" 永不过期 ",-1))],64))])]),D[22]||(D[22]=e("div",{class:"flex h-12 w-12 items-center justify-center rounded-lg bg-white shadow-sm dark:bg-gray-700"},[e("i",{class:"fas fa-check text-lg text-green-500"})],-1))])])):$("",!0),e("div",Bd,[e("button",{class:"flex-1 rounded-lg bg-gray-100 px-4 py-2.5 font-semibold text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",onClick:D[4]||(D[4]=U=>V.$emit("close"))}," 取消 "),e("button",{class:"btn btn-primary flex-1 px-4 py-2.5 font-semibold",disabled:I.value||L.expiresAt===h.apiKey.expiresAt,onClick:T},[I.value?(o(),n("div",Nd)):(o(),n("i",Hd)),K(" "+u(I.value?"保存中...":"保存更改"),1)],8,Wd)])])])])):$("",!0),ne(at,{"cancel-text":S.value.cancelText,"confirm-text":S.value.confirmText,message:S.value.message,show:z.value,title:S.value.title,type:S.value.type,onCancel:v,onConfirm:Q},null,8,["cancel-text","confirm-text","message","show","title","type"])]))}},Qd=st(Yd,[["__scopeId","data-v-20d23095"]]),Jd={class:"w-full"},Xd={key:0,class:"flex items-center justify-center rounded-lg px-3 py-2 text-xs"},Zd={key:1,class:"space-y-1.5"},e0={class:"flex items-center justify-between text-[11px] font-medium"},t0={class:"text-gray-700 dark:text-gray-200"},s0={class:"relative h-1.5 overflow-hidden rounded-full bg-gray-200/85 dark:bg-gray-700/70"},a0={class:"relative z-10 flex h-full items-center justify-between px-3"},r0={class:"flex items-center gap-1.5"},o0={class:"flex items-center gap-1.5"},l0={key:0,class:"pointer-events-none absolute inset-0 opacity-0 transition-opacity duration-700 group-hover:opacity-30",style:{background:"linear-gradient(105deg, transparent 35%, rgba(255,255,255,0.55) 48%, transparent 63%)",animation:"shine 2.8s infinite"}},n0={__name:"LimitProgressBar",props:{type:{type:String,required:!0,validator:h=>["daily","opus","window","total"].includes(h)},variant:{type:String,default:"full",validator:h=>["full","compact"].includes(h)},label:{type:String,required:!0},current:{type:Number,default:0},limit:{type:Number,required:!0},showShine:{type:Boolean,default:!1}},setup(h){const J=h,c=j(()=>J.variant==="compact"),P=j(()=>{if(!J.limit||J.limit<=0)return 0;const L=J.current/J.limit*100;return Math.min(L,100)}),Y=j(()=>{switch(J.type){case"daily":return"border-emerald-200/80 bg-white/80 shadow-[0_10px_24px_rgba(16,185,129,0.18)] group-hover:shadow-[0_14px_30px_rgba(16,185,129,0.22)] dark:border-emerald-500/40 dark:bg-emerald-950/40 dark:shadow-[0_12px_28px_rgba(0,0,0,0.45)]";case"opus":return"border-violet-200/80 bg-white/80 shadow-[0_10px_24px_rgba(139,92,246,0.18)] group-hover:shadow-[0_14px_30px_rgba(139,92,246,0.22)] dark:border-violet-500/40 dark:bg-violet-950/40 dark:shadow-[0_12px_28px_rgba(0,0,0,0.45)]";case"window":return"border-sky-200/80 bg-white/80 shadow-[0_10px_24px_rgba(56,189,248,0.18)] group-hover:shadow-[0_14px_30px_rgba(56,189,248,0.22)] dark:border-sky-500/40 dark:bg-sky-950/40 dark:shadow-[0_12px_28px_rgba(0,0,0,0.45)]";case"total":return"border-blue-200/80 bg-white/80 shadow-[0_10px_24px_rgba(59,130,246,0.18)] group-hover:shadow-[0_14px_30px_rgba(59,130,246,0.22)] dark:border-blue-500/40 dark:bg-blue-950/40 dark:shadow-[0_12px_28px_rgba(0,0,0,0.45)]";default:return"border-gray-200/80 bg-white/80 shadow-[0_10px_24px_rgba(148,163,184,0.18)] group-hover:shadow-[0_14px_30px_rgba(148,163,184,0.22)] dark:border-gray-600/50 dark:bg-gray-900/50 dark:shadow-[0_12px_28px_rgba(0,0,0,0.45)]"}}),I=j(()=>{switch(J.type){case"daily":return"bg-gradient-to-r from-emerald-50 via-green-50 to-emerald-100 dark:from-emerald-900/40 dark:via-emerald-900/20 dark:to-emerald-800/30";case"opus":return"bg-gradient-to-r from-violet-50 via-violet-100 to-fuchsia-100 dark:from-violet-900/40 dark:via-violet-900/20 dark:to-fuchsia-900/30";case"window":return"bg-gradient-to-r from-sky-50 via-sky-100 to-cyan-100 dark:from-sky-900/40 dark:via-sky-900/20 dark:to-cyan-900/30";case"total":return"bg-gradient-to-r from-blue-50 via-blue-100 to-sky-100 dark:from-blue-900/40 dark:via-blue-900/20 dark:to-sky-900/30";default:return"bg-gradient-to-r from-gray-100 via-gray-50 to-gray-200 dark:from-gray-900/30 dark:via-gray-900/10 dark:to-gray-800/30"}}),z=j(()=>{const L=P.value;return J.type==="daily"?L>=90?"bg-gradient-to-r from-rose-500 via-red-500 to-rose-600 dark:from-rose-500 dark:via-red-500 dark:to-rose-600":L>=70?"bg-gradient-to-r from-amber-400 via-orange-400 to-amber-500 dark:from-amber-400 dark:via-orange-400 dark:to-amber-500":"bg-gradient-to-r from-emerald-400 via-emerald-500 to-teal-500 dark:from-emerald-400 dark:via-emerald-500 dark:to-teal-500":J.type==="opus"?L>=90?"bg-gradient-to-r from-rose-500 via-red-500 to-rose-600 dark:from-rose-500 dark:via-red-500 dark:to-rose-600":L>=70?"bg-gradient-to-r from-amber-400 via-orange-400 to-amber-500 dark:from-amber-400 dark:via-orange-400 dark:to-amber-500":"bg-gradient-to-r from-violet-400 via-purple-500 to-fuchsia-500 dark:from-violet-400 dark:via-purple-500 dark:to-fuchsia-500":J.type==="window"?L>=90?"bg-gradient-to-r from-rose-500 via-red-500 to-rose-600 dark:from-rose-500 dark:via-red-500 dark:to-rose-600":L>=70?"bg-gradient-to-r from-amber-400 via-orange-400 to-amber-500 dark:from-amber-400 dark:via-orange-400 dark:to-amber-500":"bg-gradient-to-r from-sky-400 via-cyan-400 to-blue-500 dark:from-sky-400 dark:via-cyan-400 dark:to-blue-500":J.type==="total"?L>=90?"bg-gradient-to-r from-rose-500 via-red-500 to-rose-600 dark:from-rose-500 dark:via-red-500 dark:to-rose-600":L>=70?"bg-gradient-to-r from-amber-400 via-orange-400 to-amber-500 dark:from-amber-400 dark:via-orange-400 dark:to-amber-500":"bg-gradient-to-r from-sky-500 via-blue-500 to-cyan-500 dark:from-sky-500 dark:via-blue-500 dark:to-cyan-500":"bg-gray-300 dark:bg-gray-400"}),S=j(()=>{const L=P.value;if(L>=95)return"bg-rose-500 dark:bg-rose-400";if(L>=80)return"bg-amber-400 dark:bg-amber-300";switch(J.type){case"daily":return"bg-emerald-500 dark:bg-emerald-400";case"opus":return"bg-violet-500 dark:bg-violet-400";case"window":return"bg-sky-500 dark:bg-sky-400";case"total":return"bg-blue-500 dark:bg-blue-400";default:return"bg-gray-400 dark:bg-gray-500"}}),W=j(()=>{const L=P.value;if(L>=95)return"text-rose-600 dark:text-rose-300";if(L>=80)return"text-amber-600 dark:text-amber-300";switch(J.type){case"daily":return"text-emerald-600 dark:text-emerald-300";case"opus":return"text-violet-600 dark:text-violet-300";case"window":return"text-sky-600 dark:text-sky-300";case"total":return"text-blue-600 dark:text-blue-300";default:return"text-gray-600 dark:text-gray-300"}}),X=j(()=>{const L=P.value;let f="";if(L>=90)f="text-red-700 dark:text-red-400";else if(L>=70)f="text-orange-700 dark:text-orange-400";else switch(J.type){case"daily":f="text-green-700 dark:text-green-400";break;case"opus":f="text-purple-700 dark:text-purple-400";break;case"window":f="text-blue-700 dark:text-blue-400";break;default:f="text-gray-600 dark:text-gray-400"}let M="";switch(J.type){case"daily":M="fas fa-calendar-day";break;case"opus":M="fas fa-gem";break;case"window":M="fas fa-clock";break;case"total":M="fas fa-wallet";break;default:M="fas fa-infinity"}return`${M} ${f}`}),Q=j(()=>{if(P.value>40)return"text-white drop-shadow-[0_1px_2px_rgba(0,0,0,0.8)]";switch(J.type){case"daily":return"text-gray-900 dark:text-gray-100";case"opus":return"text-purple-900 dark:text-purple-100";case"window":return"text-blue-900 dark:text-blue-100";case"total":return"text-blue-900 dark:text-blue-100";default:return"text-gray-900 dark:text-gray-100"}}),v=j(()=>{const L=P.value;if(L>70)return"text-white drop-shadow-[0_2px_4px_rgba(0,0,0,0.9)]";if(L>=90)return"text-red-700 dark:text-red-300";if(L>=70)return"text-orange-700 dark:text-orange-300";switch(J.type){case"daily":return"text-green-800 dark:text-green-200";case"opus":return"text-purple-800 dark:text-purple-200";case"window":return"text-blue-800 dark:text-blue-200";case"total":return"text-blue-800 dark:text-blue-200";default:return"text-gray-900 dark:text-gray-100"}});return(L,f)=>(o(),n("div",Jd,[!h.limit||h.limit<=0?(o(),n("div",Xd,f[0]||(f[0]=[e("div",{class:"flex items-center gap-1.5 text-gray-600 dark:text-gray-300"},[e("i",{class:"fas fa-infinity text-sm text-gray-500 dark:text-gray-400"}),e("span",{class:"font-medium"},"无限制")],-1)]))):c.value?(o(),n("div",Zd,[e("div",e0,[e("div",{class:F(["flex items-center gap-1.5",W.value])},[e("i",{class:F(["text-[11px]",X.value])},null,2),e("span",null,u(h.label),1)],2),e("span",t0,"$"+u(h.current.toFixed(2))+" / $"+u(h.limit.toFixed(2)),1)]),e("div",s0,[e("div",{class:F(["absolute inset-y-0 rounded-full transition-all duration-500 ease-out",S.value]),style:Rt({width:P.value+"%"})},null,6)])])):(o(),n("div",{key:2,class:F(["group relative h-9 w-full overflow-hidden rounded-xl border transition-all duration-300 ease-out",Y.value])},[e("div",{class:F(["absolute inset-0",I.value])},null,2),e("div",{class:F(["absolute inset-0 h-full transition-all duration-500 ease-out",z.value]),style:Rt({width:P.value+"%"})},null,6),f[1]||(f[1]=e("div",{class:"pointer-events-none absolute inset-0 rounded-xl border border-white/50 opacity-40 mix-blend-overlay dark:border-white/10"},null,-1)),e("div",a0,[e("div",r0,[e("i",{class:F(["text-xs",X.value])},null,2),e("span",{class:F(["text-xs font-semibold",Q.value])},u(h.label),3)]),e("div",o0,[e("span",{class:F(["text-xs font-bold tabular-nums",v.value])}," $"+u(h.current.toFixed(2))+" / $"+u(h.limit.toFixed(2)),3)])]),h.showShine&&P.value>0?(o(),n("div",l0)):$("",!0)],2))]))}},Fe=st(n0,[["__scopeId","data-v-1393272b"]]),i0={key:0,class:"modal fixed inset-0 z-50 flex items-center justify-center p-3 sm:p-4"},d0={class:"modal-content relative mx-auto flex max-h-[90vh] w-[95%] max-w-5xl flex-col p-4 sm:w-full sm:p-6 md:p-8"},u0={class:"mb-4 flex items-center justify-between sm:mb-6"},c0={class:"flex items-center gap-2 sm:gap-3"},g0={class:"text-lg font-bold text-gray-900 dark:text-gray-100 sm:text-xl"},p0={class:"modal-scroll-content custom-scrollbar flex-1 overflow-y-auto"},m0={class:"mb-6 grid grid-cols-1 gap-4 md:grid-cols-2"},x0={class:"rounded-lg border border-blue-200 bg-gradient-to-br from-blue-50 to-blue-100 p-4 dark:border-blue-700 dark:from-blue-900/20 dark:to-blue-800/20"},y0={class:"text-2xl font-bold text-gray-900 dark:text-gray-100"},f0={class:"mt-1 text-xs text-gray-600 dark:text-gray-400"},b0={class:"rounded-lg border border-green-200 bg-gradient-to-br from-green-50 to-green-100 p-4 dark:border-green-700 dark:from-green-900/20 dark:to-green-800/20"},v0={class:"text-2xl font-bold text-gray-900 dark:text-gray-100"},k0={class:"mt-1 text-xs text-gray-600 dark:text-gray-400"},w0={class:"rounded-lg border border-yellow-200 bg-gradient-to-br from-yellow-50 to-yellow-100 p-4 dark:border-yellow-700 dark:from-yellow-900/20 dark:to-yellow-800/20"},h0={class:"text-2xl font-bold text-gray-900 dark:text-gray-100"},A0={class:"mt-1 text-xs text-gray-600 dark:text-gray-400"},C0={class:"rounded-lg border border-purple-200 bg-gradient-to-br from-purple-50 to-purple-100 p-4 dark:border-purple-700 dark:from-purple-900/20 dark:to-purple-800/20"},$0={class:"space-y-1 text-sm"},I0={class:"flex justify-between"},K0={class:"font-semibold text-gray-900 dark:text-gray-100"},L0={class:"flex justify-between"},D0={class:"font-semibold text-gray-900 dark:text-gray-100"},T0={class:"mb-6"},_0={class:"space-y-3 rounded-lg bg-gray-50 p-4 dark:bg-gray-700/50"},S0={class:"flex items-center justify-between"},M0={class:"text-sm font-semibold text-gray-900 dark:text-gray-100"},U0={class:"flex items-center justify-between"},R0={class:"text-sm font-semibold text-gray-900 dark:text-gray-100"},V0={key:0,class:"flex items-center justify-between"},P0={class:"text-sm font-semibold text-purple-600"},E0={key:1,class:"flex items-center justify-between"},O0={class:"text-sm font-semibold text-purple-600"},j0={key:0,class:"mb-6"},G0={class:"space-y-3 rounded-lg bg-gray-50 p-4 dark:bg-gray-700/50"},z0={key:0,class:"space-y-1.5"},q0={class:"text-right text-xs text-gray-500 dark:text-gray-400"},F0={key:1,class:"space-y-1.5"},B0={class:"text-right text-xs text-gray-500 dark:text-gray-400"},W0={key:2,class:"space-y-1.5"},N0={class:"text-right text-xs text-gray-500 dark:text-gray-400"},H0={key:3,class:"flex items-center justify-between rounded-lg border border-purple-200/70 bg-white/60 px-3 py-2 text-sm shadow-sm dark:border-purple-500/40 dark:bg-purple-950/20"},Y0={class:"font-semibold text-purple-600 dark:text-purple-300"},Q0={key:4,class:"space-y-2"},J0={__name:"UsageDetailModal",props:{show:{type:Boolean,required:!0},apiKey:{type:Object,required:!0}},emits:["close","open-timeline"],setup(h,{emit:J}){const c=h,P=J,Y=j(()=>{var U,x;return((x=(U=c.apiKey.usage)==null?void 0:U.total)==null?void 0:x.requests)||0}),I=j(()=>{var U,x;return((x=(U=c.apiKey.usage)==null?void 0:U.daily)==null?void 0:x.requests)||0}),z=j(()=>{var U,x;return((x=(U=c.apiKey.usage)==null?void 0:U.total)==null?void 0:x.tokens)||0}),S=j(()=>{var U,x;return((x=(U=c.apiKey.usage)==null?void 0:U.daily)==null?void 0:x.tokens)||0}),W=j(()=>{var U,x;return((x=(U=c.apiKey.usage)==null?void 0:U.total)==null?void 0:x.cost)||0}),X=j(()=>c.apiKey.dailyCost||0),Q=j(()=>c.apiKey.totalCostLimit||0),v=j(()=>c.apiKey.weeklyOpusCost||0),L=j(()=>c.apiKey.weeklyOpusCostLimit||0),f=j(()=>{var U,x;return((x=(U=c.apiKey.usage)==null?void 0:U.total)==null?void 0:x.inputTokens)||0}),M=j(()=>{var U,x;return((x=(U=c.apiKey.usage)==null?void 0:U.total)==null?void 0:x.outputTokens)||0}),se=j(()=>{var U,x;return((x=(U=c.apiKey.usage)==null?void 0:U.total)==null?void 0:x.cacheCreateTokens)||0}),G=j(()=>{var U,x;return((x=(U=c.apiKey.usage)==null?void 0:U.total)==null?void 0:x.cacheReadTokens)||0}),ee=j(()=>{var U,x;return((x=(U=c.apiKey.usage)==null?void 0:U.averages)==null?void 0:x.rpm)||0}),te=j(()=>{var U,x;return((x=(U=c.apiKey.usage)==null?void 0:U.averages)==null?void 0:x.tpm)||0}),H=j(()=>c.apiKey.dailyCostLimit>0||c.apiKey.totalCostLimit>0||c.apiKey.concurrencyLimit>0||c.apiKey.weeklyOpusCostLimit>0||c.apiKey.rateLimitWindow>0||c.apiKey.tokenLimit>0),C=j(()=>!c.apiKey.dailyCostLimit||c.apiKey.dailyCostLimit===0?0:X.value/c.apiKey.dailyCostLimit*100),T=j(()=>!Q.value||Q.value===0?0:W.value/Q.value*100),a=j(()=>!L.value||L.value===0?0:v.value/L.value*100),Z=U=>U>=1e6?(U/1e6).toFixed(1)+"M":U>=1e3?(U/1e3).toFixed(1)+"K":U.toString(),V=()=>{P("close")},D=()=>{var U;P("open-timeline",(U=c.apiKey)==null?void 0:U.id)};return(U,x)=>(o(),he(Oe,{to:"body"},[h.show?(o(),n("div",i0,[e("div",{class:"fixed inset-0 bg-gray-900 bg-opacity-50 backdrop-blur-sm",onClick:V}),e("div",d0,[e("div",u0,[e("div",c0,[x[0]||(x[0]=e("div",{class:"flex h-8 w-8 items-center justify-center rounded-lg bg-gradient-to-br from-blue-500 to-blue-600 sm:h-10 sm:w-10 sm:rounded-xl"},[e("i",{class:"fas fa-chart-line text-sm text-white sm:text-base"})],-1)),e("h3",g0," 使用统计详情 - "+u(h.apiKey.name),1)]),e("button",{class:"p-1 text-gray-400 transition-colors hover:text-gray-600",onClick:V},x[1]||(x[1]=[e("i",{class:"fas fa-times text-lg sm:text-xl"},null,-1)]))]),e("div",p0,[e("div",m0,[e("div",x0,[x[2]||(x[2]=e("div",{class:"mb-3 flex items-center justify-between"},[e("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"},"总请求数"),e("i",{class:"fas fa-paper-plane text-blue-500"})],-1)),e("div",y0,u(Ae(vt)(Y.value)),1),e("div",f0," 今日: "+u(Ae(vt)(I.value))+" 次 ",1)]),e("div",b0,[x[3]||(x[3]=e("div",{class:"mb-3 flex items-center justify-between"},[e("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"},"总Token数"),e("i",{class:"fas fa-coins text-green-500"})],-1)),e("div",v0,u(Z(z.value)),1),e("div",k0," 今日: "+u(Z(S.value)),1)]),e("div",w0,[x[4]||(x[4]=e("div",{class:"mb-3 flex items-center justify-between"},[e("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"},"总费用"),e("i",{class:"fas fa-dollar-sign text-yellow-600"})],-1)),e("div",h0," $"+u(W.value.toFixed(4)),1),e("div",A0," 今日: $"+u(X.value.toFixed(4)),1)]),e("div",C0,[x[7]||(x[7]=e("div",{class:"mb-3 flex items-center justify-between"},[e("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"},"平均速率"),e("i",{class:"fas fa-tachometer-alt text-purple-500"})],-1)),e("div",$0,[e("div",I0,[x[5]||(x[5]=e("span",{class:"text-gray-600 dark:text-gray-400"},"RPM:",-1)),e("span",K0,u(ee.value),1)]),e("div",L0,[x[6]||(x[6]=e("span",{class:"text-gray-600 dark:text-gray-400"},"TPM:",-1)),e("span",D0,u(te.value),1)])])])]),e("div",T0,[x[12]||(x[12]=e("h4",{class:"mb-3 flex items-center text-sm font-semibold text-gray-700 dark:text-gray-300"},[e("i",{class:"fas fa-chart-pie mr-2 text-indigo-500"}),K(" Token 使用分布 ")],-1)),e("div",_0,[e("div",S0,[x[8]||(x[8]=e("div",{class:"flex items-center"},[e("i",{class:"fas fa-arrow-down mr-2 text-green-500"}),e("span",{class:"text-sm text-gray-600 dark:text-gray-400"},"输入 Token")],-1)),e("span",M0,u(Z(f.value)),1)]),e("div",U0,[x[9]||(x[9]=e("div",{class:"flex items-center"},[e("i",{class:"fas fa-arrow-up mr-2 text-blue-500"}),e("span",{class:"text-sm text-gray-600 dark:text-gray-400"},"输出 Token")],-1)),e("span",R0,u(Z(M.value)),1)]),se.value>0?(o(),n("div",V0,[x[10]||(x[10]=e("div",{class:"flex items-center"},[e("i",{class:"fas fa-save mr-2 text-purple-500"}),e("span",{class:"text-sm text-gray-600 dark:text-gray-400"},"缓存创建 Token")],-1)),e("span",P0,u(Z(se.value)),1)])):$("",!0),G.value>0?(o(),n("div",E0,[x[11]||(x[11]=e("div",{class:"flex items-center"},[e("i",{class:"fas fa-download mr-2 text-purple-500"}),e("span",{class:"text-sm text-gray-600 dark:text-gray-400"},"缓存读取 Token")],-1)),e("span",O0,u(Z(G.value)),1)])):$("",!0)])]),H.value?(o(),n("div",j0,[x[15]||(x[15]=e("h4",{class:"mb-3 flex items-center text-sm font-semibold text-gray-700 dark:text-gray-300"},[e("i",{class:"fas fa-shield-alt mr-2 text-red-500"}),K(" 限制设置 ")],-1)),e("div",G0,[h.apiKey.dailyCostLimit>0?(o(),n("div",z0,[ne(Fe,{current:X.value,label:"每日费用限制",limit:h.apiKey.dailyCostLimit,"show-shine":!0,type:"daily"},null,8,["current","limit"]),e("div",q0," 已使用 "+u(Math.min(C.value,100).toFixed(1))+"% ",1)])):$("",!0),h.apiKey.weeklyOpusCostLimit>0?(o(),n("div",F0,[ne(Fe,{current:v.value,label:"Opus 周费用限制",limit:h.apiKey.weeklyOpusCostLimit,"show-shine":!0,type:"opus"},null,8,["current","limit"]),e("div",B0," 已使用 "+u(Math.min(a.value,100).toFixed(1))+"% ",1)])):$("",!0),h.apiKey.totalCostLimit>0?(o(),n("div",W0,[ne(Fe,{current:W.value,label:"总费用限制",limit:h.apiKey.totalCostLimit,"show-shine":!0,type:"total"},null,8,["current","limit"]),e("div",N0," 已使用 "+u(Math.min(T.value,100).toFixed(1))+"% ",1)])):$("",!0),h.apiKey.concurrencyLimit>0?(o(),n("div",H0,[x[13]||(x[13]=e("span",{class:"text-gray-600 dark:text-gray-300"},"并发限制",-1)),e("span",Y0,u(h.apiKey.currentConcurrency||0)+" / "+u(h.apiKey.concurrencyLimit),1)])):$("",!0),h.apiKey.rateLimitWindow>0?(o(),n("div",Q0,[x[14]||(x[14]=e("h5",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"},[e("i",{class:"fas fa-clock mr-1 text-blue-500"}),K(" 时间窗口限制 ")],-1)),ne(lr,{"cost-limit":h.apiKey.rateLimitCost,"current-cost":h.apiKey.currentWindowCost,"current-requests":h.apiKey.currentWindowRequests,"current-tokens":h.apiKey.currentWindowTokens,label:"窗口状态","rate-limit-window":h.apiKey.rateLimitWindow,"request-limit":h.apiKey.rateLimitRequests,"show-progress":!0,"show-tooltip":!0,"token-limit":h.apiKey.tokenLimit,"window-end-time":h.apiKey.windowEndTime,"window-remaining-seconds":h.apiKey.windowRemainingSeconds,"window-start-time":h.apiKey.windowStartTime},null,8,["cost-limit","current-cost","current-requests","current-tokens","rate-limit-window","request-limit","token-limit","window-end-time","window-remaining-seconds","window-start-time"])])):$("",!0)])])):$("",!0)]),e("div",{class:"mt-4 flex justify-end gap-2 sm:mt-6 sm:gap-3"},[e("button",{class:"btn btn-primary px-4 py-2 text-sm",type:"button",onClick:D}," 查看请求时间线 "),e("button",{class:"btn btn-secondary px-4 py-2 text-sm",type:"button",onClick:V}," 关闭 ")])])])):$("",!0)]))}},X0={class:"max-h-[60vh] overflow-y-auto px-6 py-4"},Z0={class:"mb-4 flex gap-2"},eu=["disabled"],tu={key:0,class:"fas fa-spinner fa-spin mr-1"},su={key:1,class:"fas fa-plus mr-1"},au={key:0,class:"py-8 text-center"},ru={key:1,class:"py-8 text-center"},ou={key:2,class:"space-y-2"},lu={class:"flex items-center gap-3"},nu={class:"font-medium text-gray-700 dark:text-gray-200"},iu={class:"rounded-full bg-purple-100 px-2 py-0.5 text-xs text-purple-700 dark:bg-purple-900/30 dark:text-purple-300"},du={class:"flex gap-1"},uu=["disabled","onClick"],cu=["disabled","onClick"],gu={class:"w-full max-w-md rounded-2xl bg-white p-6 shadow-2xl dark:bg-gray-800"},pu={class:"mb-4"},mu={class:"flex justify-end gap-3"},xu=["disabled"],yu={key:0,class:"fas fa-spinner fa-spin mr-1"},fu={__name:"TagManagementModal",props:{show:{type:Boolean,default:!1}},emits:["close","updated"],setup(h,{emit:J}){const c=h,P=J,Y=A(!1),I=A(!1),z=A(!1),S=A([]),W=A(""),X=A(!1),Q=A(!1),v=A(null),L=A(null),f=A(""),M=async()=>{Y.value=!0;const T=await Ba();Y.value=!1,T.success&&(S.value=T.data)},se=async()=>{if(!W.value.trim())return;z.value=!0;const T=await qa(W.value.trim());z.value=!1,T.success?(R("标签创建成功","success"),W.value="",M(),P("updated")):R(T.error||"创建失败","error")},G=T=>{v.value=T,X.value=!0},ee=async()=>{if(!v.value)return;X.value=!1,I.value=!0;const T=v.value.name,a=await Wa(T);I.value=!1,a.success?(R(`标签「${T}」已删除`,"success"),S.value=S.value.filter(Z=>Z.name!==T),v.value=null,P("updated")):R(a.error||"删除失败","error")},te=T=>{L.value=T,f.value=T.name,Q.value=!0},H=async()=>{if(!L.value||!f.value.trim())return;I.value=!0;const T=L.value.name,a=await Fa(T,f.value.trim());I.value=!1,a.success?(R("标签已重命名","success"),Q.value=!1,L.value=null,M(),P("updated")):R(a.error||"重命名失败","error")},C=()=>{v.value=null,P("close")};return Re(()=>c.show,T=>{T&&(v.value=null,W.value="",M())}),(T,a)=>{var Z,V;return o(),n(re,null,[(o(),he(Oe,{to:"body"},[ne(Gs,{name:"modal"},{default:js(()=>[h.show?(o(),n("div",{key:0,class:"fixed inset-0 z-50 flex items-center justify-center bg-black/50 p-4 backdrop-blur-sm",onClick:$e(C,["self"])},[e("div",{class:"w-full max-w-lg rounded-2xl bg-white shadow-2xl dark:bg-gray-800",onClick:a[1]||(a[1]=$e(()=>{},["stop"]))},[e("div",{class:"flex items-center justify-between border-b border-gray-200 px-6 py-4 dark:border-gray-700"},[a[7]||(a[7]=e("h3",{class:"text-lg font-semibold text-gray-900 dark:text-gray-100"},[e("i",{class:"fas fa-tags mr-2 text-purple-500"}),K(" 标签管理 ")],-1)),e("button",{class:"rounded-lg p-2 text-gray-400 hover:bg-gray-100 hover:text-gray-600 dark:hover:bg-gray-700 dark:hover:text-gray-300",onClick:C},a[6]||(a[6]=[e("i",{class:"fas fa-times"},null,-1)]))]),e("div",X0,[e("div",Z0,[_(e("input",{"onUpdate:modelValue":a[0]||(a[0]=D=>W.value=D),class:"flex-1 rounded-lg border border-gray-300 px-3 py-2 text-sm focus:border-purple-500 focus:outline-none focus:ring-1 focus:ring-purple-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white",placeholder:"输入新标签名称",type:"text",onKeyup:tt(se,["enter"])},null,544),[[le,W.value]]),e("button",{class:"rounded-lg bg-purple-500 px-4 py-2 text-sm font-medium text-white hover:bg-purple-600 disabled:opacity-50",disabled:!W.value.trim()||z.value||I.value,onClick:se},[z.value?(o(),n("i",tu)):(o(),n("i",su)),a[8]||(a[8]=K(" 新增 ",-1))],8,eu)]),Y.value?(o(),n("div",au,a[9]||(a[9]=[e("i",{class:"fas fa-spinner fa-spin text-2xl text-gray-400"},null,-1),e("p",{class:"mt-2 text-gray-500 dark:text-gray-400"},"加载中...",-1)]))):S.value.length===0?(o(),n("div",ru,a[10]||(a[10]=[e("i",{class:"fas fa-tag text-4xl text-gray-300 dark:text-gray-600"},null,-1),e("p",{class:"mt-2 text-gray-500 dark:text-gray-400"},"暂无标签",-1)]))):(o(),n("div",ou,[(o(!0),n(re,null,ge(S.value,D=>(o(),n("div",{key:D.name,class:"flex items-center justify-between rounded-lg border border-gray-200 bg-gray-50 px-4 py-3 dark:border-gray-700 dark:bg-gray-700/50"},[e("div",lu,[a[11]||(a[11]=e("i",{class:"fas fa-tag text-purple-500"},null,-1)),e("span",nu,u(D.name),1),e("span",iu,u(D.count)+" 个 Key ",1)]),e("div",du,[e("button",{class:"rounded-lg p-2 text-gray-400 hover:bg-blue-100 hover:text-blue-600 dark:hover:bg-blue-900/30 dark:hover:text-blue-400",disabled:I.value,title:"重命名",onClick:U=>te(D)},a[12]||(a[12]=[e("i",{class:"fas fa-edit"},null,-1)]),8,uu),e("button",{class:"rounded-lg p-2 text-gray-400 hover:bg-red-100 hover:text-red-600 dark:hover:bg-red-900/30 dark:hover:text-red-400",disabled:I.value,title:"删除标签",onClick:U=>G(D)},a[13]||(a[13]=[e("i",{class:"fas fa-trash"},null,-1)]),8,cu)])]))),128))]))]),e("div",{class:"flex justify-end border-t border-gray-200 px-6 py-4 dark:border-gray-700"},[e("button",{class:"rounded-lg bg-gray-100 px-4 py-2 text-sm font-medium text-gray-700 hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",onClick:C}," 关闭 ")])])])):$("",!0)]),_:1})])),ne(at,{"cancel-text":"取消","confirm-text":"确定删除",message:`此操作将从 ${((Z=v.value)==null?void 0:Z.count)||0} 个 API Key 中移除该标签,不可恢复。`,show:X.value,title:`删除标签「${((V=v.value)==null?void 0:V.name)||""}」`,type:"danger",onCancel:a[2]||(a[2]=D=>X.value=!1),onConfirm:ee},null,8,["message","show","title"]),(o(),he(Oe,{to:"body"},[Q.value?(o(),n("div",{key:0,class:"fixed inset-0 z-50 flex items-center justify-center bg-black/50 p-4 backdrop-blur-sm",onClick:a[5]||(a[5]=$e(D=>Q.value=!1,["self"]))},[e("div",gu,[a[16]||(a[16]=e("h3",{class:"mb-4 text-lg font-semibold text-gray-900 dark:text-white"},"重命名标签",-1)),e("div",pu,[a[14]||(a[14]=e("label",{class:"mb-2 block text-sm font-medium text-gray-700 dark:text-gray-300"}," 新名称 ",-1)),_(e("input",{"onUpdate:modelValue":a[3]||(a[3]=D=>f.value=D),class:"w-full rounded-lg border border-gray-300 px-3 py-2 text-sm focus:border-blue-500 focus:outline-none focus:ring-1 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white",placeholder:"请输入新标签名称",type:"text",onKeyup:tt(H,["enter"])},null,544),[[le,f.value]])]),e("div",mu,[e("button",{class:"rounded-lg bg-gray-100 px-4 py-2 text-sm font-medium text-gray-700 hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",onClick:a[4]||(a[4]=D=>Q.value=!1)}," 取消 "),e("button",{class:"rounded-lg bg-blue-500 px-4 py-2 text-sm font-medium text-white hover:bg-blue-600 disabled:opacity-50",disabled:!f.value.trim()||I.value,onClick:H},[I.value?(o(),n("i",yu)):$("",!0),a[15]||(a[15]=K(" 确定 ",-1))],8,xu)])])])):$("",!0)]))],64)}}},bu=st(fu,[["__scopeId","data-v-8e455166"]]),vu={class:"tab-content"},ku={class:"card p-4 sm:p-6"},wu={class:"mb-4 flex flex-col gap-4 sm:mb-6"},hu={class:"border-b border-gray-200 dark:border-gray-700"},Au={"aria-label":"Tabs",class:"-mb-px flex space-x-8"},Cu={key:0,class:"ml-2 rounded-full bg-gray-100 px-2.5 py-0.5 text-xs font-medium text-gray-900 dark:bg-gray-700 dark:text-gray-100"},$u={key:0,class:"ml-2 rounded-full bg-gray-100 px-2.5 py-0.5 text-xs font-medium text-gray-900 dark:bg-gray-700 dark:text-gray-100"},Iu={key:0,class:"tab-panel"},Ku={class:"mb-4 flex flex-col gap-3 lg:flex-row lg:items-center lg:justify-between"},Lu={class:"flex flex-col gap-3 sm:flex-row sm:flex-wrap sm:items-center sm:gap-3"},Du={class:"group relative min-w-[140px]"},Tu={key:0,class:"flex items-center"},_u={class:"group relative min-w-[140px]"},Su={class:"relative"},Mu={key:0,class:"absolute -right-2 -top-2 z-10 flex h-5 w-5 items-center justify-center rounded-full bg-purple-500 text-xs text-white shadow-sm"},Uu={class:"group relative min-w-[140px]"},Ru={class:"relative"},Vu={key:0,class:"absolute -right-2 -top-2 z-10 flex h-5 w-5 items-center justify-center rounded-full bg-orange-500 text-xs text-white shadow-sm"},Pu={class:"flex min-w-[240px] flex-col gap-2 sm:flex-row sm:items-center"},Eu={class:"sm:w-44"},Ou={class:"group relative flex-1"},ju={class:"relative flex items-center"},Gu=["placeholder"],zu={class:"flex flex-col gap-3 sm:flex-row sm:flex-wrap sm:items-center sm:gap-3"},qu=["disabled"],Fu={class:"relative"},Bu={class:"relative"},Wu={key:0,class:"py-12 text-center"},Nu={key:1,class:"py-12 text-center"},Hu={key:2,class:"table-wrapper hidden md:block"},Yu={class:"table-container"},Qu={class:"w-full"},Ju={class:"sticky top-0 z-10 bg-gradient-to-b from-gray-50 to-gray-100/90 backdrop-blur-sm dark:from-gray-700 dark:to-gray-800/90"},Xu={key:0,class:"checkbox-column sticky left-0 z-20 min-w-[50px] px-3 py-4 text-left"},Zu={class:"flex items-center"},ec=["indeterminate"],tc={key:1,class:"fas fa-sort ml-1 text-gray-400"},sc={key:1,class:"fas fa-sort ml-1 text-gray-400"},ac=["title"],rc={key:1,class:"fas fa-sort ml-1 text-gray-400"},oc={key:2,class:"fas fa-clock ml-1 text-gray-400",title:"索引更新中"},lc={key:1,class:"fas fa-sort ml-1 text-gray-400"},nc={key:1,class:"fas fa-sort ml-1 text-gray-400"},ic={key:1,class:"fas fa-sort ml-1 text-gray-400"},dc={class:F(["table-row","border-b-2 border-gray-200/80 dark:border-gray-700/50","hover:shadow-sm"])},uc={key:0,class:"checkbox-column sticky left-0 z-10 px-3 py-3"},cc={class:"flex items-center"},gc=["value"],pc={class:"min-w-0"},mc=["onClick"],xc={key:0,class:"mt-1 text-xs text-red-600"},yc={class:"px-3 py-3"},fc={class:"space-y-1"},bc={key:0,class:"flex items-center gap-1 text-xs text-gray-400 dark:text-gray-500"},vc={key:0,class:"flex items-center gap-1 text-xs"},kc={class:"truncate text-gray-600 dark:text-gray-400"},wc={key:1,class:"flex items-center gap-1 text-xs"},hc={class:"truncate text-gray-600 dark:text-gray-400"},Ac={key:2,class:"flex items-center gap-1 text-xs"},Cc={class:"truncate text-gray-600 dark:text-gray-400"},$c={key:3,class:"flex items-center gap-1 text-xs"},Ic={class:"truncate text-gray-600 dark:text-gray-400"},Kc={key:4,class:"flex items-center gap-1 text-xs"},Lc={class:"truncate text-gray-600 dark:text-gray-400"},Dc={key:5,class:"text-xs text-gray-500 dark:text-gray-400"},Tc={class:"px-3 py-3"},_c={class:"flex flex-wrap gap-1"},Sc={key:0,class:"text-xs text-gray-400"},Mc={class:"whitespace-nowrap px-3 py-3"},Uc={class:"whitespace-nowrap px-3 py-3 text-right",style:{"font-size":"13px"}},Rc={key:0,class:"flex items-center justify-end"},Vc={key:1,class:"font-semibold text-blue-600 dark:text-blue-400",style:{"font-size":"14px"}},Pc={key:2,class:"text-gray-400"},Ec={class:"px-2 py-2",style:{"font-size":"12px"}},Oc={class:"flex flex-col gap-2"},jc={key:0,class:"space-y-2"},Gc={key:2,class:"space-y-1.5"},zc={class:"flex items-center justify-between text-[10px]"},qc={class:"flex items-center gap-1 text-sky-600 dark:text-sky-300"},Fc={class:"font-medium"},Bc={key:3,class:"flex items-center justify-center gap-1.5 py-2 text-gray-500 dark:text-gray-400"},Wc={class:"whitespace-nowrap px-3 py-3 text-right",style:{"font-size":"13px"}},Nc={key:0,class:"flex items-center justify-end"},Hc={key:1,class:"flex items-center justify-end gap-1"},Yc={class:"font-medium text-purple-600 dark:text-purple-400",style:{"font-size":"13px"}},Qc={key:2,class:"text-gray-400"},Jc={class:"whitespace-nowrap px-3 py-3 text-right",style:{"font-size":"13px"}},Xc={key:0,class:"flex items-center justify-end"},Zc={key:1,class:"flex items-center justify-end gap-1"},eg={class:"font-medium text-gray-900 dark:text-gray-100",style:{"font-size":"13px"}},tg={key:2,class:"text-gray-400"},sg={class:"whitespace-nowrap px-3 py-3 text-gray-700 dark:text-gray-300",style:{"font-size":"13px"}},ag={class:"flex flex-col leading-tight"},rg=["title"],og={key:1,class:"text-gray-400",style:{"font-size":"13px"}},lg={key:2,class:"mt-1 text-xs text-gray-400 dark:text-gray-500"},ng=["title"],ig={key:0,class:"ml-1 text-gray-400 dark:text-gray-500"},dg={key:4,class:"mt-1 text-xs text-gray-400 dark:text-gray-500"},ug={class:"whitespace-nowrap px-3 py-3 text-gray-700 dark:text-gray-300",style:{"font-size":"13px"}},cg={class:"whitespace-nowrap px-3 py-3 text-sm text-gray-700 dark:text-gray-300"},gg={class:"inline-flex items-center gap-1.5"},pg={key:0,class:"inline-flex items-center text-blue-600 dark:text-blue-400",style:{"font-size":"13px"}},mg={key:1},xg=["onClick"],yg=["onClick"],fg=["onClick"],bg=["onClick"],vg={class:"operations-column operations-cell whitespace-nowrap px-3 py-3",style:{"font-size":"13px"}},kg={class:"hidden gap-1 2xl:flex"},wg=["onClick"],hg=["onClick"],Ag=["onClick"],Cg=["onClick"],$g=["title","onClick"],Ig={class:"ml-1"},Kg=["onClick"],Lg={class:"flex items-center gap-1 2xl:hidden"},Dg=["onClick"],Tg=["onClick"],_g={key:0},Sg={class:"bg-gray-50 px-3 py-3 dark:bg-gray-700",colspan:"13"},Mg={key:0,class:"py-4 text-center"},Ug={class:"space-y-4"},Rg={class:"mb-4 flex items-center justify-between"},Vg={class:"flex items-center gap-2"},Pg={key:0,class:"rounded-full bg-gray-100 px-2 py-1 text-xs text-gray-500 dark:bg-gray-700 dark:text-gray-400"},Eg={class:"flex items-center gap-1"},Og={class:"flex gap-1 rounded bg-gray-100 p-1 dark:bg-gray-700"},jg=["onClick"],Gg={key:0,class:"py-8 text-center"},zg={class:"mb-3 flex items-center justify-center gap-2"},qg=["onClick"],Fg={key:1,class:"grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3"},Bg={class:"mb-3 flex items-start justify-between"},Wg={class:"flex-1"},Ng={class:"mb-1 block text-sm font-semibold text-gray-800 dark:text-gray-200"},Hg={class:"rounded-full bg-blue-50 px-2 py-1 text-xs text-gray-500 dark:bg-blue-900/30 dark:text-gray-400"},Yg={class:"mb-3 space-y-2"},Qg={class:"flex items-center justify-between text-sm"},Jg={class:"font-semibold text-gray-900 dark:text-gray-100"},Xg={class:"flex items-center justify-between text-sm"},Zg={class:"font-semibold text-green-600"},ep={class:"mt-2 border-t border-gray-100 pt-2 dark:border-gray-600"},tp={class:"flex items-center justify-between text-xs text-gray-500 dark:text-gray-400"},sp={class:"font-medium"},ap={class:"flex items-center justify-between text-xs text-gray-500 dark:text-gray-400"},rp={class:"font-medium"},op={key:0,class:"flex items-center justify-between text-xs text-purple-600"},lp={class:"font-medium"},np={key:1,class:"flex items-center justify-between text-xs text-purple-600"},ip={class:"font-medium"},dp={class:"mt-3 h-2 w-full rounded-full bg-gray-200 dark:bg-gray-700"},up={class:"mt-1 text-right"},cp={class:"text-xs font-medium text-indigo-600"},gp={key:2,class:"mt-4 rounded-lg border border-indigo-100 bg-gradient-to-r from-indigo-50 to-purple-50 p-3 dark:border-indigo-700 dark:from-indigo-900/20 dark:to-purple-900/20"},pp={class:"flex items-center justify-between text-sm"},mp={class:"flex gap-4 text-xs"},xp={class:"text-gray-600 dark:text-gray-400"},yp={class:"font-semibold text-gray-800 dark:text-gray-200"},fp={class:"text-gray-600 dark:text-gray-400"},bp={class:"font-semibold text-gray-800 dark:text-gray-200"},vp={key:3,class:"space-y-3 md:hidden"},kp={class:"mb-3 flex items-start justify-between"},wp={class:"flex items-center gap-3"},hp=["value"],Ap=["onClick"],Cp={class:"mt-0.5 text-xs text-gray-500 dark:text-gray-400"},$p={class:"mb-3 space-y-1.5"},Ip={key:0,class:"flex flex-wrap items-center gap-1 text-xs"},Kp={class:"text-gray-600 dark:text-gray-400"},Lp={key:1,class:"flex flex-wrap items-center gap-1 text-xs"},Dp={class:"text-gray-600 dark:text-gray-400"},Tp={key:2,class:"flex flex-wrap items-center gap-1 text-xs"},_p={class:"text-gray-600 dark:text-gray-400"},Sp={key:3,class:"flex flex-wrap items-center gap-1 text-xs"},Mp={class:"text-gray-600 dark:text-gray-400"},Up={key:4,class:"flex flex-wrap items-center gap-1 text-xs"},Rp={class:"text-gray-600 dark:text-gray-400"},Vp={key:5,class:"text-xs text-gray-500 dark:text-gray-400"},Pp={key:6,class:"text-xs text-red-600"},Ep={class:"mb-3 space-y-2"},Op={class:"rounded-lg bg-gray-50 p-3 dark:bg-gray-700"},jp={class:"mb-2 flex items-center justify-between"},Gp={class:"text-xs text-gray-600 dark:text-gray-400"},zp=["onClick"],qp={class:"grid grid-cols-2 gap-3"},Fp={key:0,class:"h-5 w-12 animate-pulse rounded bg-gradient-to-r from-gray-200 via-gray-300 to-gray-200 dark:from-gray-700 dark:via-gray-600 dark:to-gray-700"},Bp={key:1,class:"text-sm font-semibold text-gray-900 dark:text-gray-100"},Wp={key:2,class:"text-sm font-semibold text-gray-400"},Np={key:0,class:"h-5 w-14 animate-pulse rounded bg-gradient-to-r from-gray-200 via-gray-300 to-gray-200 dark:from-gray-700 dark:via-gray-600 dark:to-gray-700"},Hp={key:1,class:"text-sm font-semibold text-green-600"},Yp={key:2,class:"text-sm font-semibold text-gray-400"},Qp={class:"mt-2 text-xs text-gray-600 dark:text-gray-400"},Jp={class:"flex items-center justify-between"},Xp={class:"font-medium text-gray-700 dark:text-gray-300"},Zp={class:"mt-1 flex items-center justify-between"},em={key:0,class:"text-gray-400 dark:text-gray-500"},tm=["title"],sm={key:0,class:"ml-1 text-gray-400 dark:text-gray-500"},am={key:2,class:"text-gray-400 dark:text-gray-500"},rm={class:"space-y-2"},om={key:0,class:"space-y-2"},lm={key:2,class:"space-y-2"},nm={class:"flex items-center justify-between text-xs"},im={class:"flex items-center gap-1.5 text-sky-600 dark:text-sky-300"},dm={class:"font-medium"},um={key:3,class:"flex items-center justify-center gap-1.5 py-2 text-gray-500 dark:text-gray-400"},cm={class:"mb-3 text-xs text-gray-500 dark:text-gray-400"},gm={class:"mb-1 flex justify-between"},pm={class:"flex items-center justify-between"},mm={class:"flex items-center gap-1"},xm=["onClick"],ym={key:0,class:"mb-3 flex flex-wrap gap-1"},fm={class:"mt-3 flex gap-2 border-t border-gray-100 pt-3 dark:border-gray-600"},bm=["onClick"],vm=["onClick"],km=["onClick"],wm=["onClick"],hm=["onClick"],Am={key:4,class:"mt-4 flex flex-col items-center justify-between gap-4 sm:mt-6 sm:flex-row"},Cm={class:"flex w-full flex-col items-center gap-3 sm:w-auto sm:flex-row"},$m={class:"text-xs text-gray-600 dark:text-gray-400 sm:text-sm"},Im={class:"flex items-center gap-2"},Km=["value"],Lm={class:"flex items-center gap-2"},Dm=["disabled"],Tm={class:"flex items-center gap-1"},_m={key:1,class:"hidden px-2 text-gray-500 dark:text-gray-400 sm:inline"},Sm=["onClick"],Mm={key:2,class:"hidden px-2 text-gray-500 dark:text-gray-400 sm:inline"},Um=["disabled"],Rm={key:1,class:"tab-panel"},Vm={key:0,class:"py-12 text-center"},Pm={key:1,class:"py-12 text-center"},Em={key:2},Om={class:"mb-4 flex justify-end"},jm={class:"table-wrapper"},Gm={class:"table-container"},zm={class:"w-full"},qm={class:"sticky top-0 z-10 bg-gradient-to-b from-gray-50 to-gray-100/90 backdrop-blur-sm dark:from-gray-700 dark:to-gray-800/90"},Fm={key:0,class:"min-w-[120px] px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"},Bm={class:"divide-y divide-gray-200/50 dark:divide-gray-600/50"},Wm={class:"name-column sticky left-0 z-10 px-3 py-3"},Nm={class:"flex items-center"},Hm={class:"min-w-0"},Ym=["onClick"],Qm={class:"px-3 py-3"},Jm={class:"space-y-1"},Xm={key:0,class:"flex items-center gap-1 text-xs"},Zm={key:1,class:"flex items-center gap-1 text-xs"},ex={key:2,class:"flex items-center gap-1 text-xs"},tx={key:3,class:"text-xs text-gray-500 dark:text-gray-400"},sx={key:0,class:"px-3 py-3"},ax={class:"text-xs"},rx={key:0,class:"text-blue-600"},ox={key:1,class:"text-green-600"},lx={key:2,class:"text-gray-500 dark:text-gray-400"},nx={class:"whitespace-nowrap px-3 py-3 text-gray-700 dark:text-gray-300",style:{"font-size":"13px"}},ix={class:"px-3 py-3"},dx={class:"text-xs"},ux={key:0,class:"text-blue-600"},cx={key:1,class:"text-green-600"},gx={key:2,class:"text-gray-500 dark:text-gray-400"},px={class:"whitespace-nowrap px-3 py-3 text-gray-700 dark:text-gray-300",style:{"font-size":"13px"}},mx={class:"whitespace-nowrap px-3 py-3 text-right",style:{"font-size":"13px"}},xx={class:"font-medium text-blue-600 dark:text-blue-400",style:{"font-size":"13px"}},yx={class:"whitespace-nowrap px-3 py-3 text-right",style:{"font-size":"13px"}},fx={class:"font-medium text-purple-600 dark:text-purple-400",style:{"font-size":"13px"}},bx={class:"whitespace-nowrap px-3 py-3 text-right",style:{"font-size":"13px"}},vx={class:"flex items-center justify-end gap-1"},kx={class:"font-medium text-gray-900 dark:text-gray-100",style:{"font-size":"13px"}},wx={class:"whitespace-nowrap px-3 py-3 text-gray-700 dark:text-gray-300",style:{"font-size":"13px"}},hx={class:"flex flex-col leading-tight"},Ax=["title"],Cx={key:1,class:"text-gray-400",style:{"font-size":"13px"}},$x={key:2,class:"mt-1 text-xs text-gray-400 dark:text-gray-500"},Ix=["title"],Kx={key:0,class:"ml-1 text-gray-400 dark:text-gray-500"},Lx={key:4,class:"mt-1 text-xs text-gray-400 dark:text-gray-500"},Dx={class:"operations-column operations-cell px-3 py-3"},Tx={class:"flex items-center gap-2"},_x=["onClick"],Sx=["onClick"],Ps=16,Mx={__name:"ApiKeysView",setup(h){const J=Ua(),c=Na(),P=A([]),Y=j(()=>{var s;return((s=c.oemSettings)==null?void 0:s.ldapEnabled)||!1}),I=A([]),z=A(!1),S=A(!1),W=A(!1),X=A(!1),Q=A("today"),v=ut({type:"preset",preset:"today",customStart:"",customEnd:"",customRange:null}),L=j(()=>W.value),f=()=>{W.value=!W.value,W.value||(I.value=[],z.value=!1,S.value=!1)},M=j(()=>[{value:"today",label:"今日",icon:"fa-calendar-day"},{value:"7days",label:"最近7天",icon:"fa-calendar-week"},{value:"30days",label:"最近30天",icon:"fa-calendar-alt"},{value:"all",label:"全部时间",icon:"fa-infinity"},{value:"custom",label:"自定义范围",icon:"fa-calendar-check"}]),se=A("active"),G=A([]),ee=A(!1),te=A("createdAt"),H=A("desc"),C=A({}),T=A({}),a=A({page:1,pageSize:20,total:0,totalPages:0}),Z=A(new Map),V=A(new Set),D=A(new Map),U=A(new Set),x=A({}),d=A({}),p=A([new Date(2e3,1,1,0,0,0),new Date(2e3,2,1,23,59,59)]),b=A({claude:[],gemini:[],geminiApi:[],openai:[],openaiResponses:[],bedrock:[],droid:[],claudeGroups:[],geminiGroups:[],openaiGroups:[],droidGroups:[]}),oe=A(!1),xe=A(!1),Te=A(null),Ce=A(null),N=A(!1),i=A(null),k=A(""),ie=A([]),ae=A([]),E=A([]),l=A(""),y=A("apiKey"),de=j(()=>[{value:"apiKey",label:"按Key名称",icon:"fa-key"},{value:"bindingAccount",label:"按所属账号",icon:"fa-id-badge"}]),Ue=j(()=>{const s=[{value:"",label:"所有标签",icon:"fa-asterisk"}];return ie.value.forEach(t=>{s.push({value:t,label:t,icon:"fa-tag"})}),s}),Se=j(()=>E.value.map(s=>({value:s,label:s,icon:"fa-cube"}))),Be=j(()=>k.value?P.value.filter(s=>s.tags&&s.tags.includes(k.value)).length:0),ye=A(1),ce=A((()=>{const s=localStorage.getItem("apiKeysPageSize");if(s){const t=parseInt(s,10);if([10,20,50,100].includes(t))return t}return 10})()),Ve=[10,20,50,100],ze=A(!1),We=A(!1),Ne=A(!1),pe=A(!1),Ee=A(!1),ht=A(!1),Wt=A(!1),ns=A(null),is=A(null),ds=A(null),us=A([]),At=A(!1),rt=A({title:"",message:"",type:"primary",confirmText:"确认",cancelText:"取消"}),Je=A(null),ot=(s,t,m="确认",r="取消",w="primary")=>new Promise(q=>{rt.value={title:s,message:t,confirmText:m,cancelText:r,type:w},Je.value=q,At.value=!0}),Bs=()=>{var s;At.value=!1,(s=Je.value)==null||s.call(Je,!0)},Ws=()=>{var s;At.value=!1,(s=Je.value)==null||s.call(Je,!1)},Ct=j(()=>P.value),Xe=j(()=>a.value.totalPages||0),ct=j(()=>{const s=[],t=ye.value,m=Xe.value;if(m<=7)for(let r=1;r<=m;r++)s.push(r);else{let r=Math.max(1,t-2),w=Math.min(m,t+2);t<=3?w=5:t>=m-2&&(r=m-4);for(let q=r;q<=w;q++)s.push(q)}return s}),cs=j(()=>{const s=ct.value;return s.length===0?!1:s[0]>1}),gs=j(()=>{const s=ct.value;return s.length===0?!1:s[s.length-1]{const s=ct.value;return s.length===0?!1:cs.value&&s[0]>2}),Hs=j(()=>{const s=ct.value;return s.length===0?!1:gs.value&&s[s.length-1]P.value),$t=async(s=!1)=>{var t,m;if(!(xe.value&&!s)){oe.value=!0;try{const[r,w,q,B,O,me,fe,g,ke]=await Promise.all([Pt(),Et(),Ot(),jt(),Gt(),zt(),qt(),Ft(),Bt()]),we=[];r.success&&((t=r.data)==null||t.forEach(ue=>{we.push({...ue,platform:"claude-oauth",isDedicated:ue.accountType==="dedicated"})})),w.success&&((m=w.data)==null||m.forEach(ue=>{we.push({...ue,platform:"claude-console",isDedicated:ue.accountType==="dedicated"})})),b.value.claude=we;const Le=[];if(q.success&&(q.data||[]).forEach(ue=>{Le.push({...ue,platform:"gemini",isDedicated:ue.accountType==="dedicated"})}),B.success&&(b.value.geminiApi=(B.data||[]).map(ue=>({...ue,platform:"gemini-api",isDedicated:ue.accountType==="dedicated"})),b.value.geminiApi.forEach(ue=>{Le.push(ue)})),b.value.gemini=Le,O.success&&(b.value.openai=(O.data||[]).map(ue=>({...ue,isDedicated:ue.accountType==="dedicated"}))),me.success&&(b.value.openaiResponses=(me.data||[]).map(ue=>({...ue,isDedicated:ue.accountType==="dedicated"}))),fe.success&&(b.value.bedrock=(fe.data||[]).map(ue=>({...ue,isDedicated:ue.accountType==="dedicated"}))),g.success&&(b.value.droid=(g.data||[]).map(ue=>({...ue,platform:"droid",isDedicated:ue.accountType==="dedicated"}))),ke.success){const ue=ke.data||[];b.value.claudeGroups=ue.filter(be=>be.platform==="claude"),b.value.geminiGroups=ue.filter(be=>be.platform==="gemini"),b.value.openaiGroups=ue.filter(be=>be.platform==="openai"),b.value.droidGroups=ue.filter(be=>be.platform==="droid")}xe.value=!0}catch{}finally{oe.value=!1}}},Ys=async()=>{try{const s=await Qa();s.success&&(E.value=s.data||[])}catch(s){console.error("Failed to load used models:",s)}},Ke=async(s=!0)=>{var t,m,r;X.value=!0;try{s&&(Z.value.clear(),D.value.clear());const w=new URLSearchParams;w.set("page",ye.value.toString()),w.set("pageSize",ce.value.toString()),w.set("searchMode",y.value),l.value&&w.set("search",l.value),k.value&&w.set("tag",k.value),ae.value.length>0&&w.set("models",ae.value.join(","));const B=["name","createdAt","expiresAt","lastUsedAt","isActive","status","cost"].includes(te.value)?te.value:"createdAt";w.set("sortBy",B),w.set("sortOrder",H.value),B==="cost"&&(v.type==="custom"&&v.customStart&&v.customEnd?(w.set("costTimeRange","custom"),w.set("costStartDate",v.customStart),w.set("costEndDate",v.customEnd)):w.set("costTimeRange",v.preset||"7days")),v.type==="custom"&&v.customStart&&v.customEnd?(w.set("startDate",v.customStart),w.set("endDate",v.customEnd),w.set("timeRange","custom")):v.preset==="all"?w.set("timeRange","all"):w.set("timeRange",v.preset);const O=await Ya(w.toString());O.success&&(P.value=((t=O.data)==null?void 0:t.items)||[],(m=O.data)!=null&&m.pagination&&(a.value=O.data.pagination,ye.value>a.value.totalPages&&a.value.totalPages>0&&(ye.value=a.value.totalPages)),(r=O.data)!=null&&r.availableTags&&(ie.value=O.data.availableTags),Qs(),Js())}catch{R("加载 API Keys 失败","error")}finally{X.value=!1}},Qs=async()=>{const s=P.value;if(!s||s.length===0)return;let t=v.preset,m=null,r=null;v.type==="custom"&&v.customStart&&v.customEnd&&(t="custom",m=v.customStart,r=v.customEnd);const w=s.filter(B=>{const O=Z.value.get(B.id);return!O||O.timeRange!==t||t==="custom"&&(O.startDate!==m||O.endDate!==r)});if(w.length===0)return;const q=w.map(B=>B.id);q.forEach(B=>V.value.add(B));try{const B={keyIds:q,timeRange:t};t==="custom"&&(B.startDate=m,B.endDate=r);const O=await er(B);if(O.success&&O.data)for(const[me,fe]of Object.entries(O.data))Z.value.set(me,{stats:fe,timeRange:t,startDate:m,endDate:r,timestamp:Date.now()})}catch(B){console.error("加载统计数据失败:",B)}finally{q.forEach(B=>V.value.delete(B))}},ve=s=>{const t=Z.value.get(s);return(t==null?void 0:t.stats)||null},Ze=s=>V.value.has(s),Js=async()=>{const s=P.value;if(!s||s.length===0)return;const t=s.filter(r=>!(!r.lastUsedAt||D.value.has(r.id)));if(t.length===0)return;const m=t.map(r=>r.id);m.forEach(r=>U.value.add(r));try{const r=await tr({keyIds:m});if(r.success&&r.data)for(const[w,q]of Object.entries(r.data))D.value.set(w,q)}catch(r){console.error("加载最后使用账号数据失败:",r)}finally{m.forEach(r=>U.value.delete(r))}},Xs=s=>D.value.get(s)||null,It=s=>U.value.has(s),Kt=async()=>{se.value="deleted",ee.value=!0;try{const s=await Ja();s.success&&(G.value=s.apiKeys||[])}catch{R("加载已删除的 API Keys 失败","error")}finally{ee.value=!1}},nt=s=>{if(s==="cost"){if(!Lt.value){R("费用排序索引正在更新中,请稍后重试","warning");return}v.type==="custom"&&R("正在计算费用排序,可能需要几秒钟...","info")}te.value===s?H.value=H.value==="asc"?"desc":"asc":(te.value=s,H.value=s==="cost"?"desc":"asc")},Lt=j(()=>{if(v.type==="custom")return!0;const s=v.preset,t=T.value[s];return(t==null?void 0:t.status)==="ready"}),Zs=j(()=>{if(v.type==="custom")return"点击按费用排序(实时计算,可能需要几秒钟)";const s=v.preset,t=T.value[s];return t?t.status==="updating"?"费用排序索引正在更新中...":t.status==="ready"?`点击按费用排序(索引更新于: ${t.lastUpdate?new Date(t.lastUpdate).toLocaleString():"未知"})`:"费用排序索引状态未知":"费用排序索引未初始化"});let it=null;const ps=async()=>{try{const s=await Ha();s.success&&(T.value=s.data||{},ea())}catch(s){console.error("Failed to fetch cost sort status:",s)}},ea=()=>{it&&clearTimeout(it);const t=Object.values(T.value).some(m=>(m==null?void 0:m.status)==="updating")?1e4:6e4;it=setTimeout(ps,t)},Me=s=>!s&&s!==0?"0":s>=1e6?(s/1e6).toFixed(1)+"M":s>=1e3?(s/1e3).toFixed(1)+"K":s.toString(),gt=s=>{if(!s)return"未知账户";if(s.startsWith("group:")){const O=s.substring(6),me=b.value.claudeGroups.find(we=>we.id===O);if(me)return`分组-${me.name}`;const fe=b.value.geminiGroups.find(we=>we.id===O);if(fe)return`分组-${fe.name}`;const g=b.value.openaiGroups.find(we=>we.id===O);if(g)return`分组-${g.name}`;const ke=b.value.droidGroups.find(we=>we.id===O);return ke?`分组-${ke.name}`:`分组-${O.substring(0,8)}`}const t=b.value.claude.find(O=>O.id===s);if(t)return`${t.name}`;if(s.startsWith("api:")){const O=s.replace("api:",""),me=b.value.gemini.find(fe=>fe.id===O&&fe.platform==="gemini-api");return me?`${me.name}`:`${O.substring(0,8)}`}const m=b.value.gemini.find(O=>O.id===s);if(m)return`${m.name}`;if(s.startsWith("responses:")){const O=s.replace("responses:",""),me=b.value.openaiResponses.find(fe=>fe.id===O);return me?`${me.name}`:`${O.substring(0,8)}`}const r=b.value.openai.find(O=>O.id===s);if(r)return`${r.name}`;const w=b.value.openaiResponses.find(O=>O.id===s);if(w)return`${w.name}`;const q=b.value.bedrock.find(O=>O.id===s);if(q)return`${q.name}`;const B=b.value.droid.find(O=>O.id===s);return B?`${B.name}`:`${s.substring(0,8)}`},ta=s=>!!(s.claudeAccountId||s.claudeConsoleAccountId||s.geminiAccountId||s.openaiAccountId||s.bedrockAccountId||s.droidAccountId),ms=s=>{if(s.claudeAccountId){const t=gt(s.claudeAccountId);if(s.claudeAccountId.startsWith("group:"))return t;const m=b.value.claude.find(r=>r.id===s.claudeAccountId);return m?m.accountType==="dedicated"?`🔒 专属-${t}`:t:`⚠️ ${t} (账户不存在)`}if(s.claudeConsoleAccountId){const t=b.value.claude.find(m=>m.id===s.claudeConsoleAccountId&&m.platform==="claude-console");return t?`Console-${t.name}`:"⚠️ Console账户不存在"}return""},xs=s=>{if(s.geminiAccountId){const t=gt(s.geminiAccountId);if(s.geminiAccountId.startsWith("group:"))return t;if(s.geminiAccountId.startsWith("api:")){const r=s.geminiAccountId.replace("api:",""),w=b.value.gemini.find(q=>q.id===r&&q.platform==="gemini-api");return w?w.accountType==="dedicated"?`🔒 API专属-${t}`:`API-${t}`:`⚠️ ${t} (账户不存在)`}const m=b.value.gemini.find(r=>r.id===s.geminiAccountId);return m?m.accountType==="dedicated"?`🔒 专属-${t}`:t:`⚠️ ${t} (账户不存在)`}return""},ys=s=>{if(s.openaiAccountId){const t=gt(s.openaiAccountId);if(s.openaiAccountId.startsWith("group:"))return t;let m=null;if(s.openaiAccountId.startsWith("responses:")){const r=s.openaiAccountId.replace("responses:","");m=b.value.openaiResponses.find(w=>w.id===r)}else m=b.value.openai.find(r=>r.id===s.openaiAccountId);return m?m.accountType==="dedicated"?`🔒 专属-${t}`:t:`⚠️ ${t} (账户不存在)`}return""},fs=s=>{if(s.bedrockAccountId){const t=gt(s.bedrockAccountId);if(s.bedrockAccountId.startsWith("group:"))return t;const m=b.value.bedrock.find(r=>r.id===s.bedrockAccountId);return m?m.accountType==="dedicated"?`🔒 专属-${t}`:t:`⚠️ ${t} (账户不存在)`}return""},bs=s=>{if(s.droidAccountId){const t=gt(s.droidAccountId);if(s.droidAccountId.startsWith("group:"))return t;const m=b.value.droid.find(r=>r.id===s.droidAccountId);return m?m.accountType==="dedicated"?`🔒 专属-${t}`:t:`⚠️ ${t} (账户不存在)`}return""},pt=s=>s?new Date(s)!s||pt(s)?!1:(new Date(s)-new Date)/(1e3*60*60*24)<=7,vs=s=>s?new Date(s).toLocaleDateString("zh-CN"):"",ks=async s=>{C.value[s]?C.value[s]=!1:(C.value[s]=!0,d.value[s]||As(s),await Dt(s,!0))},Dt=async(s,t=!1)=>{if(!t&&x.value[s]&&x.value[s].length>0)return;const m=He(s);try{const r={};m.customStart&&m.customEnd?(r.startDate=m.customStart,r.endDate=m.customEnd,r.period="custom"):r.period=m.preset==="today"||m.preset==="7days"?"daily":"monthly";const w=await rr(s,r);w.success&&(x.value[s]=w.data||[])}catch{R("加载模型统计失败","error"),x.value[s]=[]}},ws=(s,t)=>{const m=t.reduce((r,w)=>r+(w.allTokens||0),0);return m===0?0:Math.round(s/m*100)},sa=s=>s.formatted&&s.formatted.total?s.formatted.total:s.cost!==void 0?`$${s.cost.toFixed(6)}`:"$0.000000",aa=s=>{var t,m,r,w,q,B;if(v.type==="custom"){if(s.usage){if(s.usage.custom&&s.usage.custom.requests!==void 0)return s.usage.custom.requests;if(s.usage.total&&s.usage.total.requests!==void 0)return s.usage.total.requests}return 0}else{if(v.preset==="today")return((m=(t=s.usage)==null?void 0:t.daily)==null?void 0:m.requests)||0;if(v.preset==="7days")return s.usage&&s.usage["7days"]&&s.usage["7days"].requests!==void 0?s.usage["7days"].requests:0;if(v.preset==="30days"){if(s.usage){if(s.usage["30days"]&&s.usage["30days"].requests!==void 0)return s.usage["30days"].requests;if(s.usage.monthly&&s.usage.monthly.requests!==void 0)return s.usage.monthly.requests}return 0}else return v.preset==="all"?s.usage&&s.usage.all&&s.usage.all.requests!==void 0?s.usage.all.requests:((w=(r=s.usage)==null?void 0:r.total)==null?void 0:w.requests)||0:((B=(q=s.usage)==null?void 0:q.total)==null?void 0:B.requests)||0}},ra=s=>{if(v.type==="custom"){if(s.usage){if(s.usage.custom&&s.usage.custom.cost!==void 0)return s.usage.custom.cost;if(s.usage.total&&s.usage.total.cost!==void 0)return s.usage.total.cost}return 0}else{if(v.preset==="today")return s.dailyCost||0;if(v.preset==="7days")return s.usage&&s.usage["7days"]&&s.usage["7days"].cost!==void 0?s.usage["7days"].cost:s.weeklyCost||s.periodCost||0;if(v.preset==="30days"){if(s.usage){if(s.usage["30days"]&&s.usage["30days"].cost!==void 0)return s.usage["30days"].cost;if(s.usage.monthly&&s.usage.monthly.cost!==void 0)return s.usage.monthly.cost;if(s.usage.total&&s.usage.total.cost!==void 0)return s.usage.total.cost}return s.monthlyCost||s.periodCost||0}else return v.preset==="all"?s.usage&&s.usage.all&&s.usage.all.cost!==void 0?s.usage.all.cost:s.totalCost||0:s.periodCost||s.totalCost||0}},oa=s=>{var t,m,r,w,q,B;if(v.type==="custom"){if(s.usage){if(s.usage.custom&&s.usage.custom.tokens!==void 0)return s.usage.custom.tokens;if(s.usage.total&&s.usage.total.tokens!==void 0)return s.usage.total.tokens}return 0}else{if(v.preset==="today")return((m=(t=s.usage)==null?void 0:t.daily)==null?void 0:m.tokens)||0;if(v.preset==="7days")return s.usage&&s.usage["7days"]&&s.usage["7days"].tokens!==void 0?s.usage["7days"].tokens:0;if(v.preset==="30days"){if(s.usage){if(s.usage["30days"]&&s.usage["30days"].tokens!==void 0)return s.usage["30days"].tokens;if(s.usage.monthly&&s.usage.monthly.tokens!==void 0)return s.usage.monthly.tokens;if(s.usage.total&&s.usage.total.tokens!==void 0)return s.usage.total.tokens}return 0}else return v.preset==="all"?s.usage&&s.usage.all&&s.usage.all.tokens!==void 0?s.usage.all.tokens:((w=(r=s.usage)==null?void 0:r.total)==null?void 0:w.tokens)||0:((B=(q=s.usage)==null?void 0:q.total)==null?void 0:B.tokens)||0}},la=s=>{var t,m,r,w,q,B;if(v.type==="custom"){if(s.usage){if(s.usage.custom&&s.usage.custom.inputTokens!==void 0)return s.usage.custom.inputTokens;if(s.usage.total&&s.usage.total.inputTokens!==void 0)return s.usage.total.inputTokens}return 0}else{if(v.preset==="today")return((m=(t=s.usage)==null?void 0:t.daily)==null?void 0:m.inputTokens)||0;if(v.preset==="7days")return s.usage&&s.usage["7days"]&&s.usage["7days"].inputTokens!==void 0?s.usage["7days"].inputTokens:0;if(v.preset==="30days"){if(s.usage){if(s.usage["30days"]&&s.usage["30days"].inputTokens!==void 0)return s.usage["30days"].inputTokens;if(s.usage.monthly&&s.usage.monthly.inputTokens!==void 0)return s.usage.monthly.inputTokens;if(s.usage.total&&s.usage.total.inputTokens!==void 0)return s.usage.total.inputTokens}return 0}else return v.preset==="all"?s.usage&&s.usage.all&&s.usage.all.inputTokens!==void 0?s.usage.all.inputTokens:((w=(r=s.usage)==null?void 0:r.total)==null?void 0:w.inputTokens)||0:((B=(q=s.usage)==null?void 0:q.total)==null?void 0:B.inputTokens)||0}},na=s=>{var t,m,r,w,q,B;if(v.type==="custom"){if(s.usage){if(s.usage.custom&&s.usage.custom.outputTokens!==void 0)return s.usage.custom.outputTokens;if(s.usage.total&&s.usage.total.outputTokens!==void 0)return s.usage.total.outputTokens}return 0}else{if(v.preset==="today")return((m=(t=s.usage)==null?void 0:t.daily)==null?void 0:m.outputTokens)||0;if(v.preset==="7days")return s.usage&&s.usage["7days"]&&s.usage["7days"].outputTokens!==void 0?s.usage["7days"].outputTokens:0;if(v.preset==="30days"){if(s.usage){if(s.usage["30days"]&&s.usage["30days"].outputTokens!==void 0)return s.usage["30days"].outputTokens;if(s.usage.monthly&&s.usage.monthly.outputTokens!==void 0)return s.usage.monthly.outputTokens;if(s.usage.total&&s.usage.total.outputTokens!==void 0)return s.usage.total.outputTokens}return 0}else return v.preset==="all"?s.usage&&s.usage.all&&s.usage.all.outputTokens!==void 0?s.usage.all.outputTokens:((w=(r=s.usage)==null?void 0:r.total)==null?void 0:w.outputTokens)||0:((B=(q=s.usage)==null?void 0:q.total)==null?void 0:B.outputTokens)||0}},ia=s=>{if(!x.value[s.id])return ra(s);const t=x.value[s.id]||[];let m=0;return t.forEach(r=>{if(r.cost!==void 0)m+=r.cost;else if(r.formatted&&r.formatted.total){const w=r.formatted.total.replace("$","").replace(",",""),q=parseFloat(w);isNaN(q)||(m+=q)}}),m},da=s=>{if(hs(s),te.value==="cost"){if(s==="custom")return;const t=T.value[s];(!t||t.status!=="ready")&&(te.value="createdAt",H.value="desc",R("当前时间范围的费用排序索引未就绪,已切换到默认排序","info"))}},hs=s=>{if(v.preset=s,s==="custom"){if(v.type="custom",!v.customRange){const t=new Date,m=new Date(t);m.setDate(t.getDate()-6);const r=w=>w.getFullYear()+"-"+String(w.getMonth()+1).padStart(2,"0")+"-"+String(w.getDate()).padStart(2,"0")+" 00:00:00";v.customRange=[r(m),r(t)],v.customStart=m.toISOString().split("T")[0],v.customEnd=t.toISOString().split("T")[0]}}else if(s==="all")v.type="preset",v.customStart=null,v.customEnd=null;else{v.type="preset";const t=new Date,m=new Date(t);s==="today"?m.setHours(0,0,0,0):s==="7days"?m.setDate(t.getDate()-6):s==="30days"&&m.setDate(t.getDate()-29),v.customStart=m.toISOString().split("T")[0],v.customEnd=t.toISOString().split("T")[0]}Ke()},ua=s=>{s&&s.length===2?(v.type="custom",v.preset="custom",v.customRange=s,v.customStart=s[0].split(" ")[0],v.customEnd=s[1].split(" ")[0],Ke()):s===null&&hs("today")},As=s=>{const t=new Date;new Date(t).setHours(0,0,0,0),d.value[s]={type:"preset",preset:"today",customStart:t.toISOString().split("T")[0],customEnd:t.toISOString().split("T")[0],customRange:null,presetOptions:[{value:"today",label:"今日",days:1},{value:"7days",label:"7天",days:7},{value:"30days",label:"30天",days:30},{value:"custom",label:"自定义",days:-1}]}},He=s=>(d.value[s]||As(s),d.value[s]),Cs=(s,t)=>{const m=He(t);m.type="preset",m.preset=s;const r=m.presetOptions.find(w=>w.value===s);if(r)if(s==="custom"){if(m.type="custom",!m.customRange){const w=new Date,q=new Date(w);q.setDate(w.getDate()-6);const B=O=>O.getFullYear()+"-"+String(O.getMonth()+1).padStart(2,"0")+"-"+String(O.getDate()).padStart(2,"0")+" 00:00:00";m.customRange=[B(q),B(w)],m.customStart=q.toISOString().split("T")[0],m.customEnd=w.toISOString().split("T")[0]}}else{const w=new Date,q=new Date(w);q.setDate(w.getDate()-(r.days-1)),m.customStart=q.toISOString().split("T")[0],m.customEnd=w.toISOString().split("T")[0];const B=O=>O.getFullYear()+"-"+String(O.getMonth()+1).padStart(2,"0")+"-"+String(O.getDate()).padStart(2,"0")+" 00:00:00";m.customRange=[B(q),B(w)]}Dt(t,!0)},ca=(s,t)=>{const m=He(s);t&&t.length===2?(m.type="custom",m.preset="custom",m.customRange=t,m.customStart=t[0].split(" ")[0],m.customEnd=t[1].split(" ")[0],Dt(s,!0)):t===null&&Cs("7days",s)},$s=s=>s>new Date,ga=s=>{const t=He(s);t.type="preset",t.preset="today";const m=new Date;new Date(m).setHours(0,0,0,0),t.customStart=m.toISOString().split("T")[0],t.customEnd=m.toISOString().split("T")[0],t.customRange=null,Dt(s,!0),R("已重置筛选条件并刷新数据","info")},pa=()=>{ze.value=!0,xe.value||$t()},Nt=s=>{ns.value=s,We.value=!0,xe.value||$t()},Ht=s=>{is.value=s,Ne.value=!0},ma=s=>{ze.value=!1,ds.value=s,pe.value=!0,Ke()},xa=s=>{ze.value=!1,us.value=s,Ee.value=!0,Ke()},ya=()=>{if(I.value.length===0){R("请先选择要编辑的 API Keys","warning");return}ht.value=!0,xe.value||$t()},fa=()=>{ht.value=!1,I.value=[],je(),Ke()},ba=()=>{We.value=!1,R("API Key 更新成功","success"),Ke()},va=()=>{Ne.value=!1,R("API Key 续期成功","success"),Ke()},ka=s=>{const t=[{key:"edit",label:"编辑",icon:"fa-edit",color:"blue",handler:()=>Nt(s)}];return s.expiresAt&&(pt(s.expiresAt)||mt(s.expiresAt))&&t.push({key:"renew",label:"续期",icon:"fa-clock",color:"green",handler:()=>Ht(s)}),t.push({key:"toggle",label:s.isActive?"禁用":"激活",icon:s.isActive?"fa-ban":"fa-check-circle",color:s.isActive?"orange":"green",handler:()=>Yt(s)}),t.push({key:"delete",label:"删除",icon:"fa-trash",color:"red",handler:()=>Qt(s.id)}),t},Yt=async s=>{let t=!0;if(s.isActive&&(t=await ot("禁用 API Key",`确定要禁用 API Key "${s.name}" 吗?禁用后所有使用此 Key 的请求将返回 401 错误。`,"确定禁用","取消","warning")),!!t)try{const m=await Vt(s.id,{isActive:!s.isActive});if(m.success){R(`API Key 已${s.isActive?"禁用":"激活"}`,"success");const r=P.value.find(w=>w.id===s.id);r&&(r.isActive=!s.isActive)}else R(m.message||"操作失败","error")}catch{R("操作失败","error")}},Qt=async s=>{if(await ot("删除 API Key","确定要删除这个 API Key 吗?此操作不可恢复。","确定删除","取消","danger"))try{const m=await qs(s);if(m.success){R("API Key 已删除","success");const r=I.value.indexOf(s);r>-1&&I.value.splice(r,1),je(),Ke()}else R(m.message||"删除失败","error")}catch{R("删除失败","error")}},wa=async s=>{var m,r;if(await ot("恢复 API Key","确定要恢复这个 API Key 吗?恢复后可以重新使用。","确定恢复","取消","primary"))try{const w=await sr(s);w.success?(R("API Key 已成功恢复","success"),await Kt(),await Ke()):R(w.error||"恢复失败","error")}catch(w){R(((r=(m=w.response)==null?void 0:m.data)==null?void 0:r.error)||"恢复失败","error")}},ha=async s=>{var m,r;if(await ot("彻底删除 API Key","确定要彻底删除这个 API Key 吗?此操作不可恢复,所有相关数据将被永久删除。","确定彻底删除","取消","danger"))try{const w=await ar(s);w.success?(R("API Key 已彻底删除","success"),Kt()):R(w.error||"彻底删除失败","error")}catch(w){R(((r=(m=w.response)==null?void 0:m.data)==null?void 0:r.error)||"彻底删除失败","error")}},Aa=async()=>{var m,r;const s=G.value.length;if(s===0){R("没有需要清空的 API Keys","info");return}if(await ot("清空所有已删除的 API Keys",`确定要彻底删除全部 ${s} 个已删除的 API Keys 吗?此操作不可恢复,所有相关数据将被永久删除。`,"确定清空全部","取消","danger"))try{const w=await Za();w.success?(R(w.message||"已清空所有已删除的 API Keys","success"),w.details&&w.details.failedCount>0&&R(`${w.details.failedCount} 个清空失败`,"warning"),Kt()):R(w.error||"清空失败","error")}catch(w){R(((r=(m=w.response)==null?void 0:m.data)==null?void 0:r.error)||"清空失败","error")}},Ca=async()=>{const s=I.value.length;if(s===0){R("请先选择要删除的 API Keys","warning");return}if(!await ot("批量删除 API Keys",`确定要删除选中的 ${s} 个 API Key 吗?此操作不可恢复。`,"确定删除","取消","danger"))return;const m=[...I.value];try{const r=await Xa({keyIds:m});if(r.success){const{successCount:w,failedCount:q,errors:B}=r.data;if(w>0){if(R(`成功删除 ${w} 个 API Keys`,"success"),q>0){const O=B.map(me=>`${me.keyId}: ${me.error}`).join(` -`);R(`${q} 个删除失败: -${O}`,"warning")}}else R("所有 API Keys 删除失败","error");I.value=[],je(),Ke()}else R(r.message||"批量删除失败","error")}catch{R("批量删除失败","error")}},$a=()=>{if(z.value)lt.value.forEach(s=>{I.value.includes(s.id)||I.value.push(s.id)});else{const s=new Set(lt.value.map(t=>t.id));I.value=I.value.filter(t=>!s.has(t))}je()},je=()=>{const s=lt.value.length,t=lt.value.filter(m=>I.value.includes(m.id)).length;t===0?(z.value=!1,S.value=!1):t===s?(z.value=!0,S.value=!1):(z.value=!1,S.value=!0)},xt=s=>{Te.value=s},Is=()=>{Te.value=null},Ia=async({keyId:s,expiresAt:t,activateNow:m})=>{try{const r=await or(s,{expiresAt:t||null,activateNow:m||!1});if(r.success){R(m?"API Key已激活":"过期时间已更新","success");const w=P.value.find(q=>q.id===s);w&&(m&&r.updates?(w.isActivated=!0,w.activatedAt=r.updates.activatedAt,w.expiresAt=r.updates.expiresAt):(w.expiresAt=t||null,t&&!w.isActivated&&(w.isActivated=!0))),Is()}else R(r.message||"更新失败","error"),Ce.value&&Ce.value.resetSaving()}catch{R("更新失败","error"),Ce.value&&Ce.value.resetSaving()}},Ks=s=>{if(s==null)return"--:--";const t=Math.floor(s/3600),m=Math.floor(s%3600/60),r=s%60;return t>0?`${t}h${m}m`:m>0?`${m}m${r}s`:`${r}s`},Tt=s=>{var r,w,q,B,O,me,fe,g,ke,we,Le,ue,be,Mt,qe;const t=ve(s.id),m={...s,dailyCost:(t==null?void 0:t.dailyCost)??s.dailyCost??0,currentWindowCost:(t==null?void 0:t.currentWindowCost)??s.currentWindowCost??0,windowRemainingSeconds:(t==null?void 0:t.windowRemainingSeconds)??s.windowRemainingSeconds,windowStartTime:(t==null?void 0:t.windowStartTime)??s.windowStartTime??null,windowEndTime:(t==null?void 0:t.windowEndTime)??s.windowEndTime??null,usage:{...s.usage,total:{...(r=s.usage)==null?void 0:r.total,requests:(t==null?void 0:t.requests)??((q=(w=s.usage)==null?void 0:w.total)==null?void 0:q.requests)??0,tokens:(t==null?void 0:t.tokens)??((O=(B=s.usage)==null?void 0:B.total)==null?void 0:O.tokens)??0,cost:(t==null?void 0:t.allTimeCost)??((fe=(me=s.usage)==null?void 0:me.total)==null?void 0:fe.cost)??0,inputTokens:(t==null?void 0:t.inputTokens)??((ke=(g=s.usage)==null?void 0:g.total)==null?void 0:ke.inputTokens)??0,outputTokens:(t==null?void 0:t.outputTokens)??((Le=(we=s.usage)==null?void 0:we.total)==null?void 0:Le.outputTokens)??0,cacheCreateTokens:(t==null?void 0:t.cacheCreateTokens)??((be=(ue=s.usage)==null?void 0:ue.total)==null?void 0:be.cacheCreateTokens)??0,cacheReadTokens:(t==null?void 0:t.cacheReadTokens)??((qe=(Mt=s.usage)==null?void 0:Mt.total)==null?void 0:qe.cacheReadTokens)??0}}};i.value=m,N.value=!0},Ka=s=>{var m;const t=s||((m=i.value)==null?void 0:m.id);t&&(N.value=!1,J.push(`/api-keys/${t}/usage-records`))},Jt=s=>{if(!s)return"从未使用";const t=new Date(s),r=new Date-t;return r<6e4?"刚刚":r<36e5?`${Math.floor(r/6e4)} 分钟前`:r<864e5?`${Math.floor(r/36e5)} 小时前`:r<6048e5?`${Math.floor(r/864e5)} 天前`:t.toLocaleDateString("zh-CN")},Xt={claude:"Claude",openai:"OpenAI",gemini:"Gemini",droid:"Droid",deleted:"已删除",other:"其他"},La=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,Ls=s=>{if(!s)return"other";const t=String(s).toLowerCase();return t==="claude-console"||t==="claude_console"||t==="claude"?"claude":t==="openai"||t==="openai-responses"||t==="openai_responses"||t==="azure-openai"||t==="azure_openai"?"openai":t==="gemini"||t==="gemini-api"||t==="gemini_api"?"gemini":t==="droid"?"droid":"other"},_t=s=>{if(!s)return null;const t=Xs(s.id);return t!==null?t:s.lastUsage||null},Zt=s=>{if(It(s==null?void 0:s.id))return!1;const t=_t(s);return!!(t&&(t.accountName||t.accountId||t.rawAccountId))},es=s=>{if(!s)return!1;if(s.accountCategory==="deleted")return!0;const t=typeof s.rawAccountId=="string"?s.rawAccountId.trim():"",m=typeof s.accountName=="string"?s.accountName.trim():"",r=typeof s.accountType=="string"?s.accountType.trim().toLowerCase():"";if(!t)return!1;const w=La.test(t),q=!m||m===t,B=Ls(r);return w&&q&&(!r||r==="unknown"||B==="other")},Da=s=>s?es(s)?"已删除":s.accountName||s.accountId||s.rawAccountId||"未知账号":"未知账号",yt=s=>Da(_t(s)),ts=s=>{const t=yt(s);return t.length>Ps?`${t.slice(0,Ps)}...`:t},St=s=>{const t=_t(s);if(es(t))return Xt.deleted;const m=(t==null?void 0:t.accountCategory)||Ls(t==null?void 0:t.accountType);return Xt[m]||Xt.other},ss=s=>{const t=_t(s);return es(t)},Ta=()=>{l.value="",ye.value=1},_a=()=>{try{const s=Ct.value.map(g=>{var Ds,Ts,_s,Ss,Ms,Us,Rs,Vs;const ke=aa(g),we=ia(g),Le=oa(g),ue=la(g),be=na(g),Mt={ID:g.id||"",名称:g.name||"",描述:g.description||"",状态:g.isActive?"启用":"禁用",API密钥:g.apiKey||"",过期模式:g.expirationMode==="activation"?"首次使用后激活":g.expirationMode==="fixed"?"固定时间":"无",激活期限:g.activationDays||"",激活单位:g.activationUnit==="hours"?"小时":g.activationUnit==="days"?"天":"",已激活:g.isActivated?"是":"否",激活时间:g.activatedAt?Pe(g.activatedAt):"",过期时间:g.expiresAt?Pe(g.expiresAt):"",服务权限:(()=>{const Ge=g.permissions;return!Ge||Ge==="all"?"全部服务":Array.isArray(Ge)?Ge.length===0?"全部服务":Ge.join(", "):Ge})(),令牌限制:g.tokenLimit==="0"||g.tokenLimit===0?"无限制":g.tokenLimit||"",并发限制:g.concurrencyLimit==="0"||g.concurrencyLimit===0?"无限制":g.concurrencyLimit||"","速率窗口(分钟)":g.rateLimitWindow==="0"||g.rateLimitWindow===0?"无限制":g.rateLimitWindow||"",速率请求限制:g.rateLimitRequests==="0"||g.rateLimitRequests===0?"无限制":g.rateLimitRequests||"","日费用限制($)":g.dailyCostLimit==="0"||g.dailyCostLimit===0?"无限制":`$${g.dailyCostLimit}`||"","总费用限制($)":g.totalCostLimit==="0"||g.totalCostLimit===0?"无限制":`$${g.totalCostLimit}`||"",Claude专属账户:g.claudeAccountId||"",Claude控制台账户:g.claudeConsoleAccountId||"",Gemini专属账户:g.geminiAccountId||"",OpenAI专属账户:g.openaiAccountId||"","Azure OpenAI专属账户":g.azureOpenaiAccountId||"",Bedrock专属账户:g.bedrockAccountId||"",Droid专属账户:g.droidAccountId||"",启用模型限制:g.enableModelRestriction?"是":"否",限制的模型:g.restrictedModels&&g.restrictedModels.length>0?g.restrictedModels.join("; "):"",启用客户端限制:g.enableClientRestriction?"是":"否",允许的客户端:g.allowedClients&&g.allowedClients.length>0?g.allowedClients.join("; "):"",创建时间:g.createdAt?Pe(g.createdAt):"",创建者:g.createdBy||"",用户ID:g.userId||"",用户名:g.userUsername||"",标签:g.tags&&g.tags.length>0?g.tags.join(", "):"无",请求总数:ke,"总费用($)":we.toFixed(2),Token数:Me(Le),输入Token:Me(ue),输出Token:Me(be),最后使用时间:g.lastUsedAt?Pe(g.lastUsedAt):"从未使用",最后使用账号:yt(g),最后使用类型:St(g)},qe={};let dt=null;return v.preset==="today"?dt=(Ts=(Ds=g.usage)==null?void 0:Ds.daily)==null?void 0:Ts.models:v.preset==="7days"?dt=(Ss=(_s=g.usage)==null?void 0:_s.weekly)==null?void 0:Ss.models:v.preset==="30days"?dt=(Us=(Ms=g.usage)==null?void 0:Ms.monthly)==null?void 0:Us.models:v.preset==="all"&&(dt=(Vs=(Rs=g.usage)==null?void 0:Rs.total)==null?void 0:Vs.models),dt&&Object.entries(dt).forEach(([Ge,ft])=>{let Ye=Ge;Ge.includes(":")&&(Ye=Ge.split(":").pop()),Ye=Ye.replace(/[:/]/g,"_"),qe[`${Ye}_请求数`]=ft.requests||0,qe[`${Ye}_费用($)`]=(ft.cost||0).toFixed(2),qe[`${Ye}_Token`]=Me(ft.totalTokens||0),qe[`${Ye}_输入Token`]=Me(ft.inputTokens||0),qe[`${Ye}_输出Token`]=Me(ft.outputTokens||0)}),{...Mt,...qe}}),t=et.utils.book_new(),m=et.utils.json_to_sheet(s),r=et.utils.decode_range(m["!ref"]),w=Object.keys(s[0]||{}),q=w.map(g=>g==="ID"?{wch:40}:g==="名称"?{wch:25}:g==="描述"?{wch:30}:g==="API密钥"?{wch:45}:g==="标签"?{wch:20}:g.includes("时间")?{wch:20}:g.includes("限制")?{wch:15}:g.includes("费用")?{wch:15}:g.includes("Token")?{wch:15}:g.includes("请求")?{wch:12}:g.includes("账户")?{wch:30}:g.includes("权限")||g.includes("模型")||g.includes("客户端")?{wch:20}:g.includes("激活")||g.includes("过期")?{wch:18}:{wch:15});m["!cols"]=q;for(let g=r.s.c;g<=r.e.c;++g){const ke=et.utils.encode_cell({r:0,c:g});if(!m[ke])continue;const we=w[g],Le=we&&we.includes("_");m[ke].s={fill:{fgColor:{rgb:Le?"70AD47":"4472C4"}},font:{color:{rgb:"FFFFFF"},bold:!0,sz:12},alignment:{horizontal:"center",vertical:"center"},border:{top:{style:"thin",color:{rgb:"2F5597"}},bottom:{style:"thin",color:{rgb:"2F5597"}},left:{style:"thin",color:{rgb:"2F5597"}},right:{style:"thin",color:{rgb:"2F5597"}}}}}for(let g=1;g<=r.e.r;++g)for(let ke=r.s.c;ke<=r.e.c;++ke){const we=et.utils.encode_cell({r:g,c:ke});if(!m[we])continue;const Le=w[ke],ue=m[we].v,be={font:{sz:11},border:{top:{style:"thin",color:{rgb:"D3D3D3"}},bottom:{style:"thin",color:{rgb:"D3D3D3"}},left:{style:"thin",color:{rgb:"D3D3D3"}},right:{style:"thin",color:{rgb:"D3D3D3"}}}};g%2===0&&(be.fill={fgColor:{rgb:"F2F2F2"}}),Le==="名称"?be.alignment={horizontal:"left",vertical:"center"}:Le==="标签"?(be.alignment={horizontal:"left",vertical:"center"},ue==="无"&&(be.font={...be.font,color:{rgb:"999999"},italic:!0})):Le==="最后使用时间"?(be.alignment={horizontal:"right",vertical:"center"},ue==="从未使用"&&(be.font={...be.font,color:{rgb:"999999"},italic:!0})):Le&&Le.includes("费用")?(be.alignment={horizontal:"right",vertical:"center"},be.font={...be.font,color:{rgb:"0066CC"},bold:!0}):Le&&(Le.includes("Token")||Le.includes("请求"))&&(be.alignment={horizontal:"right",vertical:"center"}),m[we].s=be}et.utils.book_append_sheet(t,m,"用量统计");const B=new Date,O=B.getFullYear()+String(B.getMonth()+1).padStart(2,"0")+String(B.getDate()).padStart(2,"0")+"_"+String(B.getHours()).padStart(2,"0")+String(B.getMinutes()).padStart(2,"0")+String(B.getSeconds()).padStart(2,"0");let me="";v.type==="preset"?me={today:"今日","7days":"最近7天","30days":"最近30天",all:"全部时间"}[v.preset]||v.preset:me="自定义时间";const fe=`API_Keys_用量统计_${me}_${O}.xlsx`;et.writeFile(t,fe),R(`成功导出 ${s.length} 条API Key用量数据`,"success")}catch{R("导出失败,请重试","error")}};Re([k,Q],()=>{ye.value=1,I.value=[],je()});let as=null;return Re(l,()=>{as&&clearTimeout(as),as=setTimeout(()=>{ye.value=1,Ke(!1)},300)}),Re(y,()=>{ye.value=1,Ke(!1)}),Re(k,()=>{ye.value=1,Ke(!1)}),Re(ae,()=>{ye.value=1,Ke(!1)}),Re([te,H],()=>{Ke(!1)}),Re([ye,ce],([s,t],[m,r])=>{(s!==m||t!==r)&&Ke(!1),je()}),Re(ce,s=>{localStorage.setItem("apiKeysPageSize",s.toString())}),Re(P,()=>{const s=new Set(P.value.map(t=>t.id));I.value=I.value.filter(t=>s.has(t)),je()}),wt(async()=>{ps(),await Promise.all([Ke(),Ys()]),je(),$t()}),Os(()=>{it&&(clearTimeout(it),it=null)}),(s,t)=>{const m=Sa;return o(),n("div",vu,[e("div",ku,[e("div",wu,[t[159]||(t[159]=e("div",null,[e("h3",{class:"mb-1 text-lg font-bold text-gray-900 dark:text-gray-100 sm:mb-2 sm:text-xl"}," API Keys 管理 "),e("p",{class:"text-sm text-gray-600 dark:text-gray-400 sm:text-base"}," 管理和监控您的 API 密钥 ")],-1)),e("div",hu,[e("nav",Au,[e("button",{class:F(["whitespace-nowrap border-b-2 px-1 py-2 text-sm font-medium",se.value==="active"?"border-blue-500 text-blue-600":"border-transparent text-gray-500 hover:border-gray-300 hover:text-gray-700 dark:text-gray-400 dark:hover:border-gray-500 dark:hover:text-gray-300"]),onClick:t[0]||(t[0]=r=>se.value="active")},[t[32]||(t[32]=K(" 活跃 API Keys ",-1)),P.value.length>0?(o(),n("span",Cu,u(P.value.length),1)):$("",!0)],2),e("button",{class:F(["whitespace-nowrap border-b-2 px-1 py-2 text-sm font-medium",se.value==="deleted"?"border-blue-500 text-blue-600":"border-transparent text-gray-500 hover:border-gray-300 hover:text-gray-700 dark:text-gray-400 dark:hover:border-gray-500 dark:hover:text-gray-300"]),onClick:Kt},[t[33]||(t[33]=K(" 已删除 API Keys ",-1)),G.value.length>0?(o(),n("span",$u,u(G.value.length),1)):$("",!0)],2)])]),se.value==="active"?(o(),n("div",Iu,[e("div",Ku,[e("div",Lu,[e("div",Du,[t[34]||(t[34]=e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-blue-500 to-purple-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1)),ne(Ut,{modelValue:v.preset,"onUpdate:modelValue":t[1]||(t[1]=r=>v.preset=r),icon:"fa-calendar-alt","icon-color":"text-blue-500",options:M.value,placeholder:"选择时间范围",onChange:da},null,8,["modelValue","options"])]),v.type==="custom"?(o(),n("div",Tu,[ne(m,{class:"api-key-date-picker custom-date-range-picker",clearable:!0,"default-time":p.value,"disabled-date":$s,"end-placeholder":"结束日期",format:"YYYY-MM-DD HH:mm:ss","model-value":v.customRange,"range-separator":"至",size:"small","start-placeholder":"开始日期",style:{width:"320px",height:"38px"},type:"datetimerange","unlink-panels":!1,"value-format":"YYYY-MM-DD HH:mm:ss","onUpdate:modelValue":ua},null,8,["default-time","model-value"])])):$("",!0),e("div",_u,[t[35]||(t[35]=e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-purple-500 to-pink-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1)),e("div",Su,[ne(Ut,{modelValue:k.value,"onUpdate:modelValue":t[2]||(t[2]=r=>k.value=r),icon:"fa-tags","icon-color":"text-purple-500",options:Ue.value,placeholder:"所有标签"},null,8,["modelValue","options"]),k.value?(o(),n("span",Mu,u(Be.value),1)):$("",!0)])]),e("div",Uu,[t[36]||(t[36]=e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-orange-500 to-amber-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1)),e("div",Ru,[ne(Ut,{modelValue:ae.value,"onUpdate:modelValue":t[3]||(t[3]=r=>ae.value=r),icon:"fa-cube","icon-color":"text-orange-500",multiple:!0,options:Se.value,placeholder:"所有模型"},null,8,["modelValue","options"]),ae.value.length>0?(o(),n("span",Vu,u(ae.value.length),1)):$("",!0)])]),e("div",Pu,[e("div",Eu,[ne(Ut,{modelValue:y.value,"onUpdate:modelValue":t[4]||(t[4]=r=>y.value=r),icon:"fa-filter","icon-color":"text-cyan-500",options:de.value,placeholder:"选择搜索类型"},null,8,["modelValue","options"])]),e("div",Ou,[t[39]||(t[39]=e("div",{class:"pointer-events-none absolute -inset-0.5 rounded-lg bg-gradient-to-r from-cyan-500 to-teal-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1)),e("div",ju,[_(e("input",{"onUpdate:modelValue":t[5]||(t[5]=r=>l.value=r),class:"h-10 w-full rounded-lg border border-gray-200 bg-white px-3 pl-9 text-sm text-gray-700 placeholder-gray-400 shadow-sm transition-all duration-200 hover:border-gray-300 focus:border-cyan-500 focus:outline-none focus:ring-2 focus:ring-cyan-500/20 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-200 dark:placeholder-gray-500 dark:hover:border-gray-500",placeholder:y.value==="bindingAccount"?"搜索所属账号...":Y.value?"搜索名称或所有者...":"搜索名称...",type:"text"},null,8,Gu),[[le,l.value]]),t[38]||(t[38]=e("i",{class:"fas fa-search absolute left-3 text-sm text-cyan-500"},null,-1)),l.value?(o(),n("button",{key:0,class:"absolute right-2 flex h-5 w-5 items-center justify-center rounded-full text-gray-400 hover:bg-gray-100 hover:text-gray-600 dark:hover:bg-gray-700 dark:hover:text-gray-300",onClick:Ta},t[37]||(t[37]=[e("i",{class:"fas fa-times text-xs"},null,-1)]))):$("",!0)])])])]),e("div",zu,[e("button",{class:"group relative flex items-center justify-center gap-2 rounded-lg border border-gray-200 bg-white px-4 py-2 text-sm font-medium text-gray-700 shadow-sm transition-all duration-200 hover:border-gray-300 hover:shadow-md disabled:cursor-not-allowed disabled:opacity-50 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-200 dark:hover:border-gray-500 sm:w-auto",disabled:X.value,onClick:t[6]||(t[6]=r=>Ke())},[t[40]||(t[40]=e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-green-500 to-teal-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1)),e("i",{class:F(["fas relative text-green-500",X.value?"fa-spinner fa-spin":"fa-sync-alt"])},null,2),t[41]||(t[41]=e("span",{class:"relative"},"刷新",-1))],8,qu),e("button",{class:"flex items-center gap-2 rounded-lg border border-gray-200 bg-white px-4 py-2 text-sm font-medium text-gray-700 shadow-sm transition-all duration-200 hover:border-gray-300 hover:bg-gray-50 hover:shadow-md dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700",onClick:f},[e("i",{class:F(W.value?"fas fa-times":"fas fa-check-square")},null,2),e("span",null,u(W.value?"取消选择":"选择"),1)]),e("button",{class:"group relative flex items-center justify-center gap-2 rounded-lg border border-gray-200 bg-white px-4 py-2 text-sm font-medium text-gray-700 shadow-sm transition-all duration-200 hover:border-gray-300 hover:shadow-md dark:border-gray-600 dark:bg-gray-800 dark:text-gray-200 dark:hover:border-gray-500 sm:w-auto",onClick:_a},t[42]||(t[42]=[e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-emerald-500 to-green-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1),e("i",{class:"fas fa-file-excel relative text-emerald-500"},null,-1),e("span",{class:"relative"},"导出数据",-1)])),e("button",{class:"group relative flex items-center justify-center gap-2 rounded-lg border border-gray-200 bg-white px-4 py-2 text-sm font-medium text-gray-700 shadow-sm transition-all duration-200 hover:border-gray-300 hover:shadow-md dark:border-gray-600 dark:bg-gray-800 dark:text-gray-200 dark:hover:border-gray-500 sm:w-auto",onClick:t[7]||(t[7]=r=>Wt.value=!0)},t[43]||(t[43]=[e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-purple-500 to-pink-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1),e("i",{class:"fas fa-tags relative text-purple-500"},null,-1),e("span",{class:"relative"},"管理标签",-1)])),I.value.length>0?(o(),n("button",{key:0,class:"group relative flex items-center justify-center gap-2 rounded-lg border border-blue-200 bg-blue-50 px-4 py-2 text-sm font-medium text-blue-700 shadow-sm transition-all duration-200 hover:border-blue-300 hover:bg-blue-100 hover:shadow-md dark:border-blue-700 dark:bg-blue-900/30 dark:text-blue-300 dark:hover:bg-blue-900/50 sm:w-auto",onClick:t[8]||(t[8]=r=>ya())},[t[44]||(t[44]=e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-blue-500 to-indigo-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1)),t[45]||(t[45]=e("i",{class:"fas fa-edit relative text-blue-600 dark:text-blue-400"},null,-1)),e("span",Fu,"编辑选中 ("+u(I.value.length)+")",1)])):$("",!0),I.value.length>0?(o(),n("button",{key:1,class:"group relative flex items-center justify-center gap-2 rounded-lg border border-red-200 bg-red-50 px-4 py-2 text-sm font-medium text-red-700 shadow-sm transition-all duration-200 hover:border-red-300 hover:bg-red-100 hover:shadow-md dark:border-red-700 dark:bg-red-900/30 dark:text-red-300 dark:hover:bg-red-900/50 sm:w-auto",onClick:t[9]||(t[9]=r=>Ca())},[t[46]||(t[46]=e("div",{class:"absolute -inset-0.5 rounded-lg bg-gradient-to-r from-red-500 to-pink-500 opacity-0 blur transition duration-300 group-hover:opacity-20"},null,-1)),t[47]||(t[47]=e("i",{class:"fas fa-trash relative text-red-600 dark:text-red-400"},null,-1)),e("span",Bu,"删除选中 ("+u(I.value.length)+")",1)])):$("",!0),e("button",{class:"flex w-full items-center justify-center gap-2 rounded-lg bg-gradient-to-r from-blue-500 to-blue-600 px-5 py-2 text-sm font-medium text-white shadow-md transition-all duration-200 hover:from-blue-600 hover:to-blue-700 hover:shadow-lg sm:w-auto",onClick:$e(pa,["stop"])},t[48]||(t[48]=[e("i",{class:"fas fa-plus"},null,-1),e("span",null,"创建新 Key",-1)]))])]),X.value?(o(),n("div",Wu,t[49]||(t[49]=[e("div",{class:"loading-spinner mx-auto mb-4"},null,-1),e("p",{class:"text-gray-500 dark:text-gray-400"},"正在加载 API Keys...",-1)]))):P.value.length===0?(o(),n("div",Nu,t[50]||(t[50]=[e("div",{class:"mx-auto mb-4 flex h-16 w-16 items-center justify-center rounded-full bg-gray-100 dark:bg-gray-700"},[e("i",{class:"fas fa-key text-xl text-gray-400"})],-1),e("p",{class:"text-lg text-gray-500 dark:text-gray-400"},"暂无 API Keys",-1),e("p",{class:"mt-2 text-sm text-gray-400"},"点击上方按钮创建您的第一个 API Key",-1)]))):(o(),n("div",Hu,[e("div",Yu,[e("table",Qu,[e("thead",Ju,[e("tr",null,[L.value?(o(),n("th",Xu,[e("div",Zu,[_(e("input",{"onUpdate:modelValue":t[10]||(t[10]=r=>z.value=r),class:"h-4 w-4 rounded border-gray-300 text-blue-600 focus:ring-blue-500",indeterminate:S.value,type:"checkbox",onChange:$a},null,40,ec),[[Ie,z.value]])])])):$("",!0),e("th",{class:F(["name-column sticky z-20 min-w-[140px] cursor-pointer px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 hover:bg-gray-100 dark:text-gray-300 dark:hover:bg-gray-600",L.value?"left-[50px]":"left-0"]),onClick:t[11]||(t[11]=r=>nt("name"))},[t[51]||(t[51]=K(" 名称 ",-1)),te.value==="name"?(o(),n("i",{key:0,class:F(["fas",H.value==="asc"?"fa-sort-up":"fa-sort-down","ml-1"])},null,2)):(o(),n("i",tc))],2),t[57]||(t[57]=e("th",{class:"min-w-[140px] px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 所属账号 ",-1)),t[58]||(t[58]=e("th",{class:"min-w-[100px] px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 标签 ",-1)),e("th",{class:"min-w-[80px] cursor-pointer px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 hover:bg-gray-100 dark:text-gray-300 dark:hover:bg-gray-600",onClick:t[12]||(t[12]=r=>nt("status"))},[t[52]||(t[52]=K(" 状态 ",-1)),te.value==="status"?(o(),n("i",{key:0,class:F(["fas",H.value==="asc"?"fa-sort-up":"fa-sort-down","ml-1"])},null,2)):(o(),n("i",sc))]),e("th",{class:F(["min-w-[70px] px-3 py-4 text-right text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300",{"cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-600":Lt.value,"cursor-not-allowed opacity-60":!Lt.value}]),title:Zs.value,onClick:t[13]||(t[13]=r=>nt("cost"))},[t[53]||(t[53]=K(" 费用 ",-1)),te.value==="cost"?(o(),n("i",{key:0,class:F(["fas",H.value==="asc"?"fa-sort-up":"fa-sort-down","ml-1"])},null,2)):Lt.value?(o(),n("i",rc)):(o(),n("i",oc))],10,ac),t[59]||(t[59]=e("th",{class:"min-w-[180px] px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 限制 ",-1)),t[60]||(t[60]=e("th",{class:"min-w-[80px] px-3 py-4 text-right text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," Token ",-1)),t[61]||(t[61]=e("th",{class:"min-w-[80px] px-3 py-4 text-right text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 请求数 ",-1)),e("th",{class:"min-w-[100px] cursor-pointer px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 hover:bg-gray-100 dark:text-gray-300 dark:hover:bg-gray-600",onClick:t[14]||(t[14]=r=>nt("lastUsedAt"))},[t[54]||(t[54]=K(" 最后使用 ",-1)),te.value==="lastUsedAt"?(o(),n("i",{key:0,class:F(["fas",H.value==="asc"?"fa-sort-up":"fa-sort-down","ml-1"])},null,2)):(o(),n("i",lc))]),e("th",{class:"min-w-[100px] cursor-pointer px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 hover:bg-gray-100 dark:text-gray-300 dark:hover:bg-gray-600",onClick:t[15]||(t[15]=r=>nt("createdAt"))},[t[55]||(t[55]=K(" 创建时间 ",-1)),te.value==="createdAt"?(o(),n("i",{key:0,class:F(["fas",H.value==="asc"?"fa-sort-up":"fa-sort-down","ml-1"])},null,2)):(o(),n("i",nc))]),e("th",{class:"min-w-[100px] cursor-pointer px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 hover:bg-gray-100 dark:text-gray-300 dark:hover:bg-gray-600",onClick:t[16]||(t[16]=r=>nt("expiresAt"))},[t[56]||(t[56]=K(" 过期时间 ",-1)),te.value==="expiresAt"?(o(),n("i",{key:0,class:F(["fas",H.value==="asc"?"fa-sort-up":"fa-sort-down","ml-1"])},null,2)):(o(),n("i",ic))]),t[62]||(t[62]=e("th",{class:"operations-column sticky right-0 min-w-[120px] px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 操作 ",-1))])]),e("tbody",null,[(o(!0),n(re,null,ge(lt.value,r=>{var w,q,B,O,me,fe;return o(),n(re,{key:r.id},[e("tr",dc,[L.value?(o(),n("td",uc,[e("div",cc,[_(e("input",{"onUpdate:modelValue":t[17]||(t[17]=g=>I.value=g),class:"h-4 w-4 rounded border-gray-300 text-blue-600 focus:ring-blue-500",type:"checkbox",value:r.id,onChange:je},null,40,gc),[[Ie,I.value]])])])):$("",!0),e("td",{class:F(["name-column sticky z-10 px-3 py-3",L.value?"left-[50px]":"left-0"])},[e("div",pc,[e("div",{class:"cursor-pointer truncate text-sm font-semibold text-gray-900 hover:text-blue-600 dark:text-gray-100 dark:hover:text-blue-400",title:"点击复制",onClick:$e(g=>Ae(rs)(r.name),["stop"])},u(r.name),9,mc),Y.value&&r.ownerDisplayName?(o(),n("div",xc,[t[63]||(t[63]=e("i",{class:"fas fa-user mr-1"},null,-1)),K(" "+u(r.ownerDisplayName),1)])):$("",!0)])],2),e("td",yc,[e("div",fc,[oe.value&&ta(r)?(o(),n("div",bc,t[64]||(t[64]=[e("i",{class:"fas fa-spinner fa-spin mr-1"},null,-1),K(" 加载中... ",-1)]))):(o(),n(re,{key:1},[r.claudeAccountId||r.claudeConsoleAccountId?(o(),n("div",vc,[t[65]||(t[65]=e("span",{class:"inline-flex items-center rounded bg-indigo-100 px-1.5 py-0.5 text-indigo-700 dark:bg-indigo-900/30 dark:text-indigo-300"},[e("i",{class:"fas fa-brain mr-1 text-[10px]"}),K(" Claude ")],-1)),e("span",kc,u(ms(r)),1)])):$("",!0),r.geminiAccountId?(o(),n("div",wc,[t[66]||(t[66]=e("span",{class:"inline-flex items-center rounded bg-yellow-100 px-1.5 py-0.5 text-yellow-700 dark:bg-yellow-900/30 dark:text-yellow-300"},[e("i",{class:"fas fa-robot mr-1 text-[10px]"}),K(" Gemini ")],-1)),e("span",hc,u(xs(r)),1)])):$("",!0),r.openaiAccountId?(o(),n("div",Ac,[t[67]||(t[67]=e("span",{class:"inline-flex items-center rounded bg-gray-100 px-1.5 py-0.5 text-gray-700 dark:bg-gray-700 dark:text-gray-300"},[e("i",{class:"fa-openai mr-1 text-[10px]"}),K(" OpenAI ")],-1)),e("span",Cc,u(ys(r)),1)])):$("",!0),r.bedrockAccountId?(o(),n("div",$c,[t[68]||(t[68]=e("span",{class:"inline-flex items-center rounded bg-orange-100 px-1.5 py-0.5 text-orange-700 dark:bg-orange-900/30 dark:text-orange-300"},[e("i",{class:"fas fa-cloud mr-1 text-[10px]"}),K(" Bedrock ")],-1)),e("span",Ic,u(fs(r)),1)])):$("",!0),r.droidAccountId?(o(),n("div",Kc,[t[69]||(t[69]=e("span",{class:"inline-flex items-center rounded bg-cyan-100 px-1.5 py-0.5 text-cyan-700 dark:bg-cyan-900/30 dark:text-cyan-300"},[e("i",{class:"fas fa-robot mr-1 text-[10px]"}),K(" Droid ")],-1)),e("span",Lc,u(bs(r)),1)])):$("",!0),!r.claudeAccountId&&!r.claudeConsoleAccountId&&!r.geminiAccountId&&!r.openaiAccountId&&!r.bedrockAccountId&&!r.droidAccountId?(o(),n("div",Dc,t[70]||(t[70]=[e("i",{class:"fas fa-share-alt mr-1"},null,-1),K(" 共享池 ",-1)]))):$("",!0)],64))])]),e("td",Tc,[e("div",_c,[(o(!0),n(re,null,ge(r.tags||[],g=>(o(),n("span",{key:g,class:"inline-flex items-center rounded-full bg-blue-100 px-2 py-0.5 text-xs text-blue-800 dark:bg-blue-900/30 dark:text-blue-300"},u(g),1))),128)),!r.tags||r.tags.length===0?(o(),n("span",Sc,"无标签")):$("",!0)])]),e("td",Mc,[e("span",{class:F(["inline-flex items-center rounded-full px-3 py-1 text-xs font-semibold",r.isActive?"bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-300":"bg-red-100 text-red-800 dark:bg-red-900/30 dark:text-red-300"])},[e("div",{class:F(["mr-2 h-2 w-2 rounded-full",r.isActive?"bg-green-500":"bg-red-500"])},null,2),K(" "+u(r.isActive?"活跃":"禁用"),1)],2)]),e("td",Uc,[Ze(r.id)?(o(),n("div",Rc,t[71]||(t[71]=[e("div",{class:"h-5 w-14 animate-pulse rounded bg-gradient-to-r from-gray-200 via-gray-300 to-gray-200 dark:from-gray-700 dark:via-gray-600 dark:to-gray-700"},null,-1)]))):ve(r.id)?(o(),n("span",Vc,u(ve(r.id).formattedCost||"$0.00"),1)):(o(),n("span",Pc,"-"))]),e("td",Ec,[e("div",Oc,[Ze(r.id)&&(r.dailyCostLimit>0||r.totalCostLimit>0||r.rateLimitWindow>0&&r.rateLimitCost>0)?(o(),n("div",jc,t[72]||(t[72]=[e("div",{class:"h-4 w-full animate-pulse rounded bg-gradient-to-r from-gray-200 via-gray-300 to-gray-200 dark:from-gray-700 dark:via-gray-600 dark:to-gray-700"},null,-1),e("div",{class:"h-3 w-2/3 animate-pulse rounded bg-gradient-to-r from-gray-200 via-gray-300 to-gray-200 dark:from-gray-700 dark:via-gray-600 dark:to-gray-700"},null,-1)]))):(o(),n(re,{key:1},[r.dailyCostLimit>0?(o(),he(Fe,{key:0,current:((w=ve(r.id))==null?void 0:w.dailyCost)||0,label:"每日限制",limit:r.dailyCostLimit,type:"daily",variant:"compact"},null,8,["current","limit"])):r.totalCostLimit>0?(o(),he(Fe,{key:1,current:((q=ve(r.id))==null?void 0:q.allTimeCost)||0,label:"总费用限制",limit:r.totalCostLimit,type:"total",variant:"compact"},null,8,["current","limit"])):r.rateLimitWindow>0&&r.rateLimitCost>0&&(!r.dailyCostLimit||r.dailyCostLimit===0)&&(!r.totalCostLimit||r.totalCostLimit===0)?(o(),n("div",Gc,[ne(Fe,{current:((B=ve(r.id))==null?void 0:B.currentWindowCost)||0,label:"窗口费用",limit:r.rateLimitCost,type:"window",variant:"compact"},null,8,["current","limit"]),e("div",zc,[e("div",qc,[t[73]||(t[73]=e("i",{class:"fas fa-clock text-[10px]"},null,-1)),e("span",Fc,u(r.rateLimitWindow)+"分钟窗口",1)]),e("span",{class:F(["font-bold",(((O=ve(r.id))==null?void 0:O.windowRemainingSeconds)||0)>0?"text-sky-700 dark:text-sky-300":"text-gray-400 dark:text-gray-500"])},u((((me=ve(r.id))==null?void 0:me.windowRemainingSeconds)||0)>0?Ks(((fe=ve(r.id))==null?void 0:fe.windowRemainingSeconds)||0):"未激活"),3)])])):(o(),n("div",Bc,t[74]||(t[74]=[e("i",{class:"fas fa-infinity text-base"},null,-1),e("span",{class:"text-xs font-medium"},"无限制",-1)])))],64))])]),e("td",Wc,[Ze(r.id)?(o(),n("div",Nc,t[75]||(t[75]=[e("div",{class:"h-5 w-16 animate-pulse rounded bg-gradient-to-r from-gray-200 via-gray-300 to-gray-200 dark:from-gray-700 dark:via-gray-600 dark:to-gray-700"},null,-1)]))):ve(r.id)?(o(),n("div",Hc,[e("span",Yc,u(Me(ve(r.id).tokens||0)),1)])):(o(),n("span",Qc,"-"))]),e("td",Jc,[Ze(r.id)?(o(),n("div",Xc,t[76]||(t[76]=[e("div",{class:"h-5 w-12 animate-pulse rounded bg-gradient-to-r from-gray-200 via-gray-300 to-gray-200 dark:from-gray-700 dark:via-gray-600 dark:to-gray-700"},null,-1)]))):ve(r.id)?(o(),n("div",Zc,[e("span",eg,u(Ae(vt)(ve(r.id).requests||0)),1),t[77]||(t[77]=e("span",{class:"text-xs text-gray-500"},"次",-1))])):(o(),n("span",tg,"-"))]),e("td",sg,[e("div",ag,[r.lastUsedAt?(o(),n("span",{key:0,class:"cursor-help",style:{"font-size":"13px"},title:new Date(r.lastUsedAt).toLocaleString("zh-CN")},u(Jt(r.lastUsedAt)),9,rg)):(o(),n("span",og,"从未使用")),r.lastUsedAt&&It(r.id)?(o(),n("span",lg,t[78]||(t[78]=[e("i",{class:"fas fa-spinner fa-spin mr-1"},null,-1),K(" 加载中... ",-1)]))):Zt(r)?(o(),n("span",{key:3,class:"mt-1 text-xs text-gray-500 dark:text-gray-400",title:yt(r)},[K(u(ts(r))+" ",1),ss(r)?$("",!0):(o(),n("span",ig," ("+u(St(r))+") ",1))],8,ng)):(o(),n("span",dg," 暂无使用账号 "))])]),e("td",ug,u(new Date(r.createdAt).toLocaleDateString()),1),e("td",cg,[e("div",gg,[r.expirationMode==="activation"&&!r.isActivated?(o(),n("span",pg,[t[79]||(t[79]=e("i",{class:"fas fa-pause-circle mr-1 text-xs"},null,-1)),K(" 未激活 ( "+u(r.activationDays||(r.activationUnit==="hours"?24:30))+u(r.activationUnit==="hours"?"小时":"天")+") ",1)])):r.expiresAt?(o(),n("span",mg,[pt(r.expiresAt)?(o(),n("span",{key:0,class:"inline-flex cursor-pointer items-center text-red-600 hover:underline",style:{"font-size":"13px"},onClick:$e(g=>xt(r),["stop"])},t[80]||(t[80]=[e("i",{class:"fas fa-exclamation-circle mr-1 text-xs"},null,-1),K(" 已过期 ",-1)]),8,xg)):mt(r.expiresAt)?(o(),n("span",{key:1,class:"inline-flex cursor-pointer items-center text-orange-600 hover:underline",style:{"font-size":"13px"},onClick:$e(g=>xt(r),["stop"])},[t[81]||(t[81]=e("i",{class:"fas fa-clock mr-1 text-xs"},null,-1)),K(" "+u(vs(r.expiresAt)),1)],8,yg)):(o(),n("span",{key:2,class:"cursor-pointer text-gray-600 hover:underline dark:text-gray-400",style:{"font-size":"13px"},onClick:$e(g=>xt(r),["stop"])},u(vs(r.expiresAt)),9,fg))])):(o(),n("span",{key:2,class:"inline-flex cursor-pointer items-center text-gray-400 hover:underline dark:text-gray-500",style:{"font-size":"13px"},onClick:$e(g=>xt(r),["stop"])},t[82]||(t[82]=[e("i",{class:"fas fa-infinity mr-1 text-xs"},null,-1),K(" 永不过期 ",-1)]),8,bg))])]),e("td",vg,[e("div",kg,[e("button",{class:"rounded px-2 py-1 text-xs font-medium text-purple-600 transition-colors hover:bg-purple-50 hover:text-purple-900 dark:hover:bg-purple-900/20",title:"查看详细统计",onClick:g=>Tt(r)},t[83]||(t[83]=[e("i",{class:"fas fa-chart-line"},null,-1),e("span",{class:"ml-1"},"详情",-1)]),8,wg),r&&r.id?(o(),n("button",{key:0,class:"rounded px-2 py-1 text-xs font-medium text-indigo-600 transition-colors hover:bg-indigo-50 hover:text-indigo-900 dark:hover:bg-indigo-900/20",title:"模型使用分布",onClick:g=>ks(r.id)},[e("i",{class:F(["fas",C.value[r.id]?"fa-chevron-up":"fa-chevron-down"])},null,2),t[84]||(t[84]=e("span",{class:"ml-1"},"模型",-1))],8,hg)):$("",!0),e("button",{class:"rounded px-2 py-1 text-xs font-medium text-blue-600 transition-colors hover:bg-blue-50 hover:text-blue-900 dark:hover:bg-blue-900/20",title:"编辑",onClick:g=>Nt(r)},t[85]||(t[85]=[e("i",{class:"fas fa-edit"},null,-1),e("span",{class:"ml-1"},"编辑",-1)]),8,Ag),r.expiresAt&&(pt(r.expiresAt)||mt(r.expiresAt))?(o(),n("button",{key:1,class:"rounded px-2 py-1 text-xs font-medium text-green-600 transition-colors hover:bg-green-50 hover:text-green-900 dark:hover:bg-green-900/20",title:"续期",onClick:g=>Ht(r)},t[86]||(t[86]=[e("i",{class:"fas fa-clock"},null,-1),e("span",{class:"ml-1"},"续期",-1)]),8,Cg)):$("",!0),e("button",{class:F([r.isActive?"text-orange-600 hover:bg-orange-50 hover:text-orange-900 dark:hover:bg-orange-900/20":"text-green-600 hover:bg-green-50 hover:text-green-900 dark:hover:bg-green-900/20","rounded px-2 py-1 text-xs font-medium transition-colors"]),title:r.isActive?"禁用":"激活",onClick:g=>Yt(r)},[e("i",{class:F(["fas",r.isActive?"fa-ban":"fa-check-circle"])},null,2),e("span",Ig,u(r.isActive?"禁用":"激活"),1)],10,$g),e("button",{class:"rounded px-2 py-1 text-xs font-medium text-red-600 transition-colors hover:bg-red-50 hover:text-red-900 dark:hover:bg-red-900/20",title:"删除",onClick:g=>Qt(r.id)},t[87]||(t[87]=[e("i",{class:"fas fa-trash"},null,-1),e("span",{class:"ml-1"},"删除",-1)]),8,Kg)]),e("div",Lg,[e("button",{class:"rounded px-2 py-1 text-xs font-medium text-purple-600 transition-colors hover:bg-purple-50 hover:text-purple-900 dark:hover:bg-purple-900/20",title:"查看详细统计",onClick:g=>Tt(r)},t[88]||(t[88]=[e("i",{class:"fas fa-chart-line"},null,-1)]),8,Dg),r&&r.id?(o(),n("button",{key:0,class:"rounded px-2 py-1 text-xs font-medium text-indigo-600 transition-colors hover:bg-indigo-50 hover:text-indigo-900 dark:hover:bg-indigo-900/20",title:"模型使用分布",onClick:g=>ks(r.id)},[e("i",{class:F(["fas",C.value[r.id]?"fa-chevron-up":"fa-chevron-down"])},null,2)],8,Tg)):$("",!0),ne(nr,{actions:ka(r)},null,8,["actions"])])])]),r&&r.id&&C.value[r.id]?(o(),n("tr",_g,[e("td",Sg,[x.value[r.id]?$("",!0):(o(),n("div",Mg,t[89]||(t[89]=[e("div",{class:"loading-spinner mx-auto"},null,-1),e("p",{class:"mt-2 text-sm text-gray-500 dark:text-gray-400"}," 加载模型统计... ",-1)]))),e("div",Ug,[e("div",Rg,[t[90]||(t[90]=e("h5",{class:"flex items-center text-sm font-semibold text-gray-700 dark:text-gray-300"},[e("i",{class:"fas fa-chart-pie mr-2 text-indigo-500"}),K(" 模型使用分布 ")],-1)),e("div",Vg,[x.value[r.id]&&x.value[r.id].length>0?(o(),n("span",Pg,u(x.value[r.id].length)+" 个模型 ",1)):$("",!0),e("div",Eg,[e("div",Og,[(o(!0),n(re,null,ge(He(r.id).presetOptions,g=>(o(),n("button",{key:g.value,class:F(["rounded px-2 py-1 text-xs font-medium transition-colors",He(r.id).preset===g.value&&He(r.id).type==="preset"?"bg-white text-blue-600 shadow-sm dark:bg-gray-800":"text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-200"]),onClick:ke=>Cs(g.value,r.id)},u(g.label),11,jg))),128))]),ne(m,{class:"api-key-date-picker",clearable:!0,"default-time":p.value,"disabled-date":$s,"end-placeholder":"结束日期",format:"YYYY-MM-DD HH:mm:ss","model-value":He(r.id).customRange,"range-separator":"至",size:"small","start-placeholder":"开始日期",style:{width:"280px"},type:"datetimerange","unlink-panels":!1,"value-format":"YYYY-MM-DD HH:mm:ss","onUpdate:modelValue":g=>ca(r.id,g)},null,8,["default-time","model-value","onUpdate:modelValue"])])])]),x.value[r.id]&&x.value[r.id].length===0?(o(),n("div",Gg,[e("div",zg,[t[92]||(t[92]=e("i",{class:"fas fa-chart-line text-lg text-gray-400"},null,-1)),t[93]||(t[93]=e("p",{class:"text-sm text-gray-500 dark:text-gray-400"}," 暂无模型使用数据 ",-1)),e("button",{class:"ml-2 flex items-center gap-1 text-sm text-blue-500 transition-colors hover:text-blue-700",title:"重置筛选条件并刷新",onClick:g=>ga(r.id)},t[91]||(t[91]=[e("i",{class:"fas fa-sync-alt text-xs"},null,-1),e("span",{class:"text-xs"},"刷新",-1)]),8,qg)]),t[94]||(t[94]=e("p",{class:"text-xs text-gray-400"}," 尝试调整时间范围或点击刷新重新加载数据 ",-1))])):x.value[r.id]&&x.value[r.id].length>0?(o(),n("div",Fg,[(o(!0),n(re,null,ge(x.value[r.id],g=>(o(),n("div",{key:g.model,class:"rounded-xl border border-gray-200 bg-gradient-to-br from-white to-gray-50 p-4 transition-all duration-200 hover:border-indigo-300 hover:shadow-lg dark:border-gray-600 dark:from-gray-800 dark:to-gray-700 dark:hover:border-indigo-500"},[e("div",Bg,[e("div",Wg,[e("span",Ng,u(g.model),1),e("span",Hg,u(g.requests)+" 次请求",1)])]),e("div",Yg,[e("div",Qg,[t[95]||(t[95]=e("span",{class:"flex items-center text-gray-600 dark:text-gray-400"},[e("i",{class:"fas fa-coins mr-1 text-xs text-yellow-500"}),K(" 总Token: ")],-1)),e("span",Jg,u(Me(g.allTokens)),1)]),e("div",Xg,[t[96]||(t[96]=e("span",{class:"flex items-center text-gray-600 dark:text-gray-400"},[e("i",{class:"fas fa-dollar-sign mr-1 text-xs text-green-500"}),K(" 费用: ")],-1)),e("span",Zg,u(sa(g)),1)]),e("div",ep,[e("div",tp,[t[97]||(t[97]=e("span",{class:"flex items-center"},[e("i",{class:"fas fa-arrow-down mr-1 text-green-500"}),K(" 输入: ")],-1)),e("span",sp,u(Me(g.inputTokens)),1)]),e("div",ap,[t[98]||(t[98]=e("span",{class:"flex items-center"},[e("i",{class:"fas fa-arrow-up mr-1 text-blue-500"}),K(" 输出: ")],-1)),e("span",rp,u(Me(g.outputTokens)),1)]),g.cacheCreateTokens>0?(o(),n("div",op,[t[99]||(t[99]=e("span",{class:"flex items-center"},[e("i",{class:"fas fa-save mr-1"}),K(" 缓存创建: ")],-1)),e("span",lp,u(Me(g.cacheCreateTokens)),1)])):$("",!0),g.cacheReadTokens>0?(o(),n("div",np,[t[100]||(t[100]=e("span",{class:"flex items-center"},[e("i",{class:"fas fa-download mr-1"}),K(" 缓存读取: ")],-1)),e("span",ip,u(Me(g.cacheReadTokens)),1)])):$("",!0)])]),e("div",dp,[e("div",{class:"h-2 rounded-full bg-gradient-to-r from-indigo-500 to-purple-600 transition-all duration-500",style:Rt({width:ws(g.allTokens,x.value[r.id])+"%"})},null,4)]),e("div",up,[e("span",cp,u(ws(g.allTokens,x.value[r.id]))+"% ",1)])]))),128))])):$("",!0),x.value[r.id]&&x.value[r.id].length>0?(o(),n("div",gp,[e("div",pp,[t[103]||(t[103]=e("span",{class:"flex items-center font-semibold text-gray-700 dark:text-gray-300"},[e("i",{class:"fas fa-calculator mr-2 text-indigo-500"}),K(" 总计统计 ")],-1)),e("div",mp,[e("span",xp,[t[101]||(t[101]=K(" 总请求: ",-1)),e("span",yp,u(x.value[r.id].reduce((g,ke)=>g+ke.requests,0)),1)]),e("span",fp,[t[102]||(t[102]=K(" 总Token: ",-1)),e("span",bp,u(Me(x.value[r.id].reduce((g,ke)=>g+ke.allTokens,0))),1)])])])])):$("",!0)])])])):$("",!0)],64)}),128))])])])])),!X.value&&Ct.value.length>0?(o(),n("div",vp,[(o(!0),n(re,null,ge(lt.value,r=>{var w,q,B,O,me,fe;return o(),n("div",{key:r.id,class:"card p-4 transition-shadow hover:shadow-lg"},[e("div",kp,[e("div",wp,[L.value?_((o(),n("input",{key:0,"onUpdate:modelValue":t[18]||(t[18]=g=>I.value=g),class:"mt-1 h-4 w-4 rounded border-gray-300 text-blue-600 focus:ring-blue-500",type:"checkbox",value:r.id,onChange:je},null,40,hp)),[[Ie,I.value]]):$("",!0),e("div",null,[e("h4",{class:"cursor-pointer text-sm font-semibold text-gray-900 hover:text-blue-600 dark:text-gray-100 dark:hover:text-blue-400",title:"点击复制",onClick:$e(g=>Ae(rs)(r.name),["stop"])},u(r.name),9,Ap),e("p",Cp,u(r.id),1)])]),e("span",{class:F(["inline-flex items-center rounded-full px-2 py-1 text-xs font-semibold",r.isActive?"bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-300":"bg-red-100 text-red-800 dark:bg-red-900/30 dark:text-red-300"])},[e("div",{class:F(["mr-1.5 h-1.5 w-1.5 rounded-full",r.isActive?"bg-green-500":"bg-red-500"])},null,2),K(" "+u(r.isActive?"活跃":"已停用"),1)],2)]),e("div",$p,[r.claudeAccountId||r.claudeConsoleAccountId?(o(),n("div",Ip,[t[104]||(t[104]=e("span",{class:"inline-flex items-center rounded bg-indigo-100 px-2 py-0.5 text-indigo-700 dark:bg-indigo-900/30 dark:text-indigo-300"},[e("i",{class:"fas fa-brain mr-1"}),K(" Claude ")],-1)),e("span",Kp,u(ms(r)),1)])):$("",!0),r.geminiAccountId?(o(),n("div",Lp,[t[105]||(t[105]=e("span",{class:"inline-flex items-center rounded bg-yellow-100 px-2 py-0.5 text-yellow-700 dark:bg-yellow-900/30 dark:text-yellow-300"},[e("i",{class:"fas fa-robot mr-1"}),K(" Gemini ")],-1)),e("span",Dp,u(xs(r)),1)])):$("",!0),r.openaiAccountId?(o(),n("div",Tp,[t[106]||(t[106]=e("span",{class:"inline-flex items-center rounded bg-gray-100 px-2 py-0.5 text-gray-700 dark:bg-gray-700 dark:text-gray-300"},[e("i",{class:"fa-openai mr-1"}),K(" OpenAI ")],-1)),e("span",_p,u(ys(r)),1)])):$("",!0),r.bedrockAccountId?(o(),n("div",Sp,[t[107]||(t[107]=e("span",{class:"inline-flex items-center rounded bg-orange-100 px-2 py-0.5 text-orange-700 dark:bg-orange-900/30 dark:text-orange-300"},[e("i",{class:"fas fa-cloud mr-1"}),K(" Bedrock ")],-1)),e("span",Mp,u(fs(r)),1)])):$("",!0),r.droidAccountId?(o(),n("div",Up,[t[108]||(t[108]=e("span",{class:"inline-flex items-center rounded bg-cyan-100 px-2 py-0.5 text-cyan-700 dark:bg-cyan-900/30 dark:text-cyan-300"},[e("i",{class:"fas fa-robot mr-1"}),K(" Droid ")],-1)),e("span",Rp,u(bs(r)),1)])):$("",!0),!r.claudeAccountId&&!r.claudeConsoleAccountId&&!r.geminiAccountId&&!r.openaiAccountId&&!r.bedrockAccountId&&!r.droidAccountId?(o(),n("div",Vp,t[109]||(t[109]=[e("i",{class:"fas fa-share-alt mr-1"},null,-1),K(" 使用共享池 ",-1)]))):$("",!0),Y.value&&r.ownerDisplayName?(o(),n("div",Pp,[t[110]||(t[110]=e("i",{class:"fas fa-user mr-1"},null,-1)),K(" "+u(r.ownerDisplayName),1)])):$("",!0)]),e("div",Ep,[e("div",Op,[e("div",jp,[e("span",Gp,u(v.type==="custom"?"累计统计":"今日使用"),1),e("button",{class:"text-xs text-blue-600 hover:text-blue-800",onClick:g=>Tt(r)},t[111]||(t[111]=[e("i",{class:"fas fa-chart-line mr-1"},null,-1),K("详情 ",-1)]),8,zp)]),e("div",qp,[e("div",null,[Ze(r.id)?(o(),n("div",Fp)):ve(r.id)?(o(),n("p",Bp,u(Ae(vt)(ve(r.id).requests||0))+" 次 ",1)):(o(),n("p",Wp,"-")),t[112]||(t[112]=e("p",{class:"text-xs text-gray-500 dark:text-gray-400"},"请求",-1))]),e("div",null,[Ze(r.id)?(o(),n("div",Np)):ve(r.id)?(o(),n("p",Hp,u(ve(r.id).formattedCost||"$0.00"),1)):(o(),n("p",Yp,"-")),t[113]||(t[113]=e("p",{class:"text-xs text-gray-500 dark:text-gray-400"},"费用",-1))])]),e("div",Qp,[e("div",Jp,[t[114]||(t[114]=e("span",null,"最后使用",-1)),e("span",Xp,u(r.lastUsedAt?Jt(r.lastUsedAt):"从未使用"),1)]),e("div",Zp,[t[116]||(t[116]=e("span",null,"账号",-1)),r.lastUsedAt&&It(r.id)?(o(),n("span",em,t[115]||(t[115]=[e("i",{class:"fas fa-spinner fa-spin mr-1"},null,-1),K(" 加载中... ",-1)]))):Zt(r)?(o(),n("span",{key:1,class:"truncate text-gray-500 dark:text-gray-400",style:{"max-width":"180px"},title:yt(r)},[K(u(ts(r))+" ",1),ss(r)?$("",!0):(o(),n("span",sm," ("+u(St(r))+") ",1))],8,tm)):(o(),n("span",am,"暂无使用账号"))])])]),e("div",rm,[Ze(r.id)&&(r.dailyCostLimit>0||r.totalCostLimit>0||r.rateLimitWindow>0&&r.rateLimitCost>0)?(o(),n("div",om,t[117]||(t[117]=[e("div",{class:"h-4 w-full animate-pulse rounded bg-gradient-to-r from-gray-200 via-gray-300 to-gray-200 dark:from-gray-700 dark:via-gray-600 dark:to-gray-700"},null,-1),e("div",{class:"h-3 w-2/3 animate-pulse rounded bg-gradient-to-r from-gray-200 via-gray-300 to-gray-200 dark:from-gray-700 dark:via-gray-600 dark:to-gray-700"},null,-1)]))):(o(),n(re,{key:1},[r.dailyCostLimit>0?(o(),he(Fe,{key:0,current:((w=ve(r.id))==null?void 0:w.dailyCost)||0,label:"每日限制",limit:r.dailyCostLimit,type:"daily",variant:"compact"},null,8,["current","limit"])):r.totalCostLimit>0?(o(),he(Fe,{key:1,current:((q=ve(r.id))==null?void 0:q.allTimeCost)||0,label:"总费用限制",limit:r.totalCostLimit,type:"total",variant:"compact"},null,8,["current","limit"])):r.rateLimitWindow>0&&r.rateLimitCost>0&&(!r.dailyCostLimit||r.dailyCostLimit===0)&&(!r.totalCostLimit||r.totalCostLimit===0)?(o(),n("div",lm,[ne(Fe,{current:((B=ve(r.id))==null?void 0:B.currentWindowCost)||0,label:"窗口费用",limit:r.rateLimitCost,type:"window",variant:"compact"},null,8,["current","limit"]),e("div",nm,[e("div",im,[t[118]||(t[118]=e("i",{class:"fas fa-clock text-xs"},null,-1)),e("span",dm,u(r.rateLimitWindow)+"分钟窗口",1)]),e("span",{class:F(["font-bold",(((O=ve(r.id))==null?void 0:O.windowRemainingSeconds)||0)>0?"text-sky-700 dark:text-sky-300":"text-gray-400 dark:text-gray-500"])},u((((me=ve(r.id))==null?void 0:me.windowRemainingSeconds)||0)>0?Ks(((fe=ve(r.id))==null?void 0:fe.windowRemainingSeconds)||0):"未激活"),3)])])):(o(),n("div",um,t[119]||(t[119]=[e("i",{class:"fas fa-infinity text-base"},null,-1),e("span",{class:"text-xs font-medium"},"无限制",-1)])))],64))])]),e("div",cm,[e("div",gm,[t[120]||(t[120]=e("span",null,"创建时间",-1)),e("span",null,u(Ae(Pe)(r.createdAt)),1)]),e("div",pm,[t[122]||(t[122]=e("span",null,"过期时间",-1)),e("div",mm,[e("span",{class:F(mt(r.expiresAt)?"font-semibold text-orange-600":"")},u(r.expiresAt?Ae(Pe)(r.expiresAt):"永不过期"),3),e("button",{class:"inline-flex h-5 w-5 items-center justify-center rounded text-gray-300 transition-all duration-200 hover:bg-blue-50 hover:text-blue-500 dark:hover:bg-blue-900/20",title:"编辑过期时间",onClick:$e(g=>xt(r),["stop"])},t[121]||(t[121]=[e("svg",{class:"h-3 w-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M15.232 5.232l3.536 3.536m-2.036-5.036a2.5 2.5 0 113.536 3.536L6.5 21.036H3v-3.572L16.732 3.732z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1)]),8,xm)])])]),r.tags&&r.tags.length>0?(o(),n("div",ym,[(o(!0),n(re,null,ge(r.tags,g=>(o(),n("span",{key:g,class:"inline-flex items-center rounded-full bg-blue-100 px-2 py-0.5 text-xs text-blue-800 dark:bg-blue-900/30 dark:text-blue-300"},u(g),1))),128))])):$("",!0),e("div",fm,[e("button",{class:"flex flex-1 items-center justify-center gap-1 rounded-lg bg-blue-50 px-3 py-1.5 text-xs text-blue-600 transition-colors hover:bg-blue-100 dark:bg-blue-900/30 dark:hover:bg-blue-900/50",onClick:g=>Tt(r)},t[123]||(t[123]=[e("i",{class:"fas fa-chart-line"},null,-1),K(" 查看详情 ",-1)]),8,bm),e("button",{class:"flex-1 rounded-lg bg-gray-50 px-3 py-1.5 text-xs text-gray-600 transition-colors hover:bg-gray-100 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",onClick:g=>Nt(r)},t[124]||(t[124]=[e("i",{class:"fas fa-edit mr-1"},null,-1),K(" 编辑 ",-1)]),8,vm),r.expiresAt&&(pt(r.expiresAt)||mt(r.expiresAt))?(o(),n("button",{key:0,class:"flex-1 rounded-lg bg-orange-50 px-3 py-1.5 text-xs text-orange-600 transition-colors hover:bg-orange-100 dark:bg-orange-900/30 dark:hover:bg-orange-900/50",onClick:g=>Ht(r)},t[125]||(t[125]=[e("i",{class:"fas fa-clock mr-1"},null,-1),K(" 续期 ",-1)]),8,km)):$("",!0),e("button",{class:F([r.isActive?"bg-orange-50 text-orange-600 hover:bg-orange-100 dark:bg-orange-900/30 dark:hover:bg-orange-900/50":"bg-green-50 text-green-600 hover:bg-green-100 dark:bg-green-900/30 dark:hover:bg-green-900/50","rounded-lg px-3 py-1.5 text-xs transition-colors"]),onClick:g=>Yt(r)},[e("i",{class:F(["fas",r.isActive?"fa-ban":"fa-check-circle","mr-1"])},null,2),K(" "+u(r.isActive?"禁用":"激活"),1)],10,wm),e("button",{class:"rounded-lg bg-red-50 px-3 py-1.5 text-xs text-red-600 transition-colors hover:bg-red-100 dark:bg-red-900/30 dark:hover:bg-red-900/50",onClick:g=>Qt(r.id)},t[126]||(t[126]=[e("i",{class:"fas fa-trash"},null,-1)]),8,hm)])])}),128))])):$("",!0),Ct.value.length>0?(o(),n("div",Am,[e("div",Cm,[e("span",$m," 共 "+u(Ct.value.length)+" 条记录 ",1),e("div",Im,[t[127]||(t[127]=e("span",{class:"text-xs text-gray-600 dark:text-gray-400 sm:text-sm"},"每页显示",-1)),_(e("select",{"onUpdate:modelValue":t[19]||(t[19]=r=>ce.value=r),class:"rounded-md border border-gray-200 bg-white px-2 py-1 text-xs text-gray-700 transition-colors hover:border-gray-300 focus:border-transparent focus:outline-none focus:ring-2 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:border-gray-500 sm:text-sm"},[(o(),n(re,null,ge(Ve,r=>e("option",{key:r,value:r},u(r),9,Km)),64))],512),[[kt,ce.value]]),t[128]||(t[128]=e("span",{class:"text-xs text-gray-600 dark:text-gray-400 sm:text-sm"},"条",-1))])]),e("div",Lm,[e("button",{class:"rounded-md border border-gray-300 bg-white px-3 py-1.5 text-xs font-medium text-gray-700 hover:bg-gray-50 disabled:cursor-not-allowed disabled:opacity-50 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700 sm:py-1 sm:text-sm",disabled:ye.value===1,onClick:t[20]||(t[20]=r=>ye.value--)},t[129]||(t[129]=[e("i",{class:"fas fa-chevron-left"},null,-1)]),8,Dm),e("div",Tm,[cs.value?(o(),n("button",{key:0,class:"hidden rounded-md border border-gray-300 bg-white px-3 py-1 text-sm font-medium text-gray-700 hover:bg-gray-50 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700 sm:block",onClick:t[21]||(t[21]=r=>ye.value=1)}," 1 ")):$("",!0),Ns.value?(o(),n("span",_m,"...")):$("",!0),(o(!0),n(re,null,ge(ct.value,r=>(o(),n("button",{key:r,class:F(["rounded-md px-2 py-1 text-xs font-medium sm:px-3 sm:text-sm",r===ye.value?"bg-blue-600 text-white":"border border-gray-300 bg-white text-gray-700 hover:bg-gray-50 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700"]),onClick:w=>ye.value=r},u(r),11,Sm))),128)),Hs.value?(o(),n("span",Mm,"...")):$("",!0),gs.value?(o(),n("button",{key:3,class:"hidden rounded-md border border-gray-300 bg-white px-3 py-1 text-sm font-medium text-gray-700 hover:bg-gray-50 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700 sm:block",onClick:t[22]||(t[22]=r=>ye.value=Xe.value)},u(Xe.value),1)):$("",!0)]),e("button",{class:"rounded-md border border-gray-300 bg-white px-3 py-1.5 text-xs font-medium text-gray-700 hover:bg-gray-50 disabled:cursor-not-allowed disabled:opacity-50 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700 sm:py-1 sm:text-sm",disabled:ye.value===Xe.value||Xe.value===0,onClick:t[23]||(t[23]=r=>ye.value++)},t[130]||(t[130]=[e("i",{class:"fas fa-chevron-right"},null,-1)]),8,Um)])])):$("",!0)])):se.value==="deleted"?(o(),n("div",Rm,[ee.value?(o(),n("div",Vm,t[131]||(t[131]=[e("div",{class:"loading-spinner mx-auto mb-4"},null,-1),e("p",{class:"text-gray-500 dark:text-gray-400"},"正在加载已删除的 API Keys...",-1)]))):G.value.length===0?(o(),n("div",Pm,t[132]||(t[132]=[e("div",{class:"mx-auto mb-4 flex h-16 w-16 items-center justify-center rounded-full bg-gray-100 dark:bg-gray-700"},[e("i",{class:"fas fa-trash text-xl text-gray-400"})],-1),e("p",{class:"text-lg text-gray-500 dark:text-gray-400"},"暂无已删除的 API Keys",-1),e("p",{class:"mt-2 text-sm text-gray-400"},"已删除的 API Keys 会出现在这里",-1)]))):(o(),n("div",Em,[e("div",Om,[G.value.length>0?(o(),n("button",{key:0,class:"rounded-lg bg-red-600 px-4 py-2 text-sm font-medium text-white transition-colors hover:bg-red-700 dark:bg-red-600 dark:hover:bg-red-700",onClick:Aa},[t[133]||(t[133]=e("i",{class:"fas fa-trash-alt mr-2"},null,-1)),K(" 清空所有已删除 ("+u(G.value.length)+") ",1)])):$("",!0)]),e("div",jm,[e("div",Gm,[e("table",zm,[e("thead",qm,[e("tr",null,[t[134]||(t[134]=e("th",{class:"name-column sticky left-0 z-20 min-w-[140px] px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 名称 ",-1)),t[135]||(t[135]=e("th",{class:"min-w-[140px] px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 所属账号 ",-1)),Y.value?(o(),n("th",Fm," 创建者 ")):$("",!0),t[136]||(t[136]=e("th",{class:"min-w-[120px] px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 创建时间 ",-1)),t[137]||(t[137]=e("th",{class:"min-w-[100px] px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 删除者 ",-1)),t[138]||(t[138]=e("th",{class:"min-w-[100px] px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 删除时间 ",-1)),t[139]||(t[139]=e("th",{class:"min-w-[70px] px-3 py-4 text-right text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 费用 ",-1)),t[140]||(t[140]=e("th",{class:"min-w-[80px] px-3 py-4 text-right text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," Token ",-1)),t[141]||(t[141]=e("th",{class:"min-w-[80px] px-3 py-4 text-right text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 请求数 ",-1)),t[142]||(t[142]=e("th",{class:"min-w-[100px] px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 最后使用 ",-1)),t[143]||(t[143]=e("th",{class:"operations-column sticky right-0 min-w-[140px] px-3 py-4 text-left text-xs font-bold uppercase tracking-wider text-gray-700 dark:text-gray-300"}," 操作 ",-1))])]),e("tbody",Bm,[(o(!0),n(re,null,ge(G.value,r=>{var w,q,B,O,me,fe;return o(),n("tr",{key:r.id,class:"table-row"},[e("td",Wm,[e("div",Nm,[t[144]||(t[144]=e("div",{class:"mr-2 flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-lg bg-gradient-to-br from-red-500 to-red-600"},[e("i",{class:"fas fa-trash text-[10px] text-white"})],-1)),e("div",Hm,[e("div",{class:"cursor-pointer truncate text-sm font-semibold text-gray-900 hover:text-blue-600 dark:text-gray-100 dark:hover:text-blue-400",title:"点击复制",onClick:$e(g=>Ae(rs)(r.name),["stop"])},u(r.name),9,Ym)])])]),e("td",Qm,[e("div",Jm,[r.claudeAccountId?(o(),n("div",Xm,t[145]||(t[145]=[e("span",{class:"inline-flex items-center rounded bg-blue-100 px-1.5 py-0.5 text-blue-700 dark:bg-blue-900/30 dark:text-blue-300"},[e("i",{class:"fas fa-robot mr-1 text-[10px]"}),K(" Claude OAuth ")],-1)]))):r.claudeConsoleAccountId?(o(),n("div",Zm,t[146]||(t[146]=[e("span",{class:"inline-flex items-center rounded bg-green-100 px-1.5 py-0.5 text-green-700 dark:bg-green-900/30 dark:text-green-300"},[e("i",{class:"fas fa-terminal mr-1 text-[10px]"}),K(" Claude Console ")],-1)]))):r.geminiAccountId?(o(),n("div",ex,t[147]||(t[147]=[e("span",{class:"inline-flex items-center rounded bg-purple-100 px-1.5 py-0.5 text-purple-700 dark:bg-purple-900/30 dark:text-purple-300"},[e("i",{class:"fa-google mr-1 text-[10px]"}),K(" Gemini ")],-1)]))):(o(),n("div",tx,t[148]||(t[148]=[e("i",{class:"fas fa-share-alt mr-1"},null,-1),K(" 共享池 ",-1)])))])]),Y.value?(o(),n("td",sx,[e("div",ax,[r.createdBy==="admin"?(o(),n("span",rx,t[149]||(t[149]=[e("i",{class:"fas fa-user-shield mr-1 text-xs"},null,-1),K(" 管理员 ",-1)]))):r.userUsername?(o(),n("span",ox,[t[150]||(t[150]=e("i",{class:"fas fa-user mr-1 text-xs"},null,-1)),K(" "+u(r.userUsername),1)])):(o(),n("span",lx,t[151]||(t[151]=[e("i",{class:"fas fa-question-circle mr-1 text-xs"},null,-1),K(" 未知 ",-1)])))])])):$("",!0),e("td",nx,u(Ae(Pe)(r.createdAt)),1),e("td",ix,[e("div",dx,[r.deletedByType==="admin"?(o(),n("span",ux,[t[152]||(t[152]=e("i",{class:"fas fa-user-shield mr-1 text-xs"},null,-1)),K(" "+u(r.deletedBy),1)])):r.deletedByType==="user"?(o(),n("span",cx,[t[153]||(t[153]=e("i",{class:"fas fa-user mr-1 text-xs"},null,-1)),K(" "+u(r.deletedBy),1)])):(o(),n("span",gx,[t[154]||(t[154]=e("i",{class:"fas fa-cog mr-1 text-xs"},null,-1)),K(" "+u(r.deletedBy),1)]))])]),e("td",px,u(Ae(Pe)(r.deletedAt)),1),e("td",mx,[e("span",xx," $"+u((((q=(w=r.usage)==null?void 0:w.total)==null?void 0:q.cost)||0).toFixed(2)),1)]),e("td",yx,[e("span",fx,u(Me(((O=(B=r.usage)==null?void 0:B.total)==null?void 0:O.tokens)||0)),1)]),e("td",bx,[e("div",vx,[e("span",kx,u(Ae(vt)(((fe=(me=r.usage)==null?void 0:me.total)==null?void 0:fe.requests)||0)),1),t[155]||(t[155]=e("span",{class:"text-xs text-gray-500"},"次",-1))])]),e("td",wx,[e("div",hx,[r.lastUsedAt?(o(),n("span",{key:0,class:"cursor-help",style:{"font-size":"13px"},title:new Date(r.lastUsedAt).toLocaleString("zh-CN")},u(Jt(r.lastUsedAt)),9,Ax)):(o(),n("span",Cx,"从未使用")),r.lastUsedAt&&It(r.id)?(o(),n("span",$x,t[156]||(t[156]=[e("i",{class:"fas fa-spinner fa-spin mr-1"},null,-1),K(" 加载中... ",-1)]))):Zt(r)?(o(),n("span",{key:3,class:"mt-1 text-xs text-gray-500 dark:text-gray-400",title:yt(r)},[K(u(ts(r))+" ",1),ss(r)?$("",!0):(o(),n("span",Kx," ("+u(St(r))+") ",1))],8,Ix)):(o(),n("span",Lx," 暂无使用账号 "))])]),e("td",Dx,[e("div",Tx,[r.canRestore?(o(),n("button",{key:0,class:"rounded-lg bg-green-50 px-3 py-1.5 text-xs font-medium text-green-600 transition-colors hover:bg-green-100 dark:bg-green-900/30 dark:text-green-400 dark:hover:bg-green-900/50",title:"恢复 API Key",onClick:g=>wa(r.id)},t[157]||(t[157]=[e("i",{class:"fas fa-undo mr-1"},null,-1),K(" 恢复 ",-1)]),8,_x)):$("",!0),e("button",{class:"rounded-lg bg-red-50 px-3 py-1.5 text-xs font-medium text-red-600 transition-colors hover:bg-red-100 dark:bg-red-900/30 dark:text-red-400 dark:hover:bg-red-900/50",title:"彻底删除 API Key",onClick:g=>ha(r.id)},t[158]||(t[158]=[e("i",{class:"fas fa-times mr-1"},null,-1),K(" 彻底删除 ",-1)]),8,Sx)])])])}),128))])])])])]))])):$("",!0)])]),ze.value?(o(),he(hl,{key:0,accounts:b.value,onBatchSuccess:xa,onClose:t[24]||(t[24]=r=>ze.value=!1),onSuccess:ma},null,8,["accounts"])):$("",!0),We.value?(o(),he(Tn,{key:1,accounts:b.value,"api-key":ns.value,onClose:t[25]||(t[25]=r=>We.value=!1),onSuccess:ba},null,8,["accounts","api-key"])):$("",!0),Ne.value?(o(),he(Wn,{key:2,"api-key":is.value,onClose:t[26]||(t[26]=r=>Ne.value=!1),onSuccess:va},null,8,["api-key"])):$("",!0),pe.value?(o(),he(li,{key:3,"api-key":ds.value,onClose:t[27]||(t[27]=r=>pe.value=!1)},null,8,["api-key"])):$("",!0),Ee.value?(o(),he(_i,{key:4,"api-keys":us.value,onClose:t[28]||(t[28]=r=>Ee.value=!1)},null,8,["api-keys"])):$("",!0),ht.value?(o(),he(Cd,{key:5,accounts:b.value,"selected-keys":I.value,onClose:t[29]||(t[29]=r=>ht.value=!1),onSuccess:fa},null,8,["accounts","selected-keys"])):$("",!0),ne(Qd,{ref_key:"expiryEditModalRef",ref:Ce,"api-key":Te.value||{id:null,expiresAt:null,name:""},show:!!Te.value,onClose:Is,onSave:Ia},null,8,["api-key","show"]),ne(J0,{"api-key":i.value||{},show:N.value,onClose:t[30]||(t[30]=r=>N.value=!1),onOpenTimeline:Ka},null,8,["api-key","show"]),ne(bu,{show:Wt.value,onClose:t[31]||(t[31]=r=>Wt.value=!1),onUpdated:Ke},null,8,["show"]),ne(at,{"cancel-text":rt.value.cancelText,"confirm-text":rt.value.confirmText,message:rt.value.message,show:At.value,title:rt.value.title,type:rt.value.type,onCancel:Ws,onConfirm:Bs},null,8,["cancel-text","confirm-text","message","show","title","type"])])}}},Gx=st(Mx,[["__scopeId","data-v-4ed7ad31"]]);export{Gx as default}; diff --git a/web/admin-spa/dist/assets/ApiKeysView-M9vmNqGR.css b/web/admin-spa/dist/assets/ApiKeysView-M9vmNqGR.css deleted file mode 100644 index 2949c381..00000000 --- a/web/admin-spa/dist/assets/ApiKeysView-M9vmNqGR.css +++ /dev/null @@ -1 +0,0 @@ -.custom-scrollbar[data-v-15b77cd6]{scrollbar-width:thin;scrollbar-color:#cbd5e0 #f7fafc}.custom-scrollbar[data-v-15b77cd6]::-webkit-scrollbar{width:6px}.custom-scrollbar[data-v-15b77cd6]::-webkit-scrollbar-track{background:#f7fafc}.custom-scrollbar[data-v-15b77cd6]::-webkit-scrollbar-thumb{background-color:#cbd5e0;border-radius:3px}.custom-scrollbar[data-v-15b77cd6]::-webkit-scrollbar-thumb:hover{background-color:#a0aec0}pre[data-v-42e73733],pre[data-v-fa69edb5]{white-space:pre-wrap;word-wrap:break-word}@keyframes fadeIn-20d23095{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn[data-v-20d23095]{animation:fadeIn-20d23095 .2s ease-out}.loading-spinner[data-v-20d23095]{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin-20d23095 .8s linear infinite;display:inline-block}@keyframes spin-20d23095{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shine-1393272b{0%{transform:translate(-100%)}to{transform:translate(200%)}}.tabular-nums[data-v-1393272b]{font-variant-numeric:tabular-nums}.modal-enter-active[data-v-8e455166],.modal-leave-active[data-v-8e455166]{transition:opacity .2s ease}.modal-enter-from[data-v-8e455166],.modal-leave-to[data-v-8e455166]{opacity:0}.tab-content[data-v-4ed7ad31]{min-height:calc(100vh - 300px)}.table-wrapper[data-v-4ed7ad31]{overflow:hidden;border-radius:12px;border:1px solid rgba(0,0,0,.05);width:100%;position:relative}.dark .table-wrapper[data-v-4ed7ad31]{border-color:#ffffff1a}.table-container[data-v-4ed7ad31]{overflow-x:auto;overflow-y:hidden;margin:0;padding:0;max-width:100%;position:relative;-webkit-overflow-scrolling:touch}.table-container table[data-v-4ed7ad31]{min-width:1400px;border-collapse:collapse;table-layout:auto}.table-container[data-v-4ed7ad31]::-webkit-scrollbar{height:8px}.table-container[data-v-4ed7ad31]::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}.table-container[data-v-4ed7ad31]::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.table-container[data-v-4ed7ad31]::-webkit-scrollbar-thumb:hover{background:#9ca3af}.dark .table-container[data-v-4ed7ad31]::-webkit-scrollbar-track{background:var(--bg-gradient-mid)}.dark .table-container[data-v-4ed7ad31]::-webkit-scrollbar-thumb{background:var(--bg-gradient-end)}.dark .table-container[data-v-4ed7ad31]::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.table-container tbody tr:hover>td[data-v-4ed7ad31]{background-color:rgba(var(--primary-rgb),.06)!important}.dark .table-container tbody tr:hover>td[data-v-4ed7ad31]{background-color:rgba(var(--primary-rgb),.16)!important}.table-container tbody tr:nth-child(odd)>td[data-v-4ed7ad31]{background-color:#fff}.table-container tbody tr:nth-child(2n)>td[data-v-4ed7ad31]{background-color:#f9fafb}.dark .table-container tbody tr:nth-child(odd)>td[data-v-4ed7ad31]{background-color:var(--bg-gradient-start)}.dark .table-container tbody tr:nth-child(2n)>td[data-v-4ed7ad31]{background-color:var(--bg-gradient-mid)}.operations-column[data-v-4ed7ad31]{position:sticky;right:0;z-index:12}.table-container thead .operations-column[data-v-4ed7ad31]{z-index:30;background:linear-gradient(to bottom,#f9fafb,#f3f4f6)}.dark .table-container thead .operations-column[data-v-4ed7ad31]{background:linear-gradient(to bottom,var(--bg-gradient-mid),var(--bg-gradient-start))}.table-container tbody .operations-column[data-v-4ed7ad31]{box-shadow:-8px 0 12px -8px #0f172a29}.dark .table-container tbody .operations-column[data-v-4ed7ad31]{box-shadow:-8px 0 12px -8px #1e293b73}.checkbox-column[data-v-4ed7ad31],.name-column[data-v-4ed7ad31]{position:sticky;z-index:12}.table-container thead .checkbox-column[data-v-4ed7ad31],.table-container thead .name-column[data-v-4ed7ad31]{z-index:30;background:linear-gradient(to bottom,#f9fafb,#f3f4f6)}.dark .table-container thead .checkbox-column[data-v-4ed7ad31],.dark .table-container thead .name-column[data-v-4ed7ad31]{background:linear-gradient(to bottom,var(--bg-gradient-mid),var(--bg-gradient-start))}.table-container tbody .name-column[data-v-4ed7ad31]{box-shadow:8px 0 12px -8px #0f172a29}.dark .table-container tbody .name-column[data-v-4ed7ad31]{box-shadow:8px 0 12px -8px #1e293b73}.loading-spinner[data-v-4ed7ad31]{width:24px;height:24px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:spin-4ed7ad31 1s linear infinite}@keyframes spin-4ed7ad31{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.api-key-date-picker[data-v-4ed7ad31] .el-input__inner{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.api-key-date-picker[data-v-4ed7ad31] .el-input__inner:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1));--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.api-key-date-picker[data-v-4ed7ad31] .el-range-separator{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.custom-date-range-picker[data-v-4ed7ad31] .el-input__wrapper{height:38px;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.custom-date-range-picker[data-v-4ed7ad31] .el-input__wrapper:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.custom-date-range-picker[data-v-4ed7ad31] .el-input__wrapper:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.custom-date-range-picker[data-v-4ed7ad31] .el-input__inner{height:100%;padding-top:.5rem;padding-bottom:.5rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.custom-date-range-picker[data-v-4ed7ad31] .el-input__inner:is(.dark *){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.custom-date-range-picker[data-v-4ed7ad31] .el-input__prefix,.custom-date-range-picker[data-v-4ed7ad31] .el-input__suffix{display:flex;align-items:center}.custom-date-range-picker[data-v-4ed7ad31] .el-range-separator{margin-left:.5rem;margin-right:.5rem;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))} diff --git a/web/admin-spa/dist/assets/ApiStatsView-BDCKkmc6.css b/web/admin-spa/dist/assets/ApiStatsView-BDCKkmc6.css deleted file mode 100644 index 50f9baa6..00000000 --- a/web/admin-spa/dist/assets/ApiStatsView-BDCKkmc6.css +++ /dev/null @@ -1 +0,0 @@ -.api-input-wide-card[data-v-411fd161]{background:var(--surface-color);-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);border:1px solid var(--border-color);box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #ffffff0d,inset 0 1px #ffffff1a;transition:all .3s cubic-bezier(.4,0,.2,1)}.dark{box-shadow:0 25px 50px -12px #0009,0 0 0 1px #4b556333,inset 0 1px #6b728026}.api-input-wide-card[data-v-411fd161]:hover{box-shadow:0 32px 64px -12px #00000059,0 0 0 1px #ffffff14,inset 0 1px #ffffff26;transform:translateY(-1px)}.dark{box-shadow:0 32px 64px -12px #000000b3,0 0 0 1px #4b556340,inset 0 1px #6b72804d!important}.wide-card-title h2[data-v-411fd161]{text-shadow:0 1px 2px rgba(0,0,0,.1);font-weight:700}.dark{color:#f9fafb;text-shadow:0 1px 2px rgba(0,0,0,.3)}.wide-card-title p[data-v-411fd161]{color:#6b7280;text-shadow:0 1px 1px rgba(0,0,0,.05)}.dark{color:#9ca3af;text-shadow:0 1px 1px rgba(0,0,0,.2)}.wide-card-title .fas.fa-chart-line[data-v-411fd161]{color:#3b82f6;text-shadow:0 1px 2px rgba(59,130,246,.2)}.api-input-grid[data-v-411fd161]{align-items:end;gap:1rem}.wide-card-input[data-v-411fd161]{background:var(--input-bg);border:2px solid var(--input-border);border-radius:12px;padding:14px 16px;font-size:16px;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-primary);box-shadow:0 4px 6px -1px #0000001a}.dark{box-shadow:0 4px 6px -1px #0006;color:#e5e7eb}.wide-card-input[data-v-411fd161]::-moz-placeholder{color:#9ca3af}.wide-card-input[data-v-411fd161]::placeholder{color:#9ca3af}.dark{color:#64748b}.wide-card-input[data-v-411fd161]:focus{outline:none;border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33,0 10px 15px -3px #0000001a;background:#fff;color:#1f2937}.dark{border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.15),0 10px 15px -3px #0006;background:var(--glass-strong-color);color:#f3f4f6}.btn[data-v-411fd161]{font-weight:500;border-radius:12px;border:none;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;letter-spacing:.025em}.btn-query[data-v-411fd161]{padding:14px 24px;font-size:16px}.btn-primary[data-v-411fd161]{background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);color:#fff;box-shadow:0 10px 15px -3px rgba(var(--primary-rgb),.3),0 4px 6px -2px rgba(var(--primary-rgb),.05)}.btn-primary[data-v-411fd161]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 20px 25px -5px rgba(var(--primary-rgb),.3),0 10px 10px -5px rgba(var(--primary-rgb),.1)}.btn-primary[data-v-411fd161]:disabled{opacity:.6;cursor:not-allowed;transform:none}.security-notice[data-v-411fd161]{background:#ffffff80;border:1px solid rgba(255,255,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:8px;padding:12px 16px;color:#374151;font-size:.875rem;transition:all .3s ease}.dark{background:var(--glass-strong-color)!important;border:1px solid var(--border-color)!important;color:#d1d5db!important}.security-notice[data-v-411fd161]:hover{background:#fff9;border-color:#ffffff80;color:#1f2937}.dark{background:var(--glass-strong-color)!important;border-color:var(--border-color)!important;color:#e5e7eb!important}.security-notice .fas.fa-shield-alt[data-v-411fd161]{color:#10b981;text-shadow:0 1px 2px rgba(16,185,129,.2)}.control-bar[data-v-411fd161]{padding-bottom:.5rem;border-bottom:1px solid rgba(229,231,235,.3)}.dark{border-bottom-color:#4b55634d}.button-group[data-v-411fd161]{display:flex;align-items:center;gap:.5rem}.mode-switch-group[data-v-411fd161]{display:inline-flex;padding:4px;background:#f3f4f6;border-radius:.5rem;box-shadow:inset 0 1px 2px #0000000d}.dark{background:var(--bg-gradient-start);box-shadow:inset 0 1px 2px #0000004d}.mode-switch-btn[data-v-411fd161]{display:inline-flex;align-items:center;padding:6px 12px;font-size:.875rem;font-weight:500;color:#6b7280;background:transparent;border:none;border-radius:.375rem;cursor:pointer;transition:all .2s ease;white-space:nowrap}.dark{color:var(--text-secondary)}.mode-switch-btn[data-v-411fd161]:hover:not(.active){color:#374151;background:#0000000d}.dark{color:#d1d5db;background:#ffffff0d}.mode-switch-btn.active[data-v-411fd161]{color:#fff;background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);box-shadow:0 2px 4px rgba(var(--primary-rgb),.2)}.mode-switch-btn.active[data-v-411fd161]:hover{box-shadow:0 4px 6px rgba(var(--primary-rgb),.3)}.mode-switch-btn i[data-v-411fd161]{font-size:.875rem}.fade-enter-active[data-v-411fd161],.fade-leave-active[data-v-411fd161]{transition:all .3s ease}.fade-enter-from[data-v-411fd161],.fade-leave-to[data-v-411fd161]{opacity:0;transform:translate(-10px)}.loading-spinner[data-v-411fd161]{animation:spin-411fd161 1s linear infinite;filter:drop-shadow(0 0 4px rgba(255,255,255,.5))}@keyframes spin-411fd161{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.control-bar[data-v-411fd161]{flex-direction:column;align-items:stretch;gap:1rem}.button-group[data-v-411fd161]{justify-content:center}.api-input-wide-card[data-v-411fd161]{padding:1.25rem}.wide-card-title[data-v-411fd161]{margin-bottom:1.25rem}.wide-card-title h2[data-v-411fd161]{font-size:1.5rem}.wide-card-title p[data-v-411fd161]{font-size:.875rem}.api-input-grid[data-v-411fd161]{gap:1rem}.wide-card-input[data-v-411fd161]{padding:12px 14px;font-size:15px}.btn-query[data-v-411fd161]{padding:12px 20px;font-size:15px}.security-notice[data-v-411fd161]{padding:10px 14px;font-size:.8rem}}@media (max-width: 480px){.mode-toggle-btn[data-v-411fd161]{padding:5px 8px}.toggle-icon[data-v-411fd161]{width:18px;height:18px}.hint-text[data-v-411fd161]{font-size:.7rem;padding:4px 8px}.api-input-wide-card[data-v-411fd161]{padding:1rem}.wide-card-title h2[data-v-411fd161]{font-size:1.25rem}.wide-card-title p[data-v-411fd161]{font-size:.8rem}.wide-card-input[data-v-411fd161]{padding:10px 12px;font-size:14px}.btn-query[data-v-411fd161]{padding:10px 16px;font-size:14px}}.card-section[data-v-99d8ab54]{display:flex;height:100%;flex-direction:column;gap:1rem;border-radius:1rem;padding:1rem;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}@media (min-width: 768px){.card-section[data-v-99d8ab54]{padding:1.5rem}}.card-section[data-v-99d8ab54]{background:var(--surface-color);border:1px solid var(--border-color)}.section-header[data-v-99d8ab54]{margin-bottom:1rem;display:flex;align-items:center;gap:.75rem}.header-icon[data-v-99d8ab54]{font-size:1rem;line-height:1.5rem}@media (min-width: 768px){.header-icon[data-v-99d8ab54]{font-size:1.125rem;line-height:1.75rem}}.header-title[data-v-99d8ab54]{font-size:1.125rem;line-height:1.75rem;font-weight:600}@media (min-width: 768px){.header-title[data-v-99d8ab54]{font-size:1.25rem;line-height:1.75rem}}.header-title[data-v-99d8ab54]{color:var(--text-primary, #1e293b)}.header-tag[data-v-99d8ab54]{margin-left:auto;border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;background:rgba(var(--primary-rgb),.1);color:var(--primary-color)}.info-grid[data-v-99d8ab54]{display:grid;gap:.75rem}@media (min-width: 768px){.info-grid[data-v-99d8ab54]{gap:1rem}}.info-grid[data-v-99d8ab54]{grid-template-columns:repeat(1,minmax(0,1fr))}@media (min-width: 768px){.info-grid[data-v-99d8ab54]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1280px){.info-grid[data-v-99d8ab54]{grid-template-columns:repeat(3,minmax(0,1fr))}}.info-item[data-v-99d8ab54]{border-radius:.75rem;padding:1rem;background:rgba(var(--primary-rgb),.03);border:1px solid var(--border-color);min-height:86px}.info-label[data-v-99d8ab54]{font-size:.75rem;line-height:1rem;text-transform:uppercase;letter-spacing:.025em;color:var(--text-secondary, #64748b)}.info-value[data-v-99d8ab54]{margin-top:.5rem;font-size:.875rem;line-height:1.25rem;color:var(--text-primary, #1e293b)}.contributor-item[data-v-99d8ab54]{display:flex;align-items:center;justify-content:space-between;border-radius:.5rem;padding:.5rem .75rem;font-size:.75rem;line-height:1rem;background:rgba(var(--primary-rgb),.05);color:var(--text-secondary, #64748b)}.dark{background:rgba(var(--primary-rgb),.1);color:var(--text-secondary, #cbd5e1)}.metric-grid[data-v-99d8ab54]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}@media (min-width: 768px){.metric-grid[data-v-99d8ab54]{gap:1rem}}.metric-card[data-v-99d8ab54]{border-radius:.75rem;padding:1rem;text-align:center;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);background:rgba(var(--primary-rgb),.03);border:1px solid var(--border-color)}.metric-value[data-v-99d8ab54]{font-size:1.25rem;line-height:1.75rem;font-weight:600}@media (min-width: 768px){.metric-value[data-v-99d8ab54]{font-size:1.5rem;line-height:2rem}}.metric-label[data-v-99d8ab54]{margin-top:.25rem;font-size:.75rem;line-height:1rem;color:var(--text-secondary, #64748b)}.dark{color:var(--text-secondary, #cbd5e1)}.account-card[data-v-99d8ab54]{border-radius:1rem;padding:1rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.account-card[data-v-99d8ab54]:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.account-card[data-v-99d8ab54]{background:var(--surface-color);border:1px solid var(--border-color)}.account-icon[data-v-99d8ab54]{display:inline-flex;height:2.5rem;width:2.5rem;align-items:center;justify-content:center;border-radius:9999px;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.icon-claude[data-v-99d8ab54]{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #a855f7 var(--tw-gradient-from-position);--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.icon-openai[data-v-99d8ab54]{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #0ea5e9 var(--tw-gradient-from-position);--tw-gradient-to: rgb(14 165 233 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #6366f1 var(--tw-gradient-to-position)}.account-name[data-v-99d8ab54]{font-size:.875rem;line-height:1.25rem;font-weight:600;color:var(--text-primary, #1e293b)}.dark{color:var(--text-primary, #f1f5f9)}.account-sub[data-v-99d8ab54]{font-size:.75rem;line-height:1rem;color:var(--text-secondary, #64748b)}.dark{color:var(--text-secondary, #94a3b8)}.rate-badge[data-v-99d8ab54]{border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;background:rgba(var(--primary-rgb),.1)}.progress-row[data-v-99d8ab54]{display:flex;align-items:center;gap:.5rem}.progress-track[data-v-99d8ab54]{height:.375rem;flex:1 1 0%;border-radius:9999px;background:rgba(var(--primary-rgb),.15)}.dark{background:rgba(var(--primary-rgb),.25)}.progress-bar[data-v-99d8ab54]{height:.375rem;border-radius:9999px;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.progress-value[data-v-99d8ab54]{font-size:.75rem;line-height:1rem;font-weight:600;color:var(--text-secondary, #475569)}.quota-row[data-v-99d8ab54]{border-radius:.75rem;padding:.75rem;background:rgba(var(--primary-rgb),.03);border:1px solid var(--border-color)}.dark{background:rgba(var(--primary-rgb),.08)}.quota-header[data-v-99d8ab54]{margin-bottom:.5rem;display:flex;align-items:center;justify-content:space-between}.quota-tag[data-v-99d8ab54]{display:inline-flex;min-width:34px;justify-content:center;border-radius:9999px;padding:.125rem .5rem;font-size:11px;font-weight:600}.tag-indigo[data-v-99d8ab54]{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.tag-indigo[data-v-99d8ab54]:is(.dark *){background-color:#6366f133;--tw-text-opacity: 1;color:rgb(199 210 254 / var(--tw-text-opacity, 1))}.tag-blue[data-v-99d8ab54]{--tw-bg-opacity: 1;background-color:rgb(224 242 254 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(2 132 199 / var(--tw-text-opacity, 1))}.tag-blue[data-v-99d8ab54]:is(.dark *){background-color:#0ea5e933;--tw-text-opacity: 1;color:rgb(186 230 253 / var(--tw-text-opacity, 1))}.quota-percent[data-v-99d8ab54]{font-size:.75rem;line-height:1rem;font-weight:600;color:var(--text-secondary, #475569)}.dark{color:var(--text-secondary, #e2e8f0)}.quota-foot[data-v-99d8ab54]{margin-top:.25rem;font-size:11px;color:var(--text-tertiary, #94a3b8)}.dark{color:var(--text-tertiary, #cbd5e1)}.card[data-v-f3f6aa17]{background:var(--surface-color);border-radius:16px;border:1px solid var(--border-color);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.card[data-v-f3f6aa17]:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent)}.card[data-v-f3f6aa17]:hover{transform:translateY(-2px);box-shadow:0 20px 25px -5px #00000026,0 10px 10px -5px #00000014}.card[data-v-e03e5fe5]{background:var(--surface-color);border-radius:16px;border:1px solid var(--border-color);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.card[data-v-e03e5fe5]:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent)}.card[data-v-e03e5fe5]:hover{transform:translateY(-2px);box-shadow:0 20px 25px -5px #00000026,0 10px 10px -5px #00000014}.card[data-v-37821008]{background:var(--surface-color);border-radius:16px;border:1px solid var(--border-color);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.card[data-v-37821008]:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent)}.card[data-v-37821008]:hover{transform:translateY(-2px);box-shadow:0 20px 25px -5px #00000026,0 10px 10px -5px #00000014}.card[data-v-0571e613]{background:var(--surface-color);border-radius:16px;border:1px solid var(--border-color);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.card[data-v-0571e613]:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent)}.card[data-v-0571e613]:hover{transform:translateY(-2px);box-shadow:0 20px 25px -5px #00000026,0 10px 10px -5px #00000014}.model-usage-item[data-v-0571e613]{background:var(--surface-color);border:1px solid var(--border-color);border-radius:12px;padding:12px;transition:all .3s ease;position:relative;overflow:hidden}@media (min-width: 768px){.model-usage-item[data-v-0571e613]{padding:16px}}.model-usage-item[data-v-0571e613]:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent)}.model-usage-item[data-v-0571e613]:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;border-color:#ffffff4d}.dark{box-shadow:0 10px 15px -3px #0006,0 4px 6px -2px #00000040;border-color:#4b556399}.loading-spinner[data-v-0571e613]{animation:spin-0571e613 1s linear infinite;filter:drop-shadow(0 0 4px rgba(255,255,255,.5))}@keyframes spin-0571e613{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.model-usage-item .grid[data-v-0571e613]{grid-template-columns:1fr 1fr}}@media (max-width: 480px){.model-usage-item[data-v-0571e613]{padding:10px}.model-usage-item .grid[data-v-0571e613]{grid-template-columns:1fr}}.card[data-v-79d7a9ef]{background:var(--surface-color);border-radius:16px;border:1px solid var(--border-color);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.card[data-v-79d7a9ef]:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent)}.card[data-v-79d7a9ef]:hover{transform:translateY(-2px);box-shadow:0 20px 25px -5px #00000026,0 10px 10px -5px #00000014}.dark{box-shadow:0 20px 25px -5px #00000080,0 10px 10px -5px #00000059}.gradient-bg[data-v-8fdf3cb4],.gradient-bg-dark[data-v-8fdf3cb4]{background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-mid) 50%,var(--bg-gradient-end) 100%);background-attachment:fixed;min-height:100vh;position:relative}.gradient-bg[data-v-8fdf3cb4]:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(var(--accent-rgb),.2) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(var(--primary-rgb),.2) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(var(--secondary-rgb),.1) 0%,transparent 50%);pointer-events:none;z-index:0}.gradient-bg-dark[data-v-8fdf3cb4]:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(var(--accent-rgb),.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(var(--primary-rgb),.1) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(var(--secondary-rgb),.1) 0%,transparent 50%);pointer-events:none;z-index:0}.glass-strong[data-v-8fdf3cb4]{background:var(--glass-strong-color);-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);border:1px solid var(--border-color);box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #ffffff0d,inset 0 1px #ffffff1a;position:relative;z-index:1}.dark{box-shadow:0 25px 50px -12px #000000b3,0 0 0 1px #3741514d,inset 0 1px #4b556333}.header-title[data-v-8fdf3cb4]{background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700;letter-spacing:-.025em}.user-login-button[data-v-8fdf3cb4]{background:linear-gradient(135deg,#34d399,#10b981);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.3);text-decoration:none;box-shadow:0 4px 12px #34d39940,inset 0 1px 1px #fff3;position:relative;overflow:hidden;font-weight:600}.dark{background:linear-gradient(135deg,#34d399,#10b981);border:1px solid rgba(52,211,153,.4);color:#fff;box-shadow:0 4px 12px #34d3994d,inset 0 1px 1px #ffffff1a}.user-login-button[data-v-8fdf3cb4]:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#10b981,#34d399);opacity:0;transition:opacity .3s ease}.user-login-button[data-v-8fdf3cb4]:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 20px #34d39959,inset 0 1px 1px #ffffff4d;border-color:#fff6}.user-login-button[data-v-8fdf3cb4]:hover:before{opacity:1}.dark{box-shadow:0 8px 20px #34d39966,inset 0 1px 1px #fff3;border-color:#34d39980}.user-login-button[data-v-8fdf3cb4]:active{transform:translateY(-1px) scale(1)}.user-login-button i[data-v-8fdf3cb4],.user-login-button span[data-v-8fdf3cb4]{position:relative;z-index:1}.admin-button-refined[data-v-8fdf3cb4]{background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.3);color:#fff;text-decoration:none;box-shadow:0 4px 12px rgba(var(--primary-rgb),.25),inset 0 1px 1px #fff3;position:relative;overflow:hidden;font-weight:600}.dark{background:#374151cc;border:1px solid rgba(107,114,128,.4);color:#f3f4f6;box-shadow:0 4px 12px #0000004d,inset 0 1px 1px #ffffff0d}.admin-button-refined[data-v-8fdf3cb4]:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--secondary-color) 0%,var(--primary-color) 100%);opacity:0;transition:opacity .3s ease}.admin-button-refined[data-v-8fdf3cb4]:hover{transform:translateY(-2px) scale(1.02);background:linear-gradient(135deg,var(--secondary-color) 0%,var(--primary-color) 100%);box-shadow:0 8px 20px rgba(var(--secondary-rgb),.35),inset 0 1px 1px #ffffff4d;border-color:#fff6;color:#fff}.admin-button-refined[data-v-8fdf3cb4]:hover:before{opacity:1}.dark{background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);border-color:rgba(var(--secondary-rgb),.4);box-shadow:0 8px 20px rgba(var(--primary-rgb),.3),inset 0 1px 1px #ffffff1a;color:#fff}.admin-button-refined[data-v-8fdf3cb4]:active{transform:translateY(-1px) scale(1)}.admin-button-refined i[data-v-8fdf3cb4],.admin-button-refined span[data-v-8fdf3cb4]{position:relative;z-index:1}.period-btn[data-v-8fdf3cb4]{position:relative;overflow:hidden;border-radius:12px;font-weight:500;letter-spacing:.025em;transition:all .3s ease;border:none;cursor:pointer}.period-btn.active[data-v-8fdf3cb4]{background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);color:#fff;box-shadow:0 10px 15px -3px rgba(var(--primary-rgb),.3),0 4px 6px -2px rgba(var(--primary-rgb),.05);transform:translateY(-1px)}.period-btn[data-v-8fdf3cb4]:not(.active){color:#374151;background:#fff9;border:1px solid rgba(229,231,235,.5)}html.dark{color:#e5e7eb;background:#37415166;border:1px solid rgba(75,85,99,.5)}.period-btn[data-v-8fdf3cb4]:not(.active):hover{background:#fffc;color:#1f2937;border-color:#d1d5dbcc}html.dark{background:#4b556399;color:#fff;border-color:#6b7280cc}.test-btn[data-v-8fdf3cb4]{position:relative;overflow:hidden;border-radius:12px;font-weight:500;letter-spacing:.025em;transition:all .3s ease;border:none;cursor:pointer;background:linear-gradient(135deg,#06b6d4,#0891b2);color:#fff;box-shadow:0 4px 10px -2px #06b6d44d,0 2px 4px -1px #06b6d41a}.test-btn[data-v-8fdf3cb4]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 15px -3px #06b6d466,0 4px 6px -2px #06b6d426}.test-btn[data-v-8fdf3cb4]:disabled{opacity:.5;cursor:not-allowed;transform:none}.tab-pill-button[data-v-8fdf3cb4]{padding:.5rem 1rem;border-radius:9999px;font-weight:500;font-size:.875rem;color:#fffc;background:transparent;border:none;cursor:pointer;transition:all .2s ease;position:relative;display:inline-flex;align-items:center;white-space:nowrap;flex:1;justify-content:center}html.dark{color:#d1d5dbcc}@media (min-width: 768px){.tab-pill-button[data-v-8fdf3cb4]{padding:.625rem 1.25rem;flex:none}}.tab-pill-button[data-v-8fdf3cb4]:hover{color:#fff;background:#ffffff1a}html.dark{color:#f3f4f6;background:#64748b33}.tab-pill-button.active[data-v-8fdf3cb4]{background:#fff;color:var(--secondary-color);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}html.dark{background:#475569e6;color:#f3f4f6;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003}.tab-pill-button i[data-v-8fdf3cb4]{font-size:.875rem}.tab-content[data-v-8fdf3cb4]{animation:tabFadeIn-8fdf3cb4 .4s ease-out}@keyframes tabFadeIn-8fdf3cb4{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in[data-v-8fdf3cb4]{animation:fadeIn-8fdf3cb4 .6s ease-out}@keyframes fadeIn-8fdf3cb4{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.fade-enter-active[data-v-8fdf3cb4],.fade-leave-active[data-v-8fdf3cb4]{transition:opacity .3s ease}.fade-enter-from[data-v-8fdf3cb4],.fade-leave-to[data-v-8fdf3cb4]{opacity:0} diff --git a/web/admin-spa/dist/assets/ApiStatsView-D5wlfbRX.js b/web/admin-spa/dist/assets/ApiStatsView-D5wlfbRX.js deleted file mode 100644 index 76233beb..00000000 --- a/web/admin-spa/dist/assets/ApiStatsView-D5wlfbRX.js +++ /dev/null @@ -1,6 +0,0 @@ -import{aP as Oe,r as T,c as j,aY as ce,x as l,y as a,z as e,O as k,L as b,P as o,u as t,C as R,K as xe,aW as Fe,aa as $e,f as Me,aq as Se,Y as Ce,Q as X,ac as se,B as be,R as ee,q as De,o as Te,V as qe,I as ve,aV as Pe,a5 as Ue,aX as We,J as _e,T as Ve,av as ze,al as Be}from"./vue-vendor-DV7DYXbz.js";import{bf as Re,bg as Le,bh as ke,b1 as Ge,bi as He,bj as Je,bk as Qe,_ as me,f as O,Z as Ee,c as Ye,aH as Xe,aO as Ze,a as et,bl as tt,s as Ie,bm as st,bn as at}from"./index-BahP9Xx9.js";import{L as rt}from"./LogoTitle-DF7a1vCs.js";import{T as lt}from"./ThemeToggle-DROshBR1.js";import"./vendor-Dr8jvgFu.js";import{_ as nt}from"./WindowCountdown-Cz478C_V.js";import{T as ot}from"./TutorialView-Cpvhof5r.js";import"./element-plus-BSjV1f9S.js";const ge=Oe("apistats",()=>{const E=T(""),K=T(null),i=T(!1),_=T(!1),g=T(!0),v=T(""),h=T("daily"),$=T(null),M=T([]),L=T([]),w=T([]),u=T([]),x=T(null),f=T(null),c=T(null),n=T({siteName:"",siteIcon:"",siteIconData:""}),C=T(!1),P=T([]),D=T([]),U=T(null),F=T([]),Q=T([]),W=T(null),G=T({}),te=j(()=>{const y={requests:0,inputTokens:0,outputTokens:0,cacheCreateTokens:0,cacheReadTokens:0,allTokens:0,cost:0,formattedCost:"$0.000000"};return C.value&&U.value?h.value==="daily"?U.value.dailyUsage||y:h.value==="monthly"?U.value.monthlyUsage||y:U.value.alltimeUsage||y:h.value==="daily"?x.value||y:h.value==="monthly"?f.value||y:c.value||y}),ne=j(()=>{if(!$.value||!te.value)return{tokenUsage:0,costUsage:0,requestUsage:0};const y=te.value,S=$.value.limits;return{tokenUsage:S.tokenLimit>0?Math.min(y.allTokens/S.tokenLimit*100,100):0,costUsage:S.dailyCostLimit>0?Math.min(y.cost/S.dailyCostLimit*100,100):0,requestUsage:S.rateLimitRequests>0?Math.min(y.requests/S.rateLimitRequests*100,100):0}});async function oe(){if(C.value)return J();const y=E.value.trim();if(!y){v.value="请输入 API Key";return}if(y.length<10||y.length>512){v.value="API Key 格式无效:长度应在 10-512 个字符之间";return}i.value=!0,v.value="",$.value=null,M.value=[],K.value=null;try{const S=await Re(y);if(S.success){K.value=S.data.id;const I=await Le(K.value);if(I.success)$.value=I.data,G.value=I.data.serviceRates||{},await Y(),v.value="",de(),re();else throw new Error(I.message||"查询失败")}else throw new Error(S.message||"获取 API Key ID 失败")}catch(S){console.error("Query stats error:",S),v.value=S.message||"查询统计数据失败,请检查您的 API Key 是否正确",$.value=null,M.value=[],K.value=null}finally{i.value=!1}}async function Y(){K.value&&(await Promise.all([H("daily"),H("monthly")]),await Z())}async function Z(){if(K.value){_.value=!0;try{const[y,S,I]=await Promise.all([ke(K.value,"daily"),ke(K.value,"monthly"),ke(K.value,"alltime")]);L.value=y.success?y.data||[]:[],w.value=S.success?S.data||[]:[],u.value=I.success?I.data||[]:[],M.value=L.value}catch(y){console.error("Load all model stats error:",y),L.value=[],w.value=[],u.value=[],M.value=[]}finally{_.value=!1}}}async function H(y){try{const S=await ke(K.value,y);if(S.success){const I=S.data||[],V={requests:0,inputTokens:0,outputTokens:0,cacheCreateTokens:0,cacheReadTokens:0,allTokens:0,cost:0,formattedCost:"$0.000000"};I.forEach(p=>{var d;V.requests+=p.requests||0,V.inputTokens+=p.inputTokens||0,V.outputTokens+=p.outputTokens||0,V.cacheCreateTokens+=p.cacheCreateTokens||0,V.cacheReadTokens+=p.cacheReadTokens||0,V.allTokens+=p.allTokens||0,V.cost+=((d=p.costs)==null?void 0:d.total)||0}),V.formattedCost=B(V.cost),y==="daily"?x.value=V:y==="monthly"?f.value=V:y==="alltime"&&(c.value=V)}else console.warn(`Failed to load ${y} stats:`,S.message)}catch(S){console.error(`Load ${y} stats error:`,S)}}async function r(y="daily"){if(K.value){_.value=!0;try{const S=await ke(K.value,y);if(S.success)M.value=S.data||[];else throw new Error(S.message||"加载模型统计失败")}catch(S){console.error("Load model stats error:",S),M.value=[]}finally{_.value=!1}}}async function s(y){if(!(h.value===y||_.value)){if(h.value=y,C.value&&D.value.length>0){await ae(y);return}(y==="daily"&&!x.value||y==="monthly"&&!f.value||y==="alltime"&&!c.value)&&await H(y),await r(y)}}async function m(){var y,S;if(K.value){i.value=!0,v.value="",$.value=null,M.value=[];try{const I=await Le(K.value);if(I.success)$.value=I.data,G.value=I.data.serviceRates||{},console.log("API Stats - Full response:",I.data),console.log("API Stats - limits data:",I.data.limits),console.log("API Stats - weeklyOpusCostLimit:",(y=I.data.limits)==null?void 0:y.weeklyOpusCostLimit),console.log("API Stats - weeklyOpusCost:",(S=I.data.limits)==null?void 0:S.weeklyOpusCost),await Y(),v.value="";else throw new Error(I.message||"查询失败")}catch(I){console.error("Load stats with apiId error:",I),v.value=I.message||"查询统计数据失败",$.value=null,M.value=[]}finally{i.value=!1}}}async function A(){g.value=!0;try{const y=await Ge();y&&y.success&&y.data&&(n.value={...n.value,...y.data})}catch(y){console.error("Error loading OEM settings:",y),n.value={siteName:"Claude Relay Service",siteIcon:"",siteIconData:""}}finally{g.value=!1}}async function N(){try{const y=await He();y&&y.success&&y.data&&(W.value=y.data)}catch(y){console.error("Error loading service rates:",y),W.value=null}}function B(y){return typeof y!="number"||y===0?"$0.000000":y>=1?"$"+y.toFixed(2):y>=.01?"$"+y.toFixed(4):"$"+y.toFixed(6)}function de(){if(K.value){const y=new URL(window.location);y.searchParams.set("apiId",K.value),window.history.pushState({},"",y)}}function re(){E.value&&localStorage.setItem("lastApiKey",E.value)}function ie(){return localStorage.getItem("lastApiKey")}async function J(){const y=ue();if(y.length===0){v.value="请输入至少一个有效的 API Key";return}i.value=!0,v.value="",U.value=null,F.value=[],Q.value=[],M.value=[],P.value=y,D.value=[],G.value={};try{const S=await Promise.allSettled(y.map(d=>Re(d))),I=[],V=[];if(S.forEach((d,z)=>{d.status==="fulfilled"&&d.value.success?(I.push(d.value.data.id),V.push(y[z])):Q.value.push(y[z])}),I.length===0)throw new Error("所有 API Key 都无效");D.value=I,P.value=V;const p=await Je(I);if(p.success)U.value=p.data.aggregated,F.value=p.data.individual,$.value=p.data.aggregated,x.value=p.data.aggregated.dailyUsage||null,f.value=p.data.aggregated.monthlyUsage||null,await ae(h.value),ye();else throw new Error(p.message||"批量查询失败")}catch(S){console.error("Batch query error:",S),v.value=S.message||"批量查询统计数据失败",U.value=null,F.value=[]}finally{i.value=!1}}async function ae(y="daily"){if(D.value.length!==0){_.value=!0;try{const S=await Qe(D.value,y);if(S.success)M.value=S.data||[];else throw new Error(S.message||"加载批量模型统计失败")}catch(S){console.error("Load batch model stats error:",S),M.value=[]}finally{_.value=!1}}}function ue(){if(!E.value)return[];const y=E.value.split(/[,\n]+/).map(I=>I.trim()).filter(I=>I.length>=10&&I.length<=512);return[...new Set(y)].slice(0,30)}function ye(){if(D.value.length>0){const y=new URL(window.location);y.searchParams.set("apiIds",D.value.join(",")),y.searchParams.set("batch","true"),window.history.pushState({},"",y)}}function fe(){E.value=""}function pe(){$.value=null,M.value=[],L.value=[],w.value=[],u.value=[],x.value=null,f.value=null,c.value=null,v.value="",h.value="daily",K.value=null,G.value={},P.value=[],D.value=[],U.value=null,F.value=[],Q.value=[]}function he(){E.value="",C.value=!1,pe()}return{apiKey:E,apiId:K,loading:i,modelStatsLoading:_,oemLoading:g,error:v,statsPeriod:h,statsData:$,modelStats:M,dailyModelStats:L,monthlyModelStats:w,alltimeModelStats:u,dailyStats:x,monthlyStats:f,alltimeStats:c,oemSettings:n,multiKeyMode:C,apiKeys:P,apiIds:D,aggregatedStats:U,individualStats:F,invalidKeys:Q,serviceRates:W,keyServiceRates:G,currentPeriodData:te,usagePercentages:ne,queryStats:oe,queryBatchStats:J,loadAllPeriodStats:Y,loadAllModelStats:Z,loadPeriodStats:H,loadModelStats:r,loadBatchModelStats:ae,switchPeriod:s,loadStatsWithApiId:m,loadOemSettings:A,loadServiceRates:N,loadApiKeyFromStorage:ie,clearData:pe,clearInput:fe,reset:he}}),it={class:"api-input-wide-card mb-8 rounded-3xl p-6 shadow-xl"},dt={class:"mx-auto max-w-4xl"},ut={class:"control-bar mb-4 flex flex-wrap items-center justify-between gap-3"},ct={class:"text-sm font-medium text-gray-700 dark:text-gray-300"},mt={class:"button-group flex items-center gap-2"},gt={class:"mode-switch-group flex items-center rounded-lg bg-gray-100 p-1 dark:bg-gray-800"},xt={key:0,class:"ml-1 rounded-full bg-white/20 px-1.5 py-0.5 text-xs font-semibold"},yt={class:"api-input-grid grid grid-cols-1 gap-4 lg:grid-cols-4"},ft={class:"lg:col-span-3"},pt={key:0,class:"relative"},vt=["disabled","type"],bt={key:1,class:"relative"},kt=["disabled"],ht={class:"lg:col-span-1"},_t=["disabled"],wt={key:0,class:"fas fa-spinner loading-spinner"},$t={key:1,class:"fas fa-search"},Ct={class:"security-notice mt-4"},Tt={key:0,class:"mt-2 rounded-lg bg-blue-50 p-3 text-sm text-blue-700 dark:bg-blue-900/20 dark:text-blue-400"},St={__name:"ApiKeyInput",setup(E){const K=ge(),{apiKey:i,loading:_,multiKeyMode:g}=ce(K),{queryStats:v,clearInput:h}=K,$=T(!1),M=j(()=>{if(!g.value||!i.value)return[];const w=i.value.split(/[,\n]+/).map(x=>x.trim()).filter(x=>x.length>0);return[...new Set(w)].slice(0,30)}),L=j(()=>g.value?M.value.length>0:i.value&&i.value.trim().length>0);return(w,u)=>(a(),l("div",it,[u[16]||(u[16]=e("div",{class:"wide-card-title mb-6"},[e("h2",{class:"mb-2 text-2xl font-bold text-gray-900 dark:text-gray-200"},[e("i",{class:"fas fa-chart-line mr-3"}),k(" 使用统计查询 ")]),e("p",{class:"text-base text-gray-600 dark:text-gray-400"},"查询您的 API Key 使用情况和统计数据")],-1)),e("div",dt,[e("div",ut,[e("label",ct,[u[9]||(u[9]=e("i",{class:"fas fa-key mr-2"},null,-1)),k(" "+o(t(g)?"输入您的 API Keys(每行一个或用逗号分隔)":"输入您的 API Key"),1)]),e("div",mt,[e("div",gt,[e("button",{class:R(["mode-switch-btn",{active:!t(g)}]),title:"单一模式",onClick:u[0]||(u[0]=x=>g.value=!1)},u[10]||(u[10]=[e("i",{class:"fas fa-key"},null,-1),e("span",{class:"ml-2 hidden sm:inline"},"单一",-1)]),2),e("button",{class:R(["mode-switch-btn",{active:t(g)}]),title:"聚合模式",onClick:u[1]||(u[1]=x=>g.value=!0)},[u[11]||(u[11]=e("i",{class:"fas fa-layer-group"},null,-1)),u[12]||(u[12]=e("span",{class:"ml-2 hidden sm:inline"},"聚合",-1)),t(g)&&M.value.length>0?(a(),l("span",xt,o(M.value.length),1)):b("",!0)],2)])])]),e("div",yt,[e("div",ft,[t(g)?(a(),l("div",bt,[xe(e("textarea",{"onUpdate:modelValue":u[5]||(u[5]=x=>Me(i)?i.value=x:null),class:"wide-card-input w-full resize-y",disabled:t(_),placeholder:`请输入您的 API Keys,支持以下格式: -cr_xxx -cr_yyy -或 -cr_xxx, cr_yyy`,rows:"4",onKeyup:u[6]||(u[6]=$e(Ce((...x)=>t(v)&&t(v)(...x),["ctrl"]),["enter"]))},null,40,kt),[[Se,t(i)]]),t(i)&&!t(_)?(a(),l("button",{key:0,class:"absolute right-2 top-2 text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300",title:"清空输入",onClick:u[7]||(u[7]=(...x)=>t(h)&&t(h)(...x))},u[13]||(u[13]=[e("i",{class:"fas fa-times-circle"},null,-1)]))):b("",!0)])):(a(),l("div",pt,[xe(e("input",{"onUpdate:modelValue":u[2]||(u[2]=x=>Me(i)?i.value=x:null),class:"wide-card-input w-full pr-10",disabled:t(_),placeholder:"请输入您的 API Key (cr_...)",type:$.value?"text":"password",onKeyup:u[3]||(u[3]=$e((...x)=>t(v)&&t(v)(...x),["enter"]))},null,40,vt),[[Fe,t(i)]]),e("button",{class:"absolute right-3 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300",type:"button",onClick:u[4]||(u[4]=x=>$.value=!$.value)},[e("i",{class:R($.value?"fas fa-eye-slash":"fas fa-eye")},null,2)])]))]),e("div",ht,[e("button",{class:"btn btn-primary btn-query flex h-full w-full items-center justify-center gap-2",disabled:t(_)||!L.value,onClick:u[8]||(u[8]=(...x)=>t(v)&&t(v)(...x))},[t(_)?(a(),l("i",wt)):(a(),l("i",$t)),k(" "+o(t(_)?"查询中...":"查询统计"),1)],8,_t)])]),e("div",Ct,[u[14]||(u[14]=e("i",{class:"fas fa-shield-alt mr-2"},null,-1)),k(" "+o(t(g)?"您的 API Keys 仅用于查询统计数据,不会被存储。聚合模式下部分个体化信息将不显示。":"您的 API Key 仅用于查询自己的统计数据,不会被存储或用于其他用途"),1)]),t(g)?(a(),l("div",Tt,u[15]||(u[15]=[e("i",{class:"fas fa-lightbulb mr-2"},null,-1),e("span",null,"提示:最多支持同时查询 30 个 API Keys。使用 Ctrl+Enter 快速查询。",-1)]))):b("",!0)])]))}},At=me(St,[["__scopeId","data-v-411fd161"]]),Kt={class:"space-y-4 sm:space-y-6 md:space-y-8"},Mt={class:"grid grid-cols-1 items-stretch gap-3 sm:gap-4 md:gap-6 xl:grid-cols-[minmax(0,1.5fr)_minmax(0,1fr)]"},Pt={class:"card-section"},Rt={class:"section-header"},Lt={class:"header-title"},It={key:0,class:"info-grid"},jt={class:"info-item"},Dt={class:"info-value"},qt={class:"info-item"},Ut={class:"info-value text-green-600 dark:text-emerald-400"},Et={key:0,class:"info-item"},Nt={class:"info-value text-red-500 dark:text-red-400"},Ot={class:"info-item"},Ft={class:"info-value"},Wt={class:"info-item"},Vt={class:"info-value"},zt={class:"info-item"},Bt={class:"info-value text-indigo-600 dark:text-indigo-300"},Gt={key:1,class:"info-item xl:col-span-2"},Ht={class:"space-y-2"},Jt={class:"truncate"},Qt={class:"font-semibold"},Yt={key:1,class:"info-grid"},Xt={class:"info-value flex items-center gap-1 break-all"},Zt={class:"info-item"},es={class:"info-item"},ts={class:"info-value"},ss={key:0,class:"info-item xl:col-span-2"},as={class:"flex flex-wrap gap-2"},rs={class:"info-item"},ls={class:"info-value break-all"},ns={class:"info-item xl:col-span-2"},os={class:"info-value"},is={class:"ml-2 text-xs text-gray-500 dark:text-gray-400"},ds={key:0,class:"text-red-500 dark:text-red-400"},us={key:1,class:"text-orange-500 dark:text-orange-400"},cs={key:2},ms={key:2,class:"text-gray-400 dark:text-gray-500"},gs={class:"card-section"},xs={class:"section-header"},ys={class:"header-tag"},fs={class:"metric-grid"},ps={class:"metric-card"},vs={class:"metric-value text-green-600 dark:text-emerald-300"},bs={class:"metric-label"},ks={class:"metric-card"},hs={class:"metric-value text-blue-600 dark:text-sky-300"},_s={class:"metric-label"},ws={class:"metric-card"},$s={class:"metric-value text-purple-600 dark:text-violet-300"},Cs={class:"metric-label"},Ts={class:"metric-card"},Ss={class:"metric-value text-amber-500 dark:text-amber-300"},As={class:"metric-label"},Ks={key:0,class:"card-section"},Ms={class:"flex items-center justify-between gap-3"},Ps={class:"flex items-center gap-3"},Rs={class:"account-name"},Ls={class:"account-sub"},Is={key:0,class:"mt-3 space-y-2"},js={class:"progress-row"},Ds={class:"progress-track"},qs={class:"progress-value"},Us={class:"flex flex-wrap items-center gap-2 text-xs text-gray-600 dark:text-gray-300"},Es={key:0,class:"font-medium text-indigo-600 dark:text-indigo-400"},Ns={key:1,class:"mt-3"},Os={key:0,class:"space-y-2"},Fs={class:"quota-header"},Ws={class:"quota-percent"},Vs={class:"progress-track"},zs={class:"quota-foot"},Bs={key:1,class:"rounded-xl bg-gray-100 px-3 py-2 text-xs text-gray-500 dark:bg-gray-800 dark:text-gray-300"},Gs={__name:"StatsOverview",setup(E){const K=ge(),{statsData:i,statsPeriod:_,currentPeriodData:g,multiKeyMode:v,aggregatedStats:h,individualStats:$,invalidKeys:M}=ce(K),L=j(()=>!$.value||$.value.length===0?[]:[...$.value].sort((r,s)=>{var m,A;return(((m=s.usage)==null?void 0:m.allTokens)||0)-(((A=r.usage)==null?void 0:A.allTokens)||0)}).slice(0,3)),w=j(()=>{var r;return((r=i.value)==null?void 0:r.serviceRates)&&Object.keys(i.value.serviceRates).length>0}),u=r=>{var m;return!h.value||!h.value.usage.allTokens?0:((((m=r.usage)==null?void 0:m.allTokens)||0)/h.value.usage.allTokens*100).toFixed(1)},x=r=>r?new Date(r).toLocaleString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}):"",f=r=>r?new Date(r){if(!r)return!1;const A=(new Date(r)-new Date)/(1e3*60*60*24);return A>0&&A<=7},n=r=>{const s={claude:"Claude",gemini:"Gemini",codex:"Codex",droid:"Droid",bedrock:"Bedrock",azure:"Azure",ccr:"CCR"};if(!r)return"全部服务";let m=r;if(typeof r=="string"){if(r==="all"||r==="[]")return"全部服务";try{m=JSON.parse(r)}catch{return s[r]||r}}return Array.isArray(m)&&m.length===0?"全部服务":Array.isArray(m)?m.map(A=>s[A]||A).join(", "):s[r]||r},C=j(()=>{var m,A;const r=(A=(m=i.value)==null?void 0:m.accounts)==null?void 0:A.details;if(!r)return[];const s=[];return r.claude&&r.claude.accountType==="dedicated"&&s.push({key:"claude",...r.claude}),r.openai&&r.openai.accountType==="dedicated"&&s.push({key:"openai",...r.openai}),s}),P=j(()=>{const r=C.value.length;return r<=1?"md:grid-cols-1 lg:grid-cols-1":r===2?"md:grid-cols-2":"md:grid-cols-2 xl:grid-cols-3"}),D=r=>r?r.platform==="openai"?"OpenAI 专属账号":"Claude 专属账号":"专属账号",U=r=>{if(!r||r<=0)return"";const s=Math.floor(r),m=Math.floor(s/1440),A=Math.floor(s%1440/60),N=s%60;return m>0?A>0?`${m}天${A}小时`:`${m}天`:A>0?N>0?`${A}小时${N}分钟`:`${A}小时`:`${N}分钟`},F=r=>{if(!r)return{text:"状态未知",class:"text-gray-400"};if(r.isRateLimited){const s=U(r.minutesRemaining);return{text:`限流中${s?` · 剩余约 ${s}`:""}`,class:"text-red-500 dark:text-red-400"}}return{text:"未限流",class:"text-green-600 dark:text-emerald-400"}},Q=(r,s)=>{if(!r||!s)return"暂无时间窗口信息";const m=new Date(r),A=new Date(s),N=B=>`${`${B.getHours()}`.padStart(2,"0")}:${`${B.getMinutes()}`.padStart(2,"0")}`;return`${N(m)} - ${N(A)}`},W=r=>{if(!r||r<=0)return"";const s=Math.floor(r/60),m=r%60;return s>0?`${s}小时${m}分钟`:`${m}分钟`},G=(r,s)=>{var A;if(!r)return"bg-gradient-to-r from-blue-500 to-indigo-500";if((A=s==null?void 0:s.rateLimitStatus)!=null&&A.isRateLimited)return"bg-gradient-to-r from-red-500 to-red-600";const m=String(r).toLowerCase();return m==="rejected"?"bg-gradient-to-r from-red-500 to-red-600":m==="allowed_warning"?"bg-gradient-to-r from-yellow-500 to-orange-500":"bg-gradient-to-r from-blue-500 to-indigo-500"},te=r=>{if(!r)return null;const s=typeof r.usedPercent=="number"&&!Number.isNaN(r.usedPercent)?r.usedPercent:null,m=typeof r.resetAfterSeconds=="number"&&!Number.isNaN(r.resetAfterSeconds)?r.resetAfterSeconds:null,A=typeof r.remainingSeconds=="number"?r.remainingSeconds:null,N=r.resetAt?Date.parse(r.resetAt):null;return m!==null&&(A!==null&&A<=0||N!==null&&!Number.isNaN(N)&&Date.now()>=N)?0:s===null?null:Math.max(0,Math.min(100,s))},ne=r=>{const s=te(r);return s===null?"bg-gradient-to-r from-gray-300 to-gray-400":s>=90?"bg-gradient-to-r from-red-500 to-red-600":s>=75?"bg-gradient-to-r from-yellow-500 to-orange-500":"bg-gradient-to-r from-emerald-500 to-teal-500"},oe=r=>{const s=te(r);return s===null?"0%":`${s}%`},Y=r=>{const s=te(r);return s===null?"--":`${s.toFixed(1)}%`},Z=r=>{if(!r)return"--";let s=r.remainingSeconds;if(s==null&&(s=r.resetAfterSeconds),s==null||Number.isNaN(Number(s)))return"--";s=Math.max(0,Math.floor(Number(s)));const m=Math.floor(s/86400),A=Math.floor(s%86400/3600),N=Math.floor(s%3600/60),B=s%60;return m>0?A>0?`${m}天${A}小时`:`${m}天`:A>0?N>0?`${A}小时${N}分钟`:`${A}小时`:N>0?`${N}分钟`:`${B}秒`},H=r=>r==="secondary"?"周限":"5h";return(r,s)=>(a(),l("div",Kt,[e("div",Mt,[e("div",Pt,[e("header",Rt,[e("i",{class:R(["header-icon",t(v)?"fas fa-layer-group text-purple-500":"fas fa-info-circle text-blue-500"])},null,2),e("h3",Lt,o(t(v)?"批量查询概要":"API Key 信息"),1)]),t(v)&&t(h)?(a(),l("div",It,[e("div",jt,[s[1]||(s[1]=e("p",{class:"info-label"},"查询 Keys 数",-1)),e("p",Dt,o(t(h).totalKeys)+" 个",1)]),e("div",qt,[s[3]||(s[3]=e("p",{class:"info-label"},"有效 Keys 数",-1)),e("p",Ut,[s[2]||(s[2]=e("i",{class:"fas fa-check-circle mr-1"},null,-1)),k(o(t(h).activeKeys)+" 个 ",1)])]),t(M).length>0?(a(),l("div",Et,[s[5]||(s[5]=e("p",{class:"info-label"},"无效 Keys 数",-1)),e("p",Nt,[s[4]||(s[4]=e("i",{class:"fas fa-times-circle mr-1"},null,-1)),k(o(t(M).length)+" 个 ",1)])])):b("",!0),e("div",Ot,[s[6]||(s[6]=e("p",{class:"info-label"},"总请求数",-1)),e("p",Ft,o(t(O)(t(h).usage.requests)),1)]),e("div",Wt,[s[7]||(s[7]=e("p",{class:"info-label"},"总 Token 数",-1)),e("p",Vt,o(t(O)(t(h).usage.allTokens)),1)]),e("div",zt,[s[8]||(s[8]=e("p",{class:"info-label"},"总费用",-1)),e("p",Bt,o(t(h).usage.formattedCost),1)]),t($).length>1?(a(),l("div",Gt,[s[9]||(s[9]=e("p",{class:"info-label"},"Top 3 贡献占比",-1)),e("div",Ht,[(a(!0),l(X,null,se(L.value,m=>(a(),l("div",{key:m.apiId,class:"contributor-item"},[e("span",Jt,o(m.name),1),e("span",Qt,o(u(m))+"%",1)]))),128))])])):b("",!0)])):(a(),l("div",Yt,[e("div",{class:"info-item cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-700/50",title:"点击复制",onClick:s[0]||(s[0]=m=>t(Ee)(t(i).name))},[s[11]||(s[11]=e("p",{class:"info-label"},"名称",-1)),e("p",Xt,[k(o(t(i).name)+" ",1),s[10]||(s[10]=e("i",{class:"fas fa-copy text-xs text-gray-400"},null,-1))])]),e("div",Zt,[s[12]||(s[12]=e("p",{class:"info-label"},"状态",-1)),e("p",{class:R(["info-value font-semibold",t(i).isActive?"text-green-600 dark:text-emerald-400":"text-red-500 dark:text-red-400"])},[e("i",{class:R(["mr-1",t(i).isActive?"fas fa-check-circle":"fas fa-times-circle"])},null,2),k(" "+o(t(i).isActive?"活跃":"已停用"),1)],2)]),e("div",es,[s[13]||(s[13]=e("p",{class:"info-label"},"权限",-1)),e("p",ts,o(n(t(i).permissions)),1)]),w.value?(a(),l("div",ss,[s[14]||(s[14]=e("p",{class:"info-label"},"服务倍率",-1)),e("div",as,[(a(!0),l(X,null,se(t(i).serviceRates,(m,A)=>(a(),l("span",{key:A,class:"inline-flex items-center rounded-full bg-purple-100 px-2.5 py-0.5 text-xs font-medium text-purple-800 dark:bg-purple-900/30 dark:text-purple-300"},o(A)+": "+o(m)+"x ",1))),128))])])):b("",!0),e("div",rs,[s[15]||(s[15]=e("p",{class:"info-label"},"创建时间",-1)),e("p",ls,o(t(Ye)(t(i).createdAt)),1)]),e("div",ns,[s[20]||(s[20]=e("p",{class:"info-label"},"过期时间",-1)),e("div",os,[t(i).expirationMode==="activation"&&!t(i).isActivated?(a(),l(X,{key:0},[s[16]||(s[16]=e("span",{class:"text-amber-600 dark:text-amber-400"},[e("i",{class:"fas fa-pause-circle mr-1"}),k("未激活 ")],-1)),e("span",is," 首次使用后 "+o(t(i).activationDays||(t(i).activationUnit==="hours"?24:30))+" "+o(t(i).activationUnit==="hours"?"小时":"天")+"过期 ",1)],64)):t(i).expiresAt?(a(),l(X,{key:1},[f(t(i).expiresAt)?(a(),l("span",ds,s[17]||(s[17]=[e("i",{class:"fas fa-exclamation-circle mr-1"},null,-1),k("已过期 ",-1)]))):c(t(i).expiresAt)?(a(),l("span",us,[s[18]||(s[18]=e("i",{class:"fas fa-clock mr-1"},null,-1)),k(o(x(t(i).expiresAt)),1)])):(a(),l("span",cs,o(x(t(i).expiresAt)),1))],64)):(a(),l("span",ms,s[19]||(s[19]=[e("i",{class:"fas fa-infinity mr-1"},null,-1),k("永不过期 ",-1)])))])])]))]),e("div",gs,[e("header",xs,[s[21]||(s[21]=e("i",{class:"header-icon fas fa-chart-bar text-green-500"},null,-1)),s[22]||(s[22]=e("h3",{class:"header-title"},"使用统计概览",-1)),e("span",ys,o(t(_)==="daily"?"今日":"本月"),1)]),e("div",fs,[e("div",ps,[e("p",vs,o(t(O)(t(g).requests)),1),e("p",bs,o(t(_)==="daily"?"今日":"本月")+"请求数",1)]),e("div",ks,[e("p",hs,o(t(O)(t(g).allTokens)),1),e("p",_s,o(t(_)==="daily"?"今日":"本月")+"Token 数",1)]),e("div",ws,[e("p",$s,o(t(g).formattedCost||"$0.000000"),1),e("p",Cs,o(t(_)==="daily"?"今日":"本月")+"费用",1)]),e("div",Ts,[e("p",Ss,o(t(O)(t(g).inputTokens)),1),e("p",As,o(t(_)==="daily"?"今日":"本月")+"输入 Token",1)])])])]),!t(v)&&C.value.length>0?(a(),l("div",Ks,[s[24]||(s[24]=e("header",{class:"section-header"},[e("i",{class:"header-icon fas fa-plug text-indigo-500"}),e("h3",{class:"header-title"},"专属账号运行状态"),e("span",{class:"header-tag"},"实时更新")],-1)),e("div",{class:R(["grid grid-cols-1 gap-4",P.value])},[(a(!0),l(X,null,se(C.value,m=>{var A,N,B,de,re,ie;return a(),l("div",{key:m.id||m.key,class:"account-card"},[e("div",Ms,[e("div",Ps,[e("span",{class:R(["account-icon",m.platform==="claude"?"icon-claude":"icon-openai"])},[e("i",{class:R(m.platform==="claude"?"fas fa-meteor":"fas fa-robot")},null,2)],2),e("div",null,[e("p",Rs,o(D(m)),1),e("p",Ls,o(m.platform==="claude"?"会话窗口":"额度窗口"),1)])]),F(m.rateLimitStatus)?(a(),l("div",{key:0,class:R(["rate-badge",F(m.rateLimitStatus).class])},[s[23]||(s[23]=e("i",{class:"fas fa-tachometer-alt mr-1"},null,-1)),k(" "+o(F(m.rateLimitStatus).text),1)],2)):b("",!0)]),m.platform==="claude"?(a(),l("div",Is,[e("div",js,[e("div",Ds,[e("div",{class:R(["progress-bar",G((A=m.sessionWindow)==null?void 0:A.sessionWindowStatus,m)]),style:be({width:`${Math.min(100,Math.max(0,((N=m.sessionWindow)==null?void 0:N.progress)||0))}%`})},null,6)]),e("span",qs,o(Math.min(100,Math.max(0,Math.round(((B=m.sessionWindow)==null?void 0:B.progress)||0))))+"% ",1)]),e("div",Us,[e("span",null,o(Q((de=m.sessionWindow)==null?void 0:de.windowStart,(re=m.sessionWindow)==null?void 0:re.windowEnd)),1),((ie=m.sessionWindow)==null?void 0:ie.remainingTime)>0?(a(),l("span",Es," 剩余 "+o(W(m.sessionWindow.remainingTime)),1)):b("",!0)])])):m.platform==="openai"?(a(),l("div",Ns,[m.codexUsage?(a(),l("div",Os,[(a(),l(X,null,se(["primary","secondary"],J=>{var ae,ue,ye,fe;return e("div",{key:`${m.key}-${J}`,class:"quota-row"},[e("div",Fs,[e("span",{class:R(["quota-tag",J==="primary"?"tag-indigo":"tag-blue"])},o(H(J)),3),e("span",Ws,o(Y((ae=m.codexUsage)==null?void 0:ae[J])),1)]),e("div",Vs,[e("div",{class:R(["progress-bar",ne((ue=m.codexUsage)==null?void 0:ue[J])]),style:be({width:oe((ye=m.codexUsage)==null?void 0:ye[J])})},null,6)]),e("div",zs," 重置剩余 "+o(Z((fe=m.codexUsage)==null?void 0:fe[J])),1)])}),64))])):(a(),l("p",Bs," 暂无额度使用数据 "))])):b("",!0)])}),128))],2)])):b("",!0)]))}},Hs=me(Gs,[["__scopeId","data-v-99d8ab54"]]),Js={class:"card p-3 sm:p-4 md:p-6"},Qs={class:"mb-2 flex flex-col text-base font-bold text-gray-900 dark:text-gray-100 sm:mb-3 sm:flex-row sm:items-center sm:text-lg md:mb-4 md:text-xl"},Ys={class:"text-xs font-normal text-gray-600 dark:text-gray-400 sm:ml-2 md:text-sm"},Xs={class:"space-y-2 md:space-y-3"},Zs={class:"flex items-center justify-between"},ea={class:"text-sm font-medium text-gray-900 dark:text-gray-100 md:text-base"},ta={class:"flex items-center justify-between"},sa={class:"text-sm font-medium text-gray-900 dark:text-gray-100 md:text-base"},aa={class:"flex items-center justify-between"},ra={class:"text-sm font-medium text-gray-900 dark:text-gray-100 md:text-base"},la={class:"flex items-center justify-between"},na={class:"text-sm font-medium text-gray-900 dark:text-gray-100 md:text-base"},oa={class:"mt-3 border-t border-gray-200 pt-3 dark:border-gray-700 md:mt-4 md:pt-4"},ia={class:"flex items-center justify-between font-bold text-gray-900 dark:text-gray-100"},da={class:"text-sm md:text-base"},ua={class:"text-lg md:text-xl"},ca={__name:"TokenDistribution",setup(E){const K=ge(),{statsPeriod:i,currentPeriodData:_}=ce(K);return(g,v)=>(a(),l("div",Js,[e("h3",Qs,[v[0]||(v[0]=e("span",{class:"flex items-center"},[e("i",{class:"fas fa-coins mr-2 text-sm text-yellow-500 md:mr-3 md:text-base"}),k(" Token 使用分布 ")],-1)),e("span",Ys,"("+o(t(i)==="daily"?"今日":"本月")+")",1)]),e("div",Xs,[e("div",Zs,[v[1]||(v[1]=e("span",{class:"flex items-center text-sm text-gray-600 dark:text-gray-400 md:text-base"},[e("i",{class:"fas fa-arrow-right mr-1 text-xs text-green-500 md:mr-2 md:text-sm"}),k(" 输入 Token ")],-1)),e("span",ea,o(t(O)(t(_).inputTokens)),1)]),e("div",ta,[v[2]||(v[2]=e("span",{class:"flex items-center text-sm text-gray-600 dark:text-gray-400 md:text-base"},[e("i",{class:"fas fa-arrow-left mr-1 text-xs text-blue-500 md:mr-2 md:text-sm"}),k(" 输出 Token ")],-1)),e("span",sa,o(t(O)(t(_).outputTokens)),1)]),e("div",aa,[v[3]||(v[3]=e("span",{class:"flex items-center text-sm text-gray-600 dark:text-gray-400 md:text-base"},[e("i",{class:"fas fa-save mr-1 text-xs text-purple-500 md:mr-2 md:text-sm"}),k(" 缓存创建 Token ")],-1)),e("span",ra,o(t(O)(t(_).cacheCreateTokens)),1)]),e("div",la,[v[4]||(v[4]=e("span",{class:"flex items-center text-sm text-gray-600 dark:text-gray-400 md:text-base"},[e("i",{class:"fas fa-download mr-1 text-xs text-orange-500 md:mr-2 md:text-sm"}),k(" 缓存读取 Token ")],-1)),e("span",na,o(t(O)(t(_).cacheReadTokens)),1)])]),e("div",oa,[e("div",ia,[e("span",da,o(t(i)==="daily"?"今日":"本月")+"总计",1),e("span",ua,o(t(O)(t(_).allTokens)),1)])])]))}},ma=me(ca,[["__scopeId","data-v-f3f6aa17"]]),ga={class:"flex h-full flex-col gap-3 sm:gap-4 md:gap-6"},xa={class:"card flex h-full flex-col p-3 sm:p-4 md:p-6"},ya={class:"mb-2 flex items-center text-base font-bold text-gray-900 dark:text-gray-100 sm:mb-3 sm:text-lg md:mb-4 md:text-xl"},fa={key:0,class:"space-y-4"},pa={class:"rounded-lg bg-gradient-to-r from-blue-50 to-indigo-50 p-4 dark:from-blue-900/20 dark:to-indigo-900/20"},va={class:"mb-3 flex items-center justify-between"},ba={class:"rounded-full bg-blue-100 px-2 py-1 text-xs font-semibold text-blue-700 dark:bg-blue-800 dark:text-blue-200"},ka={class:"grid grid-cols-2 gap-3"},ha={class:"text-center"},_a={class:"text-lg font-bold text-gray-900 dark:text-gray-100"},wa={class:"text-center"},$a={class:"text-lg font-bold text-green-600"},Ca={class:"rounded-lg bg-gradient-to-r from-purple-50 to-pink-50 p-4 dark:from-purple-900/20 dark:to-pink-900/20"},Ta={class:"space-y-2"},Sa={class:"flex items-center justify-between"},Aa={class:"text-sm font-medium text-gray-900 dark:text-gray-100"},Ka={class:"flex items-center justify-between"},Ma={class:"text-sm font-medium text-gray-900 dark:text-gray-100"},Pa={class:"flex items-center justify-between"},Ra={class:"text-sm font-medium text-gray-900 dark:text-gray-100"},La={key:0,class:"rounded-lg bg-red-50 p-3 text-sm dark:bg-red-900/20"},Ia={class:"text-red-700 dark:text-red-300"},ja={key:1,class:"space-y-4 md:space-y-5"},Da={class:"mb-2 flex items-center justify-between"},qa={class:"text-xs text-gray-500 dark:text-gray-400 md:text-sm"},Ua={key:0},Ea={key:1,class:"flex items-center gap-1"},Na={key:0,class:"h-2 w-full rounded-full bg-gray-200 dark:bg-gray-700"},Oa={key:1,class:"h-2 w-full rounded-full bg-gray-200"},Fa={class:"mb-2 flex items-center justify-between"},Wa={class:"text-xs text-gray-500 dark:text-gray-400 md:text-sm"},Va={key:0},za={key:1,class:"flex items-center gap-1"},Ba={key:0,class:"h-2 w-full rounded-full bg-gray-200 dark:bg-gray-700"},Ga={key:1,class:"h-2 w-full rounded-full bg-gray-200"},Ha={key:0},Ja={class:"mb-2 flex items-center justify-between"},Qa={class:"text-xs text-gray-500 dark:text-gray-400 md:text-sm"},Ya={class:"h-2 w-full rounded-full bg-gray-200 dark:bg-gray-700"},Xa={key:1},Za={class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},er={key:0},tr={key:1},sr={key:2},ar={class:"space-y-4 border-t border-gray-100 pt-3 dark:border-gray-700"},rr={class:"flex items-center justify-between"},lr={class:"text-sm font-medium text-gray-900 md:text-base"},nr={key:0},or={key:1,class:"flex items-center gap-1"},ir={class:"flex items-center justify-between"},dr={class:"text-sm font-medium text-gray-900 md:text-base"},ur={key:0,class:"text-orange-600"},cr={key:1,class:"text-green-600"},mr={class:"space-y-2"},gr={class:"flex items-center justify-between"},xr={class:"text-sm font-medium text-gray-900 md:text-base"},yr={key:0,class:"text-orange-600"},fr={key:1,class:"text-green-600"},pr={key:0,class:"flex flex-wrap gap-2 rounded-lg bg-blue-50 p-2 dark:bg-blue-900/20 md:p-3"},vr={key:0,class:"card !overflow-visible p-4 md:p-6"},br={class:"rounded-lg border border-amber-200 bg-amber-50 p-3 dark:border-amber-800 dark:bg-amber-900/20 md:p-4"},kr={class:"max-h-64 space-y-1 overflow-y-auto pr-1 md:max-h-80 md:space-y-2"},hr={class:"break-all text-gray-800 dark:text-gray-200"},_r={__name:"LimitConfig",setup(E){const K=ge(),{statsData:i,multiKeyMode:_,aggregatedStats:g,invalidKeys:v}=ce(K),h=j(()=>{var n;const c=(n=i.value)==null?void 0:n.restrictions;return c?c.enableModelRestriction===!0&&Array.isArray(c.restrictedModels)&&c.restrictedModels.length>0:!1}),$=j(()=>{var n;const c=(n=i.value)==null?void 0:n.restrictions;return c?c.enableClientRestriction===!0&&Array.isArray(c.allowedClients)&&c.allowedClients.length>0:!1}),M=()=>{if(!i.value.limits.dailyCostLimit||i.value.limits.dailyCostLimit===0)return 0;const c=i.value.limits.currentDailyCost/i.value.limits.dailyCostLimit*100;return Math.min(c,100)},L=()=>{const c=M();return c>=100?"bg-red-500":c>=80?"bg-yellow-500":"bg-green-500"},w=()=>{if(!i.value.limits.totalCostLimit||i.value.limits.totalCostLimit===0)return 0;const c=i.value.limits.currentTotalCost/i.value.limits.totalCostLimit*100;return Math.min(c,100)},u=()=>{const c=w();return c>=100?"bg-red-500":c>=80?"bg-yellow-500":"bg-blue-500"},x=()=>{if(!i.value.limits.weeklyOpusCostLimit||i.value.limits.weeklyOpusCostLimit===0)return 0;const c=i.value.limits.weeklyOpusCost/i.value.limits.weeklyOpusCostLimit*100;return Math.min(c,100)},f=()=>{const c=x();return c>=100?"bg-red-500":c>=80?"bg-yellow-500":"bg-indigo-500"};return(c,n)=>{var C;return a(),l("div",ga,[e("div",xa,[e("h3",ya,[n[0]||(n[0]=e("i",{class:"fas fa-shield-alt mr-2 text-sm text-red-500 md:mr-3 md:text-base"},null,-1)),k(" "+o(t(_)?"限制配置(聚合查询模式)":"限制配置"),1)]),t(_)&&t(g)?(a(),l("div",fa,[e("div",pa,[e("div",va,[n[1]||(n[1]=e("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"},[e("i",{class:"fas fa-layer-group mr-2 text-blue-500"}),k(" API Keys 概况 ")],-1)),e("span",ba,o(t(g).activeKeys)+"/"+o(t(g).totalKeys),1)]),e("div",ka,[e("div",ha,[e("div",_a,o(t(g).totalKeys),1),n[2]||(n[2]=e("div",{class:"text-xs text-gray-600 dark:text-gray-400"},"总计 Keys",-1))]),e("div",wa,[e("div",$a,o(t(g).activeKeys),1),n[3]||(n[3]=e("div",{class:"text-xs text-gray-600 dark:text-gray-400"},"激活 Keys",-1))])])]),e("div",Ca,[n[7]||(n[7]=e("div",{class:"mb-3 flex items-center"},[e("i",{class:"fas fa-chart-pie mr-2 text-purple-500"}),e("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"},"聚合统计摘要")],-1)),e("div",Ta,[e("div",Sa,[n[4]||(n[4]=e("span",{class:"text-xs text-gray-600 dark:text-gray-400"},[e("i",{class:"fas fa-database mr-1 text-gray-400"}),k(" 总请求数 ")],-1)),e("span",Aa,o(t(O)(t(g).usage.requests)),1)]),e("div",Ka,[n[5]||(n[5]=e("span",{class:"text-xs text-gray-600 dark:text-gray-400"},[e("i",{class:"fas fa-coins mr-1 text-yellow-500"}),k(" 总 Tokens ")],-1)),e("span",Ma,o(t(O)(t(g).usage.allTokens)),1)]),e("div",Pa,[n[6]||(n[6]=e("span",{class:"text-xs text-gray-600 dark:text-gray-400"},[e("i",{class:"fas fa-dollar-sign mr-1 text-green-500"}),k(" 总费用 ")],-1)),e("span",Ra,o(t(g).usage.formattedCost),1)])])]),t(v)&&t(v).length>0?(a(),l("div",La,[n[8]||(n[8]=e("i",{class:"fas fa-exclamation-triangle mr-2 text-red-600 dark:text-red-400"},null,-1)),e("span",Ia,o(t(v).length)+" 个无效的 API Key ",1)])):b("",!0),n[9]||(n[9]=e("div",{class:"rounded-lg bg-gray-50 p-3 text-xs text-gray-600 dark:bg-gray-800 dark:text-gray-400"},[e("i",{class:"fas fa-info-circle mr-1"}),k(" 每个 API Key 有独立的限制设置,聚合模式下不显示单个限制配置 ")],-1))])):b("",!0),!t(_)&&((C=t(i))!=null&&C.limits)?(a(),l("div",ja,[e("div",null,[e("div",Da,[n[11]||(n[11]=e("span",{class:"text-sm font-medium text-gray-600 dark:text-gray-400 md:text-base"},"每日费用限制",-1)),e("span",qa,[t(i).limits.dailyCostLimit>0?(a(),l("span",Ua," $"+o(t(i).limits.currentDailyCost.toFixed(4))+" / $"+o(t(i).limits.dailyCostLimit.toFixed(2)),1)):(a(),l("span",Ea,[k(" $"+o(t(i).limits.currentDailyCost.toFixed(4))+" / ",1),n[10]||(n[10]=e("i",{class:"fas fa-infinity"},null,-1))]))])]),t(i).limits.dailyCostLimit>0?(a(),l("div",Na,[e("div",{class:R(["h-2 rounded-full transition-all duration-300",L()]),style:be({width:M()+"%"})},null,6)])):(a(),l("div",Oa,n[12]||(n[12]=[e("div",{class:"h-2 rounded-full bg-green-500",style:{width:"0%"}},null,-1)])))]),e("div",null,[e("div",Fa,[n[14]||(n[14]=e("span",{class:"text-sm font-medium text-gray-600 dark:text-gray-400 md:text-base"},"总费用限制",-1)),e("span",Wa,[t(i).limits.totalCostLimit>0?(a(),l("span",Va," $"+o(t(i).limits.currentTotalCost.toFixed(4))+" / $"+o(t(i).limits.totalCostLimit.toFixed(2)),1)):(a(),l("span",za,[k(" $"+o(t(i).limits.currentTotalCost.toFixed(4))+" / ",1),n[13]||(n[13]=e("i",{class:"fas fa-infinity"},null,-1))]))])]),t(i).limits.totalCostLimit>0?(a(),l("div",Ba,[e("div",{class:R(["h-2 rounded-full transition-all duration-300",u()]),style:be({width:w()+"%"})},null,6)])):(a(),l("div",Ga,n[15]||(n[15]=[e("div",{class:"h-2 rounded-full bg-blue-500",style:{width:"0%"}},null,-1)])))]),t(i).limits.weeklyOpusCostLimit>0?(a(),l("div",Ha,[e("div",Ja,[n[16]||(n[16]=e("span",{class:"text-sm font-medium text-gray-600 dark:text-gray-400 md:text-base"},"Claude 模型周费用限制",-1)),e("span",Qa," $"+o(t(i).limits.weeklyOpusCost.toFixed(4))+" / $"+o(t(i).limits.weeklyOpusCostLimit.toFixed(2)),1)]),e("div",Ya,[e("div",{class:R(["h-2 rounded-full transition-all duration-300",f()]),style:be({width:x()+"%"})},null,6)])])):b("",!0),t(i).limits.rateLimitWindow>0&&(t(i).limits.rateLimitRequests>0||t(i).limits.tokenLimit>0||t(i).limits.rateLimitCost>0)?(a(),l("div",Xa,[ee(nt,{"cost-limit":t(i).limits.rateLimitCost,"current-cost":t(i).limits.currentWindowCost,"current-requests":t(i).limits.currentWindowRequests,"current-tokens":t(i).limits.currentWindowTokens,label:"时间窗口限制","rate-limit-window":t(i).limits.rateLimitWindow,"request-limit":t(i).limits.rateLimitRequests,"show-progress":!0,"show-tooltip":!0,"token-limit":t(i).limits.tokenLimit,"window-end-time":t(i).limits.windowEndTime,"window-remaining-seconds":t(i).limits.windowRemainingSeconds,"window-start-time":t(i).limits.windowStartTime},null,8,["cost-limit","current-cost","current-requests","current-tokens","rate-limit-window","request-limit","token-limit","window-end-time","window-remaining-seconds","window-start-time"]),e("div",Za,[n[17]||(n[17]=e("i",{class:"fas fa-info-circle mr-1"},null,-1)),t(i).limits.rateLimitCost>0?(a(),l("span",er,' 请求次数和费用限制为"或"的关系,任一达到限制即触发限流 ')):t(i).limits.tokenLimit>0?(a(),l("span",tr,' 请求次数和Token使用量为"或"的关系,任一达到限制即触发限流 ')):(a(),l("span",sr," 仅限制请求次数 "))])])):b("",!0),e("div",ar,[e("div",rr,[n[19]||(n[19]=e("span",{class:"text-sm text-gray-600 dark:text-gray-400 md:text-base"},"并发限制",-1)),e("span",lr,[t(i).limits.concurrencyLimit>0?(a(),l("span",nr,o(t(i).limits.concurrencyLimit),1)):(a(),l("span",or,n[18]||(n[18]=[e("i",{class:"fas fa-infinity text-gray-400"},null,-1)])))])]),e("div",ir,[n[22]||(n[22]=e("span",{class:"text-sm text-gray-600 dark:text-gray-400 md:text-base"},"模型限制",-1)),e("span",dr,[h.value?(a(),l("span",ur,[n[20]||(n[20]=e("i",{class:"fas fa-exclamation-triangle mr-1 text-xs md:text-sm"},null,-1)),k(" 限制 "+o(t(i).restrictions.restrictedModels.length)+" 个模型 ",1)])):(a(),l("span",cr,n[21]||(n[21]=[e("i",{class:"fas fa-check-circle mr-1 text-xs md:text-sm"},null,-1),k(" 允许所有模型 ",-1)])))])]),e("div",mr,[e("div",gr,[n[25]||(n[25]=e("span",{class:"text-sm text-gray-600 dark:text-gray-400 md:text-base"},"客户端限制",-1)),e("span",xr,[$.value?(a(),l("span",yr,[n[23]||(n[23]=e("i",{class:"fas fa-exclamation-triangle mr-1 text-xs md:text-sm"},null,-1)),k(" 限 "+o(t(i).restrictions.allowedClients.length)+" 种客户端使用 ",1)])):(a(),l("span",fr,n[24]||(n[24]=[e("i",{class:"fas fa-check-circle mr-1 text-xs md:text-sm"},null,-1),k(" 允许所有客户端 ",-1)])))])]),$.value?(a(),l("div",pr,[(a(!0),l(X,null,se(t(i).restrictions.allowedClients,P=>(a(),l("span",{key:P,class:"flex items-center gap-1 rounded-full bg-white px-2 py-1 text-xs text-blue-700 shadow-sm dark:bg-gray-800 dark:text-blue-300 md:text-sm"},[n[26]||(n[26]=e("i",{class:"fas fa-id-badge"},null,-1)),k(" "+o(P),1)]))),128))])):b("",!0)])])])):b("",!0)]),h.value?(a(),l("div",vr,[n[30]||(n[30]=e("h3",{class:"mb-3 flex items-center text-lg font-bold text-gray-900 dark:text-gray-100 md:mb-4 md:text-xl"},[e("i",{class:"fas fa-list-alt mr-2 text-sm text-amber-500 md:mr-3 md:text-base"}),k(" 详细限制信息 ")],-1)),e("div",br,[n[28]||(n[28]=e("h4",{class:"mb-2 flex items-center text-sm font-bold text-amber-800 dark:text-amber-300 md:mb-3 md:text-base"},[e("i",{class:"fas fa-robot mr-1 text-xs md:mr-2 md:text-sm"}),k(" 受限模型列表 ")],-1)),e("div",kr,[(a(!0),l(X,null,se(t(i).restrictions.restrictedModels,P=>(a(),l("div",{key:P,class:"rounded border border-amber-200 bg-white px-2 py-1 text-xs dark:border-amber-700 dark:bg-gray-800 md:px-3 md:py-2 md:text-sm"},[n[27]||(n[27]=e("i",{class:"fas fa-ban mr-1 text-xs text-red-500 md:mr-2"},null,-1)),e("span",hr,o(P),1)]))),128))]),n[29]||(n[29]=e("p",{class:"mt-2 text-xs text-amber-700 dark:text-amber-400 md:mt-3"},[e("i",{class:"fas fa-info-circle mr-1"}),k(" 此 API Key 不能访问以上列出的模型 ")],-1))])])):b("",!0)])}}},wr=me(_r,[["__scopeId","data-v-e03e5fe5"]]),$r={class:"card h-full p-4 md:p-6"},Cr={class:"mb-3 flex flex-col text-lg font-bold text-gray-900 dark:text-gray-100 sm:flex-row sm:items-center md:mb-4 md:text-xl"},Tr={class:"text-xs font-normal text-gray-600 dark:text-gray-400 sm:ml-2 md:text-sm"},Sr={key:0,class:"space-y-2 md:space-y-3"},Ar={class:"mb-1 flex items-center justify-between text-sm"},Kr={class:"truncate font-medium text-gray-700 dark:text-gray-300"},Mr={class:"text-xs text-gray-600 dark:text-gray-400"},Pr={class:"h-2 w-full rounded-full bg-gray-200 dark:bg-gray-700"},Rr={class:"mt-1 flex items-center justify-between text-xs text-gray-500 dark:text-gray-400"},Lr={key:0,class:"border-t border-gray-200 pt-2 dark:border-gray-700"},Ir={class:"flex items-center justify-between text-sm text-gray-600 dark:text-gray-400"},jr={key:1,class:"flex h-32 items-center justify-center text-sm text-gray-500 dark:text-gray-400"},Dr={key:2,class:"flex h-32 items-center justify-center text-sm text-gray-500 dark:text-gray-400"},qr={__name:"AggregatedStatsCard",setup(E){const K=ge(),{aggregatedStats:i,individualStats:_,statsPeriod:g,multiKeyMode:v}=ce(K),h=x=>x?g.value==="daily"?x.dailyUsage||x.usage:x.monthlyUsage||x.usage:null,$=j(()=>!_.value||_.value.length===0?[]:[..._.value].sort((x,f)=>{const c=h(x),n=h(f);return((n==null?void 0:n.cost)||0)-((c==null?void 0:c.cost)||0)}).slice(0,5)),M=j(()=>_.value?Math.max(0,_.value.length-5):0),L=j(()=>{var n,C;if(!_.value||!i.value)return 0;const x=$.value.reduce((P,D)=>{const U=h(D);return P+((U==null?void 0:U.cost)||0)},0),f=g.value==="daily"?((n=i.value.dailyUsage)==null?void 0:n.cost)||0:((C=i.value.monthlyUsage)==null?void 0:C.cost)||0;if(f===0)return 0;const c=f-x;return Math.max(0,Math.round(c/f*100))}),w=x=>{var C,P;if(!i.value)return 0;const f=g.value==="daily"?((C=i.value.dailyUsage)==null?void 0:C.cost)||0:((P=i.value.monthlyUsage)==null?void 0:P.cost)||0;if(f===0)return 0;const c=h(x),n=((c==null?void 0:c.cost)||0)/f*100;return Math.round(n)},u=x=>["bg-blue-500","bg-green-500","bg-purple-500","bg-yellow-500","bg-pink-500"][x]||"bg-gray-400";return(x,f)=>(a(),l("div",$r,[e("h3",Cr,[f[0]||(f[0]=e("span",{class:"flex items-center"},[e("i",{class:"fas fa-chart-pie mr-2 text-sm text-orange-500 md:mr-3 md:text-base"}),k(" 使用占比 ")],-1)),e("span",Tr,"("+o(t(g)==="daily"?"今日":"本月")+")",1)]),t(i)&&t(_).length>0?(a(),l("div",Sr,[(a(!0),l(X,null,se($.value,(c,n)=>{var C,P;return a(),l("div",{key:c.apiId,class:"relative"},[e("div",Ar,[e("span",Kr,o(c.name||`Key ${n+1}`),1),e("span",Mr,o(w(c))+"% ",1)]),e("div",Pr,[e("div",{class:R(["h-2 rounded-full transition-all duration-300",u(n)]),style:be({width:w(c)+"%"})},null,6)]),e("div",Rr,[e("span",null,o(t(O)(((C=h(c))==null?void 0:C.requests)||0))+"次",1),e("span",null,o(((P=h(c))==null?void 0:P.formattedCost)||"$0.00"),1)])])}),128)),M.value>0?(a(),l("div",Lr,[e("div",Ir,[e("span",null,"其他 "+o(M.value)+" 个Keys",1),e("span",null,o(L.value)+"%",1)])])):b("",!0)])):t(v)?(a(),l("div",Dr,f[2]||(f[2]=[e("i",{class:"fas fa-chart-pie mr-2"},null,-1),k(" 暂无数据 ",-1)]))):(a(),l("div",jr,f[1]||(f[1]=[e("div",{class:"text-center"},[e("i",{class:"fas fa-chart-pie mb-2 text-2xl"}),e("p",null,"使用占比仅在多Key查询时显示")],-1)])))]))}},Ur=me(qr,[["__scopeId","data-v-37821008"]]),Er={class:"card p-3 sm:p-4 md:p-6"},Nr={class:"mb-2 sm:mb-3 md:mb-4"},Or={class:"flex flex-col text-base font-bold text-gray-900 dark:text-gray-100 sm:flex-row sm:items-center sm:text-lg md:text-xl"},Fr={class:"text-xs font-normal text-gray-600 dark:text-gray-400 sm:ml-2 md:text-sm"},Wr={key:0,class:"py-6 text-center md:py-8"},Vr={key:1,class:"space-y-2"},zr={class:"flex flex-col gap-1 sm:flex-row sm:items-center sm:justify-between"},Br={class:"flex flex-col gap-1 sm:flex-row sm:items-center sm:gap-3"},Gr=["onClick"],Hr={class:"flex flex-wrap gap-x-2 text-xs text-gray-500 dark:text-gray-400"},Jr={key:0},Qr={key:1},Yr={class:"flex-shrink-0 text-xs sm:text-sm"},Xr={class:"ml-1 font-semibold text-green-600"},Zr={class:"ml-1 font-semibold text-amber-600 dark:text-amber-400"},el={key:2,class:"py-6 text-center text-gray-500 dark:text-gray-400 md:py-8"},tl={class:"text-sm md:text-base"},sl={__name:"ModelUsageStats",props:{period:{type:String,default:"daily",validator:E=>["daily","monthly","alltime"].includes(E)}},setup(E){const K=E,i=ge(),{dailyModelStats:_,monthlyModelStats:g,alltimeModelStats:v,modelStatsLoading:h,serviceRates:$}=ce(i),M=j(()=>K.period==="daily"?_.value:K.period==="monthly"?g.value:K.period==="alltime"?v.value:[]),L=j(()=>h.value),w=j(()=>K.period==="daily"?"今日":K.period==="monthly"?"本月":K.period==="alltime"?"所有时间":""),u=c=>Ee(c,"模型名称已复制"),x=c=>{if(!c)return"claude";const n=c.toLowerCase();return n.includes("claude")||n.includes("sonnet")||n.includes("opus")||n.includes("haiku")?"claude":n.includes("gpt")||n.includes("o1")||n.includes("o3")||n.includes("o4")?"codex":n.includes("gemini")?"gemini":n.includes("droid")||n.includes("factory")?"droid":n.includes("bedrock")||n.includes("amazon")?"bedrock":n.includes("azure")?"azure":"claude"},f=c=>{var U,F,Q;if(!c.isLegacy&&((U=c.costs)==null?void 0:U.rated)!==void 0){const W=c.costs.rated;return W>=1?"$"+W.toFixed(2):W>=.01?"$"+W.toFixed(4):"$"+W.toFixed(6)}const n=((F=c.costs)==null?void 0:F.total)||0;if(!n||!((Q=$.value)!=null&&Q.rates))return"$0.00";const C=x(c.model),P=$.value.rates[C]||1,D=n*P;return D>=1?"$"+D.toFixed(2):D>=.01?"$"+D.toFixed(4):"$"+D.toFixed(6)};return(c,n)=>(a(),l("div",Er,[e("div",Nr,[e("h3",Or,[n[0]||(n[0]=e("span",{class:"flex items-center"},[e("i",{class:"fas fa-robot mr-2 text-sm text-indigo-500 md:mr-3 md:text-base"}),k(" 模型使用统计 ")],-1)),e("span",Fr,"("+o(w.value)+")",1)])]),L.value?(a(),l("div",Wr,n[1]||(n[1]=[e("i",{class:"fas fa-spinner loading-spinner mb-2 text-xl text-gray-600 dark:text-gray-400 md:text-2xl"},null,-1),e("p",{class:"text-sm text-gray-600 dark:text-gray-400 md:text-base"},"加载模型统计数据中...",-1)]))):M.value.length>0?(a(),l("div",Vr,[(a(!0),l(X,null,se(M.value,(C,P)=>{var D,U;return a(),l("div",{key:P,class:"model-usage-item"},[e("div",zr,[e("div",Br,[e("h4",{class:"cursor-pointer text-sm font-bold text-gray-900 hover:text-indigo-600 dark:text-gray-100 dark:hover:text-indigo-400",title:"点击复制",onClick:F=>u(C.model)},[k(o(C.model)+" ",1),n[2]||(n[2]=e("i",{class:"fas fa-copy ml-1 text-xs text-gray-400"},null,-1))],8,Gr),e("div",Hr,[e("span",null,o(C.requests)+"次",1),e("span",null,"输入:"+o(t(O)(C.inputTokens)),1),e("span",null,"输出:"+o(t(O)(C.outputTokens)),1),C.cacheCreateTokens?(a(),l("span",Jr,"缓存创建:"+o(t(O)(C.cacheCreateTokens)),1)):b("",!0),C.cacheReadTokens?(a(),l("span",Qr,"缓存读取:"+o(t(O)(C.cacheReadTokens)),1)):b("",!0)])]),e("div",Yr,[n[4]||(n[4]=e("span",{class:"text-gray-500"},"官方API",-1)),e("span",Xr,o(((D=C.formatted)==null?void 0:D.total)||"$0.00"),1),(U=t($))!=null&&U.rates?(a(),l(X,{key:0},[n[3]||(n[3]=e("span",{class:"ml-2 text-gray-500"},"计费",-1)),e("span",Zr,o(f(C)),1)],64)):b("",!0)])])])}),128))])):(a(),l("div",el,[n[5]||(n[5]=e("i",{class:"fas fa-chart-pie mb-3 text-2xl md:text-3xl"},null,-1)),e("p",tl,"暂无"+o(w.value)+"模型使用数据",1)]))]))}},we=me(sl,[["__scopeId","data-v-0571e613"]]),al={key:0,class:"card p-3 sm:p-4 md:p-6"},rl={class:"grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-4"},ll={class:"mb-2 flex items-center justify-between"},nl={class:"text-sm font-semibold text-gray-900 dark:text-gray-100"},ol={class:"flex items-center gap-1"},il={class:"rounded-full bg-blue-100 px-2 py-0.5 text-xs font-medium text-blue-700 dark:bg-blue-900/30 dark:text-blue-300",title:"全局倍率"},dl={key:0,class:"rounded-full bg-purple-100 px-2 py-0.5 text-xs font-medium text-purple-700 dark:bg-purple-900/30 dark:text-purple-300",title:"Key倍率"},ul={class:"mb-2 space-y-0.5 text-xs text-gray-600 dark:text-gray-400"},cl={class:"flex justify-between"},ml={class:"text-gray-900 dark:text-gray-200"},gl={class:"flex justify-between"},xl={class:"text-gray-900 dark:text-gray-200"},yl={key:0,class:"flex justify-between"},fl={class:"text-gray-900 dark:text-gray-200"},pl={key:1,class:"flex justify-between"},vl={class:"text-gray-900 dark:text-gray-200"},bl={class:"mb-2 space-y-0.5 border-t border-gray-200 pt-2 text-xs dark:border-gray-700"},kl={class:"flex justify-between"},hl={class:"font-semibold text-green-600 dark:text-green-400"},_l={class:"flex justify-between"},wl={class:"font-semibold text-amber-600 dark:text-amber-400"},$l={key:0,class:"space-y-0.5 border-t border-gray-200 pt-2 text-xs text-gray-500 dark:border-gray-700 dark:text-gray-500"},Cl={class:"flex justify-between"},Tl={class:"flex justify-between"},Sl={key:0,class:"flex justify-between"},Al={key:1,class:"flex justify-between"},Kl={__name:"ServiceCostCards",setup(E){const K=ge(),{modelStats:i,serviceRates:_,keyServiceRates:g,multiKeyMode:v}=ce(K),h={claude:"Claude",codex:"Codex",gemini:"Gemini",droid:"Droid",bedrock:"Bedrock",azure:"Azure",ccr:"CCR"},$=w=>{if(!w)return"claude";const u=w.toLowerCase();return u.includes("claude")||u.includes("sonnet")||u.includes("opus")||u.includes("haiku")?"claude":u.includes("gpt")||u.includes("o1")||u.includes("o3")||u.includes("o4")?"codex":u.includes("gemini")?"gemini":u.includes("droid")||u.includes("factory")?"droid":u.includes("bedrock")||u.includes("amazon")?"bedrock":u.includes("azure")?"azure":"claude"},M=j(()=>{var u,x;if(!((u=_.value)!=null&&u.rates)||!((x=i.value)!=null&&x.length))return[];const w={};return Object.keys(_.value.rates).forEach(f=>{w[f]={inputTokens:0,outputTokens:0,cacheCreateTokens:0,cacheReadTokens:0,realCost:0,ratedCost:0,pricing:null}}),i.value.forEach(f=>{var n,C,P,D;const c=$(f.model);if(w[c]){w[c].inputTokens+=f.inputTokens||0,w[c].outputTokens+=f.outputTokens||0,w[c].cacheCreateTokens+=f.cacheCreateTokens||0,w[c].cacheReadTokens+=f.cacheReadTokens||0;const U=((n=f.costs)==null?void 0:n.real)??((C=f.costs)==null?void 0:C.total)??0;w[c].realCost+=U;const F=_.value.rates[c]||1,Q=v.value?1:((P=g.value)==null?void 0:P[c])??1,W=!f.isLegacy&&((D=f.costs)==null?void 0:D.rated)!==void 0?f.costs.rated:U*F*Q;w[c].ratedCost+=W,!w[c].pricing&&f.pricing&&(w[c].pricing=f.pricing)}}),Object.entries(w).filter(([,f])=>f.inputTokens>0||f.outputTokens>0||f.cacheCreateTokens>0||f.realCost>0).map(([f,c])=>{var D;const n=_.value.rates[f]||1,C=v.value?1:((D=g.value)==null?void 0:D[f])??1,P=c.pricing;return{name:f,label:h[f]||f,globalRate:n,keyRate:C,inputTokens:c.inputTokens,outputTokens:c.outputTokens,cacheCreateTokens:c.cacheCreateTokens,cacheReadTokens:c.cacheReadTokens,officialCost:L(c.realCost),ccCost:L(c.ratedCost),pricing:P?{input:L(P.input),output:L(P.output),cacheCreate:P.cacheCreate?L(P.cacheCreate):null,cacheRead:P.cacheRead?L(P.cacheRead):null}:null}}).sort((f,c)=>c.inputTokens+c.outputTokens-(f.inputTokens+f.outputTokens))}),L=w=>!w||w===0?"$0.00":w>=1?"$"+w.toFixed(2):w>=.01?"$"+w.toFixed(4):"$"+w.toFixed(6);return(w,u)=>t(_)&&t(i).length>0?(a(),l("div",al,[u[10]||(u[10]=e("h3",{class:"mb-2 flex items-center justify-between text-base font-bold text-gray-900 dark:text-gray-100 sm:mb-3 sm:text-lg md:mb-4 md:text-xl"},[e("span",{class:"flex items-center"},[e("i",{class:"fas fa-coins mr-2 text-sm text-amber-500 md:mr-3 md:text-base"}),k(" 服务费用统计 ")]),e("span",{class:"text-xs font-normal text-gray-500 dark:text-gray-400"}," 计费 = 官方费用 × 全局倍率 × Key倍率 ")],-1)),e("div",rl,[(a(!0),l(X,null,se(M.value,x=>(a(),l("div",{key:x.name,class:"rounded-xl border border-gray-200 bg-gray-50 p-3 dark:border-gray-700 dark:bg-gray-800/50"},[e("div",ll,[e("span",nl,o(x.label),1),e("div",ol,[e("span",il," 全局 "+o(x.globalRate)+"x ",1),t(v)?b("",!0):(a(),l("span",dl," Key "+o(x.keyRate)+"x ",1))])]),e("div",ul,[e("div",cl,[u[0]||(u[0]=e("span",null,"输入",-1)),e("span",ml,o(t(O)(x.inputTokens)),1)]),e("div",gl,[u[1]||(u[1]=e("span",null,"输出",-1)),e("span",xl,o(t(O)(x.outputTokens)),1)]),x.cacheCreateTokens?(a(),l("div",yl,[u[2]||(u[2]=e("span",null,"缓存创建",-1)),e("span",fl,o(t(O)(x.cacheCreateTokens)),1)])):b("",!0),x.cacheReadTokens?(a(),l("div",pl,[u[3]||(u[3]=e("span",null,"缓存读取",-1)),e("span",vl,o(t(O)(x.cacheReadTokens)),1)])):b("",!0)]),e("div",bl,[e("div",kl,[u[4]||(u[4]=e("span",{class:"text-gray-600 dark:text-gray-400"},"官方API",-1)),e("span",hl,o(x.officialCost),1)]),e("div",_l,[u[5]||(u[5]=e("span",{class:"text-gray-600 dark:text-gray-400"},"计费费用",-1)),e("span",wl,o(x.ccCost),1)])]),x.pricing?(a(),l("div",$l,[e("div",Cl,[u[6]||(u[6]=e("span",null,"输入",-1)),e("span",null,o(x.pricing.input)+"/M",1)]),e("div",Tl,[u[7]||(u[7]=e("span",null,"输出",-1)),e("span",null,o(x.pricing.output)+"/M",1)]),x.pricing.cacheCreate?(a(),l("div",Sl,[u[8]||(u[8]=e("span",null,"缓存创建",-1)),e("span",null,o(x.pricing.cacheCreate)+"/M",1)])):b("",!0),x.pricing.cacheRead?(a(),l("div",Al,[u[9]||(u[9]=e("span",null,"缓存读取",-1)),e("span",null,o(x.pricing.cacheRead)+"/M",1)])):b("",!0)])):b("",!0)]))),128))])])):b("",!0)}},Ml=me(Kl,[["__scopeId","data-v-79d7a9ef"]]),Pl={key:0,class:"fixed inset-0 z-[1050] flex items-center justify-center bg-gray-900/40 backdrop-blur-sm"},Rl={class:"relative z-10 mx-3 flex w-full max-w-lg flex-col overflow-hidden rounded-2xl border border-gray-200/70 bg-white/95 shadow-2xl ring-1 ring-black/5 transition-all dark:border-gray-700/60 dark:bg-gray-900/95 dark:ring-white/10 sm:mx-4"},Ll={class:"flex items-center justify-between border-b border-gray-100 bg-white/80 px-5 py-4 backdrop-blur dark:border-gray-800 dark:bg-gray-900/80"},Il={class:"flex items-center gap-3"},jl={class:"text-xs text-gray-500 dark:text-gray-400"},Dl=["disabled"],ql={class:"max-h-[70vh] overflow-y-auto px-5 py-4"},Ul={class:"mb-4"},El={class:"relative"},Nl=["value"],Ol={class:"mb-4 space-y-2"},Fl={class:"flex items-center justify-between text-sm"},Wl={class:"inline-flex items-center gap-1.5 rounded-full bg-blue-100 px-2.5 py-0.5 text-xs font-medium text-blue-700 dark:bg-blue-500/20 dark:text-blue-300"},Vl={class:"text-sm"},zl={class:"mb-1 flex items-center justify-between"},Bl=["value"],Gl={class:"text-right text-xs text-gray-400 dark:text-gray-500"},Hl={class:"text-sm"},Jl={class:"mb-1 flex items-center justify-between"},Ql=["value"],Yl={class:"flex items-center justify-between text-sm"},Xl={class:"font-medium text-gray-700 dark:text-gray-300"},Zl={class:"mb-4"},en={class:"flex items-center gap-3"},tn={class:"text-xs text-gray-500 dark:text-gray-400"},sn={key:0,class:"mb-4 overflow-hidden rounded-xl border border-gray-200 bg-gray-50 dark:border-gray-700 dark:bg-gray-800/50"},an={class:"flex items-center justify-between border-b border-gray-200 bg-gray-100 px-3 py-2 dark:border-gray-700 dark:bg-gray-800"},rn={key:0,class:"text-xs text-gray-500 dark:text-gray-500"},ln={class:"max-h-40 overflow-y-auto p-3"},nn={key:0,class:"whitespace-pre-wrap text-sm text-gray-700 dark:text-gray-300"},on={key:0,class:"inline-block h-4 w-1 animate-pulse bg-blue-500"},dn={key:1,class:"flex items-center gap-2 text-sm text-gray-500 dark:text-gray-400"},un={key:2,class:"text-sm text-red-600 dark:text-red-400"},cn={key:1,class:"mb-4 flex items-center justify-center gap-2 text-xs text-gray-500 dark:text-gray-400"},mn={class:"flex items-center justify-end gap-3 border-t border-gray-100 bg-gray-50/80 px-5 py-3 dark:border-gray-800 dark:bg-gray-900/50"},gn=["disabled"],xn=["disabled"],yn={__name:"ApiKeyTestModal",props:{show:{type:Boolean,default:!1},apiKeyValue:{type:String,default:""},apiKeyName:{type:String,default:""},serviceType:{type:String,default:"claude",validator:E=>["claude","gemini","openai"].includes(E)}},emits:["close"],setup(E,{emit:K}){const i=E,_=K,g=T("idle"),v=T(""),h=T(""),$=T(0),M=T(null),L=T(null),w=T("claude-sonnet-4-5-20250929"),u=T("hi"),x=T(1e3),f=[{value:100,label:"100"},{value:500,label:"500"},{value:1e3,label:"1000"},{value:2e3,label:"2000"},{value:4096,label:"4096"}],c=T({claude:[],gemini:[],openai:[]}),n=async()=>{try{const r=await Xe();r.success&&r.data&&(c.value={claude:r.data.claude||[],gemini:r.data.gemini||[],openai:r.data.openai||[]})}catch(r){console.error("Failed to load models:",r)}},C=j(()=>{const r={claude:{name:"Claude",endpoint:"/api-key/test",defaultModel:"claude-sonnet-4-5-20250929",displayEndpoint:"/api/v1/messages"},gemini:{name:"Gemini",endpoint:"/api-key/test-gemini",defaultModel:"gemini-2.5-pro",displayEndpoint:"/gemini/v1/models/:model:streamGenerateContent"},openai:{name:"OpenAI (Codex)",endpoint:"/api-key/test-openai",defaultModel:"gpt-5",displayEndpoint:"/openai/responses"}};return r[i.serviceType]||r.claude}),P=j(()=>c.value[i.serviceType]||[]);De(()=>{n()});const D=j(()=>i.apiKeyName||"当前 API Key"),U=j(()=>{const r=i.apiKeyValue;return r?r.length<=10?"****":r.substring(0,6)+"****"+r.substring(r.length-4):""}),F=j(()=>{switch(g.value){case"idle":return"准备就绪";case"testing":return"正在测试...";case"success":return"测试成功";case"error":return"测试失败";default:return"未知状态"}}),Q=j(()=>{switch(g.value){case"idle":return"点击下方按钮开始测试 API Key 连通性";case"testing":return"正在通过 /api 端点发送测试请求";case"success":return"API Key 可以正常访问服务";case"error":return h.value||"无法通过 API Key 访问服务";default:return""}}),W=j(()=>{switch(g.value){case"idle":return"border-gray-200 bg-gray-50 dark:border-gray-700 dark:bg-gray-800/50";case"testing":return"border-blue-200 bg-blue-50 dark:border-blue-500/30 dark:bg-blue-900/20";case"success":return"border-green-200 bg-green-50 dark:border-green-500/30 dark:bg-green-900/20";case"error":return"border-red-200 bg-red-50 dark:border-red-500/30 dark:bg-red-900/20";default:return"border-gray-200 bg-gray-50 dark:border-gray-700 dark:bg-gray-800/50"}}),G=j(()=>{switch(g.value){case"idle":return"bg-gray-200 dark:bg-gray-700";case"testing":return"bg-blue-100 dark:bg-blue-500/30";case"success":return"bg-green-100 dark:bg-green-500/30";case"error":return"bg-red-100 dark:bg-red-500/30";default:return"bg-gray-200 dark:bg-gray-700"}}),te=j(()=>{switch(g.value){case"idle":return"fa-hourglass-start";case"testing":return"fa-spinner fa-spin";case"success":return"fa-check-circle";case"error":return"fa-exclamation-circle";default:return"fa-question-circle"}}),ne=j(()=>{switch(g.value){case"idle":return"text-gray-500 dark:text-gray-400";case"testing":return"text-blue-500 dark:text-blue-400";case"success":return"text-green-500 dark:text-green-400";case"error":return"text-red-500 dark:text-red-400";default:return"text-gray-500 dark:text-gray-400"}}),oe=j(()=>{switch(g.value){case"idle":return"text-gray-700 dark:text-gray-300";case"testing":return"text-blue-700 dark:text-blue-300";case"success":return"text-green-700 dark:text-green-300";case"error":return"text-red-700 dark:text-red-300";default:return"text-gray-700 dark:text-gray-300"}});async function Y(){if(!i.apiKeyValue)return;g.value="testing",v.value="",h.value="",$.value=0,M.value=Date.now(),L.value&&L.value.abort(),L.value=new AbortController;const r=`${Ze.apiPrefix}/apiStats${C.value.endpoint}`;try{const s=await fetch(r,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiKey:i.apiKeyValue,model:w.value,prompt:u.value,maxTokens:x.value}),signal:L.value.signal});if(!s.ok){const B=await s.json().catch(()=>({}));throw new Error(B.message||B.error||`HTTP ${s.status}`)}const m=s.body.getReader(),A=new TextDecoder;let N=!1;for(;!N;){const{done:B,value:de}=await m.read();if(B){N=!0;continue}const ie=A.decode(de).split(` -`);for(const J of ie)if(J.startsWith("data: "))try{const ae=JSON.parse(J.substring(6));Z(ae)}catch{}}}catch(s){if(s.name==="AbortError")return;g.value="error",h.value=s.message||"连接失败",$.value=Date.now()-M.value}}function Z(r){switch(r.type){case"test_start":break;case"content":v.value+=r.text;break;case"message_stop":break;case"test_complete":$.value=Date.now()-M.value,r.success?g.value="success":(g.value="error",h.value=r.error||"测试失败");break;case"error":g.value="error",h.value=r.error||"未知错误",$.value=Date.now()-M.value;break}}function H(){g.value!=="testing"&&(L.value&&(L.value.abort(),L.value=null),g.value="idle",v.value="",h.value="",$.value=0,_("close"))}return Te(()=>i.show,r=>{r&&(g.value="idle",v.value="",h.value="",$.value=0,w.value=C.value.defaultModel,u.value="hi",x.value=1e3)}),Te(()=>i.serviceType,()=>{w.value=C.value.defaultModel}),qe(()=>{L.value&&L.value.abort()}),(r,s)=>(a(),ve(Ue,{to:"body"},[E.show?(a(),l("div",Pl,[e("div",{class:"absolute inset-0",onClick:H}),e("div",Rl,[e("div",Ll,[e("div",Il,[e("div",{class:R(["flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-xl text-white shadow-lg",g.value==="success"?"bg-gradient-to-br from-green-500 to-emerald-500":g.value==="error"?"bg-gradient-to-br from-red-500 to-pink-500":"bg-gradient-to-br from-blue-500 to-indigo-500"])},[e("i",{class:R(["fas",g.value==="idle"?"fa-vial":g.value==="testing"?"fa-spinner fa-spin":g.value==="success"?"fa-check":"fa-times"])},null,2)],2),e("div",null,[s[3]||(s[3]=e("h3",{class:"text-lg font-semibold text-gray-900 dark:text-gray-100"}," API Key 端点测试 ",-1)),e("p",jl,o(D.value),1)])]),e("button",{class:"flex h-9 w-9 items-center justify-center rounded-full bg-gray-100 text-gray-500 transition hover:bg-gray-200 hover:text-gray-700 dark:bg-gray-800 dark:text-gray-400 dark:hover:bg-gray-700 dark:hover:text-gray-200",disabled:g.value==="testing",onClick:H},s[4]||(s[4]=[e("i",{class:"fas fa-times text-sm"},null,-1)]),8,Dl)]),e("div",ql,[e("div",Ul,[s[6]||(s[6]=e("label",{class:"mb-2 block text-sm font-medium text-gray-700 dark:text-gray-300"}," API Key ",-1)),e("div",El,[e("input",{class:"w-full rounded-lg border border-gray-200 bg-gray-50 px-3 py-2 pr-10 text-sm text-gray-700 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-200",readonly:"",type:"text",value:U.value},null,8,Nl),s[5]||(s[5]=e("div",{class:"absolute right-2 top-1/2 -translate-y-1/2 text-gray-400"},[e("i",{class:"fas fa-lock text-xs"})],-1))]),s[7]||(s[7]=e("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 测试将使用此 API Key 调用当前服务的 /api 端点 ",-1))]),e("div",Ol,[e("div",Fl,[s[9]||(s[9]=e("span",{class:"text-gray-500 dark:text-gray-400"},"测试端点",-1)),e("span",Wl,[s[8]||(s[8]=e("i",{class:"fas fa-link"},null,-1)),k(" "+o(C.value.displayEndpoint),1)])]),e("div",Vl,[e("div",zl,[s[10]||(s[10]=e("span",{class:"text-gray-500 dark:text-gray-400"},"测试模型",-1)),xe(e("select",{"onUpdate:modelValue":s[0]||(s[0]=m=>w.value=m),class:"rounded-lg border border-gray-200 bg-white px-2 py-1 text-sm text-gray-700 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300"},[(a(!0),l(X,null,se(P.value,m=>(a(),l("option",{key:m.value,value:m.value},o(m.label),9,Bl))),128))],512),[[Pe,w.value]])]),e("div",Gl,o(w.value),1)]),e("div",Hl,[e("div",Jl,[s[11]||(s[11]=e("span",{class:"text-gray-500 dark:text-gray-400"},"最大输出 Token",-1)),xe(e("select",{"onUpdate:modelValue":s[1]||(s[1]=m=>x.value=m),class:"rounded-lg border border-gray-200 bg-white px-2 py-1 text-sm text-gray-700 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300"},[(a(),l(X,null,se(f,m=>e("option",{key:m.value,value:m.value},o(m.label),9,Ql)),64))],512),[[Pe,x.value]])])]),e("div",Yl,[s[12]||(s[12]=e("span",{class:"text-gray-500 dark:text-gray-400"},"测试服务",-1)),e("span",Xl,o(C.value.name),1)])]),e("div",Zl,[s[13]||(s[13]=e("label",{class:"mb-2 block text-sm font-medium text-gray-700 dark:text-gray-300"}," 提示词 ",-1)),xe(e("textarea",{"onUpdate:modelValue":s[2]||(s[2]=m=>u.value=m),class:"w-full rounded-lg border border-gray-200 bg-white px-3 py-2 text-sm text-gray-700 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-200",placeholder:"输入测试提示词...",rows:"2"},null,512),[[Se,u.value]])]),e("div",{class:R(["mb-4 rounded-xl border p-4 transition-all duration-300",W.value])},[e("div",en,[e("div",{class:R(["flex h-8 w-8 items-center justify-center rounded-lg",G.value])},[e("i",{class:R(["fas text-sm",te.value,ne.value])},null,2)],2),e("div",null,[e("p",{class:R(["font-medium",oe.value])},o(F.value),3),e("p",tn,o(Q.value),1)])])],2),g.value!=="idle"?(a(),l("div",sn,[e("div",an,[s[14]||(s[14]=e("span",{class:"text-xs font-medium text-gray-600 dark:text-gray-400"},"AI 响应",-1)),v.value?(a(),l("span",rn,o(v.value.length)+" 字符 ",1)):b("",!0)]),e("div",ln,[v.value?(a(),l("p",nn,[k(o(v.value)+" ",1),g.value==="testing"?(a(),l("span",on)):b("",!0)])):g.value==="testing"?(a(),l("p",dn,s[15]||(s[15]=[e("i",{class:"fas fa-circle-notch fa-spin"},null,-1),k(" 等待响应中... ",-1)]))):g.value==="error"&&h.value?(a(),l("p",un,o(h.value),1)):b("",!0)])])):b("",!0),$.value>0?(a(),l("div",cn,[s[16]||(s[16]=e("i",{class:"fas fa-clock"},null,-1)),e("span",null,"耗时 "+o(($.value/1e3).toFixed(2))+" 秒",1)])):b("",!0)]),e("div",mn,[e("button",{class:"rounded-lg border border-gray-200 bg-white px-4 py-2 text-sm font-medium text-gray-700 shadow-sm transition hover:bg-gray-50 hover:shadow dark:border-gray-700 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700",disabled:g.value==="testing",onClick:H}," 关闭 ",8,gn),e("button",{class:R(["flex items-center gap-2 rounded-lg px-4 py-2 text-sm font-medium shadow-sm transition",g.value==="testing"||!E.apiKeyValue?"cursor-not-allowed bg-gray-200 text-gray-400 dark:bg-gray-700 dark:text-gray-500":"bg-gradient-to-r from-blue-500 to-indigo-500 text-white hover:from-blue-600 hover:to-indigo-600 hover:shadow-md"]),disabled:g.value==="testing"||!E.apiKeyValue,onClick:Y},[e("i",{class:R(["fas",g.value==="testing"?"fa-spinner fa-spin":"fa-play"])},null,2),k(" "+o(g.value==="testing"?"测试中...":g.value==="idle"?"开始测试":"重新测试"),1)],10,xn)])])])):b("",!0)]))}},fn={class:"glass-strong mb-4 rounded-2xl p-3 shadow-xl sm:mb-6 sm:rounded-3xl sm:p-4 md:mb-8 md:p-6"},pn={class:"flex flex-col items-center justify-between gap-3 sm:gap-4 md:flex-row"},vn={class:"flex items-center gap-2 md:gap-4"},bn={class:"flex items-center"},kn={key:0,class:"h-8 w-px bg-gradient-to-b from-transparent via-gray-300 to-transparent opacity-50 dark:via-gray-600"},hn={class:"mb-4 sm:mb-6 md:mb-8"},_n={class:"flex justify-center"},wn={class:"inline-flex w-full max-w-2xl flex-wrap justify-center gap-1 rounded-full border border-white/20 bg-white/10 p-1 shadow-lg backdrop-blur-xl sm:w-auto sm:flex-nowrap"},$n={key:0,class:"tab-content"},Cn={key:0,class:"mb-4 sm:mb-6 md:mb-8"},Tn={class:"rounded-xl border border-red-500/30 bg-red-500/20 p-3 text-sm text-red-800 backdrop-blur-sm dark:border-red-500/20 dark:bg-red-500/10 dark:text-red-200 md:p-4 md:text-base"},Sn={key:1,class:"fade-in"},An={class:"glass-strong rounded-2xl p-3 shadow-xl sm:rounded-3xl sm:p-4 md:p-6"},Kn={class:"mb-3 border-b border-gray-200 pb-3 dark:border-gray-700 sm:mb-4 sm:pb-4 md:mb-6 md:pb-6"},Mn={class:"flex flex-col items-start justify-between gap-2 sm:gap-3 md:flex-row md:items-center md:gap-4"},Pn={class:"flex w-full items-center gap-2 md:w-auto"},Rn=["disabled"],Ln=["disabled"],In=["disabled"],jn={key:0,class:"relative"},Dn=["disabled","title"],qn={key:0,class:"absolute right-0 top-full z-50 mt-1 min-w-[140px] overflow-hidden rounded-lg border border-gray-200 bg-white shadow-lg dark:border-gray-700 dark:bg-gray-800"},Un={class:"mb-4 mt-4 grid grid-cols-1 gap-3 sm:mb-6 sm:mt-6 sm:gap-4 md:mb-8 md:mt-8 md:gap-6 xl:grid-cols-2 xl:items-stretch"},En={class:"space-y-4 sm:space-y-6"},Nn={key:1,class:"tab-content"},On={class:"glass-strong rounded-3xl shadow-xl"},Fn={key:2,class:"tab-content"},Wn={class:"glass-strong rounded-2xl p-4 shadow-xl sm:rounded-3xl sm:p-6 md:p-8"},Vn={class:"mb-4 flex gap-2 border-b border-gray-200 pb-4 dark:border-gray-700 md:mb-6 md:pb-6"},zn={key:0},Bn={key:0,class:"py-8 text-center"},Gn={key:1},Hn={class:"mb-6 rounded-xl bg-blue-50 p-4 dark:bg-blue-900/20"},Jn={class:"text-sm text-blue-700 dark:text-blue-300"},Qn={class:"font-medium"},Yn={class:"space-y-4"},Xn=["disabled"],Zn={key:0,class:"fas fa-spinner fa-spin mr-2"},eo={key:1,class:"fas fa-check-circle mr-2"},to={key:0,class:"mt-6"},so={class:"flex items-start gap-3"},ao={class:"font-medium"},ro={class:"mt-1 text-sm opacity-90"},lo={key:0,class:"mt-2 text-sm"},no={key:0},oo={class:"font-medium"},io={key:1},uo={class:"font-medium"},co={key:1},mo={key:0,class:"py-8 text-center"},go={key:1},xo={key:0,class:"py-8 text-center"},yo={key:1,class:"py-8 text-center"},fo={key:2,class:"space-y-3"},po={class:"flex items-start justify-between gap-4"},vo={class:"min-w-0 flex-1"},bo={class:"mb-1 flex items-center gap-2"},ko={key:0,class:"inline-flex items-center rounded-full bg-red-100 px-2 py-0.5 text-xs font-medium text-red-700 dark:bg-red-900/30 dark:text-red-300"},ho={class:"text-sm text-gray-600 dark:text-gray-300"},_o={key:0},wo={key:1},$o={key:2},Co={class:"whitespace-nowrap text-right text-xs text-gray-500 dark:text-gray-400"},To={class:"mb-4 flex items-center gap-3"},So={class:"text-lg font-semibold text-gray-900 dark:text-gray-100"},Ao={class:"mb-4 whitespace-pre-wrap text-sm leading-relaxed text-gray-600 dark:text-gray-300"},Ko={class:"mb-4 flex cursor-pointer items-center gap-2"},je="apiStatsNoticeRead",Mo={__name:"ApiStatsView",setup(E){const K=We(),i=ge(),_=et(),g=T("stats"),v=j(()=>_.isDarkMode),{apiKey:h,apiId:$,loading:M,oemLoading:L,error:w,statsPeriod:u,statsData:x,oemSettings:f,multiKeyMode:c}=ce(i),{queryStats:n,switchPeriod:C,loadStatsWithApiId:P,loadOemSettings:D,loadServiceRates:U,loadApiKeyFromStorage:F,reset:Q}=i,W=T(!1),G=T(!1),te=T("claude"),ne=T(!1),oe=T(!1),Y=T("redeem"),Z=T(""),H=T(!1),r=T(null),s=T([]),m=T(!1),A=async()=>{var d;if(!Z.value.trim()||!$.value)return;H.value=!0,r.value=null;const p=await tt({apiId:$.value,code:Z.value.trim()});if(H.value=!1,p.success){const z=((d=p.data)==null?void 0:d.warnings)||[],le=z.length>0;r.value={success:!0,message:le?z.join(";"):"额度卡兑换成功!",data:p.data,hasWarnings:le},Z.value="",Ie(le?"兑换成功(部分截断)":"兑换成功",le?"warning":"success"),P()}else r.value={success:!1,message:p.error||p.message||"兑换失败"},Ie(p.error||p.message||"兑换失败","error")},N=async()=>{var d;if(!$.value)return;m.value=!0;const p=await st($.value);m.value=!1,p.success&&(s.value=((d=p.data)==null?void 0:d.records)||p.data||[])},B=()=>{g.value="quota",Y.value==="history"&&N()},de=()=>{Y.value="history",N()},re=p=>{if(!p)return[];if(Array.isArray(p))return p;if(typeof p=="string"){if(p==="all")return[];try{const d=JSON.parse(p);return Array.isArray(d)?d:[]}catch{return[]}}return[]},ie=j(()=>{var d;const p=re((d=x.value)==null?void 0:d.permissions);return p.length===0?!0:p.includes("claude")}),J=j(()=>{var d;const p=re((d=x.value)==null?void 0:d.permissions);return p.length===0?!0:p.includes("gemini")}),ae=j(()=>{var d;const p=re((d=x.value)==null?void 0:d.permissions);return p.length===0?!0:p.includes("openai")}),ue=j(()=>ie.value||J.value||ae.value),ye=j(()=>{var z;const p=re((z=x.value)==null?void 0:z.permissions);if(p.length===0)return"全部服务";const d={claude:"Claude",gemini:"Gemini",openai:"OpenAI",droid:"Droid"};return p.map(le=>d[le]||le).join(", ")}),fe=()=>{G.value=!G.value},pe=(p="claude")=>{te.value=p,G.value=!1,W.value=!0},he=()=>{W.value=!1},y=()=>{ne.value=!1,oe.value&&sessionStorage.setItem(je,"1")},S=()=>{var d;const p=(d=f.value)==null?void 0:d.apiStatsNotice;p!=null&&p.enabled&&(p!=null&&p.content)&&!sessionStorage.getItem(je)&&(ne.value=!0)},I=p=>{G.value&&!p.target.closest(".relative")&&(G.value=!1)},V=p=>{(p.ctrlKey||p.metaKey)&&p.key==="Enter"&&(!M.value&&h.value.trim()&&n(),p.preventDefault()),p.key==="Escape"&&Q()};return De(async()=>{_.initTheme(),await Promise.all([D(),U()]),S();const p=K.query.apiId,d=K.query.apiKey;if(p&&p.match(/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/i)){$.value=p;const z=F();z&&(h.value=z),P()}else if(d&&d.length>10)h.value=d;else{const z=F();z&&z.length>10&&(h.value=z,n())}document.addEventListener("keydown",V),document.addEventListener("click",I)}),qe(()=>{document.removeEventListener("keydown",V),document.removeEventListener("click",I)}),Te(h,p=>{p||i.clearData()}),(p,d)=>{var le,Ae;const z=ze("router-link");return a(),l("div",{class:R(["min-h-screen p-2 sm:p-4 md:p-6",v.value?"gradient-bg-dark":"gradient-bg"])},[e("div",fn,[e("div",pn,[ee(rt,{loading:t(L),"logo-src":t(f).siteIconData||t(f).siteIcon,subtitle:g.value==="stats"?"API Key 使用统计":g.value==="quota"?"额度卡":"使用教程",title:t(f).siteName},null,8,["loading","logo-src","subtitle","title"]),e("div",vn,[e("div",bn,[ee(lt,{mode:"dropdown"})]),t(f).ldapEnabled||t(f).showAdminButton!==!1?(a(),l("div",kn)):b("",!0),t(f).ldapEnabled?(a(),ve(z,{key:1,class:"user-login-button flex items-center gap-2 rounded-2xl px-4 py-2 text-white transition-all duration-300 md:px-5 md:py-2.5",to:"/user-login"},{default:_e(()=>d[14]||(d[14]=[e("i",{class:"fas fa-user text-sm md:text-base"},null,-1),e("span",{class:"text-xs font-semibold tracking-wide md:text-sm"},"用户登录",-1)])),_:1,__:[14]})):b("",!0),t(f).showAdminButton!==!1?(a(),ve(z,{key:2,class:"admin-button-refined flex items-center gap-2 rounded-2xl px-4 py-2 transition-all duration-300 md:px-5 md:py-2.5",to:"/dashboard"},{default:_e(()=>d[15]||(d[15]=[e("i",{class:"fas fa-shield-alt text-sm md:text-base"},null,-1),e("span",{class:"text-xs font-semibold tracking-wide md:text-sm"},"管理后台",-1)])),_:1,__:[15]})):b("",!0)])])]),e("div",hn,[e("div",_n,[e("div",wn,[e("button",{class:R(["tab-pill-button",g.value==="stats"?"active":""]),onClick:d[0]||(d[0]=q=>g.value="stats")},d[16]||(d[16]=[e("i",{class:"fas fa-chart-line mr-1 md:mr-2"},null,-1),e("span",{class:"text-sm md:text-base"},"统计查询",-1)]),2),e("button",{class:R(["tab-pill-button",g.value==="quota"?"active":""]),onClick:B},d[17]||(d[17]=[e("i",{class:"fas fa-ticket-alt mr-1 md:mr-2"},null,-1),e("span",{class:"text-sm md:text-base"},"额度卡",-1)]),2),e("button",{class:R(["tab-pill-button",g.value==="tutorial"?"active":""]),onClick:d[1]||(d[1]=q=>g.value="tutorial")},d[18]||(d[18]=[e("i",{class:"fas fa-graduation-cap mr-1 md:mr-2"},null,-1),e("span",{class:"text-sm md:text-base"},"使用教程",-1)]),2)])])]),g.value==="stats"?(a(),l("div",$n,[ee(At),t(w)?(a(),l("div",Cn,[e("div",Tn,[d[19]||(d[19]=e("i",{class:"fas fa-exclamation-triangle mr-2"},null,-1)),k(" "+o(t(w)),1)])])):b("",!0),t(x)?(a(),l("div",Sn,[e("div",An,[e("div",Kn,[e("div",Mn,[d[27]||(d[27]=e("div",{class:"flex items-center gap-2 md:gap-3"},[e("i",{class:"fas fa-clock text-base text-blue-500 md:text-lg"}),e("span",{class:"text-base font-medium text-gray-700 dark:text-gray-200 md:text-lg"},"统计时间范围")],-1)),e("div",Pn,[e("button",{class:R(["flex flex-1 items-center justify-center gap-1 px-4 py-2 text-xs font-medium md:flex-none md:gap-2 md:px-6 md:text-sm",["period-btn",{active:t(u)==="daily"}]]),disabled:t(M),onClick:d[2]||(d[2]=q=>t(C)("daily"))},d[20]||(d[20]=[e("i",{class:"fas fa-calendar-day text-xs md:text-sm"},null,-1),k(" 今日 ",-1)]),10,Rn),e("button",{class:R(["flex flex-1 items-center justify-center gap-1 px-4 py-2 text-xs font-medium md:flex-none md:gap-2 md:px-6 md:text-sm",["period-btn",{active:t(u)==="monthly"}]]),disabled:t(M),onClick:d[3]||(d[3]=q=>t(C)("monthly"))},d[21]||(d[21]=[e("i",{class:"fas fa-calendar-alt text-xs md:text-sm"},null,-1),k(" 本月 ",-1)]),10,Ln),e("button",{class:R(["flex flex-1 items-center justify-center gap-1 px-4 py-2 text-xs font-medium md:flex-none md:gap-2 md:px-6 md:text-sm",["period-btn",{active:t(u)==="alltime"}]]),disabled:t(M),onClick:d[4]||(d[4]=q=>t(C)("alltime"))},d[22]||(d[22]=[e("i",{class:"fas fa-infinity text-xs md:text-sm"},null,-1),k(" 全部 ",-1)]),10,In),t(c)?b("",!0):(a(),l("div",jn,[e("button",{class:R(["test-btn flex items-center justify-center gap-1 px-4 py-2 text-xs font-medium md:gap-2 md:px-6 md:text-sm",ue.value?"":"cursor-not-allowed opacity-50"]),disabled:t(M)||!ue.value,title:ue.value?"测试 API":`当前 Key 可用服务: ${ye.value}`,onClick:fe},d[23]||(d[23]=[e("i",{class:"fas fa-vial text-xs md:text-sm"},null,-1),k(" 测试 ",-1),e("i",{class:"fas fa-chevron-down ml-1 text-xs"},null,-1)]),10,Dn),G.value?(a(),l("div",qn,[ie.value?(a(),l("button",{key:0,class:"flex w-full items-center gap-2 px-4 py-2 text-left text-sm text-gray-700 hover:bg-gray-100 dark:text-gray-200 dark:hover:bg-gray-700",onClick:d[5]||(d[5]=q=>pe("claude"))},d[24]||(d[24]=[e("i",{class:"fas fa-robot text-orange-500"},null,-1),k(" Claude ",-1)]))):b("",!0),J.value?(a(),l("button",{key:1,class:"flex w-full items-center gap-2 px-4 py-2 text-left text-sm text-gray-700 hover:bg-gray-100 dark:text-gray-200 dark:hover:bg-gray-700",onClick:d[6]||(d[6]=q=>pe("gemini"))},d[25]||(d[25]=[e("i",{class:"fas fa-gem text-blue-500"},null,-1),k(" Gemini ",-1)]))):b("",!0),ae.value?(a(),l("button",{key:2,class:"flex w-full items-center gap-2 px-4 py-2 text-left text-sm text-gray-700 hover:bg-gray-100 dark:text-gray-200 dark:hover:bg-gray-700",onClick:d[7]||(d[7]=q=>pe("openai"))},d[26]||(d[26]=[e("i",{class:"fas fa-code text-green-500"},null,-1),k(" Codex ",-1)]))):b("",!0)])):b("",!0)]))])])]),ee(Hs),e("div",Un,[ee(ma,{class:"h-full"}),t(c)?(a(),ve(Ur,{key:0,class:"h-full"})):(a(),ve(wr,{key:1,class:"h-full"}))]),ee(Ml,{class:"mb-4 sm:mb-6"}),e("div",En,[ee(we,{period:"daily"}),ee(we,{period:"monthly"}),ee(we,{period:"alltime"})])])])):b("",!0)])):b("",!0),g.value==="tutorial"?(a(),l("div",Nn,[e("div",On,[ee(ot)])])):b("",!0),g.value==="quota"?(a(),l("div",Fn,[e("div",Wn,[e("div",Vn,[e("button",{class:R(["rounded-lg px-4 py-2 text-sm font-medium transition-all",Y.value==="redeem"?"bg-blue-500 text-white":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600"]),onClick:d[8]||(d[8]=q=>Y.value="redeem")},d[28]||(d[28]=[e("i",{class:"fas fa-ticket-alt mr-2"},null,-1),k(" 兑换额度卡 ",-1)]),2),e("button",{class:R(["rounded-lg px-4 py-2 text-sm font-medium transition-all",Y.value==="history"?"bg-blue-500 text-white":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600"]),onClick:de},d[29]||(d[29]=[e("i",{class:"fas fa-history mr-2"},null,-1),k(" 兑换记录 ",-1)]),2)]),Y.value==="redeem"?(a(),l("div",zn,[t($)?(a(),l("div",Gn,[e("div",Hn,[e("p",Jn,[d[31]||(d[31]=e("i",{class:"fas fa-info-circle mr-2"},null,-1)),d[32]||(d[32]=k(" 当前 API Key: ",-1)),e("span",Qn,o(((le=t(x))==null?void 0:le.name)||t($)),1)])]),e("div",Yn,[e("div",null,[d[33]||(d[33]=e("label",{class:"mb-2 block text-sm font-medium text-gray-700 dark:text-gray-300"}," 额度卡卡号 ",-1)),xe(e("input",{"onUpdate:modelValue":d[10]||(d[10]=q=>Z.value=q),class:"w-full rounded-xl border border-gray-300 bg-white px-4 py-3 text-gray-900 placeholder-gray-400 transition-all focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-gray-100 dark:placeholder-gray-500",placeholder:"请输入额度卡卡号",type:"text",onKeyup:$e(A,["enter"])},null,544),[[Se,Z.value]])]),e("button",{class:"w-full rounded-xl bg-gradient-to-r from-green-500 to-emerald-500 px-6 py-3 font-medium text-white transition-all hover:from-green-600 hover:to-emerald-600 disabled:cursor-not-allowed disabled:opacity-50",disabled:!Z.value.trim()||H.value,onClick:A},[H.value?(a(),l("i",Zn)):(a(),l("i",eo)),k(" "+o(H.value?"兑换中...":"立即兑换"),1)],8,Xn)]),r.value?(a(),l("div",to,[e("div",{class:R(["rounded-xl p-4",r.value.success?r.value.hasWarnings?"bg-yellow-50 text-yellow-700 dark:bg-yellow-900/20 dark:text-yellow-300":"bg-green-50 text-green-700 dark:bg-green-900/20 dark:text-green-300":"bg-red-50 text-red-700 dark:bg-red-900/20 dark:text-red-300"])},[e("div",so,[e("i",{class:R(["mt-0.5 text-lg",r.value.success?r.value.hasWarnings?"fas fa-exclamation-triangle":"fas fa-check-circle":"fas fa-times-circle"])},null,2),e("div",null,[e("p",ao,o(r.value.success?r.value.hasWarnings?"兑换成功(部分截断)":"兑换成功":"兑换失败"),1),e("p",ro,o(r.value.message),1),r.value.success&&r.value.data?(a(),l("div",lo,[r.value.data.quotaAdded?(a(),l("p",no,[d[34]||(d[34]=k(" 额度增加: ",-1)),e("span",oo,"$"+o(r.value.data.quotaAdded),1)])):b("",!0),r.value.data.timeAdded?(a(),l("p",io,[d[35]||(d[35]=k(" 有效期延长: ",-1)),e("span",uo,o(r.value.data.timeAdded)+o(r.value.data.timeUnit==="days"?"天":r.value.data.timeUnit==="hours"?"小时":"月"),1)])):b("",!0)])):b("",!0)])])],2)])):b("",!0)])):(a(),l("div",Bn,[d[30]||(d[30]=e("div",{class:"mb-4 text-gray-500 dark:text-gray-400"},[e("i",{class:"fas fa-key mb-4 block text-4xl opacity-50"}),e("p",null,"请先在「统计查询」页面输入您的 API Key")],-1)),e("button",{class:"rounded-xl bg-gradient-to-r from-blue-500 to-cyan-500 px-6 py-2.5 font-medium text-white transition-all hover:from-blue-600 hover:to-cyan-600",onClick:d[9]||(d[9]=q=>g.value="stats")}," 前往输入 API Key ")]))])):b("",!0),Y.value==="history"?(a(),l("div",co,[t($)?(a(),l("div",go,[m.value?(a(),l("div",xo,d[37]||(d[37]=[e("i",{class:"fas fa-spinner fa-spin text-2xl text-gray-400"},null,-1),e("p",{class:"mt-2 text-gray-500 dark:text-gray-400"},"加载中...",-1)]))):s.value.length===0?(a(),l("div",yo,d[38]||(d[38]=[e("i",{class:"fas fa-inbox text-4xl text-gray-300 dark:text-gray-600"},null,-1),e("p",{class:"mt-2 text-gray-500 dark:text-gray-400"},"暂无兑换记录",-1)]))):(a(),l("div",fo,[(a(!0),l(X,null,se(s.value,q=>(a(),l("div",{key:q.id,class:"rounded-xl border border-gray-200 bg-white p-4 dark:border-gray-700 dark:bg-gray-800"},[e("div",po,[e("div",vo,[e("div",bo,[e("span",{class:R(["inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium",q.cardType==="quota"?"bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-300":q.cardType==="time"?"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-300":"bg-green-100 text-green-700 dark:bg-green-900/30 dark:text-green-300"])},o(q.cardType==="quota"?"额度卡":q.cardType==="time"?"时间卡":"组合卡"),3),q.status==="revoked"?(a(),l("span",ko," 已撤销 ")):b("",!0)]),e("p",ho,[q.quotaAdded?(a(),l("span",_o,"额度 +$"+o(q.quotaAdded),1)):b("",!0),q.quotaAdded&&q.timeAdded?(a(),l("span",wo," · ")):b("",!0),q.timeAdded?(a(),l("span",$o,"有效期 +"+o(q.timeAmount)+o(q.timeUnit==="days"?"天":q.timeUnit==="hours"?"小时":"月"),1)):b("",!0)])]),e("div",Co,o(t(at)(q.redeemedAt)),1)])]))),128))]))])):(a(),l("div",mo,[d[36]||(d[36]=e("div",{class:"mb-4 text-gray-500 dark:text-gray-400"},[e("i",{class:"fas fa-key mb-4 block text-4xl opacity-50"}),e("p",null,"请先在「统计查询」页面输入您的 API Key")],-1)),e("button",{class:"rounded-xl bg-gradient-to-r from-blue-500 to-cyan-500 px-6 py-2.5 font-medium text-white transition-all hover:from-blue-600 hover:to-cyan-600",onClick:d[11]||(d[11]=q=>g.value="stats")}," 前往输入 API Key ")]))])):b("",!0)])])):b("",!0),ee(yn,{"api-key-name":((Ae=t(x))==null?void 0:Ae.name)||"","api-key-value":t(h),"service-type":te.value,show:W.value,onClose:he},null,8,["api-key-name","api-key-value","service-type","show"]),(a(),ve(Ue,{to:"body"},[ee(Ve,{name:"fade"},{default:_e(()=>{var q,Ke;return[ne.value?(a(),l("div",{key:0,class:"fixed inset-0 z-50 flex items-center justify-center bg-black/50 p-4 backdrop-blur-sm",onClick:Ce(y,["self"])},[e("div",{class:"w-full max-w-md rounded-2xl bg-white p-6 shadow-2xl dark:bg-gray-800",onClick:d[13]||(d[13]=Ce(()=>{},["stop"]))},[e("div",To,[d[39]||(d[39]=e("div",{class:"flex h-10 w-10 items-center justify-center rounded-xl bg-gradient-to-br from-amber-500 to-orange-600 text-white"},[e("i",{class:"fas fa-bell"})],-1)),e("h3",So,o(((q=t(f).apiStatsNotice)==null?void 0:q.title)||"通知"),1)]),e("p",Ao,o((Ke=t(f).apiStatsNotice)==null?void 0:Ke.content),1),e("label",Ko,[xe(e("input",{"onUpdate:modelValue":d[12]||(d[12]=Ne=>oe.value=Ne),class:"h-4 w-4 rounded border-gray-300 text-blue-500 focus:ring-blue-500",type:"checkbox"},null,512),[[Be,oe.value]]),d[40]||(d[40]=e("span",{class:"text-sm text-gray-600 dark:text-gray-400"},"本次会话不再显示",-1))]),e("button",{class:"w-full rounded-xl bg-gradient-to-r from-blue-500 to-cyan-500 px-4 py-2.5 font-medium text-white transition-all hover:from-blue-600 hover:to-cyan-600",onClick:y}," 知道了 ")])])):b("",!0)]}),_:1})]))],2)}}},Eo=me(Mo,[["__scopeId","data-v-8fdf3cb4"]]);export{Eo as default}; diff --git a/web/admin-spa/dist/assets/ConfirmModal-BzWkJtgn.css b/web/admin-spa/dist/assets/ConfirmModal-BzWkJtgn.css deleted file mode 100644 index f15da4b8..00000000 --- a/web/admin-spa/dist/assets/ConfirmModal-BzWkJtgn.css +++ /dev/null @@ -1 +0,0 @@ -.modal[data-v-9b6104f1]{background:#00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dark{background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)} diff --git a/web/admin-spa/dist/assets/ConfirmModal-C2rCOkXI.js b/web/admin-spa/dist/assets/ConfirmModal-C2rCOkXI.js deleted file mode 100644 index c7586797..00000000 --- a/web/admin-spa/dist/assets/ConfirmModal-C2rCOkXI.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s}from"./index-BahP9Xx9.js";import{I as d,y as i,x as g,L as m,z as t,C as o,P as r,a5 as c}from"./vue-vendor-DV7DYXbz.js";const f={key:0,class:"modal fixed inset-0 z-50 flex items-center justify-center p-4"},y={class:"modal-content mx-auto w-full max-w-md rounded-2xl bg-white p-6 shadow-xl dark:bg-gray-800"},x={class:"mb-6 flex items-start gap-4"},u={class:"flex-1"},h={class:"mb-2 text-lg font-bold text-gray-900 dark:text-white"},b={class:"whitespace-pre-line text-sm leading-relaxed text-gray-700 dark:text-gray-300"},p={class:"flex gap-3"},w={__name:"ConfirmModal",props:{show:{type:Boolean,required:!0},title:{type:String,default:""},message:{type:String,default:""},confirmText:{type:String,default:"继续"},cancelText:{type:String,default:"取消"},type:{type:String,default:"primary",validator:e=>["primary","warning","danger"].includes(e)}},emits:["confirm","cancel"],setup(e){return(n,a)=>(i(),d(c,{to:"body"},[e.show?(i(),g("div",f,[t("div",y,[t("div",x,[t("div",{class:o(["flex h-12 w-12 flex-shrink-0 items-center justify-center rounded-full",e.type==="danger"?"bg-gradient-to-br from-red-400 to-red-500":e.type==="warning"?"bg-gradient-to-br from-yellow-400 to-yellow-500":"bg-primary"])},[t("i",{class:o(["text-xl text-white",e.type==="danger"?"fas fa-trash-alt":e.type==="warning"?"fas fa-exclamation":"fas fa-question"])},null,2)],2),t("div",u,[t("h3",h,r(e.title),1),t("p",b,r(e.message),1)])]),t("div",p,[t("button",{class:"flex-1 rounded-xl bg-gray-100 px-4 py-2.5 font-medium text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-200 dark:hover:bg-gray-600",onClick:a[0]||(a[0]=l=>n.$emit("cancel"))},r(e.cancelText),1),t("button",{class:o(["flex-1 rounded-xl px-4 py-2.5 font-medium text-white shadow-sm transition-all",e.type==="danger"?"bg-gradient-to-r from-red-500 to-red-600 hover:from-red-600 hover:to-red-700":e.type==="warning"?"bg-gradient-to-r from-yellow-500 to-orange-500 hover:from-yellow-600 hover:to-orange-600":"bg-primary hover:opacity-90"]),onClick:a[1]||(a[1]=l=>n.$emit("confirm"))},r(e.confirmText),3)])])])):m("",!0)]))}},C=s(w,[["__scopeId","data-v-9b6104f1"]]);export{C}; diff --git a/web/admin-spa/dist/assets/DashboardView-BzrWMTub.js b/web/admin-spa/dist/assets/DashboardView-BzrWMTub.js deleted file mode 100644 index 202ef08f..00000000 --- a/web/admin-spa/dist/assets/DashboardView-BzrWMTub.js +++ /dev/null @@ -1 +0,0 @@ -import{E as Jt}from"./element-plus-BSjV1f9S.js";import{aP as Xt,r as T,c as Gt,aY as Vt,o as pt,q as te,D as Q,V as ee,x,z as t,P as i,u as a,L as $,O as I,C as J,Q as Pt,ac as Bt,R as ae,K as se,al as oe,y as f,B as ne}from"./vue-vendor-DV7DYXbz.js";import{C as Ut}from"./chart-yFHxLHpB.js";import{n as re,o as Yt,p as Mt,s as Ot,_ as le,a as ie,f as U,q as de}from"./index-BahP9Xx9.js";import"./vendor-Dr8jvgFu.js";const ce=Xt("dashboard",()=>{const At=T(!1),yt=T({totalApiKeys:0,activeApiKeys:0,totalAccounts:0,normalAccounts:0,abnormalAccounts:0,pausedAccounts:0,activeAccounts:0,rateLimitedAccounts:0,accountsByPlatform:{claude:{total:0,normal:0,abnormal:0,paused:0,rateLimited:0},"claude-console":{total:0,normal:0,abnormal:0,paused:0,rateLimited:0},gemini:{total:0,normal:0,abnormal:0,paused:0,rateLimited:0},openai:{total:0,normal:0,abnormal:0,paused:0,rateLimited:0},azure_openai:{total:0,normal:0,abnormal:0,paused:0,rateLimited:0},bedrock:{total:0,normal:0,abnormal:0,paused:0,rateLimited:0}},todayRequests:0,totalRequests:0,todayTokens:0,todayInputTokens:0,todayOutputTokens:0,totalTokens:0,totalInputTokens:0,totalOutputTokens:0,totalCacheCreateTokens:0,totalCacheReadTokens:0,todayCacheCreateTokens:0,todayCacheReadTokens:0,systemRPM:0,systemTPM:0,realtimeRPM:0,realtimeTPM:0,metricsWindow:5,isHistoricalMetrics:!1,systemStatus:"正常",uptime:0,systemTimezone:8}),G=T({todayCosts:{totalCost:0,formatted:{totalCost:"$0.000000"}},totalCosts:{totalCost:0,formatted:{totalCost:"$0.000000"}}}),nt=T([]),s=T([]),Ct=T({data:[],topApiKeys:[],totalApiKeys:0}),X=T({data:[],topAccounts:[],totalAccounts:0,group:"claude",groupLabel:"Claude账户"}),rt={preset:"dashboard:date:preset",granularity:"dashboard:trend:granularity"},O="today",F="day",lt=l=>l==="hour"?[{value:"last24h",label:"近24小时",hours:24},{value:"yesterday",label:"昨天",hours:24},{value:"dayBefore",label:"前天",hours:24}]:[{value:"today",label:"今日",days:1},{value:"7days",label:"7天",days:7},{value:"30days",label:"30天",days:30}],Rt=(l,d)=>{try{return localStorage.getItem(l)||d}catch{return d}},tt=(l,d)=>{try{localStorage.setItem(l,d)}catch{}},Y=(l,d)=>lt(d).some(y=>y.value===l)?l:d==="hour"?"last24h":O,H=Rt(rt.granularity,F),wt=["day","hour"].includes(H)?H:F,Kt=Y(Rt(rt.preset,O),wt),o=T({type:"preset",preset:Kt,customStart:"",customEnd:"",customRange:null,presetOptions:lt(wt)}),M=T(wt),Dt=T("requests"),gt=T("claude"),Ft=Gt(()=>{const l=yt.value.uptime,d=Math.floor(l/86400),n=Math.floor(l%86400/3600),r=Math.floor(l%3600/60);return d>0?`${d}天 ${n}小时`:n>0?`${n}小时 ${r}分钟`:`${r}分钟`});function q(l,d=!0){const n=l.getFullYear(),r=l.getMonth(),y=l.getDate();return d?new Date(Date.UTC(n,r,y-1,16,0,0,0)):new Date(Date.UTC(n,r,y,15,59,59,999))}function it(l){const d=new Date;switch(l){case"today":return{start:q(d,!0),end:q(d,!1)};case"last24h":return{start:new Date(d.getTime()-24*60*60*1e3),end:new Date(d)};case"yesterday":{const n=new Date;return n.setDate(n.getDate()-1),{start:q(n,!0),end:q(n,!1)}}case"dayBefore":{const n=new Date;return n.setDate(n.getDate()-2),{start:q(n,!0),end:q(n,!1)}}default:return{start:new Date(d.getTime()-24*60*60*1e3),end:new Date(d)}}}const et=(l=o.value.preset,d=M.value)=>{tt(rt.preset,l),tt(rt.granularity,d)},W=()=>o.value.type==="preset"&&o.value.preset==="today"&&M.value==="day"?"hour":M.value;async function Tt(l=null){At.value=!0;try{let d={today:"today",all:"all"};l&&(d={today:{today:"today",all:"today"},"7days":{today:"7days",all:"7days"},monthly:{today:"monthly",all:"monthly"},all:{today:"today",all:"all"}}[l]||d);const[n,r,y]=await Promise.all([re(),Yt(d.today),Yt(d.all)]);if(n.success){const u=n.data.overview||{},b=n.data.recentActivity||{},_=n.data.systemAverages||{},w=n.data.realtimeMetrics||{},P=n.data.systemHealth||{};yt.value={totalApiKeys:u.totalApiKeys||0,activeApiKeys:u.activeApiKeys||0,totalAccounts:u.totalAccounts||u.totalClaudeAccounts||0,normalAccounts:u.normalAccounts||0,abnormalAccounts:u.abnormalAccounts||0,pausedAccounts:u.pausedAccounts||0,activeAccounts:u.activeAccounts||u.activeClaudeAccounts||0,rateLimitedAccounts:u.rateLimitedAccounts||u.rateLimitedClaudeAccounts||0,accountsByPlatform:u.accountsByPlatform||{claude:{total:0,normal:0,abnormal:0,paused:0,rateLimited:0},"claude-console":{total:0,normal:0,abnormal:0,paused:0,rateLimited:0},gemini:{total:0,normal:0,abnormal:0,paused:0,rateLimited:0},openai:{total:0,normal:0,abnormal:0,paused:0,rateLimited:0},azure_openai:{total:0,normal:0,abnormal:0,paused:0,rateLimited:0},bedrock:{total:0,normal:0,abnormal:0,paused:0,rateLimited:0}},todayRequests:b.requestsToday||0,totalRequests:u.totalRequestsUsed||0,todayTokens:b.tokensToday||0,todayInputTokens:b.inputTokensToday||0,todayOutputTokens:b.outputTokensToday||0,totalTokens:u.totalTokensUsed||0,totalInputTokens:u.totalInputTokensUsed||0,totalOutputTokens:u.totalOutputTokensUsed||0,totalCacheCreateTokens:u.totalCacheCreateTokensUsed||0,totalCacheReadTokens:u.totalCacheReadTokensUsed||0,todayCacheCreateTokens:b.cacheCreateTokensToday||0,todayCacheReadTokens:b.cacheReadTokensToday||0,systemRPM:_.rpm||0,systemTPM:_.tpm||0,realtimeRPM:w.rpm||0,realtimeTPM:w.tpm||0,metricsWindow:w.windowMinutes||5,isHistoricalMetrics:w.isHistorical||!1,systemStatus:P.redisConnected?"正常":"异常",uptime:P.uptime||0,systemTimezone:n.data.systemTimezone||8}}r.success&&y.success&&(G.value={todayCosts:r.data.totalCosts||{totalCost:0,formatted:{totalCost:"$0.000000"}},totalCosts:y.data.totalCosts||{totalCost:0,formatted:{totalCost:"$0.000000"}}})}catch(d){console.error("加载仪表板数据失败:",d)}finally{At.value=!1}}async function xt(l=7,d=W()){try{let n="/admin/usage-trend?";if(d==="hour")if(n+="granularity=hour",o.value.customRange&&o.value.customRange.length===2)n+=`&startDate=${encodeURIComponent(o.value.customRange[0])}`,n+=`&endDate=${encodeURIComponent(o.value.customRange[1])}`;else if(o.value.type==="preset"){const{start:y,end:u}=it(o.value.preset);n+=`&startDate=${encodeURIComponent(y.toISOString())}`,n+=`&endDate=${encodeURIComponent(u.toISOString())}`}else{const y=new Date;n+=`&startDate=${encodeURIComponent(new Date(y.getTime()-l*24*60*60*1e3).toISOString())}`,n+=`&endDate=${encodeURIComponent(y.toISOString())}`}else n+=`granularity=day&days=${l}`;const r=await Mt(n);r.success&&(nt.value=r.data)}catch(n){console.error("加载使用趋势失败:",n)}}async function at(l="daily",d=null){const n=d||W();try{let r=`/admin/model-stats?period=${l}`;if(o.value.type==="custom"||n==="hour"){if(o.value.customRange&&o.value.customRange.length===2)r+=`&startDate=${encodeURIComponent(o.value.customRange[0])}`,r+=`&endDate=${encodeURIComponent(o.value.customRange[1])}`;else if(n==="hour"&&o.value.type==="preset"){const{start:u,end:b}=it(o.value.preset);r+=`&startDate=${encodeURIComponent(u.toISOString())}`,r+=`&endDate=${encodeURIComponent(b.toISOString())}`}}else if(o.value.type==="preset"&&n==="day"){const u=new Date,b=o.value.presetOptions.find(_=>_.value===o.value.preset);if(b){let _,w;if(o.value.preset==="today")_=q(u,!0),w=q(u,!1);else{const P=new Date;P.setDate(P.getDate()-(b.days-1)),_=q(P,!0),w=q(u,!1)}r+=`&startDate=${encodeURIComponent(_.toISOString())}`,r+=`&endDate=${encodeURIComponent(w.toISOString())}`}}const y=await Mt(r);y.success&&(s.value=y.data)}catch(r){console.error("加载模型统计失败:",r)}}async function st(l="requests",d=null){const n=d||W();try{let r="/admin/api-keys-usage-trend?",y=7;if(n==="hour")if(r+="granularity=hour",o.value.customRange&&o.value.customRange.length===2)r+=`&startDate=${encodeURIComponent(o.value.customRange[0])}`,r+=`&endDate=${encodeURIComponent(o.value.customRange[1])}`;else if(o.value.type==="preset"){const{start:b,end:_}=it(o.value.preset);r+=`&startDate=${encodeURIComponent(b.toISOString())}`,r+=`&endDate=${encodeURIComponent(_.toISOString())}`}else{const b=new Date;r+=`&startDate=${encodeURIComponent(new Date(b.getTime()-24*60*60*1e3).toISOString())}`,r+=`&endDate=${encodeURIComponent(b.toISOString())}`}else y=o.value.type==="preset"?o.value.preset==="today"?1:o.value.preset==="7days"?7:30:ft(o.value.customStart,o.value.customEnd),r+=`granularity=day&days=${y}`;r+=`&metric=${l}`;const u=await Mt(r);u.success&&(Ct.value={data:u.data||[],topApiKeys:u.topApiKeys||[],totalApiKeys:u.totalApiKeys||0})}catch(r){console.error("加载API Keys趋势失败:",r)}}async function Z(l=gt.value,d=null){const n=d||W();try{let r="/admin/account-usage-trend?",y=7;if(n==="hour")if(r+="granularity=hour",o.value.customRange&&o.value.customRange.length===2)r+=`&startDate=${encodeURIComponent(o.value.customRange[0])}`,r+=`&endDate=${encodeURIComponent(o.value.customRange[1])}`;else if(o.value.type==="preset"){const{start:b,end:_}=it(o.value.preset);r+=`&startDate=${encodeURIComponent(b.toISOString())}`,r+=`&endDate=${encodeURIComponent(_.toISOString())}`}else{const b=new Date;r+=`&startDate=${encodeURIComponent(new Date(b.getTime()-24*60*60*1e3).toISOString())}`,r+=`&endDate=${encodeURIComponent(b.toISOString())}`}else y=o.value.type==="preset"?o.value.preset==="today"?1:o.value.preset==="7days"?7:30:ft(o.value.customStart,o.value.customEnd),r+=`granularity=day&days=${y}`;r+=`&group=${l}`;const u=await Mt(r);u.success&&(X.value={data:u.data||[],topAccounts:u.topAccounts||[],totalAccounts:u.totalAccounts||0,group:u.group||l,groupLabel:u.groupLabel||""})}catch(r){console.error("加载账号使用趋势失败:",r)}}function j(l,d={}){const{silent:n=!1,skipSave:r=!1}=d,y=Y(l,M.value);o.value.type="preset",o.value.preset=y;const u=o.value.presetOptions.find(h=>h.value===y),b=new Date;let _,w;if(M.value==="hour"){const h=it(y);_=h.start,w=h.end}else _=new Date(b),w=new Date(b),y==="today"?(_.setHours(0,0,0,0),w.setHours(23,59,59,999)):u!=null&&u.days&&(_.setDate(b.getDate()-(u.days-1)),_.setHours(0,0,0,0),w.setHours(23,59,59,999));const P=h=>{const V=new Date(h),vt=V.getFullYear(),bt=String(V.getMonth()+1).padStart(2,"0"),ht=String(V.getDate()).padStart(2,"0"),ct=String(V.getHours()).padStart(2,"0"),It=String(V.getMinutes()).padStart(2,"0"),ut=String(V.getSeconds()).padStart(2,"0");return`${vt}-${bt}-${ht} ${ct}:${It}:${ut}`};o.value.customStart=_?_.toISOString().split("T")[0]:"",o.value.customEnd=w?w.toISOString().split("T")[0]:"",o.value.customRange=_&&w?[P(_),P(w)]:null,r||et(o.value.preset,M.value),n||N()}function Lt(l){if(l&&l.length===2){o.value.type="custom",o.value.preset="",o.value.customRange=l,o.value.customStart=l[0].split(" ")[0],o.value.customEnd=l[1].split(" ")[0];const d=y=>{const[u,b]=y.split(" "),[_,w,P]=u.split("-").map(Number),[h,V,vt]=b.split(":").map(Number);return new Date(_,w-1,P,h,V,vt)},n=d(l[0]),r=d(l[1]);if(M.value==="hour"){if((r-n)/36e5>24){Ot("小时粒度下日期范围不能超过24小时","warning");return}}else if(Math.ceil((r-n)/864e5)+1>31){Ot("日期范围不能超过 31 天","warning");return}N()}else l===null&&j(M.value==="hour"?"last24h":O)}function St(l,d={}){const{silent:n=!1,skipSave:r=!1,presetOverride:y}=d;if(M.value=l,l==="hour"){if(o.value.presetOptions=lt("hour"),o.value.type==="custom"&&o.value.customRange&&o.value.customRange.length===2){const b=new Date(o.value.customRange[0]);if((new Date(o.value.customRange[1])-b)/(1e3*60*60)>24){Ot("小时粒度下日期范围不能超过24小时,已切换到近24小时","warning"),j("last24h",{silent:n,skipSave:r});return}}}else o.value.presetOptions=lt("day");if(o.value.type==="custom"){r||et(o.value.preset||O,M.value),n||N();return}const u=y||Y(o.value.preset,M.value);j(u,{silent:!0,skipSave:!0}),r||et(o.value.preset,M.value),n||N()}async function N(){let l,d="monthly";const n=W();if(o.value.type==="preset"){const r=o.value.presetOptions.find(y=>y.value===o.value.preset);n==="hour"?(l=1,d="daily"):(l=r?r.days:7,o.value.preset==="today"?d="daily":d="monthly")}else{if(n==="hour"){const r=new Date(o.value.customRange[0]),y=new Date(o.value.customRange[1]),u=Math.ceil((y-r)/(1e3*60*60));l=Math.ceil(u/24)||1}else l=ft(o.value.customStart,o.value.customEnd);d="daily"}await Promise.all([xt(l,n),at(d,n),st(Dt.value,n),Z(gt.value,n)])}function dt(l){return gt.value=l,Z(l,W())}function ft(l,d){if(!l||!d)return 7;const n=new Date(l),r=new Date(d),y=Math.abs(r-n);return Math.ceil(y/(1e3*60*60*24))||7}function Et(l){return l>new Date}return j(o.value.preset,{silent:!0,skipSave:!0}),et(o.value.preset,M.value),{loading:At,dashboardData:yt,costsData:G,trendData:nt,dashboardModelStats:s,apiKeysTrendData:Ct,accountUsageTrendData:X,dateFilter:o,trendGranularity:M,apiKeysTrendMetric:Dt,accountUsageGroup:gt,formattedUptime:Ft,loadDashboardData:Tt,loadUsageTrend:xt,loadModelStats:at,loadApiKeysTrend:st,loadAccountUsageTrend:Z,setDateFilterPreset:j,onCustomDateRangeChange:Lt,setTrendGranularity:St,refreshChartsData:N,setAccountUsageGroup:dt,disabledDate:Et}}),ue={class:"mb-4 grid grid-cols-1 gap-3 sm:mb-6 sm:grid-cols-2 sm:gap-4 md:mb-8 md:gap-6 lg:grid-cols-4"},me={class:"stat-card"},pe={class:"flex items-center justify-between"},ye={class:"text-2xl font-bold text-gray-900 dark:text-gray-100 sm:text-3xl"},ge={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},xe={class:"stat-card"},fe={class:"flex items-center justify-between"},ve={class:"flex-1"},be={class:"flex flex-wrap items-baseline gap-x-2"},he={class:"text-2xl font-bold text-gray-900 dark:text-gray-100 sm:text-3xl"},ke={key:0,class:"flex items-center gap-2"},_e=["title"],Ce={class:"text-xs font-medium text-gray-700 dark:text-gray-300"},we=["title"],De={class:"text-xs font-medium text-gray-700 dark:text-gray-300"},Te=["title"],Se={class:"text-xs font-medium text-gray-700 dark:text-gray-300"},$e=["title"],Ae={class:"text-xs font-medium text-gray-700 dark:text-gray-300"},Re=["title"],Ie={class:"text-xs font-medium text-gray-700 dark:text-gray-300"},Pe=["title"],Be={class:"text-xs font-medium text-gray-700 dark:text-gray-300"},Ue=["title"],Me={class:"text-xs font-medium text-gray-700 dark:text-gray-300"},Oe={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Ke={key:0,class:"text-red-600"},Fe={key:1,class:"text-gray-600 dark:text-gray-400"},Le={key:2,class:"text-yellow-600"},Ee={class:"stat-card"},qe={class:"flex items-center justify-between"},ze={class:"text-2xl font-bold text-gray-900 dark:text-gray-100 sm:text-3xl"},Ge={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},He={class:"stat-card"},je={class:"flex items-center justify-between"},Ne={class:"text-2xl font-bold text-green-600 sm:text-3xl"},Ve={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Ye={class:"mb-4 grid grid-cols-1 gap-3 sm:mb-6 sm:grid-cols-2 sm:gap-4 md:mb-8 md:gap-6"},We={class:"stat-card"},Ze={class:"flex items-center justify-between"},Qe={class:"text-2xl font-bold text-gray-900 dark:text-gray-100 sm:text-3xl"},Je={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Xe={class:"mt-3 flex items-center justify-between gap-3"},ta={class:"text-xs text-gray-500 dark:text-gray-400"},ea=["disabled"],aa={class:"card p-4 sm:p-6"},sa={class:"mb-3 flex items-center justify-between"},oa={class:"text-xs text-gray-500 dark:text-gray-400"},na={key:0,class:"py-6 text-center text-sm text-gray-500 dark:text-gray-400"},ra={key:1,class:"py-6 text-center text-sm text-green-600 dark:text-green-400"},la={key:2,class:"max-h-64 space-y-2 overflow-y-auto"},ia={class:"flex items-center justify-between gap-2"},da={class:"truncate text-sm font-medium text-gray-900 dark:text-gray-100"},ca={class:"rounded bg-gray-100 px-2 py-0.5 text-xs text-gray-600 dark:bg-gray-700 dark:text-gray-300"},ua={class:"mt-1 text-xs text-gray-600 dark:text-gray-400"},ma={key:0},pa={key:1},ya={key:0,class:"mt-2"},ga={class:"mb-1 flex items-center justify-between text-xs text-gray-600 dark:text-gray-400"},xa={class:"text-red-600 dark:text-red-400"},fa={class:"h-2 w-full rounded-full bg-gray-200 dark:bg-gray-700"},va={class:"mb-4 grid grid-cols-1 gap-3 sm:mb-6 sm:grid-cols-2 sm:gap-4 md:mb-8 md:gap-6 lg:grid-cols-4"},ba={class:"stat-card"},ha={class:"flex items-center justify-between"},ka={class:"mr-8 flex-1"},_a={class:"mb-2 flex flex-wrap items-baseline gap-2"},Ca={class:"text-xl font-bold text-blue-600 sm:text-2xl md:text-3xl"},wa={class:"text-sm font-medium text-green-600"},Da={class:"text-xs text-gray-500 dark:text-gray-400"},Ta={class:"flex flex-wrap items-center justify-between gap-x-4"},Sa={class:"font-medium"},$a={class:"font-medium"},Aa={key:0,class:"text-purple-600"},Ra={class:"font-medium"},Ia={key:1,class:"text-purple-600"},Pa={class:"font-medium"},Ba={class:"stat-card"},Ua={class:"flex items-center justify-between"},Ma={class:"mr-8 flex-1"},Oa={class:"mb-2 flex flex-wrap items-baseline gap-2"},Ka={class:"text-xl font-bold text-emerald-600 sm:text-2xl md:text-3xl"},Fa={class:"text-sm font-medium text-green-600"},La={class:"text-xs text-gray-500 dark:text-gray-400"},Ea={class:"flex flex-wrap items-center justify-between gap-x-4"},qa={class:"font-medium"},za={class:"font-medium"},Ga={key:0,class:"text-purple-600"},Ha={class:"font-medium"},ja={key:1,class:"text-purple-600"},Na={class:"font-medium"},Va={class:"stat-card"},Ya={class:"flex items-center justify-between"},Wa={class:"mb-1 text-xs font-semibold text-gray-600 dark:text-gray-400 sm:text-sm"},Za={class:"text-xs text-gray-400"},Qa={class:"text-2xl font-bold text-orange-600 sm:text-3xl"},Ja={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Xa={key:0,class:"text-yellow-600"},ts={class:"stat-card"},es={class:"flex items-center justify-between"},as={class:"mb-1 text-xs font-semibold text-gray-600 dark:text-gray-400 sm:text-sm"},ss={class:"text-xs text-gray-400"},os={class:"text-2xl font-bold text-rose-600 sm:text-3xl"},ns={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},rs={key:0,class:"text-yellow-600"},ls={class:"mb-8"},is={class:"mb-4 flex flex-col gap-4 sm:mb-6"},ds={class:"flex flex-col gap-2 lg:flex-row lg:items-center lg:justify-end"},cs={class:"flex flex-shrink-0 gap-1 overflow-x-auto rounded-lg bg-gray-100 p-1 dark:bg-gray-700"},us=["onClick"],ms={class:"flex gap-1 rounded-lg bg-gray-100 p-1 dark:bg-gray-700"},ps={class:"flex items-center gap-2"},ys={key:0,class:"text-xs text-orange-600"},gs={class:"flex items-center gap-2"},xs={class:"flex items-center rounded-lg bg-gray-100 px-3 py-1 dark:bg-gray-700"},fs={class:"relative inline-flex cursor-pointer items-center"},vs={class:"ml-2.5 flex select-none items-center gap-1 text-sm font-medium text-gray-600 dark:text-gray-300"},bs=["disabled"],hs={class:"hidden sm:inline"},ks={class:"grid grid-cols-1 gap-6 lg:grid-cols-2"},_s={class:"card p-4 sm:p-6"},Cs={class:"relative",style:{height:"250px"}},ws={class:"card p-4 sm:p-6"},Ds={key:0,class:"py-8 text-center"},Ts={key:1,class:"max-h-[250px] overflow-auto sm:max-h-[300px]"},Ss={class:"min-w-full"},$s={class:"divide-y divide-gray-200 dark:divide-gray-600"},As={class:"px-2 py-2 text-xs text-gray-900 dark:text-gray-100 sm:px-4 sm:text-sm"},Rs=["title"],Is={class:"hidden px-2 py-2 text-right text-xs text-gray-600 dark:text-gray-400 sm:table-cell sm:px-4 sm:text-sm"},Ps={class:"px-2 py-2 text-right text-xs text-gray-600 dark:text-gray-400 sm:px-4 sm:text-sm"},Bs={class:"px-2 py-2 text-right text-xs font-medium text-green-600 sm:px-4 sm:text-sm"},Us={class:"hidden px-2 py-2 text-right text-xs font-medium sm:table-cell sm:px-4 sm:text-sm"},Ms={class:"inline-flex items-center rounded-full bg-blue-100 px-2 py-1 text-xs font-medium text-blue-800 dark:bg-blue-900/30 dark:text-blue-300"},Os={class:"mb-4 sm:mb-6 md:mb-8"},Ks={class:"card p-4 sm:p-6"},Fs={class:"sm:h-[300px]",style:{height:"250px"}},Ls={class:"mb-4 sm:mb-6 md:mb-8"},Es={class:"card p-4 sm:p-6"},qs={class:"mb-4 flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between"},zs={class:"flex gap-1 rounded-lg bg-gray-100 p-1 dark:bg-gray-700"},Gs={class:"mb-4 text-xs text-gray-600 dark:text-gray-400 sm:text-sm"},Hs={key:0},js={key:1},Ns={class:"sm:h-[350px]",style:{height:"300px"}},Vs={class:"mb-4 sm:mb-6 md:mb-8"},Ys={class:"card p-4 sm:p-6"},Ws={class:"mb-4 flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between"},Zs={class:"flex flex-col gap-1 sm:flex-row sm:items-center sm:gap-3"},Qs={class:"text-xs text-gray-500 dark:text-gray-400 sm:text-sm"},Js={class:"flex flex-wrap items-center gap-2"},Xs={class:"flex gap-1 rounded-lg bg-gray-100 p-1 dark:bg-gray-700"},to=["onClick"],eo={class:"mb-4 flex flex-wrap items-center gap-2 text-xs text-gray-600 dark:text-gray-400 sm:text-sm"},ao={key:0},so={key:0,class:"py-12 text-center text-sm text-gray-500 dark:text-gray-400"},oo={key:1,class:"sm:h-[350px]",style:{height:"300px"}},no={__name:"DashboardView",setup(At){const yt=ce(),G=ie(),{isDarkMode:nt}=Vt(G),{dashboardData:s,costsData:Ct,dashboardModelStats:X,trendData:rt,apiKeysTrendData:O,accountUsageTrendData:F,accountUsageGroup:lt,formattedUptime:Rt,dateFilter:tt,trendGranularity:Y,apiKeysTrendMetric:H}=Vt(yt),{loadDashboardData:wt,loadApiKeysTrend:Kt,setDateFilterPreset:o,onCustomDateRangeChange:M,setTrendGranularity:Dt,refreshChartsData:gt,setAccountUsageGroup:Ft,disabledDate:q}=yt,it=[new Date(2e3,1,1,0,0,0),new Date(2e3,2,1,23,59,59)],et=T(null),W=T(null),Tt=T(null),xt=T(null);let at=null,st=null,Z=null,j=null;const Lt=[{value:"claude",label:"Claude"},{value:"openai",label:"OpenAI"},{value:"gemini",label:"Gemini"},{value:"droid",label:"Droid"}],St=T(!1),N=T({totalBalance:0,totalCost:0,lowBalanceCount:0,platforms:{}}),dt=T(!1),ft=T(null),Et=c=>({claude:"Claude","claude-console":"Claude Console",gemini:"Gemini","gemini-api":"Gemini API",openai:"OpenAI","openai-responses":"OpenAI Responses",azure_openai:"Azure OpenAI",bedrock:"Bedrock",droid:"Droid",ccr:"CCR"})[c]||c,l=Gt(()=>{var D;const c=[],e=((D=N.value)==null?void 0:D.platforms)||{};return Object.entries(e).forEach(([m,A])=>{(Array.isArray(A==null?void 0:A.accounts)?A.accounts:[]).forEach(E=>{var k,v;const L=E==null?void 0:E.data;if(!L)return;const C=(k=L.balance)==null?void 0:k.amount,R=(v=L.quota)==null?void 0:v.percentage,g=typeof C=="number"&&C<10,p=typeof R=="number"&&R>90;(g||p)&&c.push({...L,name:(E==null?void 0:E.name)||L.accountId,platform:L.platform||m})})}),c}),d=c=>{const e=Number(c);return Number.isFinite(e)?e>=1?`$${e.toFixed(2)}`:e>=.01?`$${e.toFixed(3)}`:`$${e.toFixed(6)}`:"$0.00"},n=c=>{if(!c)return"未知";const e=new Date(c);return Number.isNaN(e.getTime())?"未知":e.toLocaleTimeString("zh-CN",{hour:"2-digit",minute:"2-digit"})},r=async()=>{dt.value=!0;const c=await de();c!=null&&c.success?(N.value=c.data||{totalBalance:0,totalCost:0,lowBalanceCount:0,platforms:{}},ft.value=new Date().toISOString()):c!=null&&c.message&&(console.debug("加载余额汇总失败:",c.message),Ot("加载余额汇总失败","error")),dt.value=!1},y=T(!1),u=T(30),b=T(null),_=T(0),w=T(null),P=T(!1),h=Gt(()=>({text:nt.value?"#e5e7eb":"#374151",grid:nt.value?"rgba(75, 85, 99, 0.3)":"rgba(0, 0, 0, 0.1)",legend:nt.value?"#e5e7eb":"#374151"}));function V(c){return Number.isFinite(c)?c>=1?`$${c.toFixed(2)}`:c>=.01?`$${c.toFixed(3)}`:`$${c.toFixed(6)}`:"$0.000000"}function vt(c,e){if(!e||e.length===0)return 0;const D=e.reduce((m,A)=>m+A.allTokens,0);return D===0?0:(c/D*100).toFixed(1)}function bt(){if(!et.value)return;at&&at.destroy();const c=X.value||[],e={labels:c.map(D=>D.model),datasets:[{data:c.map(D=>D.allTokens),backgroundColor:["#3B82F6","#10B981","#F59E0B","#EF4444","#8B5CF6","#EC4899","#14B8A6","#F97316","#6366F1","#84CC16"],borderWidth:0}]};at=new Ut(et.value,{type:"doughnut",data:e,options:{responsive:!0,maintainAspectRatio:!1,plugins:{legend:{position:"bottom",labels:{padding:15,usePointStyle:!0,font:{size:12},color:h.value.legend}},tooltip:{callbacks:{label:function(D){const m=D.label||"",A=U(D.parsed),ot=vt(D.parsed,c);return`${m}: ${A} (${ot}%)`}}}}}})}function ht(){var g;if(!W.value)return;st&&st.destroy();const c=rt.value||[],e=c.map(p=>p.inputTokens||0),D=c.map(p=>p.outputTokens||0),m=c.map(p=>p.cacheCreateTokens||0),A=c.map(p=>p.cacheReadTokens||0),ot=c.map(p=>p.requests||0),E=c.map(p=>p.cost||0),L=(g=c[0])!=null&&g.date?"date":"hour",R={labels:c.map(p=>{if(p.label)return p.label;if(L==="hour"){const v=new Date(p.hour),S=String(v.getMonth()+1).padStart(2,"0"),z=String(v.getDate()).padStart(2,"0"),K=String(v.getHours()).padStart(2,"0");return`${S}/${z} ${K}:00`}const k=p.date;if(k&&k.includes("-")){const v=k.split("-");if(v.length>=3)return`${v[1]}/${v[2]}`}return p.date}),datasets:[{label:"输入Token",data:e,borderColor:G.currentColorScheme.primary,backgroundColor:`${G.currentColorScheme.primary}1a`,tension:.3},{label:"输出Token",data:D,borderColor:G.currentColorScheme.accent,backgroundColor:`${G.currentColorScheme.accent}1a`,tension:.3},{label:"缓存创建Token",data:m,borderColor:"rgb(59, 130, 246)",backgroundColor:"rgba(59, 130, 246, 0.1)",tension:.3},{label:"缓存读取Token",data:A,borderColor:G.currentColorScheme.secondary,backgroundColor:`${G.currentColorScheme.secondary}1a`,tension:.3},{label:"费用 (USD)",data:E,borderColor:"rgb(34, 197, 94)",backgroundColor:"rgba(34, 197, 94, 0.1)",tension:.3,yAxisID:"y2"},{label:"请求数",data:ot,borderColor:"rgb(16, 185, 129)",backgroundColor:"rgba(16, 185, 129, 0.1)",tension:.3,yAxisID:"y1"}]};st=new Ut(W.value,{type:"line",data:R,options:{responsive:!0,maintainAspectRatio:!1,interaction:{mode:"index",intersect:!1},plugins:{title:{display:!0,text:"Token使用趋势",font:{size:16,weight:"bold"},color:h.value.text},legend:{position:"top",labels:{color:h.value.legend}},tooltip:{mode:"index",intersect:!1,itemSort:function(p,k){const v=p.dataset.label||"",S=k.dataset.label||"";return v==="费用 (USD)"||S==="费用 (USD)"?v==="费用 (USD)"?-1:1:v==="请求数"||S==="请求数"?v==="请求数"?1:-1:k.parsed.y-p.parsed.y},callbacks:{label:function(p){const k=p.dataset.label||"";let v=p.parsed.y;return k==="费用 (USD)"?v<.01?k+": $"+v.toFixed(6):k+": $"+v.toFixed(4):k==="请求数"?k+": "+v.toLocaleString()+" 次":v>=1e6?k+": "+(v/1e6).toFixed(2)+"M tokens":v>=1e3?k+": "+(v/1e3).toFixed(2)+"K tokens":k+": "+v.toLocaleString()+" tokens"}}}},scales:{x:{type:"category",display:!0,title:{display:!0,text:Y==="hour"?"时间":"日期",color:h.value.text},ticks:{color:h.value.text},grid:{color:h.value.grid}},y:{type:"linear",display:!0,position:"left",min:0,title:{display:!0,text:"Token数量",color:h.value.text},ticks:{callback:function(p){return U(p)},color:h.value.text},grid:{color:h.value.grid}},y1:{type:"linear",display:!0,position:"right",min:0,title:{display:!0,text:"请求数",color:h.value.text},grid:{drawOnChartArea:!1},ticks:{callback:function(p){return p.toLocaleString()},color:h.value.text}},y2:{type:"linear",display:!1,position:"right",min:0}}}})}function ct(){var E,L;if(!Tt.value)return;Z&&Z.destroy();const c=O.value.data||[],e=H.value,D=["#3B82F6","#10B981","#F59E0B","#EF4444","#8B5CF6","#EC4899","#14B8A6","#F97316","#6366F1","#84CC16"],m=((E=O.value.topApiKeys)==null?void 0:E.map((C,R)=>{var k,v;const g=O.value.data.map(S=>!S.apiKeys||!S.apiKeys[C]?0:e==="tokens"?S.apiKeys[C].tokens:S.apiKeys[C].requests||0);return{label:((v=(k=O.value.data.find(S=>S.apiKeys&&S.apiKeys[C]))==null?void 0:k.apiKeys[C])==null?void 0:v.name)||`API Key ${C}`,data:g,borderColor:D[R%D.length],backgroundColor:D[R%D.length]+"20",tension:.4,fill:!1}}))||[],A=(L=c[0])!=null&&L.date?"date":"hour",ot={labels:c.map(C=>{if(C.label)return C.label;if(A==="hour"){const g=new Date(C.hour),p=String(g.getMonth()+1).padStart(2,"0"),k=String(g.getDate()).padStart(2,"0"),v=String(g.getHours()).padStart(2,"0");return`${p}/${k} ${v}:00`}const R=C.date;if(R&&R.includes("-")){const g=R.split("-");if(g.length>=3)return`${g[1]}/${g[2]}`}return C.date}),datasets:m};Z=new Ut(Tt.value,{type:"line",data:ot,options:{responsive:!0,maintainAspectRatio:!1,plugins:{legend:{position:"bottom",labels:{padding:20,usePointStyle:!0,font:{size:12},color:h.value.legend}},tooltip:{mode:"index",intersect:!1,itemSort:function(C,R){return R.parsed.y-C.parsed.y},callbacks:{label:function(C){var K;const R=C.dataset.label||"",g=C.parsed.y,p=C.dataIndex,k=O.value.data[p],S=C.chart.data.datasets.map((B,kt)=>({value:B.data[p]||0,index:kt})).sort((B,kt)=>kt.value-B.value).findIndex(B=>B.index===C.datasetIndex)+1;let z="";if(S===1?z="🥇 ":S===2?z="🥈 ":S===3&&(z="🥉 "),H.value==="tokens"){let B="";g>=1e6?B=(g/1e6).toFixed(2)+"M":g>=1e3?B=(g/1e3).toFixed(2)+"K":B=g.toLocaleString();const kt=O.value.topApiKeys[C.datasetIndex],mt=(K=k==null?void 0:k.apiKeys)==null?void 0:K[kt],_t=(mt==null?void 0:mt.formattedCost)||"$0.00";return`${z}${R}: ${B} tokens (${_t})`}else return`${z}${R}: ${g.toLocaleString()} 次`}}}},scales:{x:{type:"category",display:!0,title:{display:!0,text:Y==="hour"?"时间":"日期",color:h.value.text},ticks:{color:h.value.text},grid:{color:h.value.grid}},y:{beginAtZero:!0,min:0,title:{display:!0,text:H.value==="tokens"?"Token 数量":"请求次数",color:h.value.text},ticks:{callback:function(C){return U(C)},color:h.value.text},grid:{color:h.value.grid}}}}})}async function It(){await Kt(H.value),await Q(),ct()}function ut(){var L,C,R;if(!xt.value)return;j&&j.destroy();const c=((L=F.value)==null?void 0:L.data)||[],e=((C=F.value)==null?void 0:C.topAccounts)||[],D=["#2563EB","#059669","#D97706","#DC2626","#7C3AED","#F472B6","#0EA5E9","#F97316","#6366F1","#22C55E"],m=e.map((g,p)=>{var S,z;const k=c.map(K=>!K.accounts||!K.accounts[g]?0:K.accounts[g].cost||0);return{label:((z=(S=c.find(K=>K.accounts&&K.accounts[g]))==null?void 0:S.accounts[g])==null?void 0:z.name)||`账号 ${String(g).slice(0,6)}`,data:k,borderColor:D[p%D.length],backgroundColor:D[p%D.length]+"20",tension:.4,fill:!1}}),A=(R=c[0])!=null&&R.date?"date":"hour",ot={labels:c.map(g=>{if(g.label)return g.label;if(A==="hour"){const p=new Date(g.hour),k=String(p.getMonth()+1).padStart(2,"0"),v=String(p.getDate()).padStart(2,"0"),S=String(p.getHours()).padStart(2,"0");return`${k}/${v} ${S}:00`}if(g.date&&g.date.includes("-")){const p=g.date.split("-");if(p.length>=3)return`${p[1]}/${p[2]}`}return g.date}),datasets:m},E=e;j=new Ut(xt.value,{type:"line",data:ot,options:{responsive:!0,maintainAspectRatio:!1,interaction:{mode:"index",intersect:!1},plugins:{legend:{position:"bottom",labels:{padding:20,usePointStyle:!0,font:{size:12},color:h.value.legend}},tooltip:{mode:"index",intersect:!1,itemSort:(g,p)=>p.parsed.y-g.parsed.y,callbacks:{label:function(g){var Nt;const p=g.dataset.label||"",k=g.parsed.y||0,v=g.dataIndex,S=g.datasetIndex,z=E[S],K=F.value.data[v],B=(Nt=K==null?void 0:K.accounts)==null?void 0:Nt[z],mt=g.chart.data.datasets.map(($t,zt)=>({value:$t.data[v]||0,index:zt})).sort(($t,zt)=>zt.value-$t.value).findIndex($t=>$t.index===S)+1;let _t="";mt===1?_t="🥇 ":mt===2?_t="🥈 ":mt===3&&(_t="🥉 ");const Zt=(B==null?void 0:B.formattedCost)||V(k),Qt=(B==null?void 0:B.requests)||0;return`${_t}${p}: ${Zt} / ${Qt.toLocaleString()} 次`}}}},scales:{x:{type:"category",display:!0,title:{display:!0,text:Y.value==="hour"?"时间":"日期",color:h.value.text},ticks:{color:h.value.text},grid:{color:h.value.grid}},y:{beginAtZero:!0,min:0,title:{display:!0,text:"消耗金额 (USD)",color:h.value.text},ticks:{callback:g=>V(Number(g)),color:h.value.text},grid:{color:h.value.grid}}}}})}async function Wt(c){if(!(lt.value===c||St.value)){St.value=!0;try{await Ft(c),await Q(),ut()}finally{St.value=!1}}}pt(X,()=>{Q(()=>bt())}),pt(rt,()=>{Q(()=>ht())}),pt(O,()=>{Q(()=>ct())}),pt(F,()=>{Q(()=>ut())});async function qt(){if(!P.value){P.value=!0;try{await Promise.all([wt(),gt(),r()])}finally{P.value=!1}}}function Ht(){y.value&&(_.value=u.value,w.value&&clearInterval(w.value),b.value&&clearTimeout(b.value),w.value=setInterval(()=>{_.value--,_.value<=0&&clearInterval(w.value)},1e3),b.value=setTimeout(async()=>{await qt(),y.value&&Ht()},u.value*1e3))}function jt(){w.value&&(clearInterval(w.value),w.value=null),b.value&&(clearTimeout(b.value),b.value=null),_.value=0}return pt(y,c=>{c?Ht():jt()}),pt(nt,()=>{Q(()=>{bt(),ht(),ct(),ut()})}),pt(()=>G.colorScheme,()=>{Q(()=>{bt(),ht(),ct(),ut()})}),te(async()=>{await qt(),await Q(),bt(),ht(),ct(),ut()}),ee(()=>{jt(),at&&at.destroy(),st&&st.destroy(),Z&&Z.destroy(),j&&j.destroy()}),(c,e)=>{const D=Jt;return f(),x("div",null,[t("div",ue,[t("div",me,[t("div",pe,[t("div",null,[e[7]||(e[7]=t("p",{class:"mb-1 text-xs font-semibold text-gray-600 dark:text-gray-400 sm:text-sm"}," 总API Keys ",-1)),t("p",ye,i(a(s).totalApiKeys),1),t("p",ge," 活跃: "+i(a(s).activeApiKeys||0),1)]),e[8]||(e[8]=t("div",{class:"stat-icon flex-shrink-0 bg-gradient-to-br from-blue-500 to-blue-600"},[t("i",{class:"fas fa-key"})],-1))])]),t("div",xe,[t("div",fe,[t("div",ve,[e[16]||(e[16]=t("p",{class:"mb-1 text-xs font-semibold text-gray-600 dark:text-gray-400 sm:text-sm"}," 服务账户 ",-1)),t("div",be,[t("p",he,i(a(s).totalAccounts),1),a(s).accountsByPlatform?(f(),x("div",ke,[a(s).accountsByPlatform.claude&&a(s).accountsByPlatform.claude.total>0?(f(),x("div",{key:0,class:"inline-flex items-center gap-0.5",title:`Claude: ${a(s).accountsByPlatform.claude.total} 个 (正常: ${a(s).accountsByPlatform.claude.normal})`},[e[9]||(e[9]=t("i",{class:"fas fa-brain text-xs text-indigo-600"},null,-1)),t("span",Ce,i(a(s).accountsByPlatform.claude.total),1)],8,_e)):$("",!0),a(s).accountsByPlatform["claude-console"]&&a(s).accountsByPlatform["claude-console"].total>0?(f(),x("div",{key:1,class:"inline-flex items-center gap-0.5",title:`Console: ${a(s).accountsByPlatform["claude-console"].total} 个 (正常: ${a(s).accountsByPlatform["claude-console"].normal})`},[e[10]||(e[10]=t("i",{class:"fas fa-terminal text-xs text-purple-600"},null,-1)),t("span",De,i(a(s).accountsByPlatform["claude-console"].total),1)],8,we)):$("",!0),a(s).accountsByPlatform.gemini&&a(s).accountsByPlatform.gemini.total>0?(f(),x("div",{key:2,class:"inline-flex items-center gap-0.5",title:`Gemini: ${a(s).accountsByPlatform.gemini.total} 个 (正常: ${a(s).accountsByPlatform.gemini.normal})`},[e[11]||(e[11]=t("i",{class:"fas fa-robot text-xs text-yellow-600"},null,-1)),t("span",Se,i(a(s).accountsByPlatform.gemini.total),1)],8,Te)):$("",!0),a(s).accountsByPlatform.bedrock&&a(s).accountsByPlatform.bedrock.total>0?(f(),x("div",{key:3,class:"inline-flex items-center gap-0.5",title:`Bedrock: ${a(s).accountsByPlatform.bedrock.total} 个 (正常: ${a(s).accountsByPlatform.bedrock.normal})`},[e[12]||(e[12]=t("i",{class:"fab fa-aws text-xs text-orange-600"},null,-1)),t("span",Ae,i(a(s).accountsByPlatform.bedrock.total),1)],8,$e)):$("",!0),a(s).accountsByPlatform.openai&&a(s).accountsByPlatform.openai.total>0?(f(),x("div",{key:4,class:"inline-flex items-center gap-0.5",title:`OpenAI: ${a(s).accountsByPlatform.openai.total} 个 (正常: ${a(s).accountsByPlatform.openai.normal})`},[e[13]||(e[13]=t("i",{class:"fas fa-openai text-xs text-gray-100"},null,-1)),t("span",Ie,i(a(s).accountsByPlatform.openai.total),1)],8,Re)):$("",!0),a(s).accountsByPlatform.azure_openai&&a(s).accountsByPlatform.azure_openai.total>0?(f(),x("div",{key:5,class:"inline-flex items-center gap-0.5",title:`Azure OpenAI: ${a(s).accountsByPlatform.azure_openai.total} 个 (正常: ${a(s).accountsByPlatform.azure_openai.normal})`},[e[14]||(e[14]=t("i",{class:"fab fa-microsoft text-xs text-blue-600"},null,-1)),t("span",Be,i(a(s).accountsByPlatform.azure_openai.total),1)],8,Pe)):$("",!0),a(s).accountsByPlatform["openai-responses"]&&a(s).accountsByPlatform["openai-responses"].total>0?(f(),x("div",{key:6,class:"inline-flex items-center gap-0.5",title:`OpenAI Responses: ${a(s).accountsByPlatform["openai-responses"].total} 个 (正常: ${a(s).accountsByPlatform["openai-responses"].normal})`},[e[15]||(e[15]=t("i",{class:"fas fa-server text-xs text-cyan-600"},null,-1)),t("span",Me,i(a(s).accountsByPlatform["openai-responses"].total),1)],8,Ue)):$("",!0)])):$("",!0)]),t("p",Oe,[I(" 正常: "+i(a(s).normalAccounts||0)+" ",1),a(s).abnormalAccounts>0?(f(),x("span",Ke," | 异常: "+i(a(s).abnormalAccounts),1)):$("",!0),a(s).pausedAccounts>0?(f(),x("span",Fe," | 停止调度: "+i(a(s).pausedAccounts),1)):$("",!0),a(s).rateLimitedAccounts>0?(f(),x("span",Le," | 限流: "+i(a(s).rateLimitedAccounts),1)):$("",!0)])]),e[17]||(e[17]=t("div",{class:"stat-icon ml-2 flex-shrink-0 bg-gradient-to-br from-green-500 to-green-600"},[t("i",{class:"fas fa-user-circle"})],-1))])]),t("div",Ee,[t("div",qe,[t("div",null,[e[18]||(e[18]=t("p",{class:"mb-1 text-xs font-semibold text-gray-600 dark:text-gray-400 sm:text-sm"}," 今日请求 ",-1)),t("p",ze,i(a(s).todayRequests),1),t("p",Ge," 总请求: "+i(a(U)(a(s).totalRequests||0)),1)]),e[19]||(e[19]=t("div",{class:"stat-icon flex-shrink-0 bg-gradient-to-br from-purple-500 to-purple-600"},[t("i",{class:"fas fa-chart-line"})],-1))])]),t("div",He,[t("div",je,[t("div",null,[e[20]||(e[20]=t("p",{class:"mb-1 text-xs font-semibold text-gray-600 dark:text-gray-400 sm:text-sm"}," 系统状态 ",-1)),t("p",Ne,i(a(s).systemStatus),1),t("p",Ve," 运行时间: "+i(a(Rt)),1)]),e[21]||(e[21]=t("div",{class:"stat-icon flex-shrink-0 bg-gradient-to-br from-yellow-500 to-orange-500"},[t("i",{class:"fas fa-heartbeat"})],-1))])])]),t("div",Ye,[t("div",We,[t("div",Ze,[t("div",null,[e[22]||(e[22]=t("p",{class:"mb-1 text-xs font-semibold text-gray-600 dark:text-gray-400 sm:text-sm"}," 账户余额/配额 ",-1)),t("p",Qe,i(d(N.value.totalBalance||0)),1),t("p",Je," 低余额: "+i(N.value.lowBalanceCount||0)+" | 总成本: "+i(d(N.value.totalCost||0)),1)]),e[23]||(e[23]=t("div",{class:"stat-icon flex-shrink-0 bg-gradient-to-br from-emerald-500 to-green-600"},[t("i",{class:"fas fa-wallet"})],-1))]),t("div",Xe,[t("p",ta," 更新时间: "+i(n(ft.value)),1),t("button",{class:"flex items-center gap-2 rounded-lg border border-gray-200 bg-white px-3 py-1.5 text-xs font-medium text-gray-700 shadow-sm transition-all duration-200 hover:border-gray-300 hover:shadow-md disabled:cursor-not-allowed disabled:opacity-50 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:border-gray-500",disabled:dt.value,onClick:r},[t("i",{class:J(["fas",dt.value?"fa-spinner fa-spin":"fa-sync-alt"])},null,2),e[24]||(e[24]=I(" 刷新 ",-1))],8,ea)])]),t("div",aa,[t("div",sa,[e[25]||(e[25]=t("h3",{class:"text-sm font-semibold text-gray-900 dark:text-gray-100"},"低余额账户",-1)),t("span",oa,i(l.value.length)+" 个 ",1)]),dt.value?(f(),x("div",na," 正在加载... ")):l.value.length===0?(f(),x("div",ra," 全部正常 ")):(f(),x("div",la,[(f(!0),x(Pt,null,Bt(l.value,m=>{var A;return f(),x("div",{key:m.accountId,class:"rounded-lg border border-red-200 bg-red-50 p-3 dark:border-red-900/60 dark:bg-red-900/20"},[t("div",ia,[t("div",da,i(m.name||m.accountId),1),t("span",ca,i(Et(m.platform)),1)]),t("div",ua,[m.balance?(f(),x("span",ma,"余额: "+i(m.balance.formattedAmount),1)):(f(),x("span",pa,"今日成本: "+i(d(((A=m.statistics)==null?void 0:A.dailyCost)||0)),1))]),m.quota&&typeof m.quota.percentage=="number"?(f(),x("div",ya,[t("div",ga,[e[26]||(e[26]=t("span",null,"配额使用",-1)),t("span",xa,i(m.quota.percentage.toFixed(1))+"% ",1)]),t("div",fa,[t("div",{class:"h-2 rounded-full bg-red-500",style:ne({width:`${Math.min(100,m.quota.percentage)}%`})},null,4)])])):$("",!0)])}),128))]))])]),t("div",va,[t("div",ba,[t("div",ha,[t("div",ka,[e[31]||(e[31]=t("p",{class:"mb-1 text-xs font-semibold text-gray-600 dark:text-gray-400 sm:text-sm"}," 今日Token ",-1)),t("div",_a,[t("p",Ca,i(a(U)((a(s).todayInputTokens||0)+(a(s).todayOutputTokens||0)+(a(s).todayCacheCreateTokens||0)+(a(s).todayCacheReadTokens||0))),1),t("span",wa,"/ "+i(a(Ct).todayCosts.formatted.totalCost),1)]),t("div",Da,[t("div",Ta,[t("span",null,[e[27]||(e[27]=I("输入: ",-1)),t("span",Sa,i(a(U)(a(s).todayInputTokens||0)),1)]),t("span",null,[e[28]||(e[28]=I("输出: ",-1)),t("span",$a,i(a(U)(a(s).todayOutputTokens||0)),1)]),(a(s).todayCacheCreateTokens||0)>0?(f(),x("span",Aa,[e[29]||(e[29]=I("缓存创建: ",-1)),t("span",Ra,i(a(U)(a(s).todayCacheCreateTokens||0)),1)])):$("",!0),(a(s).todayCacheReadTokens||0)>0?(f(),x("span",Ia,[e[30]||(e[30]=I("缓存读取: ",-1)),t("span",Pa,i(a(U)(a(s).todayCacheReadTokens||0)),1)])):$("",!0)])])]),e[32]||(e[32]=t("div",{class:"stat-icon flex-shrink-0 bg-gradient-to-br from-indigo-500 to-indigo-600"},[t("i",{class:"fas fa-coins"})],-1))])]),t("div",Ba,[t("div",Ua,[t("div",Ma,[e[37]||(e[37]=t("p",{class:"mb-1 text-xs font-semibold text-gray-600 dark:text-gray-400 sm:text-sm"}," 总Token消耗 ",-1)),t("div",Oa,[t("p",Ka,i(a(U)((a(s).totalInputTokens||0)+(a(s).totalOutputTokens||0)+(a(s).totalCacheCreateTokens||0)+(a(s).totalCacheReadTokens||0))),1),t("span",Fa,"/ "+i(a(Ct).totalCosts.formatted.totalCost),1)]),t("div",La,[t("div",Ea,[t("span",null,[e[33]||(e[33]=I("输入: ",-1)),t("span",qa,i(a(U)(a(s).totalInputTokens||0)),1)]),t("span",null,[e[34]||(e[34]=I("输出: ",-1)),t("span",za,i(a(U)(a(s).totalOutputTokens||0)),1)]),(a(s).totalCacheCreateTokens||0)>0?(f(),x("span",Ga,[e[35]||(e[35]=I("缓存创建: ",-1)),t("span",Ha,i(a(U)(a(s).totalCacheCreateTokens||0)),1)])):$("",!0),(a(s).totalCacheReadTokens||0)>0?(f(),x("span",ja,[e[36]||(e[36]=I("缓存读取: ",-1)),t("span",Na,i(a(U)(a(s).totalCacheReadTokens||0)),1)])):$("",!0)])])]),e[38]||(e[38]=t("div",{class:"stat-icon flex-shrink-0 bg-gradient-to-br from-emerald-500 to-emerald-600"},[t("i",{class:"fas fa-database"})],-1))])]),t("div",Va,[t("div",Ya,[t("div",null,[t("p",Wa,[e[39]||(e[39]=I(" 实时RPM ",-1)),t("span",Za,"("+i(a(s).metricsWindow)+"分钟)",1)]),t("p",Qa,i(a(s).realtimeRPM||0),1),t("p",Ja,[e[41]||(e[41]=I(" 每分钟请求数 ",-1)),a(s).isHistoricalMetrics?(f(),x("span",Xa,e[40]||(e[40]=[t("i",{class:"fas fa-exclamation-circle"},null,-1),I(" 历史数据 ",-1)]))):$("",!0)])]),e[42]||(e[42]=t("div",{class:"stat-icon flex-shrink-0 bg-gradient-to-br from-orange-500 to-orange-600"},[t("i",{class:"fas fa-tachometer-alt"})],-1))])]),t("div",ts,[t("div",es,[t("div",null,[t("p",as,[e[43]||(e[43]=I(" 实时TPM ",-1)),t("span",ss,"("+i(a(s).metricsWindow)+"分钟)",1)]),t("p",os,i(a(U)(a(s).realtimeTPM||0)),1),t("p",ns,[e[45]||(e[45]=I(" 每分钟Token数 ",-1)),a(s).isHistoricalMetrics?(f(),x("span",rs,e[44]||(e[44]=[t("i",{class:"fas fa-exclamation-circle"},null,-1),I(" 历史数据 ",-1)]))):$("",!0)])]),e[46]||(e[46]=t("div",{class:"stat-icon flex-shrink-0 bg-gradient-to-br from-rose-500 to-rose-600"},[t("i",{class:"fas fa-rocket"})],-1))])])]),t("div",ls,[t("div",is,[e[53]||(e[53]=t("h3",{class:"text-lg font-bold text-gray-900 dark:text-gray-100 sm:text-xl"}," 模型使用分布与Token使用趋势 ",-1)),t("div",ds,[t("div",cs,[(f(!0),x(Pt,null,Bt(a(tt).presetOptions,m=>(f(),x("button",{key:m.value,class:J(["rounded-md px-3 py-1 text-sm font-medium transition-colors",a(tt).preset===m.value&&a(tt).type==="preset"?"bg-white text-blue-600 shadow-sm dark:bg-gray-800":"text-gray-600 hover:text-gray-900 dark:text-gray-300 dark:hover:text-gray-100"]),onClick:A=>a(o)(m.value)},i(m.label),11,us))),128))]),t("div",ms,[t("button",{class:J(["rounded-md px-3 py-1 text-sm font-medium transition-colors",a(Y)==="day"?"bg-white text-blue-600 shadow-sm dark:bg-gray-800":"text-gray-600 hover:text-gray-900 dark:text-gray-300 dark:hover:text-gray-100"]),onClick:e[0]||(e[0]=m=>a(Dt)("day"))},e[47]||(e[47]=[t("i",{class:"fas fa-calendar-day mr-1"},null,-1),I("按天 ",-1)]),2),t("button",{class:J(["rounded-md px-3 py-1 text-sm font-medium transition-colors",a(Y)==="hour"?"bg-white text-blue-600 shadow-sm dark:bg-gray-800":"text-gray-600 hover:text-gray-900 dark:text-gray-300 dark:hover:text-gray-100"]),onClick:e[1]||(e[1]=m=>a(Dt)("hour"))},e[48]||(e[48]=[t("i",{class:"fas fa-clock mr-1"},null,-1),I("按小时 ",-1)]),2)]),t("div",ps,[ae(D,{modelValue:a(tt).customRange,"onUpdate:modelValue":e[2]||(e[2]=m=>a(tt).customRange=m),class:"custom-date-picker w-full lg:w-auto","default-time":it,"disabled-date":a(q),"end-placeholder":"结束日期",format:"YYYY-MM-DD HH:mm:ss","range-separator":"至",size:"default","start-placeholder":"开始日期",style:{"max-width":"400px"},type:"datetimerange","value-format":"YYYY-MM-DD HH:mm:ss",onChange:a(M)},null,8,["modelValue","disabled-date","onChange"]),a(Y)==="hour"?(f(),x("span",ys,e[49]||(e[49]=[t("i",{class:"fas fa-info-circle"},null,-1),I(" 最多24小时 ",-1)]))):$("",!0)]),t("div",gs,[t("div",xs,[t("label",fs,[se(t("input",{"onUpdate:modelValue":e[3]||(e[3]=m=>y.value=m),class:"peer sr-only",type:"checkbox"},null,512),[[oe,y.value]]),e[52]||(e[52]=t("div",{class:"peer relative h-5 w-9 rounded-full bg-gray-300 transition-all duration-200 after:absolute after:left-[2px] after:top-0.5 after:h-4 after:w-4 after:rounded-full after:bg-white after:shadow-sm after:transition-transform after:duration-200 after:content-[''] peer-checked:bg-blue-500 peer-checked:after:translate-x-4 peer-focus:outline-none peer-focus:ring-2 peer-focus:ring-blue-300 dark:bg-gray-600 dark:after:bg-gray-300 dark:peer-focus:ring-blue-600"},null,-1)),t("span",vs,[e[50]||(e[50]=t("i",{class:"fas fa-redo-alt text-xs text-gray-500 dark:text-gray-400"},null,-1)),e[51]||(e[51]=t("span",null,"自动刷新",-1)),y.value?(f(),x("span",{key:0,class:J(["ml-1 font-mono text-xs text-blue-600 transition-opacity",_.value>0?"opacity-100":"opacity-0"])},i(_.value)+"s ",3)):$("",!0)])])]),t("button",{class:"flex items-center gap-1 rounded-md border border-gray-300 bg-white px-3 py-1 text-sm font-medium text-blue-600 shadow-sm transition-colors hover:bg-gray-50 disabled:cursor-not-allowed disabled:opacity-50 dark:border-gray-600 dark:bg-gray-800 dark:hover:bg-gray-700 sm:gap-2",disabled:P.value,title:"立即刷新数据",onClick:e[4]||(e[4]=m=>qt())},[t("i",{class:J(["fas fa-sync-alt text-xs",{"animate-spin":P.value}])},null,2),t("span",hs,i(P.value?"刷新中":"刷新"),1)],8,bs)])])]),t("div",ks,[t("div",_s,[e[54]||(e[54]=t("h4",{class:"mb-4 text-base font-semibold text-gray-800 dark:text-gray-200 sm:text-lg"}," Token使用分布 ",-1)),t("div",Cs,[t("canvas",{ref_key:"modelUsageChart",ref:et},null,512)])]),t("div",ws,[e[57]||(e[57]=t("h4",{class:"mb-4 text-base font-semibold text-gray-800 dark:text-gray-200 sm:text-lg"}," 详细统计数据 ",-1)),a(X).length===0?(f(),x("div",Ds,e[55]||(e[55]=[t("p",{class:"text-sm text-gray-500 sm:text-base"},"暂无模型使用数据",-1)]))):(f(),x("div",Ts,[t("table",Ss,[e[56]||(e[56]=t("thead",{class:"sticky top-0 bg-gray-50 dark:bg-gray-700"},[t("tr",null,[t("th",{class:"px-2 py-2 text-left text-xs font-medium text-gray-700 dark:text-gray-300 sm:px-4"}," 模型 "),t("th",{class:"hidden px-2 py-2 text-right text-xs font-medium text-gray-700 dark:text-gray-300 sm:table-cell sm:px-4"}," 请求数 "),t("th",{class:"px-2 py-2 text-right text-xs font-medium text-gray-700 dark:text-gray-300 sm:px-4"}," 总Token "),t("th",{class:"px-2 py-2 text-right text-xs font-medium text-gray-700 dark:text-gray-300 sm:px-4"}," 费用 "),t("th",{class:"hidden px-2 py-2 text-right text-xs font-medium text-gray-700 dark:text-gray-300 sm:table-cell sm:px-4"}," 占比 ")])],-1)),t("tbody",$s,[(f(!0),x(Pt,null,Bt(a(X),m=>(f(),x("tr",{key:m.model,class:"hover:bg-gray-50 dark:hover:bg-gray-700"},[t("td",As,[t("span",{class:"block max-w-[100px] truncate sm:max-w-none",title:m.model},i(m.model),9,Rs)]),t("td",Is,i(a(U)(m.requests)),1),t("td",Ps,i(a(U)(m.allTokens)),1),t("td",Bs,i(m.formatted?m.formatted.total:"$0.000000"),1),t("td",Us,[t("span",Ms,i(vt(m.allTokens,a(X)))+"% ",1)])]))),128))])])]))])])]),t("div",Os,[t("div",Ks,[t("div",Fs,[t("canvas",{ref_key:"usageTrendChart",ref:W},null,512)])])]),t("div",Ls,[t("div",Es,[t("div",qs,[e[60]||(e[60]=t("h3",{class:"text-base font-semibold text-gray-900 dark:text-gray-100 sm:text-lg"}," API Keys 使用趋势 ",-1)),t("div",zs,[t("button",{class:J(["rounded-md px-2 py-1 text-xs font-medium transition-colors sm:px-3 sm:text-sm",a(H)==="requests"?"bg-white text-blue-600 shadow-sm dark:bg-gray-800":"text-gray-600 hover:text-gray-900 dark:text-gray-300 dark:hover:text-gray-100"]),onClick:e[5]||(e[5]=m=>(H.value="requests",It()))},e[58]||(e[58]=[t("i",{class:"fas fa-exchange-alt mr-1"},null,-1),t("span",{class:"hidden sm:inline"},"请求次数",-1),t("span",{class:"sm:hidden"},"请求",-1)]),2),t("button",{class:J(["rounded-md px-2 py-1 text-xs font-medium transition-colors sm:px-3 sm:text-sm",a(H)==="tokens"?"bg-white text-blue-600 shadow-sm dark:bg-gray-800":"text-gray-600 hover:text-gray-900 dark:text-gray-300 dark:hover:text-gray-100"]),onClick:e[6]||(e[6]=m=>(H.value="tokens",It()))},e[59]||(e[59]=[t("i",{class:"fas fa-coins mr-1"},null,-1),t("span",{class:"hidden sm:inline"},"Token 数量",-1),t("span",{class:"sm:hidden"},"Token",-1)]),2)])]),t("div",Gs,[a(O).totalApiKeys>10?(f(),x("span",Hs," 共 "+i(a(O).totalApiKeys)+" 个 API Key,显示使用量前 10 个 ",1)):(f(),x("span",js," 共 "+i(a(O).totalApiKeys)+" 个 API Key ",1))]),t("div",Ns,[t("canvas",{ref_key:"apiKeysUsageTrendChart",ref:Tt},null,512)])])]),t("div",Vs,[t("div",Ys,[t("div",Ws,[t("div",Zs,[e[61]||(e[61]=t("h3",{class:"text-base font-semibold text-gray-900 dark:text-gray-100 sm:text-lg"}," 账号使用趋势 ",-1)),t("span",Qs," 当前分组:"+i(a(F).groupLabel||"未选择"),1)]),t("div",Js,[t("div",Xs,[(f(),x(Pt,null,Bt(Lt,m=>t("button",{key:m.value,class:J(["rounded-md px-2 py-1 text-xs font-medium transition-colors sm:px-3 sm:text-sm",a(lt)===m.value?"bg-white text-blue-600 shadow-sm dark:bg-gray-800":"text-gray-600 hover:text-gray-900 dark:text-gray-300 dark:hover:text-gray-100"]),onClick:A=>Wt(m.value)},i(m.label),11,to)),64))])])]),t("div",eo,[t("span",null,"共 "+i(a(F).totalAccounts||0)+" 个账号",1),a(F).topAccounts&&a(F).topAccounts.length?(f(),x("span",ao," 显示消耗排名前 "+i(a(F).topAccounts.length)+" 个账号 ",1)):$("",!0)]),!a(F).data||a(F).data.length===0?(f(),x("div",so," 暂无账号使用数据 ")):(f(),x("div",oo,[t("canvas",{ref_key:"accountUsageTrendChart",ref:xt},null,512)]))])])])}}},mo=le(no,[["__scopeId","data-v-4fa3d294"]]);export{mo as default}; diff --git a/web/admin-spa/dist/assets/DashboardView-C7pS8AeR.css b/web/admin-spa/dist/assets/DashboardView-C7pS8AeR.css deleted file mode 100644 index 131504fc..00000000 --- a/web/admin-spa/dist/assets/DashboardView-C7pS8AeR.css +++ /dev/null @@ -1 +0,0 @@ -.custom-date-picker[data-v-4fa3d294]{font-size:13px}@keyframes spin-4fa3d294{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin[data-v-4fa3d294]{animation:spin-4fa3d294 1s linear infinite} diff --git a/web/admin-spa/dist/assets/Inter-Bold-BOs3KVhN.woff2 b/web/admin-spa/dist/assets/Inter-Bold-BOs3KVhN.woff2 deleted file mode 100644 index b9e3cb3b1fde34010b001d0a069b6a5ce2a08d0f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 114840 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 z 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

LO{JFkRaobgc*GOUNWuFO7PN}S?aWqZ(|*W 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 NH~uRS8S9q;{U4!vH7x)D diff --git a/web/admin-spa/dist/assets/Inter-Light-14LG-y7V.woff2 b/web/admin-spa/dist/assets/Inter-Light-14LG-y7V.woff2 deleted file mode 100644 index f3e012a456aaa0ae6b7efb6b42034fae929dc202..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 112592 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

;;L2P^t-YY0OcVwzIJy^XKC$aMjr80 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 diff --git a/web/admin-spa/dist/assets/Inter-Medium-CDhBSFyE.woff2 b/web/admin-spa/dist/assets/Inter-Medium-CDhBSFyE.woff2 deleted file mode 100644 index fdfdcc699fc1e19eb1943c2896e8d66e17b538ff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 114348 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

8xHZHepPN#0KgU{FP@5lMu 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 Q|3zqFp7#i%;`h*l0SMlYXs3emQm!N_Vh) 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 Pl?f(p%*Rm#2=M;_zqO9b diff --git a/web/admin-spa/dist/assets/Inter-Regular-COLGFB3M.woff2 b/web/admin-spa/dist/assets/Inter-Regular-COLGFB3M.woff2 deleted file mode 100644 index 2bcd222ecfae996d035ff72bf70672305cc29261..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 111268 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 YlP_pm ztM9Q_f^Ju1U)kTCx1hKLRy|sob}2&j2&ldb*lu^!byk+hq!~}+_;u0>%whduh(~N+;TSmC{wFV7$q?xsq7HHtMXK!Bh!IC?>zVs z4&UzGhlt&#PF~ytjIoG2{EVzwA9Ayn;0-nF>|uE@byk1q(c@|?JQr1hR#*>F-g@|3 z?d-u%RhtFtnGy!$p9|0OCFNRm^z%%F8(4ACq<8yCY_Hc|D8qZYSm*17Mn{Q9zjQ7{ zWfdcpJ30>$V|E`dKo#O~);}W*c`NIB=ixeXAWr4{M&@5$vHbWzt2~(8LaUJGqAPVJ)q4w>fZ@NJ>GjaD5Za+z3T(KUb6?k6#p55W& zzdE(3wqIfzb5xdWH)5pQl}g&^b7iso(49RpBYsl+z&Ctcv$65{CqiX_R~PMr-M*qk zMelENM32kx+LqlCdk3_bIp9<3eCw7gFi=ub6zCs=GQ3KL9W)6`Ru|96ft0=62$k8| zVOV(-+H(-=L$ddL>u0g3Jh$w-J3c;QaKf~Qd8czNBf7Gtu6nwvZPy`U^C3&S1G(q1 zr$34x5bWzPFd;1p#28_0z$r$+P1q9wJL13yW(6F|N~Me%`>)4TzsrGQFYie+@f8cJCrV-T8JxXD=5 zJrdSonp)91%bh=&Jz=jb$AhL5qzRPPEoM!%zEg%Kmt)s!=7$I^i}Dw`EWjbBL`$Y& zk}*nY;`rIChMh(Yow>6GBp+SYeW}>tp|!=!bB2q%Z(B3b*gui-0a^NY>l{__6Ya62 z|71g`ABa3sAy;yce)@2JibjfE+luE(DnDt`T(ig~O7}|uBO2@wCOa5tDaE8xe?iZE zt*pzaU9d^Q#vuY#Fso`TJdBjVVM`O0B}y8JDJ3sq03iLV_Cq=+3<|t~4a7Kk^7_}M zNH1LGzJt|m%v3vaW3xW38?;gCe1DPq#a+l$Qf($O*d_&#;zzJb8F%kd4 zDm2=jD7%Ui)nEr}CGT*xE9D?Qe9XWs&QympaHq}Xm6%HuY?yKrlB9-#hh`B0F<~8|0QHjtaY~aZX{1O<$ID_nw3iwV4}3~!{1*h z#VcpV3ah`-sxSN*|IWk;5<3FpWmT36p}{ zN_fRy`tLdWq)NUmPTqv$i!{@<^C%1Q5fW#+0e~-Qe3UT7t$|rg0u`OtsXsEBvxhWS zE7|kU_1*MtPEU9)`p2tm)MQ!Iupaeq*!y==LwwzSuC(eJo=E9lU?9YVujY_ik7wBL z>uSFMtJbM;yuQ)g)uzol9JNzU&LKDMQyh`YBqq@dSYk;Fn*r-fb-UVd+oWboS)6RI zN2|l~sj}br`}EUPX6D@7{fErZ{Qohkhw&fq7yDmSZp3$HueoH@=YQ$*Lvn;hQ2X>$ zcbzb2G^_jOuIW2hZ1hJP{J8UDaeecZPiFakc<1av@zkwVXooy%qiXxkXjWg3$`WM7 z0n_HVx11ns0NDwuqwC2AhFV8Qzo$uWXHOJNH2)mKMzM9HUoEAxekuC}&whSue;Cdq z@UwHPG3oEs->kut2X3FEob+#Fcj*Y!&Yfp6coz;Y_lx;sfB8PvFSHl$J^jQ_t(kY! zfyvDbe-{Au-kw>)S1XmVQET`c7FZ7JOEUN!m5Nsdt;|OyylC0Ik$+f)W+k_l)ViLB z4(@E`kX%u~|3$T`@7)c~e|j{nZJWXO^pV1}(oi0(v95cK8=LF5CVe}m;N@2>1pGff C!H4<) diff --git a/web/admin-spa/dist/assets/Inter-SemiBold-BAEEcJ4E.woff2 b/web/admin-spa/dist/assets/Inter-SemiBold-BAEEcJ4E.woff2 deleted file mode 100644 index fbae113d2855e22c06376495bd2dfe5f02411272..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 114812 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

    eUvlpY^BQ;sc~Q~=U*%-q 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 a!Kymz`|Y2zy;Kxy`;^}w^N6qj0RIQ3n!o!1 diff --git a/web/admin-spa/dist/assets/LoginView-Bk2509Bx.js b/web/admin-spa/dist/assets/LoginView-Bk2509Bx.js deleted file mode 100644 index e995dcba..00000000 --- a/web/admin-spa/dist/assets/LoginView-Bk2509Bx.js +++ /dev/null @@ -1 +0,0 @@ -import{c as b,r as f,q as y,x as a,z as s,R as w,L as d,Q as h,u as o,P as i,Y as v,K as u,aq as p,O as c,y as r}from"./vue-vendor-DV7DYXbz.js";import{u as _,a as k}from"./index-BahP9Xx9.js";import{T as S}from"./ThemeToggle-DROshBR1.js";import"./element-plus-BSjV1f9S.js";import"./vendor-Dr8jvgFu.js";const L={class:"flex min-h-screen items-center justify-center p-4 sm:p-6"},T={class:"fixed right-4 top-4 z-50"},V={class:"glass-strong w-full max-w-md rounded-xl p-6 shadow-2xl sm:rounded-2xl sm:p-8 md:rounded-3xl md:p-10"},N={class:"mb-6 text-center sm:mb-8"},q={class:"mx-auto mb-4 flex h-16 w-16 items-center justify-center overflow-hidden rounded-xl border border-gray-300/30 bg-gradient-to-br from-blue-500/20 to-purple-500/20 backdrop-blur-sm sm:mb-6 sm:h-20 sm:w-20 sm:rounded-2xl"},D=["src"],E={key:1,class:"fas fa-cloud text-2xl text-gray-700 sm:text-3xl"},I={key:1,class:"h-10 w-10 animate-pulse rounded bg-gray-300/50 sm:h-12 sm:w-12"},j={key:0,class:"header-title mb-2 text-2xl font-bold text-white sm:text-3xl"},B={key:1,class:"mx-auto mb-2 h-8 w-48 animate-pulse rounded bg-gray-300/50 sm:h-9 sm:w-64"},M=["disabled"],z={key:0,class:"fas fa-sign-in-alt mr-2"},F={key:1,class:"loading-spinner mr-2"},O={key:0,class:"mt-4 rounded-lg border border-red-500/30 bg-red-500/20 p-3 text-center text-xs text-red-800 backdrop-blur-sm dark:text-red-400 sm:mt-6 sm:rounded-xl sm:p-4 sm:text-sm"},Y={__name:"LoginView",setup(U){const e=_(),g=k(),m=b(()=>e.oemLoading),n=f({username:"",password:""});y(()=>{g.initTheme(),e.loadOemSettings()});const x=async()=>{await e.login(n.value)};return(A,t)=>(r(),a("div",L,[s("div",T,[w(S,{mode:"dropdown"})]),s("div",V,[s("div",N,[s("div",q,[m.value?(r(),a("div",I)):(r(),a(h,{key:0},[o(e).oemSettings.siteIconData||o(e).oemSettings.siteIcon?(r(),a("img",{key:0,alt:"Logo",class:"h-10 w-10 object-contain sm:h-12 sm:w-12",src:o(e).oemSettings.siteIconData||o(e).oemSettings.siteIcon,onError:t[0]||(t[0]=l=>l.target.style.display="none")},null,40,D)):(r(),a("i",E))],64))]),!m.value&&o(e).oemSettings.siteName?(r(),a("h1",j,i(o(e).oemSettings.siteName),1)):m.value?(r(),a("div",B)):d("",!0),t[3]||(t[3]=s("p",{class:"text-base text-gray-600 dark:text-gray-400 sm:text-lg"},"管理后台",-1))]),s("form",{class:"space-y-4 sm:space-y-6",onSubmit:v(x,["prevent"])},[s("div",null,[t[4]||(t[4]=s("label",{class:"mb-2 block text-sm font-semibold text-gray-900 dark:text-gray-100 sm:mb-3",for:"username"},"用户名",-1)),u(s("input",{id:"username","onUpdate:modelValue":t[1]||(t[1]=l=>n.value.username=l),autocomplete:"username",class:"form-input w-full",name:"username",placeholder:"请输入用户名",required:"",type:"text"},null,512),[[p,n.value.username]])]),s("div",null,[t[5]||(t[5]=s("label",{class:"mb-2 block text-sm font-semibold text-gray-900 dark:text-gray-100 sm:mb-3",for:"password"},"密码",-1)),u(s("input",{id:"password","onUpdate:modelValue":t[2]||(t[2]=l=>n.value.password=l),autocomplete:"current-password",class:"form-input w-full",name:"password",placeholder:"请输入密码",required:"",type:"password"},null,512),[[p,n.value.password]])]),s("button",{class:"btn btn-primary w-full px-4 py-3 text-base font-semibold sm:px-6 sm:py-4 sm:text-lg",disabled:o(e).loginLoading,type:"submit"},[o(e).loginLoading?d("",!0):(r(),a("i",z)),o(e).loginLoading?(r(),a("div",F)):d("",!0),c(" "+i(o(e).loginLoading?"登录中...":"登录"),1)],8,M)],32),o(e).loginError?(r(),a("div",O,[t[6]||(t[6]=s("i",{class:"fas fa-exclamation-triangle mr-2"},null,-1)),c(i(o(e).loginError),1)])):d("",!0)])]))}};export{Y as default}; diff --git a/web/admin-spa/dist/assets/LogoTitle-DF7a1vCs.js b/web/admin-spa/dist/assets/LogoTitle-DF7a1vCs.js deleted file mode 100644 index a3593bc2..00000000 --- a/web/admin-spa/dist/assets/LogoTitle-DF7a1vCs.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as d}from"./index-BahP9Xx9.js";import{x as t,y as a,z as l,Q as n,L as o,A as c,C as g,P as r}from"./vue-vendor-DV7DYXbz.js";const u={class:"flex items-center gap-4"},y={class:"flex h-12 w-12 flex-shrink-0 items-center justify-center overflow-hidden rounded-xl border border-gray-300/30 bg-gradient-to-br from-blue-500/20 to-purple-500/20 backdrop-blur-sm dark:border-gray-600/30 dark:from-blue-600/20 dark:to-purple-600/20"},f=["src"],m={key:1,class:"fas fa-cloud text-xl text-gray-700 dark:text-gray-300"},h={key:1,class:"h-8 w-8 animate-pulse rounded bg-gray-300/50 dark:bg-gray-600/50"},x={class:"flex min-h-[48px] flex-col justify-center"},b={class:"flex items-center gap-3"},k={key:1,class:"h-8 w-64 animate-pulse rounded bg-gray-300/50 dark:bg-gray-600/50"},_={key:0,class:"mt-0.5 text-sm leading-tight text-gray-600 dark:text-gray-400"},p={__name:"LogoTitle",props:{loading:{type:Boolean,default:!1},title:{type:String,default:""},subtitle:{type:String,default:""},logoSrc:{type:String,default:""},titleClass:{type:String,default:"text-gray-900"}},setup(e){const i=s=>{s.target.style.display="none"};return(s,S)=>(a(),t("div",u,[l("div",y,[e.loading?(a(),t("div",h)):(a(),t(n,{key:0},[e.logoSrc?(a(),t("img",{key:0,alt:"Logo",class:"h-8 w-8 object-contain",src:e.logoSrc,onError:i},null,40,f)):(a(),t("i",m))],64))]),l("div",x,[l("div",b,[!e.loading&&e.title?(a(),t("h1",{key:0,class:g(["header-title text-2xl font-bold leading-tight",e.titleClass])},r(e.title),3)):e.loading?(a(),t("div",k)):o("",!0),c(s.$slots,"after-title",{},void 0,!0)]),e.subtitle?(a(),t("p",_,r(e.subtitle),1)):o("",!0)])]))}},w=d(p,[["__scopeId","data-v-15eb26fd"]]);export{w as L}; diff --git a/web/admin-spa/dist/assets/LogoTitle-DXipqypn.css b/web/admin-spa/dist/assets/LogoTitle-DXipqypn.css new file mode 100644 index 00000000..8604a7ce --- /dev/null +++ b/web/admin-spa/dist/assets/LogoTitle-DXipqypn.css @@ -0,0 +1 @@ +@keyframes pulse-15eb26fd{0%{opacity:.7}50%{opacity:.4}to{opacity:.7}}.animate-pulse[data-v-15eb26fd]{animation:pulse-15eb26fd 2s cubic-bezier(.4,0,.6,1) infinite}.header-title[data-v-15eb26fd]{text-shadow:0 1px 2px rgba(0,0,0,.1)} diff --git a/web/admin-spa/dist/assets/MainLayout-C8oFjafl.js b/web/admin-spa/dist/assets/MainLayout-C8oFjafl.js deleted file mode 100644 index 3a50ae57..00000000 --- a/web/admin-spa/dist/assets/MainLayout-C8oFjafl.js +++ /dev/null @@ -1 +0,0 @@ -import{c as U,r as y,_ as W,q as X,V as Y,x as d,y as u,z as t,L as S,R as k,J as L,P as b,C as I,Y as V,O as _,T as G,K as M,aq as A,aW as Z,Q as q,aU as O,ac as K,o as ee,av as te,aX as se,D as ae}from"./vue-vendor-DV7DYXbz.js";import{_ as re,u as j,l as ne,s as C,m as oe}from"./index-BahP9Xx9.js";import{L as le}from"./LogoTitle-DF7a1vCs.js";import{T as ie}from"./ThemeToggle-DROshBR1.js";import{C as de}from"./ConfirmModal-C2rCOkXI.js";import"./element-plus-BSjV1f9S.js";import"./vendor-Dr8jvgFu.js";const ue={class:"glass-strong mb-4 rounded-xl p-3 shadow-xl sm:mb-6 sm:rounded-2xl sm:p-4 md:mb-8 md:rounded-3xl md:p-6",style:{"z-index":"10",position:"relative"}},ce={class:"flex flex-col items-center justify-between gap-3 sm:flex-row sm:gap-4"},me={class:"flex w-full items-center justify-center gap-2 sm:w-auto sm:justify-start sm:gap-3 md:gap-4"},ge={class:"flex items-center gap-1 sm:gap-2"},pe={class:"font-mono text-xs text-gray-400 dark:text-gray-500 sm:text-sm"},fe=["href"],xe={class:"flex items-center gap-2 sm:gap-4"},ve={class:"flex items-center"},ye={class:"user-menu-container relative"},be={class:"hidden sm:inline"},he={class:"border-b border-gray-100 px-4 py-3 dark:border-gray-700"},ke={class:"flex items-center justify-between text-sm"},we={class:"font-mono text-gray-700 dark:text-gray-300"},_e={key:0,class:"mt-2"},Ce={class:"mb-2 flex items-center justify-between text-sm"},Ue={class:"font-mono text-green-600 dark:text-green-400"},Pe=["href"],Te={key:1,class:"mt-2 text-center text-xs text-gray-500 dark:text-gray-400"},Me={key:2,class:"mt-2 text-center"},Ie={key:"message",class:"inline-block rounded-lg border border-green-200 bg-green-100 px-3 py-1.5 dark:border-green-800 dark:bg-green-900/30"},$e={key:0,class:"modal fixed inset-0 z-50 flex items-center justify-center p-3 sm:p-4"},Ne={class:"modal-content mx-auto flex max-h-[90vh] w-full max-w-md flex-col p-4 sm:p-6 md:p-8"},Se=["value"],Ae={class:"relative"},qe=["type"],je={class:"flex gap-3 pt-4"},De=["disabled"],Le={key:0,class:"loading-spinner mr-2"},Ve={key:1,class:"fas fa-save mr-2"},Ke={__name:"AppHeader",setup(P){const p=O(),f=j(),g=U(()=>f.user||{username:"Admin"}),i=U(()=>f.oemSettings||{}),r=U(()=>f.oemLoading),s=y({current:"...",latest:"",hasUpdate:!1,checkingUpdate:!1,lastChecked:null,releaseInfo:null,noUpdateMessage:!1}),x=y(!1),c=y(!1),o=y(!1),l=y(!1),a=W({currentPassword:"",newPassword:"",confirmPassword:"",newUsername:""}),T=y(!1),w=y({title:"",message:"",type:"primary",confirmText:"确认",cancelText:"取消"}),h=y(null),z=(n,e,v="确认",m="取消",H="primary")=>new Promise(R=>{w.value={title:n,message:e,confirmText:v,cancelText:m,type:H},h.value=R,T.value=!0}),E=()=>{var n;T.value=!1,(n=h.value)==null||n.call(h,!0)},B=()=>{var n;T.value=!1,(n=h.value)==null||n.call(h,!1)},$=async()=>{if(!s.value.checkingUpdate){s.value.checkingUpdate=!0;try{const n=await ne();if(n.success){const e=n.data;s.value.current=e.current,s.value.latest=e.latest,s.value.hasUpdate=e.hasUpdate,s.value.releaseInfo=e.releaseInfo,s.value.lastChecked=new Date,localStorage.setItem("versionInfo",JSON.stringify({current:e.current,latest:e.latest,lastChecked:s.value.lastChecked,hasUpdate:e.hasUpdate,releaseInfo:e.releaseInfo})),e.hasUpdate||(s.value.noUpdateMessage=!0,setTimeout(()=>{s.value.noUpdateMessage=!1},3e3))}}catch(n){console.error("Error checking for updates:",n);const e=localStorage.getItem("versionInfo");if(e){const v=JSON.parse(e);s.value.current=v.current||s.value.current,s.value.latest=v.latest,s.value.hasUpdate=v.hasUpdate,s.value.releaseInfo=v.releaseInfo,s.value.lastChecked=new Date(v.lastChecked)}}finally{s.value.checkingUpdate=!1}}},F=()=>{a.currentPassword="",a.newPassword="",a.confirmPassword="",a.newUsername="",c.value=!0,x.value=!1},N=()=>{c.value=!1},J=async()=>{if(a.newPassword!==a.confirmPassword){C("两次输入的密码不一致","error");return}if(a.newPassword.length<8){C("新密码长度至少8位","error");return}o.value=!0;try{const n=await oe({currentPassword:a.currentPassword,newPassword:a.newPassword,newUsername:a.newUsername||void 0});if(n.success){const e=a.newUsername?"账户信息修改成功,请重新登录":"密码修改成功,请重新登录";C(e,"success"),N(),setTimeout(()=>{f.logout(),p.push("/login")},1500)}else C(n.message||"修改失败","error")}catch{C("修改密码失败","error")}finally{o.value=!1}},Q=async()=>{await z("退出登录","确定要退出登录吗?","确定退出","取消","warning")&&(f.logout(),p.push("/login"),C("已安全退出","success")),x.value=!1},D=n=>{!n.target.closest(".user-menu-container")&&x.value&&(x.value=!1)};return X(()=>{$(),setInterval(()=>{$()},36e5),document.addEventListener("click",D)}),Y(()=>{document.removeEventListener("click",D)}),(n,e)=>{var v;return u(),d(q,null,[t("div",ue,[t("div",ce,[t("div",me,[k(le,{loading:r.value,"logo-src":i.value.siteIconData||i.value.siteIcon,subtitle:"管理后台",title:i.value.siteName,"title-class":"text-white dark:text-gray-100"},{"after-title":L(()=>{var m;return[t("div",ge,[t("span",pe,"v"+b(s.value.current||"..."),1),s.value.hasUpdate?(u(),d("a",{key:0,class:"inline-flex animate-pulse items-center gap-1 rounded-full border border-green-600 bg-green-500 px-2 py-0.5 text-xs text-white transition-colors hover:bg-green-600",href:((m=s.value.releaseInfo)==null?void 0:m.htmlUrl)||"#",target:"_blank",title:"有新版本可用"},e[8]||(e[8]=[t("i",{class:"fas fa-arrow-up text-[10px]"},null,-1),t("span",null,"新版本",-1)]),8,fe)):S("",!0)])]}),_:1},8,["loading","logo-src","title"])]),t("div",xe,[t("div",ve,[k(ie,{mode:"dropdown"})]),e[19]||(e[19]=t("div",{class:"h-8 w-px bg-gradient-to-b from-transparent via-gray-300 to-transparent opacity-50 dark:via-gray-600"},null,-1)),t("div",ye,[t("button",{class:"user-menu-button flex items-center gap-2 rounded-2xl px-3 py-2 text-sm font-semibold text-white shadow-lg transition-all duration-200 hover:scale-105 hover:shadow-xl active:scale-95 sm:px-4 sm:py-2.5",onClick:e[0]||(e[0]=m=>x.value=!x.value)},[e[9]||(e[9]=t("i",{class:"fas fa-user-circle text-sm sm:text-base"},null,-1)),t("span",be,b(g.value.username||"Admin"),1),t("i",{class:I(["fas fa-chevron-down ml-1 text-xs transition-transform duration-200",{"rotate-180":x.value}])},null,2)]),x.value?(u(),d("div",{key:0,class:"user-menu-dropdown absolute right-0 top-full mt-2 w-48 rounded-xl border border-gray-200 bg-white py-2 shadow-xl dark:border-gray-700 dark:bg-gray-800 sm:w-56",style:{"z-index":"999999"},onClick:e[2]||(e[2]=V(()=>{},["stop"]))},[t("div",he,[t("div",ke,[e[10]||(e[10]=t("span",{class:"text-gray-500 dark:text-gray-400"},"当前版本",-1)),t("span",we,"v"+b(s.value.current||"..."),1)]),s.value.hasUpdate?(u(),d("div",_e,[t("div",Ce,[e[11]||(e[11]=t("span",{class:"font-medium text-green-600 dark:text-green-400"},[t("i",{class:"fas fa-arrow-up mr-1"}),_("有新版本 ")],-1)),t("span",Ue,"v"+b(s.value.latest),1)]),t("a",{class:"block w-full rounded-lg bg-green-500 px-3 py-1.5 text-center text-sm text-white transition-colors hover:bg-green-600",href:((v=s.value.releaseInfo)==null?void 0:v.htmlUrl)||"#",target:"_blank"},e[12]||(e[12]=[t("i",{class:"fas fa-external-link-alt mr-1"},null,-1),_("查看更新 ",-1)]),8,Pe)])):s.value.checkingUpdate?(u(),d("div",Te,e[13]||(e[13]=[t("i",{class:"fas fa-spinner fa-spin mr-1"},null,-1),_("检查更新中... ",-1)]))):(u(),d("div",Me,[k(G,{mode:"out-in",name:"fade"},{default:L(()=>[s.value.noUpdateMessage?(u(),d("div",Ie,e[14]||(e[14]=[t("p",{class:"text-xs font-medium text-green-700 dark:text-green-400"},[t("i",{class:"fas fa-check-circle mr-1"}),_("当前已是最新版本 ")],-1)]))):(u(),d("button",{key:"button",class:"text-xs text-blue-500 transition-colors hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300",onClick:e[1]||(e[1]=m=>$())},e[15]||(e[15]=[t("i",{class:"fas fa-sync-alt mr-1"},null,-1),_("检查更新 ",-1)])))]),_:1})]))]),t("button",{class:"flex w-full items-center gap-3 px-4 py-3 text-left text-gray-700 transition-colors hover:bg-gray-50 dark:text-gray-300 dark:hover:bg-gray-700",onClick:F},e[16]||(e[16]=[t("i",{class:"fas fa-key text-blue-500"},null,-1),t("span",null,"修改账户信息",-1)])),e[18]||(e[18]=t("hr",{class:"my-2 border-gray-200 dark:border-gray-700"},null,-1)),t("button",{class:"flex w-full items-center gap-3 px-4 py-3 text-left text-gray-700 transition-colors hover:bg-gray-50 dark:text-gray-300 dark:hover:bg-gray-700",onClick:Q},e[17]||(e[17]=[t("i",{class:"fas fa-sign-out-alt text-red-500"},null,-1),t("span",null,"退出登录",-1)]))])):S("",!0)])])])]),c.value?(u(),d("div",$e,[t("div",Ne,[t("div",{class:"mb-6 flex items-center justify-between"},[e[21]||(e[21]=t("div",{class:"flex items-center gap-3"},[t("div",{class:"flex h-10 w-10 items-center justify-center rounded-xl bg-gradient-to-br from-blue-500 to-blue-600"},[t("i",{class:"fas fa-key text-white"})]),t("h3",{class:"text-xl font-bold text-gray-900 dark:text-gray-100"},"修改账户信息")],-1)),t("button",{class:"text-gray-400 transition-colors hover:text-gray-600 dark:hover:text-gray-300",onClick:N},e[20]||(e[20]=[t("i",{class:"fas fa-times text-xl"},null,-1)]))]),t("form",{class:"modal-scroll-content custom-scrollbar flex-1 space-y-6",onSubmit:V(J,["prevent"])},[t("div",null,[e[22]||(e[22]=t("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"当前用户名",-1)),t("input",{class:"form-input w-full cursor-not-allowed bg-gray-100 dark:bg-gray-700 dark:text-gray-300",disabled:"",type:"text",value:g.value.username||"Admin"},null,8,Se),e[23]||(e[23]=t("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"}," 当前用户名,输入新用户名以修改 ",-1))]),t("div",null,[e[24]||(e[24]=t("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"新用户名",-1)),M(t("input",{"onUpdate:modelValue":e[3]||(e[3]=m=>a.newUsername=m),class:"form-input w-full",placeholder:"输入新用户名(留空保持不变)",type:"text"},null,512),[[A,a.newUsername]]),e[25]||(e[25]=t("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},"留空表示不修改用户名",-1))]),t("div",null,[e[26]||(e[26]=t("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"当前密码",-1)),t("div",Ae,[M(t("input",{"onUpdate:modelValue":e[4]||(e[4]=m=>a.currentPassword=m),class:"form-input w-full pr-10",placeholder:"请输入当前密码",required:"",type:l.value?"text":"password"},null,8,qe),[[Z,a.currentPassword]]),t("button",{class:"absolute right-3 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300",type:"button",onClick:e[5]||(e[5]=m=>l.value=!l.value)},[t("i",{class:I(l.value?"fas fa-eye-slash":"fas fa-eye")},null,2)])])]),t("div",null,[e[27]||(e[27]=t("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"新密码",-1)),M(t("input",{"onUpdate:modelValue":e[6]||(e[6]=m=>a.newPassword=m),class:"form-input w-full",placeholder:"请输入新密码",required:"",type:"password"},null,512),[[A,a.newPassword]]),e[28]||(e[28]=t("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},"密码长度至少8位",-1))]),t("div",null,[e[29]||(e[29]=t("label",{class:"mb-3 block text-sm font-semibold text-gray-700 dark:text-gray-300"},"确认新密码",-1)),M(t("input",{"onUpdate:modelValue":e[7]||(e[7]=m=>a.confirmPassword=m),class:"form-input w-full",placeholder:"请再次输入新密码",required:"",type:"password"},null,512),[[A,a.confirmPassword]])]),t("div",je,[t("button",{class:"flex-1 rounded-xl bg-gray-100 px-6 py-3 font-semibold text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",type:"button",onClick:N}," 取消 "),t("button",{class:"btn btn-primary flex-1 px-6 py-3 font-semibold",disabled:o.value,type:"submit"},[o.value?(u(),d("div",Le)):(u(),d("i",Ve)),_(" "+b(o.value?"保存中...":"保存修改"),1)],8,De)])],32)])])):S("",!0),k(de,{"cancel-text":w.value.cancelText,"confirm-text":w.value.confirmText,message:w.value.message,show:T.value,title:w.value.title,type:w.value.type,onCancel:B,onConfirm:E},null,8,["cancel-text","confirm-text","message","show","title","type"])],64)}}},Oe=re(Ke,[["__scopeId","data-v-2abe1d62"]]),ze={class:"mb-4 sm:mb-6"},Ee={class:"block rounded-xl bg-white/10 p-2 backdrop-blur-sm dark:bg-gray-800/20 sm:hidden"},Be=["value"],Fe=["value"],Je={class:"hidden flex-wrap gap-2 rounded-2xl bg-white/10 p-2 backdrop-blur-sm dark:bg-gray-800/20 sm:flex"},Qe=["onClick"],He={class:"hidden md:inline"},Re={class:"md:hidden"},We={__name:"TabBar",props:{activeTab:{type:String,required:!0}},emits:["tab-change"],setup(P){const p=j(),f=U(()=>{var i;const g=[{key:"dashboard",name:"仪表板",shortName:"仪表板",icon:"fas fa-tachometer-alt"},{key:"apiKeys",name:"API Keys",shortName:"API",icon:"fas fa-key"},{key:"accounts",name:"账户管理",shortName:"账户",icon:"fas fa-user-circle"},{key:"quotaCards",name:"额度卡",shortName:"额度卡",icon:"fas fa-ticket-alt"}];return(i=p.oemSettings)!=null&&i.ldapEnabled&&g.push({key:"userManagement",name:"用户管理",shortName:"用户",icon:"fas fa-users"}),g.push({key:"settings",name:"系统设置",shortName:"设置",icon:"fas fa-cogs"}),g});return(g,i)=>(u(),d("div",ze,[t("div",Ee,[t("select",{class:"focus:ring-primary-color w-full rounded-lg bg-white/90 px-4 py-3 font-semibold text-gray-700 focus:outline-none focus:ring-2 dark:bg-gray-800/90 dark:text-gray-200 dark:focus:ring-indigo-400",value:P.activeTab,onChange:i[0]||(i[0]=r=>g.$emit("tab-change",r.target.value))},[(u(!0),d(q,null,K(f.value,r=>(u(),d("option",{key:r.key,value:r.key},b(r.name),9,Fe))),128))],40,Be)]),t("div",Je,[(u(!0),d(q,null,K(f.value,r=>(u(),d("button",{key:r.key,class:I(["tab-btn flex-1 px-3 py-2 text-xs font-semibold transition-all duration-300 sm:px-4 sm:py-3 sm:text-sm md:px-6",P.activeTab===r.key?"active":"text-gray-700 hover:bg-white/10 hover:text-gray-900 dark:text-gray-300 dark:hover:bg-gray-700/30 dark:hover:text-gray-100"]),onClick:s=>g.$emit("tab-change",r.key)},[t("i",{class:I(r.icon+" mr-1 sm:mr-2")},null,2),t("span",He,b(r.name),1),t("span",Re,b(r.shortName||r.name),1)],10,Qe))),128))])]))}},Xe={class:"min-h-screen p-3 sm:p-4 md:p-6"},Ye={class:"glass-strong rounded-xl p-3 shadow-xl sm:rounded-2xl sm:p-4 md:rounded-3xl md:p-6",style:{"z-index":"1","min-height":"calc(100vh - 120px)"}},Ge={class:"tab-content"},ot={__name:"MainLayout",setup(P){const p=se(),f=O(),g=j(),i=y("dashboard"),r=U(()=>{var o;const c={dashboard:"/dashboard",apiKeys:"/api-keys",accounts:"/accounts",quotaCards:"/quota-cards",settings:"/settings"};return(o=g.oemSettings)!=null&&o.ldapEnabled&&(c.userManagement="/user-management"),c}),s=()=>{const c=p.path,o=Object.keys(r.value).find(l=>r.value[l]===c);if(o)i.value=o;else{const l=p.name,a={Dashboard:"dashboard",ApiKeys:"apiKeys",Accounts:"accounts",QuotaCards:"quotaCards",Settings:"settings"};l&&a[l]?i.value=a[l]:i.value="dashboard"}};s(),ee(()=>p.path,c=>{const o=Object.keys(r.value).find(l=>r.value[l]===c);if(o)i.value=o;else{const l=p.name,a={Dashboard:"dashboard",ApiKeys:"apiKeys",Accounts:"accounts",QuotaCards:"quotaCards",Tutorial:"tutorial",Settings:"settings"};l&&a[l]&&(i.value=a[l])}});const x=async c=>{if(r.value[c]!==p.path){i.value=c;try{await f.push(r.value[c]),await ae()}catch(o){o.name!=="NavigationDuplicated"&&(console.error("路由切换失败:",o),s())}}};return(c,o)=>{const l=te("router-view");return u(),d("div",Xe,[k(Oe),t("div",Ye,[k(We,{"active-tab":i.value,onTabChange:x},null,8,["active-tab"]),t("div",Ge,[k(l)])])])}}};export{ot as default}; diff --git a/web/admin-spa/dist/assets/MainLayout-DUrvC5cF.css b/web/admin-spa/dist/assets/MainLayout-DUrvC5cF.css deleted file mode 100644 index f2de56f3..00000000 --- a/web/admin-spa/dist/assets/MainLayout-DUrvC5cF.css +++ /dev/null @@ -1 +0,0 @@ -.user-menu-button[data-v-2abe1d62]{position:relative;overflow:hidden;min-height:38px;background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);box-shadow:0 4px 12px rgba(var(--primary-rgb),.3)}.user-menu-button[data-v-2abe1d62]:hover{box-shadow:0 6px 16px rgba(var(--primary-rgb),.4)}.user-menu-button[data-v-2abe1d62]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.user-menu-button[data-v-2abe1d62]:hover:before{left:100%}.user-menu-dropdown[data-v-2abe1d62]{margin-top:8px;animation:slideDown-2abe1d62 .3s ease-out}@keyframes slideDown-2abe1d62{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.fade-enter-active[data-v-2abe1d62],.fade-leave-active[data-v-2abe1d62]{transition:opacity .3s}.fade-enter-from[data-v-2abe1d62],.fade-leave-to[data-v-2abe1d62]{opacity:0} diff --git a/web/admin-spa/dist/assets/QuotaCardsView-B9kpLmPn.js b/web/admin-spa/dist/assets/QuotaCardsView-B9kpLmPn.js deleted file mode 100644 index 645cfe64..00000000 --- a/web/admin-spa/dist/assets/QuotaCardsView-B9kpLmPn.js +++ /dev/null @@ -1,3 +0,0 @@ -import{r as n,c as K,q as vt,x as o,z as t,I as X,R as ft,L as d,O as v,P as l,K as p,al as kt,aq as C,Q as f,ac as M,aV as Y,a5 as Z,Y as ht,y as a,C as L,u as U}from"./vue-vendor-DV7DYXbz.js";import{C as wt}from"./ConfirmModal-C2rCOkXI.js";import{bo as Ct,bp as _t,bq as At,br as $t,bs as Ut,s as m,bt as et,bu as qt,bv as jt,Z as N,c as st}from"./index-BahP9Xx9.js";import"./element-plus-BSjV1f9S.js";import"./vendor-Dr8jvgFu.js";const Tt={class:"tab-content"},Vt={class:"card p-4 sm:p-6"},Mt={class:"mb-4 flex flex-col gap-4 sm:mb-6"},Lt={class:"flex items-center justify-between"},St={class:"grid grid-cols-2 gap-3 sm:grid-cols-4 sm:gap-4"},Dt={class:"stat-card"},Pt={class:"flex items-center justify-between"},Rt={class:"text-xl font-bold text-gray-900 dark:text-gray-100 sm:text-2xl"},Qt={class:"stat-card"},It={class:"flex items-center justify-between"},zt={class:"text-xl font-bold text-green-600 dark:text-green-400 sm:text-2xl"},Bt={class:"stat-card"},Kt={class:"flex items-center justify-between"},Nt={class:"text-xl font-bold text-purple-600 dark:text-purple-400 sm:text-2xl"},Ot={class:"stat-card"},Et={class:"flex items-center justify-between"},Ft={class:"text-xl font-bold text-red-600 dark:text-red-400 sm:text-2xl"},Wt={class:"rounded-lg border border-gray-200 bg-gray-50 p-4 dark:border-gray-700 dark:bg-gray-800/50"},Xt={class:"flex flex-wrap items-center gap-4"},Yt={class:"flex items-center gap-2"},Zt={class:"relative inline-flex cursor-pointer items-center"},Gt={class:"flex items-center gap-2"},Ht=["disabled"],Jt={class:"flex items-center gap-2"},te=["disabled"],ee={class:"border-b border-gray-200 dark:border-gray-700"},se={"aria-label":"Tabs",class:"-mb-px flex space-x-8"},ae=["onClick"],re={key:0,class:"flex items-center justify-center py-12"},oe={key:1,class:"overflow-x-auto"},le={key:0,class:"mb-3 flex items-center gap-3 rounded-lg bg-blue-50 p-3 dark:bg-blue-900/20"},de={class:"text-sm text-blue-700 dark:text-blue-300"},ne={class:"min-w-full divide-y divide-gray-200 dark:divide-gray-700"},ie={class:"bg-gray-50 dark:bg-gray-700/50"},ue={class:"w-10 px-4 py-3"},xe=["checked","indeterminate"],ge={class:"divide-y divide-gray-200 bg-white dark:divide-gray-700 dark:bg-gray-800"},ye={class:"whitespace-nowrap px-4 py-3"},pe=["checked","onChange"],be={class:"whitespace-nowrap px-4 py-3"},me=["onClick"],ce={class:"whitespace-nowrap px-4 py-3"},ve={class:"whitespace-nowrap px-4 py-3 text-sm text-gray-900 dark:text-white"},fe={key:0},ke={key:1},he={key:2},we={class:"whitespace-nowrap px-4 py-3"},Ce={class:"whitespace-nowrap px-4 py-3 text-sm text-gray-500 dark:text-gray-400"},_e={class:"whitespace-nowrap px-4 py-3 text-sm text-gray-500 dark:text-gray-400"},Ae={class:"whitespace-nowrap px-4 py-3 text-right"},$e=["onClick"],Ue={key:0},qe={key:1,class:"flex flex-col items-center justify-between gap-3 border-t border-gray-200 px-4 py-3 dark:border-gray-700 sm:flex-row"},je={class:"flex items-center gap-4"},Te={class:"text-sm text-gray-600 dark:text-gray-400"},Ve={class:"flex items-center gap-2"},Me=["value"],Le={class:"flex items-center gap-2"},Se=["disabled"],De={class:"text-sm text-gray-600 dark:text-gray-400"},Pe=["disabled"],Re={key:2,class:"overflow-x-auto"},Qe={class:"min-w-full divide-y divide-gray-200 dark:divide-gray-700"},Ie={class:"divide-y divide-gray-200 bg-white dark:divide-gray-700 dark:bg-gray-800"},ze={class:"whitespace-nowrap px-4 py-3"},Be=["onClick"],Ke={class:"whitespace-nowrap px-4 py-3"},Ne=["onClick"],Oe={class:"whitespace-nowrap px-4 py-3"},Ee=["onClick"],Fe={class:"whitespace-nowrap px-4 py-3 text-sm text-gray-900 dark:text-white"},We={key:0},Xe={key:1},Ye={key:2},Ze={class:"whitespace-nowrap px-4 py-3"},Ge={class:"whitespace-nowrap px-4 py-3 text-sm text-gray-500 dark:text-gray-400"},He={class:"whitespace-nowrap px-4 py-3 text-right"},Je=["onClick"],ts={key:0},es={key:0,class:"modal fixed inset-0 z-50 flex items-center justify-center p-4"},ss={class:"modal-content mx-auto w-full max-w-lg p-6"},as={class:"mb-6 flex items-center justify-between"},rs={class:"space-y-4"},os={key:0},ls={key:1},ds={class:"flex gap-2"},ns={class:"mt-6 flex gap-3"},is=["disabled"],us={key:0,class:"fas fa-spinner fa-spin mr-2"},xs={key:0,class:"modal fixed inset-0 z-50 flex items-center justify-center p-4"},gs={class:"modal-content mx-auto w-full max-w-lg p-6"},ys={class:"mb-6 flex items-center justify-between"},ps={class:"flex items-center gap-3"},bs={class:"text-sm text-gray-500 dark:text-gray-400"},ms={class:"mb-4 max-h-60 overflow-y-auto rounded-lg bg-gray-50 p-3 dark:bg-gray-700/50"},cs={class:"flex items-center gap-2"},vs={class:"text-xs text-gray-400"},fs={class:"font-mono text-sm text-gray-900 dark:text-white"},ks={class:"text-xs text-gray-500 dark:text-gray-400"},hs={class:"w-full max-w-md rounded-2xl bg-white p-6 shadow-2xl dark:bg-gray-800"},ws={class:"mb-4"},Cs={class:"flex justify-end gap-3"},Ts={__name:"QuotaCardsView",setup(_s){const O=n(!1),q=n(!1),j=n(!1),E=n(!1),S=n(!1),_=n({title:"",message:"",type:"primary",confirmText:"确认",cancelText:"取消"}),k=n(null),y=n([]),T=n(!1),D=n(""),P=n(null),R=n("cards"),i=n([]),c=n(1),V=n(20),at=[10,20,50,100],Q=n(0),rt=[{id:"cards",name:"卡片列表"},{id:"redemptions",name:"核销记录"}],A=n({total:0,unused:0,redeemed:0,revoked:0,expired:0}),b=n({enabled:!0,maxExpiryDays:90,maxTotalCostLimit:1e3}),I=n([]),F=n([]),z=K(()=>I.value.filter(r=>r.status==="unused")),G=K(()=>z.value.length>0&&i.value.length===z.value.length),ot=K(()=>i.value.length>0&&i.value.length{G.value?i.value=[]:i.value=z.value.map(r=>r.id)},dt=r=>{const e=i.value.indexOf(r);e===-1?i.value.push(r):i.value.splice(e,1)},x=n({type:"quota",quotaAmount:10,timeAmount:30,timeUnit:"days",count:1,note:""}),H=(r,e,s="确认",u="取消",$="primary")=>new Promise(g=>{_.value={title:r,message:e,confirmText:s,cancelText:u,type:$},k.value=g,S.value=!0}),nt=()=>{var r;S.value=!1,(r=k.value)==null||r.call(k,!0)},it=()=>{var r;S.value=!1,(r=k.value)==null||r.call(k,!1)},h=async()=>{var g,w,B;O.value=!0;const r=(c.value-1)*V.value,[e,s,u]=await Promise.all([Ct({limit:V.value,offset:r}),_t(),At()]),$=await $t().catch(()=>({data:null}));I.value=((g=e.data)==null?void 0:g.cards)||[],Q.value=((w=e.data)==null?void 0:w.total)||0,A.value=s.data||A.value,F.value=((B=u.data)==null?void 0:B.redemptions)||[],$.data&&(b.value=$.data),O.value=!1},W=async()=>{(await Ut(b.value)).success&&m("配置已保存","success")},J=K(()=>Math.ceil(Q.value/V.value)),tt=r=>{c.value=r,i.value=[],h()},ut=()=>{c.value=1,i.value=[],h()},xt=async()=>{q.value=!0;const r=await qt(x.value);if(r.success){j.value=!1;const e=r.data;Array.isArray(e)?y.value=e:e?y.value=[e]:y.value=[],y.value.length>0&&(E.value=!0),m(`成功创建 ${y.value.length} 张卡片`,"success"),h()}else m(r.message||"创建卡片失败","error");q.value=!1},gt=()=>{if(y.value.length===0)return;const r=y.value.map(g=>{let w="";if((g.type==="quota"||g.type==="combo")&&(w+=`$${g.quotaAmount}`),g.type==="combo"&&(w+="_"),g.type==="time"||g.type==="combo"){const B={hours:"h",days:"d",months:"m"};w+=`${g.timeAmount}${B[g.timeUnit]||g.timeUnit}`}return`${w} ${g.code}`}).join(` -`),e=new Blob([r],{type:"text/plain;charset=utf-8"}),s=URL.createObjectURL(e),u=document.createElement("a");u.href=s;const $=new Date().toISOString().replace(/[:.]/g,"-").slice(0,-5);u.download=`quota-cards-${$}.txt`,document.body.appendChild(u),u.click(),document.body.removeChild(u),URL.revokeObjectURL(s),m("卡片文件已下载","success")},yt=async()=>{if(y.value.length===0)return;const r=y.value.map(e=>e.code).join(` -`);try{await navigator.clipboard.writeText(r),m("已复制所有卡号","success")}catch(e){console.error("Failed to copy:",e),m("复制失败","error")}},pt=async r=>{await H("删除卡片",`确定删除卡片 ${r.code}?`,"确定删除","取消","danger")&&(await et(r.id),m("卡片已删除","success"),h())},bt=async()=>{await H("批量删除",`确定删除选中的 ${i.value.length} 张卡片?`,"确定删除","取消","danger")&&(await Promise.all(i.value.map(e=>et(e))),m(`已删除 ${i.value.length} 张卡片`,"success"),i.value=[],h())},mt=r=>{P.value=r,D.value="",T.value=!0},ct=async()=>{P.value&&(await jt(P.value.id,{reason:D.value}),m("核销已撤销","success"),T.value=!1,P.value=null,h())};return vt(()=>{h()}),(r,e)=>(a(),o("div",Tt,[t("div",Vt,[t("div",Mt,[t("div",Lt,[e[21]||(e[21]=t("div",null,[t("h3",{class:"mb-1 text-lg font-bold text-gray-900 dark:text-gray-100 sm:mb-2 sm:text-xl"}," 额度卡管理 "),t("p",{class:"text-sm text-gray-600 dark:text-gray-400 sm:text-base"}," 管理额度卡和时间卡,用户可核销增加额度 ")],-1)),t("button",{class:"inline-flex items-center rounded-md bg-blue-600 px-3 py-2 text-sm font-medium text-white shadow-sm hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2",onClick:e[0]||(e[0]=s=>j.value=!0)},e[20]||(e[20]=[t("i",{class:"fas fa-plus mr-2"},null,-1),v(" 创建卡片 ",-1)]))]),t("div",St,[t("div",Dt,[t("div",Pt,[t("div",null,[e[22]||(e[22]=t("p",{class:"mb-1 text-xs font-semibold text-gray-600 dark:text-gray-400 sm:text-sm"}," 总卡片数 ",-1)),t("p",Rt,l(A.value.total),1)]),e[23]||(e[23]=t("div",{class:"stat-icon flex-shrink-0 bg-gradient-to-br from-blue-500 to-blue-600"},[t("i",{class:"fas fa-ticket-alt"})],-1))])]),t("div",Qt,[t("div",It,[t("div",null,[e[24]||(e[24]=t("p",{class:"mb-1 text-xs font-semibold text-gray-600 dark:text-gray-400 sm:text-sm"}," 未使用 ",-1)),t("p",zt,l(A.value.unused),1)]),e[25]||(e[25]=t("div",{class:"stat-icon flex-shrink-0 bg-gradient-to-br from-green-500 to-green-600"},[t("i",{class:"fas fa-check-circle"})],-1))])]),t("div",Bt,[t("div",Kt,[t("div",null,[e[26]||(e[26]=t("p",{class:"mb-1 text-xs font-semibold text-gray-600 dark:text-gray-400 sm:text-sm"}," 已核销 ",-1)),t("p",Nt,l(A.value.redeemed),1)]),e[27]||(e[27]=t("div",{class:"stat-icon flex-shrink-0 bg-gradient-to-br from-purple-500 to-purple-600"},[t("i",{class:"fas fa-exchange-alt"})],-1))])]),t("div",Ot,[t("div",Et,[t("div",null,[e[28]||(e[28]=t("p",{class:"mb-1 text-xs font-semibold text-gray-600 dark:text-gray-400 sm:text-sm"}," 已撤销 ",-1)),t("p",Ft,l(A.value.revoked),1)]),e[29]||(e[29]=t("div",{class:"stat-icon flex-shrink-0 bg-gradient-to-br from-red-500 to-red-600"},[t("i",{class:"fas fa-ban"})],-1))])])]),t("div",Wt,[t("div",Xt,[t("div",Yt,[e[31]||(e[31]=t("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-300"},"兑换上限保护",-1)),t("label",Zt,[p(t("input",{"onUpdate:modelValue":e[1]||(e[1]=s=>b.value.enabled=s),class:"peer sr-only",type:"checkbox",onChange:W},null,544),[[kt,b.value.enabled]]),e[30]||(e[30]=t("div",{class:"peer h-5 w-9 rounded-full bg-gray-300 after:absolute after:left-[2px] after:top-[2px] after:h-4 after:w-4 after:rounded-full after:bg-white after:transition-all after:content-[''] peer-checked:bg-blue-600 peer-checked:after:translate-x-full dark:bg-gray-600"},null,-1))])]),t("div",Gt,[e[32]||(e[32]=t("span",{class:"text-sm text-gray-600 dark:text-gray-400"},"最大额度",-1)),p(t("input",{"onUpdate:modelValue":e[2]||(e[2]=s=>b.value.maxTotalCostLimit=s),class:"w-24 rounded border border-gray-300 bg-white px-2 py-1 text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-white",disabled:!b.value.enabled,min:"0",type:"number",onChange:W},null,40,Ht),[[C,b.value.maxTotalCostLimit,void 0,{number:!0}]]),e[33]||(e[33]=t("span",{class:"text-sm text-gray-500 dark:text-gray-400"},"$",-1))]),t("div",Jt,[e[34]||(e[34]=t("span",{class:"text-sm text-gray-600 dark:text-gray-400"},"最大有效期",-1)),p(t("input",{"onUpdate:modelValue":e[3]||(e[3]=s=>b.value.maxExpiryDays=s),class:"w-20 rounded border border-gray-300 bg-white px-2 py-1 text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-white",disabled:!b.value.enabled,min:"0",type:"number",onChange:W},null,40,te),[[C,b.value.maxExpiryDays,void 0,{number:!0}]]),e[35]||(e[35]=t("span",{class:"text-sm text-gray-500 dark:text-gray-400"},"天",-1))])])]),t("div",ee,[t("nav",se,[(a(),o(f,null,M(rt,s=>t("button",{key:s.id,class:L(["whitespace-nowrap border-b-2 px-1 py-2 text-sm font-medium",R.value===s.id?"border-blue-500 text-blue-600":"border-transparent text-gray-500 hover:border-gray-300 hover:text-gray-700 dark:text-gray-400 dark:hover:border-gray-500 dark:hover:text-gray-300"]),onClick:u=>R.value=s.id},l(s.name),11,ae)),64))])])]),O.value?(a(),o("div",re,e[36]||(e[36]=[t("i",{class:"fas fa-spinner fa-spin mr-2 text-blue-500"},null,-1),t("span",{class:"text-gray-500 dark:text-gray-400"},"加载中...",-1)]))):R.value==="cards"?(a(),o("div",oe,[i.value.length>0?(a(),o("div",le,[t("span",de," 已选择 "+l(i.value.length)+" 张卡片 ",1),t("button",{class:"rounded-lg bg-red-500 px-3 py-1.5 text-sm font-medium text-white hover:bg-red-600",onClick:bt},e[37]||(e[37]=[t("i",{class:"fas fa-trash mr-1"},null,-1),v(" 批量删除 ",-1)])),t("button",{class:"rounded-lg bg-gray-200 px-3 py-1.5 text-sm font-medium text-gray-700 hover:bg-gray-300 dark:bg-gray-700 dark:text-gray-200 dark:hover:bg-gray-600",onClick:e[4]||(e[4]=s=>i.value=[])}," 取消选择 ")])):d("",!0),t("table",ne,[t("thead",ie,[t("tr",null,[t("th",ue,[t("input",{checked:G.value,class:"h-4 w-4 rounded border-gray-300 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",indeterminate:ot.value,type:"checkbox",onChange:lt},null,40,xe)]),e[38]||(e[38]=t("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 卡号 ",-1)),e[39]||(e[39]=t("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 类型 ",-1)),e[40]||(e[40]=t("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 额度/时间 ",-1)),e[41]||(e[41]=t("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 状态 ",-1)),e[42]||(e[42]=t("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 核销用户 ",-1)),e[43]||(e[43]=t("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 创建时间 ",-1)),e[44]||(e[44]=t("th",{class:"px-4 py-3 text-right text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 操作 ",-1))])]),t("tbody",ge,[(a(!0),o(f,null,M(I.value,s=>(a(),o("tr",{key:s.id,class:L(["hover:bg-gray-50 dark:hover:bg-gray-700/50",i.value.includes(s.id)?"bg-blue-50 dark:bg-blue-900/10":""])},[t("td",ye,[s.status==="unused"?(a(),o("input",{key:0,checked:i.value.includes(s.id),class:"h-4 w-4 rounded border-gray-300 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700",type:"checkbox",onChange:u=>dt(s.id)},null,40,pe)):d("",!0)]),t("td",be,[t("code",{class:"cursor-pointer rounded bg-gray-100 px-2 py-1 font-mono text-xs hover:bg-gray-200 dark:bg-gray-700 dark:hover:bg-gray-600",title:"点击复制",onClick:u=>U(N)(s.code)},l(s.code),9,me)]),t("td",ce,[t("span",{class:L(["inline-flex rounded-full px-2 py-1 text-xs font-medium",s.type==="quota"?"bg-blue-100 text-blue-800 dark:bg-blue-900/30 dark:text-blue-300":s.type==="time"?"bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-300":"bg-purple-100 text-purple-800 dark:bg-purple-900/30 dark:text-purple-300"])},l(s.type==="quota"?"额度卡":s.type==="time"?"时间卡":"组合卡"),3)]),t("td",ve,[s.type==="quota"||s.type==="combo"?(a(),o("span",fe,"$"+l(s.quotaAmount),1)):d("",!0),s.type==="combo"?(a(),o("span",ke," + ")):d("",!0),s.type==="time"||s.type==="combo"?(a(),o("span",he,l(s.timeAmount)+" "+l(s.timeUnit==="hours"?"小时":s.timeUnit==="days"?"天":"月"),1)):d("",!0)]),t("td",we,[t("span",{class:L(["inline-flex rounded-full px-2 py-1 text-xs font-medium",s.status==="unused"?"bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-300":s.status==="redeemed"?"bg-purple-100 text-purple-800 dark:bg-purple-900/30 dark:text-purple-300":"bg-red-100 text-red-800 dark:bg-red-900/30 dark:text-red-300"])},l(s.status==="unused"?"未使用":s.status==="redeemed"?"已核销":"已撤销"),3)]),t("td",Ce,l(s.redeemedByUsername||"-"),1),t("td",_e,l(U(st)(s.createdAt)),1),t("td",Ae,[s.status==="unused"?(a(),o("button",{key:0,class:"text-red-600 hover:text-red-900 dark:text-red-400 dark:hover:text-red-300",title:"删除",onClick:u=>pt(s)},e[45]||(e[45]=[t("i",{class:"fas fa-trash"},null,-1)]),8,$e)):d("",!0)])],2))),128)),I.value.length===0?(a(),o("tr",Ue,e[46]||(e[46]=[t("td",{class:"px-4 py-8 text-center text-sm text-gray-500 dark:text-gray-400",colspan:"8"}," 暂无卡片数据 ",-1)]))):d("",!0)])]),Q.value>0?(a(),o("div",qe,[t("div",je,[t("span",Te," 共 "+l(Q.value)+" 条记录 ",1),t("div",Ve,[e[47]||(e[47]=t("span",{class:"text-sm text-gray-600 dark:text-gray-400"},"每页",-1)),p(t("select",{"onUpdate:modelValue":e[5]||(e[5]=s=>V.value=s),class:"rounded-md border border-gray-200 bg-white px-2 py-1 text-sm text-gray-700 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300",onChange:ut},[(a(),o(f,null,M(at,s=>t("option",{key:s,value:s},l(s),9,Me)),64))],544),[[Y,V.value]]),e[48]||(e[48]=t("span",{class:"text-sm text-gray-600 dark:text-gray-400"},"条",-1))])]),t("div",Le,[t("button",{class:"rounded-md border border-gray-300 bg-white px-3 py-1.5 text-sm font-medium text-gray-700 hover:bg-gray-50 disabled:cursor-not-allowed disabled:opacity-50 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700",disabled:c.value===1,onClick:e[6]||(e[6]=s=>tt(c.value-1))},e[49]||(e[49]=[t("i",{class:"fas fa-chevron-left"},null,-1)]),8,Se),t("span",De,l(c.value)+" / "+l(J.value),1),t("button",{class:"rounded-md border border-gray-300 bg-white px-3 py-1.5 text-sm font-medium text-gray-700 hover:bg-gray-50 disabled:cursor-not-allowed disabled:opacity-50 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700",disabled:c.value>=J.value,onClick:e[7]||(e[7]=s=>tt(c.value+1))},e[50]||(e[50]=[t("i",{class:"fas fa-chevron-right"},null,-1)]),8,Pe)])])):d("",!0)])):R.value==="redemptions"?(a(),o("div",Re,[t("table",Qe,[e[53]||(e[53]=t("thead",{class:"bg-gray-50 dark:bg-gray-700/50"},[t("tr",null,[t("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 卡号 "),t("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 用户 "),t("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," API Key "),t("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 增加额度 "),t("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 状态 "),t("th",{class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 核销时间 "),t("th",{class:"px-4 py-3 text-right text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-300"}," 操作 ")])],-1)),t("tbody",Ie,[(a(!0),o(f,null,M(F.value,s=>(a(),o("tr",{key:s.id,class:"hover:bg-gray-50 dark:hover:bg-gray-700/50"},[t("td",ze,[t("code",{class:"cursor-pointer rounded bg-gray-100 px-2 py-1 font-mono text-xs hover:bg-gray-200 dark:bg-gray-700 dark:hover:bg-gray-600",title:"点击复制",onClick:u=>U(N)(s.cardCode)},l(s.cardCode),9,Be)]),t("td",Ke,[t("span",{class:"cursor-pointer text-sm text-gray-900 hover:text-blue-600 dark:text-white dark:hover:text-blue-400",title:"点击复制",onClick:u=>U(N)(s.username||s.userId)},l(s.username||s.userId),9,Ne)]),t("td",Oe,[t("span",{class:"cursor-pointer text-sm text-gray-500 hover:text-blue-600 dark:text-gray-400 dark:hover:text-blue-400",title:"点击复制",onClick:u=>U(N)(s.apiKeyName||s.apiKeyId)},l(s.apiKeyName||s.apiKeyId),9,Ee)]),t("td",Fe,[s.quotaAdded>0?(a(),o("span",We,"$"+l(s.quotaAdded),1)):d("",!0),s.quotaAdded>0&&s.timeAdded>0?(a(),o("span",Xe," + ")):d("",!0),s.timeAdded>0?(a(),o("span",Ye,l(s.timeAdded)+" "+l(s.timeUnit==="hours"?"小时":s.timeUnit==="days"?"天":"月"),1)):d("",!0)]),t("td",Ze,[t("span",{class:L(["inline-flex rounded-full px-2 py-1 text-xs font-medium",s.status==="active"?"bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-300":"bg-red-100 text-red-800 dark:bg-red-900/30 dark:text-red-300"])},l(s.status==="active"?"有效":"已撤销"),3)]),t("td",Ge,l(U(st)(s.timestamp)),1),t("td",He,[s.status==="active"?(a(),o("button",{key:0,class:"text-red-600 hover:text-red-900 dark:text-red-400 dark:hover:text-red-300",title:"撤销核销",onClick:u=>mt(s)},e[51]||(e[51]=[t("i",{class:"fas fa-undo"},null,-1)]),8,Je)):d("",!0)])]))),128)),F.value.length===0?(a(),o("tr",ts,e[52]||(e[52]=[t("td",{class:"px-4 py-8 text-center text-sm text-gray-500 dark:text-gray-400",colspan:"7"}," 暂无核销记录 ",-1)]))):d("",!0)])])])):d("",!0)]),(a(),X(Z,{to:"body"},[j.value?(a(),o("div",es,[t("div",ss,[t("div",as,[e[55]||(e[55]=t("div",{class:"flex items-center gap-3"},[t("div",{class:"flex h-10 w-10 items-center justify-center rounded-xl bg-gradient-to-br from-blue-500 to-blue-600"},[t("i",{class:"fas fa-ticket-alt text-white"})]),t("h3",{class:"text-lg font-bold text-gray-900 dark:text-gray-100"},"创建额度卡")],-1)),t("button",{class:"p-1 text-gray-400 transition-colors hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300",onClick:e[8]||(e[8]=s=>j.value=!1)},e[54]||(e[54]=[t("i",{class:"fas fa-times text-xl"},null,-1)]))]),t("div",rs,[t("div",null,[e[57]||(e[57]=t("label",{class:"mb-1 block text-sm font-medium text-gray-700 dark:text-gray-300"},"卡片类型",-1)),p(t("select",{"onUpdate:modelValue":e[9]||(e[9]=s=>x.value.type=s),class:"block w-full rounded-lg border border-gray-300 bg-white px-3 py-2 text-sm shadow-sm focus:border-blue-500 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white"},e[56]||(e[56]=[t("option",{value:"quota"},"额度卡",-1),t("option",{value:"time"},"时间卡",-1),t("option",{value:"combo"},"组合卡",-1)]),512),[[Y,x.value.type]])]),x.value.type==="quota"||x.value.type==="combo"?(a(),o("div",os,[e[58]||(e[58]=t("label",{class:"mb-1 block text-sm font-medium text-gray-700 dark:text-gray-300"},"额度数量 (美元)",-1)),p(t("input",{"onUpdate:modelValue":e[10]||(e[10]=s=>x.value.quotaAmount=s),class:"block w-full rounded-lg border border-gray-300 bg-white px-3 py-2 text-sm shadow-sm focus:border-blue-500 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white",min:"0",step:"0.1",type:"number"},null,512),[[C,x.value.quotaAmount,void 0,{number:!0}]])])):d("",!0),x.value.type==="time"||x.value.type==="combo"?(a(),o("div",ls,[e[60]||(e[60]=t("label",{class:"mb-1 block text-sm font-medium text-gray-700 dark:text-gray-300"},"时间数量",-1)),t("div",ds,[p(t("input",{"onUpdate:modelValue":e[11]||(e[11]=s=>x.value.timeAmount=s),class:"block w-full rounded-lg border border-gray-300 bg-white px-3 py-2 text-sm shadow-sm focus:border-blue-500 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white",min:"1",type:"number"},null,512),[[C,x.value.timeAmount,void 0,{number:!0}]]),p(t("select",{"onUpdate:modelValue":e[12]||(e[12]=s=>x.value.timeUnit=s),class:"block rounded-lg border border-gray-300 bg-white px-3 py-2 text-sm shadow-sm focus:border-blue-500 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white"},e[59]||(e[59]=[t("option",{value:"hours"},"小时",-1),t("option",{value:"days"},"天",-1),t("option",{value:"months"},"月",-1)]),512),[[Y,x.value.timeUnit]])])])):d("",!0),t("div",null,[e[61]||(e[61]=t("label",{class:"mb-1 block text-sm font-medium text-gray-700 dark:text-gray-300"},"批量生成数量",-1)),p(t("input",{"onUpdate:modelValue":e[13]||(e[13]=s=>x.value.count=s),class:"block w-full rounded-lg border border-gray-300 bg-white px-3 py-2 text-sm shadow-sm focus:border-blue-500 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white",max:"100",min:"1",type:"number"},null,512),[[C,x.value.count,void 0,{number:!0}]])]),t("div",null,[e[62]||(e[62]=t("label",{class:"mb-1 block text-sm font-medium text-gray-700 dark:text-gray-300"},"备注(可选)",-1)),p(t("input",{"onUpdate:modelValue":e[14]||(e[14]=s=>x.value.note=s),class:"block w-full rounded-lg border border-gray-300 bg-white px-3 py-2 text-sm shadow-sm focus:border-blue-500 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white",placeholder:"例如:新年促销卡",type:"text"},null,512),[[C,x.value.note]])])]),t("div",ns,[t("button",{class:"flex-1 rounded-xl bg-gray-100 px-4 py-2.5 font-medium text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-200 dark:hover:bg-gray-600",type:"button",onClick:e[15]||(e[15]=s=>j.value=!1)}," 取消 "),t("button",{class:"flex-1 rounded-xl bg-gradient-to-r from-blue-500 to-blue-600 px-4 py-2.5 font-medium text-white shadow-sm transition-colors hover:from-blue-600 hover:to-blue-700 disabled:opacity-50",disabled:q.value,type:"button",onClick:xt},[q.value?(a(),o("i",us)):d("",!0),v(" "+l(q.value?"创建中...":"创建"),1)],8,is)])])])):d("",!0)])),(a(),X(Z,{to:"body"},[E.value?(a(),o("div",xs,[t("div",gs,[t("div",ys,[t("div",ps,[e[64]||(e[64]=t("div",{class:"flex h-10 w-10 items-center justify-center rounded-xl bg-gradient-to-br from-green-500 to-green-600"},[t("i",{class:"fas fa-check text-white"})],-1)),t("div",null,[e[63]||(e[63]=t("h3",{class:"text-lg font-bold text-gray-900 dark:text-gray-100"},"创建成功",-1)),t("p",bs," 已创建 "+l(y.value.length)+" 张卡片 ",1)])]),t("button",{class:"p-1 text-gray-400 transition-colors hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300",onClick:e[16]||(e[16]=s=>E.value=!1)},e[65]||(e[65]=[t("i",{class:"fas fa-times text-xl"},null,-1)]))]),t("div",ms,[(a(!0),o(f,null,M(y.value,(s,u)=>(a(),o("div",{key:s.id,class:"flex items-center justify-between border-b border-gray-200 py-2 last:border-0 dark:border-gray-600"},[t("div",cs,[t("span",vs,l(u+1)+".",1),t("code",fs,l(s.code),1)]),t("span",ks,[s.type==="quota"||s.type==="combo"?(a(),o(f,{key:0},[v(" $"+l(s.quotaAmount),1)],64)):d("",!0),s.type==="combo"?(a(),o(f,{key:1},[v(" + ")],64)):d("",!0),s.type==="time"||s.type==="combo"?(a(),o(f,{key:2},[v(l(s.timeAmount)+" "+l(s.timeUnit==="hours"?"小时":s.timeUnit==="days"?"天":"月"),1)],64)):d("",!0)])]))),128))]),e[68]||(e[68]=t("div",{class:"mb-4 rounded-lg border border-yellow-200 bg-yellow-50 p-3 dark:border-yellow-700 dark:bg-yellow-900/20"},[t("div",{class:"flex items-start gap-2"},[t("i",{class:"fas fa-exclamation-triangle mt-0.5 text-yellow-500"}),t("p",{class:"text-sm text-yellow-700 dark:text-yellow-300"}," 请立即下载或复制卡号,关闭后将无法再次查看完整卡号列表。 ")])],-1)),t("div",{class:"flex gap-3"},[t("button",{class:"flex-1 rounded-xl bg-gradient-to-r from-blue-500 to-blue-600 px-4 py-2.5 font-medium text-white shadow-sm transition-colors hover:from-blue-600 hover:to-blue-700",type:"button",onClick:gt},e[66]||(e[66]=[t("i",{class:"fas fa-download mr-2"},null,-1),v(" 下载 TXT ",-1)])),t("button",{class:"flex-1 rounded-xl bg-gray-100 px-4 py-2.5 font-medium text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-200 dark:hover:bg-gray-600",type:"button",onClick:yt},e[67]||(e[67]=[t("i",{class:"fas fa-copy mr-2"},null,-1),v(" 复制全部 ",-1)]))])])])):d("",!0)])),(a(),X(Z,{to:"body"},[T.value?(a(),o("div",{key:0,class:"fixed inset-0 z-50 flex items-center justify-center bg-black/50 p-4 backdrop-blur-sm",onClick:e[19]||(e[19]=ht(s=>T.value=!1,["self"]))},[t("div",hs,[e[70]||(e[70]=t("h3",{class:"mb-4 text-lg font-semibold text-gray-900 dark:text-white"},"撤销核销",-1)),t("div",ws,[e[69]||(e[69]=t("label",{class:"mb-2 block text-sm font-medium text-gray-700 dark:text-gray-300"}," 撤销原因(可选) ",-1)),p(t("input",{"onUpdate:modelValue":e[17]||(e[17]=s=>D.value=s),class:"w-full rounded-lg border border-gray-300 px-3 py-2 text-sm focus:border-blue-500 focus:outline-none focus:ring-1 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white",placeholder:"请输入撤销原因",type:"text"},null,512),[[C,D.value]])]),t("div",Cs,[t("button",{class:"rounded-lg bg-gray-100 px-4 py-2 text-sm font-medium text-gray-700 hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",onClick:e[18]||(e[18]=s=>T.value=!1)}," 取消 "),t("button",{class:"rounded-lg bg-red-500 px-4 py-2 text-sm font-medium text-white hover:bg-red-600",onClick:ct}," 确认撤销 ")])])])):d("",!0)])),ft(wt,{"cancel-text":_.value.cancelText,"confirm-text":_.value.confirmText,message:_.value.message,show:S.value,title:_.value.title,type:_.value.type,onCancel:it,onConfirm:nt},null,8,["cancel-text","confirm-text","message","show","title","type"])]))}};export{Ts as default}; diff --git a/web/admin-spa/dist/assets/RecordDetailModal-CZv4ajwT.css b/web/admin-spa/dist/assets/RecordDetailModal-CZv4ajwT.css deleted file mode 100644 index c2f48b67..00000000 --- a/web/admin-spa/dist/assets/RecordDetailModal-CZv4ajwT.css +++ /dev/null @@ -1 +0,0 @@ -.record-detail-modal[data-v-8a7345f4] .el-dialog__header{margin:0;padding:16px 16px 0}.record-detail-modal[data-v-8a7345f4] .el-dialog__body{padding:12px 16px 4px}.record-detail-modal[data-v-8a7345f4] .el-dialog__footer{padding:8px 16px 16px} diff --git a/web/admin-spa/dist/assets/RecordDetailModal-iWzEw88d.js b/web/admin-spa/dist/assets/RecordDetailModal-iWzEw88d.js deleted file mode 100644 index 0e24bcd4..00000000 --- a/web/admin-spa/dist/assets/RecordDetailModal-iWzEw88d.js +++ /dev/null @@ -1 +0,0 @@ -import{b as T,e as R}from"./element-plus-BSjV1f9S.js";import{b as B}from"./vendor-Dr8jvgFu.js";import{_ as D,f as l}from"./index-BahP9Xx9.js";import{c as w,I as N,y as $,J as x,z as t,P as s,u as i,R as F,O as M}from"./vue-vendor-DV7DYXbz.js";const V={class:"flex items-center justify-between"},Y={class:"text-lg font-bold text-gray-900 dark:text-gray-100"},E={class:"space-y-4"},H={class:"grid gap-3 md:grid-cols-2"},I={class:"rounded-lg border border-gray-200 bg-gray-50 p-4 dark:border-gray-800 dark:bg-gray-900"},O={class:"space-y-2 text-sm text-gray-700 dark:text-gray-300"},z={class:"flex items-center justify-between"},J={class:"font-medium"},P={class:"flex items-center justify-between"},S={class:"font-medium"},q={class:"flex items-center justify-between"},A={class:"font-medium"},G={class:"flex items-center justify-between"},K={class:"font-medium"},L={class:"rounded-lg border border-gray-200 bg-gray-50 p-4 dark:border-gray-800 dark:bg-gray-900"},Q={class:"space-y-2 text-sm text-gray-700 dark:text-gray-300"},U={class:"flex items-center justify-between"},W={class:"font-semibold text-blue-600 dark:text-blue-400"},X={class:"flex items-center justify-between"},Z={class:"font-semibold text-green-600 dark:text-green-400"},tt={class:"flex items-center justify-between"},et={class:"font-semibold text-purple-600 dark:text-purple-400"},st={class:"flex items-center justify-between"},at={class:"font-semibold text-orange-600 dark:text-orange-400"},rt={class:"flex items-center justify-between"},ot={class:"font-semibold text-gray-900 dark:text-gray-100"},dt={class:"rounded-lg border border-gray-200 bg-white p-4 dark:border-gray-800 dark:bg-gray-900"},nt={class:"grid gap-3 sm:grid-cols-2"},lt={class:"flex items-center justify-between rounded-md bg-gray-50 px-3 py-2 dark:bg-gray-800"},it={class:"text-sm font-semibold text-gray-900 dark:text-gray-100"},ct={class:"flex items-center justify-between rounded-md bg-gray-50 px-3 py-2 dark:bg-gray-800"},yt={class:"text-sm font-semibold text-gray-900 dark:text-gray-100"},gt={class:"flex items-center justify-between rounded-md bg-gray-50 px-3 py-2 dark:bg-gray-800"},xt={class:"text-sm font-semibold text-gray-900 dark:text-gray-100"},mt={class:"flex items-center justify-between rounded-md bg-gray-50 px-3 py-2 dark:bg-gray-800"},ut={class:"text-sm font-semibold text-gray-900 dark:text-gray-100"},ft={class:"mt-4 flex items-center justify-between rounded-md border border-gray-200 bg-gray-50 px-4 py-3 dark:border-gray-800 dark:bg-gray-800"},bt={class:"text-base font-bold text-yellow-600 dark:text-yellow-400"},pt={class:"flex justify-end"},kt={__name:"RecordDetailModal",props:{show:{type:Boolean,default:!1},record:{type:Object,default:()=>({})}},emits:["close"],setup(a,{emit:h}){const c=a,j=h,m=()=>j("close"),C=w(()=>{var r;return(r=c.record)!=null&&r.timestamp?B(c.record.timestamp).format("YYYY-MM-DD HH:mm:ss"):"未知时间"}),n=w(()=>{var y,g;const r=((y=c.record)==null?void 0:y.realCostBreakdown)||((g=c.record)==null?void 0:g.costBreakdown)||{},e=o=>{const d=typeof o=="number"?o:0;return d>=1?`$${d.toFixed(2)}`:d>=.001?`$${d.toFixed(4)}`:`$${d.toFixed(6)}`};return{input:e(r.input),output:e(r.output),cacheCreate:e(r.cacheCreate),cacheRead:e(r.cacheRead),total:e(r.total)}});return(r,e)=>{const y=T,g=R;return $(),N(g,{"append-to-body":!0,class:"record-detail-modal","close-on-click-modal":!1,"destroy-on-close":!0,"model-value":a.show,"show-close":!1,top:"10vh",width:"720px",onClose:m},{header:x(()=>{var o;return[t("div",V,[t("div",null,[e[0]||(e[0]=t("p",{class:"text-xs font-medium uppercase tracking-wide text-gray-500 dark:text-gray-400"}," 请求详情 ",-1)),t("p",Y,s(((o=a.record)==null?void 0:o.model)||"未知模型"),1)]),t("button",{"aria-label":"关闭",class:"rounded-full p-2 text-gray-500 transition hover:bg-gray-100 hover:text-gray-700 dark:text-gray-300 dark:hover:bg-gray-800 dark:hover:text-gray-100",onClick:m},e[1]||(e[1]=[t("i",{class:"fas fa-times"},null,-1)]))])]}),footer:x(()=>[t("div",pt,[F(y,{type:"primary",onClick:m},{default:x(()=>e[19]||(e[19]=[M("关闭",-1)])),_:1,__:[19]})])]),default:x(()=>{var o,d,u,f,b,p,k,_,v;return[t("div",E,[t("div",H,[t("div",I,[e[6]||(e[6]=t("h4",{class:"mb-3 text-sm font-semibold text-gray-800 dark:text-gray-200"},"基本信息",-1)),t("ul",O,[t("li",z,[e[2]||(e[2]=t("span",{class:"text-gray-500 dark:text-gray-400"},"时间",-1)),t("span",J,s(C.value),1)]),t("li",P,[e[3]||(e[3]=t("span",{class:"text-gray-500 dark:text-gray-400"},"模型",-1)),t("span",S,s(((o=a.record)==null?void 0:o.model)||"未知模型"),1)]),t("li",q,[e[4]||(e[4]=t("span",{class:"text-gray-500 dark:text-gray-400"},"账户",-1)),t("span",A,s(((d=a.record)==null?void 0:d.accountName)||"未知账户"),1)]),t("li",G,[e[5]||(e[5]=t("span",{class:"text-gray-500 dark:text-gray-400"},"渠道",-1)),t("span",K,s(((u=a.record)==null?void 0:u.accountTypeName)||"未知渠道"),1)])])]),t("div",L,[e[12]||(e[12]=t("h4",{class:"mb-3 text-sm font-semibold text-gray-800 dark:text-gray-200"},"Token 使用",-1)),t("ul",Q,[t("li",U,[e[7]||(e[7]=t("span",{class:"text-gray-500 dark:text-gray-400"},"输入 Token",-1)),t("span",W,s(i(l)((f=a.record)==null?void 0:f.inputTokens)),1)]),t("li",X,[e[8]||(e[8]=t("span",{class:"text-gray-500 dark:text-gray-400"},"输出 Token",-1)),t("span",Z,s(i(l)((b=a.record)==null?void 0:b.outputTokens)),1)]),t("li",tt,[e[9]||(e[9]=t("span",{class:"text-gray-500 dark:text-gray-400"},"缓存创建",-1)),t("span",et,s(i(l)((p=a.record)==null?void 0:p.cacheCreateTokens)),1)]),t("li",st,[e[10]||(e[10]=t("span",{class:"text-gray-500 dark:text-gray-400"},"缓存读取",-1)),t("span",at,s(i(l)((k=a.record)==null?void 0:k.cacheReadTokens)),1)]),t("li",rt,[e[11]||(e[11]=t("span",{class:"text-gray-500 dark:text-gray-400"},"总计",-1)),t("span",ot,s(i(l)((_=a.record)==null?void 0:_.totalTokens)),1)])])])]),t("div",dt,[e[18]||(e[18]=t("h4",{class:"mb-3 text-sm font-semibold text-gray-800 dark:text-gray-200"},"费用详情",-1)),t("div",nt,[t("div",lt,[e[13]||(e[13]=t("span",{class:"text-sm text-gray-500 dark:text-gray-400"},"输入费用",-1)),t("span",it,s(n.value.input),1)]),t("div",ct,[e[14]||(e[14]=t("span",{class:"text-sm text-gray-500 dark:text-gray-400"},"输出费用",-1)),t("span",yt,s(n.value.output),1)]),t("div",gt,[e[15]||(e[15]=t("span",{class:"text-sm text-gray-500 dark:text-gray-400"},"缓存创建",-1)),t("span",xt,s(n.value.cacheCreate),1)]),t("div",mt,[e[16]||(e[16]=t("span",{class:"text-sm text-gray-500 dark:text-gray-400"},"缓存读取",-1)),t("span",ut,s(n.value.cacheRead),1)])]),t("div",ft,[e[17]||(e[17]=t("span",{class:"text-sm font-semibold text-gray-700 dark:text-gray-200"},"总费用",-1)),t("div",bt,s(((v=a.record)==null?void 0:v.costFormatted)||n.value.total),1)])])])]}),_:1},8,["model-value"])}}},jt=D(kt,[["__scopeId","data-v-8a7345f4"]]);export{jt as R}; diff --git a/web/admin-spa/dist/assets/SettingsView-BSo4LhAq.js b/web/admin-spa/dist/assets/SettingsView-BSo4LhAq.js deleted file mode 100644 index c2a4993e..00000000 --- a/web/admin-spa/dist/assets/SettingsView-BSo4LhAq.js +++ /dev/null @@ -1,3 +0,0 @@ -import{aP as $e,r as k,aY as Ge,c as Ce,o as Te,q as He,Z as Ye,x as o,z as t,L as x,C as E,O as l,u as g,K as d,S as X,aq as p,al as Q,P as v,aT as A,Q as Z,ac as le,R as Ue,aV as _,J as Je,T as Xe,Y as Ze,y as n}from"./vue-vendor-DV7DYXbz.js";import{b1 as _e,b2 as et,_ as tt,s as f,b3 as at,b4 as rt,b5 as st,b6 as lt,b7 as ot,b8 as nt,b9 as Ae,ba as dt,bb as it,bc as ut,bd as gt,be as ft}from"./index-BahP9Xx9.js";import{C as ct}from"./ConfirmModal-C2rCOkXI.js";import"./element-plus-BSjV1f9S.js";import"./vendor-Dr8jvgFu.js";const bt=$e("settings",()=>{const M=k({siteName:"Claude Relay Service",siteIcon:"",siteIconData:"",showAdminButton:!0,apiStatsNotice:{enabled:!1,title:"",content:""},updatedAt:null}),R=k(!1),W=k(!1),I=async()=>{R.value=!0;const m=await _e();return m.success&&(M.value={...M.value,...m.data},w()),R.value=!1,m},b=async m=>{W.value=!0;const h=await et(m);return h.success&&(M.value={...M.value,...h.data},w()),W.value=!1,h},ee=async()=>{const m={siteName:"Claude Relay Service",siteIcon:"",siteIconData:"",showAdminButton:!0,apiStatsNotice:{enabled:!1,title:"",content:""},updatedAt:null};return M.value={...m},await b(m)},w=()=>{if(M.value.siteName&&(document.title=`${M.value.siteName} - 管理后台`),M.value.siteIconData||M.value.siteIcon){const m=document.querySelector('link[rel="icon"]')||document.createElement("link");m.rel="icon",m.href=M.value.siteIconData||M.value.siteIcon,document.querySelector('link[rel="icon"]')||document.head.appendChild(m)}};return{oemSettings:M,loading:R,saving:W,loadOemSettings:I,saveOemSettings:b,resetOemSettings:ee,applyOemSettings:w,formatDateTime:m=>m?new Date(m).toLocaleString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}):"",validateIconFile:m=>{const h=[];return m.size>350*1024&&h.push("图标文件大小不能超过 350KB"),["image/x-icon","image/png","image/jpeg","image/jpg","image/svg+xml"].includes(m.type)||h.push("不支持的文件类型,请选择 .ico, .png, .jpg 或 .svg 文件"),{isValid:h.length===0,errors:h}},fileToBase64:m=>new Promise((h,K)=>{const F=new FileReader;F.onload=te=>h(te.target.result),F.onerror=K,F.readAsDataURL(m)})}}),xt={class:"settings-container"},pt={class:"card p-4 sm:p-6"},yt={class:"mb-6"},vt={class:"flex space-x-8"},mt={key:0,class:"py-12 text-center"},kt={key:1},wt={class:"table-container hidden sm:block"},ht={class:"min-w-full"},St={class:"divide-y divide-gray-200/50 dark:divide-gray-600/50"},Ct={class:"table-row"},Tt={class:"px-6 py-4"},Ut={class:"table-row"},At={class:"px-6 py-4"},Mt={class:"space-y-3"},It={key:0,class:"inline-flex items-center gap-3 rounded-lg bg-gray-50 p-3 dark:bg-gray-700"},Bt=["src"],Et={class:"table-row"},Rt={class:"px-6 py-4"},Vt={class:"flex items-center"},Dt={class:"inline-flex cursor-pointer items-center"},Qt={class:"ml-3 text-sm font-medium text-gray-900 dark:text-gray-300"},qt={class:"border-b border-gray-100 dark:border-gray-700"},Pt={class:"px-6 py-4"},jt={class:"flex items-center"},Nt={class:"inline-flex cursor-pointer items-center"},Lt={class:"ml-3 text-sm font-medium text-gray-900 dark:text-gray-300"},Ot={key:0,class:"mt-3 space-y-3"},Wt={class:"px-6 py-6",colspan:"2"},zt={class:"flex items-center justify-between"},Kt={class:"flex gap-3"},Ft=["disabled"],$t={key:0,class:"loading-spinner mr-2"},Gt={key:1,class:"fas fa-save mr-2"},Ht=["disabled"],Yt={key:0,class:"text-sm text-gray-500 dark:text-gray-400"},Jt={class:"space-y-4 sm:hidden"},Xt={class:"glass-card p-4"},Zt={class:"glass-card p-4"},_t={class:"space-y-3"},ea={key:0,class:"inline-flex items-center gap-3 rounded-lg bg-gray-50 p-3 dark:bg-gray-700"},ta=["src"],aa={class:"glass-card p-4"},ra={class:"space-y-2"},sa={class:"inline-flex cursor-pointer items-center"},la={class:"ml-3 text-sm font-medium text-gray-900 dark:text-gray-300"},oa={class:"glass-card p-4"},na={class:"flex flex-col gap-3"},da=["disabled"],ia={key:0,class:"loading-spinner mr-2"},ua={key:1,class:"fas fa-save mr-2"},ga=["disabled"],fa={key:0,class:"text-center text-sm text-gray-500 dark:text-gray-400"},ca={class:"mb-6 rounded-lg bg-white/80 p-6 shadow-lg backdrop-blur-sm dark:bg-gray-800/80"},ba={class:"flex items-center justify-between"},xa={class:"relative inline-flex cursor-pointer items-center"},pa={class:"mb-6 rounded-lg bg-white/80 p-6 shadow-lg backdrop-blur-sm dark:bg-gray-800/80"},ya={class:"space-y-3"},va={class:"font-medium text-gray-700 dark:text-gray-300"},ma={class:"ml-2 text-sm text-gray-500 dark:text-gray-400"},ka={class:"relative inline-flex cursor-pointer items-center"},wa=["onUpdate:modelValue"],ha={class:"mb-6 rounded-lg bg-white/80 p-6 shadow-lg backdrop-blur-sm dark:bg-gray-800/80"},Sa={class:"mb-4 flex items-center justify-between"},Ca={key:0,class:"space-y-4"},Ta={class:"flex items-start justify-between"},Ua={class:"flex-1"},Aa={class:"flex items-center"},Ma={class:"font-semibold text-gray-800 dark:text-gray-200"},Ia={class:"text-sm text-gray-500 dark:text-gray-400"},Ba={class:"mt-3 space-y-1 text-sm"},Ea={key:0,class:"flex items-center text-gray-600 dark:text-gray-400"},Ra={class:"truncate"},Va={key:1,class:"flex items-center text-gray-600 dark:text-gray-400"},Da={class:"truncate"},Qa={key:2,class:"flex items-center text-gray-600 dark:text-gray-400"},qa={class:"truncate"},Pa={key:3,class:"flex items-center text-gray-600 dark:text-gray-400"},ja={class:"truncate"},Na={key:4,class:"flex items-center text-gray-600 dark:text-gray-400"},La={class:"truncate"},Oa={key:5,class:"flex items-center text-gray-600 dark:text-gray-400"},Wa={class:"truncate"},za={key:6,class:"flex items-center text-gray-600 dark:text-gray-400"},Ka={class:"ml-4 flex items-center space-x-2"},Fa={class:"relative inline-flex cursor-pointer items-center"},$a=["checked","onChange"],Ga=["onClick"],Ha=["onClick"],Ya=["onClick"],Ja={key:1,class:"py-8 text-center text-gray-500 dark:text-gray-400"},Xa={class:"rounded-lg bg-white/80 p-6 shadow-lg backdrop-blur-sm dark:bg-gray-800/80"},Za={class:"grid grid-cols-1 gap-4 md:grid-cols-3"},_a={key:0,class:"py-12 text-center"},er={key:1},tr={class:"mb-6 rounded-lg bg-white/80 p-6 shadow-lg backdrop-blur-sm dark:bg-gray-800/80"},ar={class:"flex items-center justify-between"},rr={class:"relative inline-flex cursor-pointer items-center"},sr={class:"mb-6 rounded-lg bg-white/80 p-6 shadow-lg backdrop-blur-sm dark:bg-gray-800/80"},lr={class:"flex items-center justify-between"},or={class:"relative inline-flex cursor-pointer items-center"},nr={key:0,class:"mt-6 space-y-4"},dr={class:"mb-6 rounded-lg bg-white/80 p-6 shadow-lg backdrop-blur-sm dark:bg-gray-800/80"},ir={class:"flex items-center justify-between"},ur={class:"relative inline-flex cursor-pointer items-center"},gr={key:0,class:"mt-6 space-y-4"},fr={class:"mb-6 rounded-lg bg-white/80 p-6 shadow-lg backdrop-blur-sm dark:bg-gray-800/80"},cr={class:"flex items-center justify-between"},br={class:"relative inline-flex cursor-pointer items-center"},xr={key:0,class:"mt-6 space-y-4"},pr={key:0,class:"rounded-lg bg-gray-50 p-4 text-sm text-gray-500 dark:bg-gray-700/50 dark:text-gray-400"},yr={key:0,class:"ml-2"},vr={key:0,class:"py-12 text-center"},mr={key:1},kr={class:"mb-6 rounded-lg bg-gradient-to-r from-blue-50 to-indigo-50 p-6 dark:from-blue-900/20 dark:to-indigo-900/20"},wr={class:"flex items-start"},hr={class:"mt-2 text-sm text-gray-600 dark:text-gray-400"},Sr={class:"rounded-lg bg-white/80 p-6 shadow-lg backdrop-blur-sm dark:bg-gray-800/80"},Cr={class:"mb-4 flex items-center justify-between"},Tr=["disabled"],Ur={class:"space-y-4"},Ar={class:"flex items-center"},Mr={class:"font-medium text-gray-900 dark:text-gray-100"},Ir={class:"text-xs text-gray-500 dark:text-gray-400"},Br={key:0,class:"ml-2 rounded bg-blue-100 px-1.5 py-0.5 text-blue-700 dark:bg-blue-900/50 dark:text-blue-300"},Er={class:"flex items-center gap-3"},Rr=["onUpdate:modelValue"],Vr={key:0,class:"mt-4 rounded-lg bg-gray-50 p-3 text-sm text-gray-500 dark:bg-gray-700/50 dark:text-gray-400"},Dr={key:0,class:"ml-2"},Qr={class:"dark:to-gray-750 relative border-b border-gray-200 bg-gradient-to-r from-blue-50 to-indigo-50 px-6 py-5 dark:border-gray-700 dark:from-gray-800"},qr={class:"flex items-center justify-between"},Pr={class:"flex items-center space-x-3"},jr={class:"text-xl font-semibold text-gray-900 dark:text-white"},Nr={class:"mt-0.5 text-sm text-gray-600 dark:text-gray-400"},Lr={class:"p-6"},Or={class:"space-y-5"},Wr={class:"relative"},zr=["disabled"],Kr={key:0,class:"mt-1 text-xs text-amber-600 dark:text-amber-400"},Fr={key:0},$r={class:"relative"},Gr={key:0,class:"absolute inset-y-0 right-0 flex items-center pr-3"},Hr={key:1,class:"absolute inset-y-0 right-0 flex items-center pr-3"},Yr={key:0,class:"mt-2 flex items-start rounded-lg bg-blue-50 p-3 dark:bg-blue-900/20"},Jr={class:"text-sm text-blue-700 dark:text-blue-300"},Xr={key:1,class:"space-y-5"},Zr={key:2,class:"space-y-5"},_r={key:3,class:"space-y-5"},es={class:"grid grid-cols-1 gap-4 sm:grid-cols-2"},ts={key:4,class:"rounded-xl border border-gray-200 bg-gray-50 p-4 dark:border-gray-700 dark:bg-gray-900/50"},as={class:"space-y-4"},rs={class:"flex items-center justify-between"},ss={class:"flex cursor-pointer items-center",for:"enableSign"},ls={key:0,class:"rounded-full bg-green-100 px-2 py-1 text-xs font-medium text-green-700 dark:bg-green-900/50 dark:text-green-400"},os={key:0},ns={class:"border-t border-gray-200 bg-gray-50 px-6 py-4 dark:border-gray-700 dark:bg-gray-900/50"},ds={class:"flex items-center justify-between"},is={class:"flex space-x-3"},us=["disabled"],gs=["disabled"],fs=Object.assign({name:"SettingsView"},{__name:"SettingsView",setup(M){const R=bt(),{loading:W,saving:I,oemSettings:b}=Ge(R),ee=k(),w=k("branding"),i=k(!0),T=k(new AbortController),z=k(!1),m=k({title:"",message:"",type:"primary",confirmText:"确认",cancelText:"取消"}),h=k(null),K=(a,e,r="确认",c="取消",y="primary")=>new Promise(O=>{m.value={title:a,message:e,confirmText:r,cancelText:c,type:y},h.value=O,z.value=!0}),F=()=>{var a;z.value=!1,(a=h.value)==null||a.call(h,!0)},te=()=>{var a;z.value=!1,(a=h.value)==null||a.call(h,!1)},P=Ce({get(){return!b.value.showAdminButton},set(a){b.value.showAdminButton=!a}}),V=k(!1),q=k(!1),j=k(!1),N=k(!1),ae={accountAnomaly:!0,quotaWarning:!0,systemError:!0,securityAlert:!0,rateLimitRecovery:!0},S=k({enabled:!1,platforms:[],notificationTypes:{...ae},retrySettings:{maxRetries:3,retryDelay:1e3,timeout:1e4}}),re=k(!1),u=k({claudeCodeOnlyEnabled:!1,globalSessionBindingEnabled:!1,sessionBindingErrorMessage:"你的本地session已污染,请清理后使用。",sessionBindingTtlDays:30,userMessageQueueEnabled:!1,userMessageQueueDelayMs:200,userMessageQueueTimeoutMs:5e3,concurrentRequestQueueEnabled:!1,concurrentRequestQueueMaxSize:3,concurrentRequestQueueMaxSizeMultiplier:0,concurrentRequestQueueTimeoutMs:1e4,updatedAt:null,updatedBy:null}),se=k(!1),H=k(!1),U=k({baseService:"claude",rates:{claude:1,codex:1,gemini:1,droid:1,bedrock:1,azure:1,ccr:1},updatedAt:null,updatedBy:null}),L=k(!1),B=k(null),s=k({type:"wechat_work",name:"",url:"",enableSign:!1,secret:"",botToken:"",chatId:"",apiBaseUrl:"",proxyUrl:"",deviceKey:"",serverUrl:"",level:"",sound:"",group:"",host:"",port:null,secure:!1,user:"",pass:"",from:"",to:"",timeout:null,ignoreTLS:!1}),oe=Te(w,async a=>{i.value&&(a==="webhook"?await $():a==="claude"?await Ie():a==="serviceRates"&&await de())}),ne=Te(()=>s.value.type,a=>{V.value=!1,q.value=!1,B.value||(a==="bark"?(s.value.url="",s.value.enableSign=!1,s.value.secret="",s.value.botToken="",s.value.chatId="",s.value.apiBaseUrl="",s.value.proxyUrl="",s.value.host="",s.value.port=null,s.value.secure=!1,s.value.user="",s.value.pass="",s.value.from="",s.value.to="",s.value.timeout=null,s.value.ignoreTLS=!1):a==="smtp"?(s.value.url="",s.value.enableSign=!1,s.value.secret="",s.value.deviceKey="",s.value.serverUrl="",s.value.level="",s.value.sound="",s.value.group="",s.value.botToken="",s.value.chatId="",s.value.apiBaseUrl="",s.value.proxyUrl=""):a==="telegram"?(s.value.url="",s.value.enableSign=!1,s.value.secret="",s.value.deviceKey="",s.value.serverUrl="",s.value.level="",s.value.sound="",s.value.group="",s.value.host="",s.value.port=null,s.value.secure=!1,s.value.user="",s.value.pass="",s.value.from="",s.value.to="",s.value.timeout=null,s.value.ignoreTLS=!1,s.value.botToken="",s.value.chatId="",s.value.apiBaseUrl="",s.value.proxyUrl=""):(s.value.deviceKey="",s.value.serverUrl="",s.value.level="",s.value.sound="",s.value.group="",s.value.host="",s.value.port=null,s.value.secure=!1,s.value.user="",s.value.pass="",s.value.from="",s.value.to="",s.value.timeout=null,s.value.ignoreTLS=!1,s.value.botToken="",s.value.chatId="",s.value.apiBaseUrl="",s.value.proxyUrl=""))}),Me=Ce(()=>s.value.type==="bark"?!!s.value.deviceKey:s.value.type==="telegram"?!!(s.value.botToken&&s.value.chatId):s.value.type==="smtp"?!!(s.value.host&&s.value.user&&s.value.pass&&s.value.to):!!s.value.url&&!V.value);He(async()=>{try{await R.loadOemSettings(),w.value==="webhook"&&await $(),w.value==="serviceRates"&&await de()}catch{f("加载设置失败","error")}}),Ye(()=>{i.value=!1,T.value&&T.value.abort(),oe&&oe(),ne&&ne(),L.value&&(L.value=!1,B.value=null)});const $=async()=>{if(i.value)try{const a=await at({signal:T.value.signal});if(a.success&&i.value){const e=a.config||{};S.value={...e,notificationTypes:{...ae,...e.notificationTypes||{}}}}}catch(a){if(a.name==="AbortError"||!i.value)return;f("获取webhook配置失败","error"),console.error(a)}},G=async()=>{if(i.value)try{const a={...S.value,notificationTypes:{...ae,...S.value.notificationTypes||{}}};(await st(a,{signal:T.value.signal})).success&&i.value&&(S.value=a,f("配置已保存","success"))}catch(a){if(a.name==="AbortError"||!i.value)return;f("保存配置失败","error"),console.error(a)}},Ie=async()=>{var a,e,r,c,y,O,ye,ve,me,ke,we,he,Se;if(i.value){re.value=!0;try{const C=await ft({signal:T.value.signal});C.success&&i.value&&(u.value={claudeCodeOnlyEnabled:((a=C.config)==null?void 0:a.claudeCodeOnlyEnabled)??!1,globalSessionBindingEnabled:((e=C.config)==null?void 0:e.globalSessionBindingEnabled)??!1,sessionBindingErrorMessage:((r=C.config)==null?void 0:r.sessionBindingErrorMessage)||"你的本地session已污染,请清理后使用。",sessionBindingTtlDays:((c=C.config)==null?void 0:c.sessionBindingTtlDays)??30,userMessageQueueEnabled:((y=C.config)==null?void 0:y.userMessageQueueEnabled)??!1,userMessageQueueDelayMs:((O=C.config)==null?void 0:O.userMessageQueueDelayMs)??200,userMessageQueueTimeoutMs:((ye=C.config)==null?void 0:ye.userMessageQueueTimeoutMs)??5e3,concurrentRequestQueueEnabled:((ve=C.config)==null?void 0:ve.concurrentRequestQueueEnabled)??!1,concurrentRequestQueueMaxSize:((me=C.config)==null?void 0:me.concurrentRequestQueueMaxSize)??3,concurrentRequestQueueMaxSizeMultiplier:((ke=C.config)==null?void 0:ke.concurrentRequestQueueMaxSizeMultiplier)??0,concurrentRequestQueueTimeoutMs:((we=C.config)==null?void 0:we.concurrentRequestQueueTimeoutMs)??1e4,updatedAt:((he=C.config)==null?void 0:he.updatedAt)||null,updatedBy:((Se=C.config)==null?void 0:Se.updatedBy)||null})}catch(C){if(C.name==="AbortError"||!i.value)return;f("获取 Claude 转发配置失败","error"),console.error(C)}finally{i.value&&(re.value=!1)}}},D=async()=>{var a,e;if(i.value)try{const r={claudeCodeOnlyEnabled:u.value.claudeCodeOnlyEnabled,globalSessionBindingEnabled:u.value.globalSessionBindingEnabled,sessionBindingErrorMessage:u.value.sessionBindingErrorMessage,sessionBindingTtlDays:u.value.sessionBindingTtlDays,userMessageQueueEnabled:u.value.userMessageQueueEnabled,userMessageQueueDelayMs:u.value.userMessageQueueDelayMs,userMessageQueueTimeoutMs:u.value.userMessageQueueTimeoutMs,concurrentRequestQueueEnabled:u.value.concurrentRequestQueueEnabled,concurrentRequestQueueMaxSize:u.value.concurrentRequestQueueMaxSize,concurrentRequestQueueMaxSizeMultiplier:u.value.concurrentRequestQueueMaxSizeMultiplier,concurrentRequestQueueTimeoutMs:u.value.concurrentRequestQueueTimeoutMs},c=await ot(r,{signal:T.value.signal});c.success&&i.value&&(u.value={...u.value,updatedAt:((a=c.config)==null?void 0:a.updatedAt)||new Date().toISOString(),updatedBy:((e=c.config)==null?void 0:e.updatedBy)||null},f("Claude 转发配置已保存","success"))}catch(r){if(r.name==="AbortError"||!i.value)return;f("保存 Claude 转发配置失败","error"),console.error(r)}},de=async()=>{var a,e,r,c;if(i.value){se.value=!0;try{const y=await rt({signal:T.value.signal});y.success&&i.value&&(U.value={baseService:((a=y.data)==null?void 0:a.baseService)||"claude",rates:((e=y.data)==null?void 0:e.rates)||U.value.rates,updatedAt:(r=y.data)==null?void 0:r.updatedAt,updatedBy:(c=y.data)==null?void 0:c.updatedBy})}catch(y){if(y.name==="AbortError"||!i.value)return;console.error("加载服务倍率配置失败:",y)}finally{i.value&&(se.value=!1)}}},Be=async()=>{var a,e;if(i.value){H.value=!0;try{const r=await nt({rates:U.value.rates,baseService:U.value.baseService},{signal:T.value.signal});r.success&&i.value&&(U.value.updatedAt=((a=r.data)==null?void 0:a.updatedAt)||new Date().toISOString(),U.value.updatedBy=(e=r.data)==null?void 0:e.updatedBy,f("服务倍率配置已保存","success"))}catch(r){if(r.name==="AbortError"||!i.value)return;f("保存服务倍率配置失败","error"),console.error(r)}finally{i.value&&(H.value=!1)}}},Ee=a=>({claude:"fas fa-robot",codex:"fas fa-code",gemini:"fas fa-gem",droid:"fas fa-android",bedrock:"fab fa-aws",azure:"fab fa-microsoft",ccr:"fas fa-server"})[a]||"fas fa-cog",Re=a=>({claude:"bg-gradient-to-br from-orange-500 to-amber-600",codex:"bg-gradient-to-br from-green-500 to-emerald-600",gemini:"bg-gradient-to-br from-blue-500 to-indigo-600",droid:"bg-gradient-to-br from-green-600 to-lime-600",bedrock:"bg-gradient-to-br from-yellow-500 to-orange-600",azure:"bg-gradient-to-br from-blue-600 to-cyan-600",ccr:"bg-gradient-to-br from-purple-500 to-pink-600"})[a]||"bg-gradient-to-br from-gray-500 to-gray-600",Ve=a=>({claude:"Claude",codex:"Codex (OpenAI)",gemini:"Gemini",droid:"Droid",bedrock:"AWS Bedrock",azure:"Azure OpenAI",ccr:"CCR"})[a]||a,De=()=>{if(["bark","smtp","telegram"].includes(s.value.type)){V.value=!1,q.value=!1;return}const a=s.value.url;if(!a){V.value=!1,q.value=!1;return}try{new URL(a),a.startsWith("http://")||a.startsWith("https://")?(V.value=!1,q.value=!0):(V.value=!0,q.value=!1)}catch{V.value=!0,q.value=!1}},ie=()=>{if(s.value.type==="bark"){if(!s.value.deviceKey)return f("请输入Bark设备密钥","error"),!1}else if(s.value.type==="telegram"){if(!s.value.botToken)return f("请输入 Telegram 机器人 Token","error"),!1;if(!s.value.chatId)return f("请输入 Telegram Chat ID","error"),!1;if(s.value.apiBaseUrl)try{const a=new URL(s.value.apiBaseUrl);if(!["http:","https:"].includes(a.protocol))return f("Telegram API 基础地址仅支持 http 或 https","error"),!1}catch{return f("请输入有效的 Telegram API 基础地址","error"),!1}if(s.value.proxyUrl)try{const a=new URL(s.value.proxyUrl);if(!["http:","https:","socks4:","socks4a:","socks5:"].includes(a.protocol))return f("Telegram 代理仅支持 http/https/socks 协议","error"),!1}catch{return f("请输入有效的 Telegram 代理地址","error"),!1}}else if(s.value.type==="smtp"){const a=[{field:"host",message:"SMTP服务器"},{field:"user",message:"用户名"},{field:"pass",message:"密码"},{field:"to",message:"收件人邮箱"}];for(const{field:e,message:r}of a)if(!s.value[e])return f(`请输入${r}`,"error"),!1}else{if(!s.value.url)return f("请输入Webhook URL","error"),!1;if(V.value)return f("请输入有效的Webhook URL","error"),!1}return!0},Qe=async()=>{if(i.value&&ie()){N.value=!0;try{let a;B.value?a=await dt(B.value.id,s.value,{signal:T.value.signal}):a=await it(s.value,{signal:T.value.signal}),a.success&&i.value&&(f(B.value?"平台已更新":"平台已添加","success"),await $(),Y())}catch(a){if(a.name==="AbortError"||!i.value)return;f(a.message||"操作失败","error"),console.error(a)}finally{i.value&&(N.value=!1)}}},qe=a=>{B.value=a,s.value={type:a.type||"wechat_work",name:a.name||"",url:a.url||"",enableSign:a.enableSign||!1,secret:a.secret||"",botToken:a.botToken||"",chatId:a.chatId||"",apiBaseUrl:a.apiBaseUrl||"",proxyUrl:a.proxyUrl||"",deviceKey:a.deviceKey||"",serverUrl:a.serverUrl||"",level:a.level||"",sound:a.sound||"",group:a.group||"",host:a.host||"",port:a.port??null,secure:a.secure||!1,user:a.user||"",pass:a.pass||"",from:a.from||"",to:Array.isArray(a.to)?a.to.join(", "):a.to||"",timeout:a.timeout??null,ignoreTLS:a.ignoreTLS||!1},L.value=!0},Pe=async a=>{if(i.value&&await K("删除平台","确定要删除这个平台吗?","删除","取消","danger"))try{(await gt(a,{signal:T.value.signal})).success&&i.value&&(f("平台已删除","success"),await $())}catch(e){if(e.name==="AbortError"||!i.value)return;f("删除失败","error"),console.error(e)}},je=async a=>{if(i.value)try{const e=await ut(a,{signal:T.value.signal});e.success&&i.value&&(f(e.message,"success"),await $())}catch(e){if(e.name==="AbortError"||!i.value)return;f("操作失败","error"),console.error(e)}},Ne=async a=>{if(i.value)try{const e={type:a.type,secret:a.secret,enableSign:a.enableSign};a.type==="bark"?(e.deviceKey=a.deviceKey,e.serverUrl=a.serverUrl,e.level=a.level,e.sound=a.sound,e.group=a.group):a.type==="smtp"?(e.host=a.host,e.port=a.port,e.secure=a.secure,e.user=a.user,e.pass=a.pass,e.from=a.from,e.to=a.to,e.ignoreTLS=a.ignoreTLS):a.type==="telegram"?(e.botToken=a.botToken,e.chatId=a.chatId,e.apiBaseUrl=a.apiBaseUrl,e.proxyUrl=a.proxyUrl):e.url=a.url,(await Ae(e,{signal:T.value.signal})).success&&i.value&&f("测试成功","success")}catch(e){if(e.name==="AbortError"||!i.value)return;f(e.error||e.message||"测试失败","error"),console.error(e)}},Le=async()=>{if(i.value&&ie()){j.value=!0;try{(await Ae(s.value,{signal:T.value.signal})).success&&i.value&&f("测试成功","success")}catch(a){if(a.name==="AbortError"||!i.value)return;f(a.error||a.message||"测试失败","error"),console.error(a)}finally{i.value&&(j.value=!1)}}},Oe=async()=>{var a,e,r,c;if(i.value)try{(await lt({signal:T.value.signal})).success&&i.value&&f("测试通知已发送","success")}catch(y){if(y.name==="AbortError"||!i.value)return;const O=((e=(a=y==null?void 0:y.response)==null?void 0:a.data)==null?void 0:e.message)||((c=(r=y==null?void 0:y.response)==null?void 0:r.data)==null?void 0:c.error)||(y==null?void 0:y.message)||"发送失败";f(O,"error"),console.error(y)}},Y=()=>{i.value&&(L.value=!1,setTimeout(()=>{i.value&&(B.value=null,s.value={type:"wechat_work",name:"",url:"",enableSign:!1,secret:"",botToken:"",chatId:"",apiBaseUrl:"",proxyUrl:"",deviceKey:"",serverUrl:"",level:"",sound:"",group:"",host:"",port:null,secure:!1,user:"",pass:"",from:"",to:"",timeout:null,ignoreTLS:!1},V.value=!1,q.value=!1,j.value=!1,N.value=!1)},0))},ue=a=>({wechat_work:"企业微信",dingtalk:"钉钉",feishu:"飞书",slack:"Slack",discord:"Discord",telegram:"Telegram",bark:"Bark",smtp:"邮件通知",custom:"自定义"})[a]||a,We=a=>({wechat_work:"fab fa-weixin text-green-600",dingtalk:"fas fa-comment-dots text-blue-500",feishu:"fas fa-dove text-blue-600",slack:"fab fa-slack text-purple-600",discord:"fab fa-discord text-indigo-600",telegram:"fab fa-telegram-plane text-sky-500",bark:"fas fa-bell text-orange-500",smtp:"fas fa-envelope text-blue-600",custom:"fas fa-webhook text-gray-600"})[a]||"fas fa-bell",ge=a=>({wechat_work:"请在企业微信群机器人设置中获取Webhook地址",dingtalk:"请在钉钉群机器人设置中获取Webhook地址",feishu:"请在飞书群机器人设置中获取Webhook地址",slack:"请在Slack应用的Incoming Webhooks中获取地址",discord:"请在Discord服务器的集成设置中创建Webhook",telegram:"使用 @BotFather 创建机器人并复制 Token,Chat ID 可通过 @userinfobot 或相关工具获取",bark:"请在Bark App中查看您的设备密钥",smtp:"请配置SMTP服务器信息,支持Gmail、QQ邮箱等",custom:"请输入完整的Webhook接收地址"})[a]||"",ze=a=>a?a.length<=12?a:`${a.slice(0,6)}...${a.slice(-4)}`:"",Ke=a=>({accountAnomaly:"账号异常",quotaWarning:"配额警告",systemError:"系统错误",securityAlert:"安全警报",rateLimitRecovery:"限流恢复",test:"测试通知"})[a]||a,Fe=a=>({accountAnomaly:"账号状态异常、认证失败等",quotaWarning:"API调用配额不足警告",systemError:"系统运行错误和故障",securityAlert:"安全相关的警报通知",rateLimitRecovery:"限流状态恢复时发送提醒",test:"用于测试Webhook连接是否正常"})[a]||"",fe=async()=>{try{const a={siteName:b.value.siteName,siteIcon:b.value.siteIcon,siteIconData:b.value.siteIconData,showAdminButton:b.value.showAdminButton,apiStatsNotice:b.value.apiStatsNotice},e=await R.saveOemSettings(a);e&&e.success?f("OEM设置保存成功","success"):f((e==null?void 0:e.message)||"保存失败","error")}catch{f("保存OEM设置失败","error")}},ce=async()=>{if(await K("重置设置",`确定要重置为默认设置吗? - -这将清除所有自定义的网站名称和图标设置。`,"重置","取消","warning"))try{const a=await R.resetOemSettings();a&&a.success?f("已重置为默认设置","success"):f("重置失败","error")}catch{f("重置失败","error")}},be=async a=>{const e=a.target.files[0];if(!e)return;const r=R.validateIconFile(e);if(!r.isValid){r.errors.forEach(c=>f(c,"error"));return}try{const c=await R.fileToBase64(e);b.value.siteIconData=c}catch{f("文件读取失败","error")}a.target.value=""},xe=()=>{b.value.siteIcon="",b.value.siteIconData=""},pe=()=>{console.warn("Icon failed to load")},J=R.formatDateTime;return(a,e)=>(n(),o(Z,null,[t("div",xt,[t("div",pt,[e[145]||(e[145]=t("div",{class:"mb-4 sm:mb-6"},[t("h3",{class:"mb-1 text-lg font-bold text-gray-900 dark:text-gray-100 sm:mb-2 sm:text-xl"}," 系统设置 "),t("p",{class:"text-sm text-gray-600 dark:text-gray-400 sm:text-base"},"网站定制和通知配置")],-1)),t("div",yt,[t("nav",vt,[t("button",{class:E(["border-b-2 pb-2 text-sm font-medium transition-colors",w.value==="branding"?"border-blue-500 text-blue-600 dark:border-blue-400 dark:text-blue-400":"border-transparent text-gray-500 hover:border-gray-300 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300"]),onClick:e[0]||(e[0]=r=>w.value="branding")},e[51]||(e[51]=[t("i",{class:"fas fa-palette mr-2"},null,-1),l(" 品牌设置 ",-1)]),2),t("button",{class:E(["border-b-2 pb-2 text-sm font-medium transition-colors",w.value==="webhook"?"border-blue-500 text-blue-600 dark:border-blue-400 dark:text-blue-400":"border-transparent text-gray-500 hover:border-gray-300 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300"]),onClick:e[1]||(e[1]=r=>w.value="webhook")},e[52]||(e[52]=[t("i",{class:"fas fa-bell mr-2"},null,-1),l(" 通知设置 ",-1)]),2),t("button",{class:E(["border-b-2 pb-2 text-sm font-medium transition-colors",w.value==="claude"?"border-blue-500 text-blue-600 dark:border-blue-400 dark:text-blue-400":"border-transparent text-gray-500 hover:border-gray-300 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300"]),onClick:e[2]||(e[2]=r=>w.value="claude")},e[53]||(e[53]=[t("i",{class:"fas fa-robot mr-2"},null,-1),l(" Claude 转发 ",-1)]),2),t("button",{class:E(["border-b-2 pb-2 text-sm font-medium transition-colors",w.value==="serviceRates"?"border-blue-500 text-blue-600 dark:border-blue-400 dark:text-blue-400":"border-transparent text-gray-500 hover:border-gray-300 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300"]),onClick:e[3]||(e[3]=r=>w.value="serviceRates")},e[54]||(e[54]=[t("i",{class:"fas fa-balance-scale mr-2"},null,-1),l(" 服务倍率 ",-1)]),2)])]),g(W)?(n(),o("div",mt,e[55]||(e[55]=[t("div",{class:"loading-spinner mx-auto mb-4"},null,-1),t("p",{class:"text-gray-500 dark:text-gray-400"},"正在加载设置...",-1)]))):(n(),o("div",kt,[d(t("div",null,[t("div",wt,[t("table",ht,[t("tbody",St,[t("tr",Ct,[e[57]||(e[57]=t("td",{class:"w-48 whitespace-nowrap px-6 py-4"},[t("div",{class:"flex items-center"},[t("div",{class:"mr-3 flex h-8 w-8 items-center justify-center rounded-lg bg-gradient-to-br from-blue-500 to-blue-600"},[t("i",{class:"fas fa-font text-xs text-white"})]),t("div",null,[t("div",{class:"text-sm font-semibold text-gray-900 dark:text-gray-100"}," 网站名称 "),t("div",{class:"text-xs text-gray-500 dark:text-gray-400"},"品牌标识")])])],-1)),t("td",Tt,[d(t("input",{"onUpdate:modelValue":e[4]||(e[4]=r=>g(b).siteName=r),class:"form-input w-full max-w-md dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",maxlength:"100",placeholder:"Claude Relay Service",type:"text"},null,512),[[p,g(b).siteName]]),e[56]||(e[56]=t("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 将显示在浏览器标题和页面头部 ",-1))])]),t("tr",Ut,[e[62]||(e[62]=t("td",{class:"w-48 whitespace-nowrap px-6 py-4"},[t("div",{class:"flex items-center"},[t("div",{class:"mr-3 flex h-8 w-8 items-center justify-center rounded-lg bg-gradient-to-br from-purple-500 to-purple-600"},[t("i",{class:"fas fa-image text-xs text-white"})]),t("div",null,[t("div",{class:"text-sm font-semibold text-gray-900 dark:text-gray-100"}," 网站图标 "),t("div",{class:"text-xs text-gray-500 dark:text-gray-400"},"Favicon")])])],-1)),t("td",At,[t("div",Mt,[g(b).siteIconData||g(b).siteIcon?(n(),o("div",It,[t("img",{alt:"图标预览",class:"h-8 w-8",src:g(b).siteIconData||g(b).siteIcon,onError:pe},null,40,Bt),e[59]||(e[59]=t("span",{class:"text-sm text-gray-600 dark:text-gray-400"},"当前图标",-1)),t("button",{class:"rounded-lg px-3 py-1 font-medium text-red-600 transition-colors hover:bg-red-50 hover:text-red-900",onClick:xe},e[58]||(e[58]=[t("i",{class:"fas fa-trash mr-1"},null,-1),l("删除 ",-1)]))])):x("",!0),t("div",null,[t("input",{ref_key:"iconFileInput",ref:ee,accept:".ico,.png,.jpg,.jpeg,.svg",class:"hidden",type:"file",onChange:be},null,544),t("button",{class:"btn btn-success px-4 py-2",onClick:e[5]||(e[5]=r=>a.$refs.iconFileInput.click())},e[60]||(e[60]=[t("i",{class:"fas fa-upload mr-2"},null,-1),l(" 上传图标 ",-1)])),e[61]||(e[61]=t("span",{class:"ml-3 text-xs text-gray-500 dark:text-gray-400"},"支持 .ico, .png, .jpg, .svg 格式,最大 350KB",-1))])])])]),t("tr",Et,[e[65]||(e[65]=t("td",{class:"w-48 whitespace-nowrap px-6 py-4"},[t("div",{class:"flex items-center"},[t("div",{class:"mr-3 flex h-8 w-8 items-center justify-center rounded-lg bg-gradient-to-br from-indigo-500 to-purple-600"},[t("i",{class:"fas fa-eye-slash text-xs text-white"})]),t("div",null,[t("div",{class:"text-sm font-semibold text-gray-900 dark:text-gray-100"}," 管理入口 "),t("div",{class:"text-xs text-gray-500 dark:text-gray-400"},"登录按钮显示")])])],-1)),t("td",Rt,[t("div",Vt,[t("label",Dt,[d(t("input",{"onUpdate:modelValue":e[6]||(e[6]=r=>P.value=r),class:"peer sr-only",type:"checkbox"},null,512),[[Q,P.value]]),e[63]||(e[63]=t("div",{class:"peer relative h-6 w-11 rounded-full bg-gray-200 after:absolute after:left-[2px] after:top-[2px] after:h-5 after:w-5 after:rounded-full after:border after:border-gray-300 after:bg-white after:transition-all after:content-[''] peer-checked:bg-blue-600 peer-checked:after:translate-x-full peer-checked:after:border-white peer-focus:outline-none peer-focus:ring-4 peer-focus:ring-blue-300 dark:border-gray-600 dark:bg-gray-700 dark:peer-focus:ring-blue-800"},null,-1)),t("span",Qt,v(P.value?"隐藏登录按钮":"显示登录按钮"),1)])]),e[64]||(e[64]=t("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 隐藏后,用户需要直接访问 /admin/login 页面登录 ",-1))])]),t("tr",qt,[e[69]||(e[69]=t("td",{class:"w-48 whitespace-nowrap px-6 py-4"},[t("div",{class:"flex items-center"},[t("div",{class:"mr-3 flex h-8 w-8 items-center justify-center rounded-lg bg-gradient-to-br from-amber-500 to-orange-600"},[t("i",{class:"fas fa-bell text-xs text-white"})]),t("div",null,[t("div",{class:"text-sm font-semibold text-gray-900 dark:text-gray-100"}," 统计页通知 "),t("div",{class:"text-xs text-gray-500 dark:text-gray-400"},"API Stats")])])],-1)),t("td",Pt,[t("div",jt,[t("label",Nt,[d(t("input",{"onUpdate:modelValue":e[7]||(e[7]=r=>g(b).apiStatsNotice.enabled=r),class:"peer sr-only",type:"checkbox"},null,512),[[Q,g(b).apiStatsNotice.enabled]]),e[66]||(e[66]=t("div",{class:"peer relative h-6 w-11 rounded-full bg-gray-200 after:absolute after:left-[2px] after:top-[2px] after:h-5 after:w-5 after:rounded-full after:border after:border-gray-300 after:bg-white after:transition-all after:content-[''] peer-checked:bg-blue-600 peer-checked:after:translate-x-full peer-checked:after:border-white peer-focus:outline-none peer-focus:ring-4 peer-focus:ring-blue-300 dark:border-gray-600 dark:bg-gray-700 dark:peer-focus:ring-blue-800"},null,-1)),t("span",Lt,v(g(b).apiStatsNotice.enabled?"已启用":"已禁用"),1)])]),g(b).apiStatsNotice.enabled?(n(),o("div",Ot,[t("div",null,[e[67]||(e[67]=t("label",{class:"mb-1 block text-xs text-gray-500 dark:text-gray-400"}," 标题 ",-1)),d(t("input",{"onUpdate:modelValue":e[8]||(e[8]=r=>g(b).apiStatsNotice.title=r),class:"form-input w-full max-w-md dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",maxlength:"100",placeholder:"通知标题",type:"text"},null,512),[[p,g(b).apiStatsNotice.title]])]),t("div",null,[e[68]||(e[68]=t("label",{class:"mb-1 block text-xs text-gray-500 dark:text-gray-400"}," 内容 ",-1)),d(t("textarea",{"onUpdate:modelValue":e[9]||(e[9]=r=>g(b).apiStatsNotice.content=r),class:"form-input w-full max-w-md resize-none dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",maxlength:"2000",placeholder:"通知内容(支持换行)",rows:"3"},null,512),[[p,g(b).apiStatsNotice.content]])])])):x("",!0)])]),t("tr",null,[t("td",Wt,[t("div",zt,[t("div",Kt,[t("button",{class:E(["btn btn-primary px-6 py-3",{"cursor-not-allowed opacity-50":g(I)}]),disabled:g(I),onClick:fe},[g(I)?(n(),o("div",$t)):(n(),o("i",Gt)),l(" "+v(g(I)?"保存中...":"保存设置"),1)],10,Ft),t("button",{class:"btn bg-gray-100 px-6 py-3 text-gray-700 hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",disabled:g(I),onClick:ce},e[70]||(e[70]=[t("i",{class:"fas fa-undo mr-2"},null,-1),l(" 重置为默认 ",-1)]),8,Ht)]),g(b).updatedAt?(n(),o("div",Yt,[e[71]||(e[71]=t("i",{class:"fas fa-clock mr-1"},null,-1)),l(" 最后更新:"+v(g(J)(g(b).updatedAt)),1)])):x("",!0)])])])])])]),t("div",Jt,[t("div",Xt,[e[72]||(e[72]=A('

    站点名称

    自定义您的站点品牌名称

    ',1)),d(t("input",{"onUpdate:modelValue":e[10]||(e[10]=r=>g(b).siteName=r),class:"form-input w-full dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",maxlength:"100",placeholder:"Claude Relay Service",type:"text"},null,512),[[p,g(b).siteName]])]),t("div",Zt,[e[76]||(e[76]=A('

    站点图标

    上传自定义图标或输入图标URL

    ',1)),t("div",_t,[g(b).siteIconData||g(b).siteIcon?(n(),o("div",ea,[t("img",{alt:"图标预览",class:"h-8 w-8",src:g(b).siteIconData||g(b).siteIcon,onError:pe},null,40,ta),e[73]||(e[73]=t("span",{class:"text-sm text-gray-600 dark:text-gray-400"},"当前图标",-1)),t("button",{class:"rounded-lg px-3 py-1 font-medium text-red-600 transition-colors hover:bg-red-50 hover:text-red-900",onClick:xe}," 删除 ")])):x("",!0),t("div",null,[t("input",{ref:"iconFileInputMobile",accept:".ico,.png,.jpg,.jpeg,.svg",class:"hidden",type:"file",onChange:be},null,544),t("button",{class:"btn btn-success px-4 py-2",onClick:e[11]||(e[11]=r=>a.$refs.iconFileInputMobile.click())},e[74]||(e[74]=[t("i",{class:"fas fa-upload mr-2"},null,-1),l(" 上传图标 ",-1)])),e[75]||(e[75]=t("p",{class:"mt-2 text-xs text-gray-500 dark:text-gray-400"}," 支持 .ico, .png, .jpg, .svg 格式,最大 350KB ",-1))])])]),t("div",aa,[e[79]||(e[79]=A('

    管理入口

    控制登录按钮在首页的显示

    ',1)),t("div",ra,[t("label",sa,[d(t("input",{"onUpdate:modelValue":e[12]||(e[12]=r=>P.value=r),class:"peer sr-only",type:"checkbox"},null,512),[[Q,P.value]]),e[77]||(e[77]=t("div",{class:"peer relative h-6 w-11 rounded-full bg-gray-200 after:absolute after:left-[2px] after:top-[2px] after:h-5 after:w-5 after:rounded-full after:border after:border-gray-300 after:bg-white after:transition-all after:content-[''] peer-checked:bg-blue-600 peer-checked:after:translate-x-full peer-checked:after:border-white peer-focus:outline-none peer-focus:ring-4 peer-focus:ring-blue-300 dark:border-gray-600 dark:bg-gray-700 dark:peer-focus:ring-blue-800"},null,-1)),t("span",la,v(P.value?"隐藏登录按钮":"显示登录按钮"),1)]),e[78]||(e[78]=t("p",{class:"text-xs text-gray-500 dark:text-gray-400"}," 隐藏后,用户需要直接访问 /admin/login 页面登录 ",-1))])]),t("div",oa,[t("div",na,[t("button",{class:E(["btn btn-primary w-full px-6 py-3",{"cursor-not-allowed opacity-50":g(I)}]),disabled:g(I),onClick:fe},[g(I)?(n(),o("div",ia)):(n(),o("i",ua)),l(" "+v(g(I)?"保存中...":"保存设置"),1)],10,da),t("button",{class:"btn w-full bg-gray-100 px-6 py-3 text-gray-700 hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-300 dark:hover:bg-gray-600",disabled:g(I),onClick:ce},e[80]||(e[80]=[t("i",{class:"fas fa-undo mr-2"},null,-1),l(" 重置为默认 ",-1)]),8,ga),g(b).updatedAt?(n(),o("div",fa,[e[81]||(e[81]=t("i",{class:"fas fa-clock mr-1"},null,-1)),l(" 上次更新: "+v(g(J)(g(b).updatedAt)),1)])):x("",!0)])])])],512),[[X,w.value==="branding"]]),d(t("div",null,[t("div",ca,[t("div",ba,[e[83]||(e[83]=t("div",null,[t("h2",{class:"text-lg font-semibold text-gray-800 dark:text-gray-200"},"启用通知"),t("p",{class:"mt-1 text-sm text-gray-600 dark:text-gray-400"}," 开启后,系统将按配置发送通知到指定平台 ")],-1)),t("label",xa,[d(t("input",{"onUpdate:modelValue":e[13]||(e[13]=r=>S.value.enabled=r),class:"peer sr-only",type:"checkbox",onChange:G},null,544),[[Q,S.value.enabled]]),e[82]||(e[82]=t("div",{class:"peer h-6 w-11 rounded-full bg-gray-200 after:absolute after:left-[2px] after:top-[2px] after:h-5 after:w-5 after:rounded-full after:border after:border-gray-300 after:bg-white after:transition-all after:content-[''] peer-checked:bg-blue-600 peer-checked:after:translate-x-full peer-checked:after:border-white peer-focus:outline-none peer-focus:ring-4 peer-focus:ring-blue-300 dark:border-gray-600 dark:bg-gray-700 dark:peer-focus:ring-blue-800"},null,-1))])])]),t("div",pa,[e[85]||(e[85]=t("h2",{class:"mb-4 text-lg font-semibold text-gray-800 dark:text-gray-200"},"通知类型",-1)),t("div",ya,[(n(!0),o(Z,null,le(S.value.notificationTypes,(r,c)=>(n(),o("div",{key:c,class:"flex items-center justify-between"},[t("div",null,[t("span",va,v(Ke(c)),1),t("span",ma,v(Fe(c)),1)]),t("label",ka,[d(t("input",{"onUpdate:modelValue":y=>S.value.notificationTypes[c]=y,class:"peer sr-only",type:"checkbox",onChange:G},null,40,wa),[[Q,S.value.notificationTypes[c]]]),e[84]||(e[84]=t("div",{class:"peer h-5 w-9 rounded-full bg-gray-200 after:absolute after:left-[2px] after:top-[2px] after:h-4 after:w-4 after:rounded-full after:border after:border-gray-300 after:bg-white after:transition-all after:content-[''] peer-checked:bg-green-600 peer-checked:after:translate-x-full peer-checked:after:border-white dark:border-gray-600 dark:bg-gray-700"},null,-1))])]))),128))])]),t("div",ha,[t("div",Sa,[e[87]||(e[87]=t("h2",{class:"text-lg font-semibold text-gray-800 dark:text-gray-200"},"通知平台",-1)),t("button",{class:"rounded-lg bg-blue-600 px-4 py-2 text-sm font-medium text-white transition-colors hover:bg-blue-700",onClick:e[14]||(e[14]=r=>L.value=!0)},e[86]||(e[86]=[t("i",{class:"fas fa-plus mr-2"},null,-1),l(" 添加平台 ",-1)]))]),S.value.platforms&&S.value.platforms.length>0?(n(),o("div",Ca,[(n(!0),o(Z,null,le(S.value.platforms,r=>(n(),o("div",{key:r.id,class:"rounded-lg border border-gray-200 p-4 dark:border-gray-700"},[t("div",Ta,[t("div",Ua,[t("div",Aa,[t("i",{class:E(["mr-3 text-xl",We(r.type)])},null,2),t("div",null,[t("h3",Ma,v(r.name||ue(r.type)),1),t("p",Ia,v(ue(r.type)),1)])]),t("div",Ba,[r.type!=="smtp"&&r.type!=="telegram"?(n(),o("div",Ea,[e[88]||(e[88]=t("i",{class:"fas fa-link mr-2"},null,-1)),t("span",Ra,v(r.url),1)])):x("",!0),r.type==="telegram"?(n(),o("div",Va,[e[89]||(e[89]=t("i",{class:"fas fa-comments mr-2"},null,-1)),t("span",Da,"Chat ID: "+v(r.chatId||"未配置"),1)])):x("",!0),r.type==="telegram"&&r.botToken?(n(),o("div",Qa,[e[90]||(e[90]=t("i",{class:"fas fa-key mr-2"},null,-1)),t("span",qa,"Token: "+v(ze(r.botToken)),1)])):x("",!0),r.type==="telegram"&&r.apiBaseUrl?(n(),o("div",Pa,[e[91]||(e[91]=t("i",{class:"fas fa-globe mr-2"},null,-1)),t("span",ja,"API: "+v(r.apiBaseUrl),1)])):x("",!0),r.type==="telegram"&&r.proxyUrl?(n(),o("div",Na,[e[92]||(e[92]=t("i",{class:"fas fa-route mr-2"},null,-1)),t("span",La,"代理: "+v(r.proxyUrl),1)])):x("",!0),r.type==="smtp"&&r.to?(n(),o("div",Oa,[e[93]||(e[93]=t("i",{class:"fas fa-envelope mr-2"},null,-1)),t("span",Wa,v(Array.isArray(r.to)?r.to.join(", "):r.to),1)])):x("",!0),r.enableSign?(n(),o("div",za,e[94]||(e[94]=[t("i",{class:"fas fa-shield-alt mr-2"},null,-1),t("span",null,"已启用签名验证",-1)]))):x("",!0)])]),t("div",Ka,[t("label",Fa,[t("input",{checked:r.enabled,class:"peer sr-only",type:"checkbox",onChange:c=>je(r.id)},null,40,$a),e[95]||(e[95]=t("div",{class:"peer h-5 w-9 rounded-full bg-gray-200 after:absolute after:left-[2px] after:top-[2px] after:h-4 after:w-4 after:rounded-full after:border after:border-gray-300 after:bg-white after:transition-all after:content-[''] peer-checked:bg-green-600 peer-checked:after:translate-x-full peer-checked:after:border-white dark:border-gray-600 dark:bg-gray-700"},null,-1))]),t("button",{class:"rounded-lg bg-blue-100 p-2 text-blue-600 transition-colors hover:bg-blue-200 dark:bg-blue-900 dark:text-blue-400 dark:hover:bg-blue-800",title:"测试连接",onClick:c=>Ne(r)},e[96]||(e[96]=[t("i",{class:"fas fa-vial"},null,-1)]),8,Ga),t("button",{class:"rounded-lg bg-gray-100 p-2 text-gray-600 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-400 dark:hover:bg-gray-600",title:"编辑",onClick:c=>qe(r)},e[97]||(e[97]=[t("i",{class:"fas fa-edit"},null,-1)]),8,Ha),t("button",{class:"rounded-lg bg-red-100 p-2 text-red-600 transition-colors hover:bg-red-200 dark:bg-red-900 dark:text-red-400 dark:hover:bg-red-800",title:"删除",onClick:c=>Pe(r.id)},e[98]||(e[98]=[t("i",{class:"fas fa-trash"},null,-1)]),8,Ya)])])]))),128))])):(n(),o("div",Ja,' 暂无配置的通知平台,请点击"添加平台"按钮添加 '))]),t("div",Xa,[e[102]||(e[102]=t("h2",{class:"mb-4 text-lg font-semibold text-gray-800 dark:text-gray-200"},"高级设置",-1)),t("div",Za,[t("div",null,[e[99]||(e[99]=t("label",{class:"block text-sm font-medium text-gray-700 dark:text-gray-300"}," 最大重试次数 ",-1)),d(t("input",{"onUpdate:modelValue":e[15]||(e[15]=r=>S.value.retrySettings.maxRetries=r),class:"mt-1 block w-full rounded-lg border-gray-300 shadow-sm focus:border-blue-500 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white sm:text-sm",max:"10",min:"0",type:"number",onChange:G},null,544),[[p,S.value.retrySettings.maxRetries,void 0,{number:!0}]])]),t("div",null,[e[100]||(e[100]=t("label",{class:"block text-sm font-medium text-gray-700 dark:text-gray-300"}," 重试延迟 (毫秒) ",-1)),d(t("input",{"onUpdate:modelValue":e[16]||(e[16]=r=>S.value.retrySettings.retryDelay=r),class:"mt-1 block w-full rounded-lg border-gray-300 shadow-sm focus:border-blue-500 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white sm:text-sm",max:"10000",min:"100",step:"100",type:"number",onChange:G},null,544),[[p,S.value.retrySettings.retryDelay,void 0,{number:!0}]])]),t("div",null,[e[101]||(e[101]=t("label",{class:"block text-sm font-medium text-gray-700 dark:text-gray-300"}," 超时时间 (毫秒) ",-1)),d(t("input",{"onUpdate:modelValue":e[17]||(e[17]=r=>S.value.retrySettings.timeout=r),class:"mt-1 block w-full rounded-lg border-gray-300 shadow-sm focus:border-blue-500 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white sm:text-sm",max:"30000",min:"1000",step:"1000",type:"number",onChange:G},null,544),[[p,S.value.retrySettings.timeout,void 0,{number:!0}]])])])]),t("div",{class:"mt-6 text-center"},[t("button",{class:"rounded-lg bg-green-600 px-6 py-3 text-white shadow-lg transition-all hover:bg-green-700 hover:shadow-xl",onClick:Oe},e[103]||(e[103]=[t("i",{class:"fas fa-paper-plane mr-2"},null,-1),l(" 发送测试通知 ",-1)]))])],512),[[X,w.value==="webhook"]]),d(t("div",null,[re.value?(n(),o("div",_a,e[104]||(e[104]=[t("div",{class:"loading-spinner mx-auto mb-4"},null,-1),t("p",{class:"text-gray-500 dark:text-gray-400"},"正在加载配置...",-1)]))):(n(),o("div",er,[t("div",tr,[t("div",ar,[e[106]||(e[106]=A('

    仅允许 Claude Code 客户端

    启用后,所有 /api/v1/messages/claude/v1/messages 端点将强制验证 Claude Code CLI 客户端

    ',1)),t("label",rr,[d(t("input",{"onUpdate:modelValue":e[18]||(e[18]=r=>u.value.claudeCodeOnlyEnabled=r),class:"peer sr-only",type:"checkbox",onChange:D},null,544),[[Q,u.value.claudeCodeOnlyEnabled]]),e[105]||(e[105]=t("div",{class:"peer h-6 w-11 rounded-full bg-gray-200 after:absolute after:left-[2px] after:top-[2px] after:h-5 after:w-5 after:rounded-full after:border after:border-gray-300 after:bg-white after:transition-all after:content-[''] peer-checked:bg-orange-500 peer-checked:after:translate-x-full peer-checked:after:border-white peer-focus:outline-none peer-focus:ring-4 peer-focus:ring-orange-300 dark:border-gray-600 dark:bg-gray-700 dark:peer-focus:ring-orange-800"},null,-1))])]),e[107]||(e[107]=A('

    此设置与 API Key 级别的客户端限制是 OR 逻辑:全局启用或 API Key 设置中启用,都会执行 Claude Code 验证。

    ',1))]),t("div",sr,[t("div",lr,[e[109]||(e[109]=A('

    强制会话绑定

    启用后,系统会将原始会话 ID 绑定到首次使用的账户,确保上下文的一致性

    ',1)),t("label",or,[d(t("input",{"onUpdate:modelValue":e[19]||(e[19]=r=>u.value.globalSessionBindingEnabled=r),class:"peer sr-only",type:"checkbox",onChange:D},null,544),[[Q,u.value.globalSessionBindingEnabled]]),e[108]||(e[108]=t("div",{class:"peer h-6 w-11 rounded-full bg-gray-200 after:absolute after:left-[2px] after:top-[2px] after:h-5 after:w-5 after:rounded-full after:border after:border-gray-300 after:bg-white after:transition-all after:content-[''] peer-checked:bg-purple-500 peer-checked:after:translate-x-full peer-checked:after:border-white peer-focus:outline-none peer-focus:ring-4 peer-focus:ring-purple-300 dark:border-gray-600 dark:bg-gray-700 dark:peer-focus:ring-purple-800"},null,-1))])]),u.value.globalSessionBindingEnabled?(n(),o("div",nr,[t("div",null,[e[110]||(e[110]=t("label",{class:"block text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-clock mr-2 text-gray-400"}),l(" 绑定有效期(天) ")],-1)),d(t("input",{"onUpdate:modelValue":e[20]||(e[20]=r=>u.value.sessionBindingTtlDays=r),class:"mt-1 block w-full max-w-xs rounded-lg border border-gray-300 bg-white px-3 py-2 shadow-sm focus:border-purple-500 focus:outline-none focus:ring-2 focus:ring-purple-500/20 dark:border-gray-500 dark:bg-gray-700 dark:text-white sm:text-sm",max:"365",min:"1",placeholder:"30",type:"number",onChange:D},null,544),[[p,u.value.sessionBindingTtlDays,void 0,{number:!0}]]),e[111]||(e[111]=t("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 会话绑定到账户后的有效时间,过期后会自动解除绑定 ",-1))]),t("div",null,[e[112]||(e[112]=t("label",{class:"block text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-exclamation-triangle mr-2 text-gray-400"}),l(" 旧会话污染提示 ")],-1)),d(t("textarea",{"onUpdate:modelValue":e[21]||(e[21]=r=>u.value.sessionBindingErrorMessage=r),class:"mt-1 block w-full rounded-lg border border-gray-300 bg-white px-3 py-2 shadow-sm focus:border-purple-500 focus:outline-none focus:ring-2 focus:ring-purple-500/20 dark:border-gray-500 dark:bg-gray-700 dark:text-white sm:text-sm",placeholder:"你的本地session已污染,请清理后使用。",rows:"2",onChange:D},null,544),[[p,u.value.sessionBindingErrorMessage]]),e[113]||(e[113]=t("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 当检测到为旧的sessionId且未在系统中有调度记录时提示,返回给客户端的错误消息 ",-1))])])):x("",!0),e[114]||(e[114]=A('

    工作原理:系统会提取请求中的原始 session ID (来自 metadata.user_id), 并将其与首次调度的账户绑定。后续使用相同 session ID 的请求将自动路由到同一账户。

    新会话识别:如果绑定会话历史中没有该sessionId但请求中 messages.length > 1, 系统会认为这是一个污染的会话并拒绝请求。

    ',1))]),t("div",dr,[t("div",ir,[e[116]||(e[116]=A('

    用户消息串行队列

    启用后,同一账户的用户消息请求将串行执行,并在请求之间添加延迟,防止触发上游限流

    ',1)),t("label",ur,[d(t("input",{"onUpdate:modelValue":e[22]||(e[22]=r=>u.value.userMessageQueueEnabled=r),class:"peer sr-only",type:"checkbox",onChange:D},null,544),[[Q,u.value.userMessageQueueEnabled]]),e[115]||(e[115]=t("div",{class:"peer h-6 w-11 rounded-full bg-gray-200 after:absolute after:left-[2px] after:top-[2px] after:h-5 after:w-5 after:rounded-full after:border after:border-gray-300 after:bg-white after:transition-all after:content-[''] peer-checked:bg-teal-500 peer-checked:after:translate-x-full peer-checked:after:border-white peer-focus:outline-none peer-focus:ring-4 peer-focus:ring-teal-300 dark:border-gray-600 dark:bg-gray-700 dark:peer-focus:ring-teal-800"},null,-1))])]),u.value.userMessageQueueEnabled?(n(),o("div",gr,[t("div",null,[e[117]||(e[117]=t("label",{class:"block text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-hourglass-half mr-2 text-gray-400"}),l(" 请求间隔(毫秒) ")],-1)),d(t("input",{"onUpdate:modelValue":e[23]||(e[23]=r=>u.value.userMessageQueueDelayMs=r),class:"mt-1 block w-full max-w-xs rounded-lg border border-gray-300 bg-white px-3 py-2 shadow-sm focus:border-teal-500 focus:outline-none focus:ring-2 focus:ring-teal-500/20 dark:border-gray-500 dark:bg-gray-700 dark:text-white sm:text-sm",max:"10000",min:"0",placeholder:"200",type:"number",onChange:D},null,544),[[p,u.value.userMessageQueueDelayMs,void 0,{number:!0}]]),e[118]||(e[118]=t("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 同一账户的用户消息请求之间的最小间隔时间(0-10000毫秒) ",-1))]),t("div",null,[e[119]||(e[119]=t("label",{class:"block text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-stopwatch mr-2 text-gray-400"}),l(" 队列超时(毫秒) ")],-1)),d(t("input",{"onUpdate:modelValue":e[24]||(e[24]=r=>u.value.userMessageQueueTimeoutMs=r),class:"mt-1 block w-full max-w-xs rounded-lg border border-gray-300 bg-white px-3 py-2 shadow-sm focus:border-teal-500 focus:outline-none focus:ring-2 focus:ring-teal-500/20 dark:border-gray-500 dark:bg-gray-700 dark:text-white sm:text-sm",max:"300000",min:"1000",placeholder:"30000",type:"number",onChange:D},null,544),[[p,u.value.userMessageQueueTimeoutMs,void 0,{number:!0}]]),e[120]||(e[120]=t("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 请求在队列中等待的最大时间,超时将返回 503 错误(1000-300000毫秒) ",-1))])])):x("",!0),e[121]||(e[121]=A('

    工作原理:系统检测请求中最后一条消息的 role 是否为 user。用户消息请求需要排队串行执行,而工具调用结果、助手消息续传等不受此限制。

    ',1))]),t("div",fr,[t("div",cr,[e[123]||(e[123]=A('

    并发请求排队

    当 API Key 并发请求超限时进入队列等待,而非直接拒绝

    ',1)),t("label",br,[d(t("input",{"onUpdate:modelValue":e[25]||(e[25]=r=>u.value.concurrentRequestQueueEnabled=r),class:"peer sr-only",type:"checkbox",onChange:D},null,544),[[Q,u.value.concurrentRequestQueueEnabled]]),e[122]||(e[122]=t("div",{class:"peer h-6 w-11 rounded-full bg-gray-200 after:absolute after:left-[2px] after:top-[2px] after:h-5 after:w-5 after:rounded-full after:border after:border-gray-300 after:bg-white after:transition-all after:content-[''] peer-checked:bg-blue-500 peer-checked:after:translate-x-full peer-checked:after:border-white peer-focus:outline-none peer-focus:ring-4 peer-focus:ring-blue-300 dark:border-gray-600 dark:bg-gray-700 dark:peer-focus:ring-blue-800"},null,-1))])]),u.value.concurrentRequestQueueEnabled?(n(),o("div",xr,[t("div",null,[e[124]||(e[124]=t("label",{class:"block text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-list-ol mr-2 text-gray-400"}),l(" 固定最小排队数 ")],-1)),d(t("input",{"onUpdate:modelValue":e[26]||(e[26]=r=>u.value.concurrentRequestQueueMaxSize=r),class:"mt-1 block w-full max-w-xs rounded-lg border border-gray-300 bg-white px-3 py-2 shadow-sm focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-500 dark:bg-gray-700 dark:text-white sm:text-sm",max:"100",min:"1",placeholder:"3",type:"number",onChange:D},null,544),[[p,u.value.concurrentRequestQueueMaxSize,void 0,{number:!0}]]),e[125]||(e[125]=t("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 最大排队数的固定最小值(1-100) ",-1))]),t("div",null,[e[126]||(e[126]=t("label",{class:"block text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-times mr-2 text-gray-400"}),l(" 排队数倍数 ")],-1)),d(t("input",{"onUpdate:modelValue":e[27]||(e[27]=r=>u.value.concurrentRequestQueueMaxSizeMultiplier=r),class:"mt-1 block w-full max-w-xs rounded-lg border border-gray-300 bg-white px-3 py-2 shadow-sm focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-500 dark:bg-gray-700 dark:text-white sm:text-sm",max:"10",min:"0",placeholder:"1",step:"0.5",type:"number",onChange:D},null,544),[[p,u.value.concurrentRequestQueueMaxSizeMultiplier,void 0,{number:!0}]]),e[127]||(e[127]=t("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 最大排队数 = MAX(倍数 × 并发限制, 固定值),设为 0 则仅使用固定值 ",-1))]),t("div",null,[e[128]||(e[128]=t("label",{class:"block text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-stopwatch mr-2 text-gray-400"}),l(" 排队超时时间(毫秒) ")],-1)),d(t("input",{"onUpdate:modelValue":e[28]||(e[28]=r=>u.value.concurrentRequestQueueTimeoutMs=r),class:"mt-1 block w-full max-w-xs rounded-lg border border-gray-300 bg-white px-3 py-2 shadow-sm focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-500 dark:bg-gray-700 dark:text-white sm:text-sm",max:"300000",min:"5000",placeholder:"10000",type:"number",onChange:D},null,544),[[p,u.value.concurrentRequestQueueTimeoutMs,void 0,{number:!0}]]),e[129]||(e[129]=t("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 请求在排队中等待的最大时间,超时将返回 429 错误(5秒-5分钟,默认10秒) ",-1))])])):x("",!0),e[130]||(e[130]=A('

    工作原理:当 API Key 的并发请求超过 concurrencyLimit 时,超限请求会进入队列等待而非直接返回 429。适合 Claude Code Agent 并行工具调用场景。

    ',1))]),u.value.updatedAt?(n(),o("div",pr,[e[133]||(e[133]=t("i",{class:"fas fa-history mr-2"},null,-1)),l(" 最后更新:"+v(g(J)(u.value.updatedAt))+" ",1),u.value.updatedBy?(n(),o("span",yr,[e[131]||(e[131]=l(" 由 ",-1)),t("strong",null,v(u.value.updatedBy),1),e[132]||(e[132]=l(" 修改 ",-1))])):x("",!0)])):x("",!0)]))],512),[[X,w.value==="claude"]]),d(t("div",null,[se.value?(n(),o("div",vr,e[134]||(e[134]=[t("div",{class:"loading-spinner mx-auto mb-4"},null,-1),t("p",{class:"text-gray-500 dark:text-gray-400"},"正在加载配置...",-1)]))):(n(),o("div",mr,[t("div",kr,[t("div",wr,[e[138]||(e[138]=t("div",{class:"mr-4 flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-full bg-blue-500 text-white"},[t("i",{class:"fas fa-info"})],-1)),t("div",null,[e[137]||(e[137]=t("h3",{class:"text-lg font-semibold text-gray-800 dark:text-gray-200"}," 服务倍率说明 ",-1)),t("p",hr,[e[135]||(e[135]=l(" 服务倍率用于计算不同服务的计费费用。以 ",-1)),t("strong",null,v(U.value.baseService||"claude"),1),e[136]||(e[136]=l(" 为基准(倍率 1.0),其他服务按倍率换算。例如:Gemini 倍率 0.5 表示消耗 $1 只扣除 $0.5 额度。 ",-1))])])])]),t("div",Sr,[t("div",Cr,[e[140]||(e[140]=t("h2",{class:"text-lg font-semibold text-gray-800 dark:text-gray-200"},[t("i",{class:"fas fa-sliders-h mr-2 text-blue-500"}),l(" 倍率配置 ")],-1)),t("button",{class:"rounded-lg bg-blue-500 px-4 py-2 text-sm font-medium text-white hover:bg-blue-600 disabled:opacity-50",disabled:H.value,onClick:Be},[e[139]||(e[139]=t("i",{class:"fas fa-save mr-2"},null,-1)),l(" "+v(H.value?"保存中...":"保存配置"),1)],8,Tr)]),t("div",Ur,[(n(!0),o(Z,null,le(U.value.rates,(r,c)=>(n(),o("div",{key:c,class:"flex items-center justify-between rounded-lg border border-gray-200 p-4 dark:border-gray-700"},[t("div",Ar,[t("div",{class:E(["mr-3 flex h-10 w-10 items-center justify-center rounded-lg",Re(c)])},[t("i",{class:E(["text-white",Ee(c)])},null,2)],2),t("div",null,[t("div",Mr,v(Ve(c)),1),t("div",Ir,[l(v(c)+" ",1),c===U.value.baseService?(n(),o("span",Br," 基准服务 ")):x("",!0)])])]),t("div",Er,[d(t("input",{"onUpdate:modelValue":y=>U.value.rates[c]=y,class:"w-24 rounded-lg border border-gray-300 px-3 py-2 text-center text-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-200",max:"10",min:"0.1",step:"0.1",type:"number"},null,8,Rr),[[p,U.value.rates[c],void 0,{number:!0}]]),e[141]||(e[141]=t("span",{class:"text-sm text-gray-500 dark:text-gray-400"},"倍",-1))])]))),128))]),U.value.updatedAt?(n(),o("div",Vr,[e[144]||(e[144]=t("i",{class:"fas fa-history mr-2"},null,-1)),l(" 最后更新:"+v(g(J)(U.value.updatedAt))+" ",1),U.value.updatedBy?(n(),o("span",Dr,[e[142]||(e[142]=l(" 由 ",-1)),t("strong",null,v(U.value.updatedBy),1),e[143]||(e[143]=l(" 修改 ",-1))])):x("",!0)])):x("",!0)])]))],512),[[X,w.value==="serviceRates"]])]))])]),L.value?(n(),o("div",{key:0,class:"fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-sm transition-all duration-300 ease-out",onClick:Y},[t("div",{class:"relative mx-4 w-full max-w-2xl overflow-hidden rounded-2xl bg-white shadow-2xl transition-all duration-300 ease-out dark:bg-gray-800",onClick:e[50]||(e[50]=Ze(()=>{},["stop"]))},[t("div",Qr,[t("div",qr,[t("div",Pr,[e[146]||(e[146]=t("div",{class:"flex h-10 w-10 items-center justify-center rounded-full bg-gradient-to-br from-blue-500 to-indigo-600 text-white shadow-lg"},[t("i",{class:"fas fa-bell"})],-1)),t("div",null,[t("h3",jr,v(B.value?"编辑":"添加")+"通知平台 ",1),t("p",Nr," 配置"+v(B.value?"并更新":"新的")+"Webhook通知渠道 ",1)])]),t("button",{class:"rounded-lg p-2 text-gray-400 transition-colors hover:bg-gray-100 hover:text-gray-600 dark:hover:bg-gray-700 dark:hover:text-gray-300",onClick:Y},e[147]||(e[147]=[t("i",{class:"fas fa-times text-lg"},null,-1)]))])]),t("div",Lr,[t("div",Or,[t("div",null,[e[151]||(e[151]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-layer-group mr-2 text-gray-400"}),l(" 平台类型 ")],-1)),t("div",Wr,[d(t("select",{"onUpdate:modelValue":e[29]||(e[29]=r=>s.value.type=r),class:"w-full appearance-none rounded-xl border border-gray-300 bg-white px-4 py-3 pr-10 text-gray-900 shadow-sm transition-all focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white",disabled:B.value},e[148]||(e[148]=[A('',9)]),8,zr),[[_,s.value.type]]),e[149]||(e[149]=t("div",{class:"pointer-events-none absolute inset-y-0 right-0 flex items-center pr-3"},[t("i",{class:"fas fa-chevron-down text-gray-400"})],-1))]),B.value?(n(),o("p",Kr,e[150]||(e[150]=[t("i",{class:"fas fa-info-circle mr-1"},null,-1),l(" 编辑模式下不能更改平台类型 ",-1)]))):x("",!0)]),t("div",null,[e[152]||(e[152]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-tag mr-2 text-gray-400"}),l(" 名称 "),t("span",{class:"ml-2 text-xs text-gray-500"},"(可选)")],-1)),d(t("input",{"onUpdate:modelValue":e[30]||(e[30]=r=>s.value.name=r),class:"w-full rounded-xl border border-gray-300 bg-white px-4 py-3 text-gray-900 shadow-sm transition-all placeholder:text-gray-400 focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder:text-gray-500",placeholder:"例如:运维群通知、开发测试群",type:"text"},null,512),[[p,s.value.name]])]),s.value.type!=="bark"&&s.value.type!=="smtp"&&s.value.type!=="telegram"?(n(),o("div",Fr,[e[156]||(e[156]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-link mr-2 text-gray-400"}),l(" Webhook URL "),t("span",{class:"ml-1 text-xs text-red-500"},"*")],-1)),t("div",$r,[d(t("input",{"onUpdate:modelValue":e[31]||(e[31]=r=>s.value.url=r),class:E(["w-full rounded-xl border border-gray-300 bg-white px-4 py-3 pr-10 font-mono text-sm text-gray-900 shadow-sm transition-all placeholder:text-gray-400 focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder:text-gray-500",{"border-red-500 focus:border-red-500 focus:ring-red-500/20":V.value,"border-green-500 focus:border-green-500 focus:ring-green-500/20":q.value}]),placeholder:"https://...",required:"",type:"url",onInput:De},null,34),[[p,s.value.url]]),q.value?(n(),o("div",Gr,e[153]||(e[153]=[t("i",{class:"fas fa-check-circle text-green-500"},null,-1)]))):x("",!0),V.value?(n(),o("div",Hr,e[154]||(e[154]=[t("i",{class:"fas fa-exclamation-circle text-red-500"},null,-1)]))):x("",!0)]),ge(s.value.type)?(n(),o("div",Yr,[e[155]||(e[155]=t("i",{class:"fas fa-info-circle mr-2 mt-0.5 text-blue-600 dark:text-blue-400"},null,-1)),t("p",Jr,v(ge(s.value.type)),1)])):x("",!0)])):x("",!0),s.value.type==="telegram"?(n(),o("div",Xr,[t("div",null,[e[157]||(e[157]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-robot mr-2 text-gray-400"}),l(" Bot Token "),t("span",{class:"ml-1 text-xs text-red-500"},"*")],-1)),d(t("input",{"onUpdate:modelValue":e[32]||(e[32]=r=>s.value.botToken=r),class:"w-full rounded-xl border border-gray-300 bg-white px-4 py-3 font-mono text-sm text-gray-900 shadow-sm transition-all placeholder:text-gray-400 focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder:text-gray-500",placeholder:"例如:123456789:ABCDEFghijk-xyz",required:"",type:"text"},null,512),[[p,s.value.botToken]]),e[158]||(e[158]=t("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 在 Telegram 的 @BotFather 中创建机器人后获得的 Token ",-1))]),t("div",null,[e[159]||(e[159]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-comments mr-2 text-gray-400"}),l(" Chat ID "),t("span",{class:"ml-1 text-xs text-red-500"},"*")],-1)),d(t("input",{"onUpdate:modelValue":e[33]||(e[33]=r=>s.value.chatId=r),class:"w-full rounded-xl border border-gray-300 bg-white px-4 py-3 font-mono text-sm text-gray-900 shadow-sm transition-all placeholder:text-gray-400 focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder:text-gray-500",placeholder:"例如:123456789 或 -1001234567890",required:"",type:"text"},null,512),[[p,s.value.chatId]]),e[160]||(e[160]=t("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 可使用 @userinfobot、@RawDataBot 或 API 获取聊天/频道的 Chat ID ",-1))]),t("div",null,[e[161]||(e[161]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-globe mr-2 text-gray-400"}),l(" API 基础地址 "),t("span",{class:"ml-2 text-xs text-gray-500"},"(可选)")],-1)),d(t("input",{"onUpdate:modelValue":e[34]||(e[34]=r=>s.value.apiBaseUrl=r),class:"w-full rounded-xl border border-gray-300 bg-white px-4 py-3 font-mono text-sm text-gray-900 shadow-sm transition-all placeholder:text-gray-400 focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder:text-gray-500",placeholder:"默认: https://api.telegram.org",type:"url"},null,512),[[p,s.value.apiBaseUrl]]),e[162]||(e[162]=t("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 使用自建 Bot API 时可覆盖默认域名,需以 http 或 https 开头 ",-1))]),t("div",null,[e[163]||(e[163]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-route mr-2 text-gray-400"}),l(" 代理地址 "),t("span",{class:"ml-2 text-xs text-gray-500"},"(可选)")],-1)),d(t("input",{"onUpdate:modelValue":e[35]||(e[35]=r=>s.value.proxyUrl=r),class:"w-full rounded-xl border border-gray-300 bg-white px-4 py-3 font-mono text-sm text-gray-900 shadow-sm transition-all placeholder:text-gray-400 focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder:text-gray-500",placeholder:"例如:socks5://user:pass@127.0.0.1:1080",type:"text"},null,512),[[p,s.value.proxyUrl]]),e[164]||(e[164]=t("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 支持 http、https、socks4/4a/5 代理,留空则直接连接 Telegram 官方 API ",-1))]),e[165]||(e[165]=t("div",{class:"flex items-start rounded-lg bg-blue-50 p-3 text-sm text-blue-700 dark:bg-blue-900/20 dark:text-blue-300"},[t("i",{class:"fas fa-info-circle mr-2 mt-0.5"}),t("div",null,"机器人需先加入对应群组或频道并授予发送消息权限,通知会以纯文本方式发送。")],-1))])):x("",!0),s.value.type==="bark"?(n(),o("div",Zr,[t("div",null,[e[166]||(e[166]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-key mr-2 text-gray-400"}),l(" 设备密钥 (Device Key) "),t("span",{class:"ml-1 text-xs text-red-500"},"*")],-1)),d(t("input",{"onUpdate:modelValue":e[36]||(e[36]=r=>s.value.deviceKey=r),class:"w-full rounded-xl border border-gray-300 bg-white px-4 py-3 font-mono text-sm text-gray-900 shadow-sm transition-all placeholder:text-gray-400 focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder:text-gray-500",placeholder:"例如:aBcDeFgHiJkLmNoPqRsTuVwX",required:"",type:"text"},null,512),[[p,s.value.deviceKey]]),e[167]||(e[167]=t("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 在Bark App中查看您的推送密钥 ",-1))]),t("div",null,[e[168]||(e[168]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-server mr-2 text-gray-400"}),l(" 服务器地址 "),t("span",{class:"ml-2 text-xs text-gray-500"},"(可选)")],-1)),d(t("input",{"onUpdate:modelValue":e[37]||(e[37]=r=>s.value.serverUrl=r),class:"w-full rounded-xl border border-gray-300 bg-white px-4 py-3 font-mono text-sm text-gray-900 shadow-sm transition-all placeholder:text-gray-400 focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder:text-gray-500",placeholder:"默认: https://api.day.app/push",type:"url"},null,512),[[p,s.value.serverUrl]])]),t("div",null,[e[170]||(e[170]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-flag mr-2 text-gray-400"}),l(" 通知级别 ")],-1)),d(t("select",{"onUpdate:modelValue":e[38]||(e[38]=r=>s.value.level=r),class:"w-full appearance-none rounded-xl border border-gray-300 bg-white px-4 py-3 pr-10 text-gray-900 shadow-sm transition-all focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white"},e[169]||(e[169]=[A('',5)]),512),[[_,s.value.level]])]),t("div",null,[e[172]||(e[172]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-volume-up mr-2 text-gray-400"}),l(" 通知声音 ")],-1)),d(t("select",{"onUpdate:modelValue":e[39]||(e[39]=r=>s.value.sound=r),class:"w-full appearance-none rounded-xl border border-gray-300 bg-white px-4 py-3 pr-10 text-gray-900 shadow-sm transition-all focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white"},e[171]||(e[171]=[A('',9)]),512),[[_,s.value.sound]])]),t("div",null,[e[173]||(e[173]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-folder mr-2 text-gray-400"}),l(" 通知分组 "),t("span",{class:"ml-2 text-xs text-gray-500"},"(可选)")],-1)),d(t("input",{"onUpdate:modelValue":e[40]||(e[40]=r=>s.value.group=r),class:"w-full rounded-xl border border-gray-300 bg-white px-4 py-3 text-gray-900 shadow-sm transition-all placeholder:text-gray-400 focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder:text-gray-500",placeholder:"默认: claude-relay",type:"text"},null,512),[[p,s.value.group]])]),e[174]||(e[174]=t("div",{class:"mt-2 flex items-start rounded-lg bg-blue-50 p-3 dark:bg-blue-900/20"},[t("i",{class:"fas fa-info-circle mr-2 mt-0.5 text-blue-600 dark:text-blue-400"}),t("div",{class:"text-sm text-blue-700 dark:text-blue-300"},[t("p",null,"1. 在iPhone上安装Bark App"),t("p",null,"2. 打开App获取您的设备密钥"),t("p",null,"3. 将密钥粘贴到上方输入框")])],-1))])):x("",!0),s.value.type==="smtp"?(n(),o("div",_r,[t("div",null,[e[175]||(e[175]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-server mr-2 text-gray-400"}),l(" SMTP 服务器 "),t("span",{class:"ml-1 text-xs text-red-500"},"*")],-1)),d(t("input",{"onUpdate:modelValue":e[41]||(e[41]=r=>s.value.host=r),class:"w-full rounded-xl border border-gray-300 bg-white px-4 py-3 text-gray-900 shadow-sm transition-all placeholder:text-gray-400 focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder:text-gray-500",placeholder:"例如: smtp.gmail.com",required:"",type:"text"},null,512),[[p,s.value.host]])]),t("div",es,[t("div",null,[e[176]||(e[176]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-plug mr-2 text-gray-400"}),l(" 端口 ")],-1)),d(t("input",{"onUpdate:modelValue":e[42]||(e[42]=r=>s.value.port=r),class:"w-full rounded-xl border border-gray-300 bg-white px-4 py-3 text-gray-900 shadow-sm transition-all focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white",max:"65535",min:"1",placeholder:"587",type:"number"},null,512),[[p,s.value.port,void 0,{number:!0}]]),e[177]||(e[177]=t("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 默认: 587 (TLS) 或 465 (SSL) ",-1))]),t("div",null,[e[179]||(e[179]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-shield-alt mr-2 text-gray-400"}),l(" 加密方式 ")],-1)),d(t("select",{"onUpdate:modelValue":e[43]||(e[43]=r=>s.value.secure=r),class:"w-full appearance-none rounded-xl border border-gray-300 bg-white px-4 py-3 pr-10 text-gray-900 shadow-sm transition-all focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white"},e[178]||(e[178]=[t("option",{value:!1},"STARTTLS (端口587)",-1),t("option",{value:!0},"SSL/TLS (端口465)",-1)]),512),[[_,s.value.secure]])])]),t("div",null,[e[180]||(e[180]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-user mr-2 text-gray-400"}),l(" 用户名 "),t("span",{class:"ml-1 text-xs text-red-500"},"*")],-1)),d(t("input",{"onUpdate:modelValue":e[44]||(e[44]=r=>s.value.user=r),class:"w-full rounded-xl border border-gray-300 bg-white px-4 py-3 text-gray-900 shadow-sm transition-all placeholder:text-gray-400 focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder:text-gray-500",placeholder:"user@example.com",required:"",type:"email"},null,512),[[p,s.value.user]])]),t("div",null,[e[181]||(e[181]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-lock mr-2 text-gray-400"}),l(" 密码 / 应用密码 "),t("span",{class:"ml-1 text-xs text-red-500"},"*")],-1)),d(t("input",{"onUpdate:modelValue":e[45]||(e[45]=r=>s.value.pass=r),class:"w-full rounded-xl border border-gray-300 bg-white px-4 py-3 text-gray-900 shadow-sm transition-all placeholder:text-gray-400 focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder:text-gray-500",placeholder:"邮箱密码或应用专用密码",required:"",type:"password"},null,512),[[p,s.value.pass]]),e[182]||(e[182]=t("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"}," 建议使用应用专用密码,而非邮箱登录密码 ",-1))]),t("div",null,[e[183]||(e[183]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-paper-plane mr-2 text-gray-400"}),l(" 发件人邮箱 "),t("span",{class:"ml-2 text-xs text-gray-500"},"(可选)")],-1)),d(t("input",{"onUpdate:modelValue":e[46]||(e[46]=r=>s.value.from=r),class:"w-full rounded-xl border border-gray-300 bg-white px-4 py-3 text-gray-900 shadow-sm transition-all placeholder:text-gray-400 focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder:text-gray-500",placeholder:"默认使用用户名邮箱",type:"email"},null,512),[[p,s.value.from]])]),t("div",null,[e[184]||(e[184]=t("label",{class:"mb-2 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-envelope mr-2 text-gray-400"}),l(" 收件人邮箱 "),t("span",{class:"ml-1 text-xs text-red-500"},"*")],-1)),d(t("input",{"onUpdate:modelValue":e[47]||(e[47]=r=>s.value.to=r),class:"w-full rounded-xl border border-gray-300 bg-white px-4 py-3 text-gray-900 shadow-sm transition-all placeholder:text-gray-400 focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder:text-gray-500",placeholder:"admin@example.com",required:"",type:"email"},null,512),[[p,s.value.to]]),e[185]||(e[185]=t("p",{class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},"接收通知的邮箱地址",-1))])])):x("",!0),s.value.type==="dingtalk"||s.value.type==="feishu"?(n(),o("div",ts,[t("div",as,[t("div",rs,[t("label",ss,[d(t("input",{id:"enableSign","onUpdate:modelValue":e[48]||(e[48]=r=>s.value.enableSign=r),class:"h-4 w-4 rounded border-gray-300 text-blue-600 focus:ring-2 focus:ring-blue-500 focus:ring-offset-0",type:"checkbox"},null,512),[[Q,s.value.enableSign]]),e[186]||(e[186]=t("span",{class:"ml-3 flex items-center text-sm font-medium text-gray-700 dark:text-gray-300"},[t("i",{class:"fas fa-shield-alt mr-2 text-gray-400"}),l(" 启用签名验证 ")],-1))]),s.value.enableSign?(n(),o("span",ls," 已启用 ")):x("",!0)]),Ue(Xe,{"enter-active-class":"transition-all duration-200 ease-out","enter-from-class":"opacity-0 -translate-y-2","enter-to-class":"opacity-100 translate-y-0","leave-active-class":"transition-all duration-150 ease-in","leave-from-class":"opacity-100 translate-y-0","leave-to-class":"opacity-0 -translate-y-2"},{default:Je(()=>[s.value.enableSign?(n(),o("div",os,[e[187]||(e[187]=t("label",{class:"mb-2 block text-sm font-medium text-gray-700 dark:text-gray-300"}," 签名密钥 ",-1)),d(t("input",{"onUpdate:modelValue":e[49]||(e[49]=r=>s.value.secret=r),class:"w-full rounded-xl border border-gray-300 bg-white px-4 py-3 font-mono text-sm text-gray-900 shadow-sm transition-all placeholder:text-gray-400 focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500/20 dark:border-gray-600 dark:bg-gray-800 dark:text-white dark:placeholder:text-gray-500",placeholder:"SEC...",type:"text"},null,512),[[p,s.value.secret]])])):x("",!0)]),_:1})])])):x("",!0)])]),t("div",ns,[t("div",ds,[e[189]||(e[189]=t("div",{class:"text-xs text-gray-500 dark:text-gray-400"},[t("i",{class:"fas fa-asterisk mr-1 text-red-500"}),l(" 必填项 ")],-1)),t("div",is,[t("button",{class:"group flex items-center rounded-xl border border-gray-300 bg-white px-4 py-2.5 text-sm font-medium text-gray-700 shadow-sm transition-all hover:bg-gray-50 hover:shadow-md dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700",onClick:Y},e[188]||(e[188]=[t("i",{class:"fas fa-times mr-2 transition-transform group-hover:scale-110"},null,-1),l(" 取消 ",-1)])),t("button",{class:"group flex items-center rounded-xl border border-blue-200 bg-blue-50 px-4 py-2.5 text-sm font-medium text-blue-700 shadow-sm transition-all hover:bg-blue-100 hover:shadow-md dark:border-blue-800 dark:bg-blue-900/50 dark:text-blue-300 dark:hover:bg-blue-900/70",disabled:j.value,onClick:Le},[t("i",{class:E(["mr-2 transition-transform",j.value?"fas fa-spinner fa-spin":"fas fa-vial group-hover:scale-110"])},null,2),l(" "+v(j.value?"测试中...":"测试连接"),1)],8,us),t("button",{class:"group flex items-center rounded-xl bg-gradient-to-r from-blue-600 to-indigo-600 px-5 py-2.5 text-sm font-medium text-white shadow-md transition-all hover:from-blue-700 hover:to-indigo-700 hover:shadow-lg disabled:cursor-not-allowed disabled:from-gray-400 disabled:to-gray-500",disabled:!Me.value||N.value,onClick:Qe},[t("i",{class:E(["mr-2 transition-transform",N.value?"fas fa-spinner fa-spin":"fas fa-save group-hover:scale-110"])},null,2),l(" "+v(N.value?"保存中...":B.value?"保存修改":"添加平台"),1)],8,gs)])])])]),Ue(ct,{"cancel-text":m.value.cancelText,"confirm-text":m.value.confirmText,message:m.value.message,show:z.value,title:m.value.title,type:m.value.type,onCancel:te,onConfirm:F},null,8,["cancel-text","confirm-text","message","show","title","type"])])):x("",!0)],64))}}),vs=tt(fs,[["__scopeId","data-v-9495fcfd"]]);export{vs as default}; diff --git a/web/admin-spa/dist/assets/SettingsView-D2Ttplqa.css b/web/admin-spa/dist/assets/SettingsView-D2Ttplqa.css deleted file mode 100644 index 7c6d05cd..00000000 --- a/web/admin-spa/dist/assets/SettingsView-D2Ttplqa.css +++ /dev/null @@ -1 +0,0 @@ -.settings-container[data-v-9495fcfd]{min-height:calc(100vh - 300px)}.card[data-v-9495fcfd]{background:#fff;border-radius:12px;box-shadow:0 2px 12px #0000001a;border:1px solid #e5e7eb}:root.dark .card[data-v-9495fcfd]{background:var(--bg-gradient-start);border:1px solid var(--border-color);box-shadow:0 2px 12px #0000004d}.table-container[data-v-9495fcfd]{overflow:hidden;border-radius:8px;border:1px solid #f3f4f6}:root.dark .table-container[data-v-9495fcfd]{border:1px solid var(--border-color)}.table-row[data-v-9495fcfd]{transition:background-color .2s ease}.table-row[data-v-9495fcfd]:hover{background-color:#f9fafb}:root.dark .table-row[data-v-9495fcfd]:hover{background-color:var(--bg-gradient-mid)}.form-input[data-v-9495fcfd]{width:100%;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));padding:.5rem 1rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.form-input[data-v-9495fcfd]:focus{border-color:transparent;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.btn[data-v-9495fcfd]{display:inline-flex;align-items:center;justify-content:center;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:600;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.btn[data-v-9495fcfd]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.btn-primary[data-v-9495fcfd]{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.btn-primary[data-v-9495fcfd]:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.btn-primary[data-v-9495fcfd]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.btn-success[data-v-9495fcfd]{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.btn-success[data-v-9495fcfd]:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.btn-success[data-v-9495fcfd]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(34 197 94 / var(--tw-ring-opacity, 1))}.loading-spinner[data-v-9495fcfd]{height:1.25rem;width:1.25rem}@keyframes spin-9495fcfd{to{transform:rotate(360deg)}}.loading-spinner[data-v-9495fcfd]{animation:spin-9495fcfd 1s linear infinite;border-radius:9999px;border-width:2px;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-border-opacity: 1;border-top-color:rgb(37 99 235 / var(--tw-border-opacity, 1))} diff --git a/web/admin-spa/dist/assets/ThemeToggle-DROshBR1.js b/web/admin-spa/dist/assets/ThemeToggle-DROshBR1.js deleted file mode 100644 index 00e2423a..00000000 --- a/web/admin-spa/dist/assets/ThemeToggle-DROshBR1.js +++ /dev/null @@ -1 +0,0 @@ -import{r as L,c as x,q as B,V,x as o,y as s,L as u,z as e,R as _,u as l,B as h,J as f,T as v,C as m,Q as g,ac as k,P as p}from"./vue-vendor-DV7DYXbz.js";import{_ as z,a as E}from"./index-BahP9Xx9.js";const N={class:"theme-toggle-container"},O={key:0,class:"flex items-center gap-2"},q={class:"relative"},D=["title"],F={key:0,class:"color-menu"},I=["title","onClick"],J={class:"color-name"},P=["title"],Q={key:"sun",class:"fas fa-sun"},R={key:"moon",class:"fas fa-moon"},U={key:"auto",class:"fas fa-circle-half-stroke"},j={key:1,class:"theme-switch-wrapper"},A={class:"relative mr-3"},G=["title"],H={key:0,class:"color-menu"},K=["title","onClick"],W={class:"color-name"},X=["title"],Y={class:"switch-handle"},Z={class:"handle-icon"},ee={key:0,class:"fas fa-sun"},te={key:1,class:"fas fa-moon"},oe={key:2,class:"fas fa-circle-half-stroke"},se={key:2,class:"theme-segmented"},ae=["title","onClick"],le={key:0,class:"ml-1 hidden sm:inline"},ne={__name:"ThemeToggle",props:{mode:{type:String,default:"compact",validator:r=>["compact","dropdown","segmented"].includes(r)},showLabel:{type:Boolean,default:!1}},setup(r){const t=E(),i=L(!1),y=[{value:"light",label:"浅色模式",shortLabel:"浅色",icon:"fas fa-sun"},{value:"dark",label:"深色模式",shortLabel:"深色",icon:"fas fa-moon"},{value:"auto",label:"跟随系统",shortLabel:"自动",icon:"fas fa-circle-half-stroke"}],b=x(()=>{const n=y.find(d=>d.value===t.themeMode);return n?`点击切换主题 - ${n.label}`:"切换主题"}),C=()=>{t.cycleThemeMode()},T=n=>{t.setThemeMode(n)},S=()=>{i.value=!i.value},w=n=>{t.setColorScheme(n),i.value=!1},M=n=>{!n.target.closest(".color-scheme-button")&&!n.target.closest(".color-scheme-button-lg")&&!n.target.closest(".color-menu")&&(i.value=!1)};return B(()=>{document.addEventListener("click",M)}),V(()=>{document.removeEventListener("click",M)}),(n,d)=>(s(),o("div",N,[r.mode==="compact"?(s(),o("div",O,[e("div",q,[e("button",{class:"color-scheme-button",title:`色系: ${l(t).currentColorScheme.name}`,onClick:S},[e("span",{class:"color-dot",style:h({background:l(t).currentColorScheme.primary})},null,4)],8,D),_(v,{name:"dropdown"},{default:f(()=>[i.value?(s(),o("div",F,[(s(!0),o(g,null,k(l(t).ColorSchemes,(a,c)=>(s(),o("button",{key:c,class:m(["color-option",{active:l(t).colorScheme===c}]),title:a.name,onClick:$=>w(c)},[e("span",{class:"color-preview",style:h({background:`linear-gradient(135deg, ${a.primary} 0%, ${a.secondary} 100%)`})},null,4),e("span",J,p(a.name),1)],10,I))),128))])):u("",!0)]),_:1})]),e("button",{class:"theme-toggle-button",title:b.value,onClick:C},[_(v,{mode:"out-in",name:"fade"},{default:f(()=>[l(t).themeMode==="light"?(s(),o("i",Q)):l(t).themeMode==="dark"?(s(),o("i",R)):(s(),o("i",U))]),_:1})],8,P)])):r.mode==="dropdown"?(s(),o("div",j,[e("div",A,[e("button",{class:"color-scheme-button-lg",title:`色系: ${l(t).currentColorScheme.name}`,onClick:S},[e("span",{class:"color-dot-lg",style:h({background:`linear-gradient(135deg, ${l(t).currentColorScheme.primary} 0%, ${l(t).currentColorScheme.secondary} 100%)`})},null,4),d[0]||(d[0]=e("i",{class:"fas fa-palette ml-1 text-xs opacity-60"},null,-1))],8,G),_(v,{name:"dropdown"},{default:f(()=>[i.value?(s(),o("div",H,[(s(!0),o(g,null,k(l(t).ColorSchemes,(a,c)=>(s(),o("button",{key:c,class:m(["color-option",{active:l(t).colorScheme===c}]),title:a.name,onClick:$=>w(c)},[e("span",{class:"color-preview",style:h({background:`linear-gradient(135deg, ${a.primary} 0%, ${a.secondary} 100%)`})},null,4),e("span",W,p(a.name),1)],10,K))),128))])):u("",!0)]),_:1})]),e("button",{class:m(["theme-switch",{"is-dark":l(t).themeMode==="dark","is-auto":l(t).themeMode==="auto"}]),title:b.value,onClick:C},[d[1]||(d[1]=e("div",{class:"switch-bg"},[e("div",{class:"stars"},[e("span"),e("span"),e("span")]),e("div",{class:"clouds"},[e("span"),e("span")])],-1)),e("div",Y,[e("div",Z,[l(t).themeMode==="light"?(s(),o("i",ee)):l(t).themeMode==="dark"?(s(),o("i",te)):(s(),o("i",oe))])])],10,X)])):r.mode==="segmented"?(s(),o("div",se,[(s(),o(g,null,k(y,a=>e("button",{key:a.value,class:m(["theme-segment",{active:l(t).themeMode===a.value}]),title:a.label,onClick:c=>T(a.value)},[e("i",{class:m(a.icon)},null,2),r.showLabel?(s(),o("span",le,p(a.shortLabel),1)):u("",!0)],10,ae)),64))])):u("",!0)]))}},ie=z(ne,[["__scopeId","data-v-d25ea0ef"]]);export{ie as T}; diff --git a/web/admin-spa/dist/assets/ThemeToggle-MCe3g2y3.css b/web/admin-spa/dist/assets/ThemeToggle-MCe3g2y3.css deleted file mode 100644 index fb32f2f0..00000000 --- a/web/admin-spa/dist/assets/ThemeToggle-MCe3g2y3.css +++ /dev/null @@ -1 +0,0 @@ -.theme-toggle-container[data-v-d25ea0ef]{position:relative;display:inline-flex;align-items:center}.theme-toggle-button[data-v-d25ea0ef]{display:flex;align-items:center;justify-content:center;height:2.25rem;width:2.25rem;border-radius:9999px;background-color:#ffffffe6}.theme-toggle-button[data-v-d25ea0ef]:is(.dark *){background-color:#1f2937e6}.theme-toggle-button[data-v-d25ea0ef]:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.theme-toggle-button[data-v-d25ea0ef]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.theme-toggle-button[data-v-d25ea0ef]{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.theme-toggle-button[data-v-d25ea0ef]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.theme-toggle-button[data-v-d25ea0ef]{border-width:1px;border-color:#e5e7eb80}.theme-toggle-button[data-v-d25ea0ef]:is(.dark *){border-color:#4b556380}.theme-toggle-button[data-v-d25ea0ef]{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.theme-toggle-button[data-v-d25ea0ef]:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.theme-toggle-button[data-v-d25ea0ef]:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.theme-toggle-button[data-v-d25ea0ef]{position:relative;overflow:hidden}.theme-toggle-button[data-v-d25ea0ef]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:radial-gradient(circle,rgba(59,130,246,.1),transparent);opacity:0;transition:opacity .2s ease;pointer-events:none}.theme-toggle-button[data-v-d25ea0ef]:hover:before{opacity:1}.theme-toggle-button i[data-v-d25ea0ef]{font-size:1rem;line-height:1.5rem;transition:transform .2s ease}.theme-toggle-button:hover i[data-v-d25ea0ef]{transform:scale(1.1)}.theme-toggle-button i.fa-sun[data-v-d25ea0ef]{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.theme-toggle-button i.fa-moon[data-v-d25ea0ef]{--tw-text-opacity: 1;color:rgb(99 102 241 / var(--tw-text-opacity, 1))}.theme-toggle-button i.fa-circle-half-stroke[data-v-d25ea0ef]{background:linear-gradient(90deg,#60a5fa,#2563eb);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.theme-switch-wrapper[data-v-d25ea0ef]{display:inline-flex;align-items:center}.theme-switch[data-v-d25ea0ef]{position:relative;width:76px;height:38px;border-radius:50px;padding:4px;cursor:pointer;transition:all .4s cubic-bezier(.68,-.55,.265,1.55);background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);border:2px solid rgba(255,255,255,.1);box-shadow:0 4px 15px color-mix(in srgb,var(--primary-color) 30%,transparent),inset 0 1px 2px #0000001a;overflow:hidden;display:flex;align-items:center}.theme-switch[data-v-d25ea0ef]:hover{transform:scale(1.05);box-shadow:0 6px 20px color-mix(in srgb,var(--primary-color) 40%,transparent),inset 0 1px 2px #0000001a}.theme-switch[data-v-d25ea0ef]:active{transform:scale(.98)}.theme-switch.is-dark[data-v-d25ea0ef]{background:linear-gradient(135deg,#1e293b,#334155);border-color:#94a3b833;box-shadow:0 4px 15px #00000080,inset 0 1px 2px #ffffff0d}.theme-switch.is-dark[data-v-d25ea0ef]:hover{box-shadow:0 6px 20px #0009,inset 0 1px 2px #ffffff0d}.theme-switch.is-auto[data-v-d25ea0ef]{background:linear-gradient(135deg,color-mix(in srgb,var(--accent-color) 70%,white) 0%,var(--accent-color) 25%,color-mix(in srgb,var(--primary-color) 80%,var(--accent-color)) 50%,var(--primary-color) 75%,var(--secondary-color) 100%);border-color:#fff3;position:relative;overflow:hidden;background-size:120% 120%;background-position:center;box-shadow:0 4px 15px color-mix(in srgb,var(--secondary-color) 25%,transparent),inset 0 1px 3px #0000001a,inset 0 -1px 3px #0000001a}.theme-switch.is-auto[data-v-d25ea0ef]:before{content:"";position:absolute;left:50%;top:10%;bottom:10%;width:1px;background:linear-gradient(to bottom,transparent,rgba(255,255,255,.3),transparent);transform:translate(-50%);pointer-events:none}.switch-bg[data-v-d25ea0ef]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;overflow:hidden;pointer-events:none}.stars[data-v-d25ea0ef]{position:absolute;width:100%;height:100%;opacity:0;transition:opacity .3s ease}.theme-switch.is-dark .stars[data-v-d25ea0ef]{opacity:1}.stars span[data-v-d25ea0ef]{position:absolute;display:block;width:2px;height:2px;background:#fff;border-radius:50%;opacity:.6}.stars span[data-v-d25ea0ef]:nth-child(1){top:25%;left:20%}.stars span[data-v-d25ea0ef]:nth-child(2){top:40%;left:40%;width:1.5px;height:1.5px}.stars span[data-v-d25ea0ef]:nth-child(3){top:60%;left:25%}.clouds[data-v-d25ea0ef]{position:absolute;width:100%;height:100%;opacity:0;transition:opacity .3s ease}.theme-switch:not(.is-dark):not(.is-auto) .clouds[data-v-d25ea0ef]{opacity:.7}.clouds span[data-v-d25ea0ef]{position:absolute;background:#ffffff4d;border-radius:100px}.clouds span[data-v-d25ea0ef]:nth-child(1){width:20px;height:8px;top:40%;left:15%}.clouds span[data-v-d25ea0ef]:nth-child(2){width:15px;height:6px;top:60%;left:35%}.switch-handle[data-v-d25ea0ef]{position:absolute;width:30px;height:30px;background:#fff;border-radius:50%;transition:all .4s cubic-bezier(.68,-.55,.265,1.55);box-shadow:0 2px 8px #0003,0 0 0 1px #0000000d;display:flex;align-items:center;justify-content:center;top:50%;transform:translateY(-50%) translate(0);left:4px}.theme-switch.is-dark .switch-handle[data-v-d25ea0ef]{transform:translateY(-50%) translate(38px);background:linear-gradient(135deg,#1e293b,#475569);box-shadow:0 2px 8px #0006,0 0 0 1px #ffffff1a}.theme-switch.is-auto .switch-handle[data-v-d25ea0ef]{transform:translateY(-50%) translate(19px);background:#ffffff40;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.35);box-shadow:0 4px 12px #0000001a,inset 0 0 8px #ffffff40}.handle-icon[data-v-d25ea0ef]{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.handle-icon i[data-v-d25ea0ef]{font-size:14px;transition:all .3s ease}.handle-icon .fa-sun[data-v-d25ea0ef]{color:#f59e0b;filter:drop-shadow(0 0 3px rgba(245,158,11,.5))}.handle-icon .fa-moon[data-v-d25ea0ef]{color:#fbbf24;filter:drop-shadow(0 0 3px rgba(251,191,36,.5))}.handle-icon .fa-circle-half-stroke[data-v-d25ea0ef]{color:#ffffffe6;filter:drop-shadow(0 0 4px color-mix(in srgb,var(--accent-color) 50%,transparent));font-size:15px}.theme-segmented[data-v-d25ea0ef]{display:inline-flex;--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.theme-segmented[data-v-d25ea0ef]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.theme-segmented[data-v-d25ea0ef]{border-radius:9999px;padding:.25rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.theme-segmented[data-v-d25ea0ef]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.theme-segmented[data-v-d25ea0ef]{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.theme-segment[data-v-d25ea0ef]{padding:.375rem .75rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.theme-segment[data-v-d25ea0ef]:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.theme-segment[data-v-d25ea0ef]{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;border-radius:9999px;display:flex;align-items:center;gap:.25rem;cursor:pointer;position:relative}.theme-segment[data-v-d25ea0ef]:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.theme-segment[data-v-d25ea0ef]:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.theme-segment[data-v-d25ea0ef]:hover{background-color:#ffffff4d}.theme-segment[data-v-d25ea0ef]:hover:is(.dark *){background-color:#4b55634d}.theme-segment[data-v-d25ea0ef]:hover{transform:scale(1.02)}.theme-segment.active[data-v-d25ea0ef]{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.theme-segment.active[data-v-d25ea0ef]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.theme-segment.active[data-v-d25ea0ef]{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.theme-segment.active[data-v-d25ea0ef]:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.theme-segment.active[data-v-d25ea0ef]{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.theme-segment i[data-v-d25ea0ef]{font-size:.75rem;line-height:1rem;transition:transform .2s ease}.fade-enter-active[data-v-d25ea0ef],.fade-leave-active[data-v-d25ea0ef]{transition:opacity .3s cubic-bezier(.4,0,.2,1)}.fade-enter-from[data-v-d25ea0ef],.fade-leave-to[data-v-d25ea0ef]{opacity:0}.dropdown-enter-active[data-v-d25ea0ef]{transition:all .3s cubic-bezier(.34,1.56,.64,1)}.dropdown-leave-active[data-v-d25ea0ef]{transition:all .2s cubic-bezier(.4,0,1,1)}.dropdown-enter-from[data-v-d25ea0ef]{opacity:0;transform:translateY(-10px) scale(.95)}.dropdown-leave-to[data-v-d25ea0ef]{opacity:0;transform:translateY(-5px) scale(.98)}@media (max-width: 640px){.theme-dropdown[data-v-d25ea0ef]{left:0;right:auto}.theme-segment span[data-v-d25ea0ef]{display:none}}.color-scheme-button[data-v-d25ea0ef]{display:flex;align-items:center;justify-content:center;height:2.25rem;width:2.25rem;border-radius:9999px;background-color:#ffffffe6}.color-scheme-button[data-v-d25ea0ef]:is(.dark *){background-color:#1f2937e6}.color-scheme-button[data-v-d25ea0ef]:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.color-scheme-button[data-v-d25ea0ef]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.color-scheme-button[data-v-d25ea0ef]{border-width:1px;border-color:#e5e7eb80}.color-scheme-button[data-v-d25ea0ef]:is(.dark *){border-color:#4b556380}.color-scheme-button[data-v-d25ea0ef]{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.color-scheme-button[data-v-d25ea0ef]:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.color-scheme-button[data-v-d25ea0ef]:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.color-scheme-button[data-v-d25ea0ef]{cursor:pointer}.color-scheme-button-lg[data-v-d25ea0ef]{display:flex;align-items:center;justify-content:center;height:2.25rem;border-radius:9999px;padding-left:.75rem;padding-right:.75rem;background-color:#ffffffe6}.color-scheme-button-lg[data-v-d25ea0ef]:is(.dark *){background-color:#1f2937e6}.color-scheme-button-lg[data-v-d25ea0ef]:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.color-scheme-button-lg[data-v-d25ea0ef]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.color-scheme-button-lg[data-v-d25ea0ef]{border-width:1px;border-color:#e5e7eb80}.color-scheme-button-lg[data-v-d25ea0ef]:is(.dark *){border-color:#4b556380}.color-scheme-button-lg[data-v-d25ea0ef]{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.color-scheme-button-lg[data-v-d25ea0ef]:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.color-scheme-button-lg[data-v-d25ea0ef]{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.color-scheme-button-lg[data-v-d25ea0ef]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.color-scheme-button-lg[data-v-d25ea0ef]{cursor:pointer}.color-dot[data-v-d25ea0ef]{height:1.25rem;width:1.25rem;border-radius:9999px;--tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / .05);--tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition:transform .2s ease}.color-dot-lg[data-v-d25ea0ef]{height:1.25rem;width:1.25rem;border-radius:9999px;--tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / .05);--tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.color-scheme-button:hover .color-dot[data-v-d25ea0ef]{transform:scale(1.1)}.color-menu[data-v-d25ea0ef]{position:absolute;left:0;top:100%;margin-top:.5rem;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.color-menu[data-v-d25ea0ef]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.color-menu[data-v-d25ea0ef]{border-radius:.75rem;--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.color-menu[data-v-d25ea0ef]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.color-menu[data-v-d25ea0ef]{min-width:140px;padding:.5rem;z-index:50}.color-option[data-v-d25ea0ef]{display:flex;width:100%;align-items:center;gap:.5rem;border-radius:.5rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.color-option[data-v-d25ea0ef]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.color-option[data-v-d25ea0ef]:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.color-option[data-v-d25ea0ef]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.color-option[data-v-d25ea0ef]{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;cursor:pointer}.color-option.active[data-v-d25ea0ef]{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.color-option.active[data-v-d25ea0ef]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.color-option.active[data-v-d25ea0ef]{font-weight:500}.color-preview[data-v-d25ea0ef]{height:1.25rem;width:1.25rem;border-radius:9999px;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);flex-shrink:0}.color-name[data-v-d25ea0ef]{flex:1 1 0%;text-align:left} diff --git a/web/admin-spa/dist/assets/TutorialView-Cpvhof5r.js b/web/admin-spa/dist/assets/TutorialView-Cpvhof5r.js deleted file mode 100644 index 1c8795c0..00000000 --- a/web/admin-spa/dist/assets/TutorialView-Cpvhof5r.js +++ /dev/null @@ -1,2 +0,0 @@ -import{c as b,x as d,y as a,z as t,P as l,O as m,aT as v,R as f,Q as i,u as w,L as $,ac as h,C as k,r as _,I as A,M as P}from"./vue-vendor-DV7DYXbz.js";import{_ as O}from"./index-BahP9Xx9.js";function S(){const r=()=>{let u="";if(window.location.origin)u=window.location.origin;else{const p=window.location.protocol,y=window.location.hostname,g=window.location.port;u=p+"//"+y,g&&(p==="http:"&&g!=="80"||p==="https:"&&g!=="443")&&(u+=":"+g)}if(!u){const p=window.location.href,y=p.indexOf("/",8);if(y!==-1)u=p.substring(0,y);else return""}return u},x=b(()=>r()+"/api"),n=b(()=>r()+"/gemini"),s=b(()=>r()+"/openai"),c=b(()=>r()+"/droid/claude"),e=b(()=>r()+"/droid/openai");return{currentBaseUrl:x,geminiBaseUrl:n,openaiBaseUrl:s,droidClaudeBaseUrl:c,droidOpenaiBaseUrl:e}}const L={class:"rounded-lg border border-green-200 bg-green-50 p-3 dark:border-green-500/40 dark:bg-green-950/30 sm:p-4"},N={class:"mb-2 text-xs text-green-700 dark:text-green-300 sm:mb-3 sm:text-sm"},C={__name:"VerifyInstall",props:{terminal:{type:String,default:"终端"}},setup(r){return(x,n)=>(a(),d("div",L,[n[0]||(n[0]=t("h6",{class:"mb-2 text-sm font-medium text-green-800 dark:text-green-300 sm:text-base"}," 验证安装是否成功 ",-1)),t("p",N," 安装完成后,打开 "+l(r.terminal)+",输入以下命令: ",1),n[1]||(n[1]=t("div",{class:"overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},[t("div",{class:"whitespace-nowrap text-gray-300"},"node --version"),t("div",{class:"whitespace-nowrap text-gray-300"},"npm --version")],-1)),n[2]||(n[2]=t("p",{class:"mt-2 text-xs text-green-700 dark:text-green-300 sm:text-sm"}," 如果显示版本号,说明安装成功了! ",-1))]))}},T={class:"mb-4 sm:mb-10 sm:mb-6"},R={class:"mb-3 flex items-center text-lg font-semibold text-gray-800 dark:text-gray-300 sm:mb-4 sm:text-xl"},U={class:"mr-2 flex h-6 w-6 items-center justify-center rounded-full bg-blue-500 text-xs font-bold text-white sm:mr-3 sm:h-8 sm:w-8 sm:text-sm"},K={class:"mb-4 text-sm text-gray-600 dark:text-gray-400 sm:mb-4 sm:mb-6 sm:text-base"},G={key:0,class:"node-install-section"},j={key:1,class:"node-install-section"},M={key:2,class:"node-install-section"},E={__name:"NodeInstallTutorial",props:{platform:{type:String,required:!0,validator:r=>["windows","macos","linux"].includes(r)},stepNumber:{type:[Number,String],default:1},toolName:{type:String,default:"CLI 工具"}},setup(r){return(x,n)=>(a(),d("div",T,[t("h4",R,[t("span",U,l(r.stepNumber),1),n[0]||(n[0]=m(" 安装 Node.js 环境 ",-1))]),t("p",K,l(r.toolName)+" 需要 Node.js 环境才能运行。 ",1),r.platform==="windows"?(a(),d("div",G,[n[1]||(n[1]=v('
    Windows 安装方法

    方法一:官网下载(推荐)

    1. 打开浏览器访问 https://nodejs.org/
    2. 点击 "LTS" 版本进行下载(推荐长期支持版本)
    3. 下载完成后双击 .msi 文件
    4. 按照安装向导完成安装,保持默认设置即可

    方法二:使用包管理器

    如果你安装了 Chocolatey 或 Scoop,可以使用命令行安装:

    # 使用 Chocolatey
    choco install nodejs
    # 或使用 Scoop
    scoop install nodejs
    Windows 注意事项
    • • 建议使用 PowerShell 而不是 CMD
    • • 如果遇到权限问题,尝试以管理员身份运行
    • • 某些杀毒软件可能会误报,需要添加白名单
    ',1)),f(C,{terminal:"PowerShell 或 CMD"})])):r.platform==="macos"?(a(),d("div",j,[n[2]||(n[2]=v('
    macOS 安装方法

    方法一:使用 Homebrew(推荐)

    如果你已经安装了 Homebrew,使用它安装 Node.js 会更方便:

    # 更新 Homebrew
    brew update
    # 安装 Node.js
    brew install node

    方法二:官网下载

    1. 访问 https://nodejs.org/
    2. 下载适合 macOS 的 LTS 版本
    3. 打开下载的 .pkg 文件
    4. 按照安装程序指引完成安装
    macOS 注意事项
    • • 如果遇到权限问题,可能需要使用 sudo
    • • 首次运行可能需要在系统偏好设置中允许
    • • 建议使用 Terminal 或 iTerm2
    ',1)),f(C,{terminal:"Terminal"})])):(a(),d("div",M,[n[3]||(n[3]=v('
    Linux / WSL2 安装方法

    方法一:使用 nvm(推荐)

    nvm 可以方便地管理多个 Node.js 版本:

    # 安装 nvm
    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
    # 重新加载 shell 配置
    source ~/.bashrc
    # 安装最新 LTS 版本
    nvm install --lts

    方法二:使用包管理器

    # Ubuntu/Debian
    curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
    sudo apt-get install -y nodejs
    # Fedora
    sudo dnf install nodejs
    # Arch Linux
    sudo pacman -S nodejs npm
    Linux / WSL2 注意事项
    • • WSL2 用户建议在 Linux 子系统中安装,而不是 Windows
    • • 使用 nvm 可以避免权限问题
    • • 确保 shell 配置文件正确加载了 nvm
    ',1)),f(C,{terminal:"终端"})]))]))}},Y={class:"tutorial-content"},B={class:"mb-4 sm:mb-10 sm:mb-6"},V={class:"mb-4 rounded-xl border border-green-100 bg-gradient-to-r from-green-50 to-emerald-50 p-4 dark:border-green-500/40 dark:from-green-950/30 dark:to-emerald-950/30 sm:mb-6 sm:p-6"},D={class:"mb-3 text-sm text-gray-700 dark:text-gray-300 sm:mb-4 sm:text-base"},H={class:"mb-4 overflow-x-auto rounded-lg bg-gray-900 p-3 font-mono text-xs text-green-400 sm:p-4 sm:text-sm"},q={class:"whitespace-nowrap text-gray-300"},W={class:"mt-4 rounded-lg border border-blue-200 bg-blue-50 p-3 dark:border-blue-500/40 dark:bg-blue-950/30 sm:p-4"},z={class:"space-y-1 text-xs text-blue-700 dark:text-blue-300 sm:text-sm"},F={class:"mb-6 sm:mb-10"},J={class:"mb-4 rounded-xl border border-purple-100 bg-gradient-to-r from-purple-50 to-pink-50 p-4 dark:border-purple-500/40 dark:from-purple-950/30 dark:to-pink-950/30 sm:mb-6 sm:p-6"},Q={class:"space-y-4"},X={class:"rounded-lg border border-purple-200 bg-white p-3 dark:border-purple-700 dark:bg-gray-800 sm:p-4"},Z={class:"overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},tt={class:"whitespace-nowrap text-gray-300"},et={class:"rounded-lg border border-purple-200 bg-white p-3 dark:border-purple-700 dark:bg-gray-800 sm:p-4"},st={class:"mb-3 overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},rt={class:"whitespace-nowrap text-gray-300"},ot={class:"rounded-lg border border-purple-200 bg-white p-3 dark:border-purple-700 dark:bg-gray-800 sm:p-4"},at={class:"overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},dt={class:"whitespace-nowrap text-gray-300"},lt={class:"rounded-lg border border-purple-200 bg-white p-3 dark:border-purple-700 dark:bg-gray-800 sm:p-4"},nt={class:"mb-3 text-sm text-gray-600 dark:text-gray-400"},mt={class:"mb-3 overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},it={class:"whitespace-nowrap text-gray-300"},xt={class:"overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},gt={class:"whitespace-nowrap text-gray-300"},pt={class:"mt-6 rounded-lg border border-indigo-200 bg-indigo-50 p-3 dark:border-indigo-500/40 dark:bg-indigo-950/30 sm:p-4"},bt={class:"mb-3 space-y-2"},ut={class:"text-sm text-indigo-700 dark:text-indigo-300"},yt={class:"rounded bg-indigo-100 px-1 dark:bg-indigo-900"},vt={class:"mt-6 rounded-lg border border-blue-200 bg-blue-50 p-3 dark:border-blue-500/40 dark:bg-blue-950/30 sm:p-4"},ct={class:"space-y-4"},wt={class:"mb-2 text-sm font-medium text-gray-800 dark:text-gray-300 sm:text-base"},ft={class:"space-y-1 overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},kt={class:"mt-3 space-y-2"},ht={class:"rounded bg-gray-100 p-2 font-mono text-sm dark:bg-gray-700"},St={class:"mb-6 sm:mb-8"},Et={class:"rounded-xl border border-orange-100 bg-gradient-to-r from-orange-50 to-yellow-50 p-4 dark:border-orange-500/40 dark:from-orange-950/30 dark:to-yellow-950/30 sm:p-6"},It={class:"space-y-4"},Ct={class:"overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},$t={class:"whitespace-nowrap text-gray-300"},_t={class:"mb-8"},At={class:"mb-3 flex items-center text-lg font-semibold text-gray-800 dark:text-gray-300 sm:mb-4 sm:text-xl"},Pt={class:"space-y-4"},Ot={class:"rounded-lg border border-gray-200 bg-gray-50 dark:border-gray-700 dark:bg-gray-800"},Lt={class:"px-3 pb-3 text-gray-600 dark:text-gray-400 sm:px-4 sm:pb-4"},Nt={class:"list-inside list-disc space-y-1 text-sm"},Tt={key:0,class:"rounded-lg border border-gray-200 bg-gray-50 dark:border-gray-700 dark:bg-gray-800"},Rt={class:"rounded-lg border border-gray-200 bg-gray-50 dark:border-gray-700 dark:bg-gray-800"},Ut={class:"px-3 pb-3 text-gray-600 dark:text-gray-400 sm:px-4 sm:pb-4"},Kt={class:"list-inside list-disc space-y-1 text-sm"},Gt={class:"rounded bg-gray-200 px-1 text-xs dark:bg-gray-700 sm:text-sm"},jt={key:1,class:"rounded-lg border border-gray-200 bg-gray-50 dark:border-gray-700 dark:bg-gray-800"},Mt={__name:"ClaudeCodeTutorial",props:{platform:{type:String,required:!0,validator:r=>["windows","macos","linux"].includes(r)}},setup(r){const x=r,{currentBaseUrl:n}=S(),s=b(()=>({windows:"Windows",macos:"macOS",linux:"Linux / WSL2"})[x.platform]);return(c,e)=>(a(),d("div",Y,[f(E,{platform:r.platform,"step-number":1,"tool-name":"Claude Code"},null,8,["platform"]),t("div",B,[e[10]||(e[10]=t("h4",{class:"mb-3 flex items-center text-lg font-semibold text-gray-800 dark:text-gray-300 sm:mb-4 sm:text-xl"},[t("span",{class:"mr-2 flex h-6 w-6 items-center justify-center rounded-full bg-green-500 text-xs font-bold text-white sm:mr-3 sm:h-8 sm:w-8 sm:text-sm"},"2"),m(" 安装 Claude Code ")],-1)),t("div",V,[e[8]||(e[8]=t("h5",{class:"mb-2 flex items-center text-base font-semibold text-gray-800 dark:text-gray-200 sm:mb-3 sm:text-lg"},[t("i",{class:"fas fa-download mr-2 text-green-600"}),m(" 安装 Claude Code ")],-1)),t("p",D,l(r.platform==="windows"?"打开 PowerShell 或 CMD":"打开终端")+",运行以下命令: ",1),t("div",H,[e[0]||(e[0]=t("div",{class:"mb-2"},"# 全局安装 Claude Code",-1)),t("div",q,l(r.platform==="windows"?"npm install -g @anthropic-ai/claude-code":"sudo npm install -g @anthropic-ai/claude-code"),1)]),e[9]||(e[9]=t("p",{class:"text-sm text-gray-600 dark:text-gray-400"}," 这个命令会从 npm 官方仓库下载并安装最新版本的 Claude Code。 ",-1)),t("div",W,[e[7]||(e[7]=t("h6",{class:"mb-2 text-sm font-medium text-blue-800 dark:text-blue-300 sm:text-base"}," 提示 ",-1)),t("ul",z,[r.platform==="windows"?(a(),d(i,{key:0},[e[1]||(e[1]=t("li",null,"• 建议使用 PowerShell 而不是 CMD,功能更强大",-1)),e[2]||(e[2]=t("li",null,"• 如果遇到权限问题,以管理员身份运行 PowerShell",-1))],64)):r.platform==="macos"?(a(),d(i,{key:1},[e[3]||(e[3]=t("li",null,"• 如果遇到权限问题,可以使用 sudo",-1)),e[4]||(e[4]=t("li",null,"• 或者使用 nvm 安装的 Node.js 避免权限问题",-1))],64)):(a(),d(i,{key:2},[e[5]||(e[5]=t("li",null,"• 使用 nvm 安装的 Node.js 可以避免 sudo",-1)),e[6]||(e[6]=t("li",null,"• WSL2 用户确保在 Linux 子系统中运行",-1))],64))])])]),e[11]||(e[11]=v('
    验证 Claude Code 安装

    安装完成后,输入以下命令检查是否安装成功:

    claude --version

    如果显示版本号,恭喜你!Claude Code 已经成功安装了。

    ',1))]),t("div",F,[e[44]||(e[44]=t("h4",{class:"mb-3 flex items-center text-lg font-semibold text-gray-800 dark:text-gray-300 sm:mb-4 sm:text-xl"},[t("span",{class:"mr-2 flex h-6 w-6 items-center justify-center rounded-full bg-purple-500 text-xs font-bold text-white sm:mr-3 sm:h-8 sm:w-8 sm:text-sm"},"3"),m(" 设置环境变量 ")],-1)),t("div",J,[e[28]||(e[28]=t("h5",{class:"mb-2 flex items-center text-base font-semibold text-gray-800 dark:text-gray-200 sm:mb-3 sm:text-lg"},[t("i",{class:"fas fa-cog mr-2 text-purple-600"}),m(" 配置 Claude Code 环境变量 ")],-1)),e[29]||(e[29]=t("p",{class:"mb-3 text-sm text-gray-700 dark:text-gray-300 sm:mb-4 sm:text-base"}," 为了让 Claude Code 连接到你的中转服务,需要设置两个环境变量: ",-1)),t("div",Q,[r.platform==="windows"?(a(),d(i,{key:0},[t("div",X,[e[13]||(e[13]=t("h6",{class:"mb-2 text-sm font-medium text-gray-800 dark:text-gray-300 sm:text-base"}," 方法一:PowerShell 临时设置(当前会话) ",-1)),e[14]||(e[14]=t("p",{class:"mb-3 text-sm text-gray-600 dark:text-gray-400"}," 在 PowerShell 中运行以下命令: ",-1)),t("div",Z,[t("div",tt,' $env:ANTHROPIC_BASE_URL = "'+l(w(n))+'" ',1),e[12]||(e[12]=t("div",{class:"whitespace-nowrap text-gray-300"},' $env:ANTHROPIC_AUTH_TOKEN = "你的API密钥" ',-1))]),e[15]||(e[15]=t("p",{class:"mt-2 text-xs text-yellow-700 dark:text-yellow-400"},' 💡 记得将 "你的API密钥" 替换为在上方 "API Keys" 标签页中创建的实际密钥。 ',-1))]),t("div",et,[e[18]||(e[18]=t("h6",{class:"mb-2 text-sm font-medium text-gray-800 dark:text-gray-300 sm:text-base"}," 方法二:PowerShell 永久设置(用户级) ",-1)),e[19]||(e[19]=t("p",{class:"mb-3 text-sm text-gray-600 dark:text-gray-400"}," 在 PowerShell 中运行以下命令设置用户级环境变量: ",-1)),t("div",st,[e[16]||(e[16]=t("div",{class:"mb-2"},"# 设置用户级环境变量(永久生效)",-1)),t("div",rt,' [System.Environment]::SetEnvironmentVariable("ANTHROPIC_BASE_URL", "'+l(w(n))+'", [System.EnvironmentVariableTarget]::User) ',1),e[17]||(e[17]=t("div",{class:"whitespace-nowrap text-gray-300"},' [System.Environment]::SetEnvironmentVariable("ANTHROPIC_AUTH_TOKEN", "你的API密钥", [System.EnvironmentVariableTarget]::User) ',-1))]),e[20]||(e[20]=t("p",{class:"mt-2 text-xs text-blue-700 dark:text-blue-300"}," 💡 设置后需要重新打开 PowerShell 窗口才能生效。 ",-1))])],64)):(a(),d(i,{key:1},[t("div",ot,[e[22]||(e[22]=t("h6",{class:"mb-2 text-sm font-medium text-gray-800 dark:text-gray-300 sm:text-base"}," 方法一:临时设置(当前会话) ",-1)),e[23]||(e[23]=t("p",{class:"mb-3 text-sm text-gray-600 dark:text-gray-400"},"在终端中运行以下命令:",-1)),t("div",at,[t("div",dt,' export ANTHROPIC_BASE_URL="'+l(w(n))+'" ',1),e[21]||(e[21]=t("div",{class:"whitespace-nowrap text-gray-300"},' export ANTHROPIC_AUTH_TOKEN="你的API密钥" ',-1))]),e[24]||(e[24]=t("p",{class:"mt-2 text-xs text-yellow-700 dark:text-yellow-400"},' 💡 记得将 "你的API密钥" 替换为在上方 "API Keys" 标签页中创建的实际密钥。 ',-1))]),t("div",lt,[e[26]||(e[26]=t("h6",{class:"mb-2 text-sm font-medium text-gray-800 dark:text-gray-300 sm:text-base"}," 方法二:永久设置(Shell 配置文件) ",-1)),t("p",nt," 将以下内容添加到你的 shell 配置文件中("+l(r.platform==="macos"?"~/.zshrc":"~/.bashrc")+"): ",1),t("div",mt,[t("div",it,' export ANTHROPIC_BASE_URL="'+l(w(n))+'" ',1),e[25]||(e[25]=t("div",{class:"whitespace-nowrap text-gray-300"},' export ANTHROPIC_AUTH_TOKEN="你的API密钥" ',-1))]),e[27]||(e[27]=t("p",{class:"mb-3 text-sm text-gray-600 dark:text-gray-400"},"然后执行:",-1)),t("div",xt,[t("div",gt," source "+l(r.platform==="macos"?"~/.zshrc":"~/.bashrc"),1)])])],64))])]),t("div",pt,[e[32]||(e[32]=t("h6",{class:"mb-2 font-medium text-indigo-800 dark:text-indigo-300"}," VSCode Claude 插件配置 ",-1)),e[33]||(e[33]=t("p",{class:"mb-3 text-sm text-indigo-700 dark:text-indigo-300"}," 如果使用 VSCode 的 Claude 插件,需要在配置文件中进行设置: ",-1)),t("div",bt,[t("p",ut,[e[30]||(e[30]=t("strong",null,"配置文件位置:",-1)),t("code",yt,l(r.platform==="windows"?"C:\\Users\\你的用户名\\.claude\\config.json":"~/.claude/config.json"),1)]),e[31]||(e[31]=t("p",{class:"text-xs text-indigo-600 dark:text-indigo-400"}," 💡 如果该文件不存在,请手动创建。 ",-1))]),e[34]||(e[34]=t("div",{class:"overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},[t("div",{class:"whitespace-nowrap text-gray-300"},"{"),t("div",{class:"whitespace-nowrap text-gray-300"},'"primaryApiKey": "crs"'),t("div",{class:"whitespace-nowrap text-gray-300"},"}")],-1))]),t("div",vt,[e[42]||(e[42]=t("h6",{class:"mb-2 font-medium text-blue-800 dark:text-blue-300"},"验证环境变量设置",-1)),e[43]||(e[43]=t("p",{class:"mb-3 text-sm text-blue-700 dark:text-blue-300"}," 设置完环境变量后,可以通过以下命令验证是否设置成功: ",-1)),t("div",ct,[t("div",null,[t("h6",wt,l(r.platform==="windows"?"在 PowerShell 中验证:":"在终端中验证:"),1),t("div",ft,[r.platform==="windows"?(a(),d(i,{key:0},[e[35]||(e[35]=t("div",{class:"whitespace-nowrap text-gray-300"},"echo $env:ANTHROPIC_BASE_URL",-1)),e[36]||(e[36]=t("div",{class:"whitespace-nowrap text-gray-300"},"echo $env:ANTHROPIC_AUTH_TOKEN",-1))],64)):(a(),d(i,{key:1},[e[37]||(e[37]=t("div",{class:"whitespace-nowrap text-gray-300"},"echo $ANTHROPIC_BASE_URL",-1)),e[38]||(e[38]=t("div",{class:"whitespace-nowrap text-gray-300"},"echo $ANTHROPIC_AUTH_TOKEN",-1))],64))])])]),t("div",kt,[e[40]||(e[40]=t("p",{class:"text-sm text-blue-700 dark:text-blue-300"},[t("strong",null,"预期输出示例:")],-1)),t("div",ht,[t("div",null,l(w(n)),1),e[39]||(e[39]=t("div",null,"cr_xxxxxxxxxxxxxxxxxx",-1))]),e[41]||(e[41]=t("p",{class:"text-xs text-blue-700 dark:text-blue-300"}," 💡 如果输出为空或显示变量名本身,说明环境变量设置失败,请重新设置。 ",-1))])])]),t("div",St,[e[51]||(e[51]=t("h4",{class:"mb-3 flex items-center text-lg font-semibold text-gray-800 dark:text-gray-300 sm:mb-4 sm:text-xl"},[t("span",{class:"mr-2 flex h-6 w-6 items-center justify-center rounded-full bg-orange-500 text-xs font-bold text-white sm:mr-3 sm:h-8 sm:w-8 sm:text-sm"},"4"),m(" 开始使用 Claude Code ")],-1)),t("div",Et,[e[50]||(e[50]=t("p",{class:"mb-3 text-sm text-gray-700 dark:text-gray-300 sm:mb-4 sm:text-base"}," 现在你可以开始使用 Claude Code 了! ",-1)),t("div",It,[e[49]||(e[49]=t("div",null,[t("h6",{class:"mb-2 text-sm font-medium text-gray-800 dark:text-gray-300 sm:text-base"}," 启动 Claude Code "),t("div",{class:"overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},[t("div",{class:"whitespace-nowrap text-gray-300"},"claude")])],-1)),t("div",null,[e[48]||(e[48]=t("h6",{class:"mb-2 text-sm font-medium text-gray-800 dark:text-gray-300 sm:text-base"}," 在特定项目中使用 ",-1)),t("div",Ct,[e[45]||(e[45]=t("div",{class:"mb-2"},"# 进入你的项目目录",-1)),t("div",$t," cd "+l(r.platform==="windows"?"C:\\path\\to\\your\\project":"/path/to/your/project"),1),e[46]||(e[46]=t("div",{class:"mb-2 mt-2"},"# 启动 Claude Code",-1)),e[47]||(e[47]=t("div",{class:"whitespace-nowrap text-gray-300"},"claude",-1))])])])])]),t("div",_t,[t("h4",At,[e[52]||(e[52]=t("i",{class:"fas fa-wrench mr-2 text-red-600 sm:mr-3"},null,-1)),m(" "+l(s.value)+" 常见问题解决 ",1)]),t("div",Pt,[t("details",Ot,[e[58]||(e[58]=t("summary",{class:"cursor-pointer p-3 text-sm font-medium text-gray-800 hover:bg-gray-100 dark:text-gray-300 dark:hover:bg-gray-700 sm:p-4 sm:text-base"},' 安装时提示 "permission denied" 错误 ',-1)),t("div",Lt,[e[57]||(e[57]=t("p",{class:"mb-2"},"这通常是权限问题,尝试以下解决方法:",-1)),t("ul",Nt,[r.platform==="windows"?(a(),d(i,{key:0},[e[53]||(e[53]=t("li",null,"以管理员身份运行 PowerShell",-1)),e[54]||(e[54]=t("li",null,[m(" 或者配置 npm 使用用户目录:"),t("code",{class:"rounded bg-gray-200 px-1 text-xs dark:bg-gray-700 sm:text-sm"},"npm config set prefix %APPDATA%\\npm")],-1))],64)):(a(),d(i,{key:1},[e[55]||(e[55]=t("li",null,"使用 sudo 运行安装命令",-1)),e[56]||(e[56]=t("li",null,"或者使用 nvm 安装 Node.js 避免权限问题",-1))],64))])])]),r.platform==="windows"?(a(),d("details",Tt,e[59]||(e[59]=[v(' PowerShell 执行策略错误

    如果遇到执行策略限制,运行:

    Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
    ',2)]))):$("",!0),t("details",Rt,[e[67]||(e[67]=t("summary",{class:"cursor-pointer p-3 text-sm font-medium text-gray-800 hover:bg-gray-100 dark:text-gray-300 dark:hover:bg-gray-700 sm:p-4 sm:text-base"}," 环境变量设置后不生效 ",-1)),t("div",Ut,[e[66]||(e[66]=t("p",{class:"mb-2"},"设置永久环境变量后需要:",-1)),t("ul",Kt,[r.platform==="windows"?(a(),d(i,{key:0},[e[60]||(e[60]=t("li",null,"重新启动 PowerShell 或 CMD",-1)),e[61]||(e[61]=t("li",null,"或者注销并重新登录 Windows",-1)),e[62]||(e[62]=t("li",null,[m(" 验证设置:"),t("code",{class:"rounded bg-gray-200 px-1 text-xs dark:bg-gray-700 sm:text-sm"},"echo $env:ANTHROPIC_BASE_URL")],-1))],64)):(a(),d(i,{key:1},[e[64]||(e[64]=t("li",null,"重新打开终端窗口",-1)),t("li",null,[e[63]||(e[63]=m(" 或者执行 ",-1)),t("code",Gt,"source "+l(r.platform==="macos"?"~/.zshrc":"~/.bashrc"),1)]),e[65]||(e[65]=t("li",null,[m(" 验证设置:"),t("code",{class:"rounded bg-gray-200 px-1 text-xs dark:bg-gray-700 sm:text-sm"},"echo $ANTHROPIC_BASE_URL")],-1))],64))])])]),r.platform==="linux"?(a(),d("details",jt,e[68]||(e[68]=[v(' WSL2 中无法访问 Windows 文件

    WSL2 可以通过 /mnt/ 路径访问 Windows 文件:

    cd /mnt/c/Users/你的用户名/项目目录
    ',2)]))):$("",!0)])])]))}},Yt={class:"tutorial-section"},Bt={class:"mb-4 sm:mb-10 sm:mb-6"},Vt={class:"space-y-4"},Dt={class:"rounded-lg border border-green-200 bg-white p-3 dark:border-green-700 dark:bg-gray-800 sm:p-4"},Ht={class:"overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},qt={class:"whitespace-nowrap text-gray-300"},Wt={class:"rounded-lg border border-green-200 bg-white p-3 dark:border-green-700 dark:bg-gray-800 sm:p-4"},zt={class:"mb-3 overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},Ft={class:"whitespace-nowrap text-gray-300"},Jt={class:"rounded-lg border border-green-200 bg-white p-3 dark:border-green-700 dark:bg-gray-800 sm:p-4"},Qt={class:"overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},Xt={class:"whitespace-nowrap text-gray-300"},Zt={class:"rounded-lg border border-green-200 bg-white p-3 dark:border-green-700 dark:bg-gray-800 sm:p-4"},te={class:"mb-3 text-sm text-gray-600 dark:text-gray-400"},ee={class:"mb-3 overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},se={class:"whitespace-nowrap text-gray-300"},re={class:"overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},oe={class:"whitespace-nowrap text-gray-300"},ae={class:"rounded-lg border border-green-200 bg-green-50 p-3 dark:border-green-500/40 dark:bg-green-950/30 sm:p-4"},de={class:"mb-3 text-sm text-green-700 dark:text-green-300"},le={class:"space-y-1 overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},ne={__name:"GeminiCliTutorial",props:{platform:{type:String,required:!0,validator:r=>["windows","macos","linux"].includes(r)}},setup(r){const{geminiBaseUrl:x}=S();return(n,s)=>(a(),d("div",Yt,[f(E,{platform:r.platform,"step-number":1,"tool-name":"Gemini CLI"},null,8,["platform"]),t("div",Bt,[s[27]||(s[27]=t("h4",{class:"mb-3 flex items-center text-lg font-semibold text-gray-800 dark:text-gray-300 sm:mb-4 sm:text-xl"},[t("span",{class:"mr-2 flex h-6 w-6 items-center justify-center rounded-full bg-green-500 text-xs font-bold text-white sm:mr-3 sm:h-8 sm:w-8 sm:text-sm"},"2"),m(" 配置 Gemini CLI 环境变量 ")],-1)),s[28]||(s[28]=t("p",{class:"mb-3 text-sm text-gray-700 dark:text-gray-300 sm:mb-4 sm:text-base"}," 设置以下环境变量以连接到中转服务: ",-1)),t("div",Vt,[r.platform==="windows"?(a(),d(i,{key:0},[t("div",Dt,[s[2]||(s[2]=t("h6",{class:"mb-2 text-sm font-medium text-gray-800 dark:text-gray-300 sm:text-base"}," PowerShell 设置方法 ",-1)),s[3]||(s[3]=t("p",{class:"mb-3 text-sm text-gray-600 dark:text-gray-400"}," 在 PowerShell 中运行以下命令: ",-1)),t("div",Ht,[t("div",qt,' $env:GOOGLE_GEMINI_BASE_URL = "'+l(w(x))+'" ',1),s[0]||(s[0]=t("div",{class:"whitespace-nowrap text-gray-300"},'$env:GEMINI_API_KEY = "你的API密钥"',-1)),s[1]||(s[1]=t("div",{class:"whitespace-nowrap text-gray-300"},' $env:GEMINI_MODEL = "gemini-2.5-pro" ',-1))]),s[4]||(s[4]=t("p",{class:"mt-2 text-xs text-yellow-700 dark:text-yellow-400"}," 💡 使用与 Claude Code 相同的 API 密钥即可。 ",-1))]),t("div",Wt,[s[8]||(s[8]=t("h6",{class:"mb-2 text-sm font-medium text-gray-800 dark:text-gray-300 sm:text-base"}," PowerShell 永久设置(用户级) ",-1)),s[9]||(s[9]=t("p",{class:"mb-3 text-sm text-gray-600 dark:text-gray-400"}," 在 PowerShell 中运行以下命令: ",-1)),t("div",zt,[s[5]||(s[5]=t("div",{class:"mb-2"},"# 设置用户级环境变量(永久生效)",-1)),t("div",Ft,' [System.Environment]::SetEnvironmentVariable("GOOGLE_GEMINI_BASE_URL", "'+l(w(x))+'", [System.EnvironmentVariableTarget]::User) ',1),s[6]||(s[6]=t("div",{class:"whitespace-nowrap text-gray-300"},' [System.Environment]::SetEnvironmentVariable("GEMINI_API_KEY", "你的API密钥", [System.EnvironmentVariableTarget]::User) ',-1)),s[7]||(s[7]=t("div",{class:"whitespace-nowrap text-gray-300"},' [System.Environment]::SetEnvironmentVariable("GEMINI_MODEL", "gemini-2.5-pro", [System.EnvironmentVariableTarget]::User) ',-1))]),s[10]||(s[10]=t("p",{class:"mt-2 text-xs text-blue-700 dark:text-blue-300"}," 💡 设置后需要重新打开 PowerShell 窗口才能生效。 ",-1))])],64)):(a(),d(i,{key:1},[t("div",Jt,[s[13]||(s[13]=t("h6",{class:"mb-2 text-sm font-medium text-gray-800 dark:text-gray-300 sm:text-base"}," 临时设置(当前会话) ",-1)),s[14]||(s[14]=t("p",{class:"mb-3 text-sm text-gray-600 dark:text-gray-400"},"在终端中运行以下命令:",-1)),t("div",Qt,[t("div",Xt,' export GOOGLE_GEMINI_BASE_URL="'+l(w(x))+'" ',1),s[11]||(s[11]=t("div",{class:"whitespace-nowrap text-gray-300"},'export GEMINI_API_KEY="你的API密钥"',-1)),s[12]||(s[12]=t("div",{class:"whitespace-nowrap text-gray-300"},' export GEMINI_MODEL="gemini-2.5-pro" ',-1))]),s[15]||(s[15]=t("p",{class:"mt-2 text-xs text-yellow-700 dark:text-yellow-400"}," 💡 使用与 Claude Code 相同的 API 密钥即可。 ",-1))]),t("div",Zt,[s[18]||(s[18]=t("h6",{class:"mb-2 text-sm font-medium text-gray-800 dark:text-gray-300 sm:text-base"}," 永久设置(Shell 配置文件) ",-1)),t("p",te," 将以下内容添加到你的 shell 配置文件中("+l(r.platform==="macos"?"~/.zshrc":"~/.bashrc")+"): ",1),t("div",ee,[t("div",se,' export GOOGLE_GEMINI_BASE_URL="'+l(w(x))+'" ',1),s[16]||(s[16]=t("div",{class:"whitespace-nowrap text-gray-300"},'export GEMINI_API_KEY="你的API密钥"',-1)),s[17]||(s[17]=t("div",{class:"whitespace-nowrap text-gray-300"},' export GEMINI_MODEL="gemini-2.5-pro" ',-1))]),s[19]||(s[19]=t("p",{class:"mb-3 text-sm text-gray-600 dark:text-gray-400"},"然后执行:",-1)),t("div",re,[t("div",oe," source "+l(r.platform==="macos"?"~/.zshrc":"~/.bashrc"),1)])])],64)),t("div",ae,[s[26]||(s[26]=t("h6",{class:"mb-2 font-medium text-green-800 dark:text-green-300"}," 验证 Gemini CLI 环境变量 ",-1)),t("p",de,l(r.platform==="windows"?"在 PowerShell 中验证:":"在终端中验证:"),1),t("div",le,[r.platform==="windows"?(a(),d(i,{key:0},[s[20]||(s[20]=t("div",{class:"whitespace-nowrap text-gray-300"},"echo $env:GOOGLE_GEMINI_BASE_URL",-1)),s[21]||(s[21]=t("div",{class:"whitespace-nowrap text-gray-300"},"echo $env:GEMINI_API_KEY",-1)),s[22]||(s[22]=t("div",{class:"whitespace-nowrap text-gray-300"},"echo $env:GEMINI_MODEL",-1))],64)):(a(),d(i,{key:1},[s[23]||(s[23]=t("div",{class:"whitespace-nowrap text-gray-300"},"echo $GOOGLE_GEMINI_BASE_URL",-1)),s[24]||(s[24]=t("div",{class:"whitespace-nowrap text-gray-300"},"echo $GEMINI_API_KEY",-1)),s[25]||(s[25]=t("div",{class:"whitespace-nowrap text-gray-300"},"echo $GEMINI_MODEL",-1))],64))])])])])]))}},me={class:"tutorial-section"},ie={class:"mb-4 sm:mb-10 sm:mb-6"},xe={class:"space-y-4"},ge={class:"rounded-lg border border-yellow-200 bg-yellow-50 p-3 dark:border-yellow-500/40 dark:bg-yellow-950/30 sm:p-4"},pe={class:"mb-3 text-sm text-yellow-700 dark:text-yellow-300"},be={class:"rounded bg-yellow-100 px-1 dark:bg-yellow-900"},ue={class:"overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},ye={class:"mt-2 overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},ve={class:"whitespace-nowrap text-gray-300"},ce={class:"rounded-lg border border-orange-200 bg-orange-50 p-3 dark:border-orange-500/40 dark:bg-orange-950/30 sm:p-4"},we={class:"mb-3 text-sm text-orange-700 dark:text-orange-300"},fe={class:"rounded bg-orange-100 px-1 dark:bg-orange-900"},ke={class:"mt-2 overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},he={class:"whitespace-nowrap text-gray-300"},Se={class:"rounded-lg border border-purple-200 bg-purple-50 p-3 dark:border-purple-500/40 dark:bg-purple-950/30 sm:p-4"},Ee={class:"mb-1 mt-2 text-sm text-purple-600 dark:text-purple-400"},Ie={class:"mb-3 overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},Ce={class:"whitespace-nowrap text-gray-300"},$e={class:"mb-1 text-sm text-purple-600 dark:text-purple-400"},_e={class:"mb-3 overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},Ae={class:"whitespace-nowrap text-gray-300"},Pe={class:"rounded-lg border border-green-200 bg-green-50 p-3 dark:border-green-500/40 dark:bg-green-950/30 sm:p-4"},Oe={class:"overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},Le={key:0,class:"whitespace-nowrap text-gray-300"},Ne={key:1,class:"whitespace-nowrap text-gray-300"},Te={class:"rounded-lg border border-gray-200 bg-gray-50 dark:border-gray-700 dark:bg-gray-800"},Re={class:"px-3 pb-3"},Ue={class:"overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},Ke={key:0,class:"whitespace-nowrap text-gray-300"},Ge={key:1,class:"whitespace-nowrap text-gray-300"},je={__name:"CodexTutorial",props:{platform:{type:String,required:!0,validator:r=>["windows","macos","linux"].includes(r)}},setup(r){const x=r,{openaiBaseUrl:n}=S(),s=b(()=>x.platform==="windows"?"%USERPROFILE%\\.codex\\config.toml":"~/.codex/config.toml"),c=b(()=>x.platform==="windows"?"%USERPROFILE%\\.codex\\auth.json":"~/.codex/auth.json"),e=b(()=>['model_provider = "crs"','model = "gpt-5-codex"','model_reasoning_effort = "high"',"disable_response_storage = true",'preferred_auth_method = "apikey"',"","[model_providers.crs]",'name = "crs"',`base_url = "${n.value}"`,'wire_api = "responses"',"requires_openai_auth = true",'env_key = "CRS_OAI_KEY"']),u=b(()=>e.value.join(` -`)),p=b(()=>x.platform==="windows"?`New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\\.codex" | Out-Null; "${u.value.replace(/"/g,'`"').replace(/\n/g,"`n")}" | Set-Content -Path "$env:USERPROFILE\\.codex\\config.toml" -Force`:`mkdir -p ~/.codex && printf '${u.value.replace(/\n/g,"\\n")}\\n' > ~/.codex/config.toml`),y=b(()=>x.platform==="windows"?`New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\\.codex" | Out-Null; '{"OPENAI_API_KEY": null}' | Set-Content -Path "$env:USERPROFILE\\.codex\\auth.json" -Force`:`mkdir -p ~/.codex && echo '{"OPENAI_API_KEY": null}' > ~/.codex/auth.json`);return(g,o)=>(a(),d("div",me,[f(E,{platform:r.platform,"step-number":1,"tool-name":"Codex"},null,8,["platform"]),t("div",ie,[o[20]||(o[20]=t("h4",{class:"mb-3 flex items-center text-lg font-semibold text-gray-800 dark:text-gray-300 sm:mb-4 sm:text-xl"},[t("span",{class:"mr-2 flex h-6 w-6 items-center justify-center rounded-full bg-indigo-500 text-xs font-bold text-white sm:mr-3 sm:h-8 sm:w-8 sm:text-sm"},"2"),m(" 配置 Codex ")],-1)),o[21]||(o[21]=t("p",{class:"mb-3 text-sm text-gray-700 dark:text-gray-300 sm:mb-4 sm:text-base"}," 配置 Codex 以连接到中转服务: ",-1)),t("div",xe,[t("div",ge,[o[2]||(o[2]=t("h6",{class:"mb-2 font-medium text-yellow-800 dark:text-yellow-300"}," 1. 配置文件 config.toml ",-1)),t("p",pe,[o[0]||(o[0]=m(" 在 ",-1)),t("code",be,l(s.value),1),o[1]||(o[1]=m(" 文件开头添加以下配置: ",-1))]),t("div",ue,[(a(!0),d(i,null,h(e.value,I=>(a(),d("div",{key:I,class:k(["whitespace-nowrap text-gray-300",{"mt-2":I===""}])},l(I||" "),3))),128))]),o[3]||(o[3]=t("p",{class:"mt-3 text-sm text-yellow-600 dark:text-yellow-400"},"一键写入命令:",-1)),t("div",ye,[t("div",ve,l(p.value),1)])]),t("div",ce,[o[6]||(o[6]=t("h6",{class:"mb-2 font-medium text-orange-800 dark:text-orange-300"}," 2. 认证文件 auth.json ",-1)),t("p",we,[o[4]||(o[4]=m(" 在 ",-1)),t("code",fe,l(c.value),1),o[5]||(o[5]=m(" 文件中配置: ",-1))]),o[7]||(o[7]=v('
    {
      "OPENAI_API_KEY": null
    }

    ⚠️ 必须将 OPENAI_API_KEY 设置为 null,否则 Codex 会优先使用它而忽略环境变量!

    一键写入命令:

    ',3)),t("div",ke,[t("div",he,l(y.value),1)])]),t("div",Se,[o[11]||(o[11]=t("h6",{class:"mb-2 font-medium text-purple-800 dark:text-purple-300"}," 3. 设置环境变量 CRS_OAI_KEY ",-1)),o[12]||(o[12]=t("p",{class:"mb-3 text-sm text-purple-700 dark:text-purple-300"}," 设置环境变量 CRS_OAI_KEY 为您的 API 密钥(格式如 cr_xxxxxxxxxx): ",-1)),r.platform==="windows"?(a(),d(i,{key:0},[o[8]||(o[8]=v('

    系统级环境变量(推荐):

    [System.Environment]::SetEnvironmentVariable("CRS_OAI_KEY", "cr_xxxxxxxxxx", [System.EnvironmentVariableTarget]::Machine)

    用户级环境变量 (不推荐)

    [System.Environment]::SetEnvironmentVariable("CRS_OAI_KEY", "cr_xxxxxxxxxx", [System.EnvironmentVariableTarget]::User)

    💡 设置后需要重新打开终端窗口才能生效

    ',5))],64)):(a(),d(i,{key:1},[o[9]||(o[9]=v('

    检查当前 shell:echo $SHELL

    检查是否已有旧配置

    如果之前配置过,建议先检查并清理旧配置:

    # zsh
    grep 'CRS_OAI_KEY' ~/.zshrc
    # bash
    grep 'CRS_OAI_KEY' ~/.bashrc

    如果有输出,说明已配置过,可以手动编辑文件修改或删除旧配置

    ',2)),t("p",Ee,l(r.platform==="macos"?"zsh (macOS 默认)":"bash (Linux 默认)")+": ",1),t("div",Ie,[t("div",Ce,` echo 'export CRS_OAI_KEY="cr_xxxxxxxxxx"' >> `+l(r.platform==="macos"?"~/.zshrc && source ~/.zshrc":"~/.bashrc && source ~/.bashrc"),1)]),t("p",$e,l(r.platform==="macos"?"bash":"zsh")+": ",1),t("div",_e,[t("div",Ae,` echo 'export CRS_OAI_KEY="cr_xxxxxxxxxx"' >> `+l(r.platform==="macos"?"~/.bashrc && source ~/.bashrc":"~/.zshrc && source ~/.zshrc"),1)]),o[10]||(o[10]=t("p",{class:"text-sm text-purple-600 dark:text-purple-400"}," 💡 设置后需要重新打开终端窗口或执行 source 命令才能生效 ",-1))],64))]),t("div",Pe,[o[13]||(o[13]=t("h6",{class:"mb-2 font-medium text-green-800 dark:text-green-300"},"4. 验证环境变量",-1)),o[14]||(o[14]=t("p",{class:"mb-2 text-sm text-green-700 dark:text-green-300"}," 重新打开终端后,验证环境变量是否设置成功: ",-1)),t("div",Oe,[r.platform==="windows"?(a(),d("div",Le," Get-ChildItem Env:CRS_OAI_KEY ")):(a(),d("div",Ne,' echo "CRS_OAI_KEY: $CRS_OAI_KEY" '))])]),t("details",Te,[o[18]||(o[18]=t("summary",{class:"cursor-pointer p-3 text-sm font-medium text-gray-800 dark:text-gray-300"}," 如何删除环境变量 ",-1)),t("div",Re,[r.platform==="windows"?(a(),d(i,{key:0},[o[15]||(o[15]=v('

    删除用户级环境变量:

    [System.Environment]::SetEnvironmentVariable("CRS_OAI_KEY", $null, [System.EnvironmentVariableTarget]::User)

    删除系统级环境变量:

    [System.Environment]::SetEnvironmentVariable("CRS_OAI_KEY", $null, [System.EnvironmentVariableTarget]::Machine)
    ',4))],64)):(a(),d(i,{key:1},[o[16]||(o[16]=v('

    从 zsh 配置中删除:

    # 删除包含 CRS_OAI_KEY 的行
    sed -i '' '/CRS_OAI_KEY/d' ~/.zshrc && source ~/.zshrc

    从 bash 配置中删除:

    # 删除包含 CRS_OAI_KEY 的行
    sed -i '' '/CRS_OAI_KEY/d' ~/.bashrc && source ~/.bashrc
    ',4))],64)),o[17]||(o[17]=t("p",{class:"mb-1 text-sm text-gray-600 dark:text-gray-400"},"验证是否删除成功:",-1)),t("div",Ue,[r.platform==="windows"?(a(),d("div",Ke," Get-ChildItem Env:CRS_OAI_KEY ")):(a(),d("div",Ge,' echo "CRS_OAI_KEY: $CRS_OAI_KEY" '))])])]),o[19]||(o[19]=t("div",{class:"rounded-lg border border-yellow-200 bg-yellow-50 p-3 dark:border-yellow-500/40 dark:bg-yellow-950/30 sm:p-4"},[t("p",{class:"text-sm text-yellow-700 dark:text-yellow-300"},[m(" 💡 请将示例中的 "),t("code",{class:"rounded bg-yellow-100 px-1 dark:bg-yellow-900"},"cr_xxxxxxxxxx"),m(" 替换为您的实际 API 密钥 ")])],-1))])])]))}},Me={class:"tutorial-section"},Ye={class:"mb-4 sm:mb-10 sm:mb-6"},Be={class:"mb-3 text-sm text-gray-700 dark:text-gray-300 sm:mb-4 sm:text-base"},Ve={class:"rounded-lg border border-blue-200 bg-blue-50 p-3 dark:border-blue-500/40 dark:bg-blue-950/30 sm:p-4"},De={class:"overflow-x-auto rounded bg-gray-900 p-2 font-mono text-xs text-green-400 sm:p-3 sm:text-sm"},He={__name:"DroidCliTutorial",props:{platform:{type:String,required:!0,validator:r=>["windows","macos","linux"].includes(r)}},setup(r){const{droidClaudeBaseUrl:x,droidOpenaiBaseUrl:n}=S(),s=b(()=>["{",' "custom_models": ['," {",' "model_display_name": "Sonnet 4.5 [crs]",',' "model": "claude-sonnet-4-5-20250929",',` "base_url": "${x.value}",`,' "api_key": "你的API密钥",',' "provider": "anthropic",',' "max_tokens": 8192'," },"," {",' "model_display_name": "GPT5-Codex [crs]",',' "model": "gpt-5-codex",',` "base_url": "${n.value}",`,' "api_key": "你的API密钥",',' "provider": "openai",',' "max_tokens": 16384'," }"," ]","}"]);return(c,e)=>(a(),d("div",Me,[f(E,{platform:r.platform,"step-number":1,"tool-name":"Droid CLI"},null,8,["platform"]),t("div",Ye,[e[12]||(e[12]=t("h4",{class:"mb-3 flex items-center text-lg font-semibold text-gray-800 dark:text-gray-300 sm:mb-4 sm:text-xl"},[t("span",{class:"mr-2 flex h-6 w-6 items-center justify-center rounded-full bg-blue-500 text-xs font-bold text-white sm:mr-3 sm:h-8 sm:w-8 sm:text-sm"},"2"),m(" 配置 Droid CLI ")],-1)),t("p",Be,[e[6]||(e[6]=m(" Droid CLI 使用 ",-1)),e[7]||(e[7]=t("code",{class:"rounded bg-gray-100 px-1 dark:bg-gray-800"},"~/.factory/config.json",-1)),e[8]||(e[8]=m(" 保存自定义模型; ",-1)),r.platform==="windows"?(a(),d(i,{key:0},[e[0]||(e[0]=m(" 在 Windows 中可直接编辑 ",-1)),e[1]||(e[1]=t("code",{class:"rounded bg-gray-100 px-1 dark:bg-gray-800"},"C:\\Users\\你的用户名\\.factory\\config.json",-1)),e[2]||(e[2]=m("。 ",-1))],64)):(a(),d(i,{key:1},[e[3]||(e[3]=m(" 在终端中可使用 ",-1)),e[4]||(e[4]=t("code",{class:"rounded bg-gray-100 px-1 dark:bg-gray-800"},"vim ~/.factory/config.json",-1)),e[5]||(e[5]=m(" 编辑。 ",-1))],64))]),t("div",Ve,[e[9]||(e[9]=t("h6",{class:"mb-2 text-sm font-medium text-blue-800 dark:text-blue-200 sm:text-base"}," 配置文件示例 ",-1)),e[10]||(e[10]=t("p",{class:"mb-3 text-sm text-blue-700 dark:text-blue-200"}," 将以下内容追加到配置文件中,并替换示例中的域名和 API 密钥: ",-1)),t("div",De,[(a(!0),d(i,null,h(s.value,(u,p)=>(a(),d("div",{key:u+p,class:"whitespace-pre text-gray-300"},l(u),1))),128))]),e[11]||(e[11]=t("p",{class:"mt-3 text-xs text-blue-700 dark:text-blue-200 sm:text-sm"}," 💡 在 Droid CLI 中选择自定义模型即可使用新的 Droid 账号池;确保服务地址可被本地访问。 ",-1))])])]))}},qe={class:"card p-3 sm:p-6"},We={class:"mb-4 sm:mb-8"},ze={class:"mb-3 flex items-center text-xl font-bold text-gray-900 dark:text-gray-100 sm:mb-4 sm:text-2xl"},Fe={class:"text-sm text-gray-600 dark:text-gray-400 sm:text-lg"},Je={class:"mb-4 sm:mb-6"},Qe={class:"flex flex-wrap gap-1 rounded-xl bg-gray-100 p-1 dark:bg-gray-800 sm:gap-2 sm:p-2"},Xe=["onClick"],Ze={class:"mb-4 sm:mb-8"},ts={class:"flex flex-wrap gap-1 rounded-xl bg-gray-100 p-1 dark:bg-gray-800 sm:gap-2 sm:p-2"},es=["onClick"],ss={__name:"TutorialView",setup(r){const x=_("windows"),n=_("claude-code"),s=[{key:"windows",name:"Windows",icon:"fab fa-windows"},{key:"macos",name:"macOS",icon:"fab fa-apple"},{key:"linux",name:"Linux / WSL2",icon:"fab fa-linux"}],c=[{key:"claude-code",name:"Claude Code",icon:"fas fa-robot",component:Mt},{key:"codex",name:"Codex",icon:"fas fa-code",component:je},{key:"gemini-cli",name:"Gemini CLI",icon:"fab fa-google",component:ne},{key:"droid-cli",name:"Droid CLI",icon:"fas fa-terminal",component:He}],e=b(()=>{const p=c.find(y=>y.key===n.value);return p?p.name:"CLI 工具"}),u=b(()=>{const p=c.find(y=>y.key===n.value);return p?p.component:null});return(p,y)=>(a(),d("div",qe,[t("div",We,[t("h3",ze,[y[0]||(y[0]=t("i",{class:"fas fa-graduation-cap mr-2 text-blue-600 sm:mr-3"},null,-1)),m(" "+l(e.value)+" 使用教程 ",1)]),t("p",Fe," 跟着这个教程,你可以轻松在自己的电脑上安装并使用 "+l(e.value)+"。 ",1)]),t("div",Je,[t("div",Qe,[(a(),d(i,null,h(s,g=>t("button",{key:g.key,class:k(["flex flex-1 items-center justify-center gap-1 rounded-lg px-3 py-2 text-xs font-semibold transition-all duration-300 sm:gap-2 sm:px-6 sm:py-3 sm:text-sm",x.value===g.key?"bg-white text-blue-600 shadow-sm dark:bg-blue-600 dark:text-white dark:shadow-blue-500/40":"text-gray-600 hover:bg-white/50 hover:text-gray-900 dark:text-gray-300 dark:hover:bg-gray-700 dark:hover:text-white"]),onClick:o=>x.value=g.key},[t("i",{class:k(g.icon)},null,2),m(" "+l(g.name),1)],10,Xe)),64))])]),t("div",Ze,[t("div",ts,[(a(),d(i,null,h(c,g=>t("button",{key:g.key,class:k(["flex flex-1 items-center justify-center gap-1 rounded-lg px-3 py-2 text-xs font-semibold transition-all duration-300 sm:gap-2 sm:px-4 sm:py-3 sm:text-sm",n.value===g.key?"bg-white text-blue-600 shadow-sm dark:bg-blue-600 dark:text-white dark:shadow-blue-500/40":"text-gray-600 hover:bg-white/50 hover:text-gray-900 dark:text-gray-300 dark:hover:bg-gray-700 dark:hover:text-white"]),onClick:o=>n.value=g.key},[t("i",{class:k(g.icon)},null,2),m(" "+l(g.name),1)],10,es)),64))])]),(a(),A(P(u.value),{platform:x.value},null,8,["platform"]))]))}},as=O(ss,[["__scopeId","data-v-c8fcc5f9"]]);export{as as T}; diff --git a/web/admin-spa/dist/assets/TutorialView-DfJPWFZG.css b/web/admin-spa/dist/assets/TutorialView-DfJPWFZG.css deleted file mode 100644 index 88492f3b..00000000 --- a/web/admin-spa/dist/assets/TutorialView-DfJPWFZG.css +++ /dev/null @@ -1 +0,0 @@ -.tutorial-container[data-v-c8fcc5f9]{min-height:calc(100vh - 300px)} diff --git a/web/admin-spa/dist/assets/UserDashboardView-CxHhaP6a.js b/web/admin-spa/dist/assets/UserDashboardView-CxHhaP6a.js deleted file mode 100644 index 685092b1..00000000 --- a/web/admin-spa/dist/assets/UserDashboardView-CxHhaP6a.js +++ /dev/null @@ -1 +0,0 @@ -import{r as b,_ as E,o as Y,x as a,L as y,y as d,z as e,Y as W,K as F,aq as O,P as r,O as j,C as I,u as v,c as K,q as H,R as B,Q as N,ac as q,aV as G,aT as Q,aU as J}from"./vue-vendor-DV7DYXbz.js";import{b as L,s as C,f as A,c as D,a as X}from"./index-BahP9Xx9.js";import{T as Z}from"./ThemeToggle-DROshBR1.js";import{C as ee}from"./ConfirmModal-C2rCOkXI.js";import{T as te}from"./TutorialView-Cpvhof5r.js";import"./element-plus-BSjV1f9S.js";import"./vendor-Dr8jvgFu.js";const se={key:0,class:"fixed inset-0 z-50 h-full w-full overflow-y-auto bg-gray-600 bg-opacity-50"},oe={class:"relative top-20 mx-auto w-[768px] max-w-4xl rounded-md border bg-white p-5 shadow-lg"},le={class:"mt-3"},re={class:"mb-4 flex items-center justify-between"},ae=["disabled"],de=["disabled"],ie={key:0,class:"rounded-md border border-red-200 bg-red-50 p-3"},ne={class:"flex"},ue={class:"ml-3"},ce={class:"text-sm text-red-700"},me={class:"flex justify-end space-x-3 pt-4"},xe=["disabled"],ge=["disabled"],ve={key:0,class:"flex items-center"},ye={key:1},pe={key:0,class:"mt-6 rounded-md border border-green-200 bg-green-50 p-4"},fe={class:"flex items-start"},he={class:"ml-3 flex-1"},ke={class:"mt-3"},we={class:"rounded-md border border-green-300 bg-white p-3"},be={class:"flex items-center justify-between"},_e={class:"break-all font-mono text-sm text-gray-900"},$e={__name:"CreateApiKeyModal",props:{show:{type:Boolean,default:!1}},emits:["close","created"],setup(u,{emit:$}){const p=u,w=$,c=L(),m=b(!1),s=b(""),g=b(null),l=E({name:"",description:""}),_=()=>{l.name="",l.description="",s.value="",g.value=null},P=async()=>{var f,t;if(!l.name.trim()){s.value="API key name is required";return}m.value=!0,s.value="";try{const k={name:l.name.trim(),description:l.description.trim()||void 0},M=await c.createApiKey(k);M.success?(g.value=M.apiKey,C("API key created successfully!","success")):s.value=M.message||"Failed to create API key"}catch(k){console.error("Create API key error:",k),s.value=((t=(f=k.response)==null?void 0:f.data)==null?void 0:t.message)||k.message||"Failed to create API key"}finally{m.value=!1}},h=async f=>{try{await navigator.clipboard.writeText(f),C("API key copied to clipboard!","success")}catch(t){console.error("Failed to copy:",t),C("Failed to copy to clipboard","error")}},o=()=>{_(),w("created"),w("close")};return Y(()=>p.show,f=>{f&&_()}),(f,t)=>u.show?(d(),a("div",se,[e("div",oe,[e("div",le,[e("div",re,[t[6]||(t[6]=e("h3",{class:"text-lg font-medium text-gray-900"},"Create New API Key",-1)),e("button",{class:"text-gray-400 hover:text-gray-600",onClick:t[0]||(t[0]=k=>f.$emit("close"))},t[5]||(t[5]=[e("svg",{class:"h-6 w-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M6 18L18 6M6 6l12 12","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1)]))]),e("form",{class:"space-y-4",onSubmit:W(P,["prevent"])},[e("div",null,[t[7]||(t[7]=e("label",{class:"block text-sm font-medium text-gray-700",for:"name"}," Name * ",-1)),F(e("input",{id:"name","onUpdate:modelValue":t[1]||(t[1]=k=>l.name=k),class:"mt-1 block w-full rounded-md border-gray-300 shadow-sm focus:border-blue-500 focus:ring-blue-500 sm:text-sm",disabled:m.value,placeholder:"Enter API key name",required:"",type:"text"},null,8,ae),[[O,l.name]])]),e("div",null,[t[8]||(t[8]=e("label",{class:"block text-sm font-medium text-gray-700",for:"description"}," Description ",-1)),F(e("textarea",{id:"description","onUpdate:modelValue":t[2]||(t[2]=k=>l.description=k),class:"mt-1 block w-full rounded-md border-gray-300 shadow-sm focus:border-blue-500 focus:ring-blue-500 sm:text-sm",disabled:m.value,placeholder:"Optional description",rows:"3"},null,8,de),[[O,l.description]])]),s.value?(d(),a("div",ie,[e("div",ne,[t[9]||(t[9]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-5 w-5 text-red-400",fill:"currentColor",viewBox:"0 0 20 20"},[e("path",{"clip-rule":"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z","fill-rule":"evenodd"})])],-1)),e("div",ue,[e("p",ce,r(s.value),1)])])])):y("",!0),e("div",me,[e("button",{class:"rounded-md border border-gray-300 px-4 py-2 text-sm font-medium text-gray-700 hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 disabled:opacity-50",disabled:m.value,type:"button",onClick:t[3]||(t[3]=k=>f.$emit("close"))}," Cancel ",8,xe),e("button",{class:"rounded-md border border-transparent bg-blue-600 px-4 py-2 text-sm font-medium text-white shadow-sm hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",disabled:m.value||!l.name.trim(),type:"submit"},[m.value?(d(),a("span",ve,t[10]||(t[10]=[e("svg",{class:"-ml-1 mr-2 h-4 w-4 animate-spin text-white",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),e("path",{class:"opacity-75",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z",fill:"currentColor"})],-1),j(" Creating... ",-1)]))):(d(),a("span",ye,"Create API Key"))],8,ge)])],32),g.value?(d(),a("div",pe,[e("div",fe,[t[14]||(t[14]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-5 w-5 text-green-400",fill:"currentColor",viewBox:"0 0 20 20"},[e("path",{"clip-rule":"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z","fill-rule":"evenodd"})])],-1)),e("div",he,[t[13]||(t[13]=e("h4",{class:"text-sm font-medium text-green-800"},"API Key Created Successfully!",-1)),e("div",ke,[t[12]||(t[12]=e("p",{class:"mb-2 text-sm text-green-700"},[e("strong",null,"Important:"),j(" Copy your API key now. You won't be able to see it again! ")],-1)),e("div",we,[e("div",be,[e("code",_e,r(g.value.key),1),e("button",{class:"ml-3 inline-flex flex-shrink-0 items-center rounded border border-transparent bg-green-100 px-2 py-1 text-xs font-medium text-green-700 hover:bg-green-200 focus:outline-none focus:ring-2 focus:ring-green-500 focus:ring-offset-2",onClick:t[4]||(t[4]=k=>h(g.value.key))},t[11]||(t[11]=[e("svg",{class:"mr-1 h-3 w-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1),j(" Copy ",-1)]))])])]),e("div",{class:"mt-4 flex justify-end"},[e("button",{class:"rounded-md border border-transparent bg-green-600 px-4 py-2 text-sm font-medium text-white shadow-sm hover:bg-green-700 focus:outline-none focus:ring-2 focus:ring-green-500 focus:ring-offset-2",onClick:o}," Done ")])])])])):y("",!0)])])])):y("",!0)}},Ae={key:0,class:"fixed inset-0 z-50 h-full w-full overflow-y-auto bg-gray-600 bg-opacity-50"},Ce={class:"relative top-20 mx-auto w-[768px] max-w-4xl rounded-md border bg-white p-5 shadow-lg"},Me={class:"mt-3"},Pe={class:"mb-4 flex items-center justify-between"},De={key:0,class:"space-y-4"},Ie={class:"mt-1 text-sm text-gray-900"},je={key:0},Te={class:"mt-1 text-sm text-gray-900"},Be={class:"mt-1 flex items-center space-x-2"},Ue={class:"flex-1"},Ve={key:0,class:"rounded-md border border-gray-300 bg-gray-50 p-3"},ze={class:"break-all font-mono text-sm text-gray-900"},Ke={key:1,class:"rounded-md border border-gray-300 bg-gray-50 p-3"},Le={class:"font-mono text-sm text-gray-900"},Se={class:"flex flex-col space-y-1"},Fe={key:0,class:"mr-1 h-3 w-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},Ne={key:1,class:"mr-1 h-3 w-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},qe={key:0,class:"mt-1 text-xs text-gray-500"},He={class:"mt-1"},Re={key:1,class:"border-t border-gray-200 pt-4"},Oe={class:"grid grid-cols-2 gap-4 text-sm"},Ee={class:"ml-2 font-medium"},Ye={class:"ml-2 font-medium"},We={class:"ml-2 font-medium"},Ge={class:"ml-2 font-medium"},Qe={class:"space-y-2 border-t border-gray-200 pt-4 text-sm"},Je={class:"flex justify-between"},Xe={class:"text-gray-900"},Ze={key:0,class:"flex justify-between"},et={class:"text-gray-900"},tt={key:1,class:"flex justify-between"},st={class:"flex justify-end pt-4"},ot={__name:"ViewApiKeyModal",props:{show:{type:Boolean,default:!1},apiKey:{type:Object,default:null}},emits:["close"],setup(u,{emit:$}){const p=$,w=b(!1),c=async m=>{try{await navigator.clipboard.writeText(m),C("Copied to clipboard!","success")}catch(s){console.error("Failed to copy:",s),C("Failed to copy to clipboard","error")}};return(m,s)=>u.show?(d(),a("div",Ae,[e("div",Ce,[e("div",Me,[e("div",Pe,[s[5]||(s[5]=e("h3",{class:"text-lg font-medium text-gray-900"},"API Key Details",-1)),e("button",{class:"text-gray-400 hover:text-gray-600",onClick:s[0]||(s[0]=g=>p("close"))},s[4]||(s[4]=[e("svg",{class:"h-6 w-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M6 18L18 6M6 6l12 12","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1)]))]),u.apiKey?(d(),a("div",De,[e("div",null,[s[6]||(s[6]=e("label",{class:"block text-sm font-medium text-gray-700"},"Name",-1)),e("p",Ie,r(u.apiKey.name),1)]),u.apiKey.description?(d(),a("div",je,[s[7]||(s[7]=e("label",{class:"block text-sm font-medium text-gray-700"},"Description",-1)),e("p",Te,r(u.apiKey.description),1)])):y("",!0),e("div",null,[s[11]||(s[11]=e("label",{class:"block text-sm font-medium text-gray-700"},"API Key",-1)),e("div",Be,[e("div",Ue,[w.value?(d(),a("div",Ve,[e("code",ze,r(u.apiKey.key||"Not available"),1)])):(d(),a("div",Ke,[e("code",Le,r(u.apiKey.keyPreview||"cr_****"),1)]))]),e("div",Se,[u.apiKey.key?(d(),a("button",{key:0,class:"inline-flex items-center rounded border border-gray-300 bg-white px-2 py-1 text-xs font-medium text-gray-700 hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2",onClick:s[1]||(s[1]=g=>w.value=!w.value)},[w.value?(d(),a("svg",Fe,s[8]||(s[8]=[e("path",{d:"M13.875 18.825A10.05 10.05 0 0112 19c-4.478 0-8.268-2.943-9.543-7a9.97 9.97 0 011.563-3.029m5.858.908a3 3 0 114.243 4.243M9.878 9.878l4.242 4.242M9.878 9.878L3 3m6.878 6.878L12 12m-1.122-2.122L12 12m-1.122-2.122l-4.243-4.242m6.879 6.878L15 15","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"},null,-1)]))):(d(),a("svg",Ne,s[9]||(s[9]=[e("path",{d:"M15 12a3 3 0 11-6 0 3 3 0 016 0z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"},null,-1),e("path",{d:"M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"},null,-1)]))),j(" "+r(w.value?"Hide":"Show"),1)])):y("",!0),w.value&&u.apiKey.key?(d(),a("button",{key:1,class:"inline-flex items-center rounded border border-gray-300 bg-white px-2 py-1 text-xs font-medium text-gray-700 hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2",onClick:s[2]||(s[2]=g=>c(u.apiKey.key))},s[10]||(s[10]=[e("svg",{class:"mr-1 h-3 w-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1),j(" Copy ",-1)]))):y("",!0)])]),u.apiKey.key?y("",!0):(d(),a("p",qe," Full API key is only shown when first created or regenerated "))]),e("div",null,[s[12]||(s[12]=e("label",{class:"block text-sm font-medium text-gray-700"},"Status",-1)),e("div",He,[e("span",{class:I(["inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium",u.apiKey.isActive?"bg-green-100 text-green-800":"bg-red-100 text-red-800"])},r(u.apiKey.isActive?"Active":"Disabled"),3)])]),u.apiKey.usage?(d(),a("div",Re,[s[17]||(s[17]=e("label",{class:"mb-2 block text-sm font-medium text-gray-700"},"Usage Statistics",-1)),e("div",Oe,[e("div",null,[s[13]||(s[13]=e("span",{class:"text-gray-500"},"Requests:",-1)),e("span",Ee,r(v(A)(u.apiKey.usage.requests||0)),1)]),e("div",null,[s[14]||(s[14]=e("span",{class:"text-gray-500"},"Input Tokens:",-1)),e("span",Ye,r(v(A)(u.apiKey.usage.inputTokens||0)),1)]),e("div",null,[s[15]||(s[15]=e("span",{class:"text-gray-500"},"Output Tokens:",-1)),e("span",We,r(v(A)(u.apiKey.usage.outputTokens||0)),1)]),e("div",null,[s[16]||(s[16]=e("span",{class:"text-gray-500"},"Total Cost:",-1)),e("span",Ge,"$"+r((u.apiKey.usage.totalCost||0).toFixed(4)),1)])])])):y("",!0),e("div",Qe,[e("div",Je,[s[18]||(s[18]=e("span",{class:"text-gray-500"},"Created:",-1)),e("span",Xe,r(v(D)(u.apiKey.createdAt)),1)]),u.apiKey.lastUsedAt?(d(),a("div",Ze,[s[19]||(s[19]=e("span",{class:"text-gray-500"},"Last Used:",-1)),e("span",et,r(v(D)(u.apiKey.lastUsedAt)),1)])):y("",!0),u.apiKey.expiresAt?(d(),a("div",tt,[s[20]||(s[20]=e("span",{class:"text-gray-500"},"Expires:",-1)),e("span",{class:I(["font-medium",new Date(u.apiKey.expiresAt)p("close"))}," Close ")])])):y("",!0)])])])):y("",!0)}},lt={class:"space-y-6"},rt={class:"sm:flex sm:items-center"},at={class:"mt-4 sm:ml-16 sm:mt-0 sm:flex-none"},dt=["disabled"],it={key:0,class:"rounded-md border border-yellow-200 bg-yellow-50 p-4"},nt={class:"flex"},ut={class:"ml-3"},ct={class:"text-sm text-yellow-700"},mt={key:1,class:"py-12 text-center"},xt={key:2,class:"overflow-hidden bg-white shadow sm:rounded-md"},gt={class:"divide-y divide-gray-200",role:"list"},vt={class:"flex items-center justify-between"},yt={class:"flex items-center"},pt={class:"flex-shrink-0"},ft={class:"ml-4"},ht={class:"flex items-center"},kt={class:"text-sm font-medium text-gray-900"},wt={key:0,class:"ml-2 inline-flex items-center rounded-full bg-gray-100 px-2.5 py-0.5 text-xs font-medium text-gray-800"},bt={key:1,class:"ml-2 inline-flex items-center rounded-full bg-red-100 px-2.5 py-0.5 text-xs font-medium text-red-800"},_t={class:"mt-1"},$t={class:"text-sm text-gray-500"},At={class:"mt-1 flex items-center space-x-4 text-xs text-gray-400"},Ct={key:0},Mt={key:1},Pt={key:2},Dt={key:3},It={class:"flex items-center space-x-2"},jt={class:"text-right text-xs text-gray-500"},Tt={key:0},Bt={class:"flex items-center space-x-1"},Ut=["onClick"],Vt=["onClick"],zt={key:3,class:"py-12 text-center"},Kt={class:"mt-6"},Lt={__name:"UserApiKeysManager",setup(u){const $=L(),p=b(!0),w=b([]),c=K(()=>{var x;return((x=$.config)==null?void 0:x.maxApiKeysPerUser)||5}),m=K(()=>{var x;return((x=$.config)==null?void 0:x.allowUserDeleteApiKeys)===!0}),s=b(!1),g=b(!1),l=b(!1),_=b(null),P=K(()=>[...w.value].sort((x,i)=>{const T=new Date(x.createdAt);return new Date(i.createdAt)-T})),h=K(()=>w.value.filter(x=>!(x.isDeleted==="true"||x.deletedAt)).length),o=async()=>{p.value=!0;try{w.value=await $.getUserApiKeys(!0)}catch(x){console.error("Failed to load API keys:",x),C("Failed to load API keys","error")}finally{p.value=!1}},f=x=>{_.value=x,g.value=!0},t=x=>{_.value=x,l.value=!0},k=async()=>{try{(await $.deleteApiKey(_.value.id)).success&&(C("API key deleted successfully","success"),await o())}catch(x){console.error("Failed to delete API key:",x),C("Failed to delete API key","error")}finally{l.value=!1,_.value=null}},M=async()=>{s.value=!1,await o()};return H(()=>{o()}),(x,i)=>{var T;return d(),a("div",lt,[e("div",rt,[i[6]||(i[6]=e("div",{class:"sm:flex-auto"},[e("h1",{class:"text-2xl font-semibold text-gray-900"},"My API Keys"),e("p",{class:"mt-2 text-sm text-gray-700"}," Manage your API keys to access Claude Relay services ")],-1)),e("div",at,[e("button",{class:"inline-flex items-center justify-center rounded-md border border-transparent bg-blue-600 px-4 py-2 text-sm font-medium text-white shadow-sm hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 sm:w-auto",disabled:h.value>=c.value,onClick:i[0]||(i[0]=n=>s.value=!0)},i[5]||(i[5]=[e("svg",{class:"-ml-1 mr-2 h-4 w-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M12 6v6m0 0v6m0-6h6m-6 0H6","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1),j(" Create API Key ",-1)]),8,dt)])]),h.value>=c.value?(d(),a("div",it,[e("div",nt,[i[7]||(i[7]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-5 w-5 text-yellow-400",fill:"currentColor",viewBox:"0 0 20 20"},[e("path",{"clip-rule":"evenodd",d:"M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z","fill-rule":"evenodd"})])],-1)),e("div",ut,[e("p",ct," You have reached the maximum number of API keys ("+r(c.value)+"). Please delete an existing key to create a new one. ",1)])])])):y("",!0),p.value?(d(),a("div",mt,i[8]||(i[8]=[e("svg",{class:"mx-auto h-8 w-8 animate-spin text-blue-600",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),e("path",{class:"opacity-75",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z",fill:"currentColor"})],-1),e("p",{class:"mt-2 text-sm text-gray-500"},"Loading API keys...",-1)]))):P.value.length>0?(d(),a("div",xt,[e("ul",gt,[(d(!0),a(N,null,q(P.value,n=>{var U,V;return d(),a("li",{key:n.id,class:"px-6 py-4"},[e("div",vt,[e("div",yt,[e("div",pt,[e("div",{class:I(["h-2 w-2 rounded-full",n.isDeleted===!0||n.deletedAt?"bg-gray-400":n.isActive?"bg-green-400":"bg-red-400"])},null,2)]),e("div",ft,[e("div",ht,[e("p",kt,r(n.name),1),n.isDeleted===!0||n.deletedAt?(d(),a("span",wt," Deleted ")):n.isActive?y("",!0):(d(),a("span",bt," Deleted "))]),e("div",_t,[e("p",$t,r(n.description||"No description"),1),e("div",At,[e("span",null,"Created: "+r(v(D)(n.createdAt)),1),n.isDeleted==="true"||n.deletedAt?(d(),a("span",Ct,"Deleted: "+r(v(D)(n.deletedAt)),1)):n.lastUsedAt?(d(),a("span",Mt,"Last used: "+r(v(D)(n.lastUsedAt)),1)):(d(),a("span",Pt,"Never used")),n.expiresAt&&!(n.isDeleted==="true"||n.deletedAt)?(d(),a("span",Dt,"Expires: "+r(v(D)(n.expiresAt)),1)):y("",!0)])])])]),e("div",It,[e("div",jt,[e("div",null,r(v(A)(((U=n.usage)==null?void 0:U.requests)||0))+" requests",1),(V=n.usage)!=null&&V.totalCost?(d(),a("div",Tt,"$"+r(n.usage.totalCost.toFixed(4)),1)):y("",!0)]),e("div",Bt,[e("button",{class:"inline-flex items-center rounded border border-transparent p-1 text-gray-400 hover:text-gray-600",title:"View API Key",onClick:z=>f(n)},i[9]||(i[9]=[e("svg",{class:"h-4 w-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M15 12a3 3 0 11-6 0 3 3 0 016 0z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"}),e("path",{d:"M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1)]),8,Ut),!(n.isDeleted==="true"||n.deletedAt)&&n.isActive&&m.value?(d(),a("button",{key:0,class:"inline-flex items-center rounded border border-transparent p-1 text-red-400 hover:text-red-600",title:"Delete API Key",onClick:z=>t(n)},i[10]||(i[10]=[e("svg",{class:"h-4 w-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1)]),8,Vt)):y("",!0)])])])])}),128))])])):(d(),a("div",zt,[i[12]||(i[12]=e("svg",{class:"mx-auto h-12 w-12 text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M15 7a2 2 0 012 2m0 0a2 2 0 012 2m-2-2h-6m6 0v6a2 2 0 01-2 2H9a2 2 0 01-2-2V9a2 2 0 012-2h6z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1)),i[13]||(i[13]=e("h3",{class:"mt-2 text-sm font-medium text-gray-900"},"No API keys",-1)),i[14]||(i[14]=e("p",{class:"mt-1 text-sm text-gray-500"},"Get started by creating your first API key.",-1)),e("div",Kt,[e("button",{class:"inline-flex items-center rounded-md border border-transparent bg-blue-600 px-4 py-2 text-sm font-medium text-white shadow-sm hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2",onClick:i[1]||(i[1]=n=>s.value=!0)},i[11]||(i[11]=[e("svg",{class:"-ml-1 mr-2 h-4 w-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M12 6v6m0 0v6m0-6h6m-6 0H6","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1),j(" Create API Key ",-1)]))])])),B($e,{show:s.value,onClose:i[2]||(i[2]=n=>s.value=!1),onCreated:M},null,8,["show"]),B(ot,{"api-key":_.value,show:g.value,onClose:i[3]||(i[3]=n=>g.value=!1)},null,8,["api-key","show"]),B(ee,{"confirm-class":"bg-red-600 hover:bg-red-700","confirm-text":"Delete",message:`Are you sure you want to delete '${(T=_.value)==null?void 0:T.name}'? This action cannot be undone.`,show:l.value,title:"Delete API Key",onCancel:i[4]||(i[4]=n=>l.value=!1),onConfirm:k},null,8,["message","show"])])}}},St={class:"space-y-6"},Ft={class:"sm:flex sm:items-center"},Nt={class:"mt-4 sm:ml-16 sm:mt-0 sm:flex-none"},qt={key:0,class:"py-12 text-center"},Ht={key:1,class:"grid grid-cols-1 gap-6 md:grid-cols-2 lg:grid-cols-4"},Rt={class:"overflow-hidden rounded-lg bg-white shadow"},Ot={class:"p-5"},Et={class:"flex items-center"},Yt={class:"ml-5 w-0 flex-1"},Wt={class:"text-lg font-medium text-gray-900"},Gt={class:"overflow-hidden rounded-lg bg-white shadow"},Qt={class:"p-5"},Jt={class:"flex items-center"},Xt={class:"ml-5 w-0 flex-1"},Zt={class:"text-lg font-medium text-gray-900"},es={class:"overflow-hidden rounded-lg bg-white shadow"},ts={class:"p-5"},ss={class:"flex items-center"},os={class:"ml-5 w-0 flex-1"},ls={class:"text-lg font-medium text-gray-900"},rs={class:"overflow-hidden rounded-lg bg-white shadow"},as={class:"p-5"},ds={class:"flex items-center"},is={class:"ml-5 w-0 flex-1"},ns={class:"text-lg font-medium text-gray-900"},us={key:2,class:"rounded-lg bg-white shadow"},cs={key:3,class:"rounded-lg bg-white shadow"},ms={class:"px-4 py-5 sm:p-6"},xs={class:"space-y-3"},gs={class:"flex items-center"},vs={class:"ml-3"},ys={class:"text-sm font-medium text-gray-900"},ps={class:"text-right"},fs={class:"text-sm text-gray-900"},hs={class:"text-xs text-gray-500"},ks={key:4,class:"rounded-lg bg-white shadow"},ws={class:"px-4 py-5 sm:p-6"},bs={class:"overflow-hidden"},_s={class:"min-w-full divide-y divide-gray-200"},$s={class:"divide-y divide-gray-200 bg-white"},As={class:"whitespace-nowrap px-6 py-4"},Cs={class:"text-sm font-medium text-gray-900"},Ms={class:"text-sm text-gray-500"},Ps={class:"whitespace-nowrap px-6 py-4 text-sm text-gray-900"},Ds={class:"whitespace-nowrap px-6 py-4 text-sm text-gray-900"},Is={class:"whitespace-nowrap px-6 py-4 text-sm text-gray-900"},js={class:"whitespace-nowrap px-6 py-4 text-sm text-gray-900"},Ts={class:"whitespace-nowrap px-6 py-4"},Bs={key:5,class:"py-12 text-center"},Us={__name:"UserUsageStats",setup(u){const $=L(),p=b(!0),w=b("week"),c=b(null),m=b([]),s=async()=>{p.value=!0;try{const[g,l]=await Promise.all([$.getUserUsageStats({period:w.value}),$.getUserApiKeys(!0)]);c.value=g,m.value=l}catch(g){console.error("Failed to load usage stats:",g),C("Failed to load usage statistics","error")}finally{p.value=!1}};return H(()=>{s()}),(g,l)=>{var _,P,h,o,f;return d(),a("div",St,[e("div",Ft,[l[2]||(l[2]=e("div",{class:"sm:flex-auto"},[e("h1",{class:"text-2xl font-semibold text-gray-900"},"Usage Statistics"),e("p",{class:"mt-2 text-sm text-gray-700"},"View your API usage statistics and costs")],-1)),e("div",Nt,[F(e("select",{"onUpdate:modelValue":l[0]||(l[0]=t=>w.value=t),class:"block w-full rounded-md border-gray-300 shadow-sm focus:border-blue-500 focus:ring-blue-500 sm:text-sm",onChange:s},l[1]||(l[1]=[e("option",{value:"day"},"Last 24 Hours",-1),e("option",{value:"week"},"Last 7 Days",-1),e("option",{value:"month"},"Last 30 Days",-1),e("option",{value:"quarter"},"Last 90 Days",-1)]),544),[[G,w.value]])])]),p.value?(d(),a("div",qt,l[3]||(l[3]=[e("svg",{class:"mx-auto h-8 w-8 animate-spin text-blue-600",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),e("path",{class:"opacity-75",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z",fill:"currentColor"})],-1),e("p",{class:"mt-2 text-sm text-gray-500"},"Loading usage statistics...",-1)]))):(d(),a("div",Ht,[e("div",Rt,[e("div",Ot,[e("div",Et,[l[5]||(l[5]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-6 w-6 text-blue-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M13 10V3L4 14h7v7l9-11h-7z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),e("div",Yt,[e("dl",null,[l[4]||(l[4]=e("dt",{class:"truncate text-sm font-medium text-gray-500"},"Total Requests",-1)),e("dd",Wt,r(v(A)(((_=c.value)==null?void 0:_.totalRequests)||0)),1)])])])])]),e("div",Gt,[e("div",Qt,[e("div",Jt,[l[7]||(l[7]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-6 w-6 text-green-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M7 7h.01M7 3h5c.512 0 1.024.195 1.414.586l7 7a2 2 0 010 2.828l-7 7a2 2 0 01-2.828 0l-7-7A1.994 1.994 0 013 12V7a4 4 0 014-4z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),e("div",Xt,[e("dl",null,[l[6]||(l[6]=e("dt",{class:"truncate text-sm font-medium text-gray-500"},"Input Tokens",-1)),e("dd",Zt,r(v(A)(((P=c.value)==null?void 0:P.totalInputTokens)||0)),1)])])])])]),e("div",es,[e("div",ts,[e("div",ss,[l[9]||(l[9]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-6 w-6 text-purple-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M7 7h.01M7 3h5c.512 0 1.024.195 1.414.586l7 7a2 2 0 010 2.828l-7 7a2 2 0 01-2.828 0l-7-7A1.994 1.994 0 013 12V7a4 4 0 014-4z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),e("div",os,[e("dl",null,[l[8]||(l[8]=e("dt",{class:"truncate text-sm font-medium text-gray-500"},"Output Tokens",-1)),e("dd",ls,r(v(A)(((h=c.value)==null?void 0:h.totalOutputTokens)||0)),1)])])])])]),e("div",rs,[e("div",as,[e("div",ds,[l[11]||(l[11]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-6 w-6 text-yellow-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),e("div",is,[e("dl",null,[l[10]||(l[10]=e("dt",{class:"truncate text-sm font-medium text-gray-500"},"Total Cost",-1)),e("dd",ns," $"+r((((o=c.value)==null?void 0:o.totalCost)||0).toFixed(4)),1)])])])])])])),!p.value&&c.value?(d(),a("div",us,l[12]||(l[12]=[Q('

    Daily Usage Trend

    Usage Chart

    Daily usage trends would be displayed here

    (Chart integration can be added with Chart.js, D3.js, or similar library)

    ',1)]))):y("",!0),!p.value&&c.value&&((f=c.value.modelStats)==null?void 0:f.length)>0?(d(),a("div",cs,[e("div",ms,[l[14]||(l[14]=e("h3",{class:"mb-4 text-lg font-medium leading-6 text-gray-900"},"Usage by Model",-1)),e("div",xs,[(d(!0),a(N,null,q(c.value.modelStats,t=>(d(),a("div",{key:t.name,class:"flex items-center justify-between"},[e("div",gs,[l[13]||(l[13]=e("div",{class:"flex-shrink-0"},[e("div",{class:"h-2 w-2 rounded-full bg-blue-500"})],-1)),e("div",vs,[e("p",ys,r(t.name),1)])]),e("div",ps,[e("p",fs,r(v(A)(t.requests))+" requests",1),e("p",hs,"$"+r(t.cost.toFixed(4)),1)])]))),128))])])])):y("",!0),!p.value&&m.value.length>0?(d(),a("div",ks,[e("div",ws,[l[16]||(l[16]=e("h3",{class:"mb-4 text-lg font-medium leading-6 text-gray-900"},"Usage by API Key",-1)),e("div",bs,[e("table",_s,[l[15]||(l[15]=e("thead",{class:"bg-gray-50"},[e("tr",null,[e("th",{class:"px-6 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500",scope:"col"}," API Key "),e("th",{class:"px-6 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500",scope:"col"}," Requests "),e("th",{class:"px-6 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500",scope:"col"}," Input Tokens "),e("th",{class:"px-6 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500",scope:"col"}," Output Tokens "),e("th",{class:"px-6 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500",scope:"col"}," Cost "),e("th",{class:"px-6 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500",scope:"col"}," Status ")])],-1)),e("tbody",$s,[(d(!0),a(N,null,q(m.value,t=>{var k,M,x,i;return d(),a("tr",{key:t.id},[e("td",As,[e("div",Cs,r(t.name),1),e("div",Ms,r(t.keyPreview),1)]),e("td",Ps,r(v(A)(((k=t.usage)==null?void 0:k.requests)||0)),1),e("td",Ds,r(v(A)(((M=t.usage)==null?void 0:M.inputTokens)||0)),1),e("td",Is,r(v(A)(((x=t.usage)==null?void 0:x.outputTokens)||0)),1),e("td",js," $"+r((((i=t.usage)==null?void 0:i.totalCost)||0).toFixed(4)),1),e("td",Ts,[e("span",{class:I(["inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium",t.isDeleted==="true"||t.deletedAt?"bg-gray-100 text-gray-800":t.isActive?"bg-green-100 text-green-800":"bg-red-100 text-red-800"])},r(t.isDeleted==="true"||t.deletedAt?"Deleted":t.isActive?"Active":"Disabled"),3)])])}),128))])])])])])):y("",!0),!p.value&&(!c.value||c.value.totalRequests===0)?(d(),a("div",Bs,l[17]||(l[17]=[e("svg",{class:"mx-auto h-12 w-12 text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1),e("h3",{class:"mt-2 text-sm font-medium text-gray-900"},"No usage data",-1),e("p",{class:"mt-1 text-sm text-gray-500"}," You haven't made any API requests yet. Create an API key and start using the service to see usage statistics. ",-1)]))):y("",!0)])}}},Vs={class:"min-h-screen bg-gray-50 dark:bg-gray-900"},zs={class:"bg-white shadow dark:bg-gray-800"},Ks={class:"mx-auto max-w-7xl px-4 sm:px-6 lg:px-8"},Ls={class:"flex h-16 justify-between"},Ss={class:"flex items-center"},Fs={class:"ml-10"},Ns={class:"flex items-baseline space-x-4"},qs={class:"flex items-center space-x-4"},Hs={class:"text-sm text-gray-700 dark:text-gray-300"},Rs={class:"font-medium"},Os={class:"mx-auto max-w-7xl px-4 py-6 sm:px-6 lg:px-8"},Es={key:0,class:"space-y-6"},Ys={class:"grid grid-cols-1 gap-6 md:grid-cols-2 lg:grid-cols-5"},Ws={class:"overflow-hidden rounded-lg bg-white shadow dark:bg-gray-800"},Gs={class:"p-5"},Qs={class:"flex items-center"},Js={class:"ml-5 w-0 flex-1"},Xs={class:"text-lg font-medium text-gray-900 dark:text-white"},Zs={class:"overflow-hidden rounded-lg bg-white shadow dark:bg-gray-800"},eo={class:"p-5"},to={class:"flex items-center"},so={class:"ml-5 w-0 flex-1"},oo={class:"text-lg font-medium text-gray-900 dark:text-white"},lo={class:"overflow-hidden rounded-lg bg-white shadow dark:bg-gray-800"},ro={class:"p-5"},ao={class:"flex items-center"},io={class:"ml-5 w-0 flex-1"},no={class:"text-lg font-medium text-gray-900 dark:text-white"},uo={class:"overflow-hidden rounded-lg bg-white shadow dark:bg-gray-800"},co={class:"p-5"},mo={class:"flex items-center"},xo={class:"ml-5 w-0 flex-1"},go={class:"text-lg font-medium text-gray-900 dark:text-white"},vo={class:"overflow-hidden rounded-lg bg-white shadow dark:bg-gray-800"},yo={class:"p-5"},po={class:"flex items-center"},fo={class:"ml-5 w-0 flex-1"},ho={class:"text-lg font-medium text-gray-900 dark:text-white"},ko={class:"rounded-lg bg-white shadow dark:bg-gray-800"},wo={class:"px-4 py-5 sm:p-6"},bo={class:"mt-5 border-t border-gray-200 dark:border-gray-700"},_o={class:"divide-y divide-gray-200 dark:divide-gray-700"},$o={class:"py-4 sm:grid sm:grid-cols-3 sm:gap-4 sm:py-5"},Ao={class:"mt-1 text-sm text-gray-900 dark:text-white sm:col-span-2 sm:mt-0"},Co={class:"py-4 sm:grid sm:grid-cols-3 sm:gap-4 sm:py-5"},Mo={class:"mt-1 text-sm text-gray-900 dark:text-white sm:col-span-2 sm:mt-0"},Po={class:"py-4 sm:grid sm:grid-cols-3 sm:gap-4 sm:py-5"},Do={class:"mt-1 text-sm text-gray-900 dark:text-white sm:col-span-2 sm:mt-0"},Io={class:"py-4 sm:grid sm:grid-cols-3 sm:gap-4 sm:py-5"},jo={class:"mt-1 text-sm text-gray-900 dark:text-white sm:col-span-2 sm:mt-0"},To={class:"inline-flex items-center rounded-full bg-blue-100 px-2.5 py-0.5 text-xs font-medium text-blue-800 dark:bg-blue-900 dark:text-blue-200"},Bo={class:"py-4 sm:grid sm:grid-cols-3 sm:gap-4 sm:py-5"},Uo={class:"mt-1 text-sm text-gray-900 dark:text-white sm:col-span-2 sm:mt-0"},Vo={class:"py-4 sm:grid sm:grid-cols-3 sm:gap-4 sm:py-5"},zo={class:"mt-1 text-sm text-gray-900 dark:text-white sm:col-span-2 sm:mt-0"},Ko={key:1},Lo={key:2},So={key:3,class:"space-y-6"},Yo={__name:"UserDashboardView",setup(u){const $=J(),p=L(),w=X(),c=b("overview"),m=b(null),s=b({active:0,deleted:0}),g=h=>{c.value=h,h==="overview"&&P()},l=async()=>{try{await p.logout(),C("Logged out successfully","success"),$.push("/user-login")}catch{C("Logout failed","error")}},_=async()=>{try{m.value=await p.getUserProfile()}catch(h){console.error("Failed to load user profile:",h),C("Failed to load user profile","error")}},P=async()=>{try{const h=await p.getUserApiKeys(!0);console.log("All API Keys received:",h);const o=h.filter(t=>!(t.isDeleted==="true"||t.deletedAt)&&t.isActive),f=h.filter(t=>t.isDeleted==="true"||t.deletedAt);console.log("Active keys:",o),console.log("Deleted keys:",f),console.log("Active count:",o.length),console.log("Deleted count:",f.length),s.value={active:o.length,deleted:f.length}}catch(h){console.error("Failed to load API keys stats:",h),s.value={active:0,deleted:0}}};return H(()=>{w.initTheme(),_(),P()}),(h,o)=>{var f,t,k,M,x,i,T,n,U,V,z,R;return d(),a("div",Vs,[e("nav",zs,[e("div",Ks,[e("div",Ls,[e("div",Ss,[o[4]||(o[4]=e("div",{class:"flex flex-shrink-0 items-center"},[e("svg",{class:"h-8 w-8 text-blue-600 dark:text-blue-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})]),e("span",{class:"ml-2 text-xl font-bold text-gray-900 dark:text-white"},"Claude Relay")],-1)),e("div",Fs,[e("div",Ns,[e("button",{class:I(["rounded-md px-3 py-2 text-sm font-medium",c.value==="overview"?"bg-blue-100 text-blue-700 dark:bg-blue-900 dark:text-blue-300":"text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300"]),onClick:o[0]||(o[0]=S=>g("overview"))}," Overview ",2),e("button",{class:I(["rounded-md px-3 py-2 text-sm font-medium",c.value==="api-keys"?"bg-blue-100 text-blue-700 dark:bg-blue-900 dark:text-blue-300":"text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300"]),onClick:o[1]||(o[1]=S=>g("api-keys"))}," API Keys ",2),e("button",{class:I(["rounded-md px-3 py-2 text-sm font-medium",c.value==="usage"?"bg-blue-100 text-blue-700 dark:bg-blue-900 dark:text-blue-300":"text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300"]),onClick:o[2]||(o[2]=S=>g("usage"))}," Usage Stats ",2),e("button",{class:I(["rounded-md px-3 py-2 text-sm font-medium",c.value==="tutorial"?"bg-blue-100 text-blue-700 dark:bg-blue-900 dark:text-blue-300":"text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300"]),onClick:o[3]||(o[3]=S=>g("tutorial"))}," Tutorial ",2)])])]),e("div",qs,[e("div",Hs,[o[5]||(o[5]=j(" Welcome, ",-1)),e("span",Rs,r(v(p).userName),1)]),B(Z,{mode:"icon"}),e("button",{class:"rounded-md px-3 py-2 text-sm font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300",onClick:l}," Logout ")])])])]),e("main",Os,[c.value==="overview"?(d(),a("div",Es,[o[23]||(o[23]=e("div",null,[e("h1",{class:"text-2xl font-semibold text-gray-900 dark:text-white"},"Dashboard Overview"),e("p",{class:"mt-2 text-sm text-gray-600 dark:text-gray-400"}," Welcome to your Claude Relay dashboard ")],-1)),e("div",Ys,[e("div",Ws,[e("div",Gs,[e("div",Qs,[o[7]||(o[7]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-6 w-6 text-green-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M15 7a2 2 0 012 2m0 0a2 2 0 012 2m-2-2h-6m6 0v6a2 2 0 01-2 2H9a2 2 0 01-2-2V9a2 2 0 012-2h6z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),e("div",Js,[e("dl",null,[o[6]||(o[6]=e("dt",{class:"truncate text-sm font-medium text-gray-500 dark:text-gray-400"}," Active API Keys ",-1)),e("dd",Xs,r(s.value.active),1)])])])])]),e("div",Zs,[e("div",eo,[e("div",to,[o[9]||(o[9]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-6 w-6 text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),e("div",so,[e("dl",null,[o[8]||(o[8]=e("dt",{class:"truncate text-sm font-medium text-gray-500 dark:text-gray-400"}," Deleted API Keys ",-1)),e("dd",oo,r(s.value.deleted),1)])])])])]),e("div",lo,[e("div",ro,[e("div",ao,[o[11]||(o[11]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-6 w-6 text-blue-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M13 10V3L4 14h7v7l9-11h-7z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),e("div",io,[e("dl",null,[o[10]||(o[10]=e("dt",{class:"truncate text-sm font-medium text-gray-500 dark:text-gray-400"}," Total Requests ",-1)),e("dd",no,r(v(A)(((t=(f=m.value)==null?void 0:f.totalUsage)==null?void 0:t.requests)||0)),1)])])])])]),e("div",uo,[e("div",co,[e("div",mo,[o[13]||(o[13]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-6 w-6 text-purple-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M7 7h.01M7 3h5c.512 0 1.024.195 1.414.586l7 7a2 2 0 010 2.828l-7 7a2 2 0 01-2.828 0l-7-7A1.994 1.994 0 013 12V7a4 4 0 014-4z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),e("div",xo,[e("dl",null,[o[12]||(o[12]=e("dt",{class:"truncate text-sm font-medium text-gray-500 dark:text-gray-400"}," Input Tokens ",-1)),e("dd",go,r(v(A)(((M=(k=m.value)==null?void 0:k.totalUsage)==null?void 0:M.inputTokens)||0)),1)])])])])]),e("div",vo,[e("div",yo,[e("div",po,[o[15]||(o[15]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-6 w-6 text-yellow-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),e("div",fo,[e("dl",null,[o[14]||(o[14]=e("dt",{class:"truncate text-sm font-medium text-gray-500 dark:text-gray-400"}," Total Cost ",-1)),e("dd",ho," $"+r((((i=(x=m.value)==null?void 0:x.totalUsage)==null?void 0:i.totalCost)||0).toFixed(4)),1)])])])])])]),e("div",ko,[e("div",wo,[o[22]||(o[22]=e("h3",{class:"text-lg font-medium leading-6 text-gray-900 dark:text-white"}," Account Information ",-1)),e("div",bo,[e("dl",_o,[e("div",$o,[o[16]||(o[16]=e("dt",{class:"text-sm font-medium text-gray-500 dark:text-gray-400"},"Username",-1)),e("dd",Ao,r((T=m.value)==null?void 0:T.username),1)]),e("div",Co,[o[17]||(o[17]=e("dt",{class:"text-sm font-medium text-gray-500 dark:text-gray-400"},"Display Name",-1)),e("dd",Mo,r(((n=m.value)==null?void 0:n.displayName)||"N/A"),1)]),e("div",Po,[o[18]||(o[18]=e("dt",{class:"text-sm font-medium text-gray-500 dark:text-gray-400"},"Email",-1)),e("dd",Do,r(((U=m.value)==null?void 0:U.email)||"N/A"),1)]),e("div",Io,[o[19]||(o[19]=e("dt",{class:"text-sm font-medium text-gray-500 dark:text-gray-400"},"Role",-1)),e("dd",jo,[e("span",To,r(((V=m.value)==null?void 0:V.role)||"user"),1)])]),e("div",Bo,[o[20]||(o[20]=e("dt",{class:"text-sm font-medium text-gray-500 dark:text-gray-400"},"Member Since",-1)),e("dd",Uo,r(v(D)((z=m.value)==null?void 0:z.createdAt)),1)]),e("div",Vo,[o[21]||(o[21]=e("dt",{class:"text-sm font-medium text-gray-500 dark:text-gray-400"},"Last Login",-1)),e("dd",zo,r(v(D)((R=m.value)==null?void 0:R.lastLoginAt)||"N/A"),1)])])])])])])):c.value==="api-keys"?(d(),a("div",Ko,[B(Lt)])):c.value==="usage"?(d(),a("div",Lo,[B(Us)])):c.value==="tutorial"?(d(),a("div",So,[B(te)])):y("",!0)])])}}};export{Yo as default}; diff --git a/web/admin-spa/dist/assets/UserLoginView-CQ2slm3o.js b/web/admin-spa/dist/assets/UserLoginView-CQ2slm3o.js deleted file mode 100644 index 5f06e961..00000000 --- a/web/admin-spa/dist/assets/UserLoginView-CQ2slm3o.js +++ /dev/null @@ -1 +0,0 @@ -import{r as u,_ as h,q as k,x as n,z as e,R as c,aT as _,Y as L,L as m,K as p,aq as g,P as b,O as x,J as S,av as z,aU as C,y as i}from"./vue-vendor-DV7DYXbz.js";import{b as T,a as V,s as M}from"./index-BahP9Xx9.js";import{T as U}from"./ThemeToggle-DROshBR1.js";import"./element-plus-BSjV1f9S.js";import"./vendor-Dr8jvgFu.js";const B={class:"relative flex min-h-screen items-center justify-center bg-gray-50 px-4 py-12 dark:bg-gray-900 sm:px-6 lg:px-8"},N={class:"fixed right-4 top-4 z-10"},j={class:"w-full max-w-md space-y-8"},q={class:"rounded-lg bg-white px-6 py-8 shadow dark:bg-gray-800 dark:shadow-xl"},I={class:"mt-1"},P=["disabled"],A={class:"mt-1"},E=["disabled"],R={key:0,class:"rounded-md border border-red-200 bg-red-50 p-4 dark:border-red-800 dark:bg-red-900/20"},D={class:"flex"},H={class:"ml-3"},J={class:"text-sm text-red-700 dark:text-red-400"},K=["disabled"],O={key:0,class:"absolute inset-y-0 left-0 flex items-center pl-3"},Y={class:"text-center"},$={__name:"UserLoginView",setup(F){const f=C(),y=T(),v=V(),t=u(!1),o=u(""),s=h({username:"",password:""}),w=async()=>{var l,r;if(!s.username||!s.password){o.value="Please enter both username and password";return}t.value=!0,o.value="";try{await y.login({username:s.username,password:s.password}),M("Login successful!","success"),f.push("/user-dashboard")}catch(a){console.error("Login error:",a),o.value=((r=(l=a.response)==null?void 0:l.data)==null?void 0:r.message)||a.message||"Login failed"}finally{t.value=!1}};return k(()=>{v.initTheme()}),(l,r)=>{const a=z("router-link");return i(),n("div",B,[e("div",N,[c(U,{mode:"dropdown"})]),e("div",j,[r[7]||(r[7]=_('
    Claude Relay

    User Sign In

    Sign in to your account to manage your API keys

    ',1)),e("div",q,[e("form",{class:"space-y-6",onSubmit:L(w,["prevent"])},[e("div",null,[r[2]||(r[2]=e("label",{class:"block text-sm font-medium text-gray-700 dark:text-gray-300",for:"username"}," Username ",-1)),e("div",I,[p(e("input",{id:"username","onUpdate:modelValue":r[0]||(r[0]=d=>s.username=d),autocomplete:"username",class:"relative block w-full appearance-none rounded-md border border-gray-300 px-3 py-2 text-gray-900 placeholder-gray-500 focus:z-10 focus:border-blue-500 focus:outline-none focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder-gray-400 dark:focus:border-blue-400 dark:focus:ring-blue-400 sm:text-sm",disabled:t.value,name:"username",placeholder:"Enter your username",required:"",type:"text"},null,8,P),[[g,s.username]])])]),e("div",null,[r[3]||(r[3]=e("label",{class:"block text-sm font-medium text-gray-700 dark:text-gray-300",for:"password"}," Password ",-1)),e("div",A,[p(e("input",{id:"password","onUpdate:modelValue":r[1]||(r[1]=d=>s.password=d),autocomplete:"current-password",class:"relative block w-full appearance-none rounded-md border border-gray-300 px-3 py-2 text-gray-900 placeholder-gray-500 focus:z-10 focus:border-blue-500 focus:outline-none focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder-gray-400 dark:focus:border-blue-400 dark:focus:ring-blue-400 sm:text-sm",disabled:t.value,name:"password",placeholder:"Enter your password",required:"",type:"password"},null,8,E),[[g,s.password]])])]),o.value?(i(),n("div",R,[e("div",D,[r[4]||(r[4]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-5 w-5 text-red-400",fill:"currentColor",viewBox:"0 0 20 20"},[e("path",{"clip-rule":"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z","fill-rule":"evenodd"})])],-1)),e("div",H,[e("p",J,b(o.value),1)])])])):m("",!0),e("div",null,[e("button",{class:"group relative flex w-full justify-center rounded-md border border-transparent bg-blue-600 px-4 py-2 text-sm font-medium text-white hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 dark:bg-blue-500 dark:hover:bg-blue-600 dark:focus:ring-blue-400 dark:focus:ring-offset-gray-800",disabled:t.value||!s.username||!s.password,type:"submit"},[t.value?(i(),n("span",O,r[5]||(r[5]=[e("svg",{class:"h-5 w-5 animate-spin text-white",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),e("path",{class:"opacity-75",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z",fill:"currentColor"})],-1)]))):m("",!0),x(" "+b(t.value?"Signing In...":"Sign In"),1)],8,K)]),e("div",Y,[c(a,{class:"text-sm text-blue-600 hover:text-blue-500 dark:text-blue-400 dark:hover:text-blue-300",to:"/admin-login"},{default:S(()=>r[6]||(r[6]=[x(" Admin Login ",-1)])),_:1,__:[6]})])],32)])])])}}};export{$ as default}; diff --git a/web/admin-spa/dist/assets/UserManagementView-CaiXdQvq.js b/web/admin-spa/dist/assets/UserManagementView-CaiXdQvq.js deleted file mode 100644 index 6c98e067..00000000 --- a/web/admin-spa/dist/assets/UserManagementView-CaiXdQvq.js +++ /dev/null @@ -1 +0,0 @@ -import{r as x,o as O,x as i,L as b,y as n,z as e,P as a,K as j,aV as P,u as h,Q as E,ac as Q,C as B,Y as W,an as K,O as N,c as Y,q as J,R as I,aq as X}from"./vue-vendor-DV7DYXbz.js";import{f as A,c as G,g as Z,d as ee,s as M,e as te,h as se,i as oe,j as le,k as ae}from"./index-BahP9Xx9.js";import{C as re}from"./ConfirmModal-C2rCOkXI.js";import{d as ie}from"./vendor-Dr8jvgFu.js";import"./element-plus-BSjV1f9S.js";const ne={key:0,class:"fixed inset-0 z-50 h-full w-full overflow-y-auto bg-gray-600 bg-opacity-50"},de={class:"relative top-10 mx-auto w-4/5 max-w-4xl rounded-md border bg-white p-5 shadow-lg"},ue={class:"mt-3"},ce={class:"mb-6 flex items-center justify-between"},me={class:"text-lg font-medium text-gray-900"},ve={class:"text-sm text-gray-500"},xe={class:"mb-6"},ge={key:0,class:"py-12 text-center"},pe={key:1,class:"space-y-6"},fe={class:"grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-4"},he={class:"overflow-hidden rounded-lg bg-blue-50 shadow"},ye={class:"p-5"},we={class:"flex items-center"},be={class:"ml-5 w-0 flex-1"},ke={class:"text-lg font-medium text-blue-900"},_e={class:"overflow-hidden rounded-lg bg-green-50 shadow"},$e={class:"p-5"},Ce={class:"flex items-center"},Ae={class:"ml-5 w-0 flex-1"},Ue={class:"text-lg font-medium text-green-900"},Me={class:"overflow-hidden rounded-lg bg-purple-50 shadow"},je={class:"p-5"},ze={class:"flex items-center"},Be={class:"ml-5 w-0 flex-1"},Ve={class:"text-lg font-medium text-purple-900"},Le={class:"overflow-hidden rounded-lg bg-yellow-50 shadow"},Re={class:"p-5"},Se={class:"flex items-center"},Te={class:"ml-5 w-0 flex-1"},Fe={class:"text-lg font-medium text-yellow-900"},De={key:0,class:"rounded-lg border border-gray-200 bg-white"},Ie={class:"overflow-hidden"},Pe={class:"min-w-full divide-y divide-gray-200"},Ne={class:"divide-y divide-gray-200 bg-white"},He={class:"whitespace-nowrap px-6 py-4"},qe={class:"text-sm font-medium text-gray-900"},Ke={class:"text-sm text-gray-500"},Oe={class:"whitespace-nowrap px-6 py-4"},Ee={class:"whitespace-nowrap px-6 py-4 text-sm text-gray-900"},Qe={class:"whitespace-nowrap px-6 py-4 text-sm text-gray-900"},Ge={class:"whitespace-nowrap px-6 py-4 text-sm text-gray-900"},We={class:"whitespace-nowrap px-6 py-4 text-sm text-gray-500"},Ye={class:"rounded-lg border border-gray-200 bg-white"},Je={class:"p-6"},Xe={class:"flex h-64 items-center justify-center rounded-lg border-2 border-dashed border-gray-300"},Ze={class:"text-center"},et={class:"mt-1 text-sm text-gray-500"},tt={key:1,class:"py-12 text-center"},st={class:"mt-6 flex justify-end"},ot={__name:"UserUsageStatsModal",props:{show:{type:Boolean,default:!1},user:{type:Object,default:null}},emits:["close"],setup(m,{emit:k}){const g=m,_=k,v=x(!1),c=x("week"),d=x(null),$=x(null),p=async()=>{if(g.user){v.value=!0;try{const[l,s]=await Promise.all([Z(g.user.id,{period:c.value}),ee(g.user.id)]);l.success&&(d.value=l.stats),s.success&&($.value=s.user)}catch(l){console.error("Failed to load user usage stats:",l),M("Failed to load usage statistics","error")}finally{v.value=!1}}};return O([()=>g.show,()=>g.user],([l,s])=>{l&&s&&p()}),(l,s)=>{var y,U,C,z,V,L,R,S,T,F;return m.show?(n(),i("div",ne,[e("div",de,[e("div",ue,[e("div",ce,[e("div",null,[e("h3",me," Usage Statistics - "+a(((y=m.user)==null?void 0:y.displayName)||((U=m.user)==null?void 0:U.username)),1),e("p",ve,"@"+a((C=m.user)==null?void 0:C.username)+" • "+a((z=m.user)==null?void 0:z.role),1)]),e("button",{class:"text-gray-400 hover:text-gray-600",onClick:s[0]||(s[0]=o=>_("close"))},s[3]||(s[3]=[e("svg",{class:"h-6 w-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M6 18L18 6M6 6l12 12","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1)]))]),e("div",xe,[j(e("select",{"onUpdate:modelValue":s[1]||(s[1]=o=>c.value=o),class:"block w-32 rounded-md border-gray-300 shadow-sm focus:border-blue-500 focus:ring-blue-500 sm:text-sm",onChange:p},s[4]||(s[4]=[e("option",{value:"day"},"Last 24 Hours",-1),e("option",{value:"week"},"Last 7 Days",-1),e("option",{value:"month"},"Last 30 Days",-1),e("option",{value:"quarter"},"Last 90 Days",-1)]),544),[[P,c.value]])]),v.value?(n(),i("div",ge,s[5]||(s[5]=[e("svg",{class:"mx-auto h-8 w-8 animate-spin text-blue-600",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),e("path",{class:"opacity-75",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z",fill:"currentColor"})],-1),e("p",{class:"mt-2 text-sm text-gray-500"},"Loading usage statistics...",-1)]))):(n(),i("div",pe,[e("div",fe,[e("div",he,[e("div",ye,[e("div",we,[s[7]||(s[7]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-6 w-6 text-blue-600",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M13 10V3L4 14h7v7l9-11h-7z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),e("div",be,[e("dl",null,[s[6]||(s[6]=e("dt",{class:"truncate text-sm font-medium text-blue-600"},"Requests",-1)),e("dd",ke,a(h(A)(((V=d.value)==null?void 0:V.totalRequests)||0)),1)])])])])]),e("div",_e,[e("div",$e,[e("div",Ce,[s[9]||(s[9]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-6 w-6 text-green-600",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M7 7h.01M7 3h5c.512 0 1.024.195 1.414.586l7 7a2 2 0 010 2.828l-7 7a2 2 0 01-2.828 0l-7-7A1.994 1.994 0 013 12V7a4 4 0 014-4z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),e("div",Ae,[e("dl",null,[s[8]||(s[8]=e("dt",{class:"truncate text-sm font-medium text-green-600"},"Input Tokens",-1)),e("dd",Ue,a(h(A)(((L=d.value)==null?void 0:L.totalInputTokens)||0)),1)])])])])]),e("div",Me,[e("div",je,[e("div",ze,[s[11]||(s[11]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-6 w-6 text-purple-600",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M7 7h.01M7 3h5c.512 0 1.024.195 1.414.586l7 7a2 2 0 010 2.828l-7 7a2 2 0 01-2.828 0l-7-7A1.994 1.994 0 013 12V7a4 4 0 014-4z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),e("div",Be,[e("dl",null,[s[10]||(s[10]=e("dt",{class:"truncate text-sm font-medium text-purple-600"},"Output Tokens",-1)),e("dd",Ve,a(h(A)(((R=d.value)==null?void 0:R.totalOutputTokens)||0)),1)])])])])]),e("div",Le,[e("div",Re,[e("div",Se,[s[13]||(s[13]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-6 w-6 text-yellow-600",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),e("div",Te,[e("dl",null,[s[12]||(s[12]=e("dt",{class:"truncate text-sm font-medium text-yellow-600"},"Total Cost",-1)),e("dd",Fe," $"+a((((S=d.value)==null?void 0:S.totalCost)||0).toFixed(4)),1)])])])])])]),((F=(T=$.value)==null?void 0:T.apiKeys)==null?void 0:F.length)>0?(n(),i("div",De,[s[15]||(s[15]=e("div",{class:"border-b border-gray-200 px-4 py-5 sm:px-6"},[e("h4",{class:"text-lg font-medium leading-6 text-gray-900"},"API Keys Usage")],-1)),e("div",Ie,[e("table",Pe,[s[14]||(s[14]=e("thead",{class:"bg-gray-50"},[e("tr",null,[e("th",{class:"px-6 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500",scope:"col"}," API Key "),e("th",{class:"px-6 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500",scope:"col"}," Status "),e("th",{class:"px-6 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500",scope:"col"}," Requests "),e("th",{class:"px-6 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500",scope:"col"}," Tokens "),e("th",{class:"px-6 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500",scope:"col"}," Cost "),e("th",{class:"px-6 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500",scope:"col"}," Last Used ")])],-1)),e("tbody",Ne,[(n(!0),i(E,null,Q($.value.apiKeys,o=>{var t,u,f,w;return n(),i("tr",{key:o.id},[e("td",He,[e("div",qe,a(o.name),1),e("div",Ke,a(o.keyPreview),1)]),e("td",Oe,[e("span",{class:B(["inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium",o.isActive?"bg-green-100 text-green-800":"bg-red-100 text-red-800"])},a(o.isActive?"Active":"Disabled"),3)]),e("td",Ee,a(h(A)(((t=o.usage)==null?void 0:t.requests)||0)),1),e("td",Qe,[e("div",null,"In: "+a(h(A)(((u=o.usage)==null?void 0:u.inputTokens)||0)),1),e("div",null,"Out: "+a(h(A)(((f=o.usage)==null?void 0:f.outputTokens)||0)),1)]),e("td",Ge," $"+a((((w=o.usage)==null?void 0:w.totalCost)||0).toFixed(4)),1),e("td",We,a(o.lastUsedAt?h(G)(o.lastUsedAt):"Never"),1)])}),128))])])])])):b("",!0),e("div",Ye,[s[19]||(s[19]=e("div",{class:"border-b border-gray-200 px-4 py-5 sm:px-6"},[e("h4",{class:"text-lg font-medium leading-6 text-gray-900"},"Usage Trend")],-1)),e("div",Je,[e("div",Xe,[e("div",Ze,[s[16]||(s[16]=e("svg",{class:"mx-auto h-12 w-12 text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1)),s[17]||(s[17]=e("h3",{class:"mt-2 text-sm font-medium text-gray-900"},"Usage Chart",-1)),e("p",et," Daily usage trends for "+a(c.value)+" period ",1),s[18]||(s[18]=e("p",{class:"mt-2 text-xs text-gray-400"}," (Chart integration can be added with Chart.js, D3.js, or similar library) ",-1))])])])]),d.value&&d.value.totalRequests===0?(n(),i("div",tt,s[20]||(s[20]=[e("svg",{class:"mx-auto h-12 w-12 text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1),e("h3",{class:"mt-2 text-sm font-medium text-gray-900"},"No usage data",-1),e("p",{class:"mt-1 text-sm text-gray-500"}," This user hasn't made any API requests in the selected period. ",-1)]))):b("",!0)])),e("div",st,[e("button",{class:"rounded-md border border-gray-300 px-4 py-2 text-sm font-medium text-gray-700 hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2",onClick:s[2]||(s[2]=o=>l.$emit("close"))}," Close ")])])])])):b("",!0)}}},lt={key:0,class:"fixed inset-0 z-50 h-full w-full overflow-y-auto bg-gray-600 bg-opacity-50"},at={class:"relative top-20 mx-auto w-96 rounded-md border bg-white p-5 shadow-lg"},rt={class:"mt-3"},it={class:"mb-4 flex items-center justify-between"},nt={key:0,class:"space-y-4"},dt={class:"rounded-md bg-gray-50 p-4"},ut={class:"flex items-center"},ct={class:"ml-4"},mt={class:"text-sm font-medium text-gray-900"},vt={class:"text-sm text-gray-500"},xt={class:"mt-1"},gt={class:"space-y-2"},pt={class:"flex items-center"},ft=["disabled"],ht={class:"flex items-center"},yt=["disabled"],wt={key:0,class:"rounded-md border border-yellow-200 bg-yellow-50 p-4"},bt={class:"flex"},kt={class:"ml-3"},_t={class:"mt-2 text-sm text-yellow-700"},$t={key:0},Ct={key:1},At={key:1,class:"rounded-md border border-red-200 bg-red-50 p-4"},Ut={class:"flex"},Mt={class:"ml-3"},jt={class:"text-sm text-red-700"},zt={class:"flex justify-end space-x-3 pt-4"},Bt=["disabled"],Vt=["disabled"],Lt={key:0,class:"flex items-center"},Rt={key:1},St={__name:"ChangeRoleModal",props:{show:{type:Boolean,default:!1},user:{type:Object,default:null}},emits:["close","updated"],setup(m,{emit:k}){const g=m,_=k,v=x(!1),c=x(""),d=x(""),$=async()=>{var p,l;if(!(!g.user||d.value===g.user.role)){v.value=!0,c.value="";try{const s=await te(g.user.id,{role:d.value});s.success?(M(`User role updated to ${d.value}`,"success"),_("updated")):c.value=s.message||"Failed to update user role"}catch(s){console.error("Update user role error:",s),c.value=((l=(p=s.response)==null?void 0:p.data)==null?void 0:l.message)||s.message||"Failed to update user role"}finally{v.value=!1}}};return O([()=>g.show,()=>g.user],([p,l])=>{p&&l&&(d.value=l.role,c.value="",v.value=!1)}),(p,l)=>m.show?(n(),i("div",lt,[e("div",at,[e("div",rt,[e("div",it,[l[5]||(l[5]=e("h3",{class:"text-lg font-medium text-gray-900"},"Change User Role",-1)),e("button",{class:"text-gray-400 hover:text-gray-600",onClick:l[0]||(l[0]=s=>p.$emit("close"))},l[4]||(l[4]=[e("svg",{class:"h-6 w-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M6 18L18 6M6 6l12 12","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1)]))]),m.user?(n(),i("div",nt,[e("div",dt,[e("div",ut,[l[6]||(l[6]=e("div",{class:"flex-shrink-0"},[e("div",{class:"flex h-10 w-10 items-center justify-center rounded-full bg-gray-300"},[e("svg",{class:"h-6 w-6 text-gray-600",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M16 7a4 4 0 11-8 0 4 4 0 018 0zM12 14a7 7 0 00-7 7h14a7 7 0 00-7-7z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])])],-1)),e("div",ct,[e("p",mt,a(m.user.displayName||m.user.username),1),e("p",vt,"@"+a(m.user.username),1),e("div",xt,[e("span",{class:B(["inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium",m.user.role==="admin"?"bg-purple-100 text-purple-800":"bg-blue-100 text-blue-800"])}," Current: "+a(m.user.role),3)])])])]),e("form",{class:"space-y-4",onSubmit:W($,["prevent"])},[e("div",null,[l[9]||(l[9]=e("label",{class:"mb-2 block text-sm font-medium text-gray-700"}," New Role ",-1)),e("div",gt,[e("label",pt,[j(e("input",{"onUpdate:modelValue":l[1]||(l[1]=s=>d.value=s),class:"h-4 w-4 border-gray-300 text-blue-600 focus:ring-blue-500",disabled:v.value,type:"radio",value:"user"},null,8,ft),[[K,d.value]]),l[7]||(l[7]=e("div",{class:"ml-3"},[e("div",{class:"text-sm font-medium text-gray-900"},"User"),e("div",{class:"text-xs text-gray-500"},"Regular user with basic permissions")],-1))]),e("label",ht,[j(e("input",{"onUpdate:modelValue":l[2]||(l[2]=s=>d.value=s),class:"h-4 w-4 border-gray-300 text-blue-600 focus:ring-blue-500",disabled:v.value,type:"radio",value:"admin"},null,8,yt),[[K,d.value]]),l[8]||(l[8]=e("div",{class:"ml-3"},[e("div",{class:"text-sm font-medium text-gray-900"},"Administrator"),e("div",{class:"text-xs text-gray-500"},"Full access to manage users and system")],-1))])])]),d.value!==m.user.role?(n(),i("div",wt,[e("div",bt,[l[11]||(l[11]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-5 w-5 text-yellow-400",fill:"currentColor",viewBox:"0 0 20 20"},[e("path",{"clip-rule":"evenodd",d:"M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z","fill-rule":"evenodd"})])],-1)),e("div",kt,[l[10]||(l[10]=e("h3",{class:"text-sm font-medium text-yellow-800"},"Role Change Warning",-1)),e("div",_t,[d.value==="admin"?(n(),i("p",$t," Granting admin privileges will give this user full access to the system, including the ability to manage other users and their API keys. ")):(n(),i("p",Ct," Removing admin privileges will restrict this user to only managing their own API keys and viewing their own usage statistics. "))])])])])):b("",!0),c.value?(n(),i("div",At,[e("div",Ut,[l[12]||(l[12]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-5 w-5 text-red-400",fill:"currentColor",viewBox:"0 0 20 20"},[e("path",{"clip-rule":"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z","fill-rule":"evenodd"})])],-1)),e("div",Mt,[e("p",jt,a(c.value),1)])])])):b("",!0),e("div",zt,[e("button",{class:"rounded-md border border-gray-300 px-4 py-2 text-sm font-medium text-gray-700 hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 disabled:opacity-50",disabled:v.value,type:"button",onClick:l[3]||(l[3]=s=>p.$emit("close"))}," Cancel ",8,Bt),e("button",{class:"rounded-md border border-transparent bg-blue-600 px-4 py-2 text-sm font-medium text-white shadow-sm hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",disabled:v.value||d.value===m.user.role,type:"submit"},[v.value?(n(),i("span",Lt,l[13]||(l[13]=[e("svg",{class:"-ml-1 mr-2 h-4 w-4 animate-spin text-white",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),e("path",{class:"opacity-75",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z",fill:"currentColor"})],-1),N(" Updating... ",-1)]))):(n(),i("span",Rt,"Update Role"))],8,Vt)])],32)])):b("",!0)])])])):b("",!0)}},Tt={class:"space-y-6"},Ft={class:"sm:flex sm:items-center"},Dt={class:"mt-4 sm:ml-16 sm:mt-0 sm:flex-none"},It=["disabled"],Pt={class:"grid grid-cols-1 gap-6 md:grid-cols-2 lg:grid-cols-4"},Nt={class:"overflow-hidden rounded-lg bg-white shadow dark:bg-gray-800"},Ht={class:"p-5"},qt={class:"flex items-center"},Kt={class:"ml-5 w-0 flex-1"},Ot={class:"text-lg font-medium text-gray-900 dark:text-white"},Et={class:"overflow-hidden rounded-lg bg-white shadow dark:bg-gray-800"},Qt={class:"p-5"},Gt={class:"flex items-center"},Wt={class:"ml-5 w-0 flex-1"},Yt={class:"text-lg font-medium text-gray-900 dark:text-white"},Jt={class:"overflow-hidden rounded-lg bg-white shadow dark:bg-gray-800"},Xt={class:"p-5"},Zt={class:"flex items-center"},es={class:"ml-5 w-0 flex-1"},ts={class:"text-lg font-medium text-gray-900 dark:text-white"},ss={class:"overflow-hidden rounded-lg bg-white shadow dark:bg-gray-800"},os={class:"p-5"},ls={class:"flex items-center"},as={class:"ml-5 w-0 flex-1"},rs={class:"text-lg font-medium text-gray-900 dark:text-white"},is={class:"rounded-lg bg-white shadow dark:bg-gray-800"},ns={class:"px-4 py-5 sm:p-6"},ds={class:"sm:flex sm:items-center sm:justify-between"},us={class:"space-y-4 sm:flex sm:items-center sm:space-x-4 sm:space-y-0"},cs={class:"min-w-0 flex-1"},ms={class:"relative rounded-md shadow-sm"},vs={class:"overflow-hidden bg-white shadow dark:bg-gray-800 sm:rounded-md"},xs={class:"border-b border-gray-200 px-4 py-5 dark:border-gray-700 sm:px-6"},gs={class:"text-lg font-medium leading-6 text-gray-900 dark:text-white"},ps={key:0,class:"text-sm text-gray-500 dark:text-gray-400"},fs={key:0,class:"py-12 text-center"},hs={key:1,class:"divide-y divide-gray-200 dark:divide-gray-700",role:"list"},ys={class:"flex items-center justify-between"},ws={class:"flex min-w-0 flex-1 items-center"},bs={class:"ml-4 min-w-0 flex-1"},ks={class:"flex items-center"},_s={class:"truncate text-sm font-medium text-gray-900 dark:text-white"},$s={class:"ml-2 flex items-center space-x-2"},Cs={class:"mt-1 flex items-center space-x-4 text-sm text-gray-500 dark:text-gray-400"},As={key:0},Us={key:1},Ms={key:2},js={key:0,class:"mt-1 flex items-center space-x-4 text-xs text-gray-400 dark:text-gray-500"},zs={class:"flex items-center space-x-2"},Bs=["onClick"],Vs=["disabled","onClick"],Ls=["title","onClick"],Rs={key:0,class:"h-4 w-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},Ss={key:1,class:"h-4 w-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},Ts=["onClick"],Fs={key:2,class:"py-12 text-center"},Ds={class:"mt-1 text-sm text-gray-500 dark:text-gray-400"},Ks={__name:"UserManagementView",setup(m){const k=x(!0),g=x([]),_=x(null),v=x(""),c=x(""),d=x(""),$=x(!1),p=x(!1),l=x(!1),s=x(null),y=x({title:"",message:"",confirmText:"",confirmClass:"",action:null}),U=Y(()=>{let o=g.value;if(v.value){const t=v.value.toLowerCase();o=o.filter(u=>{var f,w;return u.username.toLowerCase().includes(t)||((f=u.displayName)==null?void 0:f.toLowerCase().includes(t))||((w=u.email)==null?void 0:w.toLowerCase().includes(t))})}if(c.value&&(o=o.filter(t=>t.role===c.value)),d.value!==""){const t=d.value==="true";o=o.filter(u=>u.isActive===t)}return o}),C=async()=>{k.value=!0;try{const o={};c.value&&c.value.trim()!==""&&(o.role=c.value),d.value!==""&&(o.isActive=d.value);const[t,u]=await Promise.all([se(o),oe()]);t.success&&(g.value=t.users),u.success&&(_.value=u.stats)}catch(o){console.error("Failed to load users:",o),M("Failed to load users","error")}finally{k.value=!1}},z=ie(()=>{},300),V=o=>{s.value=o,$.value=!0},L=o=>{s.value=o,y.value={title:o.isActive?"Disable User":"Enable User",message:o.isActive?`Are you sure you want to disable user "${o.username}"? This will prevent them from logging in.`:`Are you sure you want to enable user "${o.username}"?`,confirmText:o.isActive?"Disable":"Enable",confirmClass:o.isActive?"bg-red-600 hover:bg-red-700":"bg-green-600 hover:bg-green-700",action:"toggleStatus"},p.value=!0},R=o=>{o.apiKeyCount!==0&&(s.value=o,y.value={title:"Disable All API Keys",message:`Are you sure you want to disable all ${o.apiKeyCount} API keys for user "${o.username}"? This will prevent them from using the service.`,confirmText:"Disable Keys",confirmClass:"bg-red-600 hover:bg-red-700",action:"disableKeys"},p.value=!0)},S=o=>{s.value=o,l.value=!0},T=async()=>{const o=s.value,t=y.value.action;try{if(t==="toggleStatus"){if((await le(o.id,{isActive:!o.isActive})).success){const f=g.value.findIndex(w=>w.id===o.id);f!==-1&&(g.value[f].isActive=!o.isActive),M(`User ${o.isActive?"disabled":"enabled"} successfully`,"success")}}else if(t==="disableKeys"){const u=await ae(o.id);u.success&&(M(`Disabled ${u.disabledCount} API keys`,"success"),await C())}}catch(u){console.error(`Failed to ${t}:`,u),M(`Failed to ${t}`,"error")}finally{p.value=!1,s.value=null}},F=()=>{l.value=!1,s.value=null,C()};return J(()=>{C()}),(o,t)=>{var u,f,w,H,q;return n(),i("div",Tt,[e("div",Ft,[t[8]||(t[8]=e("div",{class:"sm:flex-auto"},[e("h1",{class:"text-2xl font-semibold text-gray-900 dark:text-white"},"User Management"),e("p",{class:"mt-2 text-sm text-gray-700 dark:text-gray-300"}," Manage users, their API keys, and view usage statistics ")],-1)),e("div",Dt,[e("button",{class:"inline-flex items-center justify-center rounded-md border border-transparent bg-blue-600 px-4 py-2 text-sm font-medium text-white shadow-sm hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 disabled:opacity-50 sm:w-auto",disabled:k.value,onClick:C},t[7]||(t[7]=[e("svg",{class:"-ml-1 mr-2 h-4 w-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1),N(" Refresh ",-1)]),8,It)])]),e("div",Pt,[e("div",Nt,[e("div",Ht,[e("div",qt,[t[10]||(t[10]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-6 w-6 text-blue-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M12 4.354a4 4 0 110 5.292M15 21H3v-1a6 6 0 0112 0v1zm0 0h6v-1a6 6 0 00-9-5.197m13.5-9a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),e("div",Kt,[e("dl",null,[t[9]||(t[9]=e("dt",{class:"truncate text-sm font-medium text-gray-500 dark:text-gray-400"}," Total Users ",-1)),e("dd",Ot,a(((u=_.value)==null?void 0:u.totalUsers)||0),1)])])])])]),e("div",Et,[e("div",Qt,[e("div",Gt,[t[12]||(t[12]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-6 w-6 text-green-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),e("div",Wt,[e("dl",null,[t[11]||(t[11]=e("dt",{class:"truncate text-sm font-medium text-gray-500 dark:text-gray-400"}," Active Users ",-1)),e("dd",Yt,a(((f=_.value)==null?void 0:f.activeUsers)||0),1)])])])])]),e("div",Jt,[e("div",Xt,[e("div",Zt,[t[14]||(t[14]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-6 w-6 text-purple-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M15 7a2 2 0 012 2m0 0a2 2 0 012 2m-2-2h-6m6 0v6a2 2 0 01-2 2H9a2 2 0 01-2-2V9a2 2 0 012-2h6z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),e("div",es,[e("dl",null,[t[13]||(t[13]=e("dt",{class:"truncate text-sm font-medium text-gray-500 dark:text-gray-400"}," Total API Keys ",-1)),e("dd",ts,a(((w=_.value)==null?void 0:w.totalApiKeys)||0),1)])])])])]),e("div",ss,[e("div",os,[e("div",ls,[t[16]||(t[16]=e("div",{class:"flex-shrink-0"},[e("svg",{class:"h-6 w-6 text-yellow-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),e("div",as,[e("dl",null,[t[15]||(t[15]=e("dt",{class:"truncate text-sm font-medium text-gray-500 dark:text-gray-400"}," Total Cost ",-1)),e("dd",rs," $"+a((((q=(H=_.value)==null?void 0:H.totalUsage)==null?void 0:q.totalCost)||0).toFixed(4)),1)])])])])])]),e("div",is,[e("div",ns,[e("div",ds,[e("div",us,[e("div",cs,[e("div",ms,[t[17]||(t[17]=e("div",{class:"pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3"},[e("svg",{class:"h-5 w-5 text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])],-1)),j(e("input",{"onUpdate:modelValue":t[0]||(t[0]=r=>v.value=r),class:"block w-full rounded-md border-gray-300 pl-10 focus:border-blue-500 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white sm:text-sm",placeholder:"Search users...",type:"search",onInput:t[1]||(t[1]=(...r)=>h(z)&&h(z)(...r))},null,544),[[X,v.value]])])]),e("div",null,[j(e("select",{"onUpdate:modelValue":t[2]||(t[2]=r=>c.value=r),class:"block w-full rounded-md border-gray-300 shadow-sm focus:border-blue-500 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white sm:text-sm",onChange:C},t[18]||(t[18]=[e("option",{value:""},"All Roles",-1),e("option",{value:"user"},"User",-1),e("option",{value:"admin"},"Admin",-1)]),544),[[P,c.value]])]),e("div",null,[j(e("select",{"onUpdate:modelValue":t[3]||(t[3]=r=>d.value=r),class:"block w-full rounded-md border-gray-300 shadow-sm focus:border-blue-500 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white sm:text-sm",onChange:C},t[19]||(t[19]=[e("option",{value:""},"All Status",-1),e("option",{value:"true"},"Active",-1),e("option",{value:"false"},"Disabled",-1)]),544),[[P,d.value]])])])])])]),e("div",vs,[e("div",xs,[e("h3",gs,[t[20]||(t[20]=N(" Users ",-1)),k.value?b("",!0):(n(),i("span",ps,"("+a(U.value.length)+" of "+a(g.value.length)+")",1))])]),k.value?(n(),i("div",fs,t[21]||(t[21]=[e("svg",{class:"mx-auto h-8 w-8 animate-spin text-blue-600",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),e("path",{class:"opacity-75",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z",fill:"currentColor"})],-1),e("p",{class:"mt-2 text-sm text-gray-500 dark:text-gray-400"},"Loading users...",-1)]))):U.value.length>0?(n(),i("ul",hs,[(n(!0),i(E,null,Q(U.value,r=>(n(),i("li",{key:r.id,class:"px-6 py-4"},[e("div",ys,[e("div",ws,[t[22]||(t[22]=e("div",{class:"flex-shrink-0"},[e("div",{class:"flex h-10 w-10 items-center justify-center rounded-full bg-gray-300 dark:bg-gray-600"},[e("svg",{class:"h-6 w-6 text-gray-600 dark:text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M16 7a4 4 0 11-8 0 4 4 0 018 0zM12 14a7 7 0 00-7 7h14a7 7 0 00-7-7z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})])])],-1)),e("div",bs,[e("div",ks,[e("p",_s,a(r.displayName||r.username),1),e("div",$s,[e("span",{class:B(["inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium",r.isActive?"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-200":"bg-red-100 text-red-800 dark:bg-red-900 dark:text-red-200"])},a(r.isActive?"Active":"Disabled"),3),e("span",{class:B(["inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium",r.role==="admin"?"bg-purple-100 text-purple-800 dark:bg-purple-900 dark:text-purple-200":"bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-200"])},a(r.role),3)])]),e("div",Cs,[e("span",null,"@"+a(r.username),1),r.email?(n(),i("span",As,a(r.email),1)):b("",!0),e("span",null,a(r.apiKeyCount||0)+" API keys",1),r.lastLoginAt?(n(),i("span",Us,"Last login: "+a(h(G)(r.lastLoginAt)),1)):(n(),i("span",Ms,"Never logged in"))]),r.totalUsage?(n(),i("div",js,[e("span",null,a(h(A)(r.totalUsage.requests||0))+" requests",1),e("span",null,"$"+a((r.totalUsage.totalCost||0).toFixed(4))+" total cost",1)])):b("",!0)])]),e("div",zs,[e("button",{class:"inline-flex items-center rounded border border-transparent p-1 text-gray-400 hover:text-blue-600",title:"View Usage Stats",onClick:D=>V(r)},t[23]||(t[23]=[e("svg",{class:"h-4 w-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1)]),8,Bs),e("button",{class:"inline-flex items-center rounded border border-transparent p-1 text-gray-400 hover:text-red-600 disabled:cursor-not-allowed disabled:opacity-50",disabled:r.apiKeyCount===0,title:"Disable All API Keys",onClick:D=>R(r)},t[24]||(t[24]=[e("svg",{class:"h-4 w-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M18.364 18.364A9 9 0 005.636 5.636m12.728 12.728L5.636 5.636m12.728 12.728L18 12M6 6l12 12","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1)]),8,Vs),e("button",{class:B(["inline-flex items-center rounded border border-transparent p-1",r.isActive?"text-gray-400 hover:text-red-600":"text-gray-400 hover:text-green-600"]),title:r.isActive?"Disable User":"Enable User",onClick:D=>L(r)},[r.isActive?(n(),i("svg",Rs,t[25]||(t[25]=[e("path",{d:"M18.364 18.364A9 9 0 005.636 5.636m12.728 12.728L5.636 5.636m12.728 12.728L18 12M6 6l12 12","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"},null,-1)]))):(n(),i("svg",Ss,t[26]||(t[26]=[e("path",{d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"},null,-1)])))],10,Ls),e("button",{class:"inline-flex items-center rounded border border-transparent p-1 text-gray-400 hover:text-purple-600",title:"Change Role",onClick:D=>S(r)},t[27]||(t[27]=[e("svg",{class:"h-4 w-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M12 6V4m0 2a2 2 0 100 4m0-4a2 2 0 110 4m-6 8a2 2 0 100-4m0 4a2 2 0 100 4m0-4v2m0-6V4m6 6v10m6-2a2 2 0 100-4m0 4a2 2 0 100 4m0-4v2m0-6V4","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1)]),8,Ts)])])]))),128))])):(n(),i("div",Fs,[t[28]||(t[28]=e("svg",{class:"mx-auto h-12 w-12 text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{d:"M12 4.354a4 4 0 110 5.292M15 21H3v-1a6 6 0 0112 0v1zm0 0h6v-1a6 6 0 00-9-5.197m13.5-9a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0z","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"})],-1)),t[29]||(t[29]=e("h3",{class:"mt-2 text-sm font-medium text-gray-900 dark:text-white"},"No users found",-1)),e("p",Ds,a(v.value?"No users match your search criteria.":"No users have been created yet."),1)]))]),I(ot,{show:$.value,user:s.value,onClose:t[4]||(t[4]=r=>$.value=!1)},null,8,["show","user"]),I(re,{"confirm-class":y.value.confirmClass,"confirm-text":y.value.confirmText,message:y.value.message,show:p.value,title:y.value.title,onCancel:t[5]||(t[5]=r=>p.value=!1),onConfirm:T},null,8,["confirm-class","confirm-text","message","show","title"]),I(St,{show:l.value,user:s.value,onClose:t[6]||(t[6]=r=>l.value=!1),onUpdated:F},null,8,["show","user"])])}}};export{Ks as default}; diff --git a/web/admin-spa/dist/assets/WindowCountdown-Cz478C_V.js b/web/admin-spa/dist/assets/WindowCountdown-Cz478C_V.js deleted file mode 100644 index ea332930..00000000 --- a/web/admin-spa/dist/assets/WindowCountdown-Cz478C_V.js +++ /dev/null @@ -1 +0,0 @@ -import{r as P,c as y,o as L,q as R,V as B,x as r,y as o,z as n,L as c,P as l,O as g,B as w,C as v}from"./vue-vendor-DV7DYXbz.js";const E={class:"space-y-1"},I={class:"flex items-center justify-between text-xs"},j={class:"text-gray-500"},F={key:0,class:"font-medium text-gray-700"},V={key:1,class:"font-medium text-orange-600"},z={key:2,class:"font-medium text-gray-500"},D={key:3,class:"font-medium text-gray-400"},W={key:0,class:"space-y-0.5"},K={key:0,class:"space-y-0.5"},O={class:"flex items-center justify-between text-xs"},U={class:"text-gray-600"},A={class:"h-1 w-full rounded-full bg-gray-200"},G={key:1,class:"space-y-0.5"},H={class:"flex items-center justify-between text-xs"},J={class:"text-gray-600"},Q={class:"h-1 w-full rounded-full bg-gray-200"},X={key:2,class:"space-y-0.5"},Y={class:"flex items-center justify-between text-xs"},Z={class:"text-gray-600"},ee={class:"h-1 w-full rounded-full bg-gray-200"},te={key:1,class:"text-xs text-gray-500"},se={key:0},ne={key:1},re={key:2},ie={__name:"WindowCountdown",props:{label:{type:String,default:"窗口限制"},rateLimitWindow:{type:Number,required:!0},windowStartTime:{type:Number,default:null},windowEndTime:{type:Number,default:null},windowRemainingSeconds:{type:Number,default:null},currentRequests:{type:Number,default:0},requestLimit:{type:Number,default:0},currentTokens:{type:Number,default:0},tokenLimit:{type:Number,default:0},currentCost:{type:Number,default:0},costLimit:{type:Number,default:0},showProgress:{type:Boolean,default:!0},showTooltip:{type:Boolean,default:!1}},setup(a){const s=a,i=P(s.windowRemainingSeconds);let u=null;const m=y(()=>s.windowStartTime===null?"notStarted":i.value===0?"expired":i.value>0?"active":"unknown"),_=y(()=>s.requestLimit>0),T=y(()=>s.tokenLimit>0),C=y(()=>s.costLimit>0),q=e=>{if(e==null)return"--:--";const t=Math.floor(e/3600),d=Math.floor(e%3600/60),k=e%60;return t>0?`${t}h ${d}m`:d>0?`${d}m ${k}s`:`${k}s`},N=e=>{const t=Math.floor(e/3600),d=Math.floor(e%3600/60);return t>0?`${t}小时${d}分钟`:`${d}分钟`},h=e=>e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":e.toString(),x=()=>{if(!s.requestLimit||s.requestLimit===0)return 0;const e=(s.currentRequests||0)/s.requestLimit*100;return Math.min(e,100)},S=()=>{const e=x();return e>=100?"bg-red-500":e>=80?"bg-yellow-500":"bg-blue-500"},p=()=>{if(!s.tokenLimit||s.tokenLimit===0)return 0;const e=(s.currentTokens||0)/s.tokenLimit*100;return Math.min(e,100)},M=()=>{const e=p();return e>=100?"bg-red-500":e>=80?"bg-yellow-500":"bg-purple-500"},b=()=>{if(!s.costLimit||s.costLimit===0)return 0;const e=(s.currentCost||0)/s.costLimit*100;return Math.min(e,100)},$=()=>{const e=b();return e>=100?"bg-red-500":e>=80?"bg-yellow-500":"bg-green-500"},f=()=>{if(s.windowEndTime&&i.value>0){const e=Date.now(),t=Math.max(0,Math.floor((s.windowEndTime-e)/1e3));i.value=t,t===0&&u&&(clearInterval(u),u=null)}};return L(()=>s.windowRemainingSeconds,e=>{i.value=e}),L(()=>s.windowEndTime,e=>{e&&(f(),!u&&i.value>0&&(u=setInterval(f,1e3)))}),R(()=>{s.windowEndTime&&i.value>0&&(f(),u=setInterval(f,1e3))}),B(()=>{u&&clearInterval(u)}),(e,t)=>(o(),r("div",E,[n("div",I,[n("span",j,l(a.label),1),m.value==="active"?(o(),r("span",F,[t[0]||(t[0]=n("i",{class:"fas fa-clock mr-1 text-blue-500"},null,-1)),g(" "+l(q(i.value)),1)])):m.value==="expired"?(o(),r("span",V,t[1]||(t[1]=[n("i",{class:"fas fa-sync-alt mr-1"},null,-1),g(" 窗口已过期 ",-1)]))):m.value==="notStarted"?(o(),r("span",z,t[2]||(t[2]=[n("i",{class:"fas fa-pause-circle mr-1"},null,-1),g(" 窗口未激活 ",-1)]))):(o(),r("span",D,l(a.rateLimitWindow)+" 分钟 ",1))]),a.showProgress?(o(),r("div",W,[_.value?(o(),r("div",K,[n("div",O,[t[3]||(t[3]=n("span",{class:"text-gray-400"},"请求",-1)),n("span",U,l(a.currentRequests||0)+"/"+l(a.requestLimit),1)]),n("div",A,[n("div",{class:v(["h-1 rounded-full transition-all duration-300",S()]),style:w({width:x()+"%"})},null,6)])])):c("",!0),T.value?(o(),r("div",G,[n("div",H,[t[4]||(t[4]=n("span",{class:"text-gray-400"},"Token",-1)),n("span",J,l(h(a.currentTokens||0))+"/"+l(h(a.tokenLimit)),1)]),n("div",Q,[n("div",{class:v(["h-1 rounded-full transition-all duration-300",M()]),style:w({width:p()+"%"})},null,6)])])):c("",!0),C.value?(o(),r("div",X,[n("div",Y,[t[5]||(t[5]=n("span",{class:"text-gray-400"},"费用",-1)),n("span",Z," $"+l((a.currentCost||0).toFixed(2))+"/$"+l(a.costLimit.toFixed(2)),1)]),n("div",ee,[n("div",{class:v(["h-1 rounded-full transition-all duration-300",$()]),style:w({width:b()+"%"})},null,6)])])):c("",!0)])):c("",!0),m.value==="active"&&a.showTooltip?(o(),r("div",te,[t[6]||(t[6]=n("i",{class:"fas fa-info-circle mr-1"},null,-1)),i.value<60?(o(),r("span",se,"即将重置")):i.value<300?(o(),r("span",ne,l(Math.ceil(i.value/60))+" 分钟后重置",1)):(o(),r("span",re,l(N(i.value))+"后重置",1))])):c("",!0)]))}};export{ie as _}; diff --git a/web/admin-spa/dist/assets/chart-yFHxLHpB.js b/web/admin-spa/dist/assets/chart-yFHxLHpB.js deleted file mode 100644 index 4009691d..00000000 --- a/web/admin-spa/dist/assets/chart-yFHxLHpB.js +++ /dev/null @@ -1,13 +0,0 @@ -var Jn=Object.defineProperty;var Qn=(i,t,e)=>t in i?Jn(i,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):i[t]=e;var M=(i,t,e)=>Qn(i,typeof t!="symbol"?t+"":t,e);import{C as en}from"./vendor-Dr8jvgFu.js";/*! - * Chart.js v4.5.0 - * https://www.chartjs.org - * (c) 2025 Chart.js Contributors - * Released under the MIT License - */function ct(){}const Zn=(()=>{let i=0;return()=>i++})();function O(i){return i==null}function V(i){if(Array.isArray&&Array.isArray(i))return!0;const t=Object.prototype.toString.call(i);return t.slice(0,7)==="[object"&&t.slice(-6)==="Array]"}function T(i){return i!==null&&Object.prototype.toString.call(i)==="[object Object]"}function N(i){return(typeof i=="number"||i instanceof Number)&&isFinite(+i)}function et(i,t){return N(i)?i:t}function D(i,t){return typeof i>"u"?t:i}const to=(i,t)=>typeof i=="string"&&i.endsWith("%")?parseFloat(i)/100:+i/t,sn=(i,t)=>typeof i=="string"&&i.endsWith("%")?parseFloat(i)/100*t:+i;function z(i,t,e){if(i&&typeof i.call=="function")return i.apply(e,t)}function I(i,t,e,s){let n,o,a;if(V(i))for(o=i.length,n=0;ni,x:i=>i.x,y:i=>i.y};function so(i){const t=i.split("."),e=[];let s="";for(const n of t)s+=n,s.endsWith("\\")?s=s.slice(0,-1)+".":(e.push(s),s="");return e}function no(i){const t=so(i);return e=>{for(const s of t){if(s==="")break;e=e&&e[s]}return e}}function _t(i,t){return(Fi[t]||(Fi[t]=no(t)))(i)}function Si(i){return i.charAt(0).toUpperCase()+i.slice(1)}const re=i=>typeof i<"u",yt=i=>typeof i=="function",Bi=(i,t)=>{if(i.size!==t.size)return!1;for(const e of i)if(!t.has(e))return!1;return!0};function oo(i){return i.type==="mouseup"||i.type==="click"||i.type==="contextmenu"}const R=Math.PI,F=2*R,ao=F+R,Fe=Number.POSITIVE_INFINITY,ro=R/180,j=R/2,St=R/4,Vi=R*2/3,mt=Math.log10,lt=Math.sign;function ie(i,t,e){return Math.abs(i-t)n-o).pop(),t}function co(i){return typeof i=="symbol"||typeof i=="object"&&i!==null&&!(Symbol.toPrimitive in i||"toString"in i||"valueOf"in i)}function Wt(i){return!co(i)&&!isNaN(parseFloat(i))&&isFinite(i)}function ho(i,t){const e=Math.round(i);return e-t<=i&&e+t>=i}function on(i,t,e){let s,n,o;for(s=0,n=i.length;sl&&c=Math.min(t,e)-s&&i<=Math.max(t,e)+s}function Pi(i,t,e){e=e||(a=>i[a]1;)o=n+s>>1,e(o)?n=o:s=o;return{lo:n,hi:s}}const ft=(i,t,e,s)=>Pi(i,e,s?n=>{const o=i[n][t];return oi[n][t]Pi(i,e,s=>i[s][t]>=e);function po(i,t,e){let s=0,n=i.length;for(;ss&&i[n-1]>e;)n--;return s>0||n{const s="_onData"+Si(e),n=i[e];Object.defineProperty(i,e,{configurable:!0,enumerable:!1,value(...o){const a=n.apply(this,o);return i._chartjs.listeners.forEach(r=>{typeof r[s]=="function"&&r[s](...o)}),a}})})}function Hi(i,t){const e=i._chartjs;if(!e)return;const s=e.listeners,n=s.indexOf(t);n!==-1&&s.splice(n,1),!(s.length>0)&&(rn.forEach(o=>{delete i[o]}),delete i._chartjs)}function ln(i){const t=new Set(i);return t.size===i.length?i:Array.from(t)}const cn=function(){return typeof window>"u"?function(i){return i()}:window.requestAnimationFrame}();function hn(i,t){let e=[],s=!1;return function(...n){e=n,s||(s=!0,cn.call(window,()=>{s=!1,i.apply(t,e)}))}}function bo(i,t){let e;return function(...s){return t?(clearTimeout(e),e=setTimeout(i,t,s)):i.apply(this,s),t}}const Di=i=>i==="start"?"left":i==="end"?"right":"center",K=(i,t,e)=>i==="start"?t:i==="end"?e:(t+e)/2,xo=(i,t,e,s)=>i===(s?"left":"right")?e:i==="center"?(t+e)/2:t;function dn(i,t,e){const s=t.length;let n=0,o=s;if(i._sorted){const{iScale:a,vScale:r,_parsed:l}=i,c=i.dataset&&i.dataset.options?i.dataset.options.spanGaps:null,h=a.axis,{min:d,max:u,minDefined:f,maxDefined:g}=a.getUserBounds();if(f){if(n=Math.min(ft(l,h,d).lo,e?s:ft(t,h,a.getPixelForValue(d)).lo),c){const p=l.slice(0,n+1).reverse().findIndex(m=>!O(m[r.axis]));n-=Math.max(0,p)}n=Y(n,0,s-1)}if(g){let p=Math.max(ft(l,a.axis,u,!0).hi+1,e?0:ft(t,h,a.getPixelForValue(u),!0).hi+1);if(c){const m=l.slice(p-1).findIndex(b=>!O(b[r.axis]));p+=Math.max(0,m)}o=Y(p,n,s)-n}else o=s-n}return{start:n,count:o}}function un(i){const{xScale:t,yScale:e,_scaleRanges:s}=i,n={xmin:t.min,xmax:t.max,ymin:e.min,ymax:e.max};if(!s)return i._scaleRanges=n,!0;const o=s.xmin!==t.min||s.xmax!==t.max||s.ymin!==e.min||s.ymax!==e.max;return Object.assign(s,n),o}const pe=i=>i===0||i===1,ji=(i,t,e)=>-(Math.pow(2,10*(i-=1))*Math.sin((i-t)*F/e)),$i=(i,t,e)=>Math.pow(2,-10*i)*Math.sin((i-t)*F/e)+1,se={linear:i=>i,easeInQuad:i=>i*i,easeOutQuad:i=>-i*(i-2),easeInOutQuad:i=>(i/=.5)<1?.5*i*i:-.5*(--i*(i-2)-1),easeInCubic:i=>i*i*i,easeOutCubic:i=>(i-=1)*i*i+1,easeInOutCubic:i=>(i/=.5)<1?.5*i*i*i:.5*((i-=2)*i*i+2),easeInQuart:i=>i*i*i*i,easeOutQuart:i=>-((i-=1)*i*i*i-1),easeInOutQuart:i=>(i/=.5)<1?.5*i*i*i*i:-.5*((i-=2)*i*i*i-2),easeInQuint:i=>i*i*i*i*i,easeOutQuint:i=>(i-=1)*i*i*i*i+1,easeInOutQuint:i=>(i/=.5)<1?.5*i*i*i*i*i:.5*((i-=2)*i*i*i*i+2),easeInSine:i=>-Math.cos(i*j)+1,easeOutSine:i=>Math.sin(i*j),easeInOutSine:i=>-.5*(Math.cos(R*i)-1),easeInExpo:i=>i===0?0:Math.pow(2,10*(i-1)),easeOutExpo:i=>i===1?1:-Math.pow(2,-10*i)+1,easeInOutExpo:i=>pe(i)?i:i<.5?.5*Math.pow(2,10*(i*2-1)):.5*(-Math.pow(2,-10*(i*2-1))+2),easeInCirc:i=>i>=1?i:-(Math.sqrt(1-i*i)-1),easeOutCirc:i=>Math.sqrt(1-(i-=1)*i),easeInOutCirc:i=>(i/=.5)<1?-.5*(Math.sqrt(1-i*i)-1):.5*(Math.sqrt(1-(i-=2)*i)+1),easeInElastic:i=>pe(i)?i:ji(i,.075,.3),easeOutElastic:i=>pe(i)?i:$i(i,.075,.3),easeInOutElastic(i){return pe(i)?i:i<.5?.5*ji(i*2,.1125,.45):.5+.5*$i(i*2-1,.1125,.45)},easeInBack(i){return i*i*((1.70158+1)*i-1.70158)},easeOutBack(i){return(i-=1)*i*((1.70158+1)*i+1.70158)+1},easeInOutBack(i){let t=1.70158;return(i/=.5)<1?.5*(i*i*(((t*=1.525)+1)*i-t)):.5*((i-=2)*i*(((t*=1.525)+1)*i+t)+2)},easeInBounce:i=>1-se.easeOutBounce(1-i),easeOutBounce(i){return i<1/2.75?7.5625*i*i:i<2/2.75?7.5625*(i-=1.5/2.75)*i+.75:i<2.5/2.75?7.5625*(i-=2.25/2.75)*i+.9375:7.5625*(i-=2.625/2.75)*i+.984375},easeInOutBounce:i=>i<.5?se.easeInBounce(i*2)*.5:se.easeOutBounce(i*2-1)*.5+.5};function Ci(i){if(i&&typeof i=="object"){const t=i.toString();return t==="[object CanvasPattern]"||t==="[object CanvasGradient]"}return!1}function Yi(i){return Ci(i)?i:new en(i)}function qe(i){return Ci(i)?i:new en(i).saturate(.5).darken(.1).hexString()}const _o=["x","y","borderWidth","radius","tension"],yo=["color","borderColor","backgroundColor"];function vo(i){i.set("animation",{delay:void 0,duration:1e3,easing:"easeOutQuart",fn:void 0,from:void 0,loop:void 0,to:void 0,type:void 0}),i.describe("animation",{_fallback:!1,_indexable:!1,_scriptable:t=>t!=="onProgress"&&t!=="onComplete"&&t!=="fn"}),i.set("animations",{colors:{type:"color",properties:yo},numbers:{type:"number",properties:_o}}),i.describe("animations",{_fallback:"animation"}),i.set("transitions",{active:{animation:{duration:400}},resize:{animation:{duration:0}},show:{animations:{colors:{from:"transparent"},visible:{type:"boolean",duration:0}}},hide:{animations:{colors:{to:"transparent"},visible:{type:"boolean",easing:"linear",fn:t=>t|0}}}})}function Mo(i){i.set("layout",{autoPadding:!0,padding:{top:0,right:0,bottom:0,left:0}})}const Ui=new Map;function ko(i,t){t=t||{};const e=i+JSON.stringify(t);let s=Ui.get(e);return s||(s=new Intl.NumberFormat(i,t),Ui.set(e,s)),s}function fe(i,t,e){return ko(t,e).format(i)}const fn={values(i){return V(i)?i:""+i},numeric(i,t,e){if(i===0)return"0";const s=this.chart.options.locale;let n,o=i;if(e.length>1){const c=Math.max(Math.abs(e[0].value),Math.abs(e[e.length-1].value));(c<1e-4||c>1e15)&&(n="scientific"),o=So(i,e)}const a=mt(Math.abs(o)),r=isNaN(a)?1:Math.max(Math.min(-1*Math.floor(a),20),0),l={notation:n,minimumFractionDigits:r,maximumFractionDigits:r};return Object.assign(l,this.options.ticks.format),fe(i,s,l)},logarithmic(i,t,e){if(i===0)return"0";const s=e[t].significand||i/Math.pow(10,Math.floor(mt(i)));return[1,2,3,5,10,15].includes(s)||t>.8*e.length?fn.numeric.call(this,i,t,e):""}};function So(i,t){let e=t.length>3?t[2].value-t[1].value:t[1].value-t[0].value;return Math.abs(e)>=1&&i!==Math.floor(i)&&(e=i-Math.floor(i)),e}var je={formatters:fn};function wo(i){i.set("scale",{display:!0,offset:!1,reverse:!1,beginAtZero:!1,bounds:"ticks",clip:!0,grace:0,grid:{display:!0,lineWidth:1,drawOnChartArea:!0,drawTicks:!0,tickLength:8,tickWidth:(t,e)=>e.lineWidth,tickColor:(t,e)=>e.color,offset:!1},border:{display:!0,dash:[],dashOffset:0,width:1},title:{display:!1,text:"",padding:{top:4,bottom:4}},ticks:{minRotation:0,maxRotation:50,mirror:!1,textStrokeWidth:0,textStrokeColor:"",padding:3,display:!0,autoSkip:!0,autoSkipPadding:3,labelOffset:0,callback:je.formatters.values,minor:{},major:{},align:"center",crossAlign:"near",showLabelBackdrop:!1,backdropColor:"rgba(255, 255, 255, 0.75)",backdropPadding:2}}),i.route("scale.ticks","color","","color"),i.route("scale.grid","color","","borderColor"),i.route("scale.border","color","","borderColor"),i.route("scale.title","color","","color"),i.describe("scale",{_fallback:!1,_scriptable:t=>!t.startsWith("before")&&!t.startsWith("after")&&t!=="callback"&&t!=="parser",_indexable:t=>t!=="borderDash"&&t!=="tickBorderDash"&&t!=="dash"}),i.describe("scales",{_fallback:"scale"}),i.describe("scale.ticks",{_scriptable:t=>t!=="backdropPadding"&&t!=="callback",_indexable:t=>t!=="backdropPadding"})}const Rt=Object.create(null),hi=Object.create(null);function ne(i,t){if(!t)return i;const e=t.split(".");for(let s=0,n=e.length;ss.chart.platform.getDevicePixelRatio(),this.elements={},this.events=["mousemove","mouseout","click","touchstart","touchmove"],this.font={family:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",size:12,style:"normal",lineHeight:1.2,weight:null},this.hover={},this.hoverBackgroundColor=(s,n)=>qe(n.backgroundColor),this.hoverBorderColor=(s,n)=>qe(n.borderColor),this.hoverColor=(s,n)=>qe(n.color),this.indexAxis="x",this.interaction={mode:"nearest",intersect:!0,includeInvisible:!1},this.maintainAspectRatio=!0,this.onHover=null,this.onClick=null,this.parsing=!0,this.plugins={},this.responsive=!0,this.scale=void 0,this.scales={},this.showLine=!0,this.drawActiveElementsOnTop=!0,this.describe(t),this.apply(e)}set(t,e){return Je(this,t,e)}get(t){return ne(this,t)}describe(t,e){return Je(hi,t,e)}override(t,e){return Je(Rt,t,e)}route(t,e,s,n){const o=ne(this,t),a=ne(this,s),r="_"+e;Object.defineProperties(o,{[r]:{value:o[e],writable:!0},[e]:{enumerable:!0,get(){const l=this[r],c=a[n];return T(l)?Object.assign({},c,l):D(l,c)},set(l){this[r]=l}}})}apply(t){t.forEach(e=>e(this))}}var W=new Po({_scriptable:i=>!i.startsWith("on"),_indexable:i=>i!=="events",hover:{_fallback:"interaction"},interaction:{_scriptable:!1,_indexable:!1}},[vo,Mo,wo]);function Do(i){return!i||O(i.size)||O(i.family)?null:(i.style?i.style+" ":"")+(i.weight?i.weight+" ":"")+i.size+"px "+i.family}function Be(i,t,e,s,n){let o=t[n];return o||(o=t[n]=i.measureText(n).width,e.push(n)),o>s&&(s=o),s}function Co(i,t,e,s){s=s||{};let n=s.data=s.data||{},o=s.garbageCollect=s.garbageCollect||[];s.font!==t&&(n=s.data={},o=s.garbageCollect=[],s.font=t),i.save(),i.font=t;let a=0;const r=e.length;let l,c,h,d,u;for(l=0;le.length){for(l=0;l0&&i.stroke()}}function gt(i,t,e){return e=e||.5,!t||i&&i.x>t.left-e&&i.xt.top-e&&i.y0&&o.strokeColor!=="";let l,c;for(i.save(),i.font=n.string,To(i,o),l=0;l+i||0;function Ai(i,t){const e={},s=T(t),n=s?Object.keys(t):t,o=T(i)?s?a=>D(i[a],i[t[a]]):a=>i[a]:()=>i;for(const a of n)e[a]=Fo(o(a));return e}function pn(i){return Ai(i,{top:"y",right:"x",bottom:"y",left:"x"})}function Tt(i){return Ai(i,["topLeft","topRight","bottomLeft","bottomRight"])}function J(i){const t=pn(i);return t.width=t.left+t.right,t.height=t.top+t.bottom,t}function $(i,t){i=i||{},t=t||W.font;let e=D(i.size,t.size);typeof e=="string"&&(e=parseInt(e,10));let s=D(i.style,t.style);s&&!(""+s).match(Eo)&&(console.warn('Invalid font style specified: "'+s+'"'),s=void 0);const n={family:D(i.family,t.family),lineHeight:zo(D(i.lineHeight,t.lineHeight),e),size:e,style:s,weight:D(i.weight,t.weight),string:""};return n.string=Do(n),n}function qt(i,t,e,s){let n,o,a;for(n=0,o=i.length;ne&&r===0?0:r+l;return{min:a(s,-Math.abs(o)),max:a(n,o)}}function vt(i,t){return Object.assign(Object.create(i),t)}function Oi(i,t=[""],e,s,n=()=>i[0]){const o=e||i;typeof s>"u"&&(s=_n("_fallback",i));const a={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:i,_rootScopes:o,_fallback:s,_getTarget:n,override:r=>Oi([r,...i],t,o,s)};return new Proxy(a,{deleteProperty(r,l){return delete r[l],delete r._keys,delete i[0][l],!0},get(r,l){return bn(r,l,()=>Uo(l,t,i,r))},getOwnPropertyDescriptor(r,l){return Reflect.getOwnPropertyDescriptor(r._scopes[0],l)},getPrototypeOf(){return Reflect.getPrototypeOf(i[0])},has(r,l){return Gi(r).includes(l)},ownKeys(r){return Gi(r)},set(r,l,c){const h=r._storage||(r._storage=n());return r[l]=h[l]=c,delete r._keys,!0}})}function Nt(i,t,e,s){const n={_cacheable:!1,_proxy:i,_context:t,_subProxy:e,_stack:new Set,_descriptors:mn(i,s),setContext:o=>Nt(i,o,e,s),override:o=>Nt(i.override(o),t,e,s)};return new Proxy(n,{deleteProperty(o,a){return delete o[a],delete i[a],!0},get(o,a,r){return bn(o,a,()=>Wo(o,a,r))},getOwnPropertyDescriptor(o,a){return o._descriptors.allKeys?Reflect.has(i,a)?{enumerable:!0,configurable:!0}:void 0:Reflect.getOwnPropertyDescriptor(i,a)},getPrototypeOf(){return Reflect.getPrototypeOf(i)},has(o,a){return Reflect.has(i,a)},ownKeys(){return Reflect.ownKeys(i)},set(o,a,r){return i[a]=r,delete o[a],!0}})}function mn(i,t={scriptable:!0,indexable:!0}){const{_scriptable:e=t.scriptable,_indexable:s=t.indexable,_allKeys:n=t.allKeys}=i;return{allKeys:n,scriptable:e,indexable:s,isScriptable:yt(e)?e:()=>e,isIndexable:yt(s)?s:()=>s}}const Vo=(i,t)=>i?i+Si(t):t,Ti=(i,t)=>T(t)&&i!=="adapters"&&(Object.getPrototypeOf(t)===null||t.constructor===Object);function bn(i,t,e){if(Object.prototype.hasOwnProperty.call(i,t)||t==="constructor")return i[t];const s=e();return i[t]=s,s}function Wo(i,t,e){const{_proxy:s,_context:n,_subProxy:o,_descriptors:a}=i;let r=s[t];return yt(r)&&a.isScriptable(t)&&(r=No(t,r,i,e)),V(r)&&r.length&&(r=Ho(t,r,i,a.isIndexable)),Ti(t,r)&&(r=Nt(r,n,o&&o[t],a)),r}function No(i,t,e,s){const{_proxy:n,_context:o,_subProxy:a,_stack:r}=e;if(r.has(i))throw new Error("Recursion detected: "+Array.from(r).join("->")+"->"+i);r.add(i);let l=t(o,a||s);return r.delete(i),Ti(i,l)&&(l=Li(n._scopes,n,i,l)),l}function Ho(i,t,e,s){const{_proxy:n,_context:o,_subProxy:a,_descriptors:r}=e;if(typeof o.index<"u"&&s(i))return t[o.index%t.length];if(T(t[0])){const l=t,c=n._scopes.filter(h=>h!==l);t=[];for(const h of l){const d=Li(c,n,i,h);t.push(Nt(d,o,a&&a[i],r))}}return t}function xn(i,t,e){return yt(i)?i(t,e):i}const jo=(i,t)=>i===!0?t:typeof i=="string"?_t(t,i):void 0;function $o(i,t,e,s,n){for(const o of t){const a=jo(e,o);if(a){i.add(a);const r=xn(a._fallback,e,n);if(typeof r<"u"&&r!==e&&r!==s)return r}else if(a===!1&&typeof s<"u"&&e!==s)return null}return!1}function Li(i,t,e,s){const n=t._rootScopes,o=xn(t._fallback,e,s),a=[...i,...n],r=new Set;r.add(s);let l=Ki(r,a,e,o||e,s);return l===null||typeof o<"u"&&o!==e&&(l=Ki(r,a,o,l,s),l===null)?!1:Oi(Array.from(r),[""],n,o,()=>Yo(t,e,s))}function Ki(i,t,e,s,n){for(;e;)e=$o(i,t,e,s,n);return e}function Yo(i,t,e){const s=i._getTarget();t in s||(s[t]={});const n=s[t];return V(n)&&T(e)?e:n||{}}function Uo(i,t,e,s){let n;for(const o of t)if(n=_n(Vo(o,i),e),typeof n<"u")return Ti(i,n)?Li(e,s,i,n):n}function _n(i,t){for(const e of t){if(!e)continue;const s=e[i];if(typeof s<"u")return s}}function Gi(i){let t=i._keys;return t||(t=i._keys=Xo(i._scopes)),t}function Xo(i){const t=new Set;for(const e of i)for(const s of Object.keys(e).filter(n=>!n.startsWith("_")))t.add(s);return Array.from(t)}function yn(i,t,e,s){const{iScale:n}=i,{key:o="r"}=this._parsing,a=new Array(s);let r,l,c,h;for(r=0,l=s;rti==="x"?"y":"x";function Go(i,t,e,s){const n=i.skip?t:i,o=t,a=e.skip?t:e,r=ci(o,n),l=ci(a,o);let c=r/(r+l),h=l/(r+l);c=isNaN(c)?0:c,h=isNaN(h)?0:h;const d=s*c,u=s*h;return{previous:{x:o.x-d*(a.x-n.x),y:o.y-d*(a.y-n.y)},next:{x:o.x+u*(a.x-n.x),y:o.y+u*(a.y-n.y)}}}function qo(i,t,e){const s=i.length;let n,o,a,r,l,c=Ht(i,0);for(let h=0;h!c.skip)),t.cubicInterpolationMode==="monotone")Qo(i,n);else{let c=s?i[i.length-1]:i[0];for(o=0,a=i.length;oi.ownerDocument.defaultView.getComputedStyle(i,null);function ea(i,t){return Ue(i).getPropertyValue(t)}const ia=["top","right","bottom","left"];function Lt(i,t,e){const s={};e=e?"-"+e:"";for(let n=0;n<4;n++){const o=ia[n];s[o]=parseFloat(i[t+"-"+o+e])||0}return s.width=s.left+s.right,s.height=s.top+s.bottom,s}const sa=(i,t,e)=>(i>0||t>0)&&(!e||!e.shadowRoot);function na(i,t){const e=i.touches,s=e&&e.length?e[0]:i,{offsetX:n,offsetY:o}=s;let a=!1,r,l;if(sa(n,o,i.target))r=n,l=o;else{const c=t.getBoundingClientRect();r=s.clientX-c.left,l=s.clientY-c.top,a=!0}return{x:r,y:l,box:a}}function Ct(i,t){if("native"in i)return i;const{canvas:e,currentDevicePixelRatio:s}=t,n=Ue(e),o=n.boxSizing==="border-box",a=Lt(n,"padding"),r=Lt(n,"border","width"),{x:l,y:c,box:h}=na(i,e),d=a.left+(h&&r.left),u=a.top+(h&&r.top);let{width:f,height:g}=t;return o&&(f-=a.width+r.width,g-=a.height+r.height),{x:Math.round((l-d)/f*e.width/s),y:Math.round((c-u)/g*e.height/s)}}function oa(i,t,e){let s,n;if(t===void 0||e===void 0){const o=i&&Ii(i);if(!o)t=i.clientWidth,e=i.clientHeight;else{const a=o.getBoundingClientRect(),r=Ue(o),l=Lt(r,"border","width"),c=Lt(r,"padding");t=a.width-c.width-l.width,e=a.height-c.height-l.height,s=Ve(r.maxWidth,o,"clientWidth"),n=Ve(r.maxHeight,o,"clientHeight")}}return{width:t,height:e,maxWidth:s||Fe,maxHeight:n||Fe}}const be=i=>Math.round(i*10)/10;function aa(i,t,e,s){const n=Ue(i),o=Lt(n,"margin"),a=Ve(n.maxWidth,i,"clientWidth")||Fe,r=Ve(n.maxHeight,i,"clientHeight")||Fe,l=oa(i,t,e);let{width:c,height:h}=l;if(n.boxSizing==="content-box"){const u=Lt(n,"border","width"),f=Lt(n,"padding");c-=f.width+u.width,h-=f.height+u.height}return c=Math.max(0,c-o.width),h=Math.max(0,s?c/s:h-o.height),c=be(Math.min(c,a,l.maxWidth)),h=be(Math.min(h,r,l.maxHeight)),c&&!h&&(h=be(c/2)),(t!==void 0||e!==void 0)&&s&&l.height&&h>l.height&&(h=l.height,c=be(Math.floor(h*s))),{width:c,height:h}}function qi(i,t,e){const s=t||1,n=Math.floor(i.height*s),o=Math.floor(i.width*s);i.height=Math.floor(i.height),i.width=Math.floor(i.width);const a=i.canvas;return a.style&&(e||!a.style.height&&!a.style.width)&&(a.style.height=`${i.height}px`,a.style.width=`${i.width}px`),i.currentDevicePixelRatio!==s||a.height!==n||a.width!==o?(i.currentDevicePixelRatio=s,a.height=n,a.width=o,i.ctx.setTransform(s,0,0,s,0,0),!0):!1}const ra=function(){let i=!1;try{const t={get passive(){return i=!0,!1}};Ri()&&(window.addEventListener("test",null,t),window.removeEventListener("test",null,t))}catch{}return i}();function Ji(i,t){const e=ea(i,t),s=e&&e.match(/^(\d+)(\.\d+)?px$/);return s?+s[1]:void 0}function At(i,t,e,s){return{x:i.x+e*(t.x-i.x),y:i.y+e*(t.y-i.y)}}function la(i,t,e,s){return{x:i.x+e*(t.x-i.x),y:s==="middle"?e<.5?i.y:t.y:s==="after"?e<1?i.y:t.y:e>0?t.y:i.y}}function ca(i,t,e,s){const n={x:i.cp2x,y:i.cp2y},o={x:t.cp1x,y:t.cp1y},a=At(i,n,e),r=At(n,o,e),l=At(o,t,e),c=At(a,r,e),h=At(r,l,e);return At(c,h,e)}const ha=function(i,t){return{x(e){return i+i+t-e},setWidth(e){t=e},textAlign(e){return e==="center"?e:e==="right"?"left":"right"},xPlus(e,s){return e-s},leftForLtr(e,s){return e-s}}},da=function(){return{x(i){return i},setWidth(i){},textAlign(i){return i},xPlus(i,t){return i+t},leftForLtr(i,t){return i}}};function Vt(i,t,e){return i?ha(t,e):da()}function Mn(i,t){let e,s;(t==="ltr"||t==="rtl")&&(e=i.canvas.style,s=[e.getPropertyValue("direction"),e.getPropertyPriority("direction")],e.setProperty("direction",t,"important"),i.prevTextDirection=s)}function kn(i,t){t!==void 0&&(delete i.prevTextDirection,i.canvas.style.setProperty("direction",t[0],t[1]))}function Sn(i){return i==="angle"?{between:le,compare:uo,normalize:G}:{between:ut,compare:(t,e)=>t-e,normalize:t=>t}}function Qi({start:i,end:t,count:e,loop:s,style:n}){return{start:i%e,end:t%e,loop:s&&(t-i+1)%e===0,style:n}}function ua(i,t,e){const{property:s,start:n,end:o}=e,{between:a,normalize:r}=Sn(s),l=t.length;let{start:c,end:h,loop:d}=i,u,f;if(d){for(c+=l,h+=l,u=0,f=l;ul(n,v,b)&&r(n,v)!==0,_=()=>r(o,b)===0||l(o,v,b),k=()=>p||y(),S=()=>!p||_();for(let w=h,P=h;w<=d;++w)x=t[w%a],!x.skip&&(b=c(x[s]),b!==v&&(p=l(b,n,o),m===null&&k()&&(m=r(b,n)===0?w:P),m!==null&&S()&&(g.push(Qi({start:m,end:w,loop:u,count:a,style:f})),m=null),P=w,v=b));return m!==null&&g.push(Qi({start:m,end:d,loop:u,count:a,style:f})),g}function Pn(i,t){const e=[],s=i.segments;for(let n=0;nn&&i[o%t].skip;)o--;return o%=t,{start:n,end:o}}function ga(i,t,e,s){const n=i.length,o=[];let a=t,r=i[t],l;for(l=t+1;l<=e;++l){const c=i[l%n];c.skip||c.stop?r.skip||(s=!1,o.push({start:t%n,end:(l-1)%n,loop:s}),t=a=c.stop?l:null):(a=l,r.skip&&(t=l)),r=c}return a!==null&&o.push({start:t%n,end:a%n,loop:s}),o}function pa(i,t){const e=i.points,s=i.options.spanGaps,n=e.length;if(!n)return[];const o=!!i._loop,{start:a,end:r}=fa(e,n,o,s);if(s===!0)return Zi(i,[{start:a,end:r,loop:o}],e,t);const l=rr({chart:t,initial:e.initial,numSteps:a,currentStep:Math.min(s-e.start,a)}))}_refresh(){this._request||(this._running=!0,this._request=cn.call(window,()=>{this._update(),this._request=null,this._running&&this._refresh()}))}_update(t=Date.now()){let e=0;this._charts.forEach((s,n)=>{if(!s.running||!s.items.length)return;const o=s.items;let a=o.length-1,r=!1,l;for(;a>=0;--a)l=o[a],l._active?(l._total>s.duration&&(s.duration=l._total),l.tick(t),r=!0):(o[a]=o[o.length-1],o.pop());r&&(n.draw(),this._notify(n,s,t,"progress")),o.length||(s.running=!1,this._notify(n,s,t,"complete"),s.initial=!1),e+=o.length}),this._lastDate=t,e===0&&(this._running=!1)}_getAnims(t){const e=this._charts;let s=e.get(t);return s||(s={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},e.set(t,s)),s}listen(t,e,s){this._getAnims(t).listeners[e].push(s)}add(t,e){!e||!e.length||this._getAnims(t).items.push(...e)}has(t){return this._getAnims(t).items.length>0}start(t){const e=this._charts.get(t);e&&(e.running=!0,e.start=Date.now(),e.duration=e.items.reduce((s,n)=>Math.max(s,n._duration),0),this._refresh())}running(t){if(!this._running)return!1;const e=this._charts.get(t);return!(!e||!e.running||!e.items.length)}stop(t){const e=this._charts.get(t);if(!e||!e.items.length)return;const s=e.items;let n=s.length-1;for(;n>=0;--n)s[n].cancel();e.items=[],this._notify(t,e,Date.now(),"complete")}remove(t){return this._charts.delete(t)}}var ht=new _a;const es="transparent",ya={boolean(i,t,e){return e>.5?t:i},color(i,t,e){const s=Yi(i||es),n=s.valid&&Yi(t||es);return n&&n.valid?n.mix(s,e).hexString():t},number(i,t,e){return i+(t-i)*e}};class va{constructor(t,e,s,n){const o=e[s];n=qt([t.to,n,o,t.from]);const a=qt([t.from,o,n]);this._active=!0,this._fn=t.fn||ya[t.type||typeof a],this._easing=se[t.easing]||se.linear,this._start=Math.floor(Date.now()+(t.delay||0)),this._duration=this._total=Math.floor(t.duration),this._loop=!!t.loop,this._target=e,this._prop=s,this._from=a,this._to=n,this._promises=void 0}active(){return this._active}update(t,e,s){if(this._active){this._notify(!1);const n=this._target[this._prop],o=s-this._start,a=this._duration-o;this._start=s,this._duration=Math.floor(Math.max(a,t.duration)),this._total+=o,this._loop=!!t.loop,this._to=qt([t.to,e,n,t.from]),this._from=qt([t.from,n,e])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(t){const e=t-this._start,s=this._duration,n=this._prop,o=this._from,a=this._loop,r=this._to;let l;if(this._active=o!==r&&(a||e1?2-l:l,l=this._easing(Math.min(1,Math.max(0,l))),this._target[n]=this._fn(o,r,l)}wait(){const t=this._promises||(this._promises=[]);return new Promise((e,s)=>{t.push({res:e,rej:s})})}_notify(t){const e=t?"res":"rej",s=this._promises||[];for(let n=0;n{const o=t[n];if(!T(o))return;const a={};for(const r of e)a[r]=o[r];(V(o.properties)&&o.properties||[n]).forEach(r=>{(r===n||!s.has(r))&&s.set(r,a)})})}_animateOptions(t,e){const s=e.options,n=ka(t,s);if(!n)return[];const o=this._createAnimations(n,s);return s.$shared&&Ma(t.options.$animations,s).then(()=>{t.options=s},()=>{}),o}_createAnimations(t,e){const s=this._properties,n=[],o=t.$animations||(t.$animations={}),a=Object.keys(e),r=Date.now();let l;for(l=a.length-1;l>=0;--l){const c=a[l];if(c.charAt(0)==="$")continue;if(c==="options"){n.push(...this._animateOptions(t,e));continue}const h=e[c];let d=o[c];const u=s.get(c);if(d)if(u&&d.active()){d.update(u,h,r);continue}else d.cancel();if(!u||!u.duration){t[c]=h;continue}o[c]=d=new va(u,t,c,h),n.push(d)}return n}update(t,e){if(this._properties.size===0){Object.assign(t,e);return}const s=this._createAnimations(t,e);if(s.length)return ht.add(this._chart,s),!0}}function Ma(i,t){const e=[],s=Object.keys(t);for(let n=0;n0||!e&&o<0)return n.index}return null}function os(i,t){const{chart:e,_cachedMeta:s}=i,n=e._stacks||(e._stacks={}),{iScale:o,vScale:a,index:r}=s,l=o.axis,c=a.axis,h=Da(o,a,s),d=t.length;let u;for(let f=0;fe[s].axis===t).shift()}function Oa(i,t){return vt(i,{active:!1,dataset:void 0,datasetIndex:t,index:t,mode:"default",type:"dataset"})}function Ta(i,t,e){return vt(i,{active:!1,dataIndex:t,parsed:void 0,raw:void 0,element:e,index:t,mode:"default",type:"data"})}function Yt(i,t){const e=i.controller.index,s=i.vScale&&i.vScale.axis;if(s){t=t||i._parsed;for(const n of t){const o=n._stacks;if(!o||o[s]===void 0||o[s][e]===void 0)return;delete o[s][e],o[s]._visualValues!==void 0&&o[s]._visualValues[e]!==void 0&&delete o[s]._visualValues[e]}}}const ti=i=>i==="reset"||i==="none",as=(i,t)=>t?i:Object.assign({},i),La=(i,t,e)=>i&&!t.hidden&&t._stacked&&{keys:An(e,!0),values:null};class nt{constructor(t,e){this.chart=t,this._ctx=t.ctx,this.index=e,this._cachedDataOpts={},this._cachedMeta=this.getMeta(),this._type=this._cachedMeta.type,this.options=void 0,this._parsing=!1,this._data=void 0,this._objectData=void 0,this._sharedOptions=void 0,this._drawStart=void 0,this._drawCount=void 0,this.enableOptionSharing=!1,this.supportsDecimation=!1,this.$context=void 0,this._syncList=[],this.datasetElementType=new.target.datasetElementType,this.dataElementType=new.target.dataElementType,this.initialize()}initialize(){const t=this._cachedMeta;this.configure(),this.linkScales(),t._stacked=Qe(t.vScale,t),this.addElements(),this.options.fill&&!this.chart.isPluginEnabled("filler")&&console.warn("Tried to use the 'fill' option without the 'Filler' plugin enabled. Please import and register the 'Filler' plugin and make sure it is not disabled in the options")}updateIndex(t){this.index!==t&&Yt(this._cachedMeta),this.index=t}linkScales(){const t=this.chart,e=this._cachedMeta,s=this.getDataset(),n=(d,u,f,g)=>d==="x"?u:d==="r"?g:f,o=e.xAxisID=D(s.xAxisID,Ze(t,"x")),a=e.yAxisID=D(s.yAxisID,Ze(t,"y")),r=e.rAxisID=D(s.rAxisID,Ze(t,"r")),l=e.indexAxis,c=e.iAxisID=n(l,o,a,r),h=e.vAxisID=n(l,a,o,r);e.xScale=this.getScaleForId(o),e.yScale=this.getScaleForId(a),e.rScale=this.getScaleForId(r),e.iScale=this.getScaleForId(c),e.vScale=this.getScaleForId(h)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(t){return this.chart.scales[t]}_getOtherScale(t){const e=this._cachedMeta;return t===e.iScale?e.vScale:e.iScale}reset(){this._update("reset")}_destroy(){const t=this._cachedMeta;this._data&&Hi(this._data,this),t._stacked&&Yt(t)}_dataCheck(){const t=this.getDataset(),e=t.data||(t.data=[]),s=this._data;if(T(e)){const n=this._cachedMeta;this._data=Pa(e,n)}else if(s!==e){if(s){Hi(s,this);const n=this._cachedMeta;Yt(n),n._parsed=[]}e&&Object.isExtensible(e)&&mo(e,this),this._syncList=[],this._data=e}}addElements(){const t=this._cachedMeta;this._dataCheck(),this.datasetElementType&&(t.dataset=new this.datasetElementType)}buildOrUpdateElements(t){const e=this._cachedMeta,s=this.getDataset();let n=!1;this._dataCheck();const o=e._stacked;e._stacked=Qe(e.vScale,e),e.stack!==s.stack&&(n=!0,Yt(e),e.stack=s.stack),this._resyncElements(t),(n||o!==e._stacked)&&(os(this,e._parsed),e._stacked=Qe(e.vScale,e))}configure(){const t=this.chart.config,e=t.datasetScopeKeys(this._type),s=t.getOptionScopes(this.getDataset(),e,!0);this.options=t.createResolver(s,this.getContext()),this._parsing=this.options.parsing,this._cachedDataOpts={}}parse(t,e){const{_cachedMeta:s,_data:n}=this,{iScale:o,_stacked:a}=s,r=o.axis;let l=t===0&&e===n.length?!0:s._sorted,c=t>0&&s._parsed[t-1],h,d,u;if(this._parsing===!1)s._parsed=n,s._sorted=!0,u=n;else{V(n[t])?u=this.parseArrayData(s,n,t,e):T(n[t])?u=this.parseObjectData(s,n,t,e):u=this.parsePrimitiveData(s,n,t,e);const f=()=>d[r]===null||c&&d[r]p||d=0;--u)if(!g()){this.updateRangeFromParsed(c,t,f,l);break}}return c}getAllParsedValues(t){const e=this._cachedMeta._parsed,s=[];let n,o,a;for(n=0,o=e.length;n=0&&tthis.getContext(s,n,e),p=c.resolveNamedOptions(u,f,g,d);return p.$shared&&(p.$shared=l,o[a]=Object.freeze(as(p,l))),p}_resolveAnimations(t,e,s){const n=this.chart,o=this._cachedDataOpts,a=`animation-${e}`,r=o[a];if(r)return r;let l;if(n.options.animation!==!1){const h=this.chart.config,d=h.datasetAnimationScopeKeys(this._type,e),u=h.getOptionScopes(this.getDataset(),d);l=h.createResolver(u,this.getContext(t,s,e))}const c=new Cn(n,l&&l.animations);return l&&l._cacheable&&(o[a]=Object.freeze(c)),c}getSharedOptions(t){if(t.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},t))}includeOptions(t,e){return!e||ti(t)||this.chart._animationsDisabled}_getSharedOptions(t,e){const s=this.resolveDataElementOptions(t,e),n=this._sharedOptions,o=this.getSharedOptions(s),a=this.includeOptions(e,o)||o!==n;return this.updateSharedOptions(o,e,s),{sharedOptions:o,includeOptions:a}}updateElement(t,e,s,n){ti(n)?Object.assign(t,s):this._resolveAnimations(e,n).update(t,s)}updateSharedOptions(t,e,s){t&&!ti(e)&&this._resolveAnimations(void 0,e).update(t,s)}_setStyle(t,e,s,n){t.active=n;const o=this.getStyle(e,n);this._resolveAnimations(e,s,n).update(t,{options:!n&&this.getSharedOptions(o)||o})}removeHoverStyle(t,e,s){this._setStyle(t,s,"active",!1)}setHoverStyle(t,e,s){this._setStyle(t,s,"active",!0)}_removeDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!1)}_setDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!0)}_resyncElements(t){const e=this._data,s=this._cachedMeta.data;for(const[r,l,c]of this._syncList)this[r](l,c);this._syncList=[];const n=s.length,o=e.length,a=Math.min(o,n);a&&this.parse(0,a),o>n?this._insertElements(n,o-n,t):o{for(c.length+=e,r=c.length-1;r>=a;r--)c[r]=c[r-e]};for(l(o),r=t;rn-o))}return i._cache.$bar}function Ia(i){const t=i.iScale,e=Ra(t,i.type);let s=t._length,n,o,a,r;const l=()=>{a===32767||a===-32768||(re(r)&&(s=Math.min(s,Math.abs(a-r)||s)),r=a)};for(n=0,o=e.length;n0?n[i-1]:null,r=iMath.abs(r)&&(l=r,c=a),t[e.axis]=c,t._custom={barStart:l,barEnd:c,start:n,end:o,min:a,max:r}}function On(i,t,e,s){return V(i)?Fa(i,t,e,s):t[e.axis]=e.parse(i,s),t}function rs(i,t,e,s){const n=i.iScale,o=i.vScale,a=n.getLabels(),r=n===o,l=[];let c,h,d,u;for(c=e,h=e+s;c=e?1:-1)}function Va(i){let t,e,s,n,o;return i.horizontal?(t=i.base>i.x,e="left",s="right"):(t=i.baseh.controller.options.grouped),o=s.options.stacked,a=[],r=this._cachedMeta.controller.getParsed(e),l=r&&r[s.axis],c=h=>{const d=h._parsed.find(f=>f[s.axis]===l),u=d&&d[h.vScale.axis];if(O(u)||isNaN(u))return!0};for(const h of n)if(!(e!==void 0&&c(h))&&((o===!1||a.indexOf(h.stack)===-1||o===void 0&&h.stack===void 0)&&a.push(h.stack),h.index===t))break;return a.length||a.push(void 0),a}_getStackCount(t){return this._getStacks(void 0,t).length}_getAxisCount(){return this._getAxis().length}getFirstScaleIdForIndexAxis(){const t=this.chart.scales,e=this.chart.options.indexAxis;return Object.keys(t).filter(s=>t[s].axis===e).shift()}_getAxis(){const t={},e=this.getFirstScaleIdForIndexAxis();for(const s of this.chart.data.datasets)t[D(this.chart.options.indexAxis==="x"?s.xAxisID:s.yAxisID,e)]=!0;return Object.keys(t)}_getStackIndex(t,e,s){const n=this._getStacks(t,s),o=e!==void 0?n.indexOf(e):-1;return o===-1?n.length-1:o}_getRuler(){const t=this.options,e=this._cachedMeta,s=e.iScale,n=[];let o,a;for(o=0,a=e.data.length;o=0;--s)e=Math.max(e,t[s].size(this.resolveDataElementOptions(s))/2);return e>0&&e}getLabelAndValue(t){const e=this._cachedMeta,s=this.chart.data.labels||[],{xScale:n,yScale:o}=e,a=this.getParsed(t),r=n.getLabelForValue(a.x),l=o.getLabelForValue(a.y),c=a._custom;return{label:s[t]||"",value:"("+r+", "+l+(c?", "+c:"")+")"}}update(t){const e=this._cachedMeta.data;this.updateElements(e,0,e.length,t)}updateElements(t,e,s,n){const o=n==="reset",{iScale:a,vScale:r}=this._cachedMeta,{sharedOptions:l,includeOptions:c}=this._getSharedOptions(e,n),h=a.axis,d=r.axis;for(let u=e;ule(v,r,l,!0)?1:Math.max(y,y*e,_,_*e),g=(v,y,_)=>le(v,r,l,!0)?-1:Math.min(y,y*e,_,_*e),p=f(0,c,d),m=f(j,h,u),b=g(R,c,d),x=g(R+j,h,u);s=(p-b)/2,n=(m-x)/2,o=-(p+b)/2,a=-(m+x)/2}return{ratioX:s,ratioY:n,offsetX:o,offsetY:a}}class Ot extends nt{constructor(t,e){super(t,e),this.enableOptionSharing=!0,this.innerRadius=void 0,this.outerRadius=void 0,this.offsetX=void 0,this.offsetY=void 0}linkScales(){}parse(t,e){const s=this.getDataset().data,n=this._cachedMeta;if(this._parsing===!1)n._parsed=s;else{let o=l=>+s[l];if(T(s[t])){const{key:l="value"}=this._parsing;o=c=>+_t(s[c],l)}let a,r;for(a=t,r=t+e;a0&&!isNaN(t)?F*(Math.abs(t)/e):0}getLabelAndValue(t){const e=this._cachedMeta,s=this.chart,n=s.data.labels||[],o=fe(e._parsed[t],s.options.locale);return{label:n[t]||"",value:o}}getMaxBorderWidth(t){let e=0;const s=this.chart;let n,o,a,r,l;if(!t){for(n=0,o=s.data.datasets.length;nt!=="spacing",_indexable:t=>t!=="spacing"&&!t.startsWith("borderDash")&&!t.startsWith("hoverBorderDash")}),M(Ot,"overrides",{aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const e=t.data;if(e.labels.length&&e.datasets.length){const{labels:{pointStyle:s,color:n}}=t.legend.options;return e.labels.map((o,a)=>{const l=t.getDatasetMeta(0).controller.getStyle(a);return{text:o,fillStyle:l.backgroundColor,strokeStyle:l.borderColor,fontColor:n,lineWidth:l.borderWidth,pointStyle:s,hidden:!t.getDataVisibility(a),index:a}})}return[]}},onClick(t,e,s){s.chart.toggleDataVisibility(e.index),s.chart.update()}}}});class Ce extends nt{initialize(){this.enableOptionSharing=!0,this.supportsDecimation=!0,super.initialize()}update(t){const e=this._cachedMeta,{dataset:s,data:n=[],_dataset:o}=e,a=this.chart._animationsDisabled;let{start:r,count:l}=dn(e,n,a);this._drawStart=r,this._drawCount=l,un(e)&&(r=0,l=n.length),s._chart=this.chart,s._datasetIndex=this.index,s._decimated=!!o._decimated,s.points=n;const c=this.resolveDatasetElementOptions(t);this.options.showLine||(c.borderWidth=0),c.segment=this.options.segment,this.updateElement(s,void 0,{animated:!a,options:c},t),this.updateElements(n,r,l,t)}updateElements(t,e,s,n){const o=n==="reset",{iScale:a,vScale:r,_stacked:l,_dataset:c}=this._cachedMeta,{sharedOptions:h,includeOptions:d}=this._getSharedOptions(e,n),u=a.axis,f=r.axis,{spanGaps:g,segment:p}=this.options,m=Wt(g)?g:Number.POSITIVE_INFINITY,b=this.chart._animationsDisabled||o||n==="none",x=e+s,v=t.length;let y=e>0&&this.getParsed(e-1);for(let _=0;_=x){S.skip=!0;continue}const w=this.getParsed(_),P=O(w[f]),C=S[u]=a.getPixelForValue(w[u],_),A=S[f]=o||P?r.getBasePixel():r.getPixelForValue(l?this.applyStack(r,w,l):w[f],_);S.skip=isNaN(C)||isNaN(A)||P,S.stop=_>0&&Math.abs(w[u]-y[u])>m,p&&(S.parsed=w,S.raw=c.data[_]),d&&(S.options=h||this.resolveDataElementOptions(_,k.active?"active":n)),b||this.updateElement(k,_,S,n),y=w}}getMaxOverflow(){const t=this._cachedMeta,e=t.dataset,s=e.options&&e.options.borderWidth||0,n=t.data||[];if(!n.length)return s;const o=n[0].size(this.resolveDataElementOptions(0)),a=n[n.length-1].size(this.resolveDataElementOptions(n.length-1));return Math.max(s,o,a)/2}draw(){const t=this._cachedMeta;t.dataset.updateControlPoints(this.chart.chartArea,t.iScale.axis),super.draw()}}M(Ce,"id","line"),M(Ce,"defaults",{datasetElementType:"line",dataElementType:"point",showLine:!0,spanGaps:!1}),M(Ce,"overrides",{scales:{_index_:{type:"category"},_value_:{type:"linear"}}});class oe extends nt{constructor(t,e){super(t,e),this.innerRadius=void 0,this.outerRadius=void 0}getLabelAndValue(t){const e=this._cachedMeta,s=this.chart,n=s.data.labels||[],o=fe(e._parsed[t].r,s.options.locale);return{label:n[t]||"",value:o}}parseObjectData(t,e,s,n){return yn.bind(this)(t,e,s,n)}update(t){const e=this._cachedMeta.data;this._updateRadius(),this.updateElements(e,0,e.length,t)}getMinMax(){const t=this._cachedMeta,e={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY};return t.data.forEach((s,n)=>{const o=this.getParsed(n).r;!isNaN(o)&&this.chart.getDataVisibility(n)&&(oe.max&&(e.max=o))}),e}_updateRadius(){const t=this.chart,e=t.chartArea,s=t.options,n=Math.min(e.right-e.left,e.bottom-e.top),o=Math.max(n/2,0),a=Math.max(s.cutoutPercentage?o/100*s.cutoutPercentage:1,0),r=(o-a)/t.getVisibleDatasetCount();this.outerRadius=o-r*this.index,this.innerRadius=this.outerRadius-r}updateElements(t,e,s,n){const o=n==="reset",a=this.chart,l=a.options.animation,c=this._cachedMeta.rScale,h=c.xCenter,d=c.yCenter,u=c.getIndexAngle(0)-.5*R;let f=u,g;const p=360/this.countVisibleElements();for(g=0;g{!isNaN(this.getParsed(n).r)&&this.chart.getDataVisibility(n)&&e++}),e}_computeAngle(t,e,s){return this.chart.getDataVisibility(t)?st(this.resolveDataElementOptions(t,e).angle||s):0}}M(oe,"id","polarArea"),M(oe,"defaults",{dataElementType:"arc",animation:{animateRotate:!0,animateScale:!0},animations:{numbers:{type:"number",properties:["x","y","startAngle","endAngle","innerRadius","outerRadius"]}},indexAxis:"r",startAngle:0}),M(oe,"overrides",{aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const e=t.data;if(e.labels.length&&e.datasets.length){const{labels:{pointStyle:s,color:n}}=t.legend.options;return e.labels.map((o,a)=>{const l=t.getDatasetMeta(0).controller.getStyle(a);return{text:o,fillStyle:l.backgroundColor,strokeStyle:l.borderColor,fontColor:n,lineWidth:l.borderWidth,pointStyle:s,hidden:!t.getDataVisibility(a),index:a}})}return[]}},onClick(t,e,s){s.chart.toggleDataVisibility(e.index),s.chart.update()}}},scales:{r:{type:"radialLinear",angleLines:{display:!1},beginAtZero:!0,grid:{circular:!0},pointLabels:{display:!1},startAngle:0}}});class ui extends Ot{}M(ui,"id","pie"),M(ui,"defaults",{cutout:0,rotation:0,circumference:360,radius:"100%"});class Ae extends nt{getLabelAndValue(t){const e=this._cachedMeta.vScale,s=this.getParsed(t);return{label:e.getLabels()[t],value:""+e.getLabelForValue(s[e.axis])}}parseObjectData(t,e,s,n){return yn.bind(this)(t,e,s,n)}update(t){const e=this._cachedMeta,s=e.dataset,n=e.data||[],o=e.iScale.getLabels();if(s.points=n,t!=="resize"){const a=this.resolveDatasetElementOptions(t);this.options.showLine||(a.borderWidth=0);const r={_loop:!0,_fullLoop:o.length===n.length,options:a};this.updateElement(s,void 0,r,t)}this.updateElements(n,0,n.length,t)}updateElements(t,e,s,n){const o=this._cachedMeta.rScale,a=n==="reset";for(let r=e;r0&&this.getParsed(e-1);for(let y=e;y0&&Math.abs(k[f]-v[f])>b,m&&(S.parsed=k,S.raw=c.data[y]),u&&(S.options=d||this.resolveDataElementOptions(y,_.active?"active":n)),x||this.updateElement(_,y,S,n),v=k}this.updateSharedOptions(d,n,h)}getMaxOverflow(){const t=this._cachedMeta,e=t.data||[];if(!this.options.showLine){let r=0;for(let l=e.length-1;l>=0;--l)r=Math.max(r,e[l].size(this.resolveDataElementOptions(l))/2);return r>0&&r}const s=t.dataset,n=s.options&&s.options.borderWidth||0;if(!e.length)return n;const o=e[0].size(this.resolveDataElementOptions(0)),a=e[e.length-1].size(this.resolveDataElementOptions(e.length-1));return Math.max(n,o,a)/2}}M(Oe,"id","scatter"),M(Oe,"defaults",{datasetElementType:!1,dataElementType:"point",showLine:!1,fill:!1}),M(Oe,"overrides",{interaction:{mode:"point"},scales:{x:{type:"linear"},y:{type:"linear"}}});var $a=Object.freeze({__proto__:null,BarController:Pe,BubbleController:De,DoughnutController:Ot,LineController:Ce,PieController:ui,PolarAreaController:oe,RadarController:Ae,ScatterController:Oe});function Pt(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class Ei{constructor(t){M(this,"options");this.options=t||{}}static override(t){Object.assign(Ei.prototype,t)}init(){}formats(){return Pt()}parse(){return Pt()}format(){return Pt()}add(){return Pt()}diff(){return Pt()}startOf(){return Pt()}endOf(){return Pt()}}var Ya={_date:Ei};function Ua(i,t,e,s){const{controller:n,data:o,_sorted:a}=i,r=n._cachedMeta.iScale,l=i.dataset&&i.dataset.options?i.dataset.options.spanGaps:null;if(r&&t===r.axis&&t!=="r"&&a&&o.length){const c=r._reversePixels?go:ft;if(s){if(n._sharedOptions){const h=o[0],d=typeof h.getRange=="function"&&h.getRange(t);if(d){const u=c(o,t,e-d),f=c(o,t,e+d);return{lo:u.lo,hi:f.hi}}}}else{const h=c(o,t,e);if(l){const{vScale:d}=n._cachedMeta,{_parsed:u}=i,f=u.slice(0,h.lo+1).reverse().findIndex(p=>!O(p[d.axis]));h.lo-=Math.max(0,f);const g=u.slice(h.hi).findIndex(p=>!O(p[d.axis]));h.hi+=Math.max(0,g)}return h}}return{lo:0,hi:o.length-1}}function Xe(i,t,e,s,n){const o=i.getSortedVisibleDatasetMetas(),a=e[t];for(let r=0,l=o.length;r{l[a]&&l[a](t[e],n)&&(o.push({element:l,datasetIndex:c,index:h}),r=r||l.inRange(t.x,t.y,n))}),s&&!r?[]:o}var qa={modes:{index(i,t,e,s){const n=Ct(t,i),o=e.axis||"x",a=e.includeInvisible||!1,r=e.intersect?ii(i,n,o,s,a):si(i,n,o,!1,s,a),l=[];return r.length?(i.getSortedVisibleDatasetMetas().forEach(c=>{const h=r[0].index,d=c.data[h];d&&!d.skip&&l.push({element:d,datasetIndex:c.index,index:h})}),l):[]},dataset(i,t,e,s){const n=Ct(t,i),o=e.axis||"xy",a=e.includeInvisible||!1;let r=e.intersect?ii(i,n,o,s,a):si(i,n,o,!1,s,a);if(r.length>0){const l=r[0].datasetIndex,c=i.getDatasetMeta(l).data;r=[];for(let h=0;he.pos===t)}function ds(i,t){return i.filter(e=>Tn.indexOf(e.pos)===-1&&e.box.axis===t)}function Xt(i,t){return i.sort((e,s)=>{const n=t?s:e,o=t?e:s;return n.weight===o.weight?n.index-o.index:n.weight-o.weight})}function Ja(i){const t=[];let e,s,n,o,a,r;for(e=0,s=(i||[]).length;ec.box.fullSize),!0),s=Xt(Ut(t,"left"),!0),n=Xt(Ut(t,"right")),o=Xt(Ut(t,"top"),!0),a=Xt(Ut(t,"bottom")),r=ds(t,"x"),l=ds(t,"y");return{fullSize:e,leftAndTop:s.concat(o),rightAndBottom:n.concat(l).concat(a).concat(r),chartArea:Ut(t,"chartArea"),vertical:s.concat(n).concat(l),horizontal:o.concat(a).concat(r)}}function us(i,t,e,s){return Math.max(i[e],t[e])+Math.max(i[s],t[s])}function Ln(i,t){i.top=Math.max(i.top,t.top),i.left=Math.max(i.left,t.left),i.bottom=Math.max(i.bottom,t.bottom),i.right=Math.max(i.right,t.right)}function er(i,t,e,s){const{pos:n,box:o}=e,a=i.maxPadding;if(!T(n)){e.size&&(i[n]-=e.size);const d=s[e.stack]||{size:0,count:1};d.size=Math.max(d.size,e.horizontal?o.height:o.width),e.size=d.size/d.count,i[n]+=e.size}o.getPadding&&Ln(a,o.getPadding());const r=Math.max(0,t.outerWidth-us(a,i,"left","right")),l=Math.max(0,t.outerHeight-us(a,i,"top","bottom")),c=r!==i.w,h=l!==i.h;return i.w=r,i.h=l,e.horizontal?{same:c,other:h}:{same:h,other:c}}function ir(i){const t=i.maxPadding;function e(s){const n=Math.max(t[s]-i[s],0);return i[s]+=n,n}i.y+=e("top"),i.x+=e("left"),e("right"),e("bottom")}function sr(i,t){const e=t.maxPadding;function s(n){const o={left:0,top:0,right:0,bottom:0};return n.forEach(a=>{o[a]=Math.max(t[a],e[a])}),o}return s(i?["left","right"]:["top","bottom"])}function Jt(i,t,e,s){const n=[];let o,a,r,l,c,h;for(o=0,a=i.length,c=0;o{typeof p.beforeLayout=="function"&&p.beforeLayout()});const h=l.reduce((p,m)=>m.box.options&&m.box.options.display===!1?p:p+1,0)||1,d=Object.freeze({outerWidth:t,outerHeight:e,padding:n,availableWidth:o,availableHeight:a,vBoxMaxWidth:o/2/h,hBoxMaxHeight:a/2}),u=Object.assign({},n);Ln(u,J(s));const f=Object.assign({maxPadding:u,w:o,h:a,x:n.left,y:n.top},n),g=Za(l.concat(c),d);Jt(r.fullSize,f,d,g),Jt(l,f,d,g),Jt(c,f,d,g)&&Jt(l,f,d,g),ir(f),fs(r.leftAndTop,f,d,g),f.x+=f.w,f.y+=f.h,fs(r.rightAndBottom,f,d,g),i.chartArea={left:f.left,top:f.top,right:f.left+f.w,bottom:f.top+f.h,height:f.h,width:f.w},I(r.chartArea,p=>{const m=p.box;Object.assign(m,i.chartArea),m.update(f.w,f.h,{left:0,top:0,right:0,bottom:0})})}};class Rn{acquireContext(t,e){}releaseContext(t){return!1}addEventListener(t,e,s){}removeEventListener(t,e,s){}getDevicePixelRatio(){return 1}getMaximumSize(t,e,s,n){return e=Math.max(0,e||t.width),s=s||t.height,{width:e,height:Math.max(0,n?Math.floor(e/n):s)}}isAttached(t){return!0}updateConfig(t){}}class nr extends Rn{acquireContext(t){return t&&t.getContext&&t.getContext("2d")||null}updateConfig(t){t.options.animation=!1}}const Te="$chartjs",or={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},gs=i=>i===null||i==="";function ar(i,t){const e=i.style,s=i.getAttribute("height"),n=i.getAttribute("width");if(i[Te]={initial:{height:s,width:n,style:{display:e.display,height:e.height,width:e.width}}},e.display=e.display||"block",e.boxSizing=e.boxSizing||"border-box",gs(n)){const o=Ji(i,"width");o!==void 0&&(i.width=o)}if(gs(s))if(i.style.height==="")i.height=i.width/(t||2);else{const o=Ji(i,"height");o!==void 0&&(i.height=o)}return i}const In=ra?{passive:!0}:!1;function rr(i,t,e){i&&i.addEventListener(t,e,In)}function lr(i,t,e){i&&i.canvas&&i.canvas.removeEventListener(t,e,In)}function cr(i,t){const e=or[i.type]||i.type,{x:s,y:n}=Ct(i,t);return{type:e,chart:t,native:i,x:s!==void 0?s:null,y:n!==void 0?n:null}}function We(i,t){for(const e of i)if(e===t||e.contains(t))return!0}function hr(i,t,e){const s=i.canvas,n=new MutationObserver(o=>{let a=!1;for(const r of o)a=a||We(r.addedNodes,s),a=a&&!We(r.removedNodes,s);a&&e()});return n.observe(document,{childList:!0,subtree:!0}),n}function dr(i,t,e){const s=i.canvas,n=new MutationObserver(o=>{let a=!1;for(const r of o)a=a||We(r.removedNodes,s),a=a&&!We(r.addedNodes,s);a&&e()});return n.observe(document,{childList:!0,subtree:!0}),n}const he=new Map;let ps=0;function En(){const i=window.devicePixelRatio;i!==ps&&(ps=i,he.forEach((t,e)=>{e.currentDevicePixelRatio!==i&&t()}))}function ur(i,t){he.size||window.addEventListener("resize",En),he.set(i,t)}function fr(i){he.delete(i),he.size||window.removeEventListener("resize",En)}function gr(i,t,e){const s=i.canvas,n=s&&Ii(s);if(!n)return;const o=hn((r,l)=>{const c=n.clientWidth;e(r,l),c{const l=r[0],c=l.contentRect.width,h=l.contentRect.height;c===0&&h===0||o(c,h)});return a.observe(n),ur(i,o),a}function ni(i,t,e){e&&e.disconnect(),t==="resize"&&fr(i)}function pr(i,t,e){const s=i.canvas,n=hn(o=>{i.ctx!==null&&e(cr(o,i))},i);return rr(s,t,n),n}class mr extends Rn{acquireContext(t,e){const s=t&&t.getContext&&t.getContext("2d");return s&&s.canvas===t?(ar(t,e),s):null}releaseContext(t){const e=t.canvas;if(!e[Te])return!1;const s=e[Te].initial;["height","width"].forEach(o=>{const a=s[o];O(a)?e.removeAttribute(o):e.setAttribute(o,a)});const n=s.style||{};return Object.keys(n).forEach(o=>{e.style[o]=n[o]}),e.width=e.width,delete e[Te],!0}addEventListener(t,e,s){this.removeEventListener(t,e);const n=t.$proxies||(t.$proxies={}),a={attach:hr,detach:dr,resize:gr}[e]||pr;n[e]=a(t,e,s)}removeEventListener(t,e){const s=t.$proxies||(t.$proxies={}),n=s[e];if(!n)return;({attach:ni,detach:ni,resize:ni}[e]||lr)(t,e,n),s[e]=void 0}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(t,e,s,n){return aa(t,e,s,n)}isAttached(t){const e=t&&Ii(t);return!!(e&&e.isConnected)}}function br(i){return!Ri()||typeof OffscreenCanvas<"u"&&i instanceof OffscreenCanvas?nr:mr}class ot{constructor(){M(this,"x");M(this,"y");M(this,"active",!1);M(this,"options");M(this,"$animations")}tooltipPosition(t){const{x:e,y:s}=this.getProps(["x","y"],t);return{x:e,y:s}}hasValue(){return Wt(this.x)&&Wt(this.y)}getProps(t,e){const s=this.$animations;if(!e||!s)return this;const n={};return t.forEach(o=>{n[o]=s[o]&&s[o].active()?s[o]._to:this[o]}),n}}M(ot,"defaults",{}),M(ot,"defaultRoutes");function xr(i,t){const e=i.options.ticks,s=_r(i),n=Math.min(e.maxTicksLimit||s,s),o=e.major.enabled?vr(t):[],a=o.length,r=o[0],l=o[a-1],c=[];if(a>n)return Mr(t,c,o,a/n),c;const h=yr(o,t,n);if(a>0){let d,u;const f=a>1?Math.round((l-r)/(a-1)):null;for(ye(t,c,h,O(f)?0:r-f,r),d=0,u=a-1;dn)return l}return Math.max(n,1)}function vr(i){const t=[];let e,s;for(e=0,s=i.length;ei==="left"?"right":i==="right"?"left":i,ms=(i,t,e)=>t==="top"||t==="left"?i[t]+e:i[t]-e,bs=(i,t)=>Math.min(t||i,i);function xs(i,t){const e=[],s=i.length/t,n=i.length;let o=0;for(;oa+r)))return l}function Pr(i,t){I(i,e=>{const s=e.gc,n=s.length/2;let o;if(n>t){for(o=0;os?s:e,s=n&&e>s?e:s,{min:et(e,et(s,e)),max:et(s,et(e,s))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const t=this.chart.data;return this.options.labels||(this.isHorizontal()?t.xLabels:t.yLabels)||t.labels||[]}getLabelItems(t=this.chart.chartArea){return this._labelItems||(this._labelItems=this._computeLabelItems(t))}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){z(this.options.beforeUpdate,[this])}update(t,e,s){const{beginAtZero:n,grace:o,ticks:a}=this.options,r=a.sampleSize;this.beforeUpdate(),this.maxWidth=t,this.maxHeight=e,this._margins=s=Object.assign({left:0,right:0,top:0,bottom:0},s),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+s.left+s.right:this.height+s.top+s.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=Bo(this,o,n),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const l=r=o||s<=1||!this.isHorizontal()){this.labelRotation=n;return}const h=this._getLabelSizes(),d=h.widest.width,u=h.highest.height,f=Y(this.chart.width-d,0,this.maxWidth);r=t.offset?this.maxWidth/s:f/(s-1),d+6>r&&(r=f/(s-(t.offset?.5:1)),l=this.maxHeight-Kt(t.grid)-e.padding-_s(t.title,this.chart.options.font),c=Math.sqrt(d*d+u*u),a=wi(Math.min(Math.asin(Y((h.highest.height+6)/r,-1,1)),Math.asin(Y(l/c,-1,1))-Math.asin(Y(u/c,-1,1)))),a=Math.max(n,Math.min(o,a))),this.labelRotation=a}afterCalculateLabelRotation(){z(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){z(this.options.beforeFit,[this])}fit(){const t={width:0,height:0},{chart:e,options:{ticks:s,title:n,grid:o}}=this,a=this._isVisible(),r=this.isHorizontal();if(a){const l=_s(n,e.options.font);if(r?(t.width=this.maxWidth,t.height=Kt(o)+l):(t.height=this.maxHeight,t.width=Kt(o)+l),s.display&&this.ticks.length){const{first:c,last:h,widest:d,highest:u}=this._getLabelSizes(),f=s.padding*2,g=st(this.labelRotation),p=Math.cos(g),m=Math.sin(g);if(r){const b=s.mirror?0:m*d.width+p*u.height;t.height=Math.min(this.maxHeight,t.height+b+f)}else{const b=s.mirror?0:p*d.width+m*u.height;t.width=Math.min(this.maxWidth,t.width+b+f)}this._calculatePadding(c,h,m,p)}}this._handleMargins(),r?(this.width=this._length=e.width-this._margins.left-this._margins.right,this.height=t.height):(this.width=t.width,this.height=this._length=e.height-this._margins.top-this._margins.bottom)}_calculatePadding(t,e,s,n){const{ticks:{align:o,padding:a},position:r}=this.options,l=this.labelRotation!==0,c=r!=="top"&&this.axis==="x";if(this.isHorizontal()){const h=this.getPixelForTick(0)-this.left,d=this.right-this.getPixelForTick(this.ticks.length-1);let u=0,f=0;l?c?(u=n*t.width,f=s*e.height):(u=s*t.height,f=n*e.width):o==="start"?f=e.width:o==="end"?u=t.width:o!=="inner"&&(u=t.width/2,f=e.width/2),this.paddingLeft=Math.max((u-h+a)*this.width/(this.width-h),0),this.paddingRight=Math.max((f-d+a)*this.width/(this.width-d),0)}else{let h=e.height/2,d=t.height/2;o==="start"?(h=0,d=t.height):o==="end"&&(h=e.height,d=0),this.paddingTop=h+a,this.paddingBottom=d+a}}_handleMargins(){this._margins&&(this._margins.left=Math.max(this.paddingLeft,this._margins.left),this._margins.top=Math.max(this.paddingTop,this._margins.top),this._margins.right=Math.max(this.paddingRight,this._margins.right),this._margins.bottom=Math.max(this.paddingBottom,this._margins.bottom))}afterFit(){z(this.options.afterFit,[this])}isHorizontal(){const{axis:t,position:e}=this.options;return e==="top"||e==="bottom"||t==="x"}isFullSize(){return this.options.fullSize}_convertTicksToLabels(t){this.beforeTickToLabelConversion(),this.generateTickLabels(t);let e,s;for(e=0,s=t.length;e({width:a[P]||0,height:r[P]||0});return{first:w(0),last:w(e-1),widest:w(k),highest:w(S),widths:a,heights:r}}getLabelForValue(t){return t}getPixelForValue(t,e){return NaN}getValueForPixel(t){}getPixelForTick(t){const e=this.ticks;return t<0||t>e.length-1?null:this.getPixelForValue(e[t].value)}getPixelForDecimal(t){this._reversePixels&&(t=1-t);const e=this._startPixel+t*this._length;return fo(this._alignToPixels?wt(this.chart,e,0):e)}getDecimalForPixel(t){const e=(t-this._startPixel)/this._length;return this._reversePixels?1-e:e}getBasePixel(){return this.getPixelForValue(this.getBaseValue())}getBaseValue(){const{min:t,max:e}=this;return t<0&&e<0?e:t>0&&e>0?t:0}getContext(t){const e=this.ticks||[];if(t>=0&&tr*n?r/s:l/n:l*n0}_computeGridLineItems(t){const e=this.axis,s=this.chart,n=this.options,{grid:o,position:a,border:r}=n,l=o.offset,c=this.isHorizontal(),d=this.ticks.length+(l?1:0),u=Kt(o),f=[],g=r.setContext(this.getContext()),p=g.display?g.width:0,m=p/2,b=function(B){return wt(s,B,p)};let x,v,y,_,k,S,w,P,C,A,L,U;if(a==="top")x=b(this.bottom),S=this.bottom-u,P=x-m,A=b(t.top)+m,U=t.bottom;else if(a==="bottom")x=b(this.top),A=t.top,U=b(t.bottom)-m,S=x+m,P=this.top+u;else if(a==="left")x=b(this.right),k=this.right-u,w=x-m,C=b(t.left)+m,L=t.right;else if(a==="right")x=b(this.left),C=t.left,L=b(t.right)-m,k=x+m,w=this.left+u;else if(e==="x"){if(a==="center")x=b((t.top+t.bottom)/2+.5);else if(T(a)){const B=Object.keys(a)[0],H=a[B];x=b(this.chart.scales[B].getPixelForValue(H))}A=t.top,U=t.bottom,S=x+m,P=S+u}else if(e==="y"){if(a==="center")x=b((t.left+t.right)/2);else if(T(a)){const B=Object.keys(a)[0],H=a[B];x=b(this.chart.scales[B].getPixelForValue(H))}k=x-m,w=k-u,C=t.left,L=t.right}const tt=D(n.ticks.maxTicksLimit,d),E=Math.max(1,Math.ceil(d/tt));for(v=0;v0&&(kt-=Mt/2);break}ge={left:kt,top:$t,width:Mt+Ft.width,height:jt+Ft.height,color:E.backdropColor}}m.push({label:y,font:P,textOffset:L,options:{rotation:p,color:H,strokeColor:it,strokeWidth:X,textAlign:zt,textBaseline:U,translation:[_,k],backdrop:ge}})}return m}_getXAxisLabelAlignment(){const{position:t,ticks:e}=this.options;if(-st(this.labelRotation))return t==="top"?"left":"right";let n="center";return e.align==="start"?n="left":e.align==="end"?n="right":e.align==="inner"&&(n="inner"),n}_getYAxisLabelAlignment(t){const{position:e,ticks:{crossAlign:s,mirror:n,padding:o}}=this.options,a=this._getLabelSizes(),r=t+o,l=a.widest.width;let c,h;return e==="left"?n?(h=this.right+o,s==="near"?c="left":s==="center"?(c="center",h+=l/2):(c="right",h+=l)):(h=this.right-r,s==="near"?c="right":s==="center"?(c="center",h-=l/2):(c="left",h=this.left)):e==="right"?n?(h=this.left+o,s==="near"?c="right":s==="center"?(c="center",h-=l/2):(c="left",h-=l)):(h=this.left+r,s==="near"?c="left":s==="center"?(c="center",h+=l/2):(c="right",h=this.right)):c="right",{textAlign:c,x:h}}_computeLabelArea(){if(this.options.ticks.mirror)return;const t=this.chart,e=this.options.position;if(e==="left"||e==="right")return{top:0,left:this.left,bottom:t.height,right:this.right};if(e==="top"||e==="bottom")return{top:this.top,left:0,bottom:this.bottom,right:t.width}}drawBackground(){const{ctx:t,options:{backgroundColor:e},left:s,top:n,width:o,height:a}=this;e&&(t.save(),t.fillStyle=e,t.fillRect(s,n,o,a),t.restore())}getLineWidthForValue(t){const e=this.options.grid;if(!this._isVisible()||!e.display)return 0;const n=this.ticks.findIndex(o=>o.value===t);return n>=0?e.setContext(this.getContext(n)).lineWidth:0}drawGrid(t){const e=this.options.grid,s=this.ctx,n=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(t));let o,a;const r=(l,c,h)=>{!h.width||!h.color||(s.save(),s.lineWidth=h.width,s.strokeStyle=h.color,s.setLineDash(h.borderDash||[]),s.lineDashOffset=h.borderDashOffset,s.beginPath(),s.moveTo(l.x,l.y),s.lineTo(c.x,c.y),s.stroke(),s.restore())};if(e.display)for(o=0,a=n.length;o{this.draw(o)}}]:[{z:s,draw:o=>{this.drawBackground(),this.drawGrid(o),this.drawTitle()}},{z:n,draw:()=>{this.drawBorder()}},{z:e,draw:o=>{this.drawLabels(o)}}]}getMatchingVisibleMetas(t){const e=this.chart.getSortedVisibleDatasetMetas(),s=this.axis+"AxisID",n=[];let o,a;for(o=0,a=e.length;o{const s=e.split("."),n=s.pop(),o=[i].concat(s).join("."),a=t[e].split("."),r=a.pop(),l=a.join(".");W.route(o,n,l,r)})}function Rr(i){return"id"in i&&"defaults"in i}class Ir{constructor(){this.controllers=new ve(nt,"datasets",!0),this.elements=new ve(ot,"elements"),this.plugins=new ve(Object,"plugins"),this.scales=new ve(Et,"scales"),this._typedRegistries=[this.controllers,this.scales,this.elements]}add(...t){this._each("register",t)}remove(...t){this._each("unregister",t)}addControllers(...t){this._each("register",t,this.controllers)}addElements(...t){this._each("register",t,this.elements)}addPlugins(...t){this._each("register",t,this.plugins)}addScales(...t){this._each("register",t,this.scales)}getController(t){return this._get(t,this.controllers,"controller")}getElement(t){return this._get(t,this.elements,"element")}getPlugin(t){return this._get(t,this.plugins,"plugin")}getScale(t){return this._get(t,this.scales,"scale")}removeControllers(...t){this._each("unregister",t,this.controllers)}removeElements(...t){this._each("unregister",t,this.elements)}removePlugins(...t){this._each("unregister",t,this.plugins)}removeScales(...t){this._each("unregister",t,this.scales)}_each(t,e,s){[...e].forEach(n=>{const o=s||this._getRegistryForType(n);s||o.isForType(n)||o===this.plugins&&n.id?this._exec(t,o,n):I(n,a=>{const r=s||this._getRegistryForType(a);this._exec(t,r,a)})})}_exec(t,e,s){const n=Si(t);z(s["before"+n],[],s),e[t](s),z(s["after"+n],[],s)}_getRegistryForType(t){for(let e=0;eo.filter(r=>!a.some(l=>r.plugin.id===l.plugin.id));this._notify(n(e,s),t,"stop"),this._notify(n(s,e),t,"start")}}function zr(i){const t={},e=[],s=Object.keys(rt.plugins.items);for(let o=0;o1&&ys(i[0].toLowerCase());if(s)return s}throw new Error(`Cannot determine type of '${i}' axis. Please provide 'axis' or 'position' option.`)}function vs(i,t,e){if(e[t+"AxisID"]===i)return{axis:t}}function jr(i,t){if(t.data&&t.data.datasets){const e=t.data.datasets.filter(s=>s.xAxisID===i||s.yAxisID===i);if(e.length)return vs(i,"x",e[0])||vs(i,"y",e[0])}return{}}function $r(i,t){const e=Rt[i.type]||{scales:{}},s=t.scales||{},n=fi(i.type,t),o=Object.create(null);return Object.keys(s).forEach(a=>{const r=s[a];if(!T(r))return console.error(`Invalid scale configuration for scale: ${a}`);if(r._proxy)return console.warn(`Ignoring resolver passed as options for scale: ${a}`);const l=gi(a,r,jr(a,i),W.scales[r.type]),c=Nr(l,n),h=e.scales||{};o[a]=ee(Object.create(null),[{axis:l},r,h[l],h[c]])}),i.data.datasets.forEach(a=>{const r=a.type||i.type,l=a.indexAxis||fi(r,t),h=(Rt[r]||{}).scales||{};Object.keys(h).forEach(d=>{const u=Wr(d,l),f=a[u+"AxisID"]||u;o[f]=o[f]||Object.create(null),ee(o[f],[{axis:u},s[f],h[d]])})}),Object.keys(o).forEach(a=>{const r=o[a];ee(r,[W.scales[r.type],W.scale])}),o}function zn(i){const t=i.options||(i.options={});t.plugins=D(t.plugins,{}),t.scales=$r(i,t)}function Fn(i){return i=i||{},i.datasets=i.datasets||[],i.labels=i.labels||[],i}function Yr(i){return i=i||{},i.data=Fn(i.data),zn(i),i}const Ms=new Map,Bn=new Set;function Me(i,t){let e=Ms.get(i);return e||(e=t(),Ms.set(i,e),Bn.add(e)),e}const Gt=(i,t,e)=>{const s=_t(t,e);s!==void 0&&i.add(s)};class Ur{constructor(t){this._config=Yr(t),this._scopeCache=new Map,this._resolverCache=new Map}get platform(){return this._config.platform}get type(){return this._config.type}set type(t){this._config.type=t}get data(){return this._config.data}set data(t){this._config.data=Fn(t)}get options(){return this._config.options}set options(t){this._config.options=t}get plugins(){return this._config.plugins}update(){const t=this._config;this.clearCache(),zn(t)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(t){return Me(t,()=>[[`datasets.${t}`,""]])}datasetAnimationScopeKeys(t,e){return Me(`${t}.transition.${e}`,()=>[[`datasets.${t}.transitions.${e}`,`transitions.${e}`],[`datasets.${t}`,""]])}datasetElementScopeKeys(t,e){return Me(`${t}-${e}`,()=>[[`datasets.${t}.elements.${e}`,`datasets.${t}`,`elements.${e}`,""]])}pluginScopeKeys(t){const e=t.id,s=this.type;return Me(`${s}-plugin-${e}`,()=>[[`plugins.${e}`,...t.additionalOptionScopes||[]]])}_cachedScopes(t,e){const s=this._scopeCache;let n=s.get(t);return(!n||e)&&(n=new Map,s.set(t,n)),n}getOptionScopes(t,e,s){const{options:n,type:o}=this,a=this._cachedScopes(t,s),r=a.get(e);if(r)return r;const l=new Set;e.forEach(h=>{t&&(l.add(t),h.forEach(d=>Gt(l,t,d))),h.forEach(d=>Gt(l,n,d)),h.forEach(d=>Gt(l,Rt[o]||{},d)),h.forEach(d=>Gt(l,W,d)),h.forEach(d=>Gt(l,hi,d))});const c=Array.from(l);return c.length===0&&c.push(Object.create(null)),Bn.has(e)&&a.set(e,c),c}chartOptionScopes(){const{options:t,type:e}=this;return[t,Rt[e]||{},W.datasets[e]||{},{type:e},W,hi]}resolveNamedOptions(t,e,s,n=[""]){const o={$shared:!0},{resolver:a,subPrefixes:r}=ks(this._resolverCache,t,n);let l=a;if(Kr(a,e)){o.$shared=!1,s=yt(s)?s():s;const c=this.createResolver(t,s,r);l=Nt(a,s,c)}for(const c of e)o[c]=l[c];return o}createResolver(t,e,s=[""],n){const{resolver:o}=ks(this._resolverCache,t,s);return T(e)?Nt(o,e,void 0,n):o}}function ks(i,t,e){let s=i.get(t);s||(s=new Map,i.set(t,s));const n=e.join();let o=s.get(n);return o||(o={resolver:Oi(t,e),subPrefixes:e.filter(r=>!r.toLowerCase().includes("hover"))},s.set(n,o)),o}const Xr=i=>T(i)&&Object.getOwnPropertyNames(i).some(t=>yt(i[t]));function Kr(i,t){const{isScriptable:e,isIndexable:s}=mn(i);for(const n of t){const o=e(n),a=s(n),r=(a||o)&&i[n];if(o&&(yt(r)||Xr(r))||a&&V(r))return!0}return!1}var Gr="4.5.0";const qr=["top","bottom","left","right","chartArea"];function Ss(i,t){return i==="top"||i==="bottom"||qr.indexOf(i)===-1&&t==="x"}function ws(i,t){return function(e,s){return e[i]===s[i]?e[t]-s[t]:e[i]-s[i]}}function Ps(i){const t=i.chart,e=t.options.animation;t.notifyPlugins("afterRender"),z(e&&e.onComplete,[i],t)}function Jr(i){const t=i.chart,e=t.options.animation;z(e&&e.onProgress,[i],t)}function Vn(i){return Ri()&&typeof i=="string"?i=document.getElementById(i):i&&i.length&&(i=i[0]),i&&i.canvas&&(i=i.canvas),i}const Le={},Ds=i=>{const t=Vn(i);return Object.values(Le).filter(e=>e.canvas===t).pop()};function Qr(i,t,e){const s=Object.keys(i);for(const n of s){const o=+n;if(o>=t){const a=i[n];delete i[n],(e>0||o>t)&&(i[o+e]=a)}}}function Zr(i,t,e,s){return!e||i.type==="mouseout"?null:s?t:i}class pt{static register(...t){rt.add(...t),Cs()}static unregister(...t){rt.remove(...t),Cs()}constructor(t,e){const s=this.config=new Ur(e),n=Vn(t),o=Ds(n);if(o)throw new Error("Canvas is already in use. Chart with ID '"+o.id+"' must be destroyed before the canvas with ID '"+o.canvas.id+"' can be reused.");const a=s.createResolver(s.chartOptionScopes(),this.getContext());this.platform=new(s.platform||br(n)),this.platform.updateConfig(s);const r=this.platform.acquireContext(n,a.aspectRatio),l=r&&r.canvas,c=l&&l.height,h=l&&l.width;if(this.id=Zn(),this.ctx=r,this.canvas=l,this.width=h,this.height=c,this._options=a,this._aspectRatio=this.aspectRatio,this._layers=[],this._metasets=[],this._stacks=void 0,this.boxes=[],this.currentDevicePixelRatio=void 0,this.chartArea=void 0,this._active=[],this._lastEvent=void 0,this._listeners={},this._responsiveListeners=void 0,this._sortedMetasets=[],this.scales={},this._plugins=new Er,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=bo(d=>this.update(d),a.resizeDelay||0),this._dataChanges=[],Le[this.id]=this,!r||!l){console.error("Failed to create chart: can't acquire context from the given item");return}ht.listen(this,"complete",Ps),ht.listen(this,"progress",Jr),this._initialize(),this.attached&&this.update()}get aspectRatio(){const{options:{aspectRatio:t,maintainAspectRatio:e},width:s,height:n,_aspectRatio:o}=this;return O(t)?e&&o?o:n?s/n:null:t}get data(){return this.config.data}set data(t){this.config.data=t}get options(){return this._options}set options(t){this.config.options=t}get registry(){return rt}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():qi(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return Xi(this.canvas,this.ctx),this}stop(){return ht.stop(this),this}resize(t,e){ht.running(this)?this._resizeBeforeDraw={width:t,height:e}:this._resize(t,e)}_resize(t,e){const s=this.options,n=this.canvas,o=s.maintainAspectRatio&&this.aspectRatio,a=this.platform.getMaximumSize(n,t,e,o),r=s.devicePixelRatio||this.platform.getDevicePixelRatio(),l=this.width?"resize":"attach";this.width=a.width,this.height=a.height,this._aspectRatio=this.aspectRatio,qi(this,r,!0)&&(this.notifyPlugins("resize",{size:a}),z(s.onResize,[this,a],this),this.attached&&this._doResize(l)&&this.render())}ensureScalesHaveIDs(){const e=this.options.scales||{};I(e,(s,n)=>{s.id=n})}buildOrUpdateScales(){const t=this.options,e=t.scales,s=this.scales,n=Object.keys(s).reduce((a,r)=>(a[r]=!1,a),{});let o=[];e&&(o=o.concat(Object.keys(e).map(a=>{const r=e[a],l=gi(a,r),c=l==="r",h=l==="x";return{options:r,dposition:c?"chartArea":h?"bottom":"left",dtype:c?"radialLinear":h?"category":"linear"}}))),I(o,a=>{const r=a.options,l=r.id,c=gi(l,r),h=D(r.type,a.dtype);(r.position===void 0||Ss(r.position,c)!==Ss(a.dposition))&&(r.position=a.dposition),n[l]=!0;let d=null;if(l in s&&s[l].type===h)d=s[l];else{const u=rt.getScale(h);d=new u({id:l,type:h,ctx:this.ctx,chart:this}),s[d.id]=d}d.init(r,t)}),I(n,(a,r)=>{a||delete s[r]}),I(s,a=>{q.configure(this,a,a.options),q.addBox(this,a)})}_updateMetasets(){const t=this._metasets,e=this.data.datasets.length,s=t.length;if(t.sort((n,o)=>n.index-o.index),s>e){for(let n=e;ne.length&&delete this._stacks,t.forEach((s,n)=>{e.filter(o=>o===s._dataset).length===0&&this._destroyDatasetMeta(n)})}buildOrUpdateControllers(){const t=[],e=this.data.datasets;let s,n;for(this._removeUnreferencedMetasets(),s=0,n=e.length;s{this.getDatasetMeta(e).controller.reset()},this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(t){const e=this.config;e.update();const s=this._options=e.createResolver(e.chartOptionScopes(),this.getContext()),n=this._animationsDisabled=!s.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),this.notifyPlugins("beforeUpdate",{mode:t,cancelable:!0})===!1)return;const o=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let a=0;for(let c=0,h=this.data.datasets.length;c{c.reset()}),this._updateDatasets(t),this.notifyPlugins("afterUpdate",{mode:t}),this._layers.sort(ws("z","_idx"));const{_active:r,_lastEvent:l}=this;l?this._eventHandler(l,!0):r.length&&this._updateHoverStyles(r,r,!0),this.render()}_updateScales(){I(this.scales,t=>{q.removeBox(this,t)}),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const t=this.options,e=new Set(Object.keys(this._listeners)),s=new Set(t.events);(!Bi(e,s)||!!this._responsiveListeners!==t.responsive)&&(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:t}=this,e=this._getUniformDataChanges()||[];for(const{method:s,start:n,count:o}of e){const a=s==="_removeElements"?-o:o;Qr(t,n,a)}}_getUniformDataChanges(){const t=this._dataChanges;if(!t||!t.length)return;this._dataChanges=[];const e=this.data.datasets.length,s=o=>new Set(t.filter(a=>a[0]===o).map((a,r)=>r+","+a.splice(1).join(","))),n=s(0);for(let o=1;oo.split(",")).map(o=>({method:o[1],start:+o[2],count:+o[3]}))}_updateLayout(t){if(this.notifyPlugins("beforeLayout",{cancelable:!0})===!1)return;q.update(this,this.width,this.height,t);const e=this.chartArea,s=e.width<=0||e.height<=0;this._layers=[],I(this.boxes,n=>{s&&n.position==="chartArea"||(n.configure&&n.configure(),this._layers.push(...n._layers()))},this),this._layers.forEach((n,o)=>{n._idx=o}),this.notifyPlugins("afterLayout")}_updateDatasets(t){if(this.notifyPlugins("beforeDatasetsUpdate",{mode:t,cancelable:!0})!==!1){for(let e=0,s=this.data.datasets.length;e=0;--e)this._drawDataset(t[e]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(t){const e=this.ctx,s={meta:t,index:t.index,cancelable:!0},n=Dn(this,t);this.notifyPlugins("beforeDatasetDraw",s)!==!1&&(n&&$e(e,n),t.controller.draw(),n&&Ye(e),s.cancelable=!1,this.notifyPlugins("afterDatasetDraw",s))}isPointInArea(t){return gt(t,this.chartArea,this._minPadding)}getElementsAtEventForMode(t,e,s,n){const o=qa.modes[e];return typeof o=="function"?o(this,t,s,n):[]}getDatasetMeta(t){const e=this.data.datasets[t],s=this._metasets;let n=s.filter(o=>o&&o._dataset===e).pop();return n||(n={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:e&&e.order||0,index:t,_dataset:e,_parsed:[],_sorted:!1},s.push(n)),n}getContext(){return this.$context||(this.$context=vt(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(t){const e=this.data.datasets[t];if(!e)return!1;const s=this.getDatasetMeta(t);return typeof s.hidden=="boolean"?!s.hidden:!e.hidden}setDatasetVisibility(t,e){const s=this.getDatasetMeta(t);s.hidden=!e}toggleDataVisibility(t){this._hiddenIndices[t]=!this._hiddenIndices[t]}getDataVisibility(t){return!this._hiddenIndices[t]}_updateVisibility(t,e,s){const n=s?"show":"hide",o=this.getDatasetMeta(t),a=o.controller._resolveAnimations(void 0,n);re(e)?(o.data[e].hidden=!s,this.update()):(this.setDatasetVisibility(t,s),a.update(o,{visible:s}),this.update(r=>r.datasetIndex===t?n:void 0))}hide(t,e){this._updateVisibility(t,e,!1)}show(t,e){this._updateVisibility(t,e,!0)}_destroyDatasetMeta(t){const e=this._metasets[t];e&&e.controller&&e.controller._destroy(),delete this._metasets[t]}_stop(){let t,e;for(this.stop(),ht.remove(this),t=0,e=this.data.datasets.length;t{e.addEventListener(this,o,a),t[o]=a},n=(o,a,r)=>{o.offsetX=a,o.offsetY=r,this._eventHandler(o)};I(this.options.events,o=>s(o,n))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const t=this._responsiveListeners,e=this.platform,s=(l,c)=>{e.addEventListener(this,l,c),t[l]=c},n=(l,c)=>{t[l]&&(e.removeEventListener(this,l,c),delete t[l])},o=(l,c)=>{this.canvas&&this.resize(l,c)};let a;const r=()=>{n("attach",r),this.attached=!0,this.resize(),s("resize",o),s("detach",a)};a=()=>{this.attached=!1,n("resize",o),this._stop(),this._resize(0,0),s("attach",r)},e.isAttached(this.canvas)?r():a()}unbindEvents(){I(this._listeners,(t,e)=>{this.platform.removeEventListener(this,e,t)}),this._listeners={},I(this._responsiveListeners,(t,e)=>{this.platform.removeEventListener(this,e,t)}),this._responsiveListeners=void 0}updateHoverStyle(t,e,s){const n=s?"set":"remove";let o,a,r,l;for(e==="dataset"&&(o=this.getDatasetMeta(t[0].datasetIndex),o.controller["_"+n+"DatasetHoverStyle"]()),r=0,l=t.length;r{const r=this.getDatasetMeta(o);if(!r)throw new Error("No dataset found at index "+o);return{datasetIndex:o,element:r.data[a],index:a}});!Ee(s,e)&&(this._active=s,this._lastEvent=null,this._updateHoverStyles(s,e))}notifyPlugins(t,e,s){return this._plugins.notify(this,t,e,s)}isPluginEnabled(t){return this._plugins._cache.filter(e=>e.plugin.id===t).length===1}_updateHoverStyles(t,e,s){const n=this.options.hover,o=(l,c)=>l.filter(h=>!c.some(d=>h.datasetIndex===d.datasetIndex&&h.index===d.index)),a=o(e,t),r=s?t:o(t,e);a.length&&this.updateHoverStyle(a,n.mode,!1),r.length&&n.mode&&this.updateHoverStyle(r,n.mode,!0)}_eventHandler(t,e){const s={event:t,replay:e,cancelable:!0,inChartArea:this.isPointInArea(t)},n=a=>(a.options.events||this.options.events).includes(t.native.type);if(this.notifyPlugins("beforeEvent",s,n)===!1)return;const o=this._handleEvent(t,e,s.inChartArea);return s.cancelable=!1,this.notifyPlugins("afterEvent",s,n),(o||s.changed)&&this.render(),this}_handleEvent(t,e,s){const{_active:n=[],options:o}=this,a=e,r=this._getActiveElements(t,n,s,a),l=oo(t),c=Zr(t,this._lastEvent,s,l);s&&(this._lastEvent=null,z(o.onHover,[t,r,this],this),l&&z(o.onClick,[t,r,this],this));const h=!Ee(r,n);return(h||e)&&(this._active=r,this._updateHoverStyles(r,n,e)),this._lastEvent=c,h}_getActiveElements(t,e,s,n){if(t.type==="mouseout")return[];if(!s)return e;const o=this.options.hover;return this.getElementsAtEventForMode(t,o.mode,o,n)}}M(pt,"defaults",W),M(pt,"instances",Le),M(pt,"overrides",Rt),M(pt,"registry",rt),M(pt,"version",Gr),M(pt,"getChart",Ds);function Cs(){return I(pt.instances,i=>i._plugins.invalidate())}function tl(i,t,e){const{startAngle:s,x:n,y:o,outerRadius:a,innerRadius:r,options:l}=t,{borderWidth:c,borderJoinStyle:h}=l,d=Math.min(c/a,G(s-e));if(i.beginPath(),i.arc(n,o,a-c/2,s+d/2,e-d/2),r>0){const u=Math.min(c/r,G(s-e));i.arc(n,o,r+c/2,e-u/2,s+u/2,!0)}else{const u=Math.min(c/2,a*G(s-e));if(h==="round")i.arc(n,o,u,e-R/2,s+R/2,!0);else if(h==="bevel"){const f=2*u*u,g=-f*Math.cos(e+R/2)+n,p=-f*Math.sin(e+R/2)+o,m=f*Math.cos(s+R/2)+n,b=f*Math.sin(s+R/2)+o;i.lineTo(g,p),i.lineTo(m,b)}}i.closePath(),i.moveTo(0,0),i.rect(0,0,i.canvas.width,i.canvas.height),i.clip("evenodd")}function el(i,t,e){const{startAngle:s,pixelMargin:n,x:o,y:a,outerRadius:r,innerRadius:l}=t;let c=n/r;i.beginPath(),i.arc(o,a,r,s-c,e+c),l>n?(c=n/l,i.arc(o,a,l,e+c,s-c,!0)):i.arc(o,a,n,e+j,s-j),i.closePath(),i.clip()}function il(i){return Ai(i,["outerStart","outerEnd","innerStart","innerEnd"])}function sl(i,t,e,s){const n=il(i.options.borderRadius),o=(e-t)/2,a=Math.min(o,s*t/2),r=l=>{const c=(e-Math.min(o,l))*s/2;return Y(l,0,Math.min(o,c))};return{outerStart:r(n.outerStart),outerEnd:r(n.outerEnd),innerStart:Y(n.innerStart,0,a),innerEnd:Y(n.innerEnd,0,a)}}function Bt(i,t,e,s){return{x:e+i*Math.cos(t),y:s+i*Math.sin(t)}}function Ne(i,t,e,s,n,o){const{x:a,y:r,startAngle:l,pixelMargin:c,innerRadius:h}=t,d=Math.max(t.outerRadius+s+e-c,0),u=h>0?h+s+e+c:0;let f=0;const g=n-l;if(s){const E=h>0?h-s:0,B=d>0?d-s:0,H=(E+B)/2,it=H!==0?g*H/(H+s):g;f=(g-it)/2}const p=Math.max(.001,g*d-e/R)/d,m=(g-p)/2,b=l+m+f,x=n-m-f,{outerStart:v,outerEnd:y,innerStart:_,innerEnd:k}=sl(t,u,d,x-b),S=d-v,w=d-y,P=b+v/S,C=x-y/w,A=u+_,L=u+k,U=b+_/A,tt=x-k/L;if(i.beginPath(),o){const E=(P+C)/2;if(i.arc(a,r,d,P,E),i.arc(a,r,d,E,C),y>0){const X=Bt(w,C,a,r);i.arc(X.x,X.y,y,C,x+j)}const B=Bt(L,x,a,r);if(i.lineTo(B.x,B.y),k>0){const X=Bt(L,tt,a,r);i.arc(X.x,X.y,k,x+j,tt+Math.PI)}const H=(x-k/u+(b+_/u))/2;if(i.arc(a,r,u,x-k/u,H,!0),i.arc(a,r,u,H,b+_/u,!0),_>0){const X=Bt(A,U,a,r);i.arc(X.x,X.y,_,U+Math.PI,b-j)}const it=Bt(S,b,a,r);if(i.lineTo(it.x,it.y),v>0){const X=Bt(S,P,a,r);i.arc(X.x,X.y,v,b-j,P)}}else{i.moveTo(a,r);const E=Math.cos(P)*d+a,B=Math.sin(P)*d+r;i.lineTo(E,B);const H=Math.cos(C)*d+a,it=Math.sin(C)*d+r;i.lineTo(H,it)}i.closePath()}function nl(i,t,e,s,n){const{fullCircles:o,startAngle:a,circumference:r}=t;let l=t.endAngle;if(o){Ne(i,t,e,s,l,n);for(let c=0;c=R&&f===0&&h!=="miter"&&tl(i,t,p),o||(Ne(i,t,e,s,p,n),i.stroke())}class Qt extends ot{constructor(e){super();M(this,"circumference");M(this,"endAngle");M(this,"fullCircles");M(this,"innerRadius");M(this,"outerRadius");M(this,"pixelMargin");M(this,"startAngle");this.options=void 0,this.circumference=void 0,this.startAngle=void 0,this.endAngle=void 0,this.innerRadius=void 0,this.outerRadius=void 0,this.pixelMargin=0,this.fullCircles=0,e&&Object.assign(this,e)}inRange(e,s,n){const o=this.getProps(["x","y"],n),{angle:a,distance:r}=an(o,{x:e,y:s}),{startAngle:l,endAngle:c,innerRadius:h,outerRadius:d,circumference:u}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],n),f=(this.options.spacing+this.options.borderWidth)/2,g=D(u,c-l),p=le(a,l,c)&&l!==c,m=g>=F||p,b=ut(r,h+f,d+f);return m&&b}getCenterPoint(e){const{x:s,y:n,startAngle:o,endAngle:a,innerRadius:r,outerRadius:l}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius"],e),{offset:c,spacing:h}=this.options,d=(o+a)/2,u=(r+l+h+c)/2;return{x:s+Math.cos(d)*u,y:n+Math.sin(d)*u}}tooltipPosition(e){return this.getCenterPoint(e)}draw(e){const{options:s,circumference:n}=this,o=(s.offset||0)/4,a=(s.spacing||0)/2,r=s.circular;if(this.pixelMargin=s.borderAlign==="inner"?.33:0,this.fullCircles=n>F?Math.floor(n/F):0,n===0||this.innerRadius<0||this.outerRadius<0)return;e.save();const l=(this.startAngle+this.endAngle)/2;e.translate(Math.cos(l)*o,Math.sin(l)*o);const c=1-Math.sin(Math.min(R,n||0)),h=o*c;e.fillStyle=s.backgroundColor,e.strokeStyle=s.borderColor,nl(e,this,h,a,r),ol(e,this,h,a,r),e.restore()}}M(Qt,"id","arc"),M(Qt,"defaults",{borderAlign:"center",borderColor:"#fff",borderDash:[],borderDashOffset:0,borderJoinStyle:void 0,borderRadius:0,borderWidth:2,offset:0,spacing:0,angle:void 0,circular:!0,selfJoin:!1}),M(Qt,"defaultRoutes",{backgroundColor:"backgroundColor"}),M(Qt,"descriptors",{_scriptable:!0,_indexable:e=>e!=="borderDash"});function Wn(i,t,e=t){i.lineCap=D(e.borderCapStyle,t.borderCapStyle),i.setLineDash(D(e.borderDash,t.borderDash)),i.lineDashOffset=D(e.borderDashOffset,t.borderDashOffset),i.lineJoin=D(e.borderJoinStyle,t.borderJoinStyle),i.lineWidth=D(e.borderWidth,t.borderWidth),i.strokeStyle=D(e.borderColor,t.borderColor)}function al(i,t,e){i.lineTo(e.x,e.y)}function rl(i){return i.stepped?Ao:i.tension||i.cubicInterpolationMode==="monotone"?Oo:al}function Nn(i,t,e={}){const s=i.length,{start:n=0,end:o=s-1}=e,{start:a,end:r}=t,l=Math.max(n,a),c=Math.min(o,r),h=nr&&o>r;return{count:s,start:l,loop:t.loop,ilen:c(a+(c?r-y:y))%o,v=()=>{p!==m&&(i.lineTo(h,m),i.lineTo(h,p),i.lineTo(h,b))};for(l&&(f=n[x(0)],i.moveTo(f.x,f.y)),u=0;u<=r;++u){if(f=n[x(u)],f.skip)continue;const y=f.x,_=f.y,k=y|0;k===g?(_m&&(m=_),h=(d*h+y)/++d):(v(),i.lineTo(y,_),g=k,d=0,p=m=_),b=_}v()}function pi(i){const t=i.options,e=t.borderDash&&t.borderDash.length;return!i._decimated&&!i._loop&&!t.tension&&t.cubicInterpolationMode!=="monotone"&&!t.stepped&&!e?cl:ll}function hl(i){return i.stepped?la:i.tension||i.cubicInterpolationMode==="monotone"?ca:At}function dl(i,t,e,s){let n=t._path;n||(n=t._path=new Path2D,t.path(n,e,s)&&n.closePath()),Wn(i,t.options),i.stroke(n)}function ul(i,t,e,s){const{segments:n,options:o}=t,a=pi(t);for(const r of n)Wn(i,o,r.style),i.beginPath(),a(i,t,r,{start:e,end:e+s-1})&&i.closePath(),i.stroke()}const fl=typeof Path2D=="function";function gl(i,t,e,s){fl&&!t.options.segment?dl(i,t,e,s):ul(i,t,e,s)}class bt extends ot{constructor(t){super(),this.animated=!0,this.options=void 0,this._chart=void 0,this._loop=void 0,this._fullLoop=void 0,this._path=void 0,this._points=void 0,this._segments=void 0,this._decimated=!1,this._pointsUpdated=!1,this._datasetIndex=void 0,t&&Object.assign(this,t)}updateControlPoints(t,e){const s=this.options;if((s.tension||s.cubicInterpolationMode==="monotone")&&!s.stepped&&!this._pointsUpdated){const n=s.spanGaps?this._loop:this._fullLoop;ta(this._points,s,t,n,e),this._pointsUpdated=!0}}set points(t){this._points=t,delete this._segments,delete this._path,this._pointsUpdated=!1}get points(){return this._points}get segments(){return this._segments||(this._segments=pa(this,this.options.segment))}first(){const t=this.segments,e=this.points;return t.length&&e[t[0].start]}last(){const t=this.segments,e=this.points,s=t.length;return s&&e[t[s-1].end]}interpolate(t,e){const s=this.options,n=t[e],o=this.points,a=Pn(this,{property:e,start:n,end:n});if(!a.length)return;const r=[],l=hl(s);let c,h;for(c=0,h=a.length;ct!=="borderDash"&&t!=="fill"});function As(i,t,e,s){const n=i.options,{[e]:o}=i.getProps([e],s);return Math.abs(t-o)i.replace("rgb(","rgba(").replace(")",", 0.5)"));function jn(i){return mi[i%mi.length]}function $n(i){return Os[i%Os.length]}function vl(i,t){return i.borderColor=jn(t),i.backgroundColor=$n(t),++t}function Ml(i,t){return i.backgroundColor=i.data.map(()=>jn(t++)),t}function kl(i,t){return i.backgroundColor=i.data.map(()=>$n(t++)),t}function Sl(i){let t=0;return(e,s)=>{const n=i.getDatasetMeta(s).controller;n instanceof Ot?t=Ml(e,t):n instanceof oe?t=kl(e,t):n&&(t=vl(e,t))}}function Ts(i){let t;for(t in i)if(i[t].borderColor||i[t].backgroundColor)return!0;return!1}function wl(i){return i&&(i.borderColor||i.backgroundColor)}function Pl(){return W.borderColor!=="rgba(0,0,0,0.1)"||W.backgroundColor!=="rgba(0,0,0,0.1)"}var Dl={id:"colors",defaults:{enabled:!0,forceOverride:!1},beforeLayout(i,t,e){if(!e.enabled)return;const{data:{datasets:s},options:n}=i.config,{elements:o}=n,a=Ts(s)||wl(n)||o&&Ts(o)||Pl();if(!e.forceOverride&&a)return;const r=Sl(i);s.forEach(r)}};function Cl(i,t,e,s,n){const o=n.samples||s;if(o>=e)return i.slice(t,t+e);const a=[],r=(e-2)/(o-2);let l=0;const c=t+e-1;let h=t,d,u,f,g,p;for(a[l++]=i[h],d=0;df&&(f=g,u=i[x],p=x);a[l++]=u,h=p}return a[l++]=i[c],a}function Al(i,t,e,s){let n=0,o=0,a,r,l,c,h,d,u,f,g,p;const m=[],b=t+e-1,x=i[t].x,y=i[b].x-x;for(a=t;ap&&(p=c,u=a),n=(o*n+r.x)/++o;else{const k=a-1;if(!O(d)&&!O(u)){const S=Math.min(d,u),w=Math.max(d,u);S!==f&&S!==k&&m.push({...i[S],x:n}),w!==f&&w!==k&&m.push({...i[w],x:n})}a>0&&k!==f&&m.push(i[k]),m.push(r),h=_,o=0,g=p=c,d=u=f=a}}return m}function Yn(i){if(i._decimated){const t=i._data;delete i._decimated,delete i._data,Object.defineProperty(i,"data",{configurable:!0,enumerable:!0,writable:!0,value:t})}}function Ls(i){i.data.datasets.forEach(t=>{Yn(t)})}function Ol(i,t){const e=t.length;let s=0,n;const{iScale:o}=i,{min:a,max:r,minDefined:l,maxDefined:c}=o.getUserBounds();return l&&(s=Y(ft(t,o.axis,a).lo,0,e-1)),c?n=Y(ft(t,o.axis,r).hi+1,s,e)-s:n=e-s,{start:s,count:n}}var Tl={id:"decimation",defaults:{algorithm:"min-max",enabled:!1},beforeElementsUpdate:(i,t,e)=>{if(!e.enabled){Ls(i);return}const s=i.width;i.data.datasets.forEach((n,o)=>{const{_data:a,indexAxis:r}=n,l=i.getDatasetMeta(o),c=a||n.data;if(qt([r,i.options.indexAxis])==="y"||!l.controller.supportsDecimation)return;const h=i.scales[l.xAxisID];if(h.type!=="linear"&&h.type!=="time"||i.options.parsing)return;let{start:d,count:u}=Ol(l,c);const f=e.threshold||4*s;if(u<=f){Yn(n);return}O(a)&&(n._data=c,delete n.data,Object.defineProperty(n,"data",{configurable:!0,enumerable:!0,get:function(){return this._decimated},set:function(p){this._data=p}}));let g;switch(e.algorithm){case"lttb":g=Cl(c,d,u,s,e);break;case"min-max":g=Al(c,d,u,s);break;default:throw new Error(`Unsupported decimation algorithm '${e.algorithm}'`)}n._decimated=g})},destroy(i){Ls(i)}};function Ll(i,t,e){const s=i.segments,n=i.points,o=t.points,a=[];for(const r of s){let{start:l,end:c}=r;c=Ke(l,c,n);const h=bi(e,n[l],n[c],r.loop);if(!t.segments){a.push({source:r,target:h,start:n[l],end:n[c]});continue}const d=Pn(t,h);for(const u of d){const f=bi(e,o[u.start],o[u.end],u.loop),g=wn(r,n,f);for(const p of g)a.push({source:p,target:u,start:{[e]:Rs(h,f,"start",Math.max)},end:{[e]:Rs(h,f,"end",Math.min)}})}}return a}function bi(i,t,e,s){if(s)return;let n=t[i],o=e[i];return i==="angle"&&(n=G(n),o=G(o)),{property:i,start:n,end:o}}function Rl(i,t){const{x:e=null,y:s=null}=i||{},n=t.points,o=[];return t.segments.forEach(({start:a,end:r})=>{r=Ke(a,r,n);const l=n[a],c=n[r];s!==null?(o.push({x:l.x,y:s}),o.push({x:c.x,y:s})):e!==null&&(o.push({x:e,y:l.y}),o.push({x:e,y:c.y}))}),o}function Ke(i,t,e){for(;t>i;t--){const s=e[t];if(!isNaN(s.x)&&!isNaN(s.y))break}return t}function Rs(i,t,e,s){return i&&t?s(i[e],t[e]):i?i[e]:t?t[e]:0}function Un(i,t){let e=[],s=!1;return V(i)?(s=!0,e=i):e=Rl(i,t),e.length?new bt({points:e,options:{tension:0},_loop:s,_fullLoop:s}):null}function Is(i){return i&&i.fill!==!1}function Il(i,t,e){let n=i[t].fill;const o=[t];let a;if(!e)return n;for(;n!==!1&&o.indexOf(n)===-1;){if(!N(n))return n;if(a=i[n],!a)return!1;if(a.visible)return n;o.push(n),n=a.fill}return!1}function El(i,t,e){const s=Vl(i);if(T(s))return isNaN(s.value)?!1:s;let n=parseFloat(s);return N(n)&&Math.floor(n)===n?zl(s[0],t,n,e):["origin","start","end","stack","shape"].indexOf(s)>=0&&s}function zl(i,t,e,s){return(i==="-"||i==="+")&&(e=t+e),e===t||e<0||e>=s?!1:e}function Fl(i,t){let e=null;return i==="start"?e=t.bottom:i==="end"?e=t.top:T(i)?e=t.getPixelForValue(i.value):t.getBasePixel&&(e=t.getBasePixel()),e}function Bl(i,t,e){let s;return i==="start"?s=e:i==="end"?s=t.options.reverse?t.min:t.max:T(i)?s=i.value:s=t.getBaseValue(),s}function Vl(i){const t=i.options,e=t.fill;let s=D(e&&e.target,e);return s===void 0&&(s=!!t.backgroundColor),s===!1||s===null?!1:s===!0?"origin":s}function Wl(i){const{scale:t,index:e,line:s}=i,n=[],o=s.segments,a=s.points,r=Nl(t,e);r.push(Un({x:null,y:t.bottom},s));for(let l=0;l=0;--a){const r=n[a].$filler;r&&(r.line.updateControlPoints(o,r.axis),s&&r.fill&&ri(i.ctx,r,o))}},beforeDatasetsDraw(i,t,e){if(e.drawTime!=="beforeDatasetsDraw")return;const s=i.getSortedVisibleDatasetMetas();for(let n=s.length-1;n>=0;--n){const o=s[n].$filler;Is(o)&&ri(i.ctx,o,i.chartArea)}},beforeDatasetDraw(i,t,e){const s=t.meta.$filler;!Is(s)||e.drawTime!=="beforeDatasetDraw"||ri(i.ctx,s,i.chartArea)},defaults:{propagate:!0,drawTime:"beforeDatasetDraw"}};const Bs=(i,t)=>{let{boxHeight:e=t,boxWidth:s=t}=i;return i.usePointStyle&&(e=Math.min(e,t),s=i.pointStyleWidth||Math.min(s,t)),{boxWidth:s,boxHeight:e,itemHeight:Math.max(t,e)}},Ql=(i,t)=>i!==null&&t!==null&&i.datasetIndex===t.datasetIndex&&i.index===t.index;class Vs extends ot{constructor(t){super(),this._added=!1,this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1,this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this.legendItems=void 0,this.columnSizes=void 0,this.lineWidths=void 0,this.maxHeight=void 0,this.maxWidth=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.height=void 0,this.width=void 0,this._margins=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e,s){this.maxWidth=t,this.maxHeight=e,this._margins=s,this.setDimensions(),this.buildLabels(),this.fit()}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=this._margins.left,this.right=this.width):(this.height=this.maxHeight,this.top=this._margins.top,this.bottom=this.height)}buildLabels(){const t=this.options.labels||{};let e=z(t.generateLabels,[this.chart],this)||[];t.filter&&(e=e.filter(s=>t.filter(s,this.chart.data))),t.sort&&(e=e.sort((s,n)=>t.sort(s,n,this.chart.data))),this.options.reverse&&e.reverse(),this.legendItems=e}fit(){const{options:t,ctx:e}=this;if(!t.display){this.width=this.height=0;return}const s=t.labels,n=$(s.font),o=n.size,a=this._computeTitleHeight(),{boxWidth:r,itemHeight:l}=Bs(s,o);let c,h;e.font=n.string,this.isHorizontal()?(c=this.maxWidth,h=this._fitRows(a,o,r,l)+10):(h=this.maxHeight,c=this._fitCols(a,n,r,l)+10),this.width=Math.min(c,t.maxWidth||this.maxWidth),this.height=Math.min(h,t.maxHeight||this.maxHeight)}_fitRows(t,e,s,n){const{ctx:o,maxWidth:a,options:{labels:{padding:r}}}=this,l=this.legendHitBoxes=[],c=this.lineWidths=[0],h=n+r;let d=t;o.textAlign="left",o.textBaseline="middle";let u=-1,f=-h;return this.legendItems.forEach((g,p)=>{const m=s+e/2+o.measureText(g.text).width;(p===0||c[c.length-1]+m+2*r>a)&&(d+=h,c[c.length-(p>0?0:1)]=0,f+=h,u++),l[p]={left:0,top:f,row:u,width:m,height:n},c[c.length-1]+=m+r}),d}_fitCols(t,e,s,n){const{ctx:o,maxHeight:a,options:{labels:{padding:r}}}=this,l=this.legendHitBoxes=[],c=this.columnSizes=[],h=a-t;let d=r,u=0,f=0,g=0,p=0;return this.legendItems.forEach((m,b)=>{const{itemWidth:x,itemHeight:v}=Zl(s,e,o,m,n);b>0&&f+v+2*r>h&&(d+=u+r,c.push({width:u,height:f}),g+=u+r,p++,u=f=0),l[b]={left:g,top:f,col:p,width:x,height:v},u=Math.max(u,x),f+=v+r}),d+=u,c.push({width:u,height:f}),d}adjustHitBoxes(){if(!this.options.display)return;const t=this._computeTitleHeight(),{legendHitBoxes:e,options:{align:s,labels:{padding:n},rtl:o}}=this,a=Vt(o,this.left,this.width);if(this.isHorizontal()){let r=0,l=K(s,this.left+n,this.right-this.lineWidths[r]);for(const c of e)r!==c.row&&(r=c.row,l=K(s,this.left+n,this.right-this.lineWidths[r])),c.top+=this.top+t+n,c.left=a.leftForLtr(a.x(l),c.width),l+=c.width+n}else{let r=0,l=K(s,this.top+t+n,this.bottom-this.columnSizes[r].height);for(const c of e)c.col!==r&&(r=c.col,l=K(s,this.top+t+n,this.bottom-this.columnSizes[r].height)),c.top=l,c.left+=this.left+n,c.left=a.leftForLtr(a.x(c.left),c.width),l+=c.height+n}}isHorizontal(){return this.options.position==="top"||this.options.position==="bottom"}draw(){if(this.options.display){const t=this.ctx;$e(t,this),this._draw(),Ye(t)}}_draw(){const{options:t,columnSizes:e,lineWidths:s,ctx:n}=this,{align:o,labels:a}=t,r=W.color,l=Vt(t.rtl,this.left,this.width),c=$(a.font),{padding:h}=a,d=c.size,u=d/2;let f;this.drawTitle(),n.textAlign=l.textAlign("left"),n.textBaseline="middle",n.lineWidth=.5,n.font=c.string;const{boxWidth:g,boxHeight:p,itemHeight:m}=Bs(a,d),b=function(k,S,w){if(isNaN(g)||g<=0||isNaN(p)||p<0)return;n.save();const P=D(w.lineWidth,1);if(n.fillStyle=D(w.fillStyle,r),n.lineCap=D(w.lineCap,"butt"),n.lineDashOffset=D(w.lineDashOffset,0),n.lineJoin=D(w.lineJoin,"miter"),n.lineWidth=P,n.strokeStyle=D(w.strokeStyle,r),n.setLineDash(D(w.lineDash,[])),a.usePointStyle){const C={radius:p*Math.SQRT2/2,pointStyle:w.pointStyle,rotation:w.rotation,borderWidth:P},A=l.xPlus(k,g/2),L=S+u;gn(n,C,A,L,a.pointStyleWidth&&g)}else{const C=S+Math.max((d-p)/2,0),A=l.leftForLtr(k,g),L=Tt(w.borderRadius);n.beginPath(),Object.values(L).some(U=>U!==0)?ce(n,{x:A,y:C,w:g,h:p,radius:L}):n.rect(A,C,g,p),n.fill(),P!==0&&n.stroke()}n.restore()},x=function(k,S,w){It(n,w.text,k,S+m/2,c,{strikethrough:w.hidden,textAlign:l.textAlign(w.textAlign)})},v=this.isHorizontal(),y=this._computeTitleHeight();v?f={x:K(o,this.left+h,this.right-s[0]),y:this.top+h+y,line:0}:f={x:this.left+h,y:K(o,this.top+y+h,this.bottom-e[0].height),line:0},Mn(this.ctx,t.textDirection);const _=m+h;this.legendItems.forEach((k,S)=>{n.strokeStyle=k.fontColor,n.fillStyle=k.fontColor;const w=n.measureText(k.text).width,P=l.textAlign(k.textAlign||(k.textAlign=a.textAlign)),C=g+u+w;let A=f.x,L=f.y;l.setWidth(this.width),v?S>0&&A+C+h>this.right&&(L=f.y+=_,f.line++,A=f.x=K(o,this.left+h,this.right-s[f.line])):S>0&&L+_>this.bottom&&(A=f.x=A+e[f.line].width+h,f.line++,L=f.y=K(o,this.top+y+h,this.bottom-e[f.line].height));const U=l.x(A);if(b(U,L,k),A=xo(P,A+g+u,v?A+C:this.right,t.rtl),x(l.x(A),L,k),v)f.x+=C+h;else if(typeof k.text!="string"){const tt=c.lineHeight;f.y+=Kn(k,tt)+h}else f.y+=_}),kn(this.ctx,t.textDirection)}drawTitle(){const t=this.options,e=t.title,s=$(e.font),n=J(e.padding);if(!e.display)return;const o=Vt(t.rtl,this.left,this.width),a=this.ctx,r=e.position,l=s.size/2,c=n.top+l;let h,d=this.left,u=this.width;if(this.isHorizontal())u=Math.max(...this.lineWidths),h=this.top+c,d=K(t.align,d,this.right-u);else{const g=this.columnSizes.reduce((p,m)=>Math.max(p,m.height),0);h=c+K(t.align,this.top,this.bottom-g-t.labels.padding-this._computeTitleHeight())}const f=K(r,d,d+u);a.textAlign=o.textAlign(Di(r)),a.textBaseline="middle",a.strokeStyle=e.color,a.fillStyle=e.color,a.font=s.string,It(a,e.text,f,h,s)}_computeTitleHeight(){const t=this.options.title,e=$(t.font),s=J(t.padding);return t.display?e.lineHeight+s.height:0}_getLegendItemAt(t,e){let s,n,o;if(ut(t,this.left,this.right)&&ut(e,this.top,this.bottom)){for(o=this.legendHitBoxes,s=0;so.length>a.length?o:a)),t+e.size/2+s.measureText(n).width}function ec(i,t,e){let s=i;return typeof t.text!="string"&&(s=Kn(t,e)),s}function Kn(i,t){const e=i.text?i.text.length:0;return t*e}function ic(i,t){return!!((i==="mousemove"||i==="mouseout")&&(t.onHover||t.onLeave)||t.onClick&&(i==="click"||i==="mouseup"))}var sc={id:"legend",_element:Vs,start(i,t,e){const s=i.legend=new Vs({ctx:i.ctx,options:e,chart:i});q.configure(i,s,e),q.addBox(i,s)},stop(i){q.removeBox(i,i.legend),delete i.legend},beforeUpdate(i,t,e){const s=i.legend;q.configure(i,s,e),s.options=e},afterUpdate(i){const t=i.legend;t.buildLabels(),t.adjustHitBoxes()},afterEvent(i,t){t.replay||i.legend.handleEvent(t.event)},defaults:{display:!0,position:"top",align:"center",fullSize:!0,reverse:!1,weight:1e3,onClick(i,t,e){const s=t.datasetIndex,n=e.chart;n.isDatasetVisible(s)?(n.hide(s),t.hidden=!0):(n.show(s),t.hidden=!1)},onHover:null,onLeave:null,labels:{color:i=>i.chart.options.color,boxWidth:40,padding:10,generateLabels(i){const t=i.data.datasets,{labels:{usePointStyle:e,pointStyle:s,textAlign:n,color:o,useBorderRadius:a,borderRadius:r}}=i.legend.options;return i._getSortedDatasetMetas().map(l=>{const c=l.controller.getStyle(e?0:void 0),h=J(c.borderWidth);return{text:t[l.index].label,fillStyle:c.backgroundColor,fontColor:o,hidden:!l.visible,lineCap:c.borderCapStyle,lineDash:c.borderDash,lineDashOffset:c.borderDashOffset,lineJoin:c.borderJoinStyle,lineWidth:(h.width+h.height)/4,strokeStyle:c.borderColor,pointStyle:s||c.pointStyle,rotation:c.rotation,textAlign:n||c.textAlign,borderRadius:a&&(r||c.borderRadius),datasetIndex:l.index}},this)}},title:{color:i=>i.chart.options.color,display:!1,position:"center",text:""}},descriptors:{_scriptable:i=>!i.startsWith("on"),labels:{_scriptable:i=>!["generateLabels","filter","sort"].includes(i)}}};class zi extends ot{constructor(t){super(),this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this._padding=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e){const s=this.options;if(this.left=0,this.top=0,!s.display){this.width=this.height=this.right=this.bottom=0;return}this.width=this.right=t,this.height=this.bottom=e;const n=V(s.text)?s.text.length:1;this._padding=J(s.padding);const o=n*$(s.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=o:this.width=o}isHorizontal(){const t=this.options.position;return t==="top"||t==="bottom"}_drawArgs(t){const{top:e,left:s,bottom:n,right:o,options:a}=this,r=a.align;let l=0,c,h,d;return this.isHorizontal()?(h=K(r,s,o),d=e+t,c=o-s):(a.position==="left"?(h=s+t,d=K(r,n,e),l=R*-.5):(h=o-t,d=K(r,e,n),l=R*.5),c=n-e),{titleX:h,titleY:d,maxWidth:c,rotation:l}}draw(){const t=this.ctx,e=this.options;if(!e.display)return;const s=$(e.font),o=s.lineHeight/2+this._padding.top,{titleX:a,titleY:r,maxWidth:l,rotation:c}=this._drawArgs(o);It(t,e.text,0,0,s,{color:e.color,maxWidth:l,rotation:c,textAlign:Di(e.align),textBaseline:"middle",translation:[a,r]})}}function nc(i,t){const e=new zi({ctx:i.ctx,options:t,chart:i});q.configure(i,e,t),q.addBox(i,e),i.titleBlock=e}var oc={id:"title",_element:zi,start(i,t,e){nc(i,e)},stop(i){const t=i.titleBlock;q.removeBox(i,t),delete i.titleBlock},beforeUpdate(i,t,e){const s=i.titleBlock;q.configure(i,s,e),s.options=e},defaults:{align:"center",display:!1,font:{weight:"bold"},fullSize:!0,padding:10,position:"top",text:"",weight:2e3},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const ke=new WeakMap;var ac={id:"subtitle",start(i,t,e){const s=new zi({ctx:i.ctx,options:e,chart:i});q.configure(i,s,e),q.addBox(i,s),ke.set(i,s)},stop(i){q.removeBox(i,ke.get(i)),ke.delete(i)},beforeUpdate(i,t,e){const s=ke.get(i);q.configure(i,s,e),s.options=e},defaults:{align:"center",display:!1,font:{weight:"normal"},fullSize:!0,padding:0,position:"top",text:"",weight:1500},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const Zt={average(i){if(!i.length)return!1;let t,e,s=new Set,n=0,o=0;for(t=0,e=i.length;tr+l)/s.size,y:n/o}},nearest(i,t){if(!i.length)return!1;let e=t.x,s=t.y,n=Number.POSITIVE_INFINITY,o,a,r;for(o=0,a=i.length;o-1?i.split(` -`):i}function rc(i,t){const{element:e,datasetIndex:s,index:n}=t,o=i.getDatasetMeta(s).controller,{label:a,value:r}=o.getLabelAndValue(n);return{chart:i,label:a,parsed:o.getParsed(n),raw:i.data.datasets[s].data[n],formattedValue:r,dataset:o.getDataset(),dataIndex:n,datasetIndex:s,element:e}}function Ws(i,t){const e=i.chart.ctx,{body:s,footer:n,title:o}=i,{boxWidth:a,boxHeight:r}=t,l=$(t.bodyFont),c=$(t.titleFont),h=$(t.footerFont),d=o.length,u=n.length,f=s.length,g=J(t.padding);let p=g.height,m=0,b=s.reduce((y,_)=>y+_.before.length+_.lines.length+_.after.length,0);if(b+=i.beforeBody.length+i.afterBody.length,d&&(p+=d*c.lineHeight+(d-1)*t.titleSpacing+t.titleMarginBottom),b){const y=t.displayColors?Math.max(r,l.lineHeight):l.lineHeight;p+=f*y+(b-f)*l.lineHeight+(b-1)*t.bodySpacing}u&&(p+=t.footerMarginTop+u*h.lineHeight+(u-1)*t.footerSpacing);let x=0;const v=function(y){m=Math.max(m,e.measureText(y).width+x)};return e.save(),e.font=c.string,I(i.title,v),e.font=l.string,I(i.beforeBody.concat(i.afterBody),v),x=t.displayColors?a+2+t.boxPadding:0,I(s,y=>{I(y.before,v),I(y.lines,v),I(y.after,v)}),x=0,e.font=h.string,I(i.footer,v),e.restore(),m+=g.width,{width:m,height:p}}function lc(i,t){const{y:e,height:s}=t;return ei.height-s/2?"bottom":"center"}function cc(i,t,e,s){const{x:n,width:o}=s,a=e.caretSize+e.caretPadding;if(i==="left"&&n+o+a>t.width||i==="right"&&n-o-a<0)return!0}function hc(i,t,e,s){const{x:n,width:o}=e,{width:a,chartArea:{left:r,right:l}}=i;let c="center";return s==="center"?c=n<=(r+l)/2?"left":"right":n<=o/2?c="left":n>=a-o/2&&(c="right"),cc(c,i,t,e)&&(c="center"),c}function Ns(i,t,e){const s=e.yAlign||t.yAlign||lc(i,e);return{xAlign:e.xAlign||t.xAlign||hc(i,t,e,s),yAlign:s}}function dc(i,t){let{x:e,width:s}=i;return t==="right"?e-=s:t==="center"&&(e-=s/2),e}function uc(i,t,e){let{y:s,height:n}=i;return t==="top"?s+=e:t==="bottom"?s-=n+e:s-=n/2,s}function Hs(i,t,e,s){const{caretSize:n,caretPadding:o,cornerRadius:a}=i,{xAlign:r,yAlign:l}=e,c=n+o,{topLeft:h,topRight:d,bottomLeft:u,bottomRight:f}=Tt(a);let g=dc(t,r);const p=uc(t,l,c);return l==="center"?r==="left"?g+=c:r==="right"&&(g-=c):r==="left"?g-=Math.max(h,u)+n:r==="right"&&(g+=Math.max(d,f)+n),{x:Y(g,0,s.width-t.width),y:Y(p,0,s.height-t.height)}}function Se(i,t,e){const s=J(e.padding);return t==="center"?i.x+i.width/2:t==="right"?i.x+i.width-s.right:i.x+s.left}function js(i){return at([],dt(i))}function fc(i,t,e){return vt(i,{tooltip:t,tooltipItems:e,type:"tooltip"})}function $s(i,t){const e=t&&t.dataset&&t.dataset.tooltip&&t.dataset.tooltip.callbacks;return e?i.override(e):i}const Gn={beforeTitle:ct,title(i){if(i.length>0){const t=i[0],e=t.chart.data.labels,s=e?e.length:0;if(this&&this.options&&this.options.mode==="dataset")return t.dataset.label||"";if(t.label)return t.label;if(s>0&&t.dataIndex"u"?Gn[t].call(e,s):n}class xi extends ot{constructor(t){super(),this.opacity=0,this._active=[],this._eventPosition=void 0,this._size=void 0,this._cachedAnimations=void 0,this._tooltipItems=[],this.$animations=void 0,this.$context=void 0,this.chart=t.chart,this.options=t.options,this.dataPoints=void 0,this.title=void 0,this.beforeBody=void 0,this.body=void 0,this.afterBody=void 0,this.footer=void 0,this.xAlign=void 0,this.yAlign=void 0,this.x=void 0,this.y=void 0,this.height=void 0,this.width=void 0,this.caretX=void 0,this.caretY=void 0,this.labelColors=void 0,this.labelPointStyles=void 0,this.labelTextColors=void 0}initialize(t){this.options=t,this._cachedAnimations=void 0,this.$context=void 0}_resolveAnimations(){const t=this._cachedAnimations;if(t)return t;const e=this.chart,s=this.options.setContext(this.getContext()),n=s.enabled&&e.options.animation&&s.animations,o=new Cn(this.chart,n);return n._cacheable&&(this._cachedAnimations=Object.freeze(o)),o}getContext(){return this.$context||(this.$context=fc(this.chart.getContext(),this,this._tooltipItems))}getTitle(t,e){const{callbacks:s}=e,n=Q(s,"beforeTitle",this,t),o=Q(s,"title",this,t),a=Q(s,"afterTitle",this,t);let r=[];return r=at(r,dt(n)),r=at(r,dt(o)),r=at(r,dt(a)),r}getBeforeBody(t,e){return js(Q(e.callbacks,"beforeBody",this,t))}getBody(t,e){const{callbacks:s}=e,n=[];return I(t,o=>{const a={before:[],lines:[],after:[]},r=$s(s,o);at(a.before,dt(Q(r,"beforeLabel",this,o))),at(a.lines,Q(r,"label",this,o)),at(a.after,dt(Q(r,"afterLabel",this,o))),n.push(a)}),n}getAfterBody(t,e){return js(Q(e.callbacks,"afterBody",this,t))}getFooter(t,e){const{callbacks:s}=e,n=Q(s,"beforeFooter",this,t),o=Q(s,"footer",this,t),a=Q(s,"afterFooter",this,t);let r=[];return r=at(r,dt(n)),r=at(r,dt(o)),r=at(r,dt(a)),r}_createItems(t){const e=this._active,s=this.chart.data,n=[],o=[],a=[];let r=[],l,c;for(l=0,c=e.length;lt.filter(h,d,u,s))),t.itemSort&&(r=r.sort((h,d)=>t.itemSort(h,d,s))),I(r,h=>{const d=$s(t.callbacks,h);n.push(Q(d,"labelColor",this,h)),o.push(Q(d,"labelPointStyle",this,h)),a.push(Q(d,"labelTextColor",this,h))}),this.labelColors=n,this.labelPointStyles=o,this.labelTextColors=a,this.dataPoints=r,r}update(t,e){const s=this.options.setContext(this.getContext()),n=this._active;let o,a=[];if(!n.length)this.opacity!==0&&(o={opacity:0});else{const r=Zt[s.position].call(this,n,this._eventPosition);a=this._createItems(s),this.title=this.getTitle(a,s),this.beforeBody=this.getBeforeBody(a,s),this.body=this.getBody(a,s),this.afterBody=this.getAfterBody(a,s),this.footer=this.getFooter(a,s);const l=this._size=Ws(this,s),c=Object.assign({},r,l),h=Ns(this.chart,s,c),d=Hs(s,c,h,this.chart);this.xAlign=h.xAlign,this.yAlign=h.yAlign,o={opacity:1,x:d.x,y:d.y,width:l.width,height:l.height,caretX:r.x,caretY:r.y}}this._tooltipItems=a,this.$context=void 0,o&&this._resolveAnimations().update(this,o),t&&s.external&&s.external.call(this,{chart:this.chart,tooltip:this,replay:e})}drawCaret(t,e,s,n){const o=this.getCaretPosition(t,s,n);e.lineTo(o.x1,o.y1),e.lineTo(o.x2,o.y2),e.lineTo(o.x3,o.y3)}getCaretPosition(t,e,s){const{xAlign:n,yAlign:o}=this,{caretSize:a,cornerRadius:r}=s,{topLeft:l,topRight:c,bottomLeft:h,bottomRight:d}=Tt(r),{x:u,y:f}=t,{width:g,height:p}=e;let m,b,x,v,y,_;return o==="center"?(y=f+p/2,n==="left"?(m=u,b=m-a,v=y+a,_=y-a):(m=u+g,b=m+a,v=y-a,_=y+a),x=m):(n==="left"?b=u+Math.max(l,h)+a:n==="right"?b=u+g-Math.max(c,d)-a:b=this.caretX,o==="top"?(v=f,y=v-a,m=b-a,x=b+a):(v=f+p,y=v+a,m=b+a,x=b-a),_=v),{x1:m,x2:b,x3:x,y1:v,y2:y,y3:_}}drawTitle(t,e,s){const n=this.title,o=n.length;let a,r,l;if(o){const c=Vt(s.rtl,this.x,this.width);for(t.x=Se(this,s.titleAlign,s),e.textAlign=c.textAlign(s.titleAlign),e.textBaseline="middle",a=$(s.titleFont),r=s.titleSpacing,e.fillStyle=s.titleColor,e.font=a.string,l=0;lx!==0)?(t.beginPath(),t.fillStyle=o.multiKeyBackground,ce(t,{x:p,y:g,w:c,h:l,radius:b}),t.fill(),t.stroke(),t.fillStyle=a.backgroundColor,t.beginPath(),ce(t,{x:m,y:g+1,w:c-2,h:l-2,radius:b}),t.fill()):(t.fillStyle=o.multiKeyBackground,t.fillRect(p,g,c,l),t.strokeRect(p,g,c,l),t.fillStyle=a.backgroundColor,t.fillRect(m,g+1,c-2,l-2))}t.fillStyle=this.labelTextColors[s]}drawBody(t,e,s){const{body:n}=this,{bodySpacing:o,bodyAlign:a,displayColors:r,boxHeight:l,boxWidth:c,boxPadding:h}=s,d=$(s.bodyFont);let u=d.lineHeight,f=0;const g=Vt(s.rtl,this.x,this.width),p=function(w){e.fillText(w,g.x(t.x+f),t.y+u/2),t.y+=u+o},m=g.textAlign(a);let b,x,v,y,_,k,S;for(e.textAlign=a,e.textBaseline="middle",e.font=d.string,t.x=Se(this,m,s),e.fillStyle=s.bodyColor,I(this.beforeBody,p),f=r&&m!=="right"?a==="center"?c/2+h:c+2+h:0,y=0,k=n.length;y0&&e.stroke()}_updateAnimationTarget(t){const e=this.chart,s=this.$animations,n=s&&s.x,o=s&&s.y;if(n||o){const a=Zt[t.position].call(this,this._active,this._eventPosition);if(!a)return;const r=this._size=Ws(this,t),l=Object.assign({},a,this._size),c=Ns(e,t,l),h=Hs(t,l,c,e);(n._to!==h.x||o._to!==h.y)&&(this.xAlign=c.xAlign,this.yAlign=c.yAlign,this.width=r.width,this.height=r.height,this.caretX=a.x,this.caretY=a.y,this._resolveAnimations().update(this,h))}}_willRender(){return!!this.opacity}draw(t){const e=this.options.setContext(this.getContext());let s=this.opacity;if(!s)return;this._updateAnimationTarget(e);const n={width:this.width,height:this.height},o={x:this.x,y:this.y};s=Math.abs(s)<.001?0:s;const a=J(e.padding),r=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;e.enabled&&r&&(t.save(),t.globalAlpha=s,this.drawBackground(o,t,n,e),Mn(t,e.textDirection),o.y+=a.top,this.drawTitle(o,t,e),this.drawBody(o,t,e),this.drawFooter(o,t,e),kn(t,e.textDirection),t.restore())}getActiveElements(){return this._active||[]}setActiveElements(t,e){const s=this._active,n=t.map(({datasetIndex:r,index:l})=>{const c=this.chart.getDatasetMeta(r);if(!c)throw new Error("Cannot find a dataset at index "+r);return{datasetIndex:r,element:c.data[l],index:l}}),o=!Ee(s,n),a=this._positionChanged(n,e);(o||a)&&(this._active=n,this._eventPosition=e,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(t,e,s=!0){if(e&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const n=this.options,o=this._active||[],a=this._getActiveElements(t,o,e,s),r=this._positionChanged(a,t),l=e||!Ee(a,o)||r;return l&&(this._active=a,(n.enabled||n.external)&&(this._eventPosition={x:t.x,y:t.y},this.update(!0,e))),l}_getActiveElements(t,e,s,n){const o=this.options;if(t.type==="mouseout")return[];if(!n)return e.filter(r=>this.chart.data.datasets[r.datasetIndex]&&this.chart.getDatasetMeta(r.datasetIndex).controller.getParsed(r.index)!==void 0);const a=this.chart.getElementsAtEventForMode(t,o.mode,o,s);return o.reverse&&a.reverse(),a}_positionChanged(t,e){const{caretX:s,caretY:n,options:o}=this,a=Zt[o.position].call(this,t,e);return a!==!1&&(s!==a.x||n!==a.y)}}M(xi,"positioners",Zt);var gc={id:"tooltip",_element:xi,positioners:Zt,afterInit(i,t,e){e&&(i.tooltip=new xi({chart:i,options:e}))},beforeUpdate(i,t,e){i.tooltip&&i.tooltip.initialize(e)},reset(i,t,e){i.tooltip&&i.tooltip.initialize(e)},afterDraw(i){const t=i.tooltip;if(t&&t._willRender()){const e={tooltip:t};if(i.notifyPlugins("beforeTooltipDraw",{...e,cancelable:!0})===!1)return;t.draw(i.ctx),i.notifyPlugins("afterTooltipDraw",e)}},afterEvent(i,t){if(i.tooltip){const e=t.replay;i.tooltip.handleEvent(t.event,e,t.inChartArea)&&(t.changed=!0)}},defaults:{enabled:!0,external:null,position:"average",backgroundColor:"rgba(0,0,0,0.8)",titleColor:"#fff",titleFont:{weight:"bold"},titleSpacing:2,titleMarginBottom:6,titleAlign:"left",bodyColor:"#fff",bodySpacing:2,bodyFont:{},bodyAlign:"left",footerColor:"#fff",footerSpacing:2,footerMarginTop:6,footerFont:{weight:"bold"},footerAlign:"left",padding:6,caretPadding:2,caretSize:5,cornerRadius:6,boxHeight:(i,t)=>t.bodyFont.size,boxWidth:(i,t)=>t.bodyFont.size,multiKeyBackground:"#fff",displayColors:!0,boxPadding:0,borderColor:"rgba(0,0,0,0)",borderWidth:0,animation:{duration:400,easing:"easeOutQuart"},animations:{numbers:{type:"number",properties:["x","y","width","height","caretX","caretY"]},opacity:{easing:"linear",duration:200}},callbacks:Gn},defaultRoutes:{bodyFont:"font",footerFont:"font",titleFont:"font"},descriptors:{_scriptable:i=>i!=="filter"&&i!=="itemSort"&&i!=="external",_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]},pc=Object.freeze({__proto__:null,Colors:Dl,Decimation:Tl,Filler:Jl,Legend:sc,SubTitle:ac,Title:oc,Tooltip:gc});const mc=(i,t,e,s)=>(typeof t=="string"?(e=i.push(t)-1,s.unshift({index:e,label:t})):isNaN(t)&&(e=null),e);function bc(i,t,e,s){const n=i.indexOf(t);if(n===-1)return mc(i,t,e,s);const o=i.lastIndexOf(t);return n!==o?e:n}const xc=(i,t)=>i===null?null:Y(Math.round(i),0,t);function Ys(i){const t=this.getLabels();return i>=0&&ie.length-1?null:this.getPixelForValue(e[t].value)}getValueForPixel(t){return Math.round(this._startValue+this.getDecimalForPixel(t)*this._valueRange)}getBasePixel(){return this.bottom}}M(_i,"id","category"),M(_i,"defaults",{ticks:{callback:Ys}});function _c(i,t){const e=[],{bounds:n,step:o,min:a,max:r,precision:l,count:c,maxTicks:h,maxDigits:d,includeBounds:u}=i,f=o||1,g=h-1,{min:p,max:m}=t,b=!O(a),x=!O(r),v=!O(c),y=(m-p)/(d+1);let _=Wi((m-p)/g/f)*f,k,S,w,P;if(_<1e-14&&!b&&!x)return[{value:p},{value:m}];P=Math.ceil(m/_)-Math.floor(p/_),P>g&&(_=Wi(P*_/g/f)*f),O(l)||(k=Math.pow(10,l),_=Math.ceil(_*k)/k),n==="ticks"?(S=Math.floor(p/_)*_,w=Math.ceil(m/_)*_):(S=p,w=m),b&&x&&o&&ho((r-a)/o,_/1e3)?(P=Math.round(Math.min((r-a)/_,h)),_=(r-a)/P,S=a,w=r):v?(S=b?a:S,w=x?r:w,P=c-1,_=(w-S)/P):(P=(w-S)/_,ie(P,Math.round(P),_/1e3)?P=Math.round(P):P=Math.ceil(P));const C=Math.max(Ni(_),Ni(S));k=Math.pow(10,O(l)?C:l),S=Math.round(S*k)/k,w=Math.round(w*k)/k;let A=0;for(b&&(u&&S!==a?(e.push({value:a}),Sr)break;e.push({value:L})}return x&&u&&w!==r?e.length&&ie(e[e.length-1].value,r,Us(r,y,i))?e[e.length-1].value=r:e.push({value:r}):(!x||w===r)&&e.push({value:w}),e}function Us(i,t,{horizontal:e,minRotation:s}){const n=st(s),o=(e?Math.sin(n):Math.cos(n))||.001,a=.75*t*(""+i).length;return Math.min(t/o,a)}class He extends Et{constructor(t){super(t),this.start=void 0,this.end=void 0,this._startValue=void 0,this._endValue=void 0,this._valueRange=0}parse(t,e){return O(t)||(typeof t=="number"||t instanceof Number)&&!isFinite(+t)?null:+t}handleTickRangeOptions(){const{beginAtZero:t}=this.options,{minDefined:e,maxDefined:s}=this.getUserBounds();let{min:n,max:o}=this;const a=l=>n=e?n:l,r=l=>o=s?o:l;if(t){const l=lt(n),c=lt(o);l<0&&c<0?r(0):l>0&&c>0&&a(0)}if(n===o){let l=o===0?1:Math.abs(o*.05);r(o+l),t||a(n-l)}this.min=n,this.max=o}getTickLimit(){const t=this.options.ticks;let{maxTicksLimit:e,stepSize:s}=t,n;return s?(n=Math.ceil(this.max/s)-Math.floor(this.min/s)+1,n>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${s} would result generating up to ${n} ticks. Limiting to 1000.`),n=1e3)):(n=this.computeTickLimit(),e=e||11),e&&(n=Math.min(e,n)),n}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const t=this.options,e=t.ticks;let s=this.getTickLimit();s=Math.max(2,s);const n={maxTicks:s,bounds:t.bounds,min:t.min,max:t.max,precision:e.precision,step:e.stepSize,count:e.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:e.minRotation||0,includeBounds:e.includeBounds!==!1},o=this._range||this,a=_c(n,o);return t.bounds==="ticks"&&on(a,this,"value"),t.reverse?(a.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),a}configure(){const t=this.ticks;let e=this.min,s=this.max;if(super.configure(),this.options.offset&&t.length){const n=(s-e)/Math.max(t.length-1,1)/2;e-=n,s+=n}this._startValue=e,this._endValue=s,this._valueRange=s-e}getLabelForValue(t){return fe(t,this.chart.options.locale,this.options.ticks.format)}}class yi extends He{determineDataLimits(){const{min:t,max:e}=this.getMinMax(!0);this.min=N(t)?t:0,this.max=N(e)?e:1,this.handleTickRangeOptions()}computeTickLimit(){const t=this.isHorizontal(),e=t?this.width:this.height,s=st(this.options.ticks.minRotation),n=(t?Math.sin(s):Math.cos(s))||.001,o=this._resolveTickFontOptions(0);return Math.ceil(e/Math.min(40,o.lineHeight/n))}getPixelForValue(t){return t===null?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getValueForPixel(t){return this._startValue+this.getDecimalForPixel(t)*this._valueRange}}M(yi,"id","linear"),M(yi,"defaults",{ticks:{callback:je.formatters.numeric}});const de=i=>Math.floor(mt(i)),Dt=(i,t)=>Math.pow(10,de(i)+t);function Xs(i){return i/Math.pow(10,de(i))===1}function Ks(i,t,e){const s=Math.pow(10,e),n=Math.floor(i/s);return Math.ceil(t/s)-n}function yc(i,t){const e=t-i;let s=de(e);for(;Ks(i,t,s)>10;)s++;for(;Ks(i,t,s)<10;)s--;return Math.min(s,de(i))}function vc(i,{min:t,max:e}){t=et(i.min,t);const s=[],n=de(t);let o=yc(t,e),a=o<0?Math.pow(10,Math.abs(o)):1;const r=Math.pow(10,o),l=n>o?Math.pow(10,n):0,c=Math.round((t-l)*a)/a,h=Math.floor((t-l)/r/10)*r*10;let d=Math.floor((c-h)/Math.pow(10,o)),u=et(i.min,Math.round((l+h+d*Math.pow(10,o))*a)/a);for(;u=10?d=d<15?15:20:d++,d>=20&&(o++,d=2,a=o>=0?1:a),u=Math.round((l+h+d*Math.pow(10,o))*a)/a;const f=et(i.max,u);return s.push({value:f,major:Xs(f),significand:d}),s}class vi extends Et{constructor(t){super(t),this.start=void 0,this.end=void 0,this._startValue=void 0,this._valueRange=0}parse(t,e){const s=He.prototype.parse.apply(this,[t,e]);if(s===0){this._zero=!0;return}return N(s)&&s>0?s:null}determineDataLimits(){const{min:t,max:e}=this.getMinMax(!0);this.min=N(t)?Math.max(0,t):null,this.max=N(e)?Math.max(0,e):null,this.options.beginAtZero&&(this._zero=!0),this._zero&&this.min!==this._suggestedMin&&!N(this._userMin)&&(this.min=t===Dt(this.min,0)?Dt(this.min,-1):Dt(this.min,0)),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:t,maxDefined:e}=this.getUserBounds();let s=this.min,n=this.max;const o=r=>s=t?s:r,a=r=>n=e?n:r;s===n&&(s<=0?(o(1),a(10)):(o(Dt(s,-1)),a(Dt(n,1)))),s<=0&&o(Dt(n,-1)),n<=0&&a(Dt(s,1)),this.min=s,this.max=n}buildTicks(){const t=this.options,e={min:this._userMin,max:this._userMax},s=vc(e,this);return t.bounds==="ticks"&&on(s,this,"value"),t.reverse?(s.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),s}getLabelForValue(t){return t===void 0?"0":fe(t,this.chart.options.locale,this.options.ticks.format)}configure(){const t=this.min;super.configure(),this._startValue=mt(t),this._valueRange=mt(this.max)-mt(t)}getPixelForValue(t){return(t===void 0||t===0)&&(t=this.min),t===null||isNaN(t)?NaN:this.getPixelForDecimal(t===this.min?0:(mt(t)-this._startValue)/this._valueRange)}getValueForPixel(t){const e=this.getDecimalForPixel(t);return Math.pow(10,this._startValue+e*this._valueRange)}}M(vi,"id","logarithmic"),M(vi,"defaults",{ticks:{callback:je.formatters.logarithmic,major:{enabled:!0}}});function Mi(i){const t=i.ticks;if(t.display&&i.display){const e=J(t.backdropPadding);return D(t.font&&t.font.size,W.font.size)+e.height}return 0}function Mc(i,t,e){return e=V(e)?e:[e],{w:Co(i,t.string,e),h:e.length*t.lineHeight}}function Gs(i,t,e,s,n){return i===s||i===n?{start:t-e/2,end:t+e/2}:in?{start:t-e,end:t}:{start:t,end:t+e}}function kc(i){const t={l:i.left+i._padding.left,r:i.right-i._padding.right,t:i.top+i._padding.top,b:i.bottom-i._padding.bottom},e=Object.assign({},t),s=[],n=[],o=i._pointLabels.length,a=i.options.pointLabels,r=a.centerPointLabels?R/o:0;for(let l=0;lt.r&&(r=(s.end-t.r)/o,i.r=Math.max(i.r,t.r+r)),n.startt.b&&(l=(n.end-t.b)/a,i.b=Math.max(i.b,t.b+l))}function wc(i,t,e){const s=i.drawingArea,{extra:n,additionalAngle:o,padding:a,size:r}=e,l=i.getPointPosition(t,s+n+a,o),c=Math.round(wi(G(l.angle+j))),h=Oc(l.y,r.h,c),d=Cc(c),u=Ac(l.x,r.w,d);return{visible:!0,x:l.x,y:h,textAlign:d,left:u,top:h,right:u+r.w,bottom:h+r.h}}function Pc(i,t){if(!t)return!0;const{left:e,top:s,right:n,bottom:o}=i;return!(gt({x:e,y:s},t)||gt({x:e,y:o},t)||gt({x:n,y:s},t)||gt({x:n,y:o},t))}function Dc(i,t,e){const s=[],n=i._pointLabels.length,o=i.options,{centerPointLabels:a,display:r}=o.pointLabels,l={extra:Mi(o)/2,additionalAngle:a?R/n:0};let c;for(let h=0;h270||e<90)&&(i-=t),i}function Tc(i,t,e){const{left:s,top:n,right:o,bottom:a}=e,{backdropColor:r}=t;if(!O(r)){const l=Tt(t.borderRadius),c=J(t.backdropPadding);i.fillStyle=r;const h=s-c.left,d=n-c.top,u=o-s+c.width,f=a-n+c.height;Object.values(l).some(g=>g!==0)?(i.beginPath(),ce(i,{x:h,y:d,w:u,h:f,radius:l}),i.fill()):i.fillRect(h,d,u,f)}}function Lc(i,t){const{ctx:e,options:{pointLabels:s}}=i;for(let n=t-1;n>=0;n--){const o=i._pointLabelItems[n];if(!o.visible)continue;const a=s.setContext(i.getPointLabelContext(n));Tc(e,a,o);const r=$(a.font),{x:l,y:c,textAlign:h}=o;It(e,i._pointLabels[n],l,c+r.lineHeight/2,r,{color:a.color,textAlign:h,textBaseline:"middle"})}}function qn(i,t,e,s){const{ctx:n}=i;if(e)n.arc(i.xCenter,i.yCenter,t,0,F);else{let o=i.getPointPosition(0,t);n.moveTo(o.x,o.y);for(let a=1;a{const n=z(this.options.pointLabels.callback,[e,s],this);return n||n===0?n:""}).filter((e,s)=>this.chart.getDataVisibility(s))}fit(){const t=this.options;t.display&&t.pointLabels.display?kc(this):this.setCenterPoint(0,0,0,0)}setCenterPoint(t,e,s,n){this.xCenter+=Math.floor((t-e)/2),this.yCenter+=Math.floor((s-n)/2),this.drawingArea-=Math.min(this.drawingArea/2,Math.max(t,e,s,n))}getIndexAngle(t){const e=F/(this._pointLabels.length||1),s=this.options.startAngle||0;return G(t*e+st(s))}getDistanceFromCenterForValue(t){if(O(t))return NaN;const e=this.drawingArea/(this.max-this.min);return this.options.reverse?(this.max-t)*e:(t-this.min)*e}getValueForDistanceFromCenter(t){if(O(t))return NaN;const e=t/(this.drawingArea/(this.max-this.min));return this.options.reverse?this.max-e:this.min+e}getPointLabelContext(t){const e=this._pointLabels||[];if(t>=0&&t{if(d!==0||d===0&&this.min<0){l=this.getDistanceFromCenterForValue(h.value);const u=this.getContext(d),f=n.setContext(u),g=o.setContext(u);Rc(this,f,l,a,g)}}),s.display){for(t.save(),r=a-1;r>=0;r--){const h=s.setContext(this.getPointLabelContext(r)),{color:d,lineWidth:u}=h;!u||!d||(t.lineWidth=u,t.strokeStyle=d,t.setLineDash(h.borderDash),t.lineDashOffset=h.borderDashOffset,l=this.getDistanceFromCenterForValue(e.reverse?this.min:this.max),c=this.getPointPosition(r,l),t.beginPath(),t.moveTo(this.xCenter,this.yCenter),t.lineTo(c.x,c.y),t.stroke())}t.restore()}}drawBorder(){}drawLabels(){const t=this.ctx,e=this.options,s=e.ticks;if(!s.display)return;const n=this.getIndexAngle(0);let o,a;t.save(),t.translate(this.xCenter,this.yCenter),t.rotate(n),t.textAlign="center",t.textBaseline="middle",this.ticks.forEach((r,l)=>{if(l===0&&this.min>=0&&!e.reverse)return;const c=s.setContext(this.getContext(l)),h=$(c.font);if(o=this.getDistanceFromCenterForValue(this.ticks[l].value),c.showLabelBackdrop){t.font=h.string,a=t.measureText(r.label).width,t.fillStyle=c.backdropColor;const d=J(c.backdropPadding);t.fillRect(-a/2-d.left,-o-h.size/2-d.top,a+d.width,h.size+d.height)}It(t,r.label,0,-o,h,{color:c.color,strokeColor:c.textStrokeColor,strokeWidth:c.textStrokeWidth})}),t.restore()}drawTitle(){}}M(te,"id","radialLinear"),M(te,"defaults",{display:!0,animate:!0,position:"chartArea",angleLines:{display:!0,lineWidth:1,borderDash:[],borderDashOffset:0},grid:{circular:!1},startAngle:0,ticks:{showLabelBackdrop:!0,callback:je.formatters.numeric},pointLabels:{backdropColor:void 0,backdropPadding:2,display:!0,font:{size:10},callback(t){return t},padding:5,centerPointLabels:!1}}),M(te,"defaultRoutes",{"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"}),M(te,"descriptors",{angleLines:{_fallback:"grid"}});const Ge={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},Z=Object.keys(Ge);function qs(i,t){return i-t}function Js(i,t){if(O(t))return null;const e=i._adapter,{parser:s,round:n,isoWeekday:o}=i._parseOpts;let a=t;return typeof s=="function"&&(a=s(a)),N(a)||(a=typeof s=="string"?e.parse(a,s):e.parse(a)),a===null?null:(n&&(a=n==="week"&&(Wt(o)||o===!0)?e.startOf(a,"isoWeek",o):e.startOf(a,n)),+a)}function Qs(i,t,e,s){const n=Z.length;for(let o=Z.indexOf(i);o=Z.indexOf(e);o--){const a=Z[o];if(Ge[a].common&&i._adapter.diff(n,s,a)>=t-1)return a}return Z[e?Z.indexOf(e):0]}function zc(i){for(let t=Z.indexOf(i)+1,e=Z.length;t=t?e[s]:e[n];i[o]=!0}}function Fc(i,t,e,s){const n=i._adapter,o=+n.startOf(t[0].value,s),a=t[t.length-1].value;let r,l;for(r=o;r<=a;r=+n.add(r,1,s))l=e[r],l>=0&&(t[l].major=!0);return t}function tn(i,t,e){const s=[],n={},o=t.length;let a,r;for(a=0;a+t.value))}initOffsets(t=[]){let e=0,s=0,n,o;this.options.offset&&t.length&&(n=this.getDecimalForValue(t[0]),t.length===1?e=1-n:e=(this.getDecimalForValue(t[1])-n)/2,o=this.getDecimalForValue(t[t.length-1]),t.length===1?s=o:s=(o-this.getDecimalForValue(t[t.length-2]))/2);const a=t.length<3?.5:.25;e=Y(e,0,a),s=Y(s,0,a),this._offsets={start:e,end:s,factor:1/(e+1+s)}}_generate(){const t=this._adapter,e=this.min,s=this.max,n=this.options,o=n.time,a=o.unit||Qs(o.minUnit,e,s,this._getLabelCapacity(e)),r=D(n.ticks.stepSize,1),l=a==="week"?o.isoWeekday:!1,c=Wt(l)||l===!0,h={};let d=e,u,f;if(c&&(d=+t.startOf(d,"isoWeek",l)),d=+t.startOf(d,c?"day":a),t.diff(s,e,a)>1e5*r)throw new Error(e+" and "+s+" are too far apart with stepSize of "+r+" "+a);const g=n.ticks.source==="data"&&this.getDataTimestamps();for(u=d,f=0;u+p)}getLabelForValue(t){const e=this._adapter,s=this.options.time;return s.tooltipFormat?e.format(t,s.tooltipFormat):e.format(t,s.displayFormats.datetime)}format(t,e){const n=this.options.time.displayFormats,o=this._unit,a=e||n[o];return this._adapter.format(t,a)}_tickFormatFunction(t,e,s,n){const o=this.options,a=o.ticks.callback;if(a)return z(a,[t,e,s],this);const r=o.time.displayFormats,l=this._unit,c=this._majorUnit,h=l&&r[l],d=c&&r[c],u=s[e],f=c&&d&&u&&u.major;return this._adapter.format(t,n||(f?d:h))}generateTickLabels(t){let e,s,n;for(e=0,s=t.length;e0?r:1}getDataTimestamps(){let t=this._cache.data||[],e,s;if(t.length)return t;const n=this.getMatchingVisibleMetas();if(this._normalized&&n.length)return this._cache.data=n[0].controller.getAllParsedValues(this);for(e=0,s=n.length;e=i[s].pos&&t<=i[n].pos&&({lo:s,hi:n}=ft(i,"pos",t)),{pos:o,time:r}=i[s],{pos:a,time:l}=i[n]):(t>=i[s].time&&t<=i[n].time&&({lo:s,hi:n}=ft(i,"time",t)),{time:o,pos:r}=i[s],{time:a,pos:l}=i[n]);const c=a-o;return c?r+(l-r)*(t-o)/c:r}class ki extends ue{constructor(t){super(t),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const t=this._getTimestampsForTable(),e=this._table=this.buildLookupTable(t);this._minPos=we(e,this.min),this._tableRange=we(e,this.max)-this._minPos,super.initOffsets(t)}buildLookupTable(t){const{min:e,max:s}=this,n=[],o=[];let a,r,l,c,h;for(a=0,r=t.length;a=e&&c<=s&&n.push(c);if(n.length<2)return[{time:e,pos:0},{time:s,pos:1}];for(a=0,r=n.length;an-o)}_getTimestampsForTable(){let t=this._cache.all||[];if(t.length)return t;const e=this.getDataTimestamps(),s=this.getLabelTimestamps();return e.length&&s.length?t=this.normalize(e.concat(s)):t=e.length?e:s,t=this._cache.all=t,t}getDecimalForValue(t){return(we(this._table,t)-this._minPos)/this._tableRange}getValueForPixel(t){const e=this._offsets,s=this.getDecimalForPixel(t)/e.factor-e.end;return we(this._table,s*this._tableRange+this._minPos,!0)}}M(ki,"id","timeseries"),M(ki,"defaults",ue.defaults);var Bc=Object.freeze({__proto__:null,CategoryScale:_i,LinearScale:yi,LogarithmicScale:vi,RadialLinearScale:te,TimeScale:ue,TimeSeriesScale:ki});const Vc=[$a,yl,pc,Bc];pt.register(...Vc);export{pt as C}; diff --git a/web/admin-spa/dist/assets/element-plus-BSjV1f9S.js b/web/admin-spa/dist/assets/element-plus-BSjV1f9S.js deleted file mode 100644 index 5c88e00e..00000000 --- a/web/admin-spa/dist/assets/element-plus-BSjV1f9S.js +++ /dev/null @@ -1,13 +0,0 @@ -import{g as lt,i as we,r as I,c as y,u as o,a as Ve,b as ke,d as yt,e as bt,f as gn,h as rn,w as _p,j as Qe,p as rt,k as Ar,l as x,s as Lt,m as Tp,n as nu,o as ie,q as Xe,t as xt,v as bn,x as V,y as _,z as F,A as G,B as _e,C as T,D as Ee,N as Bt,E as et,F as $p,G as Xt,H as wt,I as oe,J as U,K as We,L as J,M as Ge,O as st,P as pe,Q as Oe,R as H,S as mt,T as an,U as Ha,V as cs,W as pl,X as Ft,Y as Le,Z as Nt,_ as kt,$ as Fr,a0 as hl,a1 as Np,a2 as Nc,a3 as jl,a4 as ua,a5 as Ip,a6 as xr,a7 as zr,a8 as Ic,a9 as Mp,aa as Tt,ab as Mn,ac as ut,ad as Mc,ae as wo,af as On,ag as cl,ah as Dt,ai as Re,aj as Oa,ak as Uo,al as Ka,am as nn,an as Rc,ao as Pc,ap as Yo,aq as ds,ar as Rp,as as Pp,at as Op,au as Ul,av as ht,aw as Lp,ax as Oc,ay as $l,az as Bp,aA as Vp,aB as nr,aC as lr,aD as fs,aE as Dp,aF as Lc,aG as Il,aH as Ap,aI as Fp,aJ as Bc,aK as xp,aL as zp,aM as Hp,aN as Kp,aO as Wp}from"./vue-vendor-DV7DYXbz.js";import{i as qt,g as Yt,f as qo,s as jp,p as An,E as Xl,y as Up,a as Yp,d as Ln,T as vo,b as Ke,l as Vc,t as Hl,c as tn,e as qp,h as Wa,j as ln,u as Ds,k as Hr,m as Gp,n as Xp,w as Zp,o as Jp,q as Qp,r as eh,v as th,x as lu,S as nh,z as Dc,A as lh,B as oh,D as ca,F as Ac,G as Fc,Y as ah,H as xc,I as zc,J as Hc,K as Kc,L as sh,M as rh,N as ih,O as uh}from"./vendor-Dr8jvgFu.js";const ch="2.10.4",ou=Symbol("INSTALLED_KEY"),Wc=Symbol(),Ko="el",dh="is-",Bl=(e,t,n,l,a)=>{let s=`${e}-${t}`;return n&&(s+=`-${n}`),l&&(s+=`__${l}`),a&&(s+=`--${a}`),s},jc=Symbol("namespaceContextKey"),Kr=e=>{const t=e||(lt()?we(jc,I(Ko)):I(Ko));return y(()=>o(t)||Ko)},ue=(e,t)=>{const n=Kr(t);return{namespace:n,b:(p="")=>Bl(n.value,e,p,"",""),e:p=>p?Bl(n.value,e,"",p,""):"",m:p=>p?Bl(n.value,e,"","",p):"",be:(p,g)=>p&&g?Bl(n.value,e,p,g,""):"",em:(p,g)=>p&&g?Bl(n.value,e,"",p,g):"",bm:(p,g)=>p&&g?Bl(n.value,e,p,"",g):"",bem:(p,g,b)=>p&&g&&b?Bl(n.value,e,p,g,b):"",is:(p,...g)=>{const b=g.length>=1?g[0]:!0;return p&&b?`${dh}${p}`:""},cssVar:p=>{const g={};for(const b in p)p[b]&&(g[`--${n.value}-${b}`]=p[b]);return g},cssVarName:p=>`--${n.value}-${p}`,cssVarBlock:p=>{const g={};for(const b in p)p[b]&&(g[`--${n.value}-${e}-${b}`]=p[b]);return g},cssVarBlockName:p=>`--${n.value}-${e}-${p}`}},vt=e=>e===void 0,_t=e=>typeof e=="boolean",Te=e=>typeof e=="number",Pn=e=>!e&&e!==0||ke(e)&&e.length===0||yt(e)&&!Object.keys(e).length,_n=e=>typeof Element>"u"?!1:e instanceof Element,In=e=>qt(e),fh=e=>Ve(e)?!Number.isNaN(Number(e)):!1,vs=e=>e===window;class vh extends Error{constructor(t){super(t),this.name="ElementPlusError"}}function jt(e,t){throw new vh(`[${e}] ${t}`)}const au={current:0},su=I(0),Uc=2e3,ru=Symbol("elZIndexContextKey"),Yc=Symbol("zIndexContextKey"),Mo=e=>{const t=lt()?we(ru,au):au,n=e||(lt()?we(Yc,void 0):void 0),l=y(()=>{const r=o(n);return Te(r)?r:Uc}),a=y(()=>l.value+su.value),s=()=>(t.current++,su.value=t.current,a.value);return!bt&&we(ru),{initialZIndex:l,currentZIndex:a,nextZIndex:s}};var ph={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"},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",week:"week",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"},tour:{next:"Next",previous:"Previous",finish:"Finish"},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 hh=e=>(t,n)=>mh(t,n,o(e)),mh=(e,t,n)=>Yt(n,e,e).replace(/\{(\w+)\}/g,(l,a)=>{var s;return`${(s=t==null?void 0:t[a])!=null?s:`{${a}}`}`}),gh=e=>{const t=y(()=>o(e).name),n=gn(e)?e:I(e);return{lang:t,locale:n,t:hh(e)}},qc=Symbol("localeContextKey"),pt=e=>{const t=e||we(qc,I());return gh(y(()=>t.value||ph))},Gc="__epPropKey",Y=e=>e,bh=e=>yt(e)&&!!e[Gc],Un=(e,t)=>{if(!yt(e)||bh(e))return e;const{values:n,required:l,default:a,type:s,validator:r}=e,u={type:s,required:!!l,validator:n||r?c=>{let d=!1,f=[];if(n&&(f=Array.from(n),rn(e,"default")&&f.push(a),d||(d=f.includes(c))),r&&(d||(d=r(c))),!d&&f.length>0){const m=[...new Set(f)].map(v=>JSON.stringify(v)).join(", ");_p(`Invalid prop: validation failed${t?` for prop "${t}"`:""}. Expected one of [${m}], got value ${JSON.stringify(c)}.`)}return d}:void 0,[Gc]:!0};return rn(e,"default")&&(u.default=a),u},de=e=>qo(Object.entries(e).map(([t,n])=>[t,Un(n,t)])),tl=["","default","small","large"],Jt=Un({type:String,values:tl,required:!1}),Xc=Symbol("size"),Zc=()=>{const e=we(Xc,{});return y(()=>o(e.size)||"")},Jc=Symbol("emptyValuesContextKey"),yh=["",void 0,null],Ch=void 0,Zl=de({emptyValues:Array,valueOnClear:{type:[String,Number,Boolean,Function],default:void 0,validator:e=>Qe(e)?!e():!e}}),da=(e,t)=>{const n=lt()?we(Jc,I({})):I({}),l=y(()=>e.emptyValues||n.value.emptyValues||yh),a=y(()=>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:Ch),s=r=>l.value.includes(r);return l.value.includes(a.value),{emptyValues:l,valueOnClear:a,isEmptyValue:s}},ko=e=>Object.keys(e),Qc=e=>Object.entries(e),Wo=(e,t,n)=>({get value(){return Yt(e,t,n)},set value(l){jp(e,t,l)}}),ja=I();function fa(e,t=void 0){const n=lt()?we(Wc,ja):ja;return e?y(()=>{var l,a;return(a=(l=n.value)==null?void 0:l[e])!=null?a:t}):n}function ps(e,t){const n=fa(),l=ue(e,y(()=>{var i;return((i=n.value)==null?void 0:i.namespace)||Ko})),a=pt(y(()=>{var i;return(i=n.value)==null?void 0:i.locale})),s=Mo(y(()=>{var i;return((i=n.value)==null?void 0:i.zIndex)||Uc})),r=y(()=>{var i;return o(t)||((i=n.value)==null?void 0:i.size)||""});return Wr(y(()=>o(n)||{})),{ns:l,locale:a,zIndex:s,size:r}}const Wr=(e,t,n=!1)=>{var l;const a=!!lt(),s=a?fa():void 0,r=(l=t==null?void 0:t.provide)!=null?l:a?rt:void 0;if(!r)return;const i=y(()=>{const u=o(e);return s!=null&&s.value?wh(s.value,u):u});return r(Wc,i),r(qc,y(()=>i.value.locale)),r(jc,y(()=>i.value.namespace)),r(Yc,y(()=>i.value.zIndex)),r(Xc,{size:y(()=>i.value.size||"")}),r(Jc,y(()=>({emptyValues:i.value.emptyValues,valueOnClear:i.value.valueOnClear}))),(n||!ja.value)&&(ja.value=i.value),i},wh=(e,t)=>{const n=[...new Set([...ko(e),...ko(t)])],l={};for(const a of n)l[a]=t[a]!==void 0?t[a]:e[a];return l},kh=(e=[])=>({version:ch,install:(n,l)=>{n[ou]||(n[ou]=!0,e.forEach(a=>n.use(a)),l&&Wr(l,n,!0))}}),De="update:modelValue",nt="change",Zt="input",Sh=de({zIndex:{type:Y([Number,String]),default:100},target:{type:String,default:""},offset:{type:Number,default:0},position:{type:String,values:["top","bottom"],default:"top"}}),Eh={scroll:({scrollTop:e,fixed:t})=>Te(e)&&_t(t),[nt]:e=>_t(e)};var fe=(e,t)=>{const n=e.__vccOpts||e;for(const[l,a]of t)n[l]=a;return n};function _h(e,t,n,l){const a=n-t;return e/=l/2,e<1?a/2*e*e*e+t:a/2*((e-=2)*e*e+2)+t}const Ml=e=>bt?window.requestAnimationFrame(e):setTimeout(e,16),Yl=e=>bt?window.cancelAnimationFrame(e):clearTimeout(e),ed=(e="")=>e.split(" ").filter(t=>!!t.trim()),Nn=(e,t)=>{if(!e||!t)return!1;if(t.includes(" "))throw new Error("className should not contain space.");return e.classList.contains(t)},Fn=(e,t)=>{!e||!t.trim()||e.classList.add(...ed(t))},yn=(e,t)=>{!e||!t.trim()||e.classList.remove(...ed(t))},rl=(e,t)=>{var n;if(!bt||!e||!t)return"";let l=Ar(t);l==="float"&&(l="cssFloat");try{const a=e.style[l];if(a)return a;const s=(n=document.defaultView)==null?void 0:n.getComputedStyle(e,"");return s?s[l]:""}catch{return e.style[l]}},td=(e,t,n)=>{if(!(!e||!t))if(yt(t))Qc(t).forEach(([l,a])=>td(e,l,a));else{const l=Ar(t);e.style[l]=n}};function zt(e,t="px"){if(!e)return"";if(Te(e)||fh(e))return`${e}${t}`;if(Ve(e))return e}const Th=(e,t)=>{if(!bt)return!1;const n={undefined:"overflow",true:"overflow-y",false:"overflow-x"}[String(t)],l=rl(e,n);return["scroll","auto","overlay"].some(a=>l.includes(a))},jr=(e,t)=>{if(!bt)return;let n=e;for(;n;){if([window,document,document.documentElement].includes(n))return window;if(Th(n,t))return n;n=n.parentNode}return n};let wa;const nd=e=>{var t;if(!bt)return 0;if(wa!==void 0)return wa;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 l=n.offsetWidth;n.style.overflow="scroll";const a=document.createElement("div");a.style.width="100%",n.appendChild(a);const s=a.offsetWidth;return(t=n.parentNode)==null||t.removeChild(n),wa=l-s,wa};function Ur(e,t){if(!bt)return;if(!t){e.scrollTop=0;return}const n=[];let l=t.offsetParent;for(;l!==null&&e!==l&&e.contains(l);)n.push(l),l=l.offsetParent;const a=t.offsetTop+n.reduce((u,c)=>u+c.offsetTop,0),s=a+t.offsetHeight,r=e.scrollTop,i=r+e.clientHeight;ai&&(e.scrollTop=s-e.clientHeight)}function $h(e,t,n,l,a){const s=Date.now();let r;const i=()=>{const c=Date.now()-s,d=_h(c>l?l:c,t,n,l);vs(e)?e.scrollTo(window.pageXOffset,d):e.scrollTop=d,c{r&&Yl(r)}}const iu=(e,t)=>vs(t)?e.ownerDocument.documentElement:t,uu=e=>vs(e)?window.scrollY:e.scrollTop,ld="ElAffix",Nh=x({name:ld}),Ih=x({...Nh,props:Sh,emits:Eh,setup(e,{expose:t,emit:n}){const l=e,a=ue("affix"),s=Lt(),r=Lt(),i=Lt(),{height:u}=Tp(),{height:c,width:d,top:f,bottom:m,update:v}=nu(r,{windowScroll:!1}),h=nu(s),p=I(!1),g=I(0),b=I(0),E=y(()=>({height:p.value?`${c.value}px`:"",width:p.value?`${d.value}px`:""})),C=y(()=>{if(!p.value)return{};const $=l.offset?zt(l.offset):0;return{height:`${c.value}px`,width:`${d.value}px`,top:l.position==="top"?$:"",bottom:l.position==="bottom"?$:"",transform:b.value?`translateY(${b.value}px)`:"",zIndex:l.zIndex}}),w=()=>{if(!i.value)return;g.value=i.value instanceof Window?document.documentElement.scrollTop:i.value.scrollTop||0;const{position:$,target:M,offset:R}=l,N=R+c.value;if($==="top")if(M){const O=h.bottom.value-N;p.value=R>f.value&&h.bottom.value>0,b.value=O<0?O:0}else p.value=R>f.value;else if(M){const O=u.value-h.top.value-N;p.value=u.value-Rh.top.value,b.value=O<0?-O:0}else p.value=u.value-R{if(!p.value){v();return}p.value=!1,await Ee(),v(),p.value=!0},S=async()=>{v(),await Ee(),n("scroll",{scrollTop:g.value,fixed:p.value})};return ie(p,$=>n(nt,$)),Xe(()=>{var $;l.target?(s.value=($=document.querySelector(l.target))!=null?$:void 0,s.value||jt(ld,`Target does not exist: ${l.target}`)):s.value=document.documentElement,i.value=jr(r.value,!0),v()}),xt(i,"scroll",S),bn(w),t({update:w,updateRoot:k}),($,M)=>(_(),V("div",{ref_key:"root",ref:r,class:T(o(a).b()),style:_e(o(E))},[F("div",{class:T({[o(a).m("fixed")]:p.value}),style:_e(o(C))},[G($.$slots,"default")],6)],6))}});var Mh=fe(Ih,[["__file","affix.vue"]]);const He=(e,t)=>{if(e.install=n=>{for(const l of[e,...Object.values(t??{})])n.component(l.name,l)},t)for(const[n,l]of Object.entries(t))e[n]=l;return e},od=(e,t)=>(e.install=n=>{e._context=n._context,n.config.globalProperties[t]=e},e),Rh=(e,t)=>(e.install=n=>{n.directive(t,e)},e),At=e=>(e.install=Bt,e),Ph=He(Mh),Oh=de({size:{type:Y([Number,String])},color:{type:String}}),Lh=x({name:"ElIcon",inheritAttrs:!1}),Bh=x({...Lh,props:Oh,setup(e){const t=e,n=ue("icon"),l=y(()=>{const{size:a,color:s}=t;return!a&&!s?{}:{fontSize:vt(a)?void 0:zt(a),"--color":s}});return(a,s)=>(_(),V("i",et({class:o(n).b(),style:o(l)},a.$attrs),[G(a.$slots,"default")],16))}});var Vh=fe(Bh,[["__file","icon.vue"]]);const Se=He(Vh);function cu(){let e;const t=(l,a)=>{n(),e=window.setTimeout(l,a)},n=()=>window.clearTimeout(e);return $p(()=>n()),{registerTimeout:t,cancelTimeout:n}}const ad=de({showAfter:{type:Number,default:0},hideAfter:{type:Number,default:200},autoClose:{type:Number,default:0}}),sd=({showAfter:e,hideAfter:t,autoClose:n,open:l,close:a})=>{const{registerTimeout:s}=cu(),{registerTimeout:r,cancelTimeout:i}=cu();return{onOpen:d=>{s(()=>{l(d);const f=o(n);Te(f)&&f>0&&r(()=>{a(d)},f)},o(e))},onClose:d=>{i(),s(()=>{a(d)},o(t))}}};/*! Element Plus Icons Vue v2.3.1 */var Dh=x({name:"ArrowDown",__name:"arrow-down",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("path",{fill:"currentColor",d:"M831.872 340.864 512 652.672 192.128 340.864a30.592 30.592 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.592 30.592 0 0 0-42.752 0z"})]))}}),nl=Dh,Ah=x({name:"ArrowLeft",__name:"arrow-left",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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.592 30.592 0 0 0 0-42.752L339.264 511.936l311.872-319.872a30.592 30.592 0 0 0 0-42.688 29.12 29.12 0 0 0-41.728 0z"})]))}}),dl=Ah,Fh=x({name:"ArrowRight",__name:"arrow-right",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("path",{fill:"currentColor",d:"M340.864 149.312a30.592 30.592 0 0 0 0 42.752L652.736 512 340.864 831.872a30.592 30.592 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"})]))}}),Cn=Fh,xh=x({name:"ArrowUp",__name:"arrow-up",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),hs=xh,zh=x({name:"Back",__name:"back",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("path",{fill:"currentColor",d:"M224 480h640a32 32 0 1 1 0 64H224a32 32 0 0 1 0-64"}),F("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"})]))}}),Hh=zh,Kh=x({name:"Calendar",__name:"calendar",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),Wh=Kh,jh=x({name:"CaretRight",__name:"caret-right",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("path",{fill:"currentColor",d:"M384 192v640l384-320.064z"})]))}}),rd=jh,Uh=x({name:"CaretTop",__name:"caret-top",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("path",{fill:"currentColor",d:"M512 320 192 704h639.936z"})]))}}),Yh=Uh,qh=x({name:"Check",__name:"check",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),va=qh,Gh=x({name:"CircleCheckFilled",__name:"circle-check-filled",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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.272 38.272 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336z"})]))}}),Xh=Gh,Zh=x({name:"CircleCheck",__name:"circle-check",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"}),F("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.752l265.344-265.408z"})]))}}),Yr=Zh,Jh=x({name:"CircleCloseFilled",__name:"circle-close-filled",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),qr=Jh,Qh=x({name:"CircleClose",__name:"circle-close",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"}),F("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"})]))}}),ml=Qh,em=x({name:"Clock",__name:"clock",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"}),F("path",{fill:"currentColor",d:"M480 256a32 32 0 0 1 32 32v256a32 32 0 0 1-64 0V288a32 32 0 0 1 32-32"}),F("path",{fill:"currentColor",d:"M480 512h256q32 0 32 32t-32 32H480q-32 0-32-32t32-32"})]))}}),id=em,tm=x({name:"Close",__name:"close",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),zn=tm,nm=x({name:"DArrowLeft",__name:"d-arrow-left",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("path",{fill:"currentColor",d:"M529.408 149.376a29.12 29.12 0 0 1 41.728 0 30.592 30.592 0 0 1 0 42.688L259.264 511.936l311.872 319.936a30.592 30.592 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.672l331.648-340.224zm256 0a29.12 29.12 0 0 1 41.728 0 30.592 30.592 0 0 1 0 42.688L515.264 511.936l311.872 319.936a30.592 30.592 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.672l331.648-340.224z"})]))}}),Rl=nm,lm=x({name:"DArrowRight",__name:"d-arrow-right",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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.592 30.592 0 0 1 0-42.752L764.736 512 452.864 192a30.592 30.592 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.592 30.592 0 0 1 0-42.752L508.736 512 196.864 192a30.592 30.592 0 0 1 0-42.688z"})]))}}),Pl=lm,om=x({name:"Delete",__name:"delete",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),am=om,sm=x({name:"Document",__name:"document",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),rm=sm,im=x({name:"FullScreen",__name:"full-screen",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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-64l192-.192zm0 831.872-192-.192a32 32 0 0 1 0-64l192 .192V672a32 32 0 1 1 64 0v256h-64z"})]))}}),um=im,cm=x({name:"Hide",__name:"hide",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("path",{fill:"currentColor",d:"M876.8 156.8c0-9.6-3.2-16-9.6-22.4-6.4-6.4-12.8-9.6-22.4-9.6-9.6 0-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 176C44.8 438.4 0 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.4 0 9.6 3.2 16 9.6 22.4 6.4 6.4 12.8 9.6 22.4 9.6 9.6 0 16-3.2 22.4-9.6l704-710.4c3.2-6.4 6.4-12.8 6.4-22.4Zm-646.4 528c-76.8-70.4-128-128-153.6-172.8 28.8-48 80-105.6 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.4Zm140.8-96c-12.8-22.4-19.2-48-19.2-76.8 0-44.8 16-83.2 48-112 32-28.8 67.2-48 112-48 28.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.6-28.8 48-80 105.6-153.6 172.8-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-176C979.199 585.6 1024 528 1024 512s-48.001-73.6-134.401-176Z"}),F("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 112-32 28.8-67.2 48-112 48Z"})]))}}),dm=cm,fm=x({name:"InfoFilled",__name:"info-filled",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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.992 12.992 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"})]))}}),Go=fm,vm=x({name:"Loading",__name:"loading",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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.248zm452.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.248zM828.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 0z"})]))}}),Qn=vm,pm=x({name:"Minus",__name:"minus",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("path",{fill:"currentColor",d:"M128 544h768a32 32 0 1 0 0-64H128a32 32 0 0 0 0 64"})]))}}),hm=pm,mm=x({name:"MoreFilled",__name:"more-filled",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),du=mm,gm=x({name:"More",__name:"more",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),bm=gm,ym=x({name:"PictureFilled",__name:"picture-filled",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),Cm=ym,wm=x({name:"Plus",__name:"plus",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),ud=wm,km=x({name:"QuestionFilled",__name:"question-filled",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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.592 0-42.944-14.08-76.736-42.24-101.376-28.16-25.344-65.472-37.312-111.232-37.312zm-12.672 406.208a54.272 54.272 0 0 0-38.72 14.784 49.408 49.408 0 0 0-15.488 38.016c0 15.488 4.928 28.16 15.488 38.016A54.848 54.848 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.968 51.968 0 0 0-15.488-38.016 55.936 55.936 0 0 0-39.424-14.784z"})]))}}),Sm=km,Em=x({name:"RefreshLeft",__name:"refresh-left",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),_m=Em,Tm=x({name:"RefreshRight",__name:"refresh-right",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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.88z"})]))}}),$m=Tm,Nm=x({name:"ScaleToOriginal",__name:"scale-to-original",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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.118 30.118 0 0 0-30.118 30.118v301.177a30.118 30.118 0 0 0 60.236 0V331.294a30.118 30.118 0 0 0-30.118-30.118zm-361.412 0a30.118 30.118 0 0 0-30.118 30.118v301.177a30.118 30.118 0 1 0 60.236 0V331.294a30.118 30.118 0 0 0-30.118-30.118M512 361.412a30.118 30.118 0 0 0-30.118 30.117v30.118a30.118 30.118 0 0 0 60.236 0V391.53A30.118 30.118 0 0 0 512 361.412M512 512a30.118 30.118 0 0 0-30.118 30.118v30.117a30.118 30.118 0 0 0 60.236 0v-30.117A30.118 30.118 0 0 0 512 512"})]))}}),Im=Nm,Mm=x({name:"Search",__name:"search",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),Rm=Mm,Pm=x({name:"SortDown",__name:"sort-down",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),Om=Pm,Lm=x({name:"SortUp",__name:"sort-up",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),Bm=Lm,Vm=x({name:"StarFilled",__name:"star-filled",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("path",{fill:"currentColor",d:"M283.84 867.84 512 747.776l228.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.72z"})]))}}),ka=Vm,Dm=x({name:"Star",__name:"star",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),Am=Dm,Fm=x({name:"SuccessFilled",__name:"success-filled",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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.272 38.272 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336z"})]))}}),cd=Fm,xm=x({name:"View",__name:"view",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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-288zm0 64a224 224 0 1 1 0 448 224 224 0 0 1 0-448m0 64a160.192 160.192 0 0 0-160 160c0 88.192 71.744 160 160 160s160-71.808 160-160-71.744-160-160-160"})]))}}),zm=xm,Hm=x({name:"WarningFilled",__name:"warning-filled",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m0 192a58.432 58.432 0 0 0-58.24 63.744l23.36 256.384a35.072 35.072 0 0 0 69.76 0l23.296-256.384A58.432 58.432 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"})]))}}),ms=Hm,Km=x({name:"ZoomIn",__name:"zoom-in",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),dd=Km,Wm=x({name:"ZoomOut",__name:"zoom-out",setup(e){return(t,n)=>(_(),V("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[F("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"})]))}}),jm=Wm;const $t=Y([String,Object,Function]),fd={Close:zn},Gr={Close:zn,SuccessFilled:cd,InfoFilled:Go,WarningFilled:ms,CircleCloseFilled:qr},Ol={primary:Go,success:cd,warning:ms,error:qr,info:Go},gs={validating:Qn,success:Yr,error:ml},Um=["light","dark"],Ym=de({title:{type:String,default:""},description:{type:String,default:""},type:{type:String,values:ko(Ol),default:"info"},closable:{type:Boolean,default:!0},closeText:{type:String,default:""},showIcon:Boolean,center:Boolean,effect:{type:String,values:Um,default:"light"},...ad}),qm={open:()=>!0,close:e=>vt(e)||e instanceof Event},Gm=x({name:"ElAlert"}),Xm=x({...Gm,props:Ym,emits:qm,setup(e,{emit:t}){const n=e,{Close:l}=Gr,a=Xt(),s=ue("alert"),r=I(!1),i=y(()=>Ol[n.type]),u=y(()=>!!(n.description||a.default)),c=()=>{r.value=!0,t("open")},d=v=>{r.value=!1,t("close",v)},{onOpen:f,onClose:m}=sd({showAfter:wt(n,"showAfter"),hideAfter:wt(n,"hideAfter"),autoClose:wt(n,"autoClose"),open:c,close:d});return bt&&f(),(v,h)=>(_(),oe(an,{name:o(s).b("fade"),persisted:""},{default:U(()=>[We(F("div",{class:T([o(s).b(),o(s).m(v.type),o(s).is("center",v.center),o(s).is(v.effect)]),role:"alert"},[v.showIcon&&(v.$slots.icon||o(i))?(_(),oe(o(Se),{key:0,class:T([o(s).e("icon"),{[o(s).is("big")]:o(u)}])},{default:U(()=>[G(v.$slots,"icon",{},()=>[(_(),oe(Ge(o(i))))])]),_:3},8,["class"])):J("v-if",!0),F("div",{class:T(o(s).e("content"))},[v.title||v.$slots.title?(_(),V("span",{key:0,class:T([o(s).e("title"),{"with-description":o(u)}])},[G(v.$slots,"title",{},()=>[st(pe(v.title),1)])],2)):J("v-if",!0),o(u)?(_(),V("p",{key:1,class:T(o(s).e("description"))},[G(v.$slots,"default",{},()=>[st(pe(v.description),1)])],2)):J("v-if",!0),v.closable?(_(),V(Oe,{key:2},[v.closeText?(_(),V("div",{key:0,class:T([o(s).e("close-btn"),o(s).is("customed")]),onClick:d},pe(v.closeText),3)):(_(),oe(o(Se),{key:1,class:T(o(s).e("close-btn")),onClick:o(m)},{default:U(()=>[H(o(l))]),_:1},8,["class","onClick"]))],64)):J("v-if",!0)],2)],2),[[mt,r.value]])]),_:3},8,["name"]))}});var Zm=fe(Xm,[["__file","alert.vue"]]);const Jm=He(Zm),Xr=()=>bt&&/firefox/i.test(window.navigator.userAgent);let Tn;const Qm={height:"0",visibility:"hidden",overflow:Xr()?"":"hidden",position:"absolute","z-index":"-1000",top:"0",right:"0"},eg=["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"];function tg(e){const t=window.getComputedStyle(e),n=t.getPropertyValue("box-sizing"),l=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:eg.map(r=>[r,t.getPropertyValue(r)]),paddingSize:l,borderSize:a,boxSizing:n}}function fu(e,t=1,n){var l;Tn||(Tn=document.createElement("textarea"),document.body.appendChild(Tn));const{paddingSize:a,borderSize:s,boxSizing:r,contextStyle:i}=tg(e);i.forEach(([f,m])=>Tn==null?void 0:Tn.style.setProperty(f,m)),Object.entries(Qm).forEach(([f,m])=>Tn==null?void 0:Tn.style.setProperty(f,m,"important")),Tn.value=e.value||e.placeholder||"";let u=Tn.scrollHeight;const c={};r==="border-box"?u=u+s:r==="content-box"&&(u=u-a),Tn.value="";const d=Tn.scrollHeight-a;if(Te(t)){let f=d*t;r==="border-box"&&(f=f+a+s),u=Math.max(f,u),c.minHeight=`${f}px`}if(Te(n)){let f=d*n;r==="border-box"&&(f=f+a+s),u=Math.min(f,u)}return c.height=`${u}px`,(l=Tn.parentNode)==null||l.removeChild(Tn),Tn=void 0,c}const Vt=e=>e,ng=de({ariaLabel:String,ariaOrientation:{type:String,values:["horizontal","vertical","undefined"]},ariaControls:String}),cn=e=>An(ng,e),pa=de({id:{type:String,default:void 0},size:Jt,disabled:Boolean,modelValue:{type:Y([String,Number,Object]),default:""},maxlength:{type:[String,Number]},minlength:{type:[String,Number]},type:{type:String,default:"text"},resize:{type:String,values:["none","both","horizontal","vertical"]},autosize:{type:Y([Boolean,Object]),default:!1},autocomplete:{type:String,default:"off"},formatter:{type:Function},parser:{type:Function},placeholder:{type:String},form:{type:String},readonly:Boolean,clearable:Boolean,showPassword:Boolean,showWordLimit:Boolean,suffixIcon:{type:$t},prefixIcon:{type:$t},containerRole:{type:String,default:void 0},tabindex:{type:[String,Number],default:0},validateEvent:{type:Boolean,default:!0},inputStyle:{type:Y([Object,Array,String]),default:()=>Vt({})},autofocus:Boolean,rows:{type:Number,default:2},...cn(["ariaLabel"]),inputmode:{type:Y(String),default:void 0},name:String}),lg={[De]:e=>Ve(e),input:e=>Ve(e),change:e=>Ve(e),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},og=["class","style"],ag=/^on[A-Z]/,bs=(e={})=>{const{excludeListeners:t=!1,excludeKeys:n}=e,l=y(()=>((n==null?void 0:n.value)||[]).concat(og)),a=lt();return a?y(()=>{var s;return qo(Object.entries((s=a.proxy)==null?void 0:s.$attrs).filter(([r])=>!l.value.includes(r)&&!(t&&ag.test(r))))}):y(()=>({}))},vu={prefix:Math.floor(Math.random()*1e4),current:0},sg=Symbol("elIdInjection"),Zr=()=>lt()?we(sg,vu):vu,sn=e=>{const t=Zr(),n=Kr();return Ha(()=>o(e)||`${n.value}-id-${t.prefix}-${t.current++}`)},Jl=Symbol("formContextKey"),el=Symbol("formItemContextKey"),dn=()=>{const e=we(Jl,void 0),t=we(el,void 0);return{form:e,formItem:t}},Kn=(e,{formItemContext:t,disableIdGeneration:n,disableIdManagement:l})=>{n||(n=I(!1)),l||(l=I(!1));const a=I();let s;const r=y(()=>{var i;return!!(!(e.label||e.ariaLabel)&&t&&t.inputIds&&((i=t.inputIds)==null?void 0:i.length)<=1)});return Xe(()=>{s=ie([wt(e,"id"),n],([i,u])=>{const c=i??(u?void 0:sn().value);c!==a.value&&(t!=null&&t.removeInputId&&(a.value&&t.removeInputId(a.value),!(l!=null&&l.value)&&!u&&c&&t.addInputId(c)),a.value=c)},{immediate:!0})}),cs(()=>{s&&s(),t!=null&&t.removeInputId&&a.value&&t.removeInputId(a.value)}),{isLabeledByFormItem:r,inputId:a}},vd=e=>{const t=lt();return y(()=>{var n,l;return(l=(n=t==null?void 0:t.proxy)==null?void 0:n.$props)==null?void 0:l[e]})},Gt=(e,t={})=>{const n=I(void 0),l=t.prop?n:vd("size"),a=t.global?n:Zc(),s=t.form?{size:void 0}:we(Jl,void 0),r=t.formItem?{size:void 0}:we(el,void 0);return y(()=>l.value||o(e)||(r==null?void 0:r.size)||(s==null?void 0:s.size)||a.value||"")},fn=e=>{const t=vd("disabled"),n=we(Jl,void 0);return y(()=>t.value||o(e)||(n==null?void 0:n.disabled)||!1)},rg='a[href],button:not([disabled]),button:not([hidden]),:not([tabindex="-1"]),input:not([disabled]),input:not([type="hidden"]),select:not([disabled]),textarea:not([disabled])',ig=e=>getComputedStyle(e).position==="fixed"?!1:e.offsetParent!==null,pu=e=>Array.from(e.querySelectorAll(rg)).filter(t=>Xo(t)&&ig(t)),Xo=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}},La=function(e,t,...n){let l;t.includes("mouse")||t.includes("click")?l="MouseEvents":t.includes("key")?l="KeyboardEvent":l="HTMLEvents";const a=document.createEvent(l);return a.initEvent(t,...n),e.dispatchEvent(a),e},pd=e=>!e.getAttribute("aria-owns"),hd=(e,t,n)=>{const{parentNode:l}=e;if(!l)return null;const a=l.querySelectorAll(n),s=Array.prototype.indexOf.call(a,e);return a[s+t]||null},Ba=e=>{e&&(e.focus(),!pd(e)&&e.click())};function Ll(e,{disabled:t,beforeFocus:n,afterFocus:l,beforeBlur:a,afterBlur:s}={}){const r=lt(),{emit:i}=r,u=Lt(),c=I(!1),d=v=>{const h=Qe(n)?n(v):!1;o(t)||c.value||h||(c.value=!0,i("focus",v),l==null||l())},f=v=>{var h;const p=Qe(a)?a(v):!1;o(t)||v.relatedTarget&&((h=u.value)!=null&&h.contains(v.relatedTarget))||p||(c.value=!1,i("blur",v),s==null||s())},m=v=>{var h,p;o(t)||Xo(v.target)||(h=u.value)!=null&&h.contains(document.activeElement)&&u.value!==document.activeElement||(p=e.value)==null||p.focus()};return ie([u,()=>o(t)],([v,h])=>{v&&(h?v.removeAttribute("tabindex"):v.setAttribute("tabindex","-1"))}),xt(u,"focus",d,!0),xt(u,"blur",f,!0),xt(u,"click",m,!0),{isFocused:c,wrapperRef:u,handleFocus:d,handleBlur:f}}const ug=e=>/([\uAC00-\uD7AF\u3130-\u318F])+/gi.test(e);function ha({afterComposition:e,emit:t}){const n=I(!1),l=i=>{t==null||t("compositionstart",i),n.value=!0},a=i=>{var u;t==null||t("compositionupdate",i);const c=(u=i.target)==null?void 0:u.value,d=c[c.length-1]||"";n.value=!ug(d)},s=i=>{t==null||t("compositionend",i),n.value&&(n.value=!1,Ee(()=>e(i)))};return{isComposing:n,handleComposition:i=>{i.type==="compositionend"?s(i):a(i)},handleCompositionStart:l,handleCompositionUpdate:a,handleCompositionEnd:s}}function cg(e){let t;function n(){if(e.value==null)return;const{selectionStart:a,selectionEnd:s,value:r}=e.value;if(a==null||s==null)return;const i=r.slice(0,Math.max(0,a)),u=r.slice(Math.max(0,s));t={selectionStart:a,selectionEnd:s,value:r,beforeTxt:i,afterTxt:u}}function l(){if(e.value==null||t==null)return;const{value:a}=e.value,{beforeTxt:s,afterTxt:r,selectionStart:i}=t;if(s==null||r==null||i==null)return;let u=a.length;if(a.endsWith(r))u=a.length-r.length;else if(a.startsWith(s))u=s.length;else{const c=s[i-1],d=a.indexOf(c,i-1);d!==-1&&(u=d+1)}e.value.setSelectionRange(u,u)}return[n,l]}const dg="ElInput",fg=x({name:dg,inheritAttrs:!1}),vg=x({...fg,props:pa,emits:lg,setup(e,{expose:t,emit:n}){const l=e,a=pl(),s=bs(),r=Xt(),i=y(()=>[l.type==="textarea"?p.b():h.b(),h.m(m.value),h.is("disabled",v.value),h.is("exceed",Q.value),{[h.b("group")]:r.prepend||r.append,[h.m("prefix")]:r.prefix||l.prefixIcon,[h.m("suffix")]:r.suffix||l.suffixIcon||l.clearable||l.showPassword,[h.bm("suffix","password-clear")]:B.value&&A.value,[h.b("hidden")]:l.type==="hidden"},a.class]),u=y(()=>[h.e("wrapper"),h.is("focus",M.value)]),{form:c,formItem:d}=dn(),{inputId:f}=Kn(l,{formItemContext:d}),m=Gt(),v=fn(),h=ue("input"),p=ue("textarea"),g=Lt(),b=Lt(),E=I(!1),C=I(!1),w=I(),k=Lt(l.inputStyle),S=y(()=>g.value||b.value),{wrapperRef:$,isFocused:M,handleFocus:R,handleBlur:N}=Ll(S,{disabled:v,afterBlur(){var ye;l.validateEvent&&((ye=d==null?void 0:d.validate)==null||ye.call(d,"blur").catch(Ue=>void 0))}}),O=y(()=>{var ye;return(ye=c==null?void 0:c.statusIcon)!=null?ye:!1}),P=y(()=>(d==null?void 0:d.validateState)||""),W=y(()=>P.value&&gs[P.value]),K=y(()=>C.value?zm:dm),D=y(()=>[a.style]),L=y(()=>[l.inputStyle,k.value,{resize:l.resize}]),z=y(()=>qt(l.modelValue)?"":String(l.modelValue)),B=y(()=>l.clearable&&!v.value&&!l.readonly&&!!z.value&&(M.value||E.value)),A=y(()=>l.showPassword&&!v.value&&!!z.value),ne=y(()=>l.showWordLimit&&!!l.maxlength&&(l.type==="text"||l.type==="textarea")&&!v.value&&!l.readonly&&!l.showPassword),j=y(()=>z.value.length),Q=y(()=>!!ne.value&&j.value>Number(l.maxlength)),Z=y(()=>!!r.suffix||!!l.suffixIcon||B.value||l.showPassword||ne.value||!!P.value&&O.value),[ee,ae]=cg(g);Ft(b,ye=>{if(se(),!ne.value||l.resize!=="both")return;const Ue=ye[0],{width:It}=Ue.contentRect;w.value={right:`calc(100% - ${It+15+6}px)`}});const re=()=>{const{type:ye,autosize:Ue}=l;if(!(!bt||ye!=="textarea"||!b.value))if(Ue){const It=yt(Ue)?Ue.minRows:void 0,Ot=yt(Ue)?Ue.maxRows:void 0,Rt=fu(b.value,It,Ot);k.value={overflowY:"hidden",...Rt},Ee(()=>{b.value.offsetHeight,k.value=Rt})}else k.value={minHeight:fu(b.value).minHeight}},se=(ye=>{let Ue=!1;return()=>{var It;if(Ue||!l.autosize)return;((It=b.value)==null?void 0:It.offsetParent)===null||(ye(),Ue=!0)}})(re),ge=()=>{const ye=S.value,Ue=l.formatter?l.formatter(z.value):z.value;!ye||ye.value===Ue||(ye.value=Ue)},Be=async ye=>{ee();let{value:Ue}=ye.target;if(l.formatter&&l.parser&&(Ue=l.parser(Ue)),!ce.value){if(Ue===z.value){ge();return}n(De,Ue),n(Zt,Ue),await Ee(),ge(),ae()}},te=ye=>{let{value:Ue}=ye.target;l.formatter&&l.parser&&(Ue=l.parser(Ue)),n(nt,Ue)},{isComposing:ce,handleCompositionStart:Ie,handleCompositionUpdate:Ae,handleCompositionEnd:xe}=ha({emit:n,afterComposition:Be}),Ye=()=>{ee(),C.value=!C.value,setTimeout(ae)},$e=()=>{var ye;return(ye=S.value)==null?void 0:ye.focus()},Me=()=>{var ye;return(ye=S.value)==null?void 0:ye.blur()},Pe=ye=>{E.value=!1,n("mouseleave",ye)},Ze=ye=>{E.value=!0,n("mouseenter",ye)},ot=ye=>{n("keydown",ye)},at=()=>{var ye;(ye=S.value)==null||ye.select()},ct=()=>{n(De,""),n(nt,""),n("clear"),n(Zt,"")};return ie(()=>l.modelValue,()=>{var ye;Ee(()=>re()),l.validateEvent&&((ye=d==null?void 0:d.validate)==null||ye.call(d,"change").catch(Ue=>void 0))}),ie(z,()=>ge()),ie(()=>l.type,async()=>{await Ee(),ge(),re()}),Xe(()=>{!l.formatter&&l.parser,ge(),Ee(re)}),t({input:g,textarea:b,ref:S,textareaStyle:L,autosize:wt(l,"autosize"),isComposing:ce,focus:$e,blur:Me,select:at,clear:ct,resizeTextarea:re}),(ye,Ue)=>(_(),V("div",{class:T([o(i),{[o(h).bm("group","append")]:ye.$slots.append,[o(h).bm("group","prepend")]:ye.$slots.prepend}]),style:_e(o(D)),onMouseenter:Ze,onMouseleave:Pe},[J(" input "),ye.type!=="textarea"?(_(),V(Oe,{key:0},[J(" prepend slot "),ye.$slots.prepend?(_(),V("div",{key:0,class:T(o(h).be("group","prepend"))},[G(ye.$slots,"prepend")],2)):J("v-if",!0),F("div",{ref_key:"wrapperRef",ref:$,class:T(o(u))},[J(" prefix slot "),ye.$slots.prefix||ye.prefixIcon?(_(),V("span",{key:0,class:T(o(h).e("prefix"))},[F("span",{class:T(o(h).e("prefix-inner"))},[G(ye.$slots,"prefix"),ye.prefixIcon?(_(),oe(o(Se),{key:0,class:T(o(h).e("icon"))},{default:U(()=>[(_(),oe(Ge(ye.prefixIcon)))]),_:1},8,["class"])):J("v-if",!0)],2)],2)):J("v-if",!0),F("input",et({id:o(f),ref_key:"input",ref:g,class:o(h).e("inner")},o(s),{name:ye.name,minlength:ye.minlength,maxlength:ye.maxlength,type:ye.showPassword?C.value?"text":"password":ye.type,disabled:o(v),readonly:ye.readonly,autocomplete:ye.autocomplete,tabindex:ye.tabindex,"aria-label":ye.ariaLabel,placeholder:ye.placeholder,style:ye.inputStyle,form:ye.form,autofocus:ye.autofocus,role:ye.containerRole,inputmode:ye.inputmode,onCompositionstart:o(Ie),onCompositionupdate:o(Ae),onCompositionend:o(xe),onInput:Be,onChange:te,onKeydown:ot}),null,16,["id","name","minlength","maxlength","type","disabled","readonly","autocomplete","tabindex","aria-label","placeholder","form","autofocus","role","inputmode","onCompositionstart","onCompositionupdate","onCompositionend"]),J(" suffix slot "),o(Z)?(_(),V("span",{key:1,class:T(o(h).e("suffix"))},[F("span",{class:T(o(h).e("suffix-inner"))},[!o(B)||!o(A)||!o(ne)?(_(),V(Oe,{key:0},[G(ye.$slots,"suffix"),ye.suffixIcon?(_(),oe(o(Se),{key:0,class:T(o(h).e("icon"))},{default:U(()=>[(_(),oe(Ge(ye.suffixIcon)))]),_:1},8,["class"])):J("v-if",!0)],64)):J("v-if",!0),o(B)?(_(),oe(o(Se),{key:1,class:T([o(h).e("icon"),o(h).e("clear")]),onMousedown:Le(o(Bt),["prevent"]),onClick:ct},{default:U(()=>[H(o(ml))]),_:1},8,["class","onMousedown"])):J("v-if",!0),o(A)?(_(),oe(o(Se),{key:2,class:T([o(h).e("icon"),o(h).e("password")]),onClick:Ye},{default:U(()=>[(_(),oe(Ge(o(K))))]),_:1},8,["class"])):J("v-if",!0),o(ne)?(_(),V("span",{key:3,class:T(o(h).e("count"))},[F("span",{class:T(o(h).e("count-inner"))},pe(o(j))+" / "+pe(ye.maxlength),3)],2)):J("v-if",!0),o(P)&&o(W)&&o(O)?(_(),oe(o(Se),{key:4,class:T([o(h).e("icon"),o(h).e("validateIcon"),o(h).is("loading",o(P)==="validating")])},{default:U(()=>[(_(),oe(Ge(o(W))))]),_:1},8,["class"])):J("v-if",!0)],2)],2)):J("v-if",!0)],2),J(" append slot "),ye.$slots.append?(_(),V("div",{key:1,class:T(o(h).be("group","append"))},[G(ye.$slots,"append")],2)):J("v-if",!0)],64)):(_(),V(Oe,{key:1},[J(" textarea "),F("textarea",et({id:o(f),ref_key:"textarea",ref:b,class:[o(p).e("inner"),o(h).is("focus",o(M))]},o(s),{minlength:ye.minlength,maxlength:ye.maxlength,tabindex:ye.tabindex,disabled:o(v),readonly:ye.readonly,autocomplete:ye.autocomplete,style:o(L),"aria-label":ye.ariaLabel,placeholder:ye.placeholder,form:ye.form,autofocus:ye.autofocus,rows:ye.rows,role:ye.containerRole,onCompositionstart:o(Ie),onCompositionupdate:o(Ae),onCompositionend:o(xe),onInput:Be,onFocus:o(R),onBlur:o(N),onChange:te,onKeydown:ot}),null,16,["id","minlength","maxlength","tabindex","disabled","readonly","autocomplete","aria-label","placeholder","form","autofocus","rows","role","onCompositionstart","onCompositionupdate","onCompositionend","onFocus","onBlur"]),o(ne)?(_(),V("span",{key:0,style:_e(w.value),class:T(o(h).e("count"))},pe(o(j))+" / "+pe(ye.maxlength),7)):J("v-if",!0)],64))],38))}});var pg=fe(vg,[["__file","input.vue"]]);const hn=He(pg),no=4,md={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"}},hg=({move:e,size:t,bar:n})=>({[n.size]:t,transform:`translate${n.axis}(${e}%)`}),Jr=Symbol("scrollbarContextKey"),mg=de({vertical:Boolean,size:String,move:Number,ratio:{type:Number,required:!0},always:Boolean}),gg="Thumb",bg=x({__name:"thumb",props:mg,setup(e){const t=e,n=we(Jr),l=ue("scrollbar");n||jt(gg,"can not inject scrollbar context");const a=I(),s=I(),r=I({}),i=I(!1);let u=!1,c=!1,d=0,f=0,m=bt?document.onselectstart:null;const v=y(()=>md[t.vertical?"vertical":"horizontal"]),h=y(()=>hg({size:t.size,move:t.move,bar:v.value})),p=y(()=>a.value[v.value.offset]**2/n.wrapElement[v.value.scrollSize]/t.ratio/s.value[v.value.offset]),g=M=>{var R;if(M.stopPropagation(),M.ctrlKey||[1,2].includes(M.button))return;(R=window.getSelection())==null||R.removeAllRanges(),E(M);const N=M.currentTarget;N&&(r.value[v.value.axis]=N[v.value.offset]-(M[v.value.client]-N.getBoundingClientRect()[v.value.direction]))},b=M=>{if(!s.value||!a.value||!n.wrapElement)return;const R=Math.abs(M.target.getBoundingClientRect()[v.value.direction]-M[v.value.client]),N=s.value[v.value.offset]/2,O=(R-N)*100*p.value/a.value[v.value.offset];n.wrapElement[v.value.scroll]=O*n.wrapElement[v.value.scrollSize]/100},E=M=>{M.stopImmediatePropagation(),u=!0,d=n.wrapElement.scrollHeight,f=n.wrapElement.scrollWidth,document.addEventListener("mousemove",C),document.addEventListener("mouseup",w),m=document.onselectstart,document.onselectstart=()=>!1},C=M=>{if(!a.value||!s.value||u===!1)return;const R=r.value[v.value.axis];if(!R)return;const N=(a.value.getBoundingClientRect()[v.value.direction]-M[v.value.client])*-1,O=s.value[v.value.offset]-R,P=(N-O)*100*p.value/a.value[v.value.offset];v.value.scroll==="scrollLeft"?n.wrapElement[v.value.scroll]=P*f/100:n.wrapElement[v.value.scroll]=P*d/100},w=()=>{u=!1,r.value[v.value.axis]=0,document.removeEventListener("mousemove",C),document.removeEventListener("mouseup",w),$(),c&&(i.value=!1)},k=()=>{c=!1,i.value=!!t.size},S=()=>{c=!0,i.value=u};Nt(()=>{$(),document.removeEventListener("mouseup",w)});const $=()=>{document.onselectstart!==m&&(document.onselectstart=m)};return xt(wt(n,"scrollbarElement"),"mousemove",k),xt(wt(n,"scrollbarElement"),"mouseleave",S),(M,R)=>(_(),oe(an,{name:o(l).b("fade"),persisted:""},{default:U(()=>[We(F("div",{ref_key:"instance",ref:a,class:T([o(l).e("bar"),o(l).is(o(v).key)]),onMousedown:b,onClick:Le(()=>{},["stop"])},[F("div",{ref_key:"thumb",ref:s,class:T(o(l).e("thumb")),style:_e(o(h)),onMousedown:g},null,38)],42,["onClick"]),[[mt,M.always||i.value]])]),_:1},8,["name"]))}});var hu=fe(bg,[["__file","thumb.vue"]]);const yg=de({always:{type:Boolean,default:!0},minSize:{type:Number,required:!0}}),Cg=x({__name:"bar",props:yg,setup(e,{expose:t}){const n=e,l=we(Jr),a=I(0),s=I(0),r=I(""),i=I(""),u=I(1),c=I(1);return t({handleScroll:m=>{if(m){const v=m.offsetHeight-no,h=m.offsetWidth-no;s.value=m.scrollTop*100/v*u.value,a.value=m.scrollLeft*100/h*c.value}},update:()=>{const m=l==null?void 0:l.wrapElement;if(!m)return;const v=m.offsetHeight-no,h=m.offsetWidth-no,p=v**2/m.scrollHeight,g=h**2/m.scrollWidth,b=Math.max(p,n.minSize),E=Math.max(g,n.minSize);u.value=p/(v-p)/(b/(v-b)),c.value=g/(h-g)/(E/(h-E)),i.value=b+no(_(),V(Oe,null,[H(hu,{move:a.value,ratio:c.value,size:r.value,always:m.always},null,8,["move","ratio","size","always"]),H(hu,{move:s.value,ratio:u.value,size:i.value,vertical:"",always:m.always},null,8,["move","ratio","size","always"])],64))}});var wg=fe(Cg,[["__file","bar.vue"]]);const kg=de({height:{type:[String,Number],default:""},maxHeight:{type:[String,Number],default:""},native:Boolean,wrapStyle:{type:Y([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,...cn(["ariaLabel","ariaOrientation"])}),gd={"end-reached":e=>["left","right","top","bottom"].includes(e),scroll:({scrollTop:e,scrollLeft:t})=>[e,t].every(Te)},Sg="ElScrollbar",Eg=x({name:Sg}),_g=x({...Eg,props:kg,emits:gd,setup(e,{expose:t,emit:n}){const l=e,a=ue("scrollbar");let s,r,i=0,u=0,c="";const d=I(),f=I(),m=I(),v=I(),h=y(()=>{const S={};return l.height&&(S.height=zt(l.height)),l.maxHeight&&(S.maxHeight=zt(l.maxHeight)),[l.wrapStyle,S]}),p=y(()=>[l.wrapClass,a.e("wrap"),{[a.em("wrap","hidden-default")]:!l.native}]),g=y(()=>[a.e("view"),l.viewClass]),b=()=>{var S;if(f.value){(S=v.value)==null||S.handleScroll(f.value);const $=i,M=u;i=f.value.scrollTop,u=f.value.scrollLeft;const R={bottom:i+f.value.clientHeight>=f.value.scrollHeight,top:i<=0&&$!==0,right:u+f.value.clientWidth>=f.value.scrollWidth&&M!==u,left:u<=0&&M!==0};$!==i&&(c=i>$?"bottom":"top"),M!==u&&(c=u>M?"right":"left"),n("scroll",{scrollTop:i,scrollLeft:u}),R[c]&&n("end-reached",c)}};function E(S,$){yt(S)?f.value.scrollTo(S):Te(S)&&Te($)&&f.value.scrollTo(S,$)}const C=S=>{Te(S)&&(f.value.scrollTop=S)},w=S=>{Te(S)&&(f.value.scrollLeft=S)},k=()=>{var S;(S=v.value)==null||S.update()};return ie(()=>l.noresize,S=>{S?(s==null||s(),r==null||r()):({stop:s}=Ft(m,k),r=xt("resize",k))},{immediate:!0}),ie(()=>[l.maxHeight,l.height],()=>{l.native||Ee(()=>{var S;k(),f.value&&((S=v.value)==null||S.handleScroll(f.value))})}),rt(Jr,kt({scrollbarElement:d,wrapElement:f})),Fr(()=>{f.value&&(f.value.scrollTop=i,f.value.scrollLeft=u)}),Xe(()=>{l.native||Ee(()=>{k()})}),hl(()=>k()),t({wrapRef:f,update:k,scrollTo:E,setScrollTop:C,setScrollLeft:w,handleScroll:b}),(S,$)=>(_(),V("div",{ref_key:"scrollbarRef",ref:d,class:T(o(a).b())},[F("div",{ref_key:"wrapRef",ref:f,class:T(o(p)),style:_e(o(h)),tabindex:S.tabindex,onScroll:b},[(_(),oe(Ge(S.tag),{id:S.id,ref_key:"resizeRef",ref:m,class:T(o(g)),style:_e(S.viewStyle),role:S.role,"aria-label":S.ariaLabel,"aria-orientation":S.ariaOrientation},{default:U(()=>[G(S.$slots,"default")]),_:3},8,["id","class","style","role","aria-label","aria-orientation"]))],46,["tabindex"]),S.native?J("v-if",!0):(_(),oe(wg,{key:0,ref_key:"barRef",ref:v,always:S.always,"min-size":S.minSize},null,8,["always","min-size"]))],2))}});var Tg=fe(_g,[["__file","scrollbar.vue"]]);const jn=He(Tg),Qr=Symbol("popper"),bd=Symbol("popperContent"),yd=["dialog","grid","group","listbox","menu","navigation","tooltip","tree"],Cd=de({role:{type:String,values:yd,default:"tooltip"}}),$g=x({name:"ElPopper",inheritAttrs:!1}),Ng=x({...$g,props:Cd,setup(e,{expose:t}){const n=e,l=I(),a=I(),s=I(),r=I(),i=y(()=>n.role),u={triggerRef:l,popperInstanceRef:a,contentRef:s,referenceRef:r,role:i};return t(u),rt(Qr,u),(c,d)=>G(c.$slots,"default")}});var Ig=fe(Ng,[["__file","popper.vue"]]);const Mg=x({name:"ElPopperArrow",inheritAttrs:!1}),Rg=x({...Mg,setup(e,{expose:t}){const n=ue("popper"),{arrowRef:l,arrowStyle:a}=we(bd,void 0);return Nt(()=>{l.value=void 0}),t({arrowRef:l}),(s,r)=>(_(),V("span",{ref_key:"arrowRef",ref:l,class:T(o(n).e("arrow")),style:_e(o(a)),"data-popper-arrow":""},null,6))}});var Pg=fe(Rg,[["__file","arrow.vue"]]);const wd=de({virtualRef:{type:Y(Object)},virtualTriggering:Boolean,onMouseenter:{type:Y(Function)},onMouseleave:{type:Y(Function)},onClick:{type:Y(Function)},onKeydown:{type:Y(Function)},onFocus:{type:Y(Function)},onBlur:{type:Y(Function)},onContextmenu:{type:Y(Function)},id:String,open:Boolean}),kd=Symbol("elForwardRef"),Og=e=>{rt(kd,{setForwardRef:n=>{e.value=n}})},Lg=e=>({mounted(t){e(t)},updated(t){e(t)},unmounted(){e(null)}}),Bg="ElOnlyChild",Sd=x({name:Bg,setup(e,{slots:t,attrs:n}){var l;const a=we(kd),s=Lg((l=a==null?void 0:a.setForwardRef)!=null?l:Bt);return()=>{var r;const i=(r=t.default)==null?void 0:r.call(t,n);if(!i||i.length>1)return null;const u=Ed(i);return u?We(Np(u,n),[[s]]):null}}});function Ed(e){if(!e)return null;const t=e;for(const n of t){if(yt(n))switch(n.type){case jl:continue;case Nc:case"svg":return mu(n);case Oe:return Ed(n.children);default:return n}return mu(n)}return null}function mu(e){const t=ue("only-child");return H("span",{class:t.e("content")},[e])}const Vg=x({name:"ElPopperTrigger",inheritAttrs:!1}),Dg=x({...Vg,props:wd,setup(e,{expose:t}){const n=e,{role:l,triggerRef:a}=we(Qr,void 0);Og(a);const s=y(()=>i.value?n.id:void 0),r=y(()=>{if(l&&l.value==="tooltip")return n.open&&n.id?n.id:void 0}),i=y(()=>{if(l&&l.value!=="tooltip")return l.value}),u=y(()=>i.value?`${n.open}`:void 0);let c;const d=["onMouseenter","onMouseleave","onClick","onKeydown","onFocus","onBlur","onContextmenu"];return Xe(()=>{ie(()=>n.virtualRef,f=>{f&&(a.value=ua(f))},{immediate:!0}),ie(a,(f,m)=>{c==null||c(),c=void 0,_n(f)&&(d.forEach(v=>{var h;const p=n[v];p&&(f.addEventListener(v.slice(2).toLowerCase(),p),(h=m==null?void 0:m.removeEventListener)==null||h.call(m,v.slice(2).toLowerCase(),p))}),Xo(f)&&(c=ie([s,r,i,u],v=>{["aria-controls","aria-describedby","aria-haspopup","aria-expanded"].forEach((h,p)=>{qt(v[p])?f.removeAttribute(h):f.setAttribute(h,v[p])})},{immediate:!0}))),_n(m)&&Xo(m)&&["aria-controls","aria-describedby","aria-haspopup","aria-expanded"].forEach(v=>m.removeAttribute(v))},{immediate:!0})}),Nt(()=>{if(c==null||c(),c=void 0,a.value&&_n(a.value)){const f=a.value;d.forEach(m=>{const v=n[m];v&&f.removeEventListener(m.slice(2).toLowerCase(),v)}),a.value=void 0}}),t({triggerRef:a}),(f,m)=>f.virtualTriggering?J("v-if",!0):(_(),oe(o(Sd),et({key:0},f.$attrs,{"aria-controls":o(s),"aria-describedby":o(r),"aria-expanded":o(u),"aria-haspopup":o(i)}),{default:U(()=>[G(f.$slots,"default")]),_:3},16,["aria-controls","aria-describedby","aria-expanded","aria-haspopup"]))}});var Ag=fe(Dg,[["__file","trigger.vue"]]);const As="focus-trap.focus-after-trapped",Fs="focus-trap.focus-after-released",Fg="focus-trap.focusout-prevented",gu={cancelable:!0,bubbles:!1},xg={cancelable:!0,bubbles:!1},bu="focusAfterTrapped",yu="focusAfterReleased",ei=Symbol("elFocusTrap"),ti=I(),ys=I(0),ni=I(0);let Sa=0;const _d=e=>{const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:l=>{const a=l.tagName==="INPUT"&&l.type==="hidden";return l.disabled||l.hidden||a?NodeFilter.FILTER_SKIP:l.tabIndex>=0||l===document.activeElement?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t},Cu=(e,t)=>{for(const n of e)if(!zg(n,t))return n},zg=(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},Hg=e=>{const t=_d(e),n=Cu(t,e),l=Cu(t.reverse(),e);return[n,l]},Kg=e=>e instanceof HTMLInputElement&&"select"in e,al=(e,t)=>{if(e&&e.focus){const n=document.activeElement;let l=!1;_n(e)&&!Xo(e)&&!e.getAttribute("tabindex")&&(e.setAttribute("tabindex","-1"),l=!0),e.focus({preventScroll:!0}),ni.value=window.performance.now(),e!==n&&Kg(e)&&t&&e.select(),_n(e)&&l&&e.removeAttribute("tabindex")}};function wu(e,t){const n=[...e],l=e.indexOf(t);return l!==-1&&n.splice(l,1),n}const Wg=()=>{let e=[];return{push:l=>{const a=e[0];a&&l!==a&&a.pause(),e=wu(e,l),e.unshift(l)},remove:l=>{var a,s;e=wu(e,l),(s=(a=e[0])==null?void 0:a.resume)==null||s.call(a)}}},jg=(e,t=!1)=>{const n=document.activeElement;for(const l of e)if(al(l,t),document.activeElement!==n)return},ku=Wg(),Ug=()=>ys.value>ni.value,Ea=()=>{ti.value="pointer",ys.value=window.performance.now()},Su=()=>{ti.value="keyboard",ys.value=window.performance.now()},Yg=()=>(Xe(()=>{Sa===0&&(document.addEventListener("mousedown",Ea),document.addEventListener("touchstart",Ea),document.addEventListener("keydown",Su)),Sa++}),Nt(()=>{Sa--,Sa<=0&&(document.removeEventListener("mousedown",Ea),document.removeEventListener("touchstart",Ea),document.removeEventListener("keydown",Su))}),{focusReason:ti,lastUserFocusTimestamp:ys,lastAutomatedFocusTimestamp:ni}),_a=e=>new CustomEvent(Fg,{...xg,detail:e}),Ce={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"};let io=[];const Eu=e=>{e.code===Ce.esc&&io.forEach(t=>t(e))},qg=e=>{Xe(()=>{io.length===0&&document.addEventListener("keydown",Eu),bt&&io.push(e)}),Nt(()=>{io=io.filter(t=>t!==e),io.length===0&&bt&&document.removeEventListener("keydown",Eu)})},Gg=x({name:"ElFocusTrap",inheritAttrs:!1,props:{loop:Boolean,trapped:Boolean,focusTrapEl:Object,focusStartEl:{type:[Object,String],default:"first"}},emits:[bu,yu,"focusin","focusout","focusout-prevented","release-requested"],setup(e,{emit:t}){const n=I();let l,a;const{focusReason:s}=Yg();qg(h=>{e.trapped&&!r.paused&&t("release-requested",h)});const r={paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}},i=h=>{if(!e.loop&&!e.trapped||r.paused)return;const{code:p,altKey:g,ctrlKey:b,metaKey:E,currentTarget:C,shiftKey:w}=h,{loop:k}=e,S=p===Ce.tab&&!g&&!b&&!E,$=document.activeElement;if(S&&$){const M=C,[R,N]=Hg(M);if(R&&N){if(!w&&$===N){const P=_a({focusReason:s.value});t("focusout-prevented",P),P.defaultPrevented||(h.preventDefault(),k&&al(R,!0))}else if(w&&[R,M].includes($)){const P=_a({focusReason:s.value});t("focusout-prevented",P),P.defaultPrevented||(h.preventDefault(),k&&al(N,!0))}}else if($===M){const P=_a({focusReason:s.value});t("focusout-prevented",P),P.defaultPrevented||h.preventDefault()}}};rt(ei,{focusTrapRef:n,onKeydown:i}),ie(()=>e.focusTrapEl,h=>{h&&(n.value=h)},{immediate:!0}),ie([n],([h],[p])=>{h&&(h.addEventListener("keydown",i),h.addEventListener("focusin",d),h.addEventListener("focusout",f)),p&&(p.removeEventListener("keydown",i),p.removeEventListener("focusin",d),p.removeEventListener("focusout",f))});const u=h=>{t(bu,h)},c=h=>t(yu,h),d=h=>{const p=o(n);if(!p)return;const g=h.target,b=h.relatedTarget,E=g&&p.contains(g);e.trapped||b&&p.contains(b)||(l=b),E&&t("focusin",h),!r.paused&&e.trapped&&(E?a=g:al(a,!0))},f=h=>{const p=o(n);if(!(r.paused||!p))if(e.trapped){const g=h.relatedTarget;!qt(g)&&!p.contains(g)&&setTimeout(()=>{if(!r.paused&&e.trapped){const b=_a({focusReason:s.value});t("focusout-prevented",b),b.defaultPrevented||al(a,!0)}},0)}else{const g=h.target;g&&p.contains(g)||t("focusout",h)}};async function m(){await Ee();const h=o(n);if(h){ku.push(r);const p=h.contains(document.activeElement)?l:document.activeElement;if(l=p,!h.contains(p)){const b=new Event(As,gu);h.addEventListener(As,u),h.dispatchEvent(b),b.defaultPrevented||Ee(()=>{let E=e.focusStartEl;Ve(E)||(al(E),document.activeElement!==E&&(E="first")),E==="first"&&jg(_d(h),!0),(document.activeElement===p||E==="container")&&al(h)})}}}function v(){const h=o(n);if(h){h.removeEventListener(As,u);const p=new CustomEvent(Fs,{...gu,detail:{focusReason:s.value}});h.addEventListener(Fs,c),h.dispatchEvent(p),!p.defaultPrevented&&(s.value=="keyboard"||!Ug()||h.contains(document.activeElement))&&al(l??document.body),h.removeEventListener(Fs,c),ku.remove(r)}}return Xe(()=>{e.trapped&&m(),ie(()=>e.trapped,h=>{h?m():v()})}),Nt(()=>{e.trapped&&v(),n.value&&(n.value.removeEventListener("keydown",i),n.value.removeEventListener("focusin",d),n.value.removeEventListener("focusout",f),n.value=void 0)}),{onKeydown:i}}});function Xg(e,t,n,l,a,s){return G(e.$slots,"default",{handleKeydown:e.onKeydown})}var Ro=fe(Gg,[["render",Xg],["__file","focus-trap.vue"]]);const Td=de({arrowOffset:{type:Number,default:5}}),Zg=["fixed","absolute"],Jg=de({boundariesPadding:{type:Number,default:0},fallbackPlacements:{type:Y(Array),default:void 0},gpuAcceleration:{type:Boolean,default:!0},offset:{type:Number,default:12},placement:{type:String,values:Xl,default:"bottom"},popperOptions:{type:Y(Object),default:()=>({})},strategy:{type:String,values:Zg,default:"absolute"}}),$d=de({...Jg,...Td,id:String,style:{type:Y([String,Array,Object])},className:{type:Y([String,Array,Object])},effect:{type:Y(String),default:"dark"},visible:Boolean,enterable:{type:Boolean,default:!0},pure:Boolean,focusOnShow:Boolean,trapping:Boolean,popperClass:{type:Y([String,Array,Object])},popperStyle:{type:Y([String,Array,Object])},referenceEl:{type:Y(Object)},triggerTargetEl:{type:Y(Object)},stopPopperMouseEvent:{type:Boolean,default:!0},virtualTriggering:Boolean,zIndex:Number,...cn(["ariaLabel"])}),Qg={mouseenter:e=>e instanceof MouseEvent,mouseleave:e=>e instanceof MouseEvent,focus:()=>!0,blur:()=>!0,close:()=>!0},eb=(e,t)=>{const n=I(!1),l=I();return{focusStartRef:l,trapped:n,onFocusAfterReleased:c=>{var d;((d=c.detail)==null?void 0:d.focusReason)!=="pointer"&&(l.value="first",t("blur"))},onFocusAfterTrapped:()=>{t("focus")},onFocusInTrap:c=>{e.visible&&!n.value&&(c.target&&(l.value=c.target),n.value=!0)},onFocusoutPrevented:c=>{e.trapping||(c.detail.focusReason==="pointer"&&c.preventDefault(),n.value=!1)},onReleaseRequested:()=>{n.value=!1,t("close")}}},tb=(e,t=[])=>{const{placement:n,strategy:l,popperOptions:a}=e,s={placement:n,strategy:l,...a,modifiers:[...lb(e),...t]};return ob(s,a==null?void 0:a.modifiers),s},nb=e=>{if(bt)return ua(e)};function lb(e){const{offset:t,gpuAcceleration:n,fallbackPlacements:l}=e;return[{name:"offset",options:{offset:[0,t??12]}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5,fallbackPlacements:l}},{name:"computeStyles",options:{gpuAcceleration:n}}]}function ob(e,t){t&&(e.modifiers=[...e.modifiers,...t??[]])}const ab=(e,t,n={})=>{const l={name:"updateState",enabled:!0,phase:"write",fn:({state:u})=>{const c=sb(u);Object.assign(r.value,c)},requires:["computeStyles"]},a=y(()=>{const{onFirstUpdate:u,placement:c,strategy:d,modifiers:f}=o(n);return{onFirstUpdate:u,placement:c||"bottom",strategy:d||"absolute",modifiers:[...f||[],l,{name:"applyStyles",enabled:!1}]}}),s=Lt(),r=I({styles:{popper:{position:o(a).strategy,left:"0",top:"0"},arrow:{position:"absolute"}},attributes:{}}),i=()=>{s.value&&(s.value.destroy(),s.value=void 0)};return ie(a,u=>{const c=o(s);c&&c.setOptions(u)},{deep:!0}),ie([e,t],([u,c])=>{i(),!(!u||!c)&&(s.value=Up(u,c,o(a)))}),Nt(()=>{i()}),{state:y(()=>{var u;return{...((u=o(s))==null?void 0:u.state)||{}}}),styles:y(()=>o(r).styles),attributes:y(()=>o(r).attributes),update:()=>{var u;return(u=o(s))==null?void 0:u.update()},forceUpdate:()=>{var u;return(u=o(s))==null?void 0:u.forceUpdate()},instanceRef:y(()=>o(s))}};function sb(e){const t=Object.keys(e.elements),n=qo(t.map(a=>[a,e.styles[a]||{}])),l=qo(t.map(a=>[a,e.attributes[a]]));return{styles:n,attributes:l}}const rb=0,ib=e=>{const{popperInstanceRef:t,contentRef:n,triggerRef:l,role:a}=we(Qr,void 0),s=I(),r=y(()=>e.arrowOffset),i=y(()=>({name:"eventListeners",enabled:!!e.visible})),u=y(()=>{var b;const E=o(s),C=(b=o(r))!=null?b:rb;return{name:"arrow",enabled:!Yp(E),options:{element:E,padding:C}}}),c=y(()=>({onFirstUpdate:()=>{h()},...tb(e,[o(u),o(i)])})),d=y(()=>nb(e.referenceEl)||o(l)),{attributes:f,state:m,styles:v,update:h,forceUpdate:p,instanceRef:g}=ab(d,n,c);return ie(g,b=>t.value=b,{flush:"sync"}),Xe(()=>{ie(()=>{var b;return(b=o(d))==null?void 0:b.getBoundingClientRect()},()=>{h()})}),{attributes:f,arrowRef:s,contentRef:n,instanceRef:g,state:m,styles:v,role:a,forceUpdate:p,update:h}},ub=(e,{attributes:t,styles:n,role:l})=>{const{nextZIndex:a}=Mo(),s=ue("popper"),r=y(()=>o(t).popper),i=I(Te(e.zIndex)?e.zIndex:a()),u=y(()=>[s.b(),s.is("pure",e.pure),s.is(e.effect),e.popperClass]),c=y(()=>[{zIndex:o(i)},o(n).popper,e.popperStyle||{}]),d=y(()=>l.value==="dialog"?"false":void 0),f=y(()=>o(n).arrow||{});return{ariaModal:d,arrowStyle:f,contentAttrs:r,contentClass:u,contentStyle:c,contentZIndex:i,updateZIndex:()=>{i.value=Te(e.zIndex)?e.zIndex:a()}}},cb=x({name:"ElPopperContent"}),db=x({...cb,props:$d,emits:Qg,setup(e,{expose:t,emit:n}){const l=e,{focusStartRef:a,trapped:s,onFocusAfterReleased:r,onFocusAfterTrapped:i,onFocusInTrap:u,onFocusoutPrevented:c,onReleaseRequested:d}=eb(l,n),{attributes:f,arrowRef:m,contentRef:v,styles:h,instanceRef:p,role:g,update:b}=ib(l),{ariaModal:E,arrowStyle:C,contentAttrs:w,contentClass:k,contentStyle:S,updateZIndex:$}=ub(l,{styles:h,attributes:f,role:g}),M=we(el,void 0);rt(bd,{arrowStyle:C,arrowRef:m}),M&&rt(el,{...M,addInputId:Bt,removeInputId:Bt});let R;const N=(P=!0)=>{b(),P&&$()},O=()=>{N(!1),l.visible&&l.focusOnShow?s.value=!0:l.visible===!1&&(s.value=!1)};return Xe(()=>{ie(()=>l.triggerTargetEl,(P,W)=>{R==null||R(),R=void 0;const K=o(P||v.value),D=o(W||v.value);_n(K)&&(R=ie([g,()=>l.ariaLabel,E,()=>l.id],L=>{["role","aria-label","aria-modal","id"].forEach((z,B)=>{qt(L[B])?K.removeAttribute(z):K.setAttribute(z,L[B])})},{immediate:!0})),D!==K&&_n(D)&&["role","aria-label","aria-modal","id"].forEach(L=>{D.removeAttribute(L)})},{immediate:!0}),ie(()=>l.visible,O,{immediate:!0})}),Nt(()=>{R==null||R(),R=void 0}),t({popperContentRef:v,popperInstanceRef:p,updatePopper:N,contentStyle:S}),(P,W)=>(_(),V("div",et({ref_key:"contentRef",ref:v},o(w),{style:o(S),class:o(k),tabindex:"-1",onMouseenter:K=>P.$emit("mouseenter",K),onMouseleave:K=>P.$emit("mouseleave",K)}),[H(o(Ro),{trapped:o(s),"trap-on-focus-in":!0,"focus-trap-el":o(v),"focus-start-el":o(a),onFocusAfterTrapped:o(i),onFocusAfterReleased:o(r),onFocusin:o(u),onFocusoutPrevented:o(c),onReleaseRequested:o(d)},{default:U(()=>[G(P.$slots,"default")]),_:3},8,["trapped","focus-trap-el","focus-start-el","onFocusAfterTrapped","onFocusAfterReleased","onFocusin","onFocusoutPrevented","onReleaseRequested"])],16,["onMouseenter","onMouseleave"]))}});var fb=fe(db,[["__file","content.vue"]]);const Nd=He(Ig),Cs=Symbol("elTooltip"),ws=de({to:{type:Y([String,Object]),required:!0},disabled:Boolean}),Wt=de({...ad,...$d,appendTo:{type:ws.to.type},content:{type:String,default:""},rawContent:Boolean,persistent:Boolean,visible:{type:Y(Boolean),default:null},transition:String,teleported:{type:Boolean,default:!0},disabled:Boolean,...cn(["ariaLabel"])}),mo=de({...wd,disabled:Boolean,trigger:{type:Y([String,Array]),default:"hover"},triggerKeys:{type:Y(Array),default:()=>[Ce.enter,Ce.numpadEnter,Ce.space]}}),vb=Un({type:Y(Boolean),default:null}),pb=Un({type:Y(Function)}),hb=e=>{const t=`update:${e}`,n=`onUpdate:${e}`,l=[t],a={[e]:vb,[n]:pb};return{useModelToggle:({indicator:r,toggleReason:i,shouldHideWhenRouteChanges:u,shouldProceed:c,onShow:d,onHide:f})=>{const m=lt(),{emit:v}=m,h=m.props,p=y(()=>Qe(h[n])),g=y(()=>h[e]===null),b=$=>{r.value!==!0&&(r.value=!0,i&&(i.value=$),Qe(d)&&d($))},E=$=>{r.value!==!1&&(r.value=!1,i&&(i.value=$),Qe(f)&&f($))},C=$=>{if(h.disabled===!0||Qe(c)&&!c())return;const M=p.value&&bt;M&&v(t,!0),(g.value||!M)&&b($)},w=$=>{if(h.disabled===!0||!bt)return;const M=p.value&&bt;M&&v(t,!1),(g.value||!M)&&E($)},k=$=>{_t($)&&(h.disabled&&$?p.value&&v(t,!1):r.value!==$&&($?b():E()))},S=()=>{r.value?w():C()};return ie(()=>h[e],k),u&&m.appContext.config.globalProperties.$route!==void 0&&ie(()=>({...m.proxy.$route}),()=>{u.value&&r.value&&w()}),Xe(()=>{k(h[e])}),{hide:w,show:C,toggle:S,hasUpdateHandler:p}},useModelToggleProps:a,useModelToggleEmits:l}},{useModelToggleProps:mb,useModelToggleEmits:gb,useModelToggle:bb}=hb("visible"),yb=de({...Cd,...mb,...Wt,...mo,...Td,showArrow:{type:Boolean,default:!0}}),Cb=[...gb,"before-show","before-hide","show","hide","open","close"],wb=(e,t)=>ke(e)?e.includes(t):e===t,lo=(e,t,n)=>l=>{wb(o(e),t)&&n(l)},Ht=(e,t,{checkForDefaultPrevented:n=!0}={})=>a=>{const s=e==null?void 0:e(a);if(n===!1||!s)return t==null?void 0:t(a)},_u=e=>t=>t.pointerType==="mouse"?e(t):void 0,kb=x({name:"ElTooltipTrigger"}),Sb=x({...kb,props:mo,setup(e,{expose:t}){const n=e,l=ue("tooltip"),{controlled:a,id:s,open:r,onOpen:i,onClose:u,onToggle:c}=we(Cs,void 0),d=I(null),f=()=>{if(o(a)||n.disabled)return!0},m=wt(n,"trigger"),v=Ht(f,lo(m,"hover",i)),h=Ht(f,lo(m,"hover",u)),p=Ht(f,lo(m,"click",w=>{w.button===0&&c(w)})),g=Ht(f,lo(m,"focus",i)),b=Ht(f,lo(m,"focus",u)),E=Ht(f,lo(m,"contextmenu",w=>{w.preventDefault(),c(w)})),C=Ht(f,w=>{const{code:k}=w;n.triggerKeys.includes(k)&&(w.preventDefault(),c(w))});return t({triggerRef:d}),(w,k)=>(_(),oe(o(Ag),{id:o(s),"virtual-ref":w.virtualRef,open:o(r),"virtual-triggering":w.virtualTriggering,class:T(o(l).e("trigger")),onBlur:o(b),onClick:o(p),onContextmenu:o(E),onFocus:o(g),onMouseenter:o(v),onMouseleave:o(h),onKeydown:o(C)},{default:U(()=>[G(w.$slots,"default")]),_:3},8,["id","virtual-ref","open","virtual-triggering","class","onBlur","onClick","onContextmenu","onFocus","onMouseenter","onMouseleave","onKeydown"]))}});var Eb=fe(Sb,[["__file","trigger.vue"]]);const _b=x({__name:"teleport",props:ws,setup(e){return(t,n)=>t.disabled?G(t.$slots,"default",{key:0}):(_(),oe(Ip,{key:1,to:t.to},[G(t.$slots,"default")],8,["to"]))}});var Tb=fe(_b,[["__file","teleport.vue"]]);const Po=He(Tb),Id=()=>{const e=Kr(),t=Zr(),n=y(()=>`${e.value}-popper-container-${t.prefix}`),l=y(()=>`#${n.value}`);return{id:n,selector:l}},$b=e=>{const t=document.createElement("div");return t.id=e,document.body.appendChild(t),t},Nb=()=>{const{id:e,selector:t}=Id();return xr(()=>{bt&&(document.body.querySelector(t.value)||$b(e.value))}),{id:e,selector:t}},Ib=x({name:"ElTooltipContent",inheritAttrs:!1}),Mb=x({...Ib,props:Wt,setup(e,{expose:t}){const n=e,{selector:l}=Id(),a=ue("tooltip"),s=I(),r=Ha(()=>{var B;return(B=s.value)==null?void 0:B.popperContentRef});let i;const{controlled:u,id:c,open:d,trigger:f,onClose:m,onOpen:v,onShow:h,onHide:p,onBeforeShow:g,onBeforeHide:b}=we(Cs,void 0),E=y(()=>n.transition||`${a.namespace.value}-fade-in-linear`),C=y(()=>n.persistent);Nt(()=>{i==null||i()});const w=y(()=>o(C)?!0:o(d)),k=y(()=>n.disabled?!1:o(d)),S=y(()=>n.appendTo||l.value),$=y(()=>{var B;return(B=n.style)!=null?B:{}}),M=I(!0),R=()=>{p(),z()&&al(document.body),M.value=!0},N=()=>{if(o(u))return!0},O=Ht(N,()=>{n.enterable&&o(f)==="hover"&&v()}),P=Ht(N,()=>{o(f)==="hover"&&m()}),W=()=>{var B,A;(A=(B=s.value)==null?void 0:B.updatePopper)==null||A.call(B),g==null||g()},K=()=>{b==null||b()},D=()=>{h()},L=()=>{n.virtualTriggering||m()},z=B=>{var A;const ne=(A=s.value)==null?void 0:A.popperContentRef,j=(B==null?void 0:B.relatedTarget)||document.activeElement;return ne==null?void 0:ne.contains(j)};return ie(()=>o(d),B=>{B?(M.value=!1,i=zr(r,()=>{if(o(u))return;o(f)!=="hover"&&m()})):i==null||i()},{flush:"post"}),ie(()=>n.content,()=>{var B,A;(A=(B=s.value)==null?void 0:B.updatePopper)==null||A.call(B)}),t({contentRef:s,isFocusInsideContent:z}),(B,A)=>(_(),oe(o(Po),{disabled:!B.teleported,to:o(S)},{default:U(()=>[H(an,{name:o(E),onAfterLeave:R,onBeforeEnter:W,onAfterEnter:D,onBeforeLeave:K},{default:U(()=>[o(w)?We((_(),oe(o(fb),et({key:0,id:o(c),ref_key:"contentRef",ref:s},B.$attrs,{"aria-label":B.ariaLabel,"aria-hidden":M.value,"boundaries-padding":B.boundariesPadding,"fallback-placements":B.fallbackPlacements,"gpu-acceleration":B.gpuAcceleration,offset:B.offset,placement:B.placement,"popper-options":B.popperOptions,"arrow-offset":B.arrowOffset,strategy:B.strategy,effect:B.effect,enterable:B.enterable,pure:B.pure,"popper-class":B.popperClass,"popper-style":[B.popperStyle,o($)],"reference-el":B.referenceEl,"trigger-target-el":B.triggerTargetEl,visible:o(k),"z-index":B.zIndex,onMouseenter:o(O),onMouseleave:o(P),onBlur:L,onClose:o(m)}),{default:U(()=>[G(B.$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","onMouseenter","onMouseleave","onClose"])),[[mt,o(k)]]):J("v-if",!0)]),_:3},8,["name"])]),_:3},8,["disabled","to"]))}});var Rb=fe(Mb,[["__file","content.vue"]]);const Pb=x({name:"ElTooltip"}),Ob=x({...Pb,props:yb,emits:Cb,setup(e,{expose:t,emit:n}){const l=e;Nb();const a=ue("tooltip"),s=sn(),r=I(),i=I(),u=()=>{var C;const w=o(r);w&&((C=w.popperInstanceRef)==null||C.update())},c=I(!1),d=I(),{show:f,hide:m,hasUpdateHandler:v}=bb({indicator:c,toggleReason:d}),{onOpen:h,onClose:p}=sd({showAfter:wt(l,"showAfter"),hideAfter:wt(l,"hideAfter"),autoClose:wt(l,"autoClose"),open:f,close:m}),g=y(()=>_t(l.visible)&&!v.value),b=y(()=>[a.b(),l.popperClass]);rt(Cs,{controlled:g,id:s,open:Ic(c),trigger:wt(l,"trigger"),onOpen:C=>{h(C)},onClose:C=>{p(C)},onToggle:C=>{o(c)?p(C):h(C)},onShow:()=>{n("show",d.value)},onHide:()=>{n("hide",d.value)},onBeforeShow:()=>{n("before-show",d.value)},onBeforeHide:()=>{n("before-hide",d.value)},updatePopper:u}),ie(()=>l.disabled,C=>{C&&c.value&&(c.value=!1)});const E=C=>{var w;return(w=i.value)==null?void 0:w.isFocusInsideContent(C)};return Mp(()=>c.value&&m()),t({popperRef:r,contentRef:i,isFocusInsideContent:E,updatePopper:u,onOpen:h,onClose:p,hide:m}),(C,w)=>(_(),oe(o(Nd),{ref_key:"popperRef",ref:r,role:C.role},{default:U(()=>[H(Eb,{disabled:C.disabled,trigger:C.trigger,"trigger-keys":C.triggerKeys,"virtual-ref":C.virtualRef,"virtual-triggering":C.virtualTriggering},{default:U(()=>[C.$slots.default?G(C.$slots,"default",{key:0}):J("v-if",!0)]),_:3},8,["disabled","trigger","trigger-keys","virtual-ref","virtual-triggering"]),H(Rb,{ref_key:"contentRef",ref:i,"aria-label":C.ariaLabel,"boundaries-padding":C.boundariesPadding,content:C.content,disabled:C.disabled,effect:C.effect,enterable:C.enterable,"fallback-placements":C.fallbackPlacements,"hide-after":C.hideAfter,"gpu-acceleration":C.gpuAcceleration,offset:C.offset,persistent:C.persistent,"popper-class":o(b),"popper-style":C.popperStyle,placement:C.placement,"popper-options":C.popperOptions,"arrow-offset":C.arrowOffset,pure:C.pure,"raw-content":C.rawContent,"reference-el":C.referenceEl,"trigger-target-el":C.triggerTargetEl,"show-after":C.showAfter,strategy:C.strategy,teleported:C.teleported,transition:C.transition,"virtual-triggering":C.virtualTriggering,"z-index":C.zIndex,"append-to":C.appendTo},{default:U(()=>[G(C.$slots,"content",{},()=>[C.rawContent?(_(),V("span",{key:0,innerHTML:C.content},null,8,["innerHTML"])):(_(),V("span",{key:1},pe(C.content),1))]),C.showArrow?(_(),oe(o(Pg),{key:0})):J("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"])]),_:3},8,["role"]))}});var Lb=fe(Ob,[["__file","tooltip.vue"]]);const un=He(Lb),Bb=de({...pa,valueKey:{type:String,default:"value"},modelValue:{type:[String,Number],default:""},debounce:{type:Number,default:300},placement:{type:Y(String),values:["top","top-start","top-end","bottom","bottom-start","bottom-end"],default:"bottom-start"},fetchSuggestions:{type:Y([Function,Array]),default:Bt},popperClass:{type:String,default:""},triggerOnFocus:{type:Boolean,default:!0},selectWhenUnmatched:Boolean,hideLoading:Boolean,teleported:Wt.teleported,appendTo:Wt.appendTo,highlightFirstItem:Boolean,fitInputWidth:Boolean}),Vb={[De]:e=>Ve(e),[Zt]:e=>Ve(e),[nt]:e=>Ve(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,select:e=>yt(e)},Md="ElAutocomplete",Db=x({name:Md,inheritAttrs:!1}),Ab=x({...Db,props:Bb,emits:Vb,setup(e,{expose:t,emit:n}){const l=e,a=y(()=>An(l,Object.keys(pa))),s=pl(),r=fn(),i=ue("autocomplete"),u=I(),c=I(),d=I(),f=I();let m=!1,v=!1;const h=I([]),p=I(-1),g=I(""),b=I(!1),E=I(!1),C=I(!1),w=sn(),k=y(()=>s.style),S=y(()=>(h.value.length>0||C.value)&&b.value),$=y(()=>!l.hideLoading&&C.value),M=y(()=>u.value?Array.from(u.value.$el.querySelectorAll("input")):[]),R=()=>{S.value&&(g.value=`${u.value.$el.offsetWidth}px`)},N=()=>{p.value=-1},O=async le=>{if(E.value)return;const se=ge=>{C.value=!1,!E.value&&(ke(ge)?(h.value=ge,p.value=l.highlightFirstItem?0:-1):jt(Md,"autocomplete suggestions must be an array"))};if(C.value=!0,ke(l.fetchSuggestions))se(l.fetchSuggestions);else{const ge=await l.fetchSuggestions(le,se);ke(ge)&&se(ge)}},P=Ln(O,l.debounce),W=le=>{const se=!!le;if(n(Zt,le),n(De,le),E.value=!1,b.value||(b.value=se),!l.triggerOnFocus&&!le){E.value=!0,h.value=[];return}P(le)},K=le=>{var se;r.value||(((se=le.target)==null?void 0:se.tagName)!=="INPUT"||M.value.includes(document.activeElement))&&(b.value=!0)},D=le=>{n(nt,le)},L=le=>{var se;if(v)v=!1;else{b.value=!0,n("focus",le);const ge=(se=l.modelValue)!=null?se:"";l.triggerOnFocus&&!m&&P(String(ge))}},z=le=>{setTimeout(()=>{var se;if((se=d.value)!=null&&se.isFocusInsideContent()){v=!0;return}b.value&&j(),n("blur",le)})},B=()=>{b.value=!1,n(De,""),n("clear")},A=async()=>{S.value&&p.value>=0&&p.value{S.value&&(le.preventDefault(),le.stopPropagation(),j())},j=()=>{b.value=!1},Q=()=>{var le;(le=u.value)==null||le.focus()},Z=()=>{var le;(le=u.value)==null||le.blur()},ee=async le=>{n(Zt,le[l.valueKey]),n(De,le[l.valueKey]),n("select",le),h.value=[],p.value=-1},ae=le=>{if(!S.value||C.value)return;if(le<0){p.value=-1;return}le>=h.value.length&&(le=h.value.length-1);const se=c.value.querySelector(`.${i.be("suggestion","wrap")}`),Be=se.querySelectorAll(`.${i.be("suggestion","list")} li`)[le],te=se.scrollTop,{offsetTop:ce,scrollHeight:Ie}=Be;ce+Ie>te+se.clientHeight&&(se.scrollTop+=Ie),ce{var le;(le=d.value)!=null&&le.isFocusInsideContent()||S.value&&j()});return Nt(()=>{re==null||re()}),Xe(()=>{u.value.ref.setAttribute("role","textbox"),u.value.ref.setAttribute("aria-autocomplete","list"),u.value.ref.setAttribute("aria-controls","id"),u.value.ref.setAttribute("aria-activedescendant",`${w.value}-item-${p.value}`),m=u.value.ref.hasAttribute("readonly")}),t({highlightedIndex:p,activated:b,loading:C,inputRef:u,popperRef:d,suggestions:h,handleSelect:ee,handleKeyEnter:A,focus:Q,blur:Z,close:j,highlight:ae,getData:O}),(le,se)=>(_(),oe(o(un),{ref_key:"popperRef",ref:d,visible:o(S),placement:le.placement,"fallback-placements":["bottom-start","top-start"],"popper-class":[o(i).e("popper"),le.popperClass],teleported:le.teleported,"append-to":le.appendTo,"gpu-acceleration":!1,pure:"","manual-mode":"",effect:"light",trigger:"click",transition:`${o(i).namespace.value}-zoom-in-top`,persistent:"",role:"listbox",onBeforeShow:R,onHide:N},{content:U(()=>[F("div",{ref_key:"regionRef",ref:c,class:T([o(i).b("suggestion"),o(i).is("loading",o($))]),style:_e({[le.fitInputWidth?"width":"minWidth"]:g.value,outline:"none"}),role:"region"},[H(o(jn),{id:o(w),tag:"ul","wrap-class":o(i).be("suggestion","wrap"),"view-class":o(i).be("suggestion","list"),role:"listbox"},{default:U(()=>[o($)?(_(),V("li",{key:0},[G(le.$slots,"loading",{},()=>[H(o(Se),{class:T(o(i).is("loading"))},{default:U(()=>[H(o(Qn))]),_:1},8,["class"])])])):(_(!0),V(Oe,{key:1},ut(h.value,(ge,Be)=>(_(),V("li",{id:`${o(w)}-item-${Be}`,key:Be,class:T({highlighted:p.value===Be}),role:"option","aria-selected":p.value===Be,onClick:te=>ee(ge)},[G(le.$slots,"default",{item:ge},()=>[st(pe(ge[le.valueKey]),1)])],10,["id","aria-selected","onClick"]))),128))]),_:3},8,["id","wrap-class","view-class"])],6)]),default:U(()=>[F("div",{ref_key:"listboxRef",ref:f,class:T([o(i).b(),le.$attrs.class]),style:_e(o(k)),role:"combobox","aria-haspopup":"listbox","aria-expanded":o(S),"aria-owns":o(w)},[H(o(hn),et({ref_key:"inputRef",ref:u},et(o(a),le.$attrs),{"model-value":le.modelValue,disabled:o(r),onInput:W,onChange:D,onFocus:L,onBlur:z,onClear:B,onKeydown:[Tt(Le(ge=>ae(p.value-1),["prevent"]),["up"]),Tt(Le(ge=>ae(p.value+1),["prevent"]),["down"]),Tt(A,["enter"]),Tt(j,["tab"]),Tt(ne,["esc"])],onMousedown:K}),Mn({_:2},[le.$slots.prepend?{name:"prepend",fn:U(()=>[G(le.$slots,"prepend")])}:void 0,le.$slots.append?{name:"append",fn:U(()=>[G(le.$slots,"append")])}:void 0,le.$slots.prefix?{name:"prefix",fn:U(()=>[G(le.$slots,"prefix")])}:void 0,le.$slots.suffix?{name:"suffix",fn:U(()=>[G(le.$slots,"suffix")])}:void 0]),1040,["model-value","disabled","onKeydown"])],14,["aria-expanded","aria-owns"])]),_:3},8,["visible","placement","popper-class","teleported","append-to","transition"]))}});var Fb=fe(Ab,[["__file","autocomplete.vue"]]);const xb=He(Fb),zb=de({size:{type:[Number,String],values:tl,default:"",validator:e=>Te(e)},shape:{type:String,values:["circle","square"],default:"circle"},icon:{type:$t},src:{type:String,default:""},alt:String,srcSet:String,fit:{type:Y(String),default:"cover"}}),Hb={error:e=>e instanceof Event},Kb=x({name:"ElAvatar"}),Wb=x({...Kb,props:zb,emits:Hb,setup(e,{emit:t}){const n=e,l=ue("avatar"),a=I(!1),s=y(()=>{const{size:c,icon:d,shape:f}=n,m=[l.b()];return Ve(c)&&m.push(l.m(c)),d&&m.push(l.m("icon")),f&&m.push(l.m(f)),m}),r=y(()=>{const{size:c}=n;return Te(c)?l.cssVarBlock({size:zt(c)||""}):void 0}),i=y(()=>({objectFit:n.fit}));ie(()=>n.src,()=>a.value=!1);function u(c){a.value=!0,t("error",c)}return(c,d)=>(_(),V("span",{class:T(o(s)),style:_e(o(r))},[(c.src||c.srcSet)&&!a.value?(_(),V("img",{key:0,src:c.src,alt:c.alt,srcset:c.srcSet,style:_e(o(i)),onError:u},null,44,["src","alt","srcset"])):c.icon?(_(),oe(o(Se),{key:1},{default:U(()=>[(_(),oe(Ge(c.icon)))]),_:1})):G(c.$slots,"default",{key:2})],6))}});var jb=fe(Wb,[["__file","avatar.vue"]]);const Ub=He(jb),Yb={visibilityHeight:{type:Number,default:200},target:{type:String,default:""},right:{type:Number,default:40},bottom:{type:Number,default:40}},qb={click:e=>e instanceof MouseEvent},Gb=(e,t,n)=>{const l=Lt(),a=Lt(),s=I(!1),r=()=>{l.value&&(s.value=l.value.scrollTop>=e.visibilityHeight)},i=c=>{var d;(d=l.value)==null||d.scrollTo({top:0,behavior:"smooth"}),t("click",c)},u=Mc(r,300,!0);return xt(a,"scroll",u),Xe(()=>{var c;a.value=document,l.value=document.documentElement,e.target&&(l.value=(c=document.querySelector(e.target))!=null?c:void 0,l.value||jt(n,`target does not exist: ${e.target}`),a.value=l.value),r()}),{visible:s,handleClick:i}},Rd="ElBacktop",Xb=x({name:Rd}),Zb=x({...Xb,props:Yb,emits:qb,setup(e,{emit:t}){const n=e,l=ue("backtop"),{handleClick:a,visible:s}=Gb(n,t,Rd),r=y(()=>({right:`${n.right}px`,bottom:`${n.bottom}px`}));return(i,u)=>(_(),oe(an,{name:`${o(l).namespace.value}-fade-in`},{default:U(()=>[o(s)?(_(),V("div",{key:0,style:_e(o(r)),class:T(o(l).b()),onClick:Le(o(a),["stop"])},[G(i.$slots,"default",{},()=>[H(o(Se),{class:T(o(l).e("icon"))},{default:U(()=>[H(o(Yh))]),_:1},8,["class"])])],14,["onClick"])):J("v-if",!0)]),_:3},8,["name"]))}});var Jb=fe(Zb,[["__file","backtop.vue"]]);const Qb=He(Jb),e0=de({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:Y([String,Object,Array])},offset:{type:Y(Array),default:[0,0]},badgeClass:{type:String}}),t0=x({name:"ElBadge"}),n0=x({...t0,props:e0,setup(e,{expose:t}){const n=e,l=ue("badge"),a=y(()=>n.isDot?"":Te(n.value)&&Te(n.max)?n.max{var r,i,u,c,d;return[{backgroundColor:n.color,marginRight:zt(-((i=(r=n.offset)==null?void 0:r[0])!=null?i:0)),marginTop:zt((c=(u=n.offset)==null?void 0:u[1])!=null?c:0)},(d=n.badgeStyle)!=null?d:{}]});return t({content:a}),(r,i)=>(_(),V("div",{class:T(o(l).b())},[G(r.$slots,"default"),H(an,{name:`${o(l).namespace.value}-zoom-in-center`,persisted:""},{default:U(()=>[We(F("sup",{class:T([o(l).e("content"),o(l).em("content",r.type),o(l).is("fixed",!!r.$slots.default),o(l).is("dot",r.isDot),o(l).is("hide-zero",!r.showZero&&n.value===0),r.badgeClass]),style:_e(o(s))},[G(r.$slots,"content",{value:o(a)},()=>[st(pe(o(a)),1)])],6),[[mt,!r.hidden&&(o(a)||r.isDot||r.$slots.content)]])]),_:3},8,["name"])],2))}});var l0=fe(n0,[["__file","badge.vue"]]);const Pd=He(l0),Od=Symbol("breadcrumbKey"),o0=de({separator:{type:String,default:"/"},separatorIcon:{type:$t}}),a0=x({name:"ElBreadcrumb"}),s0=x({...a0,props:o0,setup(e){const t=e,{t:n}=pt(),l=ue("breadcrumb"),a=I();return rt(Od,t),Xe(()=>{const s=a.value.querySelectorAll(`.${l.e("item")}`);s.length&&s[s.length-1].setAttribute("aria-current","page")}),(s,r)=>(_(),V("div",{ref_key:"breadcrumb",ref:a,class:T(o(l).b()),"aria-label":o(n)("el.breadcrumb.label"),role:"navigation"},[G(s.$slots,"default")],10,["aria-label"]))}});var r0=fe(s0,[["__file","breadcrumb.vue"]]);const i0=de({to:{type:Y([String,Object]),default:""},replace:Boolean}),u0=x({name:"ElBreadcrumbItem"}),c0=x({...u0,props:i0,setup(e){const t=e,n=lt(),l=we(Od,void 0),a=ue("breadcrumb"),s=n.appContext.config.globalProperties.$router,r=I(),i=()=>{!t.to||!s||(t.replace?s.replace(t.to):s.push(t.to))};return(u,c)=>{var d,f;return _(),V("span",{class:T(o(a).e("item"))},[F("span",{ref_key:"link",ref:r,class:T([o(a).e("inner"),o(a).is("link",!!u.to)]),role:"link",onClick:i},[G(u.$slots,"default")],2),(d=o(l))!=null&&d.separatorIcon?(_(),oe(o(Se),{key:0,class:T(o(a).e("separator"))},{default:U(()=>[(_(),oe(Ge(o(l).separatorIcon)))]),_:1},8,["class"])):(_(),V("span",{key:1,class:T(o(a).e("separator")),role:"presentation"},pe((f=o(l))==null?void 0:f.separator),3))],2)}}});var Ld=fe(c0,[["__file","breadcrumb-item.vue"]]);const d0=He(r0,{BreadcrumbItem:Ld}),f0=At(Ld),Bd=Symbol("buttonGroupContextKey"),ul=({from:e,replacement:t,scope:n,version:l,ref:a,type:s="API"},r)=>{ie(()=>o(r),i=>{},{immediate:!0})},v0=(e,t)=>{ul({from:"type.text",replacement:"link",version:"3.0.0",scope:"props",ref:"https://element-plus.org/en-US/component/button.html#button-attributes"},y(()=>e.type==="text"));const n=we(Bd,void 0),l=fa("button"),{form:a}=dn(),s=Gt(y(()=>n==null?void 0:n.size)),r=fn(),i=I(),u=Xt(),c=y(()=>{var g;return e.type||(n==null?void 0:n.type)||((g=l.value)==null?void 0:g.type)||""}),d=y(()=>{var g,b,E;return(E=(b=e.autoInsertSpace)!=null?b:(g=l.value)==null?void 0:g.autoInsertSpace)!=null?E:!1}),f=y(()=>{var g,b,E;return(E=(b=e.plain)!=null?b:(g=l.value)==null?void 0:g.plain)!=null?E:!1}),m=y(()=>{var g,b,E;return(E=(b=e.round)!=null?b:(g=l.value)==null?void 0:g.round)!=null?E:!1}),v=y(()=>e.tag==="button"?{ariaDisabled:r.value||e.loading,disabled:r.value||e.loading,autofocus:e.autofocus,type:e.nativeType}:{}),h=y(()=>{var g;const b=(g=u.default)==null?void 0:g.call(u);if(d.value&&(b==null?void 0:b.length)===1){const E=b[0];if((E==null?void 0:E.type)===Nc){const C=E.children;return new RegExp("^\\p{Unified_Ideograph}{2}$","u").test(C.trim())}}return!1});return{_disabled:r,_size:s,_type:c,_ref:i,_props:v,_plain:f,_round:m,shouldAddSpace:h,handleClick:g=>{if(r.value||e.loading){g.stopPropagation();return}e.nativeType==="reset"&&(a==null||a.resetFields()),t("click",g)}}},or=["default","primary","success","warning","info","danger","text",""],p0=["button","submit","reset"],ar=de({size:Jt,disabled:Boolean,type:{type:String,values:or,default:""},icon:{type:$t},nativeType:{type:String,values:p0,default:"button"},loading:Boolean,loadingIcon:{type:$t,default:()=>Qn},plain:{type:Boolean,default:void 0},text:Boolean,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:Y([String,Object]),default:"button"}}),h0={click:e=>e instanceof MouseEvent};function kl(e,t=20){return e.mix("#141414",t).toString()}function m0(e){const t=fn(),n=ue("button");return y(()=>{let l={},a=e.color;if(a){const s=a.match(/var\((.*?)\)/);s&&(a=window.getComputedStyle(window.document.documentElement).getPropertyValue(s[1]));const r=new vo(a),i=e.dark?r.tint(20).toString():kl(r,20);if(e.plain)l=n.cssVarBlock({"bg-color":e.dark?kl(r,90):r.tint(90).toString(),"text-color":a,"border-color":e.dark?kl(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&&(l[n.cssVarBlockName("disabled-bg-color")]=e.dark?kl(r,90):r.tint(90).toString(),l[n.cssVarBlockName("disabled-text-color")]=e.dark?kl(r,50):r.tint(50).toString(),l[n.cssVarBlockName("disabled-border-color")]=e.dark?kl(r,80):r.tint(80).toString());else{const u=e.dark?kl(r,30):r.tint(30).toString(),c=r.isDark()?`var(${n.cssVarName("color-white")})`:`var(${n.cssVarName("color-black")})`;if(l=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?kl(r,50):r.tint(50).toString();l[n.cssVarBlockName("disabled-bg-color")]=d,l[n.cssVarBlockName("disabled-text-color")]=e.dark?"rgba(255, 255, 255, 0.5)":`var(${n.cssVarName("color-white")})`,l[n.cssVarBlockName("disabled-border-color")]=d}}}return l})}const g0=x({name:"ElButton"}),b0=x({...g0,props:ar,emits:h0,setup(e,{expose:t,emit:n}){const l=e,a=m0(l),s=ue("button"),{_ref:r,_size:i,_type:u,_disabled:c,_props:d,_plain:f,_round:m,shouldAddSpace:v,handleClick:h}=v0(l,n),p=y(()=>[s.b(),s.m(u.value),s.m(i.value),s.is("disabled",c.value),s.is("loading",l.loading),s.is("plain",f.value),s.is("round",m.value),s.is("circle",l.circle),s.is("text",l.text),s.is("link",l.link),s.is("has-bg",l.bg)]);return t({ref:r,size:i,type:u,disabled:c,shouldAddSpace:v}),(g,b)=>(_(),oe(Ge(g.tag),et({ref_key:"_ref",ref:r},o(d),{class:o(p),style:o(a),onClick:o(h)}),{default:U(()=>[g.loading?(_(),V(Oe,{key:0},[g.$slots.loading?G(g.$slots,"loading",{key:0}):(_(),oe(o(Se),{key:1,class:T(o(s).is("loading"))},{default:U(()=>[(_(),oe(Ge(g.loadingIcon)))]),_:1},8,["class"]))],64)):g.icon||g.$slots.icon?(_(),oe(o(Se),{key:1},{default:U(()=>[g.icon?(_(),oe(Ge(g.icon),{key:0})):G(g.$slots,"icon",{key:1})]),_:3})):J("v-if",!0),g.$slots.default?(_(),V("span",{key:2,class:T({[o(s).em("text","expand")]:o(v)})},[G(g.$slots,"default")],2)):J("v-if",!0)]),_:3},16,["class","style","onClick"]))}});var y0=fe(b0,[["__file","button.vue"]]);const C0={size:ar.size,type:ar.type},w0=x({name:"ElButtonGroup"}),k0=x({...w0,props:C0,setup(e){const t=e;rt(Bd,kt({size:wt(t,"size"),type:wt(t,"type")}));const n=ue("button");return(l,a)=>(_(),V("div",{class:T(o(n).b("group"))},[G(l.$slots,"default")],2))}});var Vd=fe(k0,[["__file","button-group.vue"]]);const on=He(y0,{ButtonGroup:Vd}),Dd=At(Vd),xs=(e,t)=>[e>0?e-1:void 0,e,eArray.from(Array.from({length:e}).keys()),Ad=e=>e.replace(/\W?m{1,2}|\W?ZZ/g,"").replace(/\W?h{1,2}|\W?s{1,3}|\W?a/gi,"").trim(),Fd=e=>e.replace(/\W?D{1,2}|\W?Do|\W?d{1,4}|\W?M{1,4}|\W?Y{2,4}/g,"").trim(),Tu=function(e,t){const n=wo(e),l=wo(t);return n&&l?e.getTime()===t.getTime():!n&&!l?e===t:!1},$u=function(e,t){const n=ke(e),l=ke(t);return n&&l?e.length!==t.length?!1:e.every((a,s)=>Tu(a,t[s])):!n&&!l?Tu(e,t):!1},Nu=function(e,t,n){const l=Pn(t)||t==="x"?Ke(e).locale(n):Ke(e,t).locale(n);return l.isValid()?l:void 0},Iu=function(e,t,n){return Pn(t)?e:t==="x"?+e:Ke(e).locale(n).format(t)},zs=(e,t)=>{var n;const l=[],a=t==null?void 0:t();for(let s=0;ske(e)?e.map(t=>t.toDate()):e.toDate(),S0=(e,t)=>{const n=e.subtract(1,"month").endOf("month").date();return Nl(t).map((l,a)=>n-(t-a-1))},E0=e=>{const t=e.daysInMonth();return Nl(t).map((n,l)=>l+1)},_0=e=>Nl(e.length/7).map(t=>{const n=t*7;return e.slice(n,n+7)}),T0=de({selectedDay:{type:Y(Object)},range:{type:Y(Array)},date:{type:Y(Object),required:!0},hideHeader:{type:Boolean}}),$0={pick:e=>yt(e)},N0=["year","years","month","months","date","dates","week","datetime","datetimerange","daterange","monthrange","yearrange"],Hs=["sun","mon","tue","wed","thu","fri","sat"],I0=(e,t)=>{Ke.extend(Vc);const n=Ke.localeData().firstDayOfWeek(),{t:l,lang:a}=pt(),s=Ke().locale(a.value),r=y(()=>!!e.range&&!!e.range.length),i=y(()=>{let m=[];if(r.value){const[v,h]=e.range,p=Nl(h.date()-v.date()+1).map(E=>({text:v.date()+E,type:"current"}));let g=p.length%7;g=g===0?0:7-g;const b=Nl(g).map((E,C)=>({text:C+1,type:"next"}));m=p.concat(b)}else{const v=e.date.startOf("month").day(),h=S0(e.date,(v-n+7)%7).map(E=>({text:E,type:"prev"})),p=E0(e.date).map(E=>({text:E,type:"current"}));m=[...h,...p];const g=7-(m.length%7||7),b=Nl(g).map((E,C)=>({text:C+1,type:"next"}));m=m.concat(b)}return _0(m)}),u=y(()=>{const m=n;return m===0?Hs.map(v=>l(`el.datepicker.weeks.${v}`)):Hs.slice(m).concat(Hs.slice(0,m)).map(v=>l(`el.datepicker.weeks.${v}`))}),c=(m,v)=>{switch(v){case"prev":return e.date.startOf("month").subtract(1,"month").date(m);case"next":return e.date.startOf("month").add(1,"month").date(m);case"current":return e.date.date(m)}};return{now:s,isInRange:r,rows:i,weekDays:u,getFormattedDate:c,handlePickDay:({text:m,type:v})=>{const h=c(m,v);t("pick",h)},getSlotData:({text:m,type:v})=>{const h=c(m,v);return{isSelected:h.isSame(e.selectedDay),type:`${v}-month`,day:h.format("YYYY-MM-DD"),date:h.toDate()}}}},M0=x({name:"DateTable"}),R0=x({...M0,props:T0,emits:$0,setup(e,{expose:t,emit:n}){const l=e,{isInRange:a,now:s,rows:r,weekDays:i,getFormattedDate:u,handlePickDay:c,getSlotData:d}=I0(l,n),f=ue("calendar-table"),m=ue("calendar-day"),v=({text:h,type:p})=>{const g=[p];if(p==="current"){const b=u(h,p);b.isSame(l.selectedDay,"day")&&g.push(m.is("selected")),b.isSame(s,"day")&&g.push(m.is("today"))}return g};return t({getFormattedDate:u}),(h,p)=>(_(),V("table",{class:T([o(f).b(),o(f).is("range",o(a))]),cellspacing:"0",cellpadding:"0"},[h.hideHeader?J("v-if",!0):(_(),V("thead",{key:0},[F("tr",null,[(_(!0),V(Oe,null,ut(o(i),g=>(_(),V("th",{key:g,scope:"col"},pe(g),1))),128))])])),F("tbody",null,[(_(!0),V(Oe,null,ut(o(r),(g,b)=>(_(),V("tr",{key:b,class:T({[o(f).e("row")]:!0,[o(f).em("row","hide-border")]:b===0&&h.hideHeader})},[(_(!0),V(Oe,null,ut(g,(E,C)=>(_(),V("td",{key:C,class:T(v(E)),onClick:w=>o(c)(E)},[F("div",{class:T(o(m).b())},[G(h.$slots,"date-cell",{data:o(d)(E)},()=>[F("span",null,pe(E.text),1)])],2)],10,["onClick"]))),128))],2))),128))])],2))}});var Mu=fe(R0,[["__file","date-table.vue"]]);const P0=(e,t)=>{const n=e.endOf("month"),l=t.startOf("month"),s=n.isSame(l,"week")?l.add(1,"week"):l;return[[e,n],[s.startOf("week"),t]]},O0=(e,t)=>{const n=e.endOf("month"),l=e.add(1,"month").startOf("month"),a=n.isSame(l,"week")?l.add(1,"week"):l,s=a.endOf("month"),r=t.startOf("month"),i=s.isSame(r,"week")?r.add(1,"week"):r;return[[e,n],[a.startOf("week"),s],[i.startOf("week"),t]]},L0=(e,t,n)=>{const{lang:l}=pt(),a=I(),s=Ke().locale(l.value),r=y({get(){return e.modelValue?u.value:a.value},set(g){if(!g)return;a.value=g;const b=g.toDate();t(Zt,b),t(De,b)}}),i=y(()=>{if(!e.range||!ke(e.range)||e.range.length!==2||e.range.some(C=>!wo(C)))return[];const g=e.range.map(C=>Ke(C).locale(l.value)),[b,E]=g;return b.isAfter(E)?[]:b.isSame(E,"month")?v(b,E):b.add(1,"month").month()!==E.month()?[]:v(b,E)}),u=y(()=>e.modelValue?Ke(e.modelValue).locale(l.value):r.value||(i.value.length?i.value[0][0]:s)),c=y(()=>u.value.subtract(1,"month").date(1)),d=y(()=>u.value.add(1,"month").date(1)),f=y(()=>u.value.subtract(1,"year").date(1)),m=y(()=>u.value.add(1,"year").date(1)),v=(g,b)=>{const E=g.startOf("week"),C=b.endOf("week"),w=E.get("month"),k=C.get("month");return w===k?[[E,C]]:(w+1)%12===k?P0(E,C):w+2===k||(w+1)%11===k?O0(E,C):[]},h=g=>{r.value=g};return{calculateValidatedDateRange:v,date:u,realSelectedDay:r,pickDay:h,selectDate:g=>{const E={"prev-month":c.value,"next-month":d.value,"prev-year":f.value,"next-year":m.value,today:s}[g];E.isSame(u.value,"day")||h(E)},validatedRange:i}},B0=e=>ke(e)&&e.length===2&&e.every(t=>wo(t)),V0=de({modelValue:{type:Date},range:{type:Y(Array),validator:B0}}),D0={[De]:e=>wo(e),[Zt]:e=>wo(e)},A0="ElCalendar",F0=x({name:A0}),x0=x({...F0,props:V0,emits:D0,setup(e,{expose:t,emit:n}){const l=e,a=ue("calendar"),{calculateValidatedDateRange:s,date:r,pickDay:i,realSelectedDay:u,selectDate:c,validatedRange:d}=L0(l,n),{t:f}=pt(),m=y(()=>{const v=`el.datepicker.month${r.value.format("M")}`;return`${r.value.year()} ${f("el.datepicker.year")} ${f(v)}`});return t({selectedDay:u,pickDay:i,selectDate:c,calculateValidatedDateRange:s}),(v,h)=>(_(),V("div",{class:T(o(a).b())},[F("div",{class:T(o(a).e("header"))},[G(v.$slots,"header",{date:o(m)},()=>[F("div",{class:T(o(a).e("title"))},pe(o(m)),3),o(d).length===0?(_(),V("div",{key:0,class:T(o(a).e("button-group"))},[H(o(Dd),null,{default:U(()=>[H(o(on),{size:"small",onClick:p=>o(c)("prev-month")},{default:U(()=>[st(pe(o(f)("el.datepicker.prevMonth")),1)]),_:1},8,["onClick"]),H(o(on),{size:"small",onClick:p=>o(c)("today")},{default:U(()=>[st(pe(o(f)("el.datepicker.today")),1)]),_:1},8,["onClick"]),H(o(on),{size:"small",onClick:p=>o(c)("next-month")},{default:U(()=>[st(pe(o(f)("el.datepicker.nextMonth")),1)]),_:1},8,["onClick"])]),_:1})],2)):J("v-if",!0)])],2),o(d).length===0?(_(),V("div",{key:0,class:T(o(a).e("body"))},[H(Mu,{date:o(r),"selected-day":o(u),onPick:o(i)},Mn({_:2},[v.$slots["date-cell"]?{name:"date-cell",fn:U(p=>[G(v.$slots,"date-cell",On(cl(p)))])}:void 0]),1032,["date","selected-day","onPick"])],2)):(_(),V("div",{key:1,class:T(o(a).e("body"))},[(_(!0),V(Oe,null,ut(o(d),(p,g)=>(_(),oe(Mu,{key:g,date:p[0],"selected-day":o(u),range:p,"hide-header":g!==0,onPick:o(i)},Mn({_:2},[v.$slots["date-cell"]?{name:"date-cell",fn:U(b=>[G(v.$slots,"date-cell",On(cl(b)))])}:void 0]),1032,["date","selected-day","range","hide-header","onPick"]))),128))],2))],2))}});var z0=fe(x0,[["__file","calendar.vue"]]);const H0=He(z0),K0=de({header:{type:String,default:""},footer:{type:String,default:""},bodyStyle:{type:Y([String,Object,Array]),default:""},headerClass:String,bodyClass:String,footerClass:String,shadow:{type:String,values:["always","hover","never"],default:"always"}}),W0=x({name:"ElCard"}),j0=x({...W0,props:K0,setup(e){const t=ue("card");return(n,l)=>(_(),V("div",{class:T([o(t).b(),o(t).is(`${n.shadow}-shadow`)])},[n.$slots.header||n.header?(_(),V("div",{key:0,class:T([o(t).e("header"),n.headerClass])},[G(n.$slots,"header",{},()=>[st(pe(n.header),1)])],2)):J("v-if",!0),F("div",{class:T([o(t).e("body"),n.bodyClass]),style:_e(n.bodyStyle)},[G(n.$slots,"default")],6),n.$slots.footer||n.footer?(_(),V("div",{key:1,class:T([o(t).e("footer"),n.footerClass])},[G(n.$slots,"footer",{},()=>[st(pe(n.footer),1)])],2)):J("v-if",!0)],2))}});var U0=fe(j0,[["__file","card.vue"]]);const Y0=He(U0),q0=de({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}),G0={change:(e,t)=>[e,t].every(Te)},xd=Symbol("carouselContextKey"),sr="ElCarouselItem";var Vn=(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))(Vn||{});function rr(e){return Dt(e)&&e.type===Oe}function X0(e){return Dt(e)&&e.type===jl}function Z0(e){return Dt(e)&&!rr(e)&&!X0(e)}const J0=e=>{if(!Dt(e))return{};const t=e.props||{},n=(Dt(e.type)?e.type.props:void 0)||{},l={};return Object.keys(n).forEach(a=>{rn(n[a],"default")&&(l[a]=n[a].default)}),Object.keys(t).forEach(a=>{l[Ar(a)]=t[a]}),l},Q0=e=>{if(!ke(e)||e.length>1)throw new Error("expect to receive a single Vue element child");return e[0]},Zn=e=>{const t=ke(e)?e:[e],n=[];return t.forEach(l=>{var a;ke(l)?n.push(...Zn(l)):Dt(l)&&((a=l.component)!=null&&a.subTree)?n.push(l,...Zn(l.component.subTree)):Dt(l)&&ke(l.children)?n.push(...Zn(l.children)):Dt(l)&&l.shapeFlag===2?n.push(...Zn(l.type())):n.push(l)}),n},ey=(e,t,n)=>Zn(e.subTree).filter(s=>{var r;return Dt(s)&&((r=s.type)==null?void 0:r.name)===t&&!!s.component}).map(s=>s.component.uid).map(s=>n[s]).filter(s=>!!s),ks=(e,t)=>{const n=Lt({}),l=Lt([]),a=new WeakMap,s=d=>{n.value[d.uid]=d,Oa(n),Xe(()=>{const f=d.getVnode().el,m=f.parentNode;if(!a.has(m)){a.set(m,[]);const v=m.insertBefore.bind(m);m.insertBefore=(h,p)=>(a.get(m).some(b=>h===b||p===b)&&Oa(n),v(h,p))}a.get(m).push(f)})},r=d=>{delete n.value[d.uid],Oa(n);const f=d.getVnode().el,m=f.parentNode,v=a.get(m),h=v.indexOf(f);v.splice(h,1)},i=()=>{l.value=ey(e,t,n.value)},u=d=>d.render(),c=x({setup(d,{slots:f}){return()=>(i(),f.default?Re(u,{render:f.default}):null)}});return{children:l,addChild:s,removeChild:r,ChildrenSorter:c}},Ru=300,ty=(e,t,n)=>{const{children:l,addChild:a,removeChild:s,ChildrenSorter:r}=ks(lt(),sr),i=Xt(),u=I(-1),c=I(null),d=I(!1),f=I(),m=I(0),v=I(!0),h=y(()=>e.arrow!=="never"&&!o(b)),p=y(()=>l.value.some(ee=>ee.props.label.toString().length>0)),g=y(()=>e.type==="card"),b=y(()=>e.direction==="vertical"),E=y(()=>e.height!=="auto"?{height:e.height}:{height:`${m.value}px`,overflow:"hidden"}),C=Hl(ee=>{R(ee)},Ru,{trailing:!0}),w=Hl(ee=>{z(ee)},Ru),k=ee=>v.value?u.value<=1?ee<=1:ee>1:!0;function S(){c.value&&(clearInterval(c.value),c.value=null)}function $(){e.interval<=0||!e.autoplay||c.value||(c.value=setInterval(()=>M(),e.interval))}const M=()=>{u.valuese.props.name===ee);le.length>0&&(ee=l.value.indexOf(le[0]))}if(ee=Number(ee),Number.isNaN(ee)||ee!==Math.floor(ee))return;const ae=l.value.length,re=u.value;ee<0?u.value=e.loop?ae-1:0:ee>=ae?u.value=e.loop?0:ae-1:u.value=ee,re===u.value&&N(re),ne()}function N(ee){l.value.forEach((ae,re)=>{ae.translateItem(re,u.value,ee)})}function O(ee,ae){var re,le,se,ge;const Be=o(l),te=Be.length;if(te===0||!ee.states.inStage)return!1;const ce=ae+1,Ie=ae-1,Ae=te-1,xe=Be[Ae].states.active,Ye=Be[0].states.active,$e=(le=(re=Be[ce])==null?void 0:re.states)==null?void 0:le.active,Me=(ge=(se=Be[Ie])==null?void 0:se.states)==null?void 0:ge.active;return ae===Ae&&Ye||$e?"left":ae===0&&xe||Me?"right":!1}function P(){d.value=!0,e.pauseOnHover&&S()}function W(){d.value=!1,$()}function K(ee){o(b)||l.value.forEach((ae,re)=>{ee===O(ae,re)&&(ae.states.hover=!0)})}function D(){o(b)||l.value.forEach(ee=>{ee.states.hover=!1})}function L(ee){u.value=ee}function z(ee){e.trigger==="hover"&&ee!==u.value&&(u.value=ee)}function B(){R(u.value-1)}function A(){R(u.value+1)}function ne(){S(),e.pauseOnHover||$()}function j(ee){e.height==="auto"&&(m.value=ee)}function Q(){var ee;const ae=(ee=i.default)==null?void 0:ee.call(i);if(!ae)return null;const le=Zn(ae).filter(se=>Dt(se)&&se.type.name===sr);return(le==null?void 0:le.length)===2&&e.loop&&!g.value?(v.value=!0,le):(v.value=!1,null)}ie(()=>u.value,(ee,ae)=>{N(ae),v.value&&(ee=ee%2,ae=ae%2),ae>-1&&t(nt,ee,ae)}),ie(()=>e.autoplay,ee=>{ee?$():S()}),ie(()=>e.loop,()=>{R(u.value)}),ie(()=>e.interval,()=>{ne()});const Z=Lt();return Xe(()=>{ie(()=>l.value,()=>{l.value.length>0&&R(e.initialIndex)},{immediate:!0}),Z.value=Ft(f.value,()=>{N()}),$()}),Nt(()=>{S(),f.value&&Z.value&&Z.value.stop()}),rt(xd,{root:f,isCardType:g,isVertical:b,items:l,loop:e.loop,cardScale:e.cardScale,addItem:a,removeItem:s,setActiveItem:R,setContainerHeight:j}),{root:f,activeIndex:u,arrowDisplay:h,hasLabel:p,hover:d,isCardType:g,items:l,isVertical:b,containerStyle:E,isItemsTwoLength:v,handleButtonEnter:K,handleButtonLeave:D,handleIndicatorClick:L,handleMouseEnter:P,handleMouseLeave:W,setActiveItem:R,prev:B,next:A,PlaceholderItem:Q,isTwoLengthShow:k,ItemsSorter:r,throttledArrowClick:C,throttledIndicatorHover:w}},ny="ElCarousel",ly=x({name:ny}),oy=x({...ly,props:q0,emits:G0,setup(e,{expose:t,emit:n}){const l=e,{root:a,activeIndex:s,arrowDisplay:r,hasLabel:i,hover:u,isCardType:c,items:d,isVertical:f,containerStyle:m,handleButtonEnter:v,handleButtonLeave:h,handleIndicatorClick:p,handleMouseEnter:g,handleMouseLeave:b,setActiveItem:E,prev:C,next:w,PlaceholderItem:k,isTwoLengthShow:S,ItemsSorter:$,throttledArrowClick:M,throttledIndicatorHover:R}=ty(l,n),N=ue("carousel"),{t:O}=pt(),P=y(()=>{const L=[N.b(),N.m(l.direction)];return o(c)&&L.push(N.m("card")),L}),W=y(()=>{const L=[N.e("indicators"),N.em("indicators",l.direction)];return o(i)&&L.push(N.em("indicators","labels")),l.indicatorPosition==="outside"&&L.push(N.em("indicators","outside")),o(f)&&L.push(N.em("indicators","right")),L});function K(L){if(!l.motionBlur)return;const z=o(f)?`${N.namespace.value}-transitioning-vertical`:`${N.namespace.value}-transitioning`;L.currentTarget.classList.add(z)}function D(L){if(!l.motionBlur)return;const z=o(f)?`${N.namespace.value}-transitioning-vertical`:`${N.namespace.value}-transitioning`;L.currentTarget.classList.remove(z)}return t({activeIndex:s,setActiveItem:E,prev:C,next:w}),(L,z)=>(_(),V("div",{ref_key:"root",ref:a,class:T(o(P)),onMouseenter:Le(o(g),["stop"]),onMouseleave:Le(o(b),["stop"])},[o(r)?(_(),oe(an,{key:0,name:"carousel-arrow-left",persisted:""},{default:U(()=>[We(F("button",{type:"button",class:T([o(N).e("arrow"),o(N).em("arrow","left")]),"aria-label":o(O)("el.carousel.leftArrow"),onMouseenter:B=>o(v)("left"),onMouseleave:o(h),onClick:Le(B=>o(M)(o(s)-1),["stop"])},[H(o(Se),null,{default:U(()=>[H(o(dl))]),_:1})],42,["aria-label","onMouseenter","onMouseleave","onClick"]),[[mt,(L.arrow==="always"||o(u))&&(l.loop||o(s)>0)]])]),_:1})):J("v-if",!0),o(r)?(_(),oe(an,{key:1,name:"carousel-arrow-right",persisted:""},{default:U(()=>[We(F("button",{type:"button",class:T([o(N).e("arrow"),o(N).em("arrow","right")]),"aria-label":o(O)("el.carousel.rightArrow"),onMouseenter:B=>o(v)("right"),onMouseleave:o(h),onClick:Le(B=>o(M)(o(s)+1),["stop"])},[H(o(Se),null,{default:U(()=>[H(o(Cn))]),_:1})],42,["aria-label","onMouseenter","onMouseleave","onClick"]),[[mt,(L.arrow==="always"||o(u))&&(l.loop||o(s)[L.indicatorPosition!=="none"?(_(),V("ul",{key:0,class:T(o(W))},[(_(!0),V(Oe,null,ut(o(d),(B,A)=>We((_(),V("li",{key:A,class:T([o(N).e("indicator"),o(N).em("indicator",L.direction),o(N).is("active",A===o(s))]),onMouseenter:ne=>o(R)(A),onClick:Le(ne=>o(p)(A),["stop"])},[F("button",{class:T(o(N).e("button")),"aria-label":o(O)("el.carousel.indicator",{index:A+1})},[o(i)?(_(),V("span",{key:0},pe(B.props.label),1)):J("v-if",!0)],10,["aria-label"])],42,["onMouseenter","onClick"])),[[mt,o(S)(A)]])),128))],2)):J("v-if",!0)]),_:1}),l.motionBlur?(_(),V("svg",{key:2,xmlns:"http://www.w3.org/2000/svg",version:"1.1",style:{display:"none"}},[F("defs",null,[F("filter",{id:"elCarouselHorizontal"},[F("feGaussianBlur",{in:"SourceGraphic",stdDeviation:"12,0"})]),F("filter",{id:"elCarouselVertical"},[F("feGaussianBlur",{in:"SourceGraphic",stdDeviation:"0,10"})])])])):J("v-if",!0)],42,["onMouseenter","onMouseleave"]))}});var ay=fe(oy,[["__file","carousel.vue"]]);const sy=de({name:{type:String,default:""},label:{type:[String,Number],default:""}}),ry=e=>{const t=we(xd),n=lt(),l=I(),a=I(!1),s=I(0),r=I(1),i=I(!1),u=I(!1),c=I(!1),d=I(!1),{isCardType:f,isVertical:m,cardScale:v}=t;function h(w,k,S){const $=S-1,M=k-1,R=k+1,N=S/2;return k===0&&w===$?-1:k===$&&w===0?S:w=N?S+1:w>R&&w-k>=N?-2:w}function p(w,k){var S,$;const M=o(m)?((S=t.root.value)==null?void 0:S.offsetHeight)||0:(($=t.root.value)==null?void 0:$.offsetWidth)||0;return c.value?M*((2-v)*(w-k)+1)/4:w{var $;const M=o(f),R=($=t.items.value.length)!=null?$:Number.NaN,N=w===k;!M&&!vt(S)&&(d.value=N||w===S),!N&&R>2&&t.loop&&(w=h(w,k,R));const O=o(m);i.value=N,M?(c.value=Math.round(Math.abs(w-k))<=1,s.value=p(w,k),r.value=o(i)?1:v):s.value=g(w,k,O),u.value=!0,N&&l.value&&t.setContainerHeight(l.value.offsetHeight)};function E(){if(t&&o(f)){const w=t.items.value.findIndex(({uid:k})=>k===n.uid);t.setActiveItem(w)}}const C={props:e,states:kt({hover:a,translate:s,scale:r,active:i,ready:u,inStage:c,animating:d}),uid:n.uid,getVnode:()=>n.vnode,translateItem:b};return t.addItem(C),Nt(()=>{t.removeItem(C)}),{carouselItemRef:l,active:i,animating:d,hover:a,inStage:c,isVertical:m,translate:s,isCardType:f,scale:r,ready:u,handleItemClick:E}},iy=x({name:sr}),uy=x({...iy,props:sy,setup(e){const t=e,n=ue("carousel"),{carouselItemRef:l,active:a,animating:s,hover:r,inStage:i,isVertical:u,translate:c,isCardType:d,scale:f,ready:m,handleItemClick:v}=ry(t),h=y(()=>[n.e("item"),n.is("active",a.value),n.is("in-stage",i.value),n.is("hover",r.value),n.is("animating",s.value),{[n.em("item","card")]:d.value,[n.em("item","card-vertical")]:d.value&&u.value}]),p=y(()=>{const b=`${`translate${o(u)?"Y":"X"}`}(${o(c)}px)`,E=`scale(${o(f)})`;return{transform:[b,E].join(" ")}});return(g,b)=>We((_(),V("div",{ref_key:"carouselItemRef",ref:l,class:T(o(h)),style:_e(o(p)),onClick:o(v)},[o(d)?We((_(),V("div",{key:0,class:T(o(n).e("mask"))},null,2)),[[mt,!o(a)]]):J("v-if",!0),G(g.$slots,"default")],14,["onClick"])),[[mt,o(m)]])}});var zd=fe(uy,[["__file","carousel-item.vue"]]);const cy=He(ay,{CarouselItem:zd}),dy=At(zd),Hd={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:Boolean,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:Jt,tabindex:[String,Number],validateEvent:{type:Boolean,default:!0},...cn(["ariaControls"])},Kd={[De]:e=>Ve(e)||Te(e)||_t(e),change:e=>Ve(e)||Te(e)||_t(e)},Oo=Symbol("checkboxGroupContextKey"),fy=({model:e,isChecked:t})=>{const n=we(Oo,void 0),l=y(()=>{var s,r;const i=(s=n==null?void 0:n.max)==null?void 0:s.value,u=(r=n==null?void 0:n.min)==null?void 0:r.value;return!vt(i)&&e.value.length>=i&&!t.value||!vt(u)&&e.value.length<=u&&t.value});return{isDisabled:fn(y(()=>(n==null?void 0:n.disabled.value)||l.value)),isLimitDisabled:l}},vy=(e,{model:t,isLimitExceeded:n,hasOwnLabel:l,isDisabled:a,isLabeledByFormItem:s})=>{const r=we(Oo,void 0),{formItem:i}=dn(),{emit:u}=lt();function c(h){var p,g,b,E;return[!0,e.trueValue,e.trueLabel].includes(h)?(g=(p=e.trueValue)!=null?p:e.trueLabel)!=null?g:!0:(E=(b=e.falseValue)!=null?b:e.falseLabel)!=null?E:!1}function d(h,p){u(nt,c(h),p)}function f(h){if(n.value)return;const p=h.target;u(nt,c(p.checked),h)}async function m(h){n.value||!l.value&&!a.value&&s.value&&(h.composedPath().some(b=>b.tagName==="LABEL")||(t.value=c([!1,e.falseValue,e.falseLabel].includes(t.value)),await Ee(),d(t.value,h)))}const v=y(()=>(r==null?void 0:r.validateEvent)||e.validateEvent);return ie(()=>e.modelValue,()=>{v.value&&(i==null||i.validate("change").catch(h=>void 0))}),{handleChange:f,onClickRoot:m}},py=e=>{const t=I(!1),{emit:n}=lt(),l=we(Oo,void 0),a=y(()=>vt(l)===!1),s=I(!1),r=y({get(){var i,u;return a.value?(i=l==null?void 0:l.modelValue)==null?void 0:i.value:(u=e.modelValue)!=null?u:t.value},set(i){var u,c;a.value&&ke(i)?(s.value=((u=l==null?void 0:l.max)==null?void 0:u.value)!==void 0&&i.length>(l==null?void 0:l.max.value)&&i.length>r.value.length,s.value===!1&&((c=l==null?void 0:l.changeEvent)==null||c.call(l,i))):(n(De,i),t.value=i)}});return{model:r,isGroup:a,isLimitExceeded:s}},hy=(e,t,{model:n})=>{const l=we(Oo,void 0),a=I(!1),s=y(()=>In(e.value)?e.label:e.value),r=y(()=>{const d=n.value;return _t(d)?d:ke(d)?yt(s.value)?d.map(Uo).some(f=>tn(f,s.value)):d.map(Uo).includes(s.value):d!=null?d===e.trueValue||d===e.trueLabel:!!d}),i=Gt(y(()=>{var d;return(d=l==null?void 0:l.size)==null?void 0:d.value}),{prop:!0}),u=Gt(y(()=>{var d;return(d=l==null?void 0:l.size)==null?void 0:d.value})),c=y(()=>!!t.default||!In(s.value));return{checkboxButtonSize:i,isChecked:r,isFocused:a,checkboxSize:u,hasOwnLabel:c,actualValue:s}},Wd=(e,t)=>{const{formItem:n}=dn(),{model:l,isGroup:a,isLimitExceeded:s}=py(e),{isFocused:r,isChecked:i,checkboxButtonSize:u,checkboxSize:c,hasOwnLabel:d,actualValue:f}=hy(e,t,{model:l}),{isDisabled:m}=fy({model:l,isChecked:i}),{inputId:v,isLabeledByFormItem:h}=Kn(e,{formItemContext:n,disableIdGeneration:d,disableIdManagement:a}),{handleChange:p,onClickRoot:g}=vy(e,{model:l,isLimitExceeded:s,hasOwnLabel:d,isDisabled:m,isLabeledByFormItem:h});return(()=>{function E(){var C,w;ke(l.value)&&!l.value.includes(f.value)?l.value.push(f.value):l.value=(w=(C=e.trueValue)!=null?C:e.trueLabel)!=null?w:!0}e.checked&&E()})(),ul({from:"label act as value",replacement:"value",version:"3.0.0",scope:"el-checkbox",ref:"https://element-plus.org/en-US/component/checkbox.html"},y(()=>a.value&&In(e.value))),ul({from:"true-label",replacement:"true-value",version:"3.0.0",scope:"el-checkbox",ref:"https://element-plus.org/en-US/component/checkbox.html"},y(()=>!!e.trueLabel)),ul({from:"false-label",replacement:"false-value",version:"3.0.0",scope:"el-checkbox",ref:"https://element-plus.org/en-US/component/checkbox.html"},y(()=>!!e.falseLabel)),{inputId:v,isLabeledByFormItem:h,isChecked:i,isDisabled:m,isFocused:r,checkboxButtonSize:u,checkboxSize:c,hasOwnLabel:d,model:l,actualValue:f,handleChange:p,onClickRoot:g}},my=x({name:"ElCheckbox"}),gy=x({...my,props:Hd,emits:Kd,setup(e){const t=e,n=Xt(),{inputId:l,isLabeledByFormItem:a,isChecked:s,isDisabled:r,isFocused:i,checkboxSize:u,hasOwnLabel:c,model:d,actualValue:f,handleChange:m,onClickRoot:v}=Wd(t,n),h=ue("checkbox"),p=y(()=>[h.b(),h.m(u.value),h.is("disabled",r.value),h.is("bordered",t.border),h.is("checked",s.value)]),g=y(()=>[h.e("input"),h.is("disabled",r.value),h.is("checked",s.value),h.is("indeterminate",t.indeterminate),h.is("focus",i.value)]);return(b,E)=>(_(),oe(Ge(!o(c)&&o(a)?"span":"label"),{class:T(o(p)),"aria-controls":b.indeterminate?b.ariaControls:null,onClick:o(v)},{default:U(()=>{var C,w,k,S;return[F("span",{class:T(o(g))},[b.trueValue||b.falseValue||b.trueLabel||b.falseLabel?We((_(),V("input",{key:0,id:o(l),"onUpdate:modelValue":$=>gn(d)?d.value=$:null,class:T(o(h).e("original")),type:"checkbox",indeterminate:b.indeterminate,name:b.name,tabindex:b.tabindex,disabled:o(r),"true-value":(w=(C=b.trueValue)!=null?C:b.trueLabel)!=null?w:!0,"false-value":(S=(k=b.falseValue)!=null?k:b.falseLabel)!=null?S:!1,onChange:o(m),onFocus:$=>i.value=!0,onBlur:$=>i.value=!1,onClick:Le(()=>{},["stop"])},null,42,["id","onUpdate:modelValue","indeterminate","name","tabindex","disabled","true-value","false-value","onChange","onFocus","onBlur","onClick"])),[[Ka,o(d)]]):We((_(),V("input",{key:1,id:o(l),"onUpdate:modelValue":$=>gn(d)?d.value=$:null,class:T(o(h).e("original")),type:"checkbox",indeterminate:b.indeterminate,disabled:o(r),value:o(f),name:b.name,tabindex:b.tabindex,onChange:o(m),onFocus:$=>i.value=!0,onBlur:$=>i.value=!1,onClick:Le(()=>{},["stop"])},null,42,["id","onUpdate:modelValue","indeterminate","disabled","value","name","tabindex","onChange","onFocus","onBlur","onClick"])),[[Ka,o(d)]]),F("span",{class:T(o(h).e("inner"))},null,2)],2),o(c)?(_(),V("span",{key:0,class:T(o(h).e("label"))},[G(b.$slots,"default"),b.$slots.default?J("v-if",!0):(_(),V(Oe,{key:0},[st(pe(b.label),1)],64))],2)):J("v-if",!0)]}),_:3},8,["class","aria-controls","onClick"]))}});var by=fe(gy,[["__file","checkbox.vue"]]);const yy=x({name:"ElCheckboxButton"}),Cy=x({...yy,props:Hd,emits:Kd,setup(e){const t=e,n=Xt(),{isFocused:l,isChecked:a,isDisabled:s,checkboxButtonSize:r,model:i,actualValue:u,handleChange:c}=Wd(t,n),d=we(Oo,void 0),f=ue("checkbox"),m=y(()=>{var h,p,g,b;const E=(p=(h=d==null?void 0:d.fill)==null?void 0:h.value)!=null?p:"";return{backgroundColor:E,borderColor:E,color:(b=(g=d==null?void 0:d.textColor)==null?void 0:g.value)!=null?b:"",boxShadow:E?`-1px 0 0 0 ${E}`:void 0}}),v=y(()=>[f.b("button"),f.bm("button",r.value),f.is("disabled",s.value),f.is("checked",a.value),f.is("focus",l.value)]);return(h,p)=>{var g,b,E,C;return _(),V("label",{class:T(o(v))},[h.trueValue||h.falseValue||h.trueLabel||h.falseLabel?We((_(),V("input",{key:0,"onUpdate:modelValue":w=>gn(i)?i.value=w:null,class:T(o(f).be("button","original")),type:"checkbox",name:h.name,tabindex:h.tabindex,disabled:o(s),"true-value":(b=(g=h.trueValue)!=null?g:h.trueLabel)!=null?b:!0,"false-value":(C=(E=h.falseValue)!=null?E:h.falseLabel)!=null?C:!1,onChange:o(c),onFocus:w=>l.value=!0,onBlur:w=>l.value=!1,onClick:Le(()=>{},["stop"])},null,42,["onUpdate:modelValue","name","tabindex","disabled","true-value","false-value","onChange","onFocus","onBlur","onClick"])),[[Ka,o(i)]]):We((_(),V("input",{key:1,"onUpdate:modelValue":w=>gn(i)?i.value=w:null,class:T(o(f).be("button","original")),type:"checkbox",name:h.name,tabindex:h.tabindex,disabled:o(s),value:o(u),onChange:o(c),onFocus:w=>l.value=!0,onBlur:w=>l.value=!1,onClick:Le(()=>{},["stop"])},null,42,["onUpdate:modelValue","name","tabindex","disabled","value","onChange","onFocus","onBlur","onClick"])),[[Ka,o(i)]]),h.$slots.default||h.label?(_(),V("span",{key:2,class:T(o(f).be("button","inner")),style:_e(o(a)?o(m):void 0)},[G(h.$slots,"default",{},()=>[st(pe(h.label),1)])],6)):J("v-if",!0)],2)}}});var jd=fe(Cy,[["__file","checkbox-button.vue"]]);const wy=de({modelValue:{type:Y(Array),default:()=>[]},disabled:Boolean,min:Number,max:Number,size:Jt,fill:String,textColor:String,tag:{type:String,default:"div"},validateEvent:{type:Boolean,default:!0},...cn(["ariaLabel"])}),ky={[De]:e=>ke(e),change:e=>ke(e)},Sy=x({name:"ElCheckboxGroup"}),Ey=x({...Sy,props:wy,emits:ky,setup(e,{emit:t}){const n=e,l=ue("checkbox"),{formItem:a}=dn(),{inputId:s,isLabeledByFormItem:r}=Kn(n,{formItemContext:a}),i=async c=>{t(De,c),await Ee(),t(nt,c)},u=y({get(){return n.modelValue},set(c){i(c)}});return rt(Oo,{...An(nn(n),["size","min","max","disabled","validateEvent","fill","textColor"]),modelValue:u,changeEvent:i}),ie(()=>n.modelValue,()=>{n.validateEvent&&(a==null||a.validate("change").catch(c=>void 0))}),(c,d)=>{var f;return _(),oe(Ge(c.tag),{id:o(s),class:T(o(l).b("group")),role:"group","aria-label":o(r)?void 0:c.ariaLabel||"checkbox-group","aria-labelledby":o(r)?(f=o(a))==null?void 0:f.labelId:void 0},{default:U(()=>[G(c.$slots,"default")]),_:3},8,["id","class","aria-label","aria-labelledby"])}}});var Ud=fe(Ey,[["__file","checkbox-group.vue"]]);const Hn=He(by,{CheckboxButton:jd,CheckboxGroup:Ud}),_y=At(jd),Yd=At(Ud),qd=de({modelValue:{type:[String,Number,Boolean],default:void 0},size:Jt,disabled:Boolean,label:{type:[String,Number,Boolean],default:void 0},value:{type:[String,Number,Boolean],default:void 0},name:{type:String,default:void 0}}),Ty=de({...qd,border:Boolean}),Gd={[De]:e=>Ve(e)||Te(e)||_t(e),[nt]:e=>Ve(e)||Te(e)||_t(e)},Xd=Symbol("radioGroupKey"),Zd=(e,t)=>{const n=I(),l=we(Xd,void 0),a=y(()=>!!l),s=y(()=>In(e.value)?e.label:e.value),r=y({get(){return a.value?l.modelValue:e.modelValue},set(f){a.value?l.changeEvent(f):t&&t(De,f),n.value.checked=e.modelValue===s.value}}),i=Gt(y(()=>l==null?void 0:l.size)),u=fn(y(()=>l==null?void 0:l.disabled)),c=I(!1),d=y(()=>u.value||a.value&&r.value!==s.value?-1:0);return ul({from:"label act as value",replacement:"value",version:"3.0.0",scope:"el-radio",ref:"https://element-plus.org/en-US/component/radio.html"},y(()=>a.value&&In(e.value))),{radioRef:n,isGroup:a,radioGroup:l,focus:c,size:i,disabled:u,tabIndex:d,modelValue:r,actualValue:s}},$y=x({name:"ElRadio"}),Ny=x({...$y,props:Ty,emits:Gd,setup(e,{emit:t}){const n=e,l=ue("radio"),{radioRef:a,radioGroup:s,focus:r,size:i,disabled:u,modelValue:c,actualValue:d}=Zd(n,t);function f(){Ee(()=>t(nt,c.value))}return(m,v)=>{var h;return _(),V("label",{class:T([o(l).b(),o(l).is("disabled",o(u)),o(l).is("focus",o(r)),o(l).is("bordered",m.border),o(l).is("checked",o(c)===o(d)),o(l).m(o(i))])},[F("span",{class:T([o(l).e("input"),o(l).is("disabled",o(u)),o(l).is("checked",o(c)===o(d))])},[We(F("input",{ref_key:"radioRef",ref:a,"onUpdate:modelValue":p=>gn(c)?c.value=p:null,class:T(o(l).e("original")),value:o(d),name:m.name||((h=o(s))==null?void 0:h.name),disabled:o(u),checked:o(c)===o(d),type:"radio",onFocus:p=>r.value=!0,onBlur:p=>r.value=!1,onChange:f,onClick:Le(()=>{},["stop"])},null,42,["onUpdate:modelValue","value","name","disabled","checked","onFocus","onBlur","onClick"]),[[Rc,o(c)]]),F("span",{class:T(o(l).e("inner"))},null,2)],2),F("span",{class:T(o(l).e("label")),onKeydown:Le(()=>{},["stop"])},[G(m.$slots,"default",{},()=>[st(pe(m.label),1)])],42,["onKeydown"])],2)}}});var Iy=fe(Ny,[["__file","radio.vue"]]);const My=de({...qd}),Ry=x({name:"ElRadioButton"}),Py=x({...Ry,props:My,setup(e){const t=e,n=ue("radio"),{radioRef:l,focus:a,size:s,disabled:r,modelValue:i,radioGroup:u,actualValue:c}=Zd(t),d=y(()=>({backgroundColor:(u==null?void 0:u.fill)||"",borderColor:(u==null?void 0:u.fill)||"",boxShadow:u!=null&&u.fill?`-1px 0 0 0 ${u.fill}`:"",color:(u==null?void 0:u.textColor)||""}));return(f,m)=>{var v;return _(),V("label",{class:T([o(n).b("button"),o(n).is("active",o(i)===o(c)),o(n).is("disabled",o(r)),o(n).is("focus",o(a)),o(n).bm("button",o(s))])},[We(F("input",{ref_key:"radioRef",ref:l,"onUpdate:modelValue":h=>gn(i)?i.value=h:null,class:T(o(n).be("button","original-radio")),value:o(c),type:"radio",name:f.name||((v=o(u))==null?void 0:v.name),disabled:o(r),onFocus:h=>a.value=!0,onBlur:h=>a.value=!1,onClick:Le(()=>{},["stop"])},null,42,["onUpdate:modelValue","value","name","disabled","onFocus","onBlur","onClick"]),[[Rc,o(i)]]),F("span",{class:T(o(n).be("button","inner")),style:_e(o(i)===o(c)?o(d):{}),onKeydown:Le(()=>{},["stop"])},[G(f.$slots,"default",{},()=>[st(pe(f.label),1)])],46,["onKeydown"])],2)}}});var Jd=fe(Py,[["__file","radio-button.vue"]]);const Oy=de({id:{type:String,default:void 0},size:Jt,disabled:Boolean,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},...cn(["ariaLabel"])}),Ly=Gd,By=x({name:"ElRadioGroup"}),Vy=x({...By,props:Oy,emits:Ly,setup(e,{emit:t}){const n=e,l=ue("radio"),a=sn(),s=I(),{formItem:r}=dn(),{inputId:i,isLabeledByFormItem:u}=Kn(n,{formItemContext:r}),c=f=>{t(De,f),Ee(()=>t(nt,f))};Xe(()=>{const f=s.value.querySelectorAll("[type=radio]"),m=f[0];!Array.from(f).some(v=>v.checked)&&m&&(m.tabIndex=0)});const d=y(()=>n.name||a.value);return rt(Xd,kt({...nn(n),changeEvent:c,name:d})),ie(()=>n.modelValue,()=>{n.validateEvent&&(r==null||r.validate("change").catch(f=>void 0))}),(f,m)=>(_(),V("div",{id:o(i),ref_key:"radioGroupRef",ref:s,class:T(o(l).b("group")),role:"radiogroup","aria-label":o(u)?void 0:f.ariaLabel||"radio-group","aria-labelledby":o(u)?o(r).labelId:void 0},[G(f.$slots,"default")],10,["id","aria-label","aria-labelledby"]))}});var Qd=fe(Vy,[["__file","radio-group.vue"]]);const ef=He(Iy,{RadioButton:Jd,RadioGroup:Qd}),Dy=At(Qd),Ay=At(Jd);function Fy(e){return!!(ke(e)?e.every(({type:t})=>t===jl):(e==null?void 0:e.type)===jl)}var xy=x({name:"NodeContent",props:{node:{type:Object,required:!0},renderLabelFn:Function},setup(e){const t=ue("cascader-node"),{renderLabelFn:n,node:l}=e,{data:a,label:s}=l,r=()=>{const i=n==null?void 0:n({node:l,data:a});return Fy(i)?s:i??s};return()=>H("span",{class:t.e("label")},[r()])}});const li=Symbol(),zy=x({name:"ElCascaderNode"}),Hy=x({...zy,props:{node:{type:Object,required:!0},menuId:String},emits:["expand"],setup(e,{emit:t}){const n=e,l=we(li),a=ue("cascader-node"),s=y(()=>l.isHoverMenu),r=y(()=>l.config.multiple),i=y(()=>l.config.checkStrictly),u=y(()=>{var $;return($=l.checkedNodes[0])==null?void 0:$.uid}),c=y(()=>n.node.isDisabled),d=y(()=>n.node.isLeaf),f=y(()=>i.value&&!d.value||!c.value),m=y(()=>h(l.expandingNode)),v=y(()=>i.value&&l.checkedNodes.some(h)),h=$=>{var M;const{level:R,uid:N}=n.node;return((M=$==null?void 0:$.pathNodes[R-1])==null?void 0:M.uid)===N},p=()=>{m.value||l.expandNode(n.node)},g=$=>{const{node:M}=n;$!==M.checked&&l.handleCheckChange(M,$)},b=()=>{l.lazyLoad(n.node,()=>{d.value||p()})},E=$=>{s.value&&(C(),!d.value&&t("expand",$))},C=()=>{const{node:$}=n;!f.value||$.loading||($.loaded?p():b())},w=()=>{s.value&&!d.value||(d.value&&!c.value&&!i.value&&!r.value?S(!0):C())},k=$=>{i.value?(g($),n.node.loaded&&p()):S($)},S=$=>{n.node.loaded?(g($),!i.value&&p()):b()};return($,M)=>(_(),V("li",{id:`${e.menuId}-${e.node.uid}`,role:"menuitem","aria-haspopup":!o(d),"aria-owns":o(d)?void 0:e.menuId,"aria-expanded":o(m),tabindex:o(f)?-1:void 0,class:T([o(a).b(),o(a).is("selectable",o(i)),o(a).is("active",e.node.checked),o(a).is("disabled",!o(f)),o(m)&&"in-active-path",o(v)&&"in-checked-path"]),onMouseenter:E,onFocus:E,onClick:w},[J(" prefix "),o(r)?(_(),oe(o(Hn),{key:0,"model-value":e.node.checked,indeterminate:e.node.indeterminate,disabled:o(c),onClick:Le(()=>{},["stop"]),"onUpdate:modelValue":k},null,8,["model-value","indeterminate","disabled","onClick"])):o(i)?(_(),oe(o(ef),{key:1,"model-value":o(u),label:e.node.uid,disabled:o(c),"onUpdate:modelValue":k,onClick:Le(()=>{},["stop"])},{default:U(()=>[J(` - Add an empty element to avoid render label, - do not use empty fragment here for https://github.com/vuejs/vue-next/pull/2485 - `),F("span")]),_:1},8,["model-value","label","disabled","onClick"])):o(d)&&e.node.checked?(_(),oe(o(Se),{key:2,class:T(o(a).e("prefix"))},{default:U(()=>[H(o(va))]),_:1},8,["class"])):J("v-if",!0),H(o(xy),{"render-label-fn":o(l).renderLabelFn,node:e.node},null,8,["render-label-fn","node"]),J(" postfix "),o(d)?J("v-if",!0):(_(),V(Oe,{key:3},[e.node.loading?(_(),oe(o(Se),{key:0,class:T([o(a).is("loading"),o(a).e("postfix")])},{default:U(()=>[H(o(Qn))]),_:1},8,["class"])):(_(),oe(o(Se),{key:1,class:T(["arrow-right",o(a).e("postfix")])},{default:U(()=>[H(o(Cn))]),_:1},8,["class"]))],64))],42,["id","aria-haspopup","aria-owns","aria-expanded","tabindex"]))}});var Ky=fe(Hy,[["__file","node.vue"]]);const Wy=x({name:"ElCascaderMenu"}),jy=x({...Wy,props:{nodes:{type:Array,required:!0},index:{type:Number,required:!0}},setup(e){const t=e,n=lt(),l=ue("cascader-menu"),{t:a}=pt(),s=sn();let r,i;const u=we(li),c=I(),d=y(()=>!t.nodes.length),f=y(()=>!u.initialLoaded),m=y(()=>`${s.value}-${t.index}`),v=b=>{r=b.target},h=b=>{if(!(!u.isHoverMenu||!r||!c.value))if(r.contains(b.target)){p();const E=n.vnode.el,{left:C}=E.getBoundingClientRect(),{offsetWidth:w,offsetHeight:k}=E,S=b.clientX-C,$=r.offsetTop,M=$+r.offsetHeight;c.value.innerHTML=` - - - `}else i||(i=window.setTimeout(g,u.config.hoverThreshold))},p=()=>{i&&(clearTimeout(i),i=void 0)},g=()=>{c.value&&(c.value.innerHTML="",p())};return(b,E)=>(_(),oe(o(jn),{key:o(m),tag:"ul",role:"menu",class:T(o(l).b()),"wrap-class":o(l).e("wrap"),"view-class":[o(l).e("list"),o(l).is("empty",o(d))],onMousemove:h,onMouseleave:g},{default:U(()=>{var C;return[(_(!0),V(Oe,null,ut(e.nodes,w=>(_(),oe(Ky,{key:w.uid,node:w,"menu-id":o(m),onExpand:v},null,8,["node","menu-id"]))),128)),o(f)?(_(),V("div",{key:0,class:T(o(l).e("empty-text"))},[H(o(Se),{size:"14",class:T(o(l).is("loading"))},{default:U(()=>[H(o(Qn))]),_:1},8,["class"]),st(" "+pe(o(a)("el.cascader.loading")),1)],2)):o(d)?(_(),V("div",{key:1,class:T(o(l).e("empty-text"))},[G(b.$slots,"empty",{},()=>[st(pe(o(a)("el.cascader.noData")),1)])],2)):(C=o(u))!=null&&C.isHoverMenu?(_(),V(Oe,{key:2},[J(" eslint-disable-next-line vue/html-self-closing "),(_(),V("svg",{ref_key:"hoverZone",ref:c,class:T(o(l).e("hover-zone"))},null,2))],2112)):J("v-if",!0)]}),_:3},8,["class","wrap-class","view-class"]))}});var Uy=fe(jy,[["__file","menu.vue"]]);let Yy=0;const qy=e=>{const t=[e];let{parent:n}=e;for(;n;)t.unshift(n),n=n.parent;return t};let ir=class ur{constructor(t,n,l,a=!1){this.data=t,this.config=n,this.parent=l,this.root=a,this.uid=Yy++,this.checked=!1,this.indeterminate=!1,this.loading=!1;const{value:s,label:r,children:i}=n,u=t[i],c=qy(this);this.level=a?0:l?l.level+1:1,this.value=t[s],this.label=t[r],this.pathNodes=c,this.pathValues=c.map(d=>d.value),this.pathLabels=c.map(d=>d.label),this.childrenData=u,this.children=(u||[]).map(d=>new ur(d,n,this)),this.loaded=!n.lazy||this.isLeaf||!Pn(u),this.text=""}get isDisabled(){const{data:t,parent:n,config:l}=this,{disabled:a,checkStrictly:s}=l;return(Qe(a)?a(t,this):!!t[a])||!s&&!!(n!=null&&n.isDisabled)}get isLeaf(){const{data:t,config:n,childrenData:l,loaded:a}=this,{lazy:s,leaf:r}=n,i=Qe(r)?r(t,this):t[r];return vt(i)?s&&!a?!1:!(ke(l)&&l.length):!!i}get valueByOption(){return this.config.emitPath?this.pathValues:this.value}appendChild(t){const{childrenData:n,children:l}=this,a=new ur(t,this.config,this);return ke(n)?n.push(t):this.childrenData=[t],l.push(a),a}calcText(t,n){const l=t?this.pathLabels.join(n):this.label;return this.text=l,l}broadcast(t){this.children.forEach(n=>{var l;n&&(n.broadcast(t),(l=n.onParentCheck)==null||l.call(n,t))})}emit(){var t;const{parent:n}=this;n&&((t=n.onChildCheck)==null||t.call(n),n.emit())}onParentCheck(t){this.isDisabled||this.setCheckState(t)}onChildCheck(){const{children:t}=this,n=t.filter(a=>!a.isDisabled),l=n.length?n.every(a=>a.checked):!1;this.setCheckState(l)}setCheckState(t){const n=this.children.length,l=this.children.reduce((a,s)=>{const r=s.checked?1:s.indeterminate?.5:0;return a+r},0);this.checked=this.loaded&&this.children.filter(a=>!a.isDisabled).every(a=>a.loaded&&a.checked)&&t,this.indeterminate=this.loaded&&l!==n&&l>0}doCheck(t){if(this.checked===t)return;const{checkStrictly:n,multiple:l}=this.config;n||!l?this.checked=t:(this.broadcast(t),this.setCheckState(t),this.emit())}};const cr=(e,t)=>e.reduce((n,l)=>(l.isLeaf?n.push(l):(!t&&n.push(l),n=n.concat(cr(l.children,t))),n),[]);class Pu{constructor(t,n){this.config=n;const l=(t||[]).map(a=>new ir(a,this.config));this.nodes=l,this.allNodes=cr(l,!1),this.leafNodes=cr(l,!0)}getNodes(){return this.nodes}getFlattedNodes(t){return t?this.leafNodes:this.allNodes}appendNode(t,n){const l=n?n.appendChild(t):new ir(t,this.config);n||this.nodes.push(l),this.appendAllNodesAndLeafNodes(l)}appendNodes(t,n){t.forEach(l=>this.appendNode(l,n))}appendAllNodesAndLeafNodes(t){this.allNodes.push(t),t.isLeaf&&this.leafNodes.push(t),t.children&&t.children.forEach(n=>{this.appendAllNodesAndLeafNodes(n)})}getNodeByValue(t,n=!1){return In(t)?null:this.getFlattedNodes(n).find(a=>tn(a.value,t)||tn(a.pathValues,t))||null}getSameNode(t){return t&&this.getFlattedNodes(!1).find(({value:l,level:a})=>tn(t.value,l)&&t.level===a)||null}}const tf=de({modelValue:{type:Y([Number,String,Array])},options:{type:Y(Array),default:()=>[]},props:{type:Y(Object),default:()=>({})}}),Gy={expandTrigger:"click",multiple:!1,checkStrictly:!1,emitPath:!0,lazy:!1,lazyLoad:Bt,value:"value",label:"label",children:"children",leaf:"leaf",disabled:"disabled",hoverThreshold:500},Xy=de({...tf,border:{type:Boolean,default:!0},renderLabel:{type:Function}}),Ou=e=>!0,Zy={[De]:Ou,[nt]:Ou,close:()=>!0,"expand-change":e=>e},Jy=e=>y(()=>({...Gy,...e.props})),Lu=e=>{if(!e)return 0;const t=e.id.split("-");return Number(t[t.length-2])},Qy=e=>{if(!e)return;const t=e.querySelector("input");t?t.click():pd(e)&&e.click()},eC=(e,t)=>{const n=t.slice(0),l=n.map(s=>s.uid),a=e.reduce((s,r)=>{const i=l.indexOf(r.uid);return i>-1&&(s.push(r),n.splice(i,1),l.splice(i,1)),s},[]);return a.push(...n),a},Bu=e=>[...new Set(e)],En=e=>!e&&e!==0?[]:ke(e)?e:[e],tC=x({name:"ElCascaderPanel",inheritAttrs:!1}),nC=x({...tC,props:Xy,emits:Zy,setup(e,{expose:t,emit:n}){const l=e;let a=!1;const s=ue("cascader"),r=Jy(l),i=Xt();let u;const c=I(!0),d=I([]),f=I(),m=I([]),v=I(),h=I([]),p=y(()=>r.value.expandTrigger==="hover"),g=y(()=>l.renderLabel||i.default),b=()=>{const{options:K}=l,D=r.value;a=!1,u=new Pu(K,D),m.value=[u.getNodes()],D.lazy&&Pn(l.options)?(c.value=!1,E(void 0,L=>{L&&(u=new Pu(L,D),m.value=[u.getNodes()]),c.value=!0,N(!1,!0)})):N(!1,!0)},E=(K,D)=>{const L=r.value;K=K||new ir({},L,void 0,!0),K.loading=!0;const z=B=>{const A=K,ne=A.root?null:A;B&&(u==null||u.appendNodes(B,ne)),A.loading=!1,A.loaded=!0,A.childrenData=A.childrenData||[],B&&(D==null||D(B))};L.lazyLoad(K,z)},C=(K,D)=>{var L;const{level:z}=K,B=m.value.slice(0,z);let A;K.isLeaf?A=K.pathNodes[z-2]:(A=K,B.push(K.children)),((L=v.value)==null?void 0:L.uid)!==(A==null?void 0:A.uid)&&(v.value=K,m.value=B,!D&&n("expand-change",(K==null?void 0:K.pathValues)||[]))},w=(K,D,L=!0)=>{const{checkStrictly:z,multiple:B}=r.value,A=h.value[0];a=!0,!B&&(A==null||A.doCheck(!1)),K.doCheck(D),R(),L&&!B&&!z&&n("close"),!L&&!B&&!z&&k(K)},k=K=>{K&&(K=K.parent,k(K),K&&C(K))},S=K=>u==null?void 0:u.getFlattedNodes(K),$=K=>{var D;return(D=S(K))==null?void 0:D.filter(({checked:L})=>L!==!1)},M=()=>{h.value.forEach(K=>K.doCheck(!1)),R(),m.value=m.value.slice(0,1),v.value=void 0,n("expand-change",[])},R=()=>{const{checkStrictly:K,multiple:D}=r.value,L=h.value,z=$(!K),B=eC(L,z),A=B.map(ne=>ne.valueByOption);h.value=B,f.value=D?A:A[0]},N=(K=!1,D=!1)=>{const{modelValue:L}=l,{lazy:z,multiple:B,checkStrictly:A}=r.value,ne=!A;if(!(!c.value||a||!D&&tn(L,f.value)))if(z&&!K){const Q=Bu(qp(En(L))).map(Z=>u==null?void 0:u.getNodeByValue(Z)).filter(Z=>!!Z&&!Z.loaded&&!Z.loading);Q.length?Q.forEach(Z=>{E(Z,()=>N(!1,D))}):N(!0,D)}else{const j=B?En(L):[L],Q=Bu(j.map(Z=>u==null?void 0:u.getNodeByValue(Z,ne)));O(Q,D),f.value=Wa(L)}},O=(K,D=!0)=>{const{checkStrictly:L}=r.value,z=h.value,B=K.filter(j=>!!j&&(L||j.isLeaf)),A=u==null?void 0:u.getSameNode(v.value),ne=D&&A||B[0];ne?ne.pathNodes.forEach(j=>C(j,!0)):v.value=void 0,z.forEach(j=>j.doCheck(!1)),kt(B).forEach(j=>j.doCheck(!0)),h.value=B,Ee(P)},P=()=>{bt&&d.value.forEach(K=>{const D=K==null?void 0:K.$el;if(D){const L=D.querySelector(`.${s.namespace.value}-scrollbar__wrap`),z=D.querySelector(`.${s.b("node")}.${s.is("active")}:last-child`)||D.querySelector(`.${s.b("node")}.in-active-path`);Ur(L,z)}})},W=K=>{const D=K.target,{code:L}=K;switch(L){case Ce.up:case Ce.down:{K.preventDefault();const z=L===Ce.up?-1:1;Ba(hd(D,z,`.${s.b("node")}[tabindex="-1"]`));break}case Ce.left:{K.preventDefault();const z=d.value[Lu(D)-1],B=z==null?void 0:z.$el.querySelector(`.${s.b("node")}[aria-expanded="true"]`);Ba(B);break}case Ce.right:{K.preventDefault();const z=d.value[Lu(D)+1],B=z==null?void 0:z.$el.querySelector(`.${s.b("node")}[tabindex="-1"]`);Ba(B);break}case Ce.enter:case Ce.numpadEnter:Qy(D);break}};return rt(li,kt({config:r,expandingNode:v,checkedNodes:h,isHoverMenu:p,initialLoaded:c,renderLabelFn:g,lazyLoad:E,expandNode:C,handleCheckChange:w})),ie([r,()=>l.options],(K,D)=>{tn(K,D)||b()},{deep:!0,immediate:!0}),ie(()=>l.modelValue,()=>{a=!1,N()},{deep:!0}),ie(()=>f.value,K=>{tn(K,l.modelValue)||(n(De,K),n(nt,K))}),Pc(()=>d.value=[]),Xe(()=>!Pn(l.modelValue)&&N()),t({menuList:d,menus:m,checkedNodes:h,handleKeyDown:W,handleCheckChange:w,getFlattedNodes:S,getCheckedNodes:$,clearCheckedNodes:M,calculateCheckedValue:R,scrollToExpandingNode:P}),(K,D)=>(_(),V("div",{class:T([o(s).b("panel"),o(s).is("bordered",K.border)]),onKeydown:W},[(_(!0),V(Oe,null,ut(m.value,(L,z)=>(_(),oe(Uy,{key:z,ref_for:!0,ref:B=>d.value[z]=B,index:z,nodes:[...L]},{empty:U(()=>[G(K.$slots,"empty")]),_:2},1032,["index","nodes"]))),128))],34))}});var lC=fe(nC,[["__file","index.vue"]]);const nf=He(lC),fl=de({type:{type:String,values:["primary","success","info","warning","danger"],default:"primary"},closable:Boolean,disableTransitions:Boolean,hit:Boolean,color:String,size:{type:String,values:tl},effect:{type:String,values:["dark","light","plain"],default:"light"},round:Boolean}),oC={close:e=>e instanceof MouseEvent,click:e=>e instanceof MouseEvent},aC=x({name:"ElTag"}),sC=x({...aC,props:fl,emits:oC,setup(e,{emit:t}){const n=e,l=Gt(),a=ue("tag"),s=y(()=>{const{type:c,hit:d,effect:f,closable:m,round:v}=n;return[a.b(),a.is("closable",m),a.m(c||"primary"),a.m(l.value),a.m(f),a.is("hit",d),a.is("round",v)]}),r=c=>{t("close",c)},i=c=>{t("click",c)},u=c=>{var d,f,m;(m=(f=(d=c==null?void 0:c.component)==null?void 0:d.subTree)==null?void 0:f.component)!=null&&m.bum&&(c.component.subTree.component.bum=null)};return(c,d)=>c.disableTransitions?(_(),V("span",{key:0,class:T(o(s)),style:_e({backgroundColor:c.color}),onClick:i},[F("span",{class:T(o(a).e("content"))},[G(c.$slots,"default")],2),c.closable?(_(),oe(o(Se),{key:0,class:T(o(a).e("close")),onClick:Le(r,["stop"])},{default:U(()=>[H(o(zn))]),_:1},8,["class","onClick"])):J("v-if",!0)],6)):(_(),oe(an,{key:1,name:`${o(a).namespace.value}-zoom-in-center`,appear:"",onVnodeMounted:u},{default:U(()=>[F("span",{class:T(o(s)),style:_e({backgroundColor:c.color}),onClick:i},[F("span",{class:T(o(a).e("content"))},[G(c.$slots,"default")],2),c.closable?(_(),oe(o(Se),{key:0,class:T(o(a).e("close")),onClick:Le(r,["stop"])},{default:U(()=>[H(o(zn))]),_:1},8,["class","onClick"])):J("v-if",!0)],6)]),_:3},8,["name"]))}});var rC=fe(sC,[["__file","tag.vue"]]);const So=He(rC),iC=de({...tf,size:Jt,placeholder:String,disabled:Boolean,clearable:Boolean,filterable:Boolean,filterMethod:{type:Y(Function),default:(e,t)=>e.text.includes(t)},separator:{type:String,default:" / "},showAllLevels:{type:Boolean,default:!0},collapseTags:Boolean,maxCollapseTags:{type:Number,default:1},collapseTagsTooltip:Boolean,maxCollapseTagsTooltipHeight:{type:[String,Number]},debounce:{type:Number,default:300},beforeFilter:{type:Y(Function),default:()=>!0},placement:{type:Y(String),values:Xl,default:"bottom-start"},fallbackPlacements:{type:Y(Array),default:["bottom-start","bottom","top-start","top","right","left"]},popperClass:{type:String,default:""},teleported:Wt.teleported,tagType:{...fl.type,default:"info"},tagEffect:{...fl.effect,default:"light"},validateEvent:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},...Zl}),Vu=e=>!0,uC={[De]:Vu,[nt]:Vu,focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,visibleChange:e=>_t(e),expandChange:e=>!!e,removeTag:e=>!!e},Sl=new Map;if(bt){let e;document.addEventListener("mousedown",t=>e=t),document.addEventListener("mouseup",t=>{if(e){for(const n of Sl.values())for(const{documentHandler:l}of n)l(t,e);e=void 0}})}function Du(e,t){let n=[];return ke(t.arg)?n=t.arg:_n(t.arg)&&n.push(t.arg),function(l,a){const s=t.instance.popperRef,r=l.target,i=a==null?void 0:a.target,u=!t||!t.instance,c=!r||!i,d=e.contains(r)||e.contains(i),f=e===r,m=n.length&&n.some(h=>h==null?void 0:h.contains(r))||n.length&&n.includes(i),v=s&&(s.contains(r)||s.contains(i));u||c||d||f||m||v||t.value(l,a)}}const vl={beforeMount(e,t){Sl.has(e)||Sl.set(e,[]),Sl.get(e).push({documentHandler:Du(e,t),bindingFn:t.value})},updated(e,t){Sl.has(e)||Sl.set(e,[]);const n=Sl.get(e),l=n.findIndex(s=>s.bindingFn===t.oldValue),a={documentHandler:Du(e,t),bindingFn:t.value};l>=0?n.splice(l,1,a):n.push(a)},unmounted(e){Sl.delete(e)}},cC="ElCascader",dC=x({name:cC}),fC=x({...dC,props:iC,emits:uC,setup(e,{expose:t,emit:n}){const l=e,a={modifiers:[{name:"arrowPosition",enabled:!0,phase:"main",fn:({state:X})=>{const{modifiersData:ve,placement:q}=X;["right","left","bottom","top"].includes(q)||ve.arrow&&(ve.arrow.x=35)},requires:["arrow"]}]},s=pl();let r=0,i=0;const u=ue("cascader"),c=ue("input"),{t:d}=pt(),{form:f,formItem:m}=dn(),{valueOnClear:v}=da(l),{isComposing:h,handleComposition:p}=ha({afterComposition(X){var ve;const q=(ve=X.target)==null?void 0:ve.value;tt(q)}}),g=I(null),b=I(null),E=I(null),C=I(null),w=I(null),k=I(!1),S=I(!1),$=I(!1),M=I(!1),R=I(""),N=I(""),O=I([]),P=I([]),W=I([]),K=y(()=>s.style),D=y(()=>l.disabled||(f==null?void 0:f.disabled)),L=y(()=>{var X;return(X=l.placeholder)!=null?X:d("el.cascader.placeholder")}),z=y(()=>N.value||O.value.length>0||h.value?"":L.value),B=Gt(),A=y(()=>B.value==="small"?"small":"default"),ne=y(()=>!!l.props.multiple),j=y(()=>!l.filterable||ne.value),Q=y(()=>ne.value?N.value:R.value),Z=y(()=>{var X;return((X=C.value)==null?void 0:X.checkedNodes)||[]}),ee=y(()=>!l.clearable||D.value||$.value||!S.value?!1:!!Z.value.length),ae=y(()=>{const{showAllLevels:X,separator:ve}=l,q=Z.value;return q.length?ne.value?"":q[0].calcText(X,ve):""}),re=y(()=>(m==null?void 0:m.validateState)||""),le=y({get(){return Wa(l.modelValue)},set(X){const ve=X??v.value;n(De,ve),n(nt,ve),l.validateEvent&&(m==null||m.validate("change").catch(q=>void 0))}}),se=y(()=>[u.b(),u.m(B.value),u.is("disabled",D.value),s.class]),ge=y(()=>[c.e("icon"),"icon-arrow-down",u.is("reverse",k.value)]),Be=y(()=>u.is("focus",k.value||M.value)),te=y(()=>{var X,ve;return(ve=(X=g.value)==null?void 0:X.popperRef)==null?void 0:ve.contentRef}),ce=X=>{var ve,q,be;D.value||(X=X??!k.value,X!==k.value&&(k.value=X,(q=(ve=b.value)==null?void 0:ve.input)==null||q.setAttribute("aria-expanded",`${X}`),X?(Ie(),Ee((be=C.value)==null?void 0:be.scrollToExpandingNode)):l.filterable&&Ue(),n("visibleChange",X)))},Ie=()=>{Ee(()=>{var X;(X=g.value)==null||X.updatePopper()})},Ae=()=>{$.value=!1},xe=X=>{const{showAllLevels:ve,separator:q}=l;return{node:X,key:X.uid,text:X.calcText(ve,q),hitState:!1,closable:!D.value&&!X.isDisabled,isCollapseTag:!1}},Ye=X=>{var ve;const q=X.node;q.doCheck(!1),(ve=C.value)==null||ve.calculateCheckedValue(),n("removeTag",q.valueByOption)},$e=()=>{if(!ne.value)return;const X=Z.value,ve=[],q=[];if(X.forEach(be=>q.push(xe(be))),P.value=q,X.length){X.slice(0,l.maxCollapseTags).forEach(ft=>ve.push(xe(ft)));const be=X.slice(l.maxCollapseTags),qe=be.length;qe&&(l.collapseTags?ve.push({key:-1,text:`+ ${qe}`,closable:!1,isCollapseTag:!0}):be.forEach(ft=>ve.push(xe(ft))))}O.value=ve},Me=()=>{var X,ve;const{filterMethod:q,showAllLevels:be,separator:qe}=l,ft=(ve=(X=C.value)==null?void 0:X.getFlattedNodes(!l.props.checkStrictly))==null?void 0:ve.filter(Pt=>Pt.isDisabled?!1:(Pt.calcText(be,qe),q(Pt,Q.value)));ne.value&&(O.value.forEach(Pt=>{Pt.hitState=!1}),P.value.forEach(Pt=>{Pt.hitState=!1})),$.value=!0,W.value=ft,Ie()},Pe=()=>{var X;let ve;$.value&&w.value?ve=w.value.$el.querySelector(`.${u.e("suggestion-item")}`):ve=(X=C.value)==null?void 0:X.$el.querySelector(`.${u.b("node")}[tabindex="-1"]`),ve&&(ve.focus(),!$.value&&ve.click())},Ze=()=>{var X,ve;const q=(X=b.value)==null?void 0:X.input,be=E.value,qe=(ve=w.value)==null?void 0:ve.$el;if(!(!bt||!q)){if(qe){const ft=qe.querySelector(`.${u.e("suggestion-list")}`);ft.style.minWidth=`${q.offsetWidth}px`}if(be){const{offsetHeight:ft}=be,Pt=O.value.length>0?`${Math.max(ft,r)-2}px`:`${r}px`;q.style.height=Pt,Ie()}}},ot=X=>{var ve;return(ve=C.value)==null?void 0:ve.getCheckedNodes(X)},at=X=>{Ie(),n("expandChange",X)},ct=X=>{if(!h.value)switch(X.code){case Ce.enter:case Ce.numpadEnter:ce();break;case Ce.down:ce(!0),Ee(Pe),X.preventDefault();break;case Ce.esc:k.value===!0&&(X.preventDefault(),X.stopPropagation(),ce(!1));break;case Ce.tab:ce(!1);break}},ye=()=>{var X;(X=C.value)==null||X.clearCheckedNodes(),!k.value&&l.filterable&&Ue(),ce(!1),n("clear")},Ue=()=>{const{value:X}=ae;R.value=X,N.value=X},It=X=>{var ve,q;const{checked:be}=X;ne.value?(ve=C.value)==null||ve.handleCheckChange(X,!be,!1):(!be&&((q=C.value)==null||q.handleCheckChange(X,!0,!1)),ce(!1))},Ot=X=>{const ve=X.target,{code:q}=X;switch(q){case Ce.up:case Ce.down:{X.preventDefault();const be=q===Ce.up?-1:1;Ba(hd(ve,be,`.${u.e("suggestion-item")}[tabindex="-1"]`));break}case Ce.enter:case Ce.numpadEnter:ve.click();break}},Rt=()=>{const X=O.value,ve=X[X.length-1];i=N.value?0:i+1,!(!ve||!i||l.collapseTags&&X.length>1)&&(ve.hitState?Ye(ve):ve.hitState=!0)},Mt=X=>{const ve=X.target,q=u.e("search-input");ve.className===q&&(M.value=!0),n("focus",X)},St=X=>{M.value=!1,n("blur",X)},je=Ln(()=>{const{value:X}=Q;if(!X)return;const ve=l.beforeFilter(X);Yo(ve)?ve.then(Me).catch(()=>{}):ve!==!1?Me():Ae()},l.debounce),tt=(X,ve)=>{!k.value&&ce(!0),!(ve!=null&&ve.isComposing)&&(X?je():Ae())},it=X=>Number.parseFloat(Rp(c.cssVarName("input-height"),X).value)-2;return ie($,Ie),ie([Z,D,()=>l.collapseTags],$e),ie(O,()=>{Ee(()=>Ze())}),ie(B,async()=>{await Ee();const X=b.value.input;r=it(X)||r,Ze()}),ie(ae,Ue,{immediate:!0}),Xe(()=>{const X=b.value.input,ve=it(X);r=X.offsetHeight||ve,Ft(X,Ze)}),t({getCheckedNodes:ot,cascaderPanelRef:C,togglePopperVisible:ce,contentRef:te,presentText:ae}),(X,ve)=>(_(),oe(o(un),{ref_key:"tooltipRef",ref:g,visible:k.value,teleported:X.teleported,"popper-class":[o(u).e("dropdown"),X.popperClass],"popper-options":a,"fallback-placements":X.fallbackPlacements,"stop-popper-mouse-event":!1,"gpu-acceleration":!1,placement:X.placement,transition:`${o(u).namespace.value}-zoom-in-top`,effect:"light",pure:"",persistent:X.persistent,onHide:Ae},{default:U(()=>[We((_(),V("div",{class:T(o(se)),style:_e(o(K)),onClick:()=>ce(o(j)?void 0:!0),onKeydown:ct,onMouseenter:q=>S.value=!0,onMouseleave:q=>S.value=!1},[H(o(hn),{ref_key:"input",ref:b,modelValue:R.value,"onUpdate:modelValue":q=>R.value=q,placeholder:o(z),readonly:o(j),disabled:o(D),"validate-event":!1,size:o(B),class:T(o(Be)),tabindex:o(ne)&&X.filterable&&!o(D)?-1:void 0,onCompositionstart:o(p),onCompositionupdate:o(p),onCompositionend:o(p),onFocus:Mt,onBlur:St,onInput:tt},Mn({suffix:U(()=>[o(ee)?(_(),oe(o(Se),{key:"clear",class:T([o(c).e("icon"),"icon-circle-close"]),onClick:Le(ye,["stop"])},{default:U(()=>[H(o(ml))]),_:1},8,["class","onClick"])):(_(),oe(o(Se),{key:"arrow-down",class:T(o(ge)),onClick:Le(q=>ce(),["stop"])},{default:U(()=>[H(o(nl))]),_:1},8,["class","onClick"]))]),_:2},[X.$slots.prefix?{name:"prefix",fn:U(()=>[G(X.$slots,"prefix")])}:void 0]),1032,["modelValue","onUpdate:modelValue","placeholder","readonly","disabled","size","class","tabindex","onCompositionstart","onCompositionupdate","onCompositionend"]),o(ne)?(_(),V("div",{key:0,ref_key:"tagWrapper",ref:E,class:T([o(u).e("tags"),o(u).is("validate",!!o(re))])},[G(X.$slots,"tag",{data:P.value,deleteTag:Ye},()=>[(_(!0),V(Oe,null,ut(O.value,q=>(_(),oe(o(So),{key:q.key,type:X.tagType,size:o(A),effect:X.tagEffect,hit:q.hitState,closable:q.closable,"disable-transitions":"",onClose:be=>Ye(q)},{default:U(()=>[q.isCollapseTag===!1?(_(),V("span",{key:0},pe(q.text),1)):(_(),oe(o(un),{key:1,disabled:k.value||!X.collapseTagsTooltip,"fallback-placements":["bottom","top","right","left"],placement:"bottom",effect:"light"},{default:U(()=>[F("span",null,pe(q.text),1)]),content:U(()=>[H(o(jn),{"max-height":X.maxCollapseTagsTooltipHeight},{default:U(()=>[F("div",{class:T(o(u).e("collapse-tags"))},[(_(!0),V(Oe,null,ut(P.value.slice(X.maxCollapseTags),(be,qe)=>(_(),V("div",{key:qe,class:T(o(u).e("collapse-tag"))},[(_(),oe(o(So),{key:be.key,class:"in-tooltip",type:X.tagType,size:o(A),effect:X.tagEffect,hit:be.hitState,closable:be.closable,"disable-transitions":"",onClose:ft=>Ye(be)},{default:U(()=>[F("span",null,pe(be.text),1)]),_:2},1032,["type","size","effect","hit","closable","onClose"]))],2))),128))],2)]),_:1},8,["max-height"])]),_:2},1032,["disabled"]))]),_:2},1032,["type","size","effect","hit","closable","onClose"]))),128))]),X.filterable&&!o(D)?We((_(),V("input",{key:0,"onUpdate:modelValue":q=>N.value=q,type:"text",class:T(o(u).e("search-input")),placeholder:o(ae)?"":o(L),onInput:q=>tt(N.value,q),onClick:Le(q=>ce(!0),["stop"]),onKeydown:Tt(Rt,["delete"]),onCompositionstart:o(p),onCompositionupdate:o(p),onCompositionend:o(p),onFocus:Mt,onBlur:St},null,42,["onUpdate:modelValue","placeholder","onInput","onClick","onKeydown","onCompositionstart","onCompositionupdate","onCompositionend"])),[[ds,N.value]]):J("v-if",!0)],2)):J("v-if",!0)],46,["onClick","onMouseenter","onMouseleave"])),[[o(vl),()=>ce(!1),o(te)]])]),content:U(()=>[We(H(o(nf),{ref_key:"cascaderPanelRef",ref:C,modelValue:o(le),"onUpdate:modelValue":q=>gn(le)?le.value=q:null,options:X.options,props:l.props,border:!1,"render-label":X.$slots.default,onExpandChange:at,onClose:q=>X.$nextTick(()=>ce(!1))},{empty:U(()=>[G(X.$slots,"empty")]),_:3},8,["modelValue","onUpdate:modelValue","options","props","render-label","onClose"]),[[mt,!$.value]]),X.filterable?We((_(),oe(o(jn),{key:0,ref_key:"suggestionPanel",ref:w,tag:"ul",class:T(o(u).e("suggestion-panel")),"view-class":o(u).e("suggestion-list"),onKeydown:Ot},{default:U(()=>[W.value.length?(_(!0),V(Oe,{key:0},ut(W.value,q=>(_(),V("li",{key:q.uid,class:T([o(u).e("suggestion-item"),o(u).is("checked",q.checked)]),tabindex:-1,onClick:be=>It(q)},[G(X.$slots,"suggestion-item",{item:q},()=>[F("span",null,pe(q.text),1),q.checked?(_(),oe(o(Se),{key:0},{default:U(()=>[H(o(va))]),_:1})):J("v-if",!0)])],10,["onClick"]))),128)):G(X.$slots,"empty",{key:1},()=>[F("li",{class:T(o(u).e("empty-text"))},pe(o(d)("el.cascader.noMatch")),3)])]),_:3},8,["class","view-class"])),[[mt,$.value]]):J("v-if",!0)]),_:3},8,["visible","teleported","popper-class","fallback-placements","placement","transition","persistent"]))}});var vC=fe(fC,[["__file","cascader.vue"]]);const pC=He(vC),hC=de({checked:Boolean,disabled:Boolean,type:{type:String,values:["primary","success","info","warning","danger"],default:"primary"}}),mC={"update:checked":e=>_t(e),[nt]:e=>_t(e)},gC=x({name:"ElCheckTag"}),bC=x({...gC,props:hC,emits:mC,setup(e,{emit:t}){const n=e,l=ue("check-tag"),a=y(()=>n.disabled),s=y(()=>[l.b(),l.is("checked",n.checked),l.is("disabled",a.value),l.m(n.type||"primary")]),r=()=>{if(a.value)return;const i=!n.checked;t(nt,i),t("update:checked",i)};return(i,u)=>(_(),V("span",{class:T(o(s)),onClick:r},[G(i.$slots,"default")],2))}});var yC=fe(bC,[["__file","check-tag.vue"]]);const CC=He(yC),wC=de({tag:{type:String,default:"div"},span:{type:Number,default:24},offset:{type:Number,default:0},pull:{type:Number,default:0},push:{type:Number,default:0},xs:{type:Y([Number,Object]),default:()=>Vt({})},sm:{type:Y([Number,Object]),default:()=>Vt({})},md:{type:Y([Number,Object]),default:()=>Vt({})},lg:{type:Y([Number,Object]),default:()=>Vt({})},xl:{type:Y([Number,Object]),default:()=>Vt({})}}),lf=Symbol("rowContextKey"),kC=x({name:"ElCol"}),SC=x({...kC,props:wC,setup(e){const t=e,{gutter:n}=we(lf,{gutter:y(()=>0)}),l=ue("col"),a=y(()=>{const r={};return n.value&&(r.paddingLeft=r.paddingRight=`${n.value/2}px`),r}),s=y(()=>{const r=[];return["span","offset","pull","push"].forEach(c=>{const d=t[c];Te(d)&&(c==="span"?r.push(l.b(`${t[c]}`)):d>0&&r.push(l.b(`${c}-${t[c]}`)))}),["xs","sm","md","lg","xl"].forEach(c=>{Te(t[c])?r.push(l.b(`${c}-${t[c]}`)):yt(t[c])&&Object.entries(t[c]).forEach(([d,f])=>{r.push(d!=="span"?l.b(`${c}-${d}-${f}`):l.b(`${c}-${f}`))})}),n.value&&r.push(l.is("guttered")),[l.b(),r]});return(r,i)=>(_(),oe(Ge(r.tag),{class:T(o(s)),style:_e(o(a))},{default:U(()=>[G(r.$slots,"default")]),_:3},8,["class","style"]))}});var EC=fe(SC,[["__file","col.vue"]]);const _C=He(EC),Au=e=>Te(e)||Ve(e)||ke(e),TC=de({accordion:Boolean,modelValue:{type:Y([Array,String,Number]),default:()=>Vt([])},expandIconPosition:{type:Y([String]),default:"right"},beforeCollapse:{type:Y(Function)}}),$C={[De]:Au,[nt]:Au},of=Symbol("collapseContextKey"),NC="ElCollapse",IC=(e,t)=>{const n=I(ln(e.modelValue)),l=r=>{n.value=r;const i=e.accordion?n.value[0]:n.value;t(De,i),t(nt,i)},a=r=>{if(e.accordion)l([n.value[0]===r?"":r]);else{const i=[...n.value],u=i.indexOf(r);u>-1?i.splice(u,1):i.push(r),l(i)}},s=async r=>{const{beforeCollapse:i}=e;if(!i){a(r);return}const u=i(r);[Yo(u),_t(u)].includes(!0)||jt(NC,"beforeCollapse must return type `Promise` or `boolean`"),Yo(u)?u.then(d=>{d!==!1&&a(r)}).catch(d=>{}):u&&a(r)};return ie(()=>e.modelValue,()=>n.value=ln(e.modelValue),{deep:!0}),rt(of,{activeNames:n,handleItemClick:s}),{activeNames:n,setActiveNames:l}},MC=e=>{const t=ue("collapse");return{rootKls:y(()=>[t.b(),t.b(`icon-position-${e.expandIconPosition}`)])}},RC=x({name:"ElCollapse"}),PC=x({...RC,props:TC,emits:$C,setup(e,{expose:t,emit:n}){const l=e,{activeNames:a,setActiveNames:s}=IC(l,n),{rootKls:r}=MC(l);return t({activeNames:a,setActiveNames:s}),(i,u)=>(_(),V("div",{class:T(o(r))},[G(i.$slots,"default")],2))}});var OC=fe(PC,[["__file","collapse.vue"]]);const LC=x({name:"ElCollapseTransition"}),BC=x({...LC,setup(e){const t=ue("collapse-transition"),n=a=>{a.style.maxHeight="",a.style.overflow=a.dataset.oldOverflow,a.style.paddingTop=a.dataset.oldPaddingTop,a.style.paddingBottom=a.dataset.oldPaddingBottom},l={beforeEnter(a){a.dataset||(a.dataset={}),a.dataset.oldPaddingTop=a.style.paddingTop,a.dataset.oldPaddingBottom=a.style.paddingBottom,a.style.height&&(a.dataset.elExistsHeight=a.style.height),a.style.maxHeight=0,a.style.paddingTop=0,a.style.paddingBottom=0},enter(a){requestAnimationFrame(()=>{a.dataset.oldOverflow=a.style.overflow,a.dataset.elExistsHeight?a.style.maxHeight=a.dataset.elExistsHeight:a.scrollHeight!==0?a.style.maxHeight=`${a.scrollHeight}px`:a.style.maxHeight=0,a.style.paddingTop=a.dataset.oldPaddingTop,a.style.paddingBottom=a.dataset.oldPaddingBottom,a.style.overflow="hidden"})},afterEnter(a){a.style.maxHeight="",a.style.overflow=a.dataset.oldOverflow},enterCancelled(a){n(a)},beforeLeave(a){a.dataset||(a.dataset={}),a.dataset.oldPaddingTop=a.style.paddingTop,a.dataset.oldPaddingBottom=a.style.paddingBottom,a.dataset.oldOverflow=a.style.overflow,a.style.maxHeight=`${a.scrollHeight}px`,a.style.overflow="hidden"},leave(a){a.scrollHeight!==0&&(a.style.maxHeight=0,a.style.paddingTop=0,a.style.paddingBottom=0)},afterLeave(a){n(a)},leaveCancelled(a){n(a)}};return(a,s)=>(_(),oe(an,et({name:o(t).b()},Pp(l)),{default:U(()=>[G(a.$slots,"default")]),_:3},16,["name"]))}});var VC=fe(BC,[["__file","collapse-transition.vue"]]);const Ss=He(VC),DC=de({title:{type:String,default:""},name:{type:Y([String,Number]),default:void 0},icon:{type:$t,default:Cn},disabled:Boolean}),AC=e=>{const t=we(of),{namespace:n}=ue("collapse"),l=I(!1),a=I(!1),s=Zr(),r=y(()=>s.current++),i=y(()=>{var m;return(m=e.name)!=null?m:`${n.value}-id-${s.prefix}-${o(r)}`}),u=y(()=>t==null?void 0:t.activeNames.value.includes(o(i)));return{focusing:l,id:r,isActive:u,handleFocus:()=>{setTimeout(()=>{a.value?a.value=!1:l.value=!0},50)},handleHeaderClick:m=>{if(e.disabled)return;const v=m.target;v!=null&&v.closest("input, textarea, select")||(t==null||t.handleItemClick(o(i)),l.value=!1,a.value=!0)},handleEnterClick:m=>{const v=m.target;v!=null&&v.closest("input, textarea, select")||(m.preventDefault(),t==null||t.handleItemClick(o(i)))}}},FC=(e,{focusing:t,isActive:n,id:l})=>{const a=ue("collapse"),s=y(()=>[a.b("item"),a.is("active",o(n)),a.is("disabled",e.disabled)]),r=y(()=>[a.be("item","header"),a.is("active",o(n)),{focusing:o(t)&&!e.disabled}]),i=y(()=>[a.be("item","arrow"),a.is("active",o(n))]),u=y(()=>[a.be("item","title")]),c=y(()=>a.be("item","wrap")),d=y(()=>a.be("item","content")),f=y(()=>a.b(`content-${o(l)}`)),m=y(()=>a.b(`head-${o(l)}`));return{itemTitleKls:u,arrowKls:i,headKls:r,rootKls:s,itemWrapperKls:c,itemContentKls:d,scopedContentId:f,scopedHeadId:m}},xC=x({name:"ElCollapseItem"}),zC=x({...xC,props:DC,setup(e,{expose:t}){const n=e,{focusing:l,id:a,isActive:s,handleFocus:r,handleHeaderClick:i,handleEnterClick:u}=AC(n),{arrowKls:c,headKls:d,rootKls:f,itemTitleKls:m,itemWrapperKls:v,itemContentKls:h,scopedContentId:p,scopedHeadId:g}=FC(n,{focusing:l,isActive:s,id:a});return t({isActive:s}),(b,E)=>(_(),V("div",{class:T(o(f))},[F("div",{id:o(g),class:T(o(d)),"aria-expanded":o(s),"aria-controls":o(p),"aria-describedby":o(p),tabindex:b.disabled?-1:0,role:"button",onClick:o(i),onKeydown:Tt(Le(o(u),["stop"]),["space","enter"]),onFocus:o(r),onBlur:C=>l.value=!1},[F("span",{class:T(o(m))},[G(b.$slots,"title",{isActive:o(s)},()=>[st(pe(b.title),1)])],2),G(b.$slots,"icon",{isActive:o(s)},()=>[H(o(Se),{class:T(o(c))},{default:U(()=>[(_(),oe(Ge(b.icon)))]),_:1},8,["class"])])],42,["id","aria-expanded","aria-controls","aria-describedby","tabindex","onClick","onKeydown","onFocus","onBlur"]),H(o(Ss),null,{default:U(()=>[We(F("div",{id:o(p),role:"region",class:T(o(v)),"aria-hidden":!o(s),"aria-labelledby":o(g)},[F("div",{class:T(o(h))},[G(b.$slots,"default")],2)],10,["id","aria-hidden","aria-labelledby"]),[[mt,o(s)]])]),_:3})],2))}});var af=fe(zC,[["__file","collapse-item.vue"]]);const HC=He(OC,{CollapseItem:af}),KC=At(af),WC=de({color:{type:Y(Object),required:!0},vertical:Boolean});let Ks=!1;function Zo(e,t){if(!bt)return;const n=function(s){var r;(r=t.drag)==null||r.call(t,s)},l=function(s){var r;document.removeEventListener("mousemove",n),document.removeEventListener("mouseup",l),document.removeEventListener("touchmove",n),document.removeEventListener("touchend",l),document.onselectstart=null,document.ondragstart=null,Ks=!1,(r=t.end)==null||r.call(t,s)},a=function(s){var r;Ks||(s.preventDefault(),document.onselectstart=()=>!1,document.ondragstart=()=>!1,document.addEventListener("mousemove",n),document.addEventListener("mouseup",l),document.addEventListener("touchmove",n),document.addEventListener("touchend",l),Ks=!0,(r=t.start)==null||r.call(t,s))};e.addEventListener("mousedown",a),e.addEventListener("touchstart",a,{passive:!1})}const jC=(e,t)=>{if(!bt||!e||!t)return!1;const n=e.getBoundingClientRect();let l;return t instanceof Element?l=t.getBoundingClientRect():l={top:0,right:window.innerWidth,bottom:window.innerHeight,left:0},n.topl.top&&n.right>l.left&&n.left{let t=0,n=e;for(;n;)t+=n.offsetTop,n=n.offsetParent;return t},dr=(e,t)=>Math.abs(Fu(e)-Fu(t)),oi=e=>{let t,n;return e.type==="touchend"?(n=e.changedTouches[0].clientY,t=e.changedTouches[0].clientX):e.type.startsWith("touch")?(n=e.touches[0].clientY,t=e.touches[0].clientX):(n=e.clientY,t=e.clientX),{clientX:t,clientY:n}},UC=e=>{const t=lt(),{t:n}=pt(),l=Lt(),a=Lt(),s=y(()=>e.color.get("alpha")),r=y(()=>n("el.colorpicker.alphaLabel"));function i(f){var m;f.target!==l.value&&u(f),(m=l.value)==null||m.focus()}function u(f){if(!a.value||!l.value)return;const v=t.vnode.el.getBoundingClientRect(),{clientX:h,clientY:p}=oi(f);if(e.vertical){let g=p-v.top;g=Math.max(l.value.offsetHeight/2,g),g=Math.min(g,v.height-l.value.offsetHeight/2),e.color.set("alpha",Math.round((g-l.value.offsetHeight/2)/(v.height-l.value.offsetHeight)*100))}else{let g=h-v.left;g=Math.max(l.value.offsetWidth/2,g),g=Math.min(g,v.width-l.value.offsetWidth/2),e.color.set("alpha",Math.round((g-l.value.offsetWidth/2)/(v.width-l.value.offsetWidth)*100))}}function c(f){const{code:m,shiftKey:v}=f,h=v?10:1;switch(m){case Ce.left:case Ce.down:f.preventDefault(),f.stopPropagation(),d(-h);break;case Ce.right:case Ce.up:f.preventDefault(),f.stopPropagation(),d(h);break}}function d(f){let m=s.value+f;m=m<0?0:m>100?100:m,e.color.set("alpha",m)}return{thumb:l,bar:a,alpha:s,alphaLabel:r,handleDrag:u,handleClick:i,handleKeydown:c}},YC=(e,{bar:t,thumb:n,handleDrag:l})=>{const a=lt(),s=ue("color-alpha-slider"),r=I(0),i=I(0),u=I();function c(){if(!n.value||e.vertical)return 0;const E=a.vnode.el,C=e.color.get("alpha");return E?Math.round(C*(E.offsetWidth-n.value.offsetWidth/2)/100):0}function d(){if(!n.value)return 0;const E=a.vnode.el;if(!e.vertical)return 0;const C=e.color.get("alpha");return E?Math.round(C*(E.offsetHeight-n.value.offsetHeight/2)/100):0}function f(){if(e.color&&e.color.value){const{r:E,g:C,b:w}=e.color.toRgb();return`linear-gradient(to right, rgba(${E}, ${C}, ${w}, 0) 0%, rgba(${E}, ${C}, ${w}, 1) 100%)`}return""}function m(){r.value=c(),i.value=d(),u.value=f()}Xe(()=>{if(!t.value||!n.value)return;const E={drag:C=>{l(C)},end:C=>{l(C)}};Zo(t.value,E),Zo(n.value,E),m()}),ie(()=>e.color.get("alpha"),()=>m()),ie(()=>e.color.value,()=>m());const v=y(()=>[s.b(),s.is("vertical",e.vertical)]),h=y(()=>s.e("bar")),p=y(()=>s.e("thumb")),g=y(()=>({background:u.value})),b=y(()=>({left:zt(r.value),top:zt(i.value)}));return{rootKls:v,barKls:h,barStyle:g,thumbKls:p,thumbStyle:b,update:m}},qC="ElColorAlphaSlider",GC=x({name:qC}),XC=x({...GC,props:WC,setup(e,{expose:t}){const n=e,{alpha:l,alphaLabel:a,bar:s,thumb:r,handleDrag:i,handleClick:u,handleKeydown:c}=UC(n),{rootKls:d,barKls:f,barStyle:m,thumbKls:v,thumbStyle:h,update:p}=YC(n,{bar:s,thumb:r,handleDrag:i});return t({update:p,bar:s,thumb:r}),(g,b)=>(_(),V("div",{class:T(o(d))},[F("div",{ref_key:"bar",ref:s,class:T(o(f)),style:_e(o(m)),onClick:o(u)},null,14,["onClick"]),F("div",{ref_key:"thumb",ref:r,class:T(o(v)),style:_e(o(h)),"aria-label":o(a),"aria-valuenow":o(l),"aria-orientation":g.vertical?"vertical":"horizontal","aria-valuemin":"0","aria-valuemax":"100",role:"slider",tabindex:"0",onKeydown:o(c)},null,46,["aria-label","aria-valuenow","aria-orientation","onKeydown"])],2))}});var ZC=fe(XC,[["__file","alpha-slider.vue"]]);const JC=x({name:"ElColorHueSlider",props:{color:{type:Object,required:!0},vertical:Boolean},setup(e){const t=ue("color-hue-slider"),n=lt(),l=I(),a=I(),s=I(0),r=I(0),i=y(()=>e.color.get("hue"));ie(()=>i.value,()=>{m()});function u(v){v.target!==l.value&&c(v)}function c(v){if(!a.value||!l.value)return;const p=n.vnode.el.getBoundingClientRect(),{clientX:g,clientY:b}=oi(v);let E;if(e.vertical){let C=b-p.top;C=Math.min(C,p.height-l.value.offsetHeight/2),C=Math.max(l.value.offsetHeight/2,C),E=Math.round((C-l.value.offsetHeight/2)/(p.height-l.value.offsetHeight)*360)}else{let C=g-p.left;C=Math.min(C,p.width-l.value.offsetWidth/2),C=Math.max(l.value.offsetWidth/2,C),E=Math.round((C-l.value.offsetWidth/2)/(p.width-l.value.offsetWidth)*360)}e.color.set("hue",E)}function d(){if(!l.value)return 0;const v=n.vnode.el;if(e.vertical)return 0;const h=e.color.get("hue");return v?Math.round(h*(v.offsetWidth-l.value.offsetWidth/2)/360):0}function f(){if(!l.value)return 0;const v=n.vnode.el;if(!e.vertical)return 0;const h=e.color.get("hue");return v?Math.round(h*(v.offsetHeight-l.value.offsetHeight/2)/360):0}function m(){s.value=d(),r.value=f()}return Xe(()=>{if(!a.value||!l.value)return;const v={drag:h=>{c(h)},end:h=>{c(h)}};Zo(a.value,v),Zo(l.value,v),m()}),{bar:a,thumb:l,thumbLeft:s,thumbTop:r,hueValue:i,handleClick:u,update:m,ns:t}}});function QC(e,t,n,l,a,s){return _(),V("div",{class:T([e.ns.b(),e.ns.is("vertical",e.vertical)])},[F("div",{ref:"bar",class:T(e.ns.e("bar")),onClick:e.handleClick},null,10,["onClick"]),F("div",{ref:"thumb",class:T(e.ns.e("thumb")),style:_e({left:e.thumbLeft+"px",top:e.thumbTop+"px"})},null,6)],2)}var ew=fe(JC,[["render",QC],["__file","hue-slider.vue"]]);const tw=de({modelValue:{type:Y(String),default:void 0},id:String,showAlpha:Boolean,colorFormat:String,disabled:Boolean,size:Jt,popperClass:{type:String,default:""},tabindex:{type:[String,Number],default:0},teleported:Wt.teleported,predefine:{type:Y(Array)},validateEvent:{type:Boolean,default:!0},...Zl,...cn(["ariaLabel"])}),nw={[De]:e=>Ve(e)||qt(e),[nt]:e=>Ve(e)||qt(e),activeChange:e=>Ve(e)||qt(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent},sf=Symbol("colorPickerContextKey");class Ua{constructor(t={}){this._hue=0,this._saturation=100,this._value=100,this._alpha=100,this._tiny=new vo,this._isValid=!1,this.enableAlpha=!1,this.format="",this.value="";for(const n in t)rn(t,n)&&(this[n]=t[n]);t.value?this.fromString(t.value):this.doOnChange()}set(t,n){if(arguments.length===1&&typeof t=="object"){for(const l in t)rn(t,l)&&this.set(l,t[l]);return}this[`_${t}`]=n,this._isValid=!0,this.doOnChange()}get(t){return["hue","saturation","value","alpha"].includes(t)?Math.round(this[`_${t}`]):this[`_${t}`]}toRgb(){return this._isValid?this._tiny.toRgb():{r:255,g:255,b:255,a:0}}fromString(t){const n=new vo(t);if(this._isValid=n.isValid,n.isValid){const{h:l,s:a,v:s,a:r}=n.toHsv();this._hue=l,this._saturation=a*100,this._value=s*100,this._alpha=r*100}else this._hue=0,this._saturation=100,this._value=100,this._alpha=100;this.doOnChange()}compare(t){const n=new vo({h:t._hue,s:t._saturation/100,v:t._value/100,a:t._alpha/100});return this._tiny.equals(n)}doOnChange(){const{_hue:t,_saturation:n,_value:l,_alpha:a,format:s,enableAlpha:r}=this;let i=s||(r?"rgb":"hex");s==="hex"&&r&&(i="hex8"),this._tiny=new vo({h:t,s:n/100,v:l/100,a:a/100}),this.value=this._isValid?this._tiny.toString(i):""}}const lw=x({props:{colors:{type:Array,required:!0},color:{type:Object,required:!0},enableAlpha:{type:Boolean,required:!0}},setup(e){const t=ue("color-predefine"),{currentColor:n}=we(sf),l=I(s(e.colors,e.color));ie(()=>n.value,r=>{const i=new Ua({value:r});l.value.forEach(u=>{u.selected=i.compare(u)})}),bn(()=>{l.value=s(e.colors,e.color)});function a(r){e.color.fromString(e.colors[r])}function s(r,i){return r.map(u=>{const c=new Ua({value:u});return c.selected=c.compare(i),c})}return{rgbaColors:l,handleSelect:a,ns:t}}});function ow(e,t,n,l,a,s){return _(),V("div",{class:T(e.ns.b())},[F("div",{class:T(e.ns.e("colors"))},[(_(!0),V(Oe,null,ut(e.rgbaColors,(r,i)=>(_(),V("div",{key:e.colors[i],class:T([e.ns.e("color-selector"),e.ns.is("alpha",r.get("alpha")<100),{selected:r.selected}]),onClick:u=>e.handleSelect(i)},[F("div",{style:_e({backgroundColor:r.value})},null,4)],10,["onClick"]))),128))],2)],2)}var aw=fe(lw,[["render",ow],["__file","predefine.vue"]]);const sw=x({name:"ElSlPanel",props:{color:{type:Object,required:!0}},setup(e){const t=ue("color-svpanel"),n=lt(),l=I(0),a=I(0),s=I("hsl(0, 100%, 50%)"),r=y(()=>{const c=e.color.get("hue"),d=e.color.get("value");return{hue:c,value:d}});function i(){const c=e.color.get("saturation"),d=e.color.get("value"),f=n.vnode.el,{clientWidth:m,clientHeight:v}=f;a.value=c*m/100,l.value=(100-d)*v/100,s.value=`hsl(${e.color.get("hue")}, 100%, 50%)`}function u(c){const f=n.vnode.el.getBoundingClientRect(),{clientX:m,clientY:v}=oi(c);let h=m-f.left,p=v-f.top;h=Math.max(0,h),h=Math.min(h,f.width),p=Math.max(0,p),p=Math.min(p,f.height),a.value=h,l.value=p,e.color.set({saturation:h/f.width*100,value:100-p/f.height*100})}return ie(()=>r.value,()=>{i()}),Xe(()=>{Zo(n.vnode.el,{drag:c=>{u(c)},end:c=>{u(c)}}),i()}),{cursorTop:l,cursorLeft:a,background:s,colorValue:r,handleDrag:u,update:i,ns:t}}});function rw(e,t,n,l,a,s){return _(),V("div",{class:T(e.ns.b()),style:_e({backgroundColor:e.background})},[F("div",{class:T(e.ns.e("white"))},null,2),F("div",{class:T(e.ns.e("black"))},null,2),F("div",{class:T(e.ns.e("cursor")),style:_e({top:e.cursorTop+"px",left:e.cursorLeft+"px"})},[F("div")],6)],6)}var iw=fe(sw,[["render",rw],["__file","sv-panel.vue"]]);const uw=x({name:"ElColorPicker"}),cw=x({...uw,props:tw,emits:nw,setup(e,{expose:t,emit:n}){const l=e,{t:a}=pt(),s=ue("color"),{formItem:r}=dn(),i=Gt(),u=fn(),{valueOnClear:c,isEmptyValue:d}=da(l,null),{inputId:f,isLabeledByFormItem:m}=Kn(l,{formItemContext:r}),v=I(),h=I(),p=I(),g=I(),b=I(),E=I(),{isFocused:C,handleFocus:w,handleBlur:k}=Ll(b,{disabled:u,beforeBlur(te){var ce;return(ce=g.value)==null?void 0:ce.isFocusInsideContent(te)},afterBlur(){z(!1),j()}});let S=!0;const $=kt(new Ua({enableAlpha:l.showAlpha,format:l.colorFormat||"",value:l.modelValue})),M=I(!1),R=I(!1),N=I(""),O=y(()=>!l.modelValue&&!R.value?"transparent":L($,l.showAlpha)),P=y(()=>!l.modelValue&&!R.value?"":$.value),W=y(()=>m.value?void 0:l.ariaLabel||a("el.colorpicker.defaultLabel")),K=y(()=>m.value?r==null?void 0:r.labelId:void 0),D=y(()=>[s.b("picker"),s.is("disabled",u.value),s.bm("picker",i.value),s.is("focused",C.value)]);function L(te,ce){const{r:Ie,g:Ae,b:xe,a:Ye}=te.toRgb();return ce?`rgba(${Ie}, ${Ae}, ${xe}, ${Ye})`:`rgb(${Ie}, ${Ae}, ${xe})`}function z(te){M.value=te}const B=Ln(z,100,{leading:!0});function A(){u.value||z(!0)}function ne(){B(!1),j()}function j(){Ee(()=>{l.modelValue?$.fromString(l.modelValue):($.value="",!P.value&&N.value&&(N.value=""),Ee(()=>{R.value=!1}))})}function Q(){u.value||(M.value&&j(),B(!M.value))}function Z(){$.fromString(N.value),$.value!==N.value&&(N.value=$.value)}function ee(){const te=d($.value)?c.value:$.value;n(De,te),n(nt,te),l.validateEvent&&(r==null||r.validate("change").catch(ce=>void 0)),B(!1),Ee(()=>{const ce=new Ua({enableAlpha:l.showAlpha,format:l.colorFormat||"",value:l.modelValue});$.compare(ce)||j()})}function ae(){B(!1),n(De,c.value),n(nt,c.value),l.modelValue!==c.value&&l.validateEvent&&(r==null||r.validate("change").catch(te=>void 0)),j()}function re(){M.value&&(ne(),C.value&&ge())}function le(te){te.preventDefault(),te.stopPropagation(),z(!1),j()}function se(te){switch(te.code){case Ce.enter:case Ce.numpadEnter:case Ce.space:te.preventDefault(),te.stopPropagation(),A(),E.value.focus();break;case Ce.esc:le(te);break}}function ge(){b.value.focus()}function Be(){b.value.blur()}return Xe(()=>{l.modelValue&&(N.value=P.value)}),ie(()=>l.modelValue,te=>{te?te&&te!==$.value&&(S=!1,$.fromString(te)):R.value=!1}),ie(()=>[l.colorFormat,l.showAlpha],()=>{$.enableAlpha=l.showAlpha,$.format=l.colorFormat||$.format,$.doOnChange(),n(De,$.value)}),ie(()=>P.value,te=>{N.value=te,S&&n("activeChange",te),S=!0}),ie(()=>$.value,()=>{!l.modelValue&&!R.value&&(R.value=!0)}),ie(()=>M.value,()=>{Ee(()=>{var te,ce,Ie;(te=v.value)==null||te.update(),(ce=h.value)==null||ce.update(),(Ie=p.value)==null||Ie.update()})}),rt(sf,{currentColor:P}),t({color:$,show:A,hide:ne,focus:ge,blur:Be}),(te,ce)=>(_(),oe(o(un),{ref_key:"popper",ref:g,visible:M.value,"show-arrow":!1,"fallback-placements":["bottom","top","right","left"],offset:0,"gpu-acceleration":!1,"popper-class":[o(s).be("picker","panel"),o(s).b("dropdown"),te.popperClass],"stop-popper-mouse-event":!1,effect:"light",trigger:"click",teleported:te.teleported,transition:`${o(s).namespace.value}-zoom-in-top`,persistent:"",onHide:Ie=>z(!1)},{content:U(()=>[We((_(),V("div",{onKeydown:Tt(le,["esc"])},[F("div",{class:T(o(s).be("dropdown","main-wrapper"))},[H(ew,{ref_key:"hue",ref:v,class:"hue-slider",color:o($),vertical:""},null,8,["color"]),H(iw,{ref_key:"sv",ref:h,color:o($)},null,8,["color"])],2),te.showAlpha?(_(),oe(ZC,{key:0,ref_key:"alpha",ref:p,color:o($)},null,8,["color"])):J("v-if",!0),te.predefine?(_(),oe(aw,{key:1,ref:"predefine","enable-alpha":te.showAlpha,color:o($),colors:te.predefine},null,8,["enable-alpha","color","colors"])):J("v-if",!0),F("div",{class:T(o(s).be("dropdown","btns"))},[F("span",{class:T(o(s).be("dropdown","value"))},[H(o(hn),{ref_key:"inputRef",ref:E,modelValue:N.value,"onUpdate:modelValue":Ie=>N.value=Ie,"validate-event":!1,size:"small",onChange:Z},null,8,["modelValue","onUpdate:modelValue"])],2),H(o(on),{class:T(o(s).be("dropdown","link-btn")),text:"",size:"small",onClick:ae},{default:U(()=>[st(pe(o(a)("el.colorpicker.clear")),1)]),_:1},8,["class"]),H(o(on),{plain:"",size:"small",class:T(o(s).be("dropdown","btn")),onClick:ee},{default:U(()=>[st(pe(o(a)("el.colorpicker.confirm")),1)]),_:1},8,["class"])],2)],40,["onKeydown"])),[[o(vl),re,b.value]])]),default:U(()=>[F("div",et({id:o(f),ref_key:"triggerRef",ref:b},te.$attrs,{class:o(D),role:"button","aria-label":o(W),"aria-labelledby":o(K),"aria-description":o(a)("el.colorpicker.description",{color:te.modelValue||""}),"aria-disabled":o(u),tabindex:o(u)?void 0:te.tabindex,onKeydown:se,onFocus:o(w),onBlur:o(k)}),[F("div",{class:T(o(s).be("picker","trigger")),onClick:Q},[F("span",{class:T([o(s).be("picker","color"),o(s).is("alpha",te.showAlpha)])},[F("span",{class:T(o(s).be("picker","color-inner")),style:_e({backgroundColor:o(O)})},[We(H(o(Se),{class:T([o(s).be("picker","icon"),o(s).is("icon-arrow-down")])},{default:U(()=>[H(o(nl))]),_:1},8,["class"]),[[mt,te.modelValue||R.value]]),We(H(o(Se),{class:T([o(s).be("picker","empty"),o(s).is("icon-close")])},{default:U(()=>[H(o(zn))]),_:1},8,["class"]),[[mt,!te.modelValue&&!R.value]])],6)],2)],2)],16,["id","aria-label","aria-labelledby","aria-description","aria-disabled","tabindex","onFocus","onBlur"])]),_:1},8,["visible","popper-class","teleported","transition","onHide"]))}});var dw=fe(cw,[["__file","color-picker.vue"]]);const fw=He(dw),vw=de({a11y:{type:Boolean,default:!0},locale:{type:Y(Object)},size:Jt,button:{type:Y(Object)},link:{type:Y(Object)},experimentalFeatures:{type:Y(Object)},keyboardNavigation:{type:Boolean,default:!0},message:{type:Y(Object)},zIndex:Number,namespace:{type:String,default:"el"},...Zl}),Rn={},pw=x({name:"ElConfigProvider",props:vw,setup(e,{slots:t}){const n=Wr(e);return ie(()=>e.message,l=>{var a,s;Object.assign(Rn,(s=(a=n==null?void 0:n.value)==null?void 0:a.message)!=null?s:{},l??{})},{immediate:!0,deep:!0}),()=>G(t,"default",{config:n==null?void 0:n.value})}}),hw=He(pw),mw=x({name:"ElContainer"}),gw=x({...mw,props:{direction:{type:String}},setup(e){const t=e,n=Xt(),l=ue("container"),a=y(()=>t.direction==="vertical"?!0:t.direction==="horizontal"?!1:n&&n.default?n.default().some(r=>{const i=r.type.name;return i==="ElHeader"||i==="ElFooter"}):!1);return(s,r)=>(_(),V("section",{class:T([o(l).b(),o(l).is("vertical",o(a))])},[G(s.$slots,"default")],2))}});var bw=fe(gw,[["__file","container.vue"]]);const yw=x({name:"ElAside"}),Cw=x({...yw,props:{width:{type:String,default:null}},setup(e){const t=e,n=ue("aside"),l=y(()=>t.width?n.cssVarBlock({width:t.width}):{});return(a,s)=>(_(),V("aside",{class:T(o(n).b()),style:_e(o(l))},[G(a.$slots,"default")],6))}});var rf=fe(Cw,[["__file","aside.vue"]]);const ww=x({name:"ElFooter"}),kw=x({...ww,props:{height:{type:String,default:null}},setup(e){const t=e,n=ue("footer"),l=y(()=>t.height?n.cssVarBlock({height:t.height}):{});return(a,s)=>(_(),V("footer",{class:T(o(n).b()),style:_e(o(l))},[G(a.$slots,"default")],6))}});var uf=fe(kw,[["__file","footer.vue"]]);const Sw=x({name:"ElHeader"}),Ew=x({...Sw,props:{height:{type:String,default:null}},setup(e){const t=e,n=ue("header"),l=y(()=>t.height?n.cssVarBlock({height:t.height}):{});return(a,s)=>(_(),V("header",{class:T(o(n).b()),style:_e(o(l))},[G(a.$slots,"default")],6))}});var cf=fe(Ew,[["__file","header.vue"]]);const _w=x({name:"ElMain"}),Tw=x({..._w,setup(e){const t=ue("main");return(n,l)=>(_(),V("main",{class:T(o(t).b())},[G(n.$slots,"default")],2))}});var df=fe(Tw,[["__file","main.vue"]]);const $w=He(bw,{Aside:rf,Footer:uf,Header:cf,Main:df}),Nw=At(rf),Iw=At(uf),Mw=At(cf),Rw=At(df),xu=["hours","minutes","seconds"],gl="EP_PICKER_BASE",ai="ElPopperOptions",Ya="HH:mm:ss",uo="YYYY-MM-DD",Pw={date:uo,dates:uo,week:"gggg[w]ww",year:"YYYY",years:"YYYY",month:"YYYY-MM",months:"YYYY-MM",datetime:`${uo} ${Ya}`,monthrange:"YYYY-MM",yearrange:"YYYY",daterange:uo,datetimerange:`${uo} ${Ya}`},ff=de({disabledHours:{type:Y(Function)},disabledMinutes:{type:Y(Function)},disabledSeconds:{type:Y(Function)}}),vf=de({visible:Boolean,actualVisible:{type:Boolean,default:void 0},format:{type:String,default:""}}),si=de({id:{type:Y([Array,String])},name:{type:Y([Array,String])},popperClass:{type:String,default:""},format:String,valueFormat:String,dateFormat:String,timeFormat:String,type:{type:String,default:""},clearable:{type:Boolean,default:!0},clearIcon:{type:Y([String,Object]),default:ml},editable:{type:Boolean,default:!0},prefixIcon:{type:Y([String,Object]),default:""},size:Jt,readonly:Boolean,disabled:Boolean,placeholder:{type:String,default:""},popperOptions:{type:Y(Object),default:()=>({})},modelValue:{type:Y([Date,Array,String,Number]),default:""},rangeSeparator:{type:String,default:"-"},startPlaceholder:String,endPlaceholder:String,defaultValue:{type:Y([Date,Array])},defaultTime:{type:Y([Date,Array])},isRange:Boolean,...ff,disabledDate:{type:Function},cellClassName:{type:Function},shortcuts:{type:Array,default:()=>[]},arrowControl:Boolean,tabindex:{type:Y([String,Number]),default:0},validateEvent:{type:Boolean,default:!0},unlinkPanels:Boolean,placement:{type:Y(String),values:Xl,default:"bottom"},fallbackPlacements:{type:Y(Array),default:["bottom","top","right","left"]},...Zl,...cn(["ariaLabel"]),showNow:{type:Boolean,default:!0},showWeekNumber:Boolean}),Ow=de({id:{type:Y(Array)},name:{type:Y(Array)},modelValue:{type:Y([Array,String])},startPlaceholder:String,endPlaceholder:String,disabled:Boolean}),Lw=x({name:"PickerRangeTrigger",inheritAttrs:!1}),Bw=x({...Lw,props:Ow,emits:["mouseenter","mouseleave","click","touchstart","focus","blur","startInput","endInput","startChange","endChange"],setup(e,{expose:t,emit:n}){const l=e,a=bs(),s=ue("date"),r=ue("range"),i=I(),u=I(),{wrapperRef:c,isFocused:d}=Ll(i,{disabled:y(()=>l.disabled)}),f=k=>{n("click",k)},m=k=>{n("mouseenter",k)},v=k=>{n("mouseleave",k)},h=k=>{n("mouseenter",k)},p=k=>{n("startInput",k)},g=k=>{n("endInput",k)},b=k=>{n("startChange",k)},E=k=>{n("endChange",k)};return t({focus:()=>{var k;(k=i.value)==null||k.focus()},blur:()=>{var k,S;(k=i.value)==null||k.blur(),(S=u.value)==null||S.blur()}}),(k,S)=>(_(),V("div",{ref_key:"wrapperRef",ref:c,class:T([o(s).is("active",o(d)),k.$attrs.class]),style:_e(k.$attrs.style),onClick:f,onMouseenter:m,onMouseleave:v,onTouchstartPassive:h},[G(k.$slots,"prefix"),F("input",et(o(a),{id:k.id&&k.id[0],ref_key:"inputRef",ref:i,name:k.name&&k.name[0],placeholder:k.startPlaceholder,value:k.modelValue&&k.modelValue[0],class:o(r).b("input"),disabled:k.disabled,onInput:p,onChange:b}),null,16,["id","name","placeholder","value","disabled"]),G(k.$slots,"range-separator"),F("input",et(o(a),{id:k.id&&k.id[1],ref_key:"endInputRef",ref:u,name:k.name&&k.name[1],placeholder:k.endPlaceholder,value:k.modelValue&&k.modelValue[1],class:o(r).b("input"),disabled:k.disabled,onInput:g,onChange:E}),null,16,["id","name","placeholder","value","disabled"]),G(k.$slots,"suffix")],38))}});var Vw=fe(Bw,[["__file","picker-range-trigger.vue"]]);const Dw=x({name:"Picker"}),Aw=x({...Dw,props:si,emits:[De,nt,"focus","blur","clear","calendar-change","panel-change","visible-change","keydown"],setup(e,{expose:t,emit:n}){const l=e,a=pl(),{lang:s}=pt(),r=ue("date"),i=ue("input"),u=ue("range"),{form:c,formItem:d}=dn(),f=we(ai,{}),{valueOnClear:m}=da(l,null),v=I(),h=I(),p=I(!1),g=I(!1),b=I(null);let E=!1;const C=y(()=>l.disabled||!!(c!=null&&c.disabled)),{isFocused:w,handleFocus:k,handleBlur:S}=Ll(h,{disabled:C,beforeFocus(){return l.readonly},afterFocus(){p.value=!0},beforeBlur(q){var be;return!E&&((be=v.value)==null?void 0:be.isFocusInsideContent(q))},afterBlur(){Ze(),p.value=!1,E=!1,l.validateEvent&&(d==null||d.validate("blur").catch(q=>void 0))}}),$=y(()=>[r.b("editor"),r.bm("editor",l.type),i.e("wrapper"),r.is("disabled",C.value),r.is("active",p.value),u.b("editor"),Ye?u.bm("editor",Ye.value):"",a.class]),M=y(()=>[i.e("icon"),u.e("close-icon"),se.value?"":u.e("close-icon--hidden")]);ie(p,q=>{q?Ee(()=>{q&&(b.value=l.modelValue)}):(Pe.value=null,Ee(()=>{R(l.modelValue)}))});const R=(q,be)=>{(be||!$u(q,b.value))&&(n(nt,q),be&&(b.value=q),l.validateEvent&&(d==null||d.validate("change").catch(qe=>void 0)))},N=q=>{if(!$u(l.modelValue,q)){let be;ke(q)?be=q.map(qe=>Iu(qe,l.valueFormat,s.value)):q&&(be=Iu(q,l.valueFormat,s.value)),n(De,q&&be,s.value)}},O=q=>{n("keydown",q)},P=y(()=>h.value?Array.from(h.value.$el.querySelectorAll("input")):[]),W=(q,be,qe)=>{const ft=P.value;ft.length&&(!qe||qe==="min"?(ft[0].setSelectionRange(q,be),ft[0].focus()):qe==="max"&&(ft[1].setSelectionRange(q,be),ft[1].focus()))},K=(q="",be=!1)=>{p.value=be;let qe;ke(q)?qe=q.map(ft=>ft.toDate()):qe=q&&q.toDate(),Pe.value=null,N(qe)},D=()=>{g.value=!0},L=()=>{n("visible-change",!0)},z=()=>{g.value=!1,p.value=!1,n("visible-change",!1)},B=()=>{p.value=!0},A=()=>{p.value=!1},ne=y(()=>{let q;if(Be.value?St.value.getDefaultValue&&(q=St.value.getDefaultValue()):ke(l.modelValue)?q=l.modelValue.map(be=>Nu(be,l.valueFormat,s.value)):q=Nu(l.modelValue,l.valueFormat,s.value),St.value.getRangeAvailableTime){const be=St.value.getRangeAvailableTime(q);tn(be,q)||(q=be,Be.value||N(Ta(q)))}return ke(q)&&q.some(be=>!be)&&(q=[]),q}),j=y(()=>{if(!St.value.panelReady)return"";const q=at(ne.value);return ke(Pe.value)?[Pe.value[0]||q&&q[0]||"",Pe.value[1]||q&&q[1]||""]:Pe.value!==null?Pe.value:!Z.value&&Be.value||!p.value&&Be.value?"":q?ee.value||ae.value||re.value?q.join(", "):q:""}),Q=y(()=>l.type.includes("time")),Z=y(()=>l.type.startsWith("time")),ee=y(()=>l.type==="dates"),ae=y(()=>l.type==="months"),re=y(()=>l.type==="years"),le=y(()=>l.prefixIcon||(Q.value?id:Wh)),se=I(!1),ge=q=>{l.readonly||C.value||(se.value&&(q.stopPropagation(),St.value.handleClear?St.value.handleClear():N(m.value),R(m.value,!0),se.value=!1,z()),n("clear"))},Be=y(()=>{const{modelValue:q}=l;return!q||ke(q)&&!q.filter(Boolean).length}),te=async q=>{var be;l.readonly||C.value||(((be=q.target)==null?void 0:be.tagName)!=="INPUT"||w.value)&&(p.value=!0)},ce=()=>{l.readonly||C.value||!Be.value&&l.clearable&&(se.value=!0)},Ie=()=>{se.value=!1},Ae=q=>{var be;l.readonly||C.value||(((be=q.touches[0].target)==null?void 0:be.tagName)!=="INPUT"||w.value)&&(p.value=!0)},xe=y(()=>l.type.includes("range")),Ye=Gt(),$e=y(()=>{var q,be;return(be=(q=o(v))==null?void 0:q.popperRef)==null?void 0:be.contentRef}),Me=zr(h,q=>{const be=o($e),qe=ua(h);be&&(q.target===be||q.composedPath().includes(be))||q.target===qe||qe&&q.composedPath().includes(qe)||(p.value=!1)});Nt(()=>{Me==null||Me()});const Pe=I(null),Ze=()=>{if(Pe.value){const q=ot(j.value);q&&ct(q)&&(N(Ta(q)),Pe.value=null)}Pe.value===""&&(N(m.value),R(m.value,!0),Pe.value=null)},ot=q=>q?St.value.parseUserInput(q):null,at=q=>q?St.value.formatToString(q):null,ct=q=>St.value.isValidValue(q),ye=async q=>{if(l.readonly||C.value)return;const{code:be}=q;if(O(q),be===Ce.esc){p.value===!0&&(p.value=!1,q.preventDefault(),q.stopPropagation());return}if(be===Ce.down&&(St.value.handleFocusPicker&&(q.preventDefault(),q.stopPropagation()),p.value===!1&&(p.value=!0,await Ee()),St.value.handleFocusPicker)){St.value.handleFocusPicker();return}if(be===Ce.tab){E=!0;return}if(be===Ce.enter||be===Ce.numpadEnter){(Pe.value===null||Pe.value===""||ct(ot(j.value)))&&(Ze(),p.value=!1),q.stopPropagation();return}if(Pe.value){q.stopPropagation();return}St.value.handleKeydownInput&&St.value.handleKeydownInput(q)},Ue=q=>{Pe.value=q,p.value||(p.value=!0)},It=q=>{const be=q.target;Pe.value?Pe.value=[be.value,Pe.value[1]]:Pe.value=[be.value,null]},Ot=q=>{const be=q.target;Pe.value?Pe.value=[Pe.value[0],be.value]:Pe.value=[null,be.value]},Rt=()=>{var q;const be=Pe.value,qe=ot(be&&be[0]),ft=o(ne);if(qe&&qe.isValid()){Pe.value=[at(qe),((q=j.value)==null?void 0:q[1])||null];const Pt=[qe,ft&&(ft[1]||null)];ct(Pt)&&(N(Ta(Pt)),Pe.value=null)}},Mt=()=>{var q;const be=o(Pe),qe=ot(be&&be[1]),ft=o(ne);if(qe&&qe.isValid()){Pe.value=[((q=o(j))==null?void 0:q[0])||null,at(qe)];const Pt=[ft&&ft[0],qe];ct(Pt)&&(N(Ta(Pt)),Pe.value=null)}},St=I({}),je=q=>{St.value[q[0]]=q[1],St.value.panelReady=!0},tt=q=>{n("calendar-change",q)},it=(q,be,qe)=>{n("panel-change",q,be,qe)},X=()=>{var q;(q=h.value)==null||q.focus()},ve=()=>{var q;(q=h.value)==null||q.blur()};return rt(gl,{props:l}),t({focus:X,blur:ve,handleOpen:B,handleClose:A,onPick:K}),(q,be)=>(_(),oe(o(un),et({ref_key:"refPopper",ref:v,visible:p.value,effect:"light",pure:"",trigger:"click"},q.$attrs,{role:"dialog",teleported:"",transition:`${o(r).namespace.value}-zoom-in-top`,"popper-class":[`${o(r).namespace.value}-picker__popper`,q.popperClass],"popper-options":o(f),"fallback-placements":q.fallbackPlacements,"gpu-acceleration":!1,placement:q.placement,"stop-popper-mouse-event":!1,"hide-after":0,persistent:"",onBeforeShow:D,onShow:L,onHide:z}),{default:U(()=>[o(xe)?(_(),oe(Vw,{key:1,id:q.id,ref_key:"inputRef",ref:h,"model-value":o(j),name:q.name,disabled:o(C),readonly:!q.editable||q.readonly,"start-placeholder":q.startPlaceholder,"end-placeholder":q.endPlaceholder,class:T(o($)),style:_e(q.$attrs.style),"aria-label":q.ariaLabel,tabindex:q.tabindex,autocomplete:"off",role:"combobox",onClick:te,onFocus:o(k),onBlur:o(S),onStartInput:It,onStartChange:Rt,onEndInput:Ot,onEndChange:Mt,onMousedown:te,onMouseenter:ce,onMouseleave:Ie,onTouchstartPassive:Ae,onKeydown:ye},{prefix:U(()=>[o(le)?(_(),oe(o(Se),{key:0,class:T([o(i).e("icon"),o(u).e("icon")])},{default:U(()=>[(_(),oe(Ge(o(le))))]),_:1},8,["class"])):J("v-if",!0)]),"range-separator":U(()=>[G(q.$slots,"range-separator",{},()=>[F("span",{class:T(o(u).b("separator"))},pe(q.rangeSeparator),3)])]),suffix:U(()=>[q.clearIcon?(_(),oe(o(Se),{key:0,class:T(o(M)),onMousedown:Le(o(Bt),["prevent"]),onClick:ge},{default:U(()=>[(_(),oe(Ge(q.clearIcon)))]),_:1},8,["class","onMousedown"])):J("v-if",!0)]),_:3},8,["id","model-value","name","disabled","readonly","start-placeholder","end-placeholder","class","style","aria-label","tabindex","onFocus","onBlur"])):(_(),oe(o(hn),{key:0,id:q.id,ref_key:"inputRef",ref:h,"container-role":"combobox","model-value":o(j),name:q.name,size:o(Ye),disabled:o(C),placeholder:q.placeholder,class:T([o(r).b("editor"),o(r).bm("editor",q.type),q.$attrs.class]),style:_e(q.$attrs.style),readonly:!q.editable||q.readonly||o(ee)||o(ae)||o(re)||q.type==="week","aria-label":q.ariaLabel,tabindex:q.tabindex,"validate-event":!1,onInput:Ue,onFocus:o(k),onBlur:o(S),onKeydown:ye,onChange:Ze,onMousedown:te,onMouseenter:ce,onMouseleave:Ie,onTouchstartPassive:Ae,onClick:Le(()=>{},["stop"])},{prefix:U(()=>[o(le)?(_(),oe(o(Se),{key:0,class:T(o(i).e("icon")),onMousedown:Le(te,["prevent"]),onTouchstartPassive:Ae},{default:U(()=>[(_(),oe(Ge(o(le))))]),_:1},8,["class","onMousedown"])):J("v-if",!0)]),suffix:U(()=>[se.value&&q.clearIcon?(_(),oe(o(Se),{key:0,class:T(`${o(i).e("icon")} clear-icon`),onMousedown:Le(o(Bt),["prevent"]),onClick:ge},{default:U(()=>[(_(),oe(Ge(q.clearIcon)))]),_:1},8,["class","onMousedown"])):J("v-if",!0)]),_:1},8,["id","model-value","name","size","disabled","placeholder","class","style","readonly","aria-label","tabindex","onFocus","onBlur","onClick"]))]),content:U(()=>[G(q.$slots,"default",{visible:p.value,actualVisible:g.value,parsedValue:o(ne),format:q.format,dateFormat:q.dateFormat,timeFormat:q.timeFormat,unlinkPanels:q.unlinkPanels,type:q.type,defaultValue:q.defaultValue,showNow:q.showNow,showWeekNumber:q.showWeekNumber,onPick:K,onSelectRange:W,onSetPickerOption:je,onCalendarChange:tt,onPanelChange:it,onMousedown:Le(()=>{},["stop"])})]),_:3},16,["visible","transition","popper-class","popper-options","fallback-placements","placement"]))}});var pf=fe(Aw,[["__file","picker.vue"]]);const Fw=de({...vf,datetimeRole:String,parsedValue:{type:Y(Object)}}),hf=({getAvailableHours:e,getAvailableMinutes:t,getAvailableSeconds:n})=>{const l=(r,i,u,c)=>{const d={hour:e,minute:t,second:n};let f=r;return["hour","minute","second"].forEach(m=>{if(d[m]){let v;const h=d[m];switch(m){case"minute":{v=h(f.hour(),i,c);break}case"second":{v=h(f.hour(),f.minute(),i,c);break}default:{v=h(i,c);break}}if(v!=null&&v.length&&!v.includes(f[m]())){const p=u?0:v.length-1;f=f[m](v[p])}}}),f},a={};return{timePickerOptions:a,getAvailableTime:l,onSetOption:([r,i])=>{a[r]=i}}},Ws=e=>{const t=(l,a)=>l||a,n=l=>l!==!0;return e.map(t).filter(n)},mf=(e,t,n)=>({getHoursList:(r,i)=>zs(24,e&&(()=>e==null?void 0:e(r,i))),getMinutesList:(r,i,u)=>zs(60,t&&(()=>t==null?void 0:t(r,i,u))),getSecondsList:(r,i,u,c)=>zs(60,n&&(()=>n==null?void 0:n(r,i,u,c)))}),gf=(e,t,n)=>{const{getHoursList:l,getMinutesList:a,getSecondsList:s}=mf(e,t,n);return{getAvailableHours:(c,d)=>Ws(l(c,d)),getAvailableMinutes:(c,d,f)=>Ws(a(c,d,f)),getAvailableSeconds:(c,d,f,m)=>Ws(s(c,d,f,m))}},bf=e=>{const t=I(e.parsedValue);return ie(()=>e.visible,n=>{n||(t.value=e.parsedValue)}),t},xw=de({role:{type:String,required:!0},spinnerDate:{type:Y(Object),required:!0},showSeconds:{type:Boolean,default:!0},arrowControl:Boolean,amPmMode:{type:Y(String),default:""},...ff}),zw=100,Hw=600,qa={beforeMount(e,t){const n=t.value,{interval:l=zw,delay:a=Hw}=Qe(n)?{}:n;let s,r;const i=()=>Qe(n)?n():n.handler(),u=()=>{r&&(clearTimeout(r),r=void 0),s&&(clearInterval(s),s=void 0)};e.addEventListener("mousedown",c=>{c.button===0&&(u(),i(),document.addEventListener("mouseup",()=>u(),{once:!0}),r=setTimeout(()=>{s=setInterval(()=>{i()},l)},a))})}},Kw=x({__name:"basic-time-spinner",props:xw,emits:[nt,"select-range","set-option"],setup(e,{emit:t}){const n=e,l=we(gl),{isRange:a,format:s}=l.props,r=ue("time"),{getHoursList:i,getMinutesList:u,getSecondsList:c}=mf(n.disabledHours,n.disabledMinutes,n.disabledSeconds);let d=!1;const f=I(),m=I(),v=I(),h=I(),p={hours:m,minutes:v,seconds:h},g=y(()=>n.showSeconds?xu:xu.slice(0,2)),b=y(()=>{const{spinnerDate:Q}=n,Z=Q.hour(),ee=Q.minute(),ae=Q.second();return{hours:Z,minutes:ee,seconds:ae}}),E=y(()=>{const{hours:Q,minutes:Z}=o(b),{role:ee,spinnerDate:ae}=n,re=a?void 0:ae;return{hours:i(ee,re),minutes:u(Q,ee,re),seconds:c(Q,Z,ee,re)}}),C=y(()=>{const{hours:Q,minutes:Z,seconds:ee}=o(b);return{hours:xs(Q,23),minutes:xs(Z,59),seconds:xs(ee,59)}}),w=Ln(Q=>{d=!1,$(Q)},200),k=Q=>{if(!!!n.amPmMode)return"";const ee=n.amPmMode==="A";let ae=Q<12?" am":" pm";return ee&&(ae=ae.toUpperCase()),ae},S=Q=>{let Z=[0,0];if(!s||s===Ya)switch(Q){case"hours":Z=[0,2];break;case"minutes":Z=[3,5];break;case"seconds":Z=[6,8];break}const[ee,ae]=Z;t("select-range",ee,ae),f.value=Q},$=Q=>{N(Q,o(b)[Q])},M=()=>{$("hours"),$("minutes"),$("seconds")},R=Q=>Q.querySelector(`.${r.namespace.value}-scrollbar__wrap`),N=(Q,Z)=>{if(n.arrowControl)return;const ee=o(p[Q]);ee&&ee.$el&&(R(ee.$el).scrollTop=Math.max(0,Z*O(Q)))},O=Q=>{const Z=o(p[Q]),ee=Z==null?void 0:Z.$el.querySelector("li");return ee&&Number.parseFloat(rl(ee,"height"))||0},P=()=>{K(1)},W=()=>{K(-1)},K=Q=>{f.value||S("hours");const Z=f.value,ee=o(b)[Z],ae=f.value==="hours"?24:60,re=D(Z,ee,Q,ae);L(Z,re),N(Z,re),Ee(()=>S(Z))},D=(Q,Z,ee,ae)=>{let re=(Z+ee+ae)%ae;const le=o(E)[Q];for(;le[re]&&re!==Z;)re=(re+ee+ae)%ae;return re},L=(Q,Z)=>{if(o(E)[Q][Z])return;const{hours:re,minutes:le,seconds:se}=o(b);let ge;switch(Q){case"hours":ge=n.spinnerDate.hour(Z).minute(le).second(se);break;case"minutes":ge=n.spinnerDate.hour(re).minute(Z).second(se);break;case"seconds":ge=n.spinnerDate.hour(re).minute(le).second(Z);break}t(nt,ge)},z=(Q,{value:Z,disabled:ee})=>{ee||(L(Q,Z),S(Q),N(Q,Z))},B=Q=>{const Z=o(p[Q]);if(!Z)return;d=!0,w(Q);const ee=Math.min(Math.round((R(Z.$el).scrollTop-(A(Q)*.5-10)/O(Q)+3)/O(Q)),Q==="hours"?23:59);L(Q,ee)},A=Q=>o(p[Q]).$el.offsetHeight,ne=()=>{const Q=Z=>{const ee=o(p[Z]);ee&&ee.$el&&(R(ee.$el).onscroll=()=>{B(Z)})};Q("hours"),Q("minutes"),Q("seconds")};Xe(()=>{Ee(()=>{!n.arrowControl&&ne(),M(),n.role==="start"&&S("hours")})});const j=(Q,Z)=>{p[Z].value=Q??void 0};return t("set-option",[`${n.role}_scrollDown`,K]),t("set-option",[`${n.role}_emitSelectRange`,S]),ie(()=>n.spinnerDate,()=>{d||M()}),(Q,Z)=>(_(),V("div",{class:T([o(r).b("spinner"),{"has-seconds":Q.showSeconds}])},[Q.arrowControl?J("v-if",!0):(_(!0),V(Oe,{key:0},ut(o(g),ee=>(_(),oe(o(jn),{key:ee,ref_for:!0,ref:ae=>j(ae,ee),class:T(o(r).be("spinner","wrapper")),"wrap-style":"max-height: inherit;","view-class":o(r).be("spinner","list"),noresize:"",tag:"ul",onMouseenter:ae=>S(ee),onMousemove:ae=>$(ee)},{default:U(()=>[(_(!0),V(Oe,null,ut(o(E)[ee],(ae,re)=>(_(),V("li",{key:re,class:T([o(r).be("spinner","item"),o(r).is("active",re===o(b)[ee]),o(r).is("disabled",ae)]),onClick:le=>z(ee,{value:re,disabled:ae})},[ee==="hours"?(_(),V(Oe,{key:0},[st(pe(("0"+(Q.amPmMode?re%12||12:re)).slice(-2))+pe(k(re)),1)],64)):(_(),V(Oe,{key:1},[st(pe(("0"+re).slice(-2)),1)],64))],10,["onClick"]))),128))]),_:2},1032,["class","view-class","onMouseenter","onMousemove"]))),128)),Q.arrowControl?(_(!0),V(Oe,{key:1},ut(o(g),ee=>(_(),V("div",{key:ee,class:T([o(r).be("spinner","wrapper"),o(r).is("arrow")]),onMouseenter:ae=>S(ee)},[We((_(),oe(o(Se),{class:T(["arrow-up",o(r).be("spinner","arrow")])},{default:U(()=>[H(o(hs))]),_:1},8,["class"])),[[o(qa),W]]),We((_(),oe(o(Se),{class:T(["arrow-down",o(r).be("spinner","arrow")])},{default:U(()=>[H(o(nl))]),_:1},8,["class"])),[[o(qa),P]]),F("ul",{class:T(o(r).be("spinner","list"))},[(_(!0),V(Oe,null,ut(o(C)[ee],(ae,re)=>(_(),V("li",{key:re,class:T([o(r).be("spinner","item"),o(r).is("active",ae===o(b)[ee]),o(r).is("disabled",o(E)[ee][ae])])},[o(Te)(ae)?(_(),V(Oe,{key:0},[ee==="hours"?(_(),V(Oe,{key:0},[st(pe(("0"+(Q.amPmMode?ae%12||12:ae)).slice(-2))+pe(k(ae)),1)],64)):(_(),V(Oe,{key:1},[st(pe(("0"+ae).slice(-2)),1)],64))],64)):J("v-if",!0)],2))),128))],2)],42,["onMouseenter"]))),128)):J("v-if",!0)],2))}});var fr=fe(Kw,[["__file","basic-time-spinner.vue"]]);const Ww=x({__name:"panel-time-pick",props:Fw,emits:["pick","select-range","set-picker-option"],setup(e,{emit:t}){const n=e,l=we(gl),{arrowControl:a,disabledHours:s,disabledMinutes:r,disabledSeconds:i,defaultValue:u}=l.props,{getAvailableHours:c,getAvailableMinutes:d,getAvailableSeconds:f}=gf(s,r,i),m=ue("time"),{t:v,lang:h}=pt(),p=I([0,2]),g=bf(n),b=y(()=>vt(n.actualVisible)?`${m.namespace.value}-zoom-in-top`:""),E=y(()=>n.format.includes("ss")),C=y(()=>n.format.includes("A")?"A":n.format.includes("a")?"a":""),w=B=>{const A=Ke(B).locale(h.value),ne=K(A);return A.isSame(ne)},k=()=>{t("pick",g.value,!1)},S=(B=!1,A=!1)=>{A||t("pick",n.parsedValue,B)},$=B=>{if(!n.visible)return;const A=K(B).millisecond(0);t("pick",A,!0)},M=(B,A)=>{t("select-range",B,A),p.value=[B,A]},R=B=>{const A=[0,3].concat(E.value?[6]:[]),ne=["hours","minutes"].concat(E.value?["seconds"]:[]),Q=(A.indexOf(p.value[0])+B+A.length)%A.length;O.start_emitSelectRange(ne[Q])},N=B=>{const A=B.code,{left:ne,right:j,up:Q,down:Z}=Ce;if([ne,j].includes(A)){R(A===ne?-1:1),B.preventDefault();return}if([Q,Z].includes(A)){const ee=A===Q?-1:1;O.start_scrollDown(ee),B.preventDefault();return}},{timePickerOptions:O,onSetOption:P,getAvailableTime:W}=hf({getAvailableHours:c,getAvailableMinutes:d,getAvailableSeconds:f}),K=B=>W(B,n.datetimeRole||"",!0),D=B=>B?Ke(B,n.format).locale(h.value):null,L=B=>B?B.format(n.format):null,z=()=>Ke(u).locale(h.value);return t("set-picker-option",["isValidValue",w]),t("set-picker-option",["formatToString",L]),t("set-picker-option",["parseUserInput",D]),t("set-picker-option",["handleKeydownInput",N]),t("set-picker-option",["getRangeAvailableTime",K]),t("set-picker-option",["getDefaultValue",z]),(B,A)=>(_(),oe(an,{name:o(b)},{default:U(()=>[B.actualVisible||B.visible?(_(),V("div",{key:0,class:T(o(m).b("panel"))},[F("div",{class:T([o(m).be("panel","content"),{"has-seconds":o(E)}])},[H(fr,{ref:"spinner",role:B.datetimeRole||"start","arrow-control":o(a),"show-seconds":o(E),"am-pm-mode":o(C),"spinner-date":B.parsedValue,"disabled-hours":o(s),"disabled-minutes":o(r),"disabled-seconds":o(i),onChange:$,onSetOption:o(P),onSelectRange:M},null,8,["role","arrow-control","show-seconds","am-pm-mode","spinner-date","disabled-hours","disabled-minutes","disabled-seconds","onSetOption"])],2),F("div",{class:T(o(m).be("panel","footer"))},[F("button",{type:"button",class:T([o(m).be("panel","btn"),"cancel"]),onClick:k},pe(o(v)("el.datepicker.cancel")),3),F("button",{type:"button",class:T([o(m).be("panel","btn"),"confirm"]),onClick:ne=>S()},pe(o(v)("el.datepicker.confirm")),11,["onClick"])],2)],2)):J("v-if",!0)]),_:1},8,["name"]))}});var Ga=fe(Ww,[["__file","panel-time-pick.vue"]]);const jw=de({...vf,parsedValue:{type:Y(Array)}}),Uw=x({__name:"panel-time-range",props:jw,emits:["pick","select-range","set-picker-option"],setup(e,{emit:t}){const n=e,l=(te,ce)=>{const Ie=[];for(let Ae=te;Ae<=ce;Ae++)Ie.push(Ae);return Ie},{t:a,lang:s}=pt(),r=ue("time"),i=ue("picker"),u=we(gl),{arrowControl:c,disabledHours:d,disabledMinutes:f,disabledSeconds:m,defaultValue:v}=u.props,h=y(()=>[r.be("range-picker","body"),r.be("panel","content"),r.is("arrow",c),w.value?"has-seconds":""]),p=y(()=>[r.be("range-picker","body"),r.be("panel","content"),r.is("arrow",c),w.value?"has-seconds":""]),g=y(()=>n.parsedValue[0]),b=y(()=>n.parsedValue[1]),E=bf(n),C=()=>{t("pick",E.value,!1)},w=y(()=>n.format.includes("ss")),k=y(()=>n.format.includes("A")?"A":n.format.includes("a")?"a":""),S=(te=!1)=>{t("pick",[g.value,b.value],te)},$=te=>{N(te.millisecond(0),b.value)},M=te=>{N(g.value,te.millisecond(0))},R=te=>{const ce=te.map(Ae=>Ke(Ae).locale(s.value)),Ie=j(ce);return ce[0].isSame(Ie[0])&&ce[1].isSame(Ie[1])},N=(te,ce)=>{n.visible&&t("pick",[te,ce],!0)},O=y(()=>g.value>b.value),P=I([0,2]),W=(te,ce)=>{t("select-range",te,ce,"min"),P.value=[te,ce]},K=y(()=>w.value?11:8),D=(te,ce)=>{t("select-range",te,ce,"max");const Ie=o(K);P.value=[te+Ie,ce+Ie]},L=te=>{const ce=w.value?[0,3,6,11,14,17]:[0,3,8,11],Ie=["hours","minutes"].concat(w.value?["seconds"]:[]),xe=(ce.indexOf(P.value[0])+te+ce.length)%ce.length,Ye=ce.length/2;xe{const ce=te.code,{left:Ie,right:Ae,up:xe,down:Ye}=Ce;if([Ie,Ae].includes(ce)){L(ce===Ie?-1:1),te.preventDefault();return}if([xe,Ye].includes(ce)){const $e=ce===xe?-1:1,Me=P.value[0]{const Ie=d?d(te):[],Ae=te==="start",Ye=(ce||(Ae?b.value:g.value)).hour(),$e=Ae?l(Ye+1,23):l(0,Ye-1);return Ds(Ie,$e)},A=(te,ce,Ie)=>{const Ae=f?f(te,ce):[],xe=ce==="start",Ye=Ie||(xe?b.value:g.value),$e=Ye.hour();if(te!==$e)return Ae;const Me=Ye.minute(),Pe=xe?l(Me+1,59):l(0,Me-1);return Ds(Ae,Pe)},ne=(te,ce,Ie,Ae)=>{const xe=m?m(te,ce,Ie):[],Ye=Ie==="start",$e=Ae||(Ye?b.value:g.value),Me=$e.hour(),Pe=$e.minute();if(te!==Me||ce!==Pe)return xe;const Ze=$e.second(),ot=Ye?l(Ze+1,59):l(0,Ze-1);return Ds(xe,ot)},j=([te,ce])=>[re(te,"start",!0,ce),re(ce,"end",!1,te)],{getAvailableHours:Q,getAvailableMinutes:Z,getAvailableSeconds:ee}=gf(B,A,ne),{timePickerOptions:ae,getAvailableTime:re,onSetOption:le}=hf({getAvailableHours:Q,getAvailableMinutes:Z,getAvailableSeconds:ee}),se=te=>te?ke(te)?te.map(ce=>Ke(ce,n.format).locale(s.value)):Ke(te,n.format).locale(s.value):null,ge=te=>te?ke(te)?te.map(ce=>ce.format(n.format)):te.format(n.format):null,Be=()=>{if(ke(v))return v.map(ce=>Ke(ce).locale(s.value));const te=Ke(v).locale(s.value);return[te,te.add(60,"m")]};return t("set-picker-option",["formatToString",ge]),t("set-picker-option",["parseUserInput",se]),t("set-picker-option",["isValidValue",R]),t("set-picker-option",["handleKeydownInput",z]),t("set-picker-option",["getDefaultValue",Be]),t("set-picker-option",["getRangeAvailableTime",j]),(te,ce)=>te.actualVisible?(_(),V("div",{key:0,class:T([o(r).b("range-picker"),o(i).b("panel")])},[F("div",{class:T(o(r).be("range-picker","content"))},[F("div",{class:T(o(r).be("range-picker","cell"))},[F("div",{class:T(o(r).be("range-picker","header"))},pe(o(a)("el.datepicker.startTime")),3),F("div",{class:T(o(h))},[H(fr,{ref:"minSpinner",role:"start","show-seconds":o(w),"am-pm-mode":o(k),"arrow-control":o(c),"spinner-date":o(g),"disabled-hours":B,"disabled-minutes":A,"disabled-seconds":ne,onChange:$,onSetOption:o(le),onSelectRange:W},null,8,["show-seconds","am-pm-mode","arrow-control","spinner-date","onSetOption"])],2)],2),F("div",{class:T(o(r).be("range-picker","cell"))},[F("div",{class:T(o(r).be("range-picker","header"))},pe(o(a)("el.datepicker.endTime")),3),F("div",{class:T(o(p))},[H(fr,{ref:"maxSpinner",role:"end","show-seconds":o(w),"am-pm-mode":o(k),"arrow-control":o(c),"spinner-date":o(b),"disabled-hours":B,"disabled-minutes":A,"disabled-seconds":ne,onChange:M,onSetOption:o(le),onSelectRange:D},null,8,["show-seconds","am-pm-mode","arrow-control","spinner-date","onSetOption"])],2)],2)],2),F("div",{class:T(o(r).be("panel","footer"))},[F("button",{type:"button",class:T([o(r).be("panel","btn"),"cancel"]),onClick:Ie=>C()},pe(o(a)("el.datepicker.cancel")),11,["onClick"]),F("button",{type:"button",class:T([o(r).be("panel","btn"),"confirm"]),disabled:o(O),onClick:Ie=>S()},pe(o(a)("el.datepicker.confirm")),11,["disabled","onClick"])],2)],2)):J("v-if",!0)}});var Yw=fe(Uw,[["__file","panel-time-range.vue"]]);Ke.extend(Hr);var qw=x({name:"ElTimePicker",install:null,props:{...si,isRange:Boolean},emits:[De],setup(e,t){const n=I(),[l,a]=e.isRange?["timerange",Yw]:["time",Ga],s=r=>t.emit(De,r);return rt(ai,e.popperOptions),t.expose({focus:()=>{var r;(r=n.value)==null||r.focus()},blur:()=>{var r;(r=n.value)==null||r.blur()},handleOpen:()=>{var r;(r=n.value)==null||r.handleOpen()},handleClose:()=>{var r;(r=n.value)==null||r.handleClose()}}),()=>{var r;const i=(r=e.format)!=null?r:Ya;return H(pf,et(e,{ref:n,type:l,format:i,"onUpdate:modelValue":s}),{default:u=>H(a,u,null)})}}});const Gw=He(qw),ri=Symbol(),ma="ElIsDefaultFormat",Xw=de({...si,type:{type:Y(String),default:"date"}}),Zw=["date","dates","year","years","month","months","week","range"],ii=de({disabledDate:{type:Y(Function)},date:{type:Y(Object),required:!0},minDate:{type:Y(Object)},maxDate:{type:Y(Object)},parsedValue:{type:Y([Object,Array])},rangeState:{type:Y(Object),default:()=>({endDate:null,selecting:!1})}}),yf=de({type:{type:Y(String),required:!0,values:N0},dateFormat:String,timeFormat:String,showNow:{type:Boolean,default:!0},showWeekNumber:Boolean}),ui=de({unlinkPanels:Boolean,visible:Boolean,parsedValue:{type:Y(Array)}}),ci=e=>({type:String,values:Zw,default:e}),Jw=de({...yf,parsedValue:{type:Y([Object,Array])},visible:{type:Boolean},format:{type:String,default:""}}),Jo=e=>{if(!ke(e))return!1;const[t,n]=e;return Ke.isDayjs(t)&&Ke.isDayjs(n)&&Ke(t).isValid()&&Ke(n).isValid()&&t.isSameOrBefore(n)},Es=(e,{lang:t,step:n=1,unit:l,unlinkPanels:a})=>{let s;if(ke(e)){let[r,i]=e.map(u=>Ke(u).locale(t));return a||(i=r.add(n,l)),[r,i]}else e?s=Ke(e):s=Ke();return s=s.locale(t),[s,s.add(n,l)]},Qw=(e,t,{columnIndexOffset:n,startDate:l,nextEndDate:a,now:s,unit:r,relativeDateGetter:i,setCellMetadata:u,setRowMetadata:c})=>{for(let d=0;d{const a=Ke().locale(l).startOf("month").month(n).year(t).hour(e.hour()).minute(e.minute()).second(e.second()),s=a.daysInMonth();return Nl(s).map(r=>a.add(r,"day").toDate())},Eo=(e,t,n,l,a)=>{const s=Ke().year(t).month(n).startOf("month").hour(e.hour()).minute(e.minute()).second(e.second()),r=Xa(e,t,n,l).find(i=>!(a!=null&&a(i)));return r?Ke(r).locale(l):s.locale(l)},Za=(e,t,n)=>{const l=e.year();if(!(n!=null&&n(e.toDate())))return e.locale(t);const a=e.month();if(!Xa(e,l,a,t).every(n))return Eo(e,l,a,t,n);for(let s=0;s<12;s++)if(!Xa(e,l,s,t).every(n))return Eo(e,l,s,t,n);return e},_o=(e,t,n,l)=>{if(ke(e))return e.map(a=>_o(a,t,n,l));if(Ve(e)){const a=l.value?Ke(e):Ke(e,t);if(!a.isValid())return a}return Ke(e,t).locale(n)},e1=de({...ii,cellClassName:{type:Y(Function)},showWeekNumber:Boolean,selectionMode:ci("date")}),t1=["changerange","pick","select"],vr=(e="")=>["normal","today"].includes(e),n1=(e,t)=>{const{lang:n}=pt(),l=I(),a=I(),s=I(),r=I(),i=I([[],[],[],[],[],[]]);let u=!1;const c=e.date.$locale().weekStart||7,d=e.date.locale("en").localeData().weekdaysShort().map(A=>A.toLowerCase()),f=y(()=>c>3?7-c:-c),m=y(()=>{const A=e.date.startOf("month");return A.subtract(A.day()||7,"day")}),v=y(()=>d.concat(d).slice(c,c+7)),h=y(()=>Gp(o(w)).some(A=>A.isCurrent)),p=y(()=>{const A=e.date.startOf("month"),ne=A.day()||7,j=A.daysInMonth(),Q=A.subtract(1,"month").daysInMonth();return{startOfMonthDay:ne,dateCountOfMonth:j,dateCountOfLastMonth:Q}}),g=y(()=>e.selectionMode==="dates"?En(e.parsedValue):[]),b=(A,{count:ne,rowIndex:j,columnIndex:Q})=>{const{startOfMonthDay:Z,dateCountOfMonth:ee,dateCountOfLastMonth:ae}=o(p),re=o(f);if(j>=0&&j<=1){const le=Z+re<0?7+Z+re:Z+re;if(Q+j*7>=le)return A.text=ne,!0;A.text=ae-(le-Q%7)+1+j*7,A.type="prev-month"}else return ne<=ee?A.text=ne:(A.text=ne-ee,A.type="next-month"),!0;return!1},E=(A,{columnIndex:ne,rowIndex:j},Q)=>{const{disabledDate:Z,cellClassName:ee}=e,ae=o(g),re=b(A,{count:Q,rowIndex:j,columnIndex:ne}),le=A.dayjs.toDate();return A.selected=ae.find(se=>se.isSame(A.dayjs,"day")),A.isSelected=!!A.selected,A.isCurrent=S(A),A.disabled=Z==null?void 0:Z(le),A.customClass=ee==null?void 0:ee(le),re},C=A=>{if(e.selectionMode==="week"){const[ne,j]=e.showWeekNumber?[1,7]:[0,6],Q=B(A[ne+1]);A[ne].inRange=Q,A[ne].start=Q,A[j].inRange=Q,A[j].end=Q}},w=y(()=>{const{minDate:A,maxDate:ne,rangeState:j,showWeekNumber:Q}=e,Z=o(f),ee=o(i),ae="day";let re=1;if(Qw({row:6,column:7},ee,{startDate:A,columnIndexOffset:Q?1:0,nextEndDate:j.endDate||ne||j.selecting&&A||null,now:Ke().locale(o(n)).startOf(ae),unit:ae,relativeDateGetter:le=>o(m).add(le-Z,ae),setCellMetadata:(...le)=>{E(...le,re)&&(re+=1)},setRowMetadata:C}),Q)for(let le=0;le<6;le++)ee[le][1].dayjs&&(ee[le][0]={type:"week",text:ee[le][1].dayjs.week()});return ee});ie(()=>e.date,async()=>{var A;(A=o(l))!=null&&A.contains(document.activeElement)&&(await Ee(),await k())});const k=async()=>{var A;return(A=o(a))==null?void 0:A.focus()},S=A=>e.selectionMode==="date"&&vr(A.type)&&$(A,e.parsedValue),$=(A,ne)=>ne?Ke(ne).locale(o(n)).isSame(e.date.date(Number(A.text)),"day"):!1,M=(A,ne)=>{const j=A*7+(ne-(e.showWeekNumber?1:0))-o(f);return o(m).add(j,"day")},R=A=>{var ne;if(!e.rangeState.selecting)return;let j=A.target;if(j.tagName==="SPAN"&&(j=(ne=j.parentNode)==null?void 0:ne.parentNode),j.tagName==="DIV"&&(j=j.parentNode),j.tagName!=="TD")return;const Q=j.parentNode.rowIndex-1,Z=j.cellIndex;o(w)[Q][Z].disabled||(Q!==o(s)||Z!==o(r))&&(s.value=Q,r.value=Z,t("changerange",{selecting:!0,endDate:M(Q,Z)}))},N=A=>!o(h)&&(A==null?void 0:A.text)===1&&A.type==="normal"||A.isCurrent,O=A=>{u||o(h)||e.selectionMode!=="date"||z(A,!0)},P=A=>{A.target.closest("td")&&(u=!0)},W=A=>{A.target.closest("td")&&(u=!1)},K=A=>{!e.rangeState.selecting||!e.minDate?(t("pick",{minDate:A,maxDate:null}),t("select",!0)):(A>=e.minDate?t("pick",{minDate:e.minDate,maxDate:A}):t("pick",{minDate:A,maxDate:e.minDate}),t("select",!1))},D=A=>{const ne=A.week(),j=`${A.year()}w${ne}`;t("pick",{year:A.year(),week:ne,value:j,date:A.startOf("week")})},L=(A,ne)=>{const j=ne?En(e.parsedValue).filter(Q=>(Q==null?void 0:Q.valueOf())!==A.valueOf()):En(e.parsedValue).concat([A]);t("pick",j)},z=(A,ne=!1)=>{const j=A.target.closest("td");if(!j)return;const Q=j.parentNode.rowIndex-1,Z=j.cellIndex,ee=o(w)[Q][Z];if(ee.disabled||ee.type==="week")return;const ae=M(Q,Z);switch(e.selectionMode){case"range":{K(ae);break}case"date":{t("pick",ae,ne);break}case"week":{D(ae);break}case"dates":{L(ae,!!ee.selected);break}}},B=A=>{if(e.selectionMode!=="week")return!1;let ne=e.date.startOf("day");if(A.type==="prev-month"&&(ne=ne.subtract(1,"month")),A.type==="next-month"&&(ne=ne.add(1,"month")),ne=ne.date(Number.parseInt(A.text,10)),e.parsedValue&&!ke(e.parsedValue)){const j=(e.parsedValue.day()-c+7)%7-1;return e.parsedValue.subtract(j,"day").isSame(ne,"day")}return!1};return{WEEKS:v,rows:w,tbodyRef:l,currentCellRef:a,focus:k,isCurrent:S,isWeekActive:B,isSelectedCell:N,handlePickDate:z,handleMouseUp:W,handleMouseDown:P,handleMouseMove:R,handleFocus:O}},l1=(e,{isCurrent:t,isWeekActive:n})=>{const l=ue("date-table"),{t:a}=pt(),s=y(()=>[l.b(),{"is-week-mode":e.selectionMode==="week"}]),r=y(()=>a("el.datepicker.dateTablePrompt")),i=c=>{const d=[];return vr(c.type)&&!c.disabled?(d.push("available"),c.type==="today"&&d.push("today")):d.push(c.type),t(c)&&d.push("current"),c.inRange&&(vr(c.type)||e.selectionMode==="week")&&(d.push("in-range"),c.start&&d.push("start-date"),c.end&&d.push("end-date")),c.disabled&&d.push("disabled"),c.selected&&d.push("selected"),c.customClass&&d.push(c.customClass),d.join(" ")},u=c=>[l.e("row"),{current:n(c)}];return{tableKls:s,tableLabel:r,weekHeaderClass:l.e("week-header"),getCellClasses:i,getRowKls:u,t:a}},o1=de({cell:{type:Y(Object)}});var di=x({name:"ElDatePickerCell",props:o1,setup(e){const t=ue("date-table-cell"),{slots:n}=we(ri);return()=>{const{cell:l}=e;return G(n,"default",{...l},()=>{var a;return[H("div",{class:t.b()},[H("span",{class:t.e("text")},[(a=l==null?void 0:l.renderText)!=null?a:l==null?void 0:l.text])])]})}}});const a1=x({__name:"basic-date-table",props:e1,emits:t1,setup(e,{expose:t,emit:n}){const l=e,{WEEKS:a,rows:s,tbodyRef:r,currentCellRef:i,focus:u,isCurrent:c,isWeekActive:d,isSelectedCell:f,handlePickDate:m,handleMouseUp:v,handleMouseDown:h,handleMouseMove:p,handleFocus:g}=n1(l,n),{tableLabel:b,tableKls:E,getCellClasses:C,getRowKls:w,weekHeaderClass:k,t:S}=l1(l,{isCurrent:c,isWeekActive:d});let $=!1;return Nt(()=>{$=!0}),t({focus:u}),(M,R)=>(_(),V("table",{"aria-label":o(b),class:T(o(E)),cellspacing:"0",cellpadding:"0",role:"grid",onClick:o(m),onMousemove:o(p),onMousedown:Le(o(h),["prevent"]),onMouseup:o(v)},[F("tbody",{ref_key:"tbodyRef",ref:r},[F("tr",null,[M.showWeekNumber?(_(),V("th",{key:0,scope:"col",class:T(o(k))},null,2)):J("v-if",!0),(_(!0),V(Oe,null,ut(o(a),(N,O)=>(_(),V("th",{key:O,"aria-label":o(S)("el.datepicker.weeksFull."+N),scope:"col"},pe(o(S)("el.datepicker.weeks."+N)),9,["aria-label"]))),128))]),(_(!0),V(Oe,null,ut(o(s),(N,O)=>(_(),V("tr",{key:O,class:T(o(w)(N[1]))},[(_(!0),V(Oe,null,ut(N,(P,W)=>(_(),V("td",{key:`${O}.${W}`,ref_for:!0,ref:K=>!o($)&&o(f)(P)&&(i.value=K),class:T(o(C)(P)),"aria-current":P.isCurrent?"date":void 0,"aria-selected":P.isCurrent,tabindex:o(f)(P)?0:-1,onFocus:o(g)},[H(o(di),{cell:P},null,8,["cell"])],42,["aria-current","aria-selected","tabindex","onFocus"]))),128))],2))),128))],512)],42,["aria-label","onClick","onMousemove","onMousedown","onMouseup"]))}});var pr=fe(a1,[["__file","basic-date-table.vue"]]);const s1=de({...ii,selectionMode:ci("month")}),r1=x({__name:"basic-month-table",props:s1,emits:["changerange","pick","select"],setup(e,{expose:t,emit:n}){const l=e,a=ue("month-table"),{t:s,lang:r}=pt(),i=I(),u=I(),c=I(l.date.locale("en").localeData().monthsShort().map(C=>C.toLowerCase())),d=I([[],[],[]]),f=I(),m=I(),v=y(()=>{var C,w;const k=d.value,S=Ke().locale(r.value).startOf("month");for(let $=0;$<3;$++){const M=k[$];for(let R=0;R<4;R++){const N=M[R]||(M[R]={row:$,column:R,type:"normal",inRange:!1,start:!1,end:!1,text:-1,disabled:!1});N.type="normal";const O=$*4+R,P=l.date.startOf("year").month(O),W=l.rangeState.endDate||l.maxDate||l.rangeState.selecting&&l.minDate||null;N.inRange=!!(l.minDate&&P.isSameOrAfter(l.minDate,"month")&&W&&P.isSameOrBefore(W,"month"))||!!(l.minDate&&P.isSameOrBefore(l.minDate,"month")&&W&&P.isSameOrAfter(W,"month")),(C=l.minDate)!=null&&C.isSameOrAfter(W)?(N.start=!!(W&&P.isSame(W,"month")),N.end=l.minDate&&P.isSame(l.minDate,"month")):(N.start=!!(l.minDate&&P.isSame(l.minDate,"month")),N.end=!!(W&&P.isSame(W,"month"))),S.isSame(P)&&(N.type="today"),N.text=O,N.disabled=((w=l.disabledDate)==null?void 0:w.call(l,P.toDate()))||!1}}return k}),h=()=>{var C;(C=u.value)==null||C.focus()},p=C=>{const w={},k=l.date.year(),S=new Date,$=C.text;return w.disabled=l.disabledDate?Xa(l.date,k,$,r.value).every(l.disabledDate):!1,w.current=En(l.parsedValue).findIndex(M=>Ke.isDayjs(M)&&M.year()===k&&M.month()===$)>=0,w.today=S.getFullYear()===k&&S.getMonth()===$,C.inRange&&(w["in-range"]=!0,C.start&&(w["start-date"]=!0),C.end&&(w["end-date"]=!0)),w},g=C=>{const w=l.date.year(),k=C.text;return En(l.date).findIndex(S=>S.year()===w&&S.month()===k)>=0},b=C=>{var w;if(!l.rangeState.selecting)return;let k=C.target;if(k.tagName==="SPAN"&&(k=(w=k.parentNode)==null?void 0:w.parentNode),k.tagName==="DIV"&&(k=k.parentNode),k.tagName!=="TD")return;const S=k.parentNode.rowIndex,$=k.cellIndex;v.value[S][$].disabled||(S!==f.value||$!==m.value)&&(f.value=S,m.value=$,n("changerange",{selecting:!0,endDate:l.date.startOf("year").month(S*4+$)}))},E=C=>{var w;const k=(w=C.target)==null?void 0:w.closest("td");if((k==null?void 0:k.tagName)!=="TD"||Nn(k,"disabled"))return;const S=k.cellIndex,M=k.parentNode.rowIndex*4+S,R=l.date.startOf("year").month(M);if(l.selectionMode==="months"){if(C.type==="keydown"){n("pick",En(l.parsedValue),!1);return}const N=Eo(l.date,l.date.year(),M,r.value,l.disabledDate),O=Nn(k,"current")?En(l.parsedValue).filter(P=>(P==null?void 0:P.year())!==N.year()||(P==null?void 0:P.month())!==N.month()):En(l.parsedValue).concat([Ke(N)]);n("pick",O)}else l.selectionMode==="range"?l.rangeState.selecting?(l.minDate&&R>=l.minDate?n("pick",{minDate:l.minDate,maxDate:R}):n("pick",{minDate:R,maxDate:l.minDate}),n("select",!1)):(n("pick",{minDate:R,maxDate:null}),n("select",!0)):n("pick",M)};return ie(()=>l.date,async()=>{var C,w;(C=i.value)!=null&&C.contains(document.activeElement)&&(await Ee(),(w=u.value)==null||w.focus())}),t({focus:h}),(C,w)=>(_(),V("table",{role:"grid","aria-label":o(s)("el.datepicker.monthTablePrompt"),class:T(o(a).b()),onClick:E,onMousemove:b},[F("tbody",{ref_key:"tbodyRef",ref:i},[(_(!0),V(Oe,null,ut(o(v),(k,S)=>(_(),V("tr",{key:S},[(_(!0),V(Oe,null,ut(k,($,M)=>(_(),V("td",{key:M,ref_for:!0,ref:R=>g($)&&(u.value=R),class:T(p($)),"aria-selected":`${g($)}`,"aria-label":o(s)(`el.datepicker.month${+$.text+1}`),tabindex:g($)?0:-1,onKeydown:[Tt(Le(E,["prevent","stop"]),["space"]),Tt(Le(E,["prevent","stop"]),["enter"])]},[H(o(di),{cell:{...$,renderText:o(s)("el.datepicker.months."+c.value[$.text])}},null,8,["cell"])],42,["aria-selected","aria-label","tabindex","onKeydown"]))),128))]))),128))],512)],42,["aria-label"]))}});var Qo=fe(r1,[["__file","basic-month-table.vue"]]);const i1=de({...ii,selectionMode:ci("year")}),u1=x({__name:"basic-year-table",props:i1,emits:["changerange","pick","select"],setup(e,{expose:t,emit:n}){const l=e,a=(w,k)=>{const S=Ke(String(w)).locale(k).startOf("year"),M=S.endOf("year").dayOfYear();return Nl(M).map(R=>S.add(R,"day").toDate())},s=ue("year-table"),{t:r,lang:i}=pt(),u=I(),c=I(),d=y(()=>Math.floor(l.date.year()/10)*10),f=I([[],[],[]]),m=I(),v=I(),h=y(()=>{var w;const k=f.value,S=Ke().locale(i.value).startOf("year");for(let $=0;$<3;$++){const M=k[$];for(let R=0;R<4&&!($*4+R>=10);R++){let N=M[R];N||(N={row:$,column:R,type:"normal",inRange:!1,start:!1,end:!1,text:-1,disabled:!1}),N.type="normal";const O=$*4+R+d.value,P=Ke().year(O),W=l.rangeState.endDate||l.maxDate||l.rangeState.selecting&&l.minDate||null;N.inRange=!!(l.minDate&&P.isSameOrAfter(l.minDate,"year")&&W&&P.isSameOrBefore(W,"year"))||!!(l.minDate&&P.isSameOrBefore(l.minDate,"year")&&W&&P.isSameOrAfter(W,"year")),(w=l.minDate)!=null&&w.isSameOrAfter(W)?(N.start=!!(W&&P.isSame(W,"year")),N.end=!!(l.minDate&&P.isSame(l.minDate,"year"))):(N.start=!!(l.minDate&&P.isSame(l.minDate,"year")),N.end=!!(W&&P.isSame(W,"year"))),S.isSame(P)&&(N.type="today"),N.text=O;const D=P.toDate();N.disabled=l.disabledDate&&l.disabledDate(D)||!1,M[R]=N}}return k}),p=()=>{var w;(w=c.value)==null||w.focus()},g=w=>{const k={},S=Ke().locale(i.value),$=w.text;return k.disabled=l.disabledDate?a($,i.value).every(l.disabledDate):!1,k.today=S.year()===$,k.current=En(l.parsedValue).findIndex(M=>M.year()===$)>=0,w.inRange&&(k["in-range"]=!0,w.start&&(k["start-date"]=!0),w.end&&(k["end-date"]=!0)),k},b=w=>{const k=w.text;return En(l.date).findIndex(S=>S.year()===k)>=0},E=w=>{var k;const S=(k=w.target)==null?void 0:k.closest("td");if(!S||!S.textContent||Nn(S,"disabled"))return;const $=S.cellIndex,R=S.parentNode.rowIndex*4+$+d.value,N=Ke().year(R);if(l.selectionMode==="range")l.rangeState.selecting?(l.minDate&&N>=l.minDate?n("pick",{minDate:l.minDate,maxDate:N}):n("pick",{minDate:N,maxDate:l.minDate}),n("select",!1)):(n("pick",{minDate:N,maxDate:null}),n("select",!0));else if(l.selectionMode==="years"){if(w.type==="keydown"){n("pick",En(l.parsedValue),!1);return}const O=Za(N.startOf("year"),i.value,l.disabledDate),P=Nn(S,"current")?En(l.parsedValue).filter(W=>(W==null?void 0:W.year())!==R):En(l.parsedValue).concat([O]);n("pick",P)}else n("pick",R)},C=w=>{var k;if(!l.rangeState.selecting)return;const S=(k=w.target)==null?void 0:k.closest("td");if(!S)return;const $=S.parentNode.rowIndex,M=S.cellIndex;h.value[$][M].disabled||($!==m.value||M!==v.value)&&(m.value=$,v.value=M,n("changerange",{selecting:!0,endDate:Ke().year(d.value).add($*4+M,"year")}))};return ie(()=>l.date,async()=>{var w,k;(w=u.value)!=null&&w.contains(document.activeElement)&&(await Ee(),(k=c.value)==null||k.focus())}),t({focus:p}),(w,k)=>(_(),V("table",{role:"grid","aria-label":o(r)("el.datepicker.yearTablePrompt"),class:T(o(s).b()),onClick:E,onMousemove:C},[F("tbody",{ref_key:"tbodyRef",ref:u},[(_(!0),V(Oe,null,ut(o(h),(S,$)=>(_(),V("tr",{key:$},[(_(!0),V(Oe,null,ut(S,(M,R)=>(_(),V("td",{key:`${$}_${R}`,ref_for:!0,ref:N=>b(M)&&(c.value=N),class:T(["available",g(M)]),"aria-selected":b(M),"aria-label":String(M.text),tabindex:b(M)?0:-1,onKeydown:[Tt(Le(E,["prevent","stop"]),["space"]),Tt(Le(E,["prevent","stop"]),["enter"])]},[H(o(di),{cell:M},null,8,["cell"])],42,["aria-selected","aria-label","tabindex","onKeydown"]))),128))]))),128))],512)],42,["aria-label"]))}});var ea=fe(u1,[["__file","basic-year-table.vue"]]);const c1=x({__name:"panel-date-pick",props:Jw,emits:["pick","set-picker-option","panel-change"],setup(e,{emit:t}){const n=e,l=(X,ve,q)=>!0,a=ue("picker-panel"),s=ue("date-picker"),r=pl(),i=Xt(),{t:u,lang:c}=pt(),d=we(gl),f=we(ma),m=we(Cs),{shortcuts:v,disabledDate:h,cellClassName:p,defaultTime:g}=d.props,b=wt(d.props,"defaultValue"),E=I(),C=I(Ke().locale(c.value)),w=I(!1);let k=!1;const S=y(()=>Ke(g).locale(c.value)),$=y(()=>C.value.month()),M=y(()=>C.value.year()),R=I([]),N=I(null),O=I(null),P=X=>R.value.length>0?l(X,R.value,n.format||"HH:mm:ss"):!0,W=X=>g&&!Ye.value&&!w.value&&!k?S.value.year(X.year()).month(X.month()).date(X.date()):se.value?X.millisecond(0):X.startOf("day"),K=(X,...ve)=>{if(!X)t("pick",X,...ve);else if(ke(X)){const q=X.map(W);t("pick",q,...ve)}else t("pick",W(X),...ve);N.value=null,O.value=null,w.value=!1,k=!1},D=async(X,ve)=>{if(j.value==="date"){X=X;let q=n.parsedValue?n.parsedValue.year(X.year()).month(X.month()).date(X.date()):X;P(q),C.value=q,K(q,se.value||ve),n.type==="datetime"&&(await Ee(),Mt())}else j.value==="week"?K(X.date):j.value==="dates"&&K(X,!0)},L=X=>{const ve=X?"add":"subtract";C.value=C.value[ve](1,"month"),it("month")},z=X=>{const ve=C.value,q=X?"add":"subtract";C.value=B.value==="year"?ve[q](10,"year"):ve[q](1,"year"),it("year")},B=I("date"),A=y(()=>{const X=u("el.datepicker.year");if(B.value==="year"){const ve=Math.floor(M.value/10)*10;return X?`${ve} ${X} - ${ve+9} ${X}`:`${ve} - ${ve+9}`}return`${M.value} ${X}`}),ne=X=>{const ve=Qe(X.value)?X.value():X.value;if(ve){k=!0,K(Ke(ve).locale(c.value));return}X.onClick&&X.onClick({attrs:r,slots:i,emit:t})},j=y(()=>{const{type:X}=n;return["week","month","months","year","years","dates"].includes(X)?X:"date"}),Q=y(()=>j.value==="dates"||j.value==="months"||j.value==="years"),Z=y(()=>j.value==="date"?B.value:j.value),ee=y(()=>!!v.length),ae=async(X,ve)=>{j.value==="month"?(C.value=Eo(C.value,C.value.year(),X,c.value,h),K(C.value,!1)):j.value==="months"?K(X,ve??!0):(C.value=Eo(C.value,C.value.year(),X,c.value,h),B.value="date",["month","year","date","week"].includes(j.value)&&(K(C.value,!0),await Ee(),Mt())),it("month")},re=async(X,ve)=>{if(j.value==="year"){const q=C.value.startOf("year").year(X);C.value=Za(q,c.value,h),K(C.value,!1)}else if(j.value==="years")K(X,ve??!0);else{const q=C.value.year(X);C.value=Za(q,c.value,h),B.value="month",["month","year","date","week"].includes(j.value)&&(K(C.value,!0),await Ee(),Mt())}it("year")},le=async X=>{B.value=X,await Ee(),Mt()},se=y(()=>n.type==="datetime"||n.type==="datetimerange"),ge=y(()=>{const X=se.value||j.value==="dates",ve=j.value==="years",q=j.value==="months",be=B.value==="date",qe=B.value==="year",ft=B.value==="month";return X&&be||ve&&qe||q&&ft}),Be=y(()=>h?n.parsedValue?ke(n.parsedValue)?h(n.parsedValue[0].toDate()):h(n.parsedValue.toDate()):!0:!1),te=()=>{if(Q.value)K(n.parsedValue);else{let X=n.parsedValue;if(!X){const ve=Ke(g).locale(c.value),q=Rt();X=ve.year(q.year()).month(q.month()).date(q.date())}C.value=X,K(X)}},ce=y(()=>h?h(Ke().locale(c.value).toDate()):!1),Ie=()=>{const ve=Ke().locale(c.value).toDate();w.value=!0,(!h||!h(ve))&&P(ve)&&(C.value=Ke().locale(c.value),K(C.value))},Ae=y(()=>n.timeFormat||Fd(n.format)),xe=y(()=>n.dateFormat||Ad(n.format)),Ye=y(()=>{if(O.value)return O.value;if(!(!n.parsedValue&&!b.value))return(n.parsedValue||C.value).format(Ae.value)}),$e=y(()=>{if(N.value)return N.value;if(!(!n.parsedValue&&!b.value))return(n.parsedValue||C.value).format(xe.value)}),Me=I(!1),Pe=()=>{Me.value=!0},Ze=()=>{Me.value=!1},ot=X=>({hour:X.hour(),minute:X.minute(),second:X.second(),year:X.year(),month:X.month(),date:X.date()}),at=(X,ve,q)=>{const{hour:be,minute:qe,second:ft}=ot(X),Pt=n.parsedValue?n.parsedValue.hour(be).minute(qe).second(ft):X;C.value=Pt,K(C.value,!0),q||(Me.value=ve)},ct=X=>{const ve=Ke(X,Ae.value).locale(c.value);if(ve.isValid()&&P(ve)){const{year:q,month:be,date:qe}=ot(C.value);C.value=ve.year(q).month(be).date(qe),O.value=null,Me.value=!1,K(C.value,!0)}},ye=X=>{const ve=_o(X,xe.value,c.value,f);if(ve.isValid()){if(h&&h(ve.toDate()))return;const{hour:q,minute:be,second:qe}=ot(C.value);C.value=ve.hour(q).minute(be).second(qe),N.value=null,K(C.value,!0)}},Ue=X=>Ke.isDayjs(X)&&X.isValid()&&(h?!h(X.toDate()):!0),It=X=>ke(X)?X.map(ve=>ve.format(n.format)):X.format(n.format),Ot=X=>_o(X,n.format,c.value,f),Rt=()=>{const X=Ke(b.value).locale(c.value);if(!b.value){const ve=S.value;return Ke().hour(ve.hour()).minute(ve.minute()).second(ve.second()).locale(c.value)}return X},Mt=()=>{var X;["week","month","year","date"].includes(j.value)&&((X=E.value)==null||X.focus())},St=()=>{Mt(),j.value==="week"&&tt(Ce.down)},je=X=>{const{code:ve}=X;[Ce.up,Ce.down,Ce.left,Ce.right,Ce.home,Ce.end,Ce.pageUp,Ce.pageDown].includes(ve)&&(tt(ve),X.stopPropagation(),X.preventDefault()),[Ce.enter,Ce.space,Ce.numpadEnter].includes(ve)&&N.value===null&&O.value===null&&(X.preventDefault(),K(C.value,!1))},tt=X=>{var ve;const{up:q,down:be,left:qe,right:ft,home:Pt,end:Kt,pageUp:Ut,pageDown:ll}=Ce,en={year:{[q]:-4,[be]:4,[qe]:-1,[ft]:1,offset:(Ne,gt)=>Ne.setFullYear(Ne.getFullYear()+gt)},month:{[q]:-4,[be]:4,[qe]:-1,[ft]:1,offset:(Ne,gt)=>Ne.setMonth(Ne.getMonth()+gt)},week:{[q]:-1,[be]:1,[qe]:-1,[ft]:1,offset:(Ne,gt)=>Ne.setDate(Ne.getDate()+gt*7)},date:{[q]:-7,[be]:7,[qe]:-1,[ft]:1,[Pt]:Ne=>-Ne.getDay(),[Kt]:Ne=>-Ne.getDay()+6,[Ut]:Ne=>-new Date(Ne.getFullYear(),Ne.getMonth(),0).getDate(),[ll]:Ne=>new Date(Ne.getFullYear(),Ne.getMonth()+1,0).getDate(),offset:(Ne,gt)=>Ne.setDate(Ne.getDate()+gt)}},Bn=C.value.toDate();for(;Math.abs(C.value.diff(Bn,"year",!0))<1;){const Ne=en[Z.value];if(!Ne)return;if(Ne.offset(Bn,Qe(Ne[X])?Ne[X](Bn):(ve=Ne[X])!=null?ve:0),h&&h(Bn))break;const gt=Ke(Bn).locale(c.value);C.value=gt,t("pick",gt,!0);break}},it=X=>{t("panel-change",C.value.toDate(),X,B.value)};return ie(()=>j.value,X=>{if(["month","year"].includes(X)){B.value=X;return}else if(X==="years"){B.value="year";return}else if(X==="months"){B.value="month";return}B.value="date"},{immediate:!0}),ie(()=>B.value,()=>{m==null||m.updatePopper()}),ie(()=>b.value,X=>{X&&(C.value=Rt())},{immediate:!0}),ie(()=>n.parsedValue,X=>{if(X){if(Q.value||ke(X))return;C.value=X}else C.value=Rt()},{immediate:!0}),t("set-picker-option",["isValidValue",Ue]),t("set-picker-option",["formatToString",It]),t("set-picker-option",["parseUserInput",Ot]),t("set-picker-option",["handleFocusPicker",St]),(X,ve)=>(_(),V("div",{class:T([o(a).b(),o(s).b(),{"has-sidebar":X.$slots.sidebar||o(ee),"has-time":o(se)}])},[F("div",{class:T(o(a).e("body-wrapper"))},[G(X.$slots,"sidebar",{class:T(o(a).e("sidebar"))}),o(ee)?(_(),V("div",{key:0,class:T(o(a).e("sidebar"))},[(_(!0),V(Oe,null,ut(o(v),(q,be)=>(_(),V("button",{key:be,type:"button",class:T(o(a).e("shortcut")),onClick:qe=>ne(q)},pe(q.text),11,["onClick"]))),128))],2)):J("v-if",!0),F("div",{class:T(o(a).e("body"))},[o(se)?(_(),V("div",{key:0,class:T(o(s).e("time-header"))},[F("span",{class:T(o(s).e("editor-wrap"))},[H(o(hn),{placeholder:o(u)("el.datepicker.selectDate"),"model-value":o($e),size:"small","validate-event":!1,onInput:q=>N.value=q,onChange:ye},null,8,["placeholder","model-value","onInput"])],2),We((_(),V("span",{class:T(o(s).e("editor-wrap"))},[H(o(hn),{placeholder:o(u)("el.datepicker.selectTime"),"model-value":o(Ye),size:"small","validate-event":!1,onFocus:Pe,onInput:q=>O.value=q,onChange:ct},null,8,["placeholder","model-value","onInput"]),H(o(Ga),{visible:Me.value,format:o(Ae),"parsed-value":C.value,onPick:at},null,8,["visible","format","parsed-value"])],2)),[[o(vl),Ze]])],2)):J("v-if",!0),We(F("div",{class:T([o(s).e("header"),(B.value==="year"||B.value==="month")&&o(s).e("header--bordered")])},[F("span",{class:T(o(s).e("prev-btn"))},[F("button",{type:"button","aria-label":o(u)("el.datepicker.prevYear"),class:T(["d-arrow-left",o(a).e("icon-btn")]),onClick:q=>z(!1)},[G(X.$slots,"prev-year",{},()=>[H(o(Se),null,{default:U(()=>[H(o(Rl))]),_:1})])],10,["aria-label","onClick"]),We(F("button",{type:"button","aria-label":o(u)("el.datepicker.prevMonth"),class:T([o(a).e("icon-btn"),"arrow-left"]),onClick:q=>L(!1)},[G(X.$slots,"prev-month",{},()=>[H(o(Se),null,{default:U(()=>[H(o(dl))]),_:1})])],10,["aria-label","onClick"]),[[mt,B.value==="date"]])],2),F("span",{role:"button",class:T(o(s).e("header-label")),"aria-live":"polite",tabindex:"0",onKeydown:Tt(q=>le("year"),["enter"]),onClick:q=>le("year")},pe(o(A)),43,["onKeydown","onClick"]),We(F("span",{role:"button","aria-live":"polite",tabindex:"0",class:T([o(s).e("header-label"),{active:B.value==="month"}]),onKeydown:Tt(q=>le("month"),["enter"]),onClick:q=>le("month")},pe(o(u)(`el.datepicker.month${o($)+1}`)),43,["onKeydown","onClick"]),[[mt,B.value==="date"]]),F("span",{class:T(o(s).e("next-btn"))},[We(F("button",{type:"button","aria-label":o(u)("el.datepicker.nextMonth"),class:T([o(a).e("icon-btn"),"arrow-right"]),onClick:q=>L(!0)},[G(X.$slots,"next-month",{},()=>[H(o(Se),null,{default:U(()=>[H(o(Cn))]),_:1})])],10,["aria-label","onClick"]),[[mt,B.value==="date"]]),F("button",{type:"button","aria-label":o(u)("el.datepicker.nextYear"),class:T([o(a).e("icon-btn"),"d-arrow-right"]),onClick:q=>z(!0)},[G(X.$slots,"next-year",{},()=>[H(o(Se),null,{default:U(()=>[H(o(Pl))]),_:1})])],10,["aria-label","onClick"])],2)],2),[[mt,B.value!=="time"]]),F("div",{class:T(o(a).e("content")),onKeydown:je},[B.value==="date"?(_(),oe(pr,{key:0,ref_key:"currentViewRef",ref:E,"selection-mode":o(j),date:C.value,"parsed-value":X.parsedValue,"disabled-date":o(h),"cell-class-name":o(p),"show-week-number":X.showWeekNumber,onPick:D},null,8,["selection-mode","date","parsed-value","disabled-date","cell-class-name","show-week-number"])):J("v-if",!0),B.value==="year"?(_(),oe(ea,{key:1,ref_key:"currentViewRef",ref:E,"selection-mode":o(j),date:C.value,"disabled-date":o(h),"parsed-value":X.parsedValue,onPick:re},null,8,["selection-mode","date","disabled-date","parsed-value"])):J("v-if",!0),B.value==="month"?(_(),oe(Qo,{key:2,ref_key:"currentViewRef",ref:E,"selection-mode":o(j),date:C.value,"parsed-value":X.parsedValue,"disabled-date":o(h),onPick:ae},null,8,["selection-mode","date","parsed-value","disabled-date"])):J("v-if",!0)],34)],2)],2),We(F("div",{class:T(o(a).e("footer"))},[We(H(o(on),{text:"",size:"small",class:T(o(a).e("link-btn")),disabled:o(ce),onClick:Ie},{default:U(()=>[st(pe(o(u)("el.datepicker.now")),1)]),_:1},8,["class","disabled"]),[[mt,!o(Q)&&X.showNow]]),H(o(on),{plain:"",size:"small",class:T(o(a).e("link-btn")),disabled:o(Be),onClick:te},{default:U(()=>[st(pe(o(u)("el.datepicker.confirm")),1)]),_:1},8,["class","disabled"])],2),[[mt,o(ge)]])],2))}});var d1=fe(c1,[["__file","panel-date-pick.vue"]]);const f1=de({...yf,...ui}),v1=e=>{const{emit:t}=lt(),n=pl(),l=Xt();return s=>{const r=Qe(s.value)?s.value():s.value;if(r){t("pick",[Ke(r[0]).locale(e.value),Ke(r[1]).locale(e.value)]);return}s.onClick&&s.onClick({attrs:n,slots:l,emit:t})}},fi=(e,{defaultValue:t,defaultTime:n,leftDate:l,rightDate:a,step:s,unit:r,onParsedValueChanged:i})=>{const{emit:u}=lt(),{pickerNs:c}=we(ri),d=ue("date-range-picker"),{t:f,lang:m}=pt(),v=v1(m),h=I(),p=I(),g=I({endDate:null,selecting:!1}),b=S=>{g.value=S},E=(S=!1)=>{const $=o(h),M=o(p);Jo([$,M])&&u("pick",[$,M],S)},C=S=>{g.value.selecting=S,S||(g.value.endDate=null)},w=S=>{if(ke(S)&&S.length===2){const[$,M]=S;h.value=$,l.value=$,p.value=M,i(o(h),o(p))}else k()},k=()=>{let[S,$]=Es(o(t),{lang:o(m),step:s,unit:r,unlinkPanels:e.unlinkPanels});const M=N=>N.diff(N.startOf("d"),"ms"),R=o(n);if(R){let N=0,O=0;if(ke(R)){const[P,W]=R.map(Ke);N=M(P),O=M(W)}else{const P=M(Ke(R));N=P,O=P}S=S.startOf("d").add(N,"ms"),$=$.startOf("d").add(O,"ms")}h.value=void 0,p.value=void 0,l.value=S,a.value=$};return ie(t,S=>{S&&k()},{immediate:!0}),ie(()=>e.parsedValue,w,{immediate:!0}),{minDate:h,maxDate:p,rangeState:g,lang:m,ppNs:c,drpNs:d,handleChangeRange:b,handleRangeConfirm:E,handleShortcutClick:v,onSelect:C,onReset:w,t:f}},p1=(e,t,n,l)=>{const a=I("date"),s=I(),r=I("date"),i=I(),u=we(gl),{disabledDate:c}=u.props,{t:d,lang:f}=pt(),m=y(()=>n.value.year()),v=y(()=>n.value.month()),h=y(()=>l.value.year()),p=y(()=>l.value.month());function g(S,$){const M=d("el.datepicker.year");if(S.value==="year"){const R=Math.floor($.value/10)*10;return M?`${R} ${M} - ${R+9} ${M}`:`${R} - ${R+9}`}return`${$.value} ${M}`}function b(S){S==null||S.focus()}async function E(S,$){const M=S==="left"?a:r,R=S==="left"?s:i;M.value=$,await Ee(),b(R.value)}async function C(S,$,M){const R=$==="left",N=R?n:l,O=R?l:n,P=R?a:r,W=R?s:i;if(S==="year"){const K=N.value.year(M);N.value=Za(K,f.value,c)}S==="month"&&(N.value=Eo(N.value,N.value.year(),M,f.value,c)),e.unlinkPanels||(O.value=$==="left"?N.value.add(1,"month"):N.value.subtract(1,"month")),P.value=S==="year"?"month":"date",await Ee(),b(W.value),w(S)}function w(S){t("panel-change",[n.value.toDate(),l.value.toDate()],S)}function k(S,$,M){const R=M?"add":"subtract";return S==="year"?$[R](10,"year"):$[R](1,"year")}return{leftCurrentView:a,rightCurrentView:r,leftCurrentViewRef:s,rightCurrentViewRef:i,leftYear:m,rightYear:h,leftMonth:v,rightMonth:p,leftYearLabel:y(()=>g(a,m)),rightYearLabel:y(()=>g(r,h)),showLeftPicker:S=>E("left",S),showRightPicker:S=>E("right",S),handleLeftYearPick:S=>C("year","left",S),handleRightYearPick:S=>C("year","right",S),handleLeftMonthPick:S=>C("month","left",S),handleRightMonthPick:S=>C("month","right",S),handlePanelChange:w,adjustDateByView:k}},$a="month",h1=x({__name:"panel-date-range",props:f1,emits:["pick","set-picker-option","calendar-change","panel-change"],setup(e,{emit:t}){const n=e,l=we(gl),a=we(ma),{disabledDate:s,cellClassName:r,defaultTime:i,clearable:u}=l.props,c=wt(l.props,"format"),d=wt(l.props,"shortcuts"),f=wt(l.props,"defaultValue"),{lang:m}=pt(),v=I(Ke().locale(m.value)),h=I(Ke().locale(m.value).add(1,$a)),{minDate:p,maxDate:g,rangeState:b,ppNs:E,drpNs:C,handleChangeRange:w,handleRangeConfirm:k,handleShortcutClick:S,onSelect:$,onReset:M,t:R}=fi(n,{defaultValue:f,defaultTime:i,leftDate:v,rightDate:h,unit:$a,onParsedValueChanged:Bn});ie(()=>n.visible,Ne=>{!Ne&&b.value.selecting&&(M(n.parsedValue),$(!1))});const N=I({min:null,max:null}),O=I({min:null,max:null}),{leftCurrentView:P,rightCurrentView:W,leftCurrentViewRef:K,rightCurrentViewRef:D,leftYear:L,rightYear:z,leftMonth:B,rightMonth:A,leftYearLabel:ne,rightYearLabel:j,showLeftPicker:Q,showRightPicker:Z,handleLeftYearPick:ee,handleRightYearPick:ae,handleLeftMonthPick:re,handleRightMonthPick:le,handlePanelChange:se,adjustDateByView:ge}=p1(n,t,v,h),Be=y(()=>!!d.value.length),te=y(()=>N.value.min!==null?N.value.min:p.value?p.value.format(Ye.value):""),ce=y(()=>N.value.max!==null?N.value.max:g.value||p.value?(g.value||p.value).format(Ye.value):""),Ie=y(()=>O.value.min!==null?O.value.min:p.value?p.value.format(xe.value):""),Ae=y(()=>O.value.max!==null?O.value.max:g.value||p.value?(g.value||p.value).format(xe.value):""),xe=y(()=>n.timeFormat||Fd(c.value)),Ye=y(()=>n.dateFormat||Ad(c.value)),$e=Ne=>Jo(Ne)&&(s?!s(Ne[0].toDate())&&!s(Ne[1].toDate()):!0),Me=()=>{v.value=ge(P.value,v.value,!1),n.unlinkPanels||(h.value=v.value.add(1,"month")),se("year")},Pe=()=>{v.value=v.value.subtract(1,"month"),n.unlinkPanels||(h.value=v.value.add(1,"month")),se("month")},Ze=()=>{n.unlinkPanels?h.value=ge(W.value,h.value,!0):(v.value=ge(W.value,v.value,!0),h.value=v.value.add(1,"month")),se("year")},ot=()=>{n.unlinkPanels?h.value=h.value.add(1,"month"):(v.value=v.value.add(1,"month"),h.value=v.value.add(1,"month")),se("month")},at=()=>{v.value=ge(P.value,v.value,!0),se("year")},ct=()=>{v.value=v.value.add(1,"month"),se("month")},ye=()=>{h.value=ge(W.value,h.value,!1),se("year")},Ue=()=>{h.value=h.value.subtract(1,"month"),se("month")},It=y(()=>{const Ne=(B.value+1)%12,gt=B.value+1>=12?1:0;return n.unlinkPanels&&new Date(L.value+gt,Ne)n.unlinkPanels&&z.value*12+A.value-(L.value*12+B.value+1)>=12),Rt=y(()=>!(p.value&&g.value&&!b.value.selecting&&Jo([p.value,g.value]))),Mt=y(()=>n.type==="datetime"||n.type==="datetimerange"),St=(Ne,gt)=>{if(Ne)return i?Ke(i[gt]||i).locale(m.value).year(Ne.year()).month(Ne.month()).date(Ne.date()):Ne},je=(Ne,gt=!0)=>{const Je=Ne.minDate,wn=Ne.maxDate,qn=St(Je,0),bl=St(wn,1);g.value===bl&&p.value===qn||(t("calendar-change",[Je.toDate(),wn&&wn.toDate()]),g.value=bl,p.value=qn,!(!gt||Mt.value)&&k())},tt=I(!1),it=I(!1),X=()=>{tt.value=!1},ve=()=>{it.value=!1},q=(Ne,gt)=>{N.value[gt]=Ne;const Je=Ke(Ne,Ye.value).locale(m.value);if(Je.isValid()){if(s&&s(Je.toDate()))return;gt==="min"?(v.value=Je,p.value=(p.value||v.value).year(Je.year()).month(Je.month()).date(Je.date()),!n.unlinkPanels&&(!g.value||g.value.isBefore(p.value))&&(h.value=Je.add(1,"month"),g.value=p.value.add(1,"month"))):(h.value=Je,g.value=(g.value||h.value).year(Je.year()).month(Je.month()).date(Je.date()),!n.unlinkPanels&&(!p.value||p.value.isAfter(g.value))&&(v.value=Je.subtract(1,"month"),p.value=g.value.subtract(1,"month")))}},be=(Ne,gt)=>{N.value[gt]=null},qe=(Ne,gt)=>{O.value[gt]=Ne;const Je=Ke(Ne,xe.value).locale(m.value);Je.isValid()&&(gt==="min"?(tt.value=!0,p.value=(p.value||v.value).hour(Je.hour()).minute(Je.minute()).second(Je.second())):(it.value=!0,g.value=(g.value||h.value).hour(Je.hour()).minute(Je.minute()).second(Je.second()),h.value=g.value))},ft=(Ne,gt)=>{O.value[gt]=null,gt==="min"?(v.value=p.value,tt.value=!1,(!g.value||g.value.isBefore(p.value))&&(g.value=p.value)):(h.value=g.value,it.value=!1,g.value&&g.value.isBefore(p.value)&&(p.value=g.value))},Pt=(Ne,gt,Je)=>{O.value.min||(Ne&&(v.value=Ne,p.value=(p.value||v.value).hour(Ne.hour()).minute(Ne.minute()).second(Ne.second())),Je||(tt.value=gt),(!g.value||g.value.isBefore(p.value))&&(g.value=p.value,h.value=Ne))},Kt=(Ne,gt,Je)=>{O.value.max||(Ne&&(h.value=Ne,g.value=(g.value||h.value).hour(Ne.hour()).minute(Ne.minute()).second(Ne.second())),Je||(it.value=gt),g.value&&g.value.isBefore(p.value)&&(p.value=g.value))},Ut=()=>{v.value=Es(o(f),{lang:o(m),unit:"month",unlinkPanels:n.unlinkPanels})[0],h.value=v.value.add(1,"month"),g.value=void 0,p.value=void 0,t("pick",null)},ll=Ne=>ke(Ne)?Ne.map(gt=>gt.format(c.value)):Ne.format(c.value),en=Ne=>_o(Ne,c.value,m.value,a);function Bn(Ne,gt){if(n.unlinkPanels&>){const Je=(Ne==null?void 0:Ne.year())||0,wn=(Ne==null?void 0:Ne.month())||0,qn=gt.year(),bl=gt.month();h.value=Je===qn&&wn===bl?gt.add(1,$a):gt}else h.value=v.value.add(1,$a),gt&&(h.value=h.value.hour(gt.hour()).minute(gt.minute()).second(gt.second()))}return t("set-picker-option",["isValidValue",$e]),t("set-picker-option",["parseUserInput",en]),t("set-picker-option",["formatToString",ll]),t("set-picker-option",["handleClear",Ut]),(Ne,gt)=>(_(),V("div",{class:T([o(E).b(),o(C).b(),{"has-sidebar":Ne.$slots.sidebar||o(Be),"has-time":o(Mt)}])},[F("div",{class:T(o(E).e("body-wrapper"))},[G(Ne.$slots,"sidebar",{class:T(o(E).e("sidebar"))}),o(Be)?(_(),V("div",{key:0,class:T(o(E).e("sidebar"))},[(_(!0),V(Oe,null,ut(o(d),(Je,wn)=>(_(),V("button",{key:wn,type:"button",class:T(o(E).e("shortcut")),onClick:qn=>o(S)(Je)},pe(Je.text),11,["onClick"]))),128))],2)):J("v-if",!0),F("div",{class:T(o(E).e("body"))},[o(Mt)?(_(),V("div",{key:0,class:T(o(C).e("time-header"))},[F("span",{class:T(o(C).e("editors-wrap"))},[F("span",{class:T(o(C).e("time-picker-wrap"))},[H(o(hn),{size:"small",disabled:o(b).selecting,placeholder:o(R)("el.datepicker.startDate"),class:T(o(C).e("editor")),"model-value":o(te),"validate-event":!1,onInput:Je=>q(Je,"min"),onChange:Je=>be(Je,"min")},null,8,["disabled","placeholder","class","model-value","onInput","onChange"])],2),We((_(),V("span",{class:T(o(C).e("time-picker-wrap"))},[H(o(hn),{size:"small",class:T(o(C).e("editor")),disabled:o(b).selecting,placeholder:o(R)("el.datepicker.startTime"),"model-value":o(Ie),"validate-event":!1,onFocus:Je=>tt.value=!0,onInput:Je=>qe(Je,"min"),onChange:Je=>ft(Je,"min")},null,8,["class","disabled","placeholder","model-value","onFocus","onInput","onChange"]),H(o(Ga),{visible:tt.value,format:o(xe),"datetime-role":"start","parsed-value":v.value,onPick:Pt},null,8,["visible","format","parsed-value"])],2)),[[o(vl),X]])],2),F("span",null,[H(o(Se),null,{default:U(()=>[H(o(Cn))]),_:1})]),F("span",{class:T([o(C).e("editors-wrap"),"is-right"])},[F("span",{class:T(o(C).e("time-picker-wrap"))},[H(o(hn),{size:"small",class:T(o(C).e("editor")),disabled:o(b).selecting,placeholder:o(R)("el.datepicker.endDate"),"model-value":o(ce),readonly:!o(p),"validate-event":!1,onInput:Je=>q(Je,"max"),onChange:Je=>be(Je,"max")},null,8,["class","disabled","placeholder","model-value","readonly","onInput","onChange"])],2),We((_(),V("span",{class:T(o(C).e("time-picker-wrap"))},[H(o(hn),{size:"small",class:T(o(C).e("editor")),disabled:o(b).selecting,placeholder:o(R)("el.datepicker.endTime"),"model-value":o(Ae),readonly:!o(p),"validate-event":!1,onFocus:Je=>o(p)&&(it.value=!0),onInput:Je=>qe(Je,"max"),onChange:Je=>ft(Je,"max")},null,8,["class","disabled","placeholder","model-value","readonly","onFocus","onInput","onChange"]),H(o(Ga),{"datetime-role":"end",visible:it.value,format:o(xe),"parsed-value":h.value,onPick:Kt},null,8,["visible","format","parsed-value"])],2)),[[o(vl),ve]])],2)],2)):J("v-if",!0),F("div",{class:T([[o(E).e("content"),o(C).e("content")],"is-left"])},[F("div",{class:T(o(C).e("header"))},[F("button",{type:"button",class:T([o(E).e("icon-btn"),"d-arrow-left"]),"aria-label":o(R)("el.datepicker.prevYear"),onClick:Me},[G(Ne.$slots,"prev-year",{},()=>[H(o(Se),null,{default:U(()=>[H(o(Rl))]),_:1})])],10,["aria-label"]),We(F("button",{type:"button",class:T([o(E).e("icon-btn"),"arrow-left"]),"aria-label":o(R)("el.datepicker.prevMonth"),onClick:Pe},[G(Ne.$slots,"prev-month",{},()=>[H(o(Se),null,{default:U(()=>[H(o(dl))]),_:1})])],10,["aria-label"]),[[mt,o(P)==="date"]]),Ne.unlinkPanels?(_(),V("button",{key:0,type:"button",disabled:!o(Ot),class:T([[o(E).e("icon-btn"),{"is-disabled":!o(Ot)}],"d-arrow-right"]),"aria-label":o(R)("el.datepicker.nextYear"),onClick:at},[G(Ne.$slots,"next-year",{},()=>[H(o(Se),null,{default:U(()=>[H(o(Pl))]),_:1})])],10,["disabled","aria-label"])):J("v-if",!0),Ne.unlinkPanels&&o(P)==="date"?(_(),V("button",{key:1,type:"button",disabled:!o(It),class:T([[o(E).e("icon-btn"),{"is-disabled":!o(It)}],"arrow-right"]),"aria-label":o(R)("el.datepicker.nextMonth"),onClick:ct},[G(Ne.$slots,"next-month",{},()=>[H(o(Se),null,{default:U(()=>[H(o(Cn))]),_:1})])],10,["disabled","aria-label"])):J("v-if",!0),F("div",null,[F("span",{role:"button",class:T(o(C).e("header-label")),"aria-live":"polite",tabindex:"0",onKeydown:Tt(Je=>o(Q)("year"),["enter"]),onClick:Je=>o(Q)("year")},pe(o(ne)),43,["onKeydown","onClick"]),We(F("span",{role:"button","aria-live":"polite",tabindex:"0",class:T([o(C).e("header-label"),{active:o(P)==="month"}]),onKeydown:Tt(Je=>o(Q)("month"),["enter"]),onClick:Je=>o(Q)("month")},pe(o(R)(`el.datepicker.month${v.value.month()+1}`)),43,["onKeydown","onClick"]),[[mt,o(P)==="date"]])])],2),o(P)==="date"?(_(),oe(pr,{key:0,ref_key:"leftCurrentViewRef",ref:K,"selection-mode":"range",date:v.value,"min-date":o(p),"max-date":o(g),"range-state":o(b),"disabled-date":o(s),"cell-class-name":o(r),"show-week-number":Ne.showWeekNumber,onChangerange:o(w),onPick:je,onSelect:o($)},null,8,["date","min-date","max-date","range-state","disabled-date","cell-class-name","show-week-number","onChangerange","onSelect"])):J("v-if",!0),o(P)==="year"?(_(),oe(ea,{key:1,ref_key:"leftCurrentViewRef",ref:K,"selection-mode":"year",date:v.value,"disabled-date":o(s),"parsed-value":Ne.parsedValue,onPick:o(ee)},null,8,["date","disabled-date","parsed-value","onPick"])):J("v-if",!0),o(P)==="month"?(_(),oe(Qo,{key:2,ref_key:"leftCurrentViewRef",ref:K,"selection-mode":"month",date:v.value,"parsed-value":Ne.parsedValue,"disabled-date":o(s),onPick:o(re)},null,8,["date","parsed-value","disabled-date","onPick"])):J("v-if",!0)],2),F("div",{class:T([[o(E).e("content"),o(C).e("content")],"is-right"])},[F("div",{class:T(o(C).e("header"))},[Ne.unlinkPanels?(_(),V("button",{key:0,type:"button",disabled:!o(Ot),class:T([[o(E).e("icon-btn"),{"is-disabled":!o(Ot)}],"d-arrow-left"]),"aria-label":o(R)("el.datepicker.prevYear"),onClick:ye},[G(Ne.$slots,"prev-year",{},()=>[H(o(Se),null,{default:U(()=>[H(o(Rl))]),_:1})])],10,["disabled","aria-label"])):J("v-if",!0),Ne.unlinkPanels&&o(W)==="date"?(_(),V("button",{key:1,type:"button",disabled:!o(It),class:T([[o(E).e("icon-btn"),{"is-disabled":!o(It)}],"arrow-left"]),"aria-label":o(R)("el.datepicker.prevMonth"),onClick:Ue},[G(Ne.$slots,"prev-month",{},()=>[H(o(Se),null,{default:U(()=>[H(o(dl))]),_:1})])],10,["disabled","aria-label"])):J("v-if",!0),F("button",{type:"button","aria-label":o(R)("el.datepicker.nextYear"),class:T([o(E).e("icon-btn"),"d-arrow-right"]),onClick:Ze},[G(Ne.$slots,"next-year",{},()=>[H(o(Se),null,{default:U(()=>[H(o(Pl))]),_:1})])],10,["aria-label"]),We(F("button",{type:"button",class:T([o(E).e("icon-btn"),"arrow-right"]),"aria-label":o(R)("el.datepicker.nextMonth"),onClick:ot},[G(Ne.$slots,"next-month",{},()=>[H(o(Se),null,{default:U(()=>[H(o(Cn))]),_:1})])],10,["aria-label"]),[[mt,o(W)==="date"]]),F("div",null,[F("span",{role:"button",class:T(o(C).e("header-label")),"aria-live":"polite",tabindex:"0",onKeydown:Tt(Je=>o(Z)("year"),["enter"]),onClick:Je=>o(Z)("year")},pe(o(j)),43,["onKeydown","onClick"]),We(F("span",{role:"button","aria-live":"polite",tabindex:"0",class:T([o(C).e("header-label"),{active:o(W)==="month"}]),onKeydown:Tt(Je=>o(Z)("month"),["enter"]),onClick:Je=>o(Z)("month")},pe(o(R)(`el.datepicker.month${h.value.month()+1}`)),43,["onKeydown","onClick"]),[[mt,o(W)==="date"]])])],2),o(W)==="date"?(_(),oe(pr,{key:0,ref_key:"rightCurrentViewRef",ref:D,"selection-mode":"range",date:h.value,"min-date":o(p),"max-date":o(g),"range-state":o(b),"disabled-date":o(s),"cell-class-name":o(r),"show-week-number":Ne.showWeekNumber,onChangerange:o(w),onPick:je,onSelect:o($)},null,8,["date","min-date","max-date","range-state","disabled-date","cell-class-name","show-week-number","onChangerange","onSelect"])):J("v-if",!0),o(W)==="year"?(_(),oe(ea,{key:1,ref_key:"rightCurrentViewRef",ref:D,"selection-mode":"year",date:h.value,"disabled-date":o(s),"parsed-value":Ne.parsedValue,onPick:o(ae)},null,8,["date","disabled-date","parsed-value","onPick"])):J("v-if",!0),o(W)==="month"?(_(),oe(Qo,{key:2,ref_key:"rightCurrentViewRef",ref:D,"selection-mode":"month",date:h.value,"parsed-value":Ne.parsedValue,"disabled-date":o(s),onPick:o(le)},null,8,["date","parsed-value","disabled-date","onPick"])):J("v-if",!0)],2)],2)],2),o(Mt)?(_(),V("div",{key:0,class:T(o(E).e("footer"))},[o(u)?(_(),oe(o(on),{key:0,text:"",size:"small",class:T(o(E).e("link-btn")),onClick:Ut},{default:U(()=>[st(pe(o(R)("el.datepicker.clear")),1)]),_:1},8,["class"])):J("v-if",!0),H(o(on),{plain:"",size:"small",class:T(o(E).e("link-btn")),disabled:o(Rt),onClick:Je=>o(k)(!1)},{default:U(()=>[st(pe(o(R)("el.datepicker.confirm")),1)]),_:1},8,["class","disabled","onClick"])],2)):J("v-if",!0)],2))}});var m1=fe(h1,[["__file","panel-date-range.vue"]]);const g1=de({...ui}),b1=["pick","set-picker-option","calendar-change"],y1=({unlinkPanels:e,leftDate:t,rightDate:n})=>{const{t:l}=pt(),a=()=>{t.value=t.value.subtract(1,"year"),e.value||(n.value=n.value.subtract(1,"year"))},s=()=>{e.value||(t.value=t.value.add(1,"year")),n.value=n.value.add(1,"year")},r=()=>{t.value=t.value.add(1,"year")},i=()=>{n.value=n.value.subtract(1,"year")},u=y(()=>`${t.value.year()} ${l("el.datepicker.year")}`),c=y(()=>`${n.value.year()} ${l("el.datepicker.year")}`),d=y(()=>t.value.year()),f=y(()=>n.value.year()===t.value.year()?t.value.year()+1:n.value.year());return{leftPrevYear:a,rightNextYear:s,leftNextYear:r,rightPrevYear:i,leftLabel:u,rightLabel:c,leftYear:d,rightYear:f}},Na="year",C1=x({name:"DatePickerMonthRange"}),w1=x({...C1,props:g1,emits:b1,setup(e,{emit:t}){const n=e,{lang:l}=pt(),a=we(gl),s=we(ma),{shortcuts:r,disabledDate:i}=a.props,u=wt(a.props,"format"),c=wt(a.props,"defaultValue"),d=I(Ke().locale(l.value)),f=I(Ke().locale(l.value).add(1,Na)),{minDate:m,maxDate:v,rangeState:h,ppNs:p,drpNs:g,handleChangeRange:b,handleRangeConfirm:E,handleShortcutClick:C,onSelect:w,onReset:k}=fi(n,{defaultValue:c,leftDate:d,rightDate:f,unit:Na,onParsedValueChanged:ne}),S=y(()=>!!r.length),{leftPrevYear:$,rightNextYear:M,leftNextYear:R,rightPrevYear:N,leftLabel:O,rightLabel:P,leftYear:W,rightYear:K}=y1({unlinkPanels:wt(n,"unlinkPanels"),leftDate:d,rightDate:f}),D=y(()=>n.unlinkPanels&&K.value>W.value+1),L=(j,Q=!0)=>{const Z=j.minDate,ee=j.maxDate;v.value===ee&&m.value===Z||(t("calendar-change",[Z.toDate(),ee&&ee.toDate()]),v.value=ee,m.value=Z,Q&&E())},z=()=>{d.value=Es(o(c),{lang:o(l),unit:"year",unlinkPanels:n.unlinkPanels})[0],f.value=d.value.add(1,"year"),t("pick",null)},B=j=>ke(j)?j.map(Q=>Q.format(u.value)):j.format(u.value),A=j=>_o(j,u.value,l.value,s);function ne(j,Q){if(n.unlinkPanels&&Q){const Z=(j==null?void 0:j.year())||0,ee=Q.year();f.value=Z===ee?Q.add(1,Na):Q}else f.value=d.value.add(1,Na)}return ie(()=>n.visible,j=>{!j&&h.value.selecting&&(k(n.parsedValue),w(!1))}),t("set-picker-option",["isValidValue",Jo]),t("set-picker-option",["formatToString",B]),t("set-picker-option",["parseUserInput",A]),t("set-picker-option",["handleClear",z]),(j,Q)=>(_(),V("div",{class:T([o(p).b(),o(g).b(),{"has-sidebar":!!j.$slots.sidebar||o(S)}])},[F("div",{class:T(o(p).e("body-wrapper"))},[G(j.$slots,"sidebar",{class:T(o(p).e("sidebar"))}),o(S)?(_(),V("div",{key:0,class:T(o(p).e("sidebar"))},[(_(!0),V(Oe,null,ut(o(r),(Z,ee)=>(_(),V("button",{key:ee,type:"button",class:T(o(p).e("shortcut")),onClick:ae=>o(C)(Z)},pe(Z.text),11,["onClick"]))),128))],2)):J("v-if",!0),F("div",{class:T(o(p).e("body"))},[F("div",{class:T([[o(p).e("content"),o(g).e("content")],"is-left"])},[F("div",{class:T(o(g).e("header"))},[F("button",{type:"button",class:T([o(p).e("icon-btn"),"d-arrow-left"]),onClick:o($)},[G(j.$slots,"prev-year",{},()=>[H(o(Se),null,{default:U(()=>[H(o(Rl))]),_:1})])],10,["onClick"]),j.unlinkPanels?(_(),V("button",{key:0,type:"button",disabled:!o(D),class:T([[o(p).e("icon-btn"),{[o(p).is("disabled")]:!o(D)}],"d-arrow-right"]),onClick:o(R)},[G(j.$slots,"next-year",{},()=>[H(o(Se),null,{default:U(()=>[H(o(Pl))]),_:1})])],10,["disabled","onClick"])):J("v-if",!0),F("div",null,pe(o(O)),1)],2),H(Qo,{"selection-mode":"range",date:d.value,"min-date":o(m),"max-date":o(v),"range-state":o(h),"disabled-date":o(i),onChangerange:o(b),onPick:L,onSelect:o(w)},null,8,["date","min-date","max-date","range-state","disabled-date","onChangerange","onSelect"])],2),F("div",{class:T([[o(p).e("content"),o(g).e("content")],"is-right"])},[F("div",{class:T(o(g).e("header"))},[j.unlinkPanels?(_(),V("button",{key:0,type:"button",disabled:!o(D),class:T([[o(p).e("icon-btn"),{"is-disabled":!o(D)}],"d-arrow-left"]),onClick:o(N)},[G(j.$slots,"prev-year",{},()=>[H(o(Se),null,{default:U(()=>[H(o(Rl))]),_:1})])],10,["disabled","onClick"])):J("v-if",!0),F("button",{type:"button",class:T([o(p).e("icon-btn"),"d-arrow-right"]),onClick:o(M)},[G(j.$slots,"next-year",{},()=>[H(o(Se),null,{default:U(()=>[H(o(Pl))]),_:1})])],10,["onClick"]),F("div",null,pe(o(P)),1)],2),H(Qo,{"selection-mode":"range",date:f.value,"min-date":o(m),"max-date":o(v),"range-state":o(h),"disabled-date":o(i),onChangerange:o(b),onPick:L,onSelect:o(w)},null,8,["date","min-date","max-date","range-state","disabled-date","onChangerange","onSelect"])],2)],2)],2)],2))}});var k1=fe(w1,[["__file","panel-month-range.vue"]]);const S1=de({...ui}),E1=["pick","set-picker-option","calendar-change"],_1=({unlinkPanels:e,leftDate:t,rightDate:n})=>{const l=()=>{t.value=t.value.subtract(10,"year"),e.value||(n.value=n.value.subtract(10,"year"))},a=()=>{e.value||(t.value=t.value.add(10,"year")),n.value=n.value.add(10,"year")},s=()=>{t.value=t.value.add(10,"year")},r=()=>{n.value=n.value.subtract(10,"year")},i=y(()=>{const f=Math.floor(t.value.year()/10)*10;return`${f}-${f+9}`}),u=y(()=>{const f=Math.floor(n.value.year()/10)*10;return`${f}-${f+9}`}),c=y(()=>Math.floor(t.value.year()/10)*10+9),d=y(()=>Math.floor(n.value.year()/10)*10);return{leftPrevYear:l,rightNextYear:a,leftNextYear:s,rightPrevYear:r,leftLabel:i,rightLabel:u,leftYear:c,rightYear:d}},oo=10,Do="year",T1=x({name:"DatePickerYearRange"}),$1=x({...T1,props:S1,emits:E1,setup(e,{emit:t}){const n=e,{lang:l}=pt(),a=I(Ke().locale(l.value)),s=I(Ke().locale(l.value).add(oo,Do)),r=we(ma),i=we(gl),{shortcuts:u,disabledDate:c}=i.props,d=wt(i.props,"format"),f=wt(i.props,"defaultValue"),{minDate:m,maxDate:v,rangeState:h,ppNs:p,drpNs:g,handleChangeRange:b,handleRangeConfirm:E,handleShortcutClick:C,onSelect:w,onReset:k}=fi(n,{defaultValue:f,leftDate:a,rightDate:s,step:oo,unit:Do,onParsedValueChanged:ee}),{leftPrevYear:S,rightNextYear:$,leftNextYear:M,rightPrevYear:R,leftLabel:N,rightLabel:O,leftYear:P,rightYear:W}=_1({unlinkPanels:wt(n,"unlinkPanels"),leftDate:a,rightDate:s}),K=y(()=>!!u.length),D=y(()=>[p.b(),g.b(),{"has-sidebar":!!Xt().sidebar||K.value}]),L=y(()=>({content:[p.e("content"),g.e("content"),"is-left"],arrowLeftBtn:[p.e("icon-btn"),"d-arrow-left"],arrowRightBtn:[p.e("icon-btn"),{[p.is("disabled")]:!B.value},"d-arrow-right"]})),z=y(()=>({content:[p.e("content"),g.e("content"),"is-right"],arrowLeftBtn:[p.e("icon-btn"),{"is-disabled":!B.value},"d-arrow-left"],arrowRightBtn:[p.e("icon-btn"),"d-arrow-right"]})),B=y(()=>n.unlinkPanels&&W.value>P.value+1),A=(ae,re=!0)=>{const le=ae.minDate,se=ae.maxDate;v.value===se&&m.value===le||(t("calendar-change",[le.toDate(),se&&se.toDate()]),v.value=se,m.value=le,re&&E())},ne=ae=>_o(ae,d.value,l.value,r),j=ae=>ke(ae)?ae.map(re=>re.format(d.value)):ae.format(d.value),Q=ae=>Jo(ae)&&(c?!c(ae[0].toDate())&&!c(ae[1].toDate()):!0),Z=()=>{const ae=Es(o(f),{lang:o(l),step:oo,unit:Do,unlinkPanels:n.unlinkPanels});a.value=ae[0],s.value=ae[1],t("pick",null)};function ee(ae,re){if(n.unlinkPanels&&re){const le=(ae==null?void 0:ae.year())||0,se=re.year();s.value=le+oo>se?re.add(oo,Do):re}else s.value=a.value.add(oo,Do)}return ie(()=>n.visible,ae=>{!ae&&h.value.selecting&&(k(n.parsedValue),w(!1))}),t("set-picker-option",["isValidValue",Q]),t("set-picker-option",["parseUserInput",ne]),t("set-picker-option",["formatToString",j]),t("set-picker-option",["handleClear",Z]),(ae,re)=>(_(),V("div",{class:T(o(D))},[F("div",{class:T(o(p).e("body-wrapper"))},[G(ae.$slots,"sidebar",{class:T(o(p).e("sidebar"))}),o(K)?(_(),V("div",{key:0,class:T(o(p).e("sidebar"))},[(_(!0),V(Oe,null,ut(o(u),(le,se)=>(_(),V("button",{key:se,type:"button",class:T(o(p).e("shortcut")),onClick:ge=>o(C)(le)},pe(le.text),11,["onClick"]))),128))],2)):J("v-if",!0),F("div",{class:T(o(p).e("body"))},[F("div",{class:T(o(L).content)},[F("div",{class:T(o(g).e("header"))},[F("button",{type:"button",class:T(o(L).arrowLeftBtn),onClick:o(S)},[G(ae.$slots,"prev-year",{},()=>[H(o(Se),null,{default:U(()=>[H(o(Rl))]),_:1})])],10,["onClick"]),ae.unlinkPanels?(_(),V("button",{key:0,type:"button",disabled:!o(B),class:T(o(L).arrowRightBtn),onClick:o(M)},[G(ae.$slots,"next-year",{},()=>[H(o(Se),null,{default:U(()=>[H(o(Pl))]),_:1})])],10,["disabled","onClick"])):J("v-if",!0),F("div",null,pe(o(N)),1)],2),H(ea,{"selection-mode":"range",date:a.value,"min-date":o(m),"max-date":o(v),"range-state":o(h),"disabled-date":o(c),onChangerange:o(b),onPick:A,onSelect:o(w)},null,8,["date","min-date","max-date","range-state","disabled-date","onChangerange","onSelect"])],2),F("div",{class:T(o(z).content)},[F("div",{class:T(o(g).e("header"))},[ae.unlinkPanels?(_(),V("button",{key:0,type:"button",disabled:!o(B),class:T(o(z).arrowLeftBtn),onClick:o(R)},[G(ae.$slots,"prev-year",{},()=>[H(o(Se),null,{default:U(()=>[H(o(Rl))]),_:1})])],10,["disabled","onClick"])):J("v-if",!0),F("button",{type:"button",class:T(o(z).arrowRightBtn),onClick:o($)},[G(ae.$slots,"next-year",{},()=>[H(o(Se),null,{default:U(()=>[H(o(Pl))]),_:1})])],10,["onClick"]),F("div",null,pe(o(O)),1)],2),H(ea,{"selection-mode":"range",date:s.value,"min-date":o(m),"max-date":o(v),"range-state":o(h),"disabled-date":o(c),onChangerange:o(b),onPick:A,onSelect:o(w)},null,8,["date","min-date","max-date","range-state","disabled-date","onChangerange","onSelect"])],2)],2)],2)],2))}});var N1=fe($1,[["__file","panel-year-range.vue"]]);const I1=function(e){switch(e){case"daterange":case"datetimerange":return m1;case"monthrange":return k1;case"yearrange":return N1;default:return d1}};Ke.extend(Vc);Ke.extend(Xp);Ke.extend(Hr);Ke.extend(Zp);Ke.extend(Jp);Ke.extend(Qp);Ke.extend(eh);Ke.extend(th);var M1=x({name:"ElDatePicker",install:null,props:Xw,emits:[De],setup(e,{expose:t,emit:n,slots:l}){const a=ue("picker-panel"),s=y(()=>!e.format);rt(ma,s),rt(ai,kt(wt(e,"popperOptions"))),rt(ri,{slots:l,pickerNs:a});const r=I();t({focus:()=>{var c;(c=r.value)==null||c.focus()},blur:()=>{var c;(c=r.value)==null||c.blur()},handleOpen:()=>{var c;(c=r.value)==null||c.handleOpen()},handleClose:()=>{var c;(c=r.value)==null||c.handleClose()}});const u=c=>{n(De,c)};return()=>{var c;const d=(c=e.format)!=null?c:Pw[e.type]||uo,f=I1(e.type);return H(pf,et(e,{format:d,type:e.type,ref:r,"onUpdate:modelValue":u}),{default:m=>H(f,m,{"prev-month":l["prev-month"],"next-month":l["next-month"],"prev-year":l["prev-year"],"next-year":l["next-year"]}),"range-separator":l["range-separator"]})}}});const R1=He(M1),vi=Symbol("elDescriptions");var Ao=x({name:"ElDescriptionsCell",props:{cell:{type:Object},tag:{type:String,default:"td"},type:{type:String}},setup(){return{descriptions:we(vi,{})}},render(){var e;const t=J0(this.cell),n=(((e=this.cell)==null?void 0:e.dirs)||[]).map(b=>{const{dir:E,arg:C,modifiers:w,value:k}=b;return[E,k,C,w]}),{border:l,direction:a}=this.descriptions,s=a==="vertical",r=()=>{var b,E,C;return((C=(E=(b=this.cell)==null?void 0:b.children)==null?void 0:E.label)==null?void 0:C.call(E))||t.label},i=()=>{var b,E,C;return(C=(E=(b=this.cell)==null?void 0:b.children)==null?void 0:E.default)==null?void 0:C.call(E)},u=t.span,c=t.rowspan,d=t.align?`is-${t.align}`:"",f=t.labelAlign?`is-${t.labelAlign}`:d,m=t.className,v=t.labelClassName,h=this.type==="label"&&(t.labelWidth||this.descriptions.labelWidth)||t.width,p={width:zt(h),minWidth:zt(t.minWidth)},g=ue("descriptions");switch(this.type){case"label":return We(Re(this.tag,{style:p,class:[g.e("cell"),g.e("label"),g.is("bordered-label",l),g.is("vertical-label",s),f,v],colSpan:s?u:1,rowspan:s?1:c},r()),n);case"content":return We(Re(this.tag,{style:p,class:[g.e("cell"),g.e("content"),g.is("bordered-content",l),g.is("vertical-content",s),d,m],colSpan:s?u:u*2-1,rowspan:s?c*2-1:c},i()),n);default:{const b=r(),E={},C=zt(t.labelWidth||this.descriptions.labelWidth);return C&&(E.width=C,E.display="inline-block"),We(Re("td",{style:p,class:[g.e("cell"),d],colSpan:u,rowspan:c},[qt(b)?void 0:Re("span",{style:E,class:[g.e("label"),v]},b),Re("span",{class:[g.e("content"),m]},i())]),n)}}}});const P1=de({row:{type:Y(Array),default:()=>[]}}),O1=x({name:"ElDescriptionsRow"}),L1=x({...O1,props:P1,setup(e){const t=we(vi,{});return(n,l)=>o(t).direction==="vertical"?(_(),V(Oe,{key:0},[F("tr",null,[(_(!0),V(Oe,null,ut(n.row,(a,s)=>(_(),oe(o(Ao),{key:`tr1-${s}`,cell:a,tag:"th",type:"label"},null,8,["cell"]))),128))]),F("tr",null,[(_(!0),V(Oe,null,ut(n.row,(a,s)=>(_(),oe(o(Ao),{key:`tr2-${s}`,cell:a,tag:"td",type:"content"},null,8,["cell"]))),128))])],64)):(_(),V("tr",{key:1},[(_(!0),V(Oe,null,ut(n.row,(a,s)=>(_(),V(Oe,{key:`tr3-${s}`},[o(t).border?(_(),V(Oe,{key:0},[H(o(Ao),{cell:a,tag:"td",type:"label"},null,8,["cell"]),H(o(Ao),{cell:a,tag:"td",type:"content"},null,8,["cell"])],64)):(_(),oe(o(Ao),{key:1,cell:a,tag:"td",type:"both"},null,8,["cell"]))],64))),128))]))}});var B1=fe(L1,[["__file","descriptions-row.vue"]]);const V1=de({border:Boolean,column:{type:Number,default:3},direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},size:Jt,title:{type:String,default:""},extra:{type:String,default:""},labelWidth:{type:[String,Number],default:""}}),Cf="ElDescriptionsItem",D1=x({name:"ElDescriptions"}),A1=x({...D1,props:V1,setup(e){const t=e,n=ue("descriptions"),l=Gt(),a=Xt();rt(vi,t);const s=y(()=>[n.b(),n.m(l.value)]),r=(u,c,d,f=!1)=>(u.props||(u.props={}),c>d&&(u.props.span=d),f&&(u.props.span=c),u),i=()=>{if(!a.default)return[];const u=Zn(a.default()).filter(h=>{var p;return((p=h==null?void 0:h.type)==null?void 0:p.name)===Cf}),c=[];let d=[],f=t.column,m=0;const v=[];return u.forEach((h,p)=>{var g,b,E;const C=((g=h.props)==null?void 0:g.span)||1,w=((b=h.props)==null?void 0:b.rowspan)||1,k=c.length;if(v[k]||(v[k]=0),w>1)for(let S=1;S0&&(f-=v[k],v[k]=0),pf?f:C),p===u.length-1){const S=t.column-m%t.column;d.push(r(h,S,f,!0)),c.push(d);return}C(_(),V("div",{class:T(o(s))},[u.title||u.extra||u.$slots.title||u.$slots.extra?(_(),V("div",{key:0,class:T(o(n).e("header"))},[F("div",{class:T(o(n).e("title"))},[G(u.$slots,"title",{},()=>[st(pe(u.title),1)])],2),F("div",{class:T(o(n).e("extra"))},[G(u.$slots,"extra",{},()=>[st(pe(u.extra),1)])],2)],2)):J("v-if",!0),F("div",{class:T(o(n).e("body"))},[F("table",{class:T([o(n).e("table"),o(n).is("bordered",u.border)])},[F("tbody",null,[(_(!0),V(Oe,null,ut(i(),(d,f)=>(_(),oe(B1,{key:f,row:d},null,8,["row"]))),128))])],2)],2)],2))}});var F1=fe(A1,[["__file","description.vue"]]);const zu=["left","center","right"],x1=de({label:{type:String,default:""},span:{type:Number,default:1},rowspan:{type:Number,default:1},width:{type:[String,Number],default:""},minWidth:{type:[String,Number],default:""},labelWidth:{type:[String,Number],default:""},align:{type:String,values:zu,default:"left"},labelAlign:{type:String,values:zu},className:{type:String,default:""},labelClassName:{type:String,default:""}}),wf=x({name:Cf,props:x1}),z1=He(F1,{DescriptionsItem:wf}),H1=At(wf),pi=e=>{if(!e)return{onClick:Bt,onMousedown:Bt,onMouseup:Bt};let t=!1,n=!1;return{onClick:r=>{t&&n&&e(r),t=n=!1},onMousedown:r=>{t=r.target===r.currentTarget},onMouseup:r=>{n=r.target===r.currentTarget}}},K1=de({mask:{type:Boolean,default:!0},customMaskEvent:Boolean,overlayClass:{type:Y([String,Array,Object])},zIndex:{type:Y([String,Number])}}),W1={click:e=>e instanceof MouseEvent},j1="overlay";var U1=x({name:"ElOverlay",props:K1,emits:W1,setup(e,{slots:t,emit:n}){const l=ue(j1),a=u=>{n("click",u)},{onClick:s,onMousedown:r,onMouseup:i}=pi(e.customMaskEvent?void 0:a);return()=>e.mask?H("div",{class:[l.b(),e.overlayClass],style:{zIndex:e.zIndex},onClick:s,onMousedown:r,onMouseup:i},[G(t,"default")],Vn.STYLE|Vn.CLASS|Vn.PROPS,["onClick","onMouseup","onMousedown"]):Re("div",{class:e.overlayClass,style:{zIndex:e.zIndex,position:"fixed",top:"0px",right:"0px",bottom:"0px",left:"0px"}},[G(t,"default")])}});const hi=U1,kf=Symbol("dialogInjectionKey"),Sf=de({center:Boolean,alignCenter:Boolean,closeIcon:{type:$t},draggable:Boolean,overflow:Boolean,fullscreen:Boolean,headerClass:String,bodyClass:String,footerClass:String,showClose:{type:Boolean,default:!0},title:{type:String,default:""},ariaLevel:{type:String,default:"2"}}),Y1={close:()=>!0},Ef=(e,t,n,l)=>{const a={offsetX:0,offsetY:0},s=(f,m)=>{if(e.value){const{offsetX:v,offsetY:h}=a,p=e.value.getBoundingClientRect(),g=p.left,b=p.top,E=p.width,C=p.height,w=document.documentElement.clientWidth,k=document.documentElement.clientHeight,S=-g+v,$=-b+h,M=w-g-E+v,R=k-b-(C{const m=f.clientX,v=f.clientY,{offsetX:h,offsetY:p}=a,g=E=>{const C=h+E.clientX-m,w=p+E.clientY-v;s(C,w)},b=()=>{document.removeEventListener("mousemove",g),document.removeEventListener("mouseup",b)};document.addEventListener("mousemove",g),document.addEventListener("mouseup",b)},i=()=>{t.value&&e.value&&(t.value.addEventListener("mousedown",r),window.addEventListener("resize",d))},u=()=>{t.value&&e.value&&(t.value.removeEventListener("mousedown",r),window.removeEventListener("resize",d))},c=()=>{a.offsetX=0,a.offsetY=0,e.value&&(e.value.style.transform="")},d=()=>{const{offsetX:f,offsetY:m}=a;s(f,m)};return Xe(()=>{bn(()=>{n.value?i():u()})}),Nt(()=>{u()}),{resetPosition:c,updatePosition:d}},_s=(...e)=>t=>{e.forEach(n=>{Qe(n)?n(t):n.value=t})},q1=x({name:"ElDialogContent"}),G1=x({...q1,props:Sf,emits:Y1,setup(e,{expose:t}){const n=e,{t:l}=pt(),{Close:a}=fd,{dialogRef:s,headerRef:r,bodyId:i,ns:u,style:c}=we(kf),{focusTrapRef:d}=we(ei),f=y(()=>[u.b(),u.is("fullscreen",n.fullscreen),u.is("draggable",n.draggable),u.is("align-center",n.alignCenter),{[u.m("center")]:n.center}]),m=_s(d,s),v=y(()=>n.draggable),h=y(()=>n.overflow),{resetPosition:p,updatePosition:g}=Ef(s,r,v,h);return t({resetPosition:p,updatePosition:g}),(b,E)=>(_(),V("div",{ref:o(m),class:T(o(f)),style:_e(o(c)),tabindex:"-1"},[F("header",{ref_key:"headerRef",ref:r,class:T([o(u).e("header"),b.headerClass,{"show-close":b.showClose}])},[G(b.$slots,"header",{},()=>[F("span",{role:"heading","aria-level":b.ariaLevel,class:T(o(u).e("title"))},pe(b.title),11,["aria-level"])]),b.showClose?(_(),V("button",{key:0,"aria-label":o(l)("el.dialog.close"),class:T(o(u).e("headerbtn")),type:"button",onClick:C=>b.$emit("close")},[H(o(Se),{class:T(o(u).e("close"))},{default:U(()=>[(_(),oe(Ge(b.closeIcon||o(a))))]),_:1},8,["class"])],10,["aria-label","onClick"])):J("v-if",!0)],2),F("div",{id:o(i),class:T([o(u).e("body"),b.bodyClass])},[G(b.$slots,"default")],10,["id"]),b.$slots.footer?(_(),V("footer",{key:0,class:T([o(u).e("footer"),b.footerClass])},[G(b.$slots,"footer")],2)):J("v-if",!0)],6))}});var X1=fe(G1,[["__file","dialog-content.vue"]]);const _f=de({...Sf,appendToBody:Boolean,appendTo:{type:ws.to.type,default:"body"},beforeClose:{type:Y(Function)},destroyOnClose:Boolean,closeOnClickModal:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},modal:{type:Boolean,default:!0},openDelay:{type:Number,default:0},closeDelay:{type:Number,default:0},top:{type:String},modelValue:Boolean,modalClass:String,headerClass:String,bodyClass:String,footerClass:String,width:{type:[String,Number]},zIndex:{type:Number},trapFocus:Boolean,headerAriaLevel:{type:String,default:"2"}}),Tf={open:()=>!0,opened:()=>!0,close:()=>!0,closed:()=>!0,[De]:e=>_t(e),openAutoFocus:()=>!0,closeAutoFocus:()=>!0},mi=(e,t={})=>{gn(e)||jt("[useLockscreen]","You need to pass a ref param to this function");const n=t.ns||ue("popup"),l=y(()=>n.bm("parent","hidden"));if(!bt||Nn(document.body,l.value))return;let a=0,s=!1,r="0";const i=()=>{setTimeout(()=>{typeof document>"u"||s&&document&&(document.body.style.width=r,yn(document.body,l.value))},200)};ie(e,u=>{if(!u){i();return}s=!Nn(document.body,l.value),s&&(r=document.body.style.width,Fn(document.body,l.value)),a=nd(n.namespace.value);const c=document.documentElement.clientHeight0&&(c||d==="scroll")&&s&&(document.body.style.width=`calc(100% - ${a}px)`)}),Op(()=>i())},$f=(e,t)=>{var n;const a=lt().emit,{nextZIndex:s}=Mo();let r="";const i=sn(),u=sn(),c=I(!1),d=I(!1),f=I(!1),m=I((n=e.zIndex)!=null?n:s());let v,h;const p=fa("namespace",Ko),g=y(()=>{const D={},L=`--${p.value}-dialog`;return e.fullscreen||(e.top&&(D[`${L}-margin-top`]=e.top),e.width&&(D[`${L}-width`]=zt(e.width))),D}),b=y(()=>e.alignCenter?{display:"flex"}:{});function E(){a("opened")}function C(){a("closed"),a(De,!1),e.destroyOnClose&&(f.value=!1)}function w(){a("close")}function k(){h==null||h(),v==null||v(),e.openDelay&&e.openDelay>0?{stop:v}=Ul(()=>R(),e.openDelay):R()}function S(){v==null||v(),h==null||h(),e.closeDelay&&e.closeDelay>0?{stop:h}=Ul(()=>N(),e.closeDelay):N()}function $(){function D(L){L||(d.value=!0,c.value=!1)}e.beforeClose?e.beforeClose(D):S()}function M(){e.closeOnClickModal&&$()}function R(){bt&&(c.value=!0)}function N(){c.value=!1}function O(){a("openAutoFocus")}function P(){a("closeAutoFocus")}function W(D){var L;((L=D.detail)==null?void 0:L.focusReason)==="pointer"&&D.preventDefault()}e.lockScroll&&mi(c);function K(){e.closeOnPressEscape&&$()}return ie(()=>e.zIndex,()=>{var D;m.value=(D=e.zIndex)!=null?D:s()}),ie(()=>e.modelValue,D=>{var L;D?(d.value=!1,k(),f.value=!0,m.value=(L=e.zIndex)!=null?L:s(),Ee(()=>{a("open"),t.value&&(t.value.parentElement.scrollTop=0,t.value.parentElement.scrollLeft=0,t.value.scrollTop=0)})):c.value&&S()}),ie(()=>e.fullscreen,D=>{t.value&&(D?(r=t.value.style.transform,t.value.style.transform=""):t.value.style.transform=r)}),Xe(()=>{e.modelValue&&(c.value=!0,f.value=!0,k())}),{afterEnter:E,afterLeave:C,beforeLeave:w,handleClose:$,onModalClick:M,close:S,doClose:N,onOpenAutoFocus:O,onCloseAutoFocus:P,onCloseRequested:K,onFocusoutPrevented:W,titleId:i,bodyId:u,closed:d,style:g,overlayDialogStyle:b,rendered:f,visible:c,zIndex:m}},Z1=x({name:"ElDialog",inheritAttrs:!1}),J1=x({...Z1,props:_f,emits:Tf,setup(e,{expose:t}){const n=e,l=Xt();ul({scope:"el-dialog",from:"the title slot",replacement:"the header slot",version:"3.0.0",ref:"https://element-plus.org/en-US/component/dialog.html#slots"},y(()=>!!l.title));const a=ue("dialog"),s=I(),r=I(),i=I(),{visible:u,titleId:c,bodyId:d,style:f,overlayDialogStyle:m,rendered:v,zIndex:h,afterEnter:p,afterLeave:g,beforeLeave:b,handleClose:E,onModalClick:C,onOpenAutoFocus:w,onCloseAutoFocus:k,onCloseRequested:S,onFocusoutPrevented:$}=$f(n,s);rt(kf,{dialogRef:s,headerRef:r,bodyId:d,ns:a,rendered:v,style:f});const M=pi(C),R=y(()=>n.draggable&&!n.fullscreen);return t({visible:u,dialogContentRef:i,resetPosition:()=>{var O;(O=i.value)==null||O.resetPosition()},handleClose:E}),(O,P)=>(_(),oe(o(Po),{to:O.appendTo,disabled:O.appendTo!=="body"?!1:!O.appendToBody},{default:U(()=>[H(an,{name:"dialog-fade",onAfterEnter:o(p),onAfterLeave:o(g),onBeforeLeave:o(b),persisted:""},{default:U(()=>[We(H(o(hi),{"custom-mask-event":"",mask:O.modal,"overlay-class":O.modalClass,"z-index":o(h)},{default:U(()=>[F("div",{role:"dialog","aria-modal":"true","aria-label":O.title||void 0,"aria-labelledby":O.title?void 0:o(c),"aria-describedby":o(d),class:T(`${o(a).namespace.value}-overlay-dialog`),style:_e(o(m)),onClick:o(M).onClick,onMousedown:o(M).onMousedown,onMouseup:o(M).onMouseup},[H(o(Ro),{loop:"",trapped:o(u),"focus-start-el":"container",onFocusAfterTrapped:o(w),onFocusAfterReleased:o(k),onFocusoutPrevented:o($),onReleaseRequested:o(S)},{default:U(()=>[o(v)?(_(),oe(X1,et({key:0,ref_key:"dialogContentRef",ref:i},O.$attrs,{center:O.center,"align-center":O.alignCenter,"close-icon":O.closeIcon,draggable:o(R),overflow:O.overflow,fullscreen:O.fullscreen,"header-class":O.headerClass,"body-class":O.bodyClass,"footer-class":O.footerClass,"show-close":O.showClose,title:O.title,"aria-level":O.headerAriaLevel,onClose:o(E)}),Mn({header:U(()=>[O.$slots.title?G(O.$slots,"title",{key:1}):G(O.$slots,"header",{key:0,close:o(E),titleId:o(c),titleClass:o(a).e("title")})]),default:U(()=>[G(O.$slots,"default")]),_:2},[O.$slots.footer?{name:"footer",fn:U(()=>[G(O.$slots,"footer")])}:void 0]),1040,["center","align-center","close-icon","draggable","overflow","fullscreen","header-class","body-class","footer-class","show-close","title","aria-level","onClose"])):J("v-if",!0)]),_:3},8,["trapped","onFocusAfterTrapped","onFocusAfterReleased","onFocusoutPrevented","onReleaseRequested"])],46,["aria-label","aria-labelledby","aria-describedby","onClick","onMousedown","onMouseup"])]),_:3},8,["mask","overlay-class","z-index"]),[[mt,o(u)]])]),_:3},8,["onAfterEnter","onAfterLeave","onBeforeLeave"])]),_:3},8,["to","disabled"]))}});var Q1=fe(J1,[["__file","dialog.vue"]]);const ek=He(Q1),tk=de({direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},contentPosition:{type:String,values:["left","center","right"],default:"center"},borderStyle:{type:Y(String),default:"solid"}}),nk=x({name:"ElDivider"}),lk=x({...nk,props:tk,setup(e){const t=e,n=ue("divider"),l=y(()=>n.cssVar({"border-style":t.borderStyle}));return(a,s)=>(_(),V("div",{class:T([o(n).b(),o(n).m(a.direction)]),style:_e(o(l)),role:"separator"},[a.$slots.default&&a.direction!=="vertical"?(_(),V("div",{key:0,class:T([o(n).e("text"),o(n).is(a.contentPosition)])},[G(a.$slots,"default")],2)):J("v-if",!0)],6))}});var ok=fe(lk,[["__file","divider.vue"]]);const Nf=He(ok),ak=de({..._f,direction:{type:String,default:"rtl",values:["ltr","rtl","ttb","btt"]},size:{type:[String,Number],default:"30%"},withHeader:{type:Boolean,default:!0},modalFade:{type:Boolean,default:!0},headerAriaLevel:{type:String,default:"2"}}),sk=Tf,rk=x({name:"ElDrawer",inheritAttrs:!1}),ik=x({...rk,props:ak,emits:sk,setup(e,{expose:t}){const n=e,l=Xt();ul({scope:"el-drawer",from:"the title slot",replacement:"the header slot",version:"3.0.0",ref:"https://element-plus.org/en-US/component/drawer.html#slots"},y(()=>!!l.title));const a=I(),s=I(),r=ue("drawer"),{t:i}=pt(),{afterEnter:u,afterLeave:c,beforeLeave:d,visible:f,rendered:m,titleId:v,bodyId:h,zIndex:p,onModalClick:g,onOpenAutoFocus:b,onCloseAutoFocus:E,onFocusoutPrevented:C,onCloseRequested:w,handleClose:k}=$f(n,a),S=y(()=>n.direction==="rtl"||n.direction==="ltr"),$=y(()=>zt(n.size));return t({handleClose:k,afterEnter:u,afterLeave:c}),(M,R)=>(_(),oe(o(Po),{to:M.appendTo,disabled:M.appendTo!=="body"?!1:!M.appendToBody},{default:U(()=>[H(an,{name:o(r).b("fade"),onAfterEnter:o(u),onAfterLeave:o(c),onBeforeLeave:o(d),persisted:""},{default:U(()=>[We(H(o(hi),{mask:M.modal,"overlay-class":M.modalClass,"z-index":o(p),onClick:o(g)},{default:U(()=>[H(o(Ro),{loop:"",trapped:o(f),"focus-trap-el":a.value,"focus-start-el":s.value,onFocusAfterTrapped:o(b),onFocusAfterReleased:o(E),onFocusoutPrevented:o(C),onReleaseRequested:o(w)},{default:U(()=>[F("div",et({ref_key:"drawerRef",ref:a,"aria-modal":"true","aria-label":M.title||void 0,"aria-labelledby":M.title?void 0:o(v),"aria-describedby":o(h)},M.$attrs,{class:[o(r).b(),M.direction,o(f)&&"open"],style:o(S)?"width: "+o($):"height: "+o($),role:"dialog",onClick:Le(()=>{},["stop"])}),[F("span",{ref_key:"focusStartRef",ref:s,class:T(o(r).e("sr-focus")),tabindex:"-1"},null,2),M.withHeader?(_(),V("header",{key:0,class:T([o(r).e("header"),M.headerClass])},[M.$slots.title?G(M.$slots,"title",{key:1},()=>[J(" DEPRECATED SLOT ")]):G(M.$slots,"header",{key:0,close:o(k),titleId:o(v),titleClass:o(r).e("title")},()=>[M.$slots.title?J("v-if",!0):(_(),V("span",{key:0,id:o(v),role:"heading","aria-level":M.headerAriaLevel,class:T(o(r).e("title"))},pe(M.title),11,["id","aria-level"]))]),M.showClose?(_(),V("button",{key:2,"aria-label":o(i)("el.drawer.close"),class:T(o(r).e("close-btn")),type:"button",onClick:o(k)},[H(o(Se),{class:T(o(r).e("close"))},{default:U(()=>[H(o(zn))]),_:1},8,["class"])],10,["aria-label","onClick"])):J("v-if",!0)],2)):J("v-if",!0),o(m)?(_(),V("div",{key:1,id:o(h),class:T([o(r).e("body"),M.bodyClass])},[G(M.$slots,"default")],10,["id"])):J("v-if",!0),M.$slots.footer?(_(),V("div",{key:2,class:T([o(r).e("footer"),M.footerClass])},[G(M.$slots,"footer")],2)):J("v-if",!0)],16,["aria-label","aria-labelledby","aria-describedby","onClick"])]),_:3},8,["trapped","focus-trap-el","focus-start-el","onFocusAfterTrapped","onFocusAfterReleased","onFocusoutPrevented","onReleaseRequested"])]),_:3},8,["mask","overlay-class","z-index","onClick"]),[[mt,o(f)]])]),_:3},8,["name","onAfterEnter","onAfterLeave","onBeforeLeave"])]),_:3},8,["to","disabled"]))}});var uk=fe(ik,[["__file","drawer.vue"]]);const ck=He(uk),dk=x({inheritAttrs:!1});function fk(e,t,n,l,a,s){return G(e.$slots,"default")}var vk=fe(dk,[["render",fk],["__file","collection.vue"]]);const pk=x({name:"ElCollectionItem",inheritAttrs:!1});function hk(e,t,n,l,a,s){return G(e.$slots,"default")}var mk=fe(pk,[["render",hk],["__file","collection-item.vue"]]);const If="data-el-collection-item",Mf=e=>{const t=`El${e}Collection`,n=`${t}Item`,l=Symbol(t),a=Symbol(n),s={...vk,name:t,setup(){const i=I(),u=new Map;rt(l,{itemMap:u,getItems:()=>{const d=o(i);if(!d)return[];const f=Array.from(d.querySelectorAll(`[${If}]`));return[...u.values()].sort((v,h)=>f.indexOf(v.ref)-f.indexOf(h.ref))},collectionRef:i})}},r={...mk,name:n,setup(i,{attrs:u}){const c=I(),d=we(l,void 0);rt(a,{collectionItemRef:c}),Xe(()=>{const f=o(c);f&&d.itemMap.set(f,{ref:f,...u})}),Nt(()=>{const f=o(c);d.itemMap.delete(f)})}};return{COLLECTION_INJECTION_KEY:l,COLLECTION_ITEM_INJECTION_KEY:a,ElCollection:s,ElCollectionItem:r}},gk=de({style:{type:Y([String,Array,Object])},currentTabId:{type:Y(String)},defaultCurrentTabId:String,loop:Boolean,dir:{type:String,values:["ltr","rtl"],default:"ltr"},orientation:{type:Y(String)},onBlur:Function,onFocus:Function,onMousedown:Function}),{ElCollection:bk,ElCollectionItem:yk,COLLECTION_INJECTION_KEY:gi,COLLECTION_ITEM_INJECTION_KEY:Ck}=Mf("RovingFocusGroup"),bi=Symbol("elRovingFocusGroup"),Rf=Symbol("elRovingFocusGroupItem"),wk={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"},kk=(e,t)=>e,Sk=(e,t,n)=>{const l=kk(e.code);return wk[l]},Ek=(e,t)=>e.map((n,l)=>e[(l+t)%e.length]),yi=e=>{const{activeElement:t}=document;for(const n of e)if(n===t||(n.focus(),t!==document.activeElement))return},Hu="currentTabIdChange",Ku="rovingFocusGroup.entryFocus",_k={bubbles:!1,cancelable:!0},Tk=x({name:"ElRovingFocusGroupImpl",inheritAttrs:!1,props:gk,emits:[Hu,"entryFocus"],setup(e,{emit:t}){var n;const l=I((n=e.currentTabId||e.defaultCurrentTabId)!=null?n:null),a=I(!1),s=I(!1),r=I(),{getItems:i}=we(gi,void 0),u=y(()=>[{outline:"none"},e.style]),c=p=>{t(Hu,p)},d=()=>{a.value=!0},f=Ht(p=>{var g;(g=e.onMousedown)==null||g.call(e,p)},()=>{s.value=!0}),m=Ht(p=>{var g;(g=e.onFocus)==null||g.call(e,p)},p=>{const g=!o(s),{target:b,currentTarget:E}=p;if(b===E&&g&&!o(a)){const C=new Event(Ku,_k);if(E==null||E.dispatchEvent(C),!C.defaultPrevented){const w=i().filter(R=>R.focusable),k=w.find(R=>R.active),S=w.find(R=>R.id===o(l)),M=[k,S,...w].filter(Boolean).map(R=>R.ref);yi(M)}}s.value=!1}),v=Ht(p=>{var g;(g=e.onBlur)==null||g.call(e,p)},()=>{a.value=!1}),h=(...p)=>{t("entryFocus",...p)};rt(bi,{currentTabbedId:Ic(l),loop:wt(e,"loop"),tabIndex:y(()=>o(a)?-1:0),rovingFocusGroupRef:r,rovingFocusGroupRootStyle:u,orientation:wt(e,"orientation"),dir:wt(e,"dir"),onItemFocus:c,onItemShiftTab:d,onBlur:v,onFocus:m,onMousedown:f}),ie(()=>e.currentTabId,p=>{l.value=p??null}),xt(r,Ku,h)}});function $k(e,t,n,l,a,s){return G(e.$slots,"default")}var Nk=fe(Tk,[["render",$k],["__file","roving-focus-group-impl.vue"]]);const Ik=x({name:"ElRovingFocusGroup",components:{ElFocusGroupCollection:bk,ElRovingFocusGroupImpl:Nk}});function Mk(e,t,n,l,a,s){const r=ht("el-roving-focus-group-impl"),i=ht("el-focus-group-collection");return _(),oe(i,null,{default:U(()=>[H(r,On(cl(e.$attrs)),{default:U(()=>[G(e.$slots,"default")]),_:3},16)]),_:3})}var Rk=fe(Ik,[["render",Mk],["__file","roving-focus-group.vue"]]);const Va=de({trigger:mo.trigger,triggerKeys:{type:Y(Array),default:()=>[Ce.enter,Ce.numpadEnter,Ce.space,Ce.down]},effect:{...Wt.effect,default:"light"},type:{type:Y(String)},placement:{type:Y(String),default:"bottom"},popperOptions:{type:Y(Object),default:()=>({})},id:String,size:{type:String,default:""},splitButton:Boolean,hideOnClick:{type:Boolean,default:!0},loop:{type:Boolean,default:!0},showTimeout:{type:Number,default:150},hideTimeout:{type:Number,default:150},tabindex:{type:Y([Number,String]),default:0},maxHeight:{type:Y([Number,String]),default:""},popperClass:{type:String,default:""},disabled:Boolean,role:{type:String,values:yd,default:"menu"},buttonProps:{type:Y(Object)},teleported:Wt.teleported,persistent:{type:Boolean,default:!0}}),Pf=de({command:{type:[Object,String,Number],default:()=>({})},disabled:Boolean,divided:Boolean,textValue:String,icon:{type:$t}}),Pk=de({onKeydown:{type:Y(Function)}}),Ok=[Ce.down,Ce.pageDown,Ce.home],Of=[Ce.up,Ce.pageUp,Ce.end],Lk=[...Ok,...Of],{ElCollection:Bk,ElCollectionItem:Vk,COLLECTION_INJECTION_KEY:Dk,COLLECTION_ITEM_INJECTION_KEY:Ak}=Mf("Dropdown"),Ts=Symbol("elDropdown"),Lf="elDropdown",{ButtonGroup:Fk}=on,xk=x({name:"ElDropdown",components:{ElButton:on,ElButtonGroup:Fk,ElScrollbar:jn,ElDropdownCollection:Bk,ElTooltip:un,ElRovingFocusGroup:Rk,ElOnlyChild:Sd,ElIcon:Se,ArrowDown:nl},props:Va,emits:["visible-change","click","command"],setup(e,{emit:t}){const n=lt(),l=ue("dropdown"),{t:a}=pt(),s=I(),r=I(),i=I(),u=I(),c=I(null),d=I(null),f=I(!1),m=y(()=>({maxHeight:zt(e.maxHeight)})),v=y(()=>[l.m(w.value)]),h=y(()=>ln(e.trigger)),p=sn().value,g=y(()=>e.id||p);ie([s,h],([L,z],[B])=>{var A,ne,j;(A=B==null?void 0:B.$el)!=null&&A.removeEventListener&&B.$el.removeEventListener("pointerenter",S),(ne=L==null?void 0:L.$el)!=null&&ne.removeEventListener&&L.$el.removeEventListener("pointerenter",S),(j=L==null?void 0:L.$el)!=null&&j.addEventListener&&z.includes("hover")&&L.$el.addEventListener("pointerenter",S)},{immediate:!0}),Nt(()=>{var L,z;(z=(L=s.value)==null?void 0:L.$el)!=null&&z.removeEventListener&&s.value.$el.removeEventListener("pointerenter",S)});function b(){E()}function E(){var L;(L=i.value)==null||L.onClose()}function C(){var L;(L=i.value)==null||L.onOpen()}const w=Gt();function k(...L){t("command",...L)}function S(){var L,z;(z=(L=s.value)==null?void 0:L.$el)==null||z.focus()}function $(){}function M(){const L=o(u);h.value.includes("hover")&&(L==null||L.focus()),d.value=null}function R(L){d.value=L}function N(L){f.value||(L.preventDefault(),L.stopImmediatePropagation())}function O(){t("visible-change",!0)}function P(L){var z;(L==null?void 0:L.type)==="keydown"&&((z=u.value)==null||z.focus())}function W(){t("visible-change",!1)}return rt(Ts,{contentRef:u,role:y(()=>e.role),triggerId:g,isUsingKeyboard:f,onItemEnter:$,onItemLeave:M}),rt(Lf,{instance:n,dropdownSize:w,handleClick:b,commandHandler:k,trigger:wt(e,"trigger"),hideOnClick:wt(e,"hideOnClick")}),{t:a,ns:l,scrollbar:c,wrapStyle:m,dropdownTriggerKls:v,dropdownSize:w,triggerId:g,currentTabId:d,handleCurrentTabIdChange:R,handlerMainButtonClick:L=>{t("click",L)},handleEntryFocus:N,handleClose:E,handleOpen:C,handleBeforeShowTooltip:O,handleShowTooltip:P,handleBeforeHideTooltip:W,onFocusAfterTrapped:L=>{var z,B;L.preventDefault(),(B=(z=u.value)==null?void 0:z.focus)==null||B.call(z,{preventScroll:!0})},popperRef:i,contentRef:u,triggeringElementRef:s,referenceElementRef:r}}});function zk(e,t,n,l,a,s){var r;const i=ht("el-dropdown-collection"),u=ht("el-roving-focus-group"),c=ht("el-scrollbar"),d=ht("el-only-child"),f=ht("el-tooltip"),m=ht("el-button"),v=ht("arrow-down"),h=ht("el-icon"),p=ht("el-button-group");return _(),V("div",{class:T([e.ns.b(),e.ns.is("disabled",e.disabled)])},[H(f,{ref:"popperRef",role:e.role,effect:e.effect,"fallback-placements":["bottom","top"],"popper-options":e.popperOptions,"gpu-acceleration":!1,"hide-after":e.trigger==="hover"?e.hideTimeout:0,"manual-mode":!0,placement:e.placement,"popper-class":[e.ns.e("popper"),e.popperClass],"reference-element":(r=e.referenceElementRef)==null?void 0:r.$el,trigger:e.trigger,"trigger-keys":e.triggerKeys,"trigger-target-el":e.contentRef,"show-after":e.trigger==="hover"?e.showTimeout:0,"stop-popper-mouse-event":!1,"virtual-ref":e.triggeringElementRef,"virtual-triggering":e.splitButton,disabled:e.disabled,transition:`${e.ns.namespace.value}-zoom-in-top`,teleported:e.teleported,pure:"",persistent:e.persistent,onBeforeShow:e.handleBeforeShowTooltip,onShow:e.handleShowTooltip,onBeforeHide:e.handleBeforeHideTooltip},Mn({content:U(()=>[H(c,{ref:"scrollbar","wrap-style":e.wrapStyle,tag:"div","view-class":e.ns.e("list")},{default:U(()=>[H(u,{loop:e.loop,"current-tab-id":e.currentTabId,orientation:"horizontal",onCurrentTabIdChange:e.handleCurrentTabIdChange,onEntryFocus:e.handleEntryFocus},{default:U(()=>[H(i,null,{default:U(()=>[G(e.$slots,"dropdown")]),_:3})]),_:3},8,["loop","current-tab-id","onCurrentTabIdChange","onEntryFocus"])]),_:3},8,["wrap-style","view-class"])]),_:2},[e.splitButton?void 0:{name:"default",fn:U(()=>[H(d,{id:e.triggerId,ref:"triggeringElementRef",role:"button",tabindex:e.tabindex},{default:U(()=>[G(e.$slots,"default")]),_:3},8,["id","tabindex"])])}]),1032,["role","effect","popper-options","hide-after","placement","popper-class","reference-element","trigger","trigger-keys","trigger-target-el","show-after","virtual-ref","virtual-triggering","disabled","transition","teleported","persistent","onBeforeShow","onShow","onBeforeHide"]),e.splitButton?(_(),oe(p,{key:0},{default:U(()=>[H(m,et({ref:"referenceElementRef"},e.buttonProps,{size:e.dropdownSize,type:e.type,disabled:e.disabled,tabindex:e.tabindex,onClick:e.handlerMainButtonClick}),{default:U(()=>[G(e.$slots,"default")]),_:3},16,["size","type","disabled","tabindex","onClick"]),H(m,et({id:e.triggerId,ref:"triggeringElementRef"},e.buttonProps,{role:"button",size:e.dropdownSize,type:e.type,class:e.ns.e("caret-button"),disabled:e.disabled,tabindex:e.tabindex,"aria-label":e.t("el.dropdown.toggleDropdown")}),{default:U(()=>[H(h,{class:T(e.ns.e("icon"))},{default:U(()=>[H(v)]),_:1},8,["class"])]),_:1},16,["id","size","type","class","disabled","tabindex","aria-label"])]),_:3})):J("v-if",!0)],2)}var Hk=fe(xk,[["render",zk],["__file","dropdown.vue"]]);const Kk=x({components:{ElRovingFocusCollectionItem:yk},props:{focusable:{type:Boolean,default:!0},active:Boolean},emits:["mousedown","focus","keydown"],setup(e,{emit:t}){const{currentTabbedId:n,loop:l,onItemFocus:a,onItemShiftTab:s}=we(bi,void 0),{getItems:r}=we(gi,void 0),i=sn(),u=I(),c=Ht(v=>{t("mousedown",v)},v=>{e.focusable?a(o(i)):v.preventDefault()}),d=Ht(v=>{t("focus",v)},()=>{a(o(i))}),f=Ht(v=>{t("keydown",v)},v=>{const{code:h,shiftKey:p,target:g,currentTarget:b}=v;if(h===Ce.tab&&p){s();return}if(g!==b)return;const E=Sk(v);if(E){v.preventDefault();let w=r().filter(k=>k.focusable).map(k=>k.ref);switch(E){case"last":{w.reverse();break}case"prev":case"next":{E==="prev"&&w.reverse();const k=w.indexOf(b);w=l.value?Ek(w,k+1):w.slice(k+1);break}}Ee(()=>{yi(w)})}}),m=y(()=>n.value===o(i));return rt(Rf,{rovingFocusGroupItemRef:u,tabIndex:y(()=>o(m)?0:-1),handleMousedown:c,handleFocus:d,handleKeydown:f}),{id:i,handleKeydown:f,handleFocus:d,handleMousedown:c}}});function Wk(e,t,n,l,a,s){const r=ht("el-roving-focus-collection-item");return _(),oe(r,{id:e.id,focusable:e.focusable,active:e.active},{default:U(()=>[G(e.$slots,"default")]),_:3},8,["id","focusable","active"])}var jk=fe(Kk,[["render",Wk],["__file","roving-focus-item.vue"]]);const Uk=x({name:"DropdownItemImpl",components:{ElIcon:Se},props:Pf,emits:["pointermove","pointerleave","click","clickimpl"],setup(e,{emit:t}){const n=ue("dropdown"),{role:l}=we(Ts,void 0),{collectionItemRef:a}=we(Ak,void 0),{collectionItemRef:s}=we(Ck,void 0),{rovingFocusGroupItemRef:r,tabIndex:i,handleFocus:u,handleKeydown:c,handleMousedown:d}=we(Rf,void 0),f=_s(a,s,r),m=y(()=>l.value==="menu"?"menuitem":l.value==="navigation"?"link":"button"),v=Ht(h=>{if([Ce.enter,Ce.numpadEnter,Ce.space].includes(h.code))return h.preventDefault(),h.stopImmediatePropagation(),t("clickimpl",h),!0},c);return{ns:n,itemRef:f,dataset:{[If]:""},role:m,tabIndex:i,handleFocus:u,handleKeydown:v,handleMousedown:d}}});function Yk(e,t,n,l,a,s){const r=ht("el-icon");return _(),V(Oe,null,[e.divided?(_(),V("li",{key:0,role:"separator",class:T(e.ns.bem("menu","item","divided"))},null,2)):J("v-if",!0),F("li",et({ref:e.itemRef},{...e.dataset,...e.$attrs},{"aria-disabled":e.disabled,class:[e.ns.be("menu","item"),e.ns.is("disabled",e.disabled)],tabindex:e.tabIndex,role:e.role,onClick:i=>e.$emit("clickimpl",i),onFocus:e.handleFocus,onKeydown:Le(e.handleKeydown,["self"]),onMousedown:e.handleMousedown,onPointermove:i=>e.$emit("pointermove",i),onPointerleave:i=>e.$emit("pointerleave",i)}),[e.icon?(_(),oe(r,{key:0},{default:U(()=>[(_(),oe(Ge(e.icon)))]),_:1})):J("v-if",!0),G(e.$slots,"default")],16,["aria-disabled","tabindex","role","onClick","onFocus","onKeydown","onMousedown","onPointermove","onPointerleave"])],64)}var qk=fe(Uk,[["render",Yk],["__file","dropdown-item-impl.vue"]]);const Bf=()=>{const e=we(Lf,{}),t=y(()=>e==null?void 0:e.dropdownSize);return{elDropdown:e,_elDropdownSize:t}},Gk=x({name:"ElDropdownItem",components:{ElDropdownCollectionItem:Vk,ElRovingFocusItem:jk,ElDropdownItemImpl:qk},inheritAttrs:!1,props:Pf,emits:["pointermove","pointerleave","click"],setup(e,{emit:t,attrs:n}){const{elDropdown:l}=Bf(),a=lt(),s=I(null),r=y(()=>{var v,h;return(h=(v=o(s))==null?void 0:v.textContent)!=null?h:""}),{onItemEnter:i,onItemLeave:u}=we(Ts,void 0),c=Ht(v=>(t("pointermove",v),v.defaultPrevented),_u(v=>{if(e.disabled){u(v);return}const h=v.currentTarget;h===document.activeElement||h.contains(document.activeElement)||(i(v),v.defaultPrevented||h==null||h.focus())})),d=Ht(v=>(t("pointerleave",v),v.defaultPrevented),_u(u)),f=Ht(v=>{if(!e.disabled)return t("click",v),v.type!=="keydown"&&v.defaultPrevented},v=>{var h,p,g;if(e.disabled){v.stopImmediatePropagation();return}(h=l==null?void 0:l.hideOnClick)!=null&&h.value&&((p=l.handleClick)==null||p.call(l)),(g=l.commandHandler)==null||g.call(l,e.command,a,v)}),m=y(()=>({...e,...n}));return{handleClick:f,handlePointerMove:c,handlePointerLeave:d,textContent:r,propsAndAttrs:m}}});function Xk(e,t,n,l,a,s){var r;const i=ht("el-dropdown-item-impl"),u=ht("el-roving-focus-item"),c=ht("el-dropdown-collection-item");return _(),oe(c,{disabled:e.disabled,"text-value":(r=e.textValue)!=null?r:e.textContent},{default:U(()=>[H(u,{focusable:!e.disabled},{default:U(()=>[H(i,et(e.propsAndAttrs,{onPointerleave:e.handlePointerLeave,onPointermove:e.handlePointerMove,onClickimpl:e.handleClick}),{default:U(()=>[G(e.$slots,"default")]),_:3},16,["onPointerleave","onPointermove","onClickimpl"])]),_:3},8,["focusable"])]),_:3},8,["disabled","text-value"])}var Vf=fe(Gk,[["render",Xk],["__file","dropdown-item.vue"]]);const Zk=x({name:"ElDropdownMenu",props:Pk,setup(e){const t=ue("dropdown"),{_elDropdownSize:n}=Bf(),l=n.value,{focusTrapRef:a,onKeydown:s}=we(ei,void 0),{contentRef:r,role:i,triggerId:u}=we(Ts,void 0),{collectionRef:c,getItems:d}=we(Dk,void 0),{rovingFocusGroupRef:f,rovingFocusGroupRootStyle:m,tabIndex:v,onBlur:h,onFocus:p,onMousedown:g}=we(bi,void 0),{collectionRef:b}=we(gi,void 0),E=y(()=>[t.b("menu"),t.bm("menu",l==null?void 0:l.value)]),C=_s(r,c,a,f,b),w=Ht(S=>{var $;($=e.onKeydown)==null||$.call(e,S)},S=>{const{currentTarget:$,code:M,target:R}=S;if($.contains(R),Ce.tab===M&&S.stopImmediatePropagation(),S.preventDefault(),R!==o(r)||!Lk.includes(M))return;const O=d().filter(P=>!P.disabled).map(P=>P.ref);Of.includes(M)&&O.reverse(),yi(O)});return{size:l,rovingFocusGroupRootStyle:m,tabIndex:v,dropdownKls:E,role:i,triggerId:u,dropdownListWrapperRef:C,handleKeydown:S=>{w(S),s(S)},onBlur:h,onFocus:p,onMousedown:g}}});function Jk(e,t,n,l,a,s){return _(),V("ul",{ref:e.dropdownListWrapperRef,class:T(e.dropdownKls),style:_e(e.rovingFocusGroupRootStyle),tabindex:-1,role:e.role,"aria-labelledby":e.triggerId,onBlur:e.onBlur,onFocus:e.onFocus,onKeydown:Le(e.handleKeydown,["self"]),onMousedown:Le(e.onMousedown,["self"])},[G(e.$slots,"default")],46,["role","aria-labelledby","onBlur","onFocus","onKeydown","onMousedown"])}var Df=fe(Zk,[["render",Jk],["__file","dropdown-menu.vue"]]);const Qk=He(Hk,{DropdownItem:Vf,DropdownMenu:Df}),eS=At(Vf),tS=At(Df),nS=x({name:"ImgEmpty"}),lS=x({...nS,setup(e){const t=ue("empty"),n=sn();return(l,a)=>(_(),V("svg",{viewBox:"0 0 79 86",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"},[F("defs",null,[F("linearGradient",{id:`linearGradient-1-${o(n)}`,x1:"38.8503086%",y1:"0%",x2:"61.1496914%",y2:"100%"},[F("stop",{"stop-color":`var(${o(t).cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,["stop-color"]),F("stop",{"stop-color":`var(${o(t).cssVarBlockName("fill-color-4")})`,offset:"100%"},null,8,["stop-color"])],8,["id"]),F("linearGradient",{id:`linearGradient-2-${o(n)}`,x1:"0%",y1:"9.5%",x2:"100%",y2:"90.5%"},[F("stop",{"stop-color":`var(${o(t).cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,["stop-color"]),F("stop",{"stop-color":`var(${o(t).cssVarBlockName("fill-color-6")})`,offset:"100%"},null,8,["stop-color"])],8,["id"]),F("rect",{id:`path-3-${o(n)}`,x:"0",y:"0",width:"17",height:"36"},null,8,["id"])]),F("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[F("g",{transform:"translate(-1268.000000, -535.000000)"},[F("g",{transform:"translate(1268.000000, 535.000000)"},[F("path",{d:"M39.5,86 C61.3152476,86 79,83.9106622 79,81.3333333 C79,78.7560045 57.3152476,78 35.5,78 C13.6847524,78 0,78.7560045 0,81.3333333 C0,83.9106622 17.6847524,86 39.5,86 Z",fill:`var(${o(t).cssVarBlockName("fill-color-3")})`},null,8,["fill"]),F("polygon",{fill:`var(${o(t).cssVarBlockName("fill-color-7")})`,transform:"translate(27.500000, 51.500000) scale(1, -1) translate(-27.500000, -51.500000) ",points:"13 58 53 58 42 45 2 45"},null,8,["fill"]),F("g",{transform:"translate(34.500000, 31.500000) scale(-1, 1) rotate(-25.000000) translate(-34.500000, -31.500000) translate(7.000000, 10.000000)"},[F("polygon",{fill:`var(${o(t).cssVarBlockName("fill-color-7")})`,transform:"translate(11.500000, 5.000000) scale(1, -1) translate(-11.500000, -5.000000) ",points:"2.84078316e-14 3 18 3 23 7 5 7"},null,8,["fill"]),F("polygon",{fill:`var(${o(t).cssVarBlockName("fill-color-5")})`,points:"-3.69149156e-15 7 38 7 38 43 -3.69149156e-15 43"},null,8,["fill"]),F("rect",{fill:`url(#linearGradient-1-${o(n)})`,transform:"translate(46.500000, 25.000000) scale(-1, 1) translate(-46.500000, -25.000000) ",x:"38",y:"7",width:"17",height:"36"},null,8,["fill"]),F("polygon",{fill:`var(${o(t).cssVarBlockName("fill-color-2")})`,transform:"translate(39.500000, 3.500000) scale(-1, 1) translate(-39.500000, -3.500000) ",points:"24 7 41 7 55 -3.63806207e-12 38 -3.63806207e-12"},null,8,["fill"])]),F("rect",{fill:`url(#linearGradient-2-${o(n)})`,x:"13",y:"45",width:"40",height:"36"},null,8,["fill"]),F("g",{transform:"translate(53.000000, 45.000000)"},[F("use",{fill:`var(${o(t).cssVarBlockName("fill-color-8")})`,transform:"translate(8.500000, 18.000000) scale(-1, 1) translate(-8.500000, -18.000000) ","xlink:href":`#path-3-${o(n)}`},null,8,["fill","xlink:href"]),F("polygon",{fill:`var(${o(t).cssVarBlockName("fill-color-9")})`,mask:`url(#mask-4-${o(n)})`,transform:"translate(12.000000, 9.000000) scale(-1, 1) translate(-12.000000, -9.000000) ",points:"7 0 24 0 20 18 7 16.5"},null,8,["fill","mask"])]),F("polygon",{fill:`var(${o(t).cssVarBlockName("fill-color-2")})`,transform:"translate(66.000000, 51.500000) scale(-1, 1) translate(-66.000000, -51.500000) ",points:"62 45 79 45 70 58 53 58"},null,8,["fill"])])])])]))}});var oS=fe(lS,[["__file","img-empty.vue"]]);const aS=de({image:{type:String,default:""},imageSize:Number,description:{type:String,default:""}}),sS=x({name:"ElEmpty"}),rS=x({...sS,props:aS,setup(e){const t=e,{t:n}=pt(),l=ue("empty"),a=y(()=>t.description||n("el.table.emptyText")),s=y(()=>({width:zt(t.imageSize)}));return(r,i)=>(_(),V("div",{class:T(o(l).b())},[F("div",{class:T(o(l).e("image")),style:_e(o(s))},[r.image?(_(),V("img",{key:0,src:r.image,ondragstart:"return false"},null,8,["src"])):G(r.$slots,"image",{key:1},()=>[H(oS)])],6),F("div",{class:T(o(l).e("description"))},[r.$slots.description?G(r.$slots,"description",{key:0}):(_(),V("p",{key:1},pe(o(a)),1))],2),r.$slots.default?(_(),V("div",{key:0,class:T(o(l).e("bottom"))},[G(r.$slots,"default")],2)):J("v-if",!0)],2))}});var iS=fe(rS,[["__file","empty.vue"]]);const Af=He(iS),uS=de({size:{type:String,values:tl},disabled:Boolean}),cS=de({...uS,model:Object,rules:{type:Y(Object)},labelPosition:{type:String,values:["left","right","top"],default:"right"},requireAsteriskPosition:{type:String,values:["left","right"],default:"left"},labelWidth:{type:[String,Number],default:""},labelSuffix:{type:String,default:""},inline:Boolean,inlineMessage:Boolean,statusIcon:Boolean,showMessage:{type:Boolean,default:!0},validateOnRuleChange:{type:Boolean,default:!0},hideRequiredAsterisk:Boolean,scrollToError:Boolean,scrollIntoViewOptions:{type:[Object,Boolean],default:!0}}),dS={validate:(e,t,n)=>(ke(e)||Ve(e))&&_t(t)&&Ve(n)};function fS(){const e=I([]),t=y(()=>{if(!e.value.length)return"0";const s=Math.max(...e.value);return s?`${s}px`:""});function n(s){const r=e.value.indexOf(s);return r===-1&&t.value,r}function l(s,r){if(s&&r){const i=n(r);e.value.splice(i,1,s)}else s&&e.value.push(s)}function a(s){const r=n(s);r>-1&&e.value.splice(r,1)}return{autoLabelWidth:t,registerLabelWidth:l,deregisterLabelWidth:a}}const Ia=(e,t)=>{const n=ln(t).map(l=>ke(l)?l.join("."):l);return n.length>0?e.filter(l=>l.propString&&n.includes(l.propString)):e},vS="ElForm",pS=x({name:vS}),hS=x({...pS,props:cS,emits:dS,setup(e,{expose:t,emit:n}){const l=e,a=I(),s=kt([]),r=Gt(),i=ue("form"),u=y(()=>{const{labelPosition:w,inline:k}=l;return[i.b(),i.m(r.value||"default"),{[i.m(`label-${w}`)]:w,[i.m("inline")]:k}]}),c=w=>Ia(s,[w])[0],d=w=>{s.push(w)},f=w=>{w.prop&&s.splice(s.indexOf(w),1)},m=(w=[])=>{l.model&&Ia(s,w).forEach(k=>k.resetField())},v=(w=[])=>{Ia(s,w).forEach(k=>k.clearValidate())},h=y(()=>!!l.model),p=w=>{if(s.length===0)return[];const k=Ia(s,w);return k.length?k:[]},g=async w=>E(void 0,w),b=async(w=[])=>{if(!h.value)return!1;const k=p(w);if(k.length===0)return!0;let S={};for(const $ of k)try{await $.validate(""),$.validateState==="error"&&$.resetField()}catch(M){S={...S,...M}}return Object.keys(S).length===0?!0:Promise.reject(S)},E=async(w=[],k)=>{let S=!1;const $=!Qe(k);try{return S=await b(w),S===!0&&await(k==null?void 0:k(S)),S}catch(M){if(M instanceof Error)throw M;const R=M;if(l.scrollToError&&a.value){const N=a.value.querySelector(`.${i.b()}-item.is-error`);N==null||N.scrollIntoView(l.scrollIntoViewOptions)}return!S&&await(k==null?void 0:k(!1,R)),$&&Promise.reject(R)}},C=w=>{var k;const S=c(w);S&&((k=S.$el)==null||k.scrollIntoView(l.scrollIntoViewOptions))};return ie(()=>l.rules,()=>{l.validateOnRuleChange&&g().catch(w=>void 0)},{deep:!0,flush:"post"}),rt(Jl,kt({...nn(l),emit:n,resetFields:m,clearValidate:v,validateField:E,getField:c,addField:d,removeField:f,...fS()})),t({validate:g,validateField:E,resetFields:m,clearValidate:v,scrollToField:C,getField:c,fields:s}),(w,k)=>(_(),V("form",{ref_key:"formRef",ref:a,class:T(o(u))},[G(w.$slots,"default")],2))}});var mS=fe(hS,[["__file","form.vue"]]);const gS=["","error","validating","success"],bS=de({label:String,labelWidth:{type:[String,Number],default:""},labelPosition:{type:String,values:["left","right","top",""],default:""},prop:{type:Y([String,Array])},required:{type:Boolean,default:void 0},rules:{type:Y([Object,Array])},error:String,validateStatus:{type:String,values:gS},for:String,inlineMessage:{type:[String,Boolean],default:""},showMessage:{type:Boolean,default:!0},size:{type:String,values:tl}}),Wu="ElLabelWrap";var yS=x({name:Wu,props:{isAutoWidth:Boolean,updateAll:Boolean},setup(e,{slots:t}){const n=we(Jl,void 0),l=we(el);l||jt(Wu,"usage: ");const a=ue("form"),s=I(),r=I(0),i=()=>{var d;if((d=s.value)!=null&&d.firstElementChild){const f=window.getComputedStyle(s.value.firstElementChild).width;return Math.ceil(Number.parseFloat(f))}else return 0},u=(d="update")=>{Ee(()=>{t.default&&e.isAutoWidth&&(d==="update"?r.value=i():d==="remove"&&(n==null||n.deregisterLabelWidth(r.value)))})},c=()=>u("update");return Xe(()=>{c()}),Nt(()=>{u("remove")}),hl(()=>c()),ie(r,(d,f)=>{e.updateAll&&(n==null||n.registerLabelWidth(d,f))}),Ft(y(()=>{var d,f;return(f=(d=s.value)==null?void 0:d.firstElementChild)!=null?f:null}),c),()=>{var d,f;if(!t)return null;const{isAutoWidth:m}=e;if(m){const v=n==null?void 0:n.autoLabelWidth,h=l==null?void 0:l.hasLabel,p={};if(h&&v&&v!=="auto"){const g=Math.max(0,Number.parseInt(v,10)-r.value),E=(l.labelPosition||n.labelPosition)==="left"?"marginRight":"marginLeft";g&&(p[E]=`${g}px`)}return H("div",{ref:s,class:[a.be("item","label-wrap")],style:p},[(d=t.default)==null?void 0:d.call(t)])}else return H(Oe,{ref:s},[(f=t.default)==null?void 0:f.call(t)])}}});const CS=x({name:"ElFormItem"}),wS=x({...CS,props:bS,setup(e,{expose:t}){const n=e,l=Xt(),a=we(Jl,void 0),s=we(el,void 0),r=Gt(void 0,{formItem:!1}),i=ue("form-item"),u=sn().value,c=I([]),d=I(""),f=Lp(d,100),m=I(""),v=I();let h,p=!1;const g=y(()=>n.labelPosition||(a==null?void 0:a.labelPosition)),b=y(()=>{if(g.value==="top")return{};const se=zt(n.labelWidth||(a==null?void 0:a.labelWidth)||"");return se?{width:se}:{}}),E=y(()=>{if(g.value==="top"||a!=null&&a.inline)return{};if(!n.label&&!n.labelWidth&&N)return{};const se=zt(n.labelWidth||(a==null?void 0:a.labelWidth)||"");return!n.label&&!l.label?{marginLeft:se}:{}}),C=y(()=>[i.b(),i.m(r.value),i.is("error",d.value==="error"),i.is("validating",d.value==="validating"),i.is("success",d.value==="success"),i.is("required",D.value||n.required),i.is("no-asterisk",a==null?void 0:a.hideRequiredAsterisk),(a==null?void 0:a.requireAsteriskPosition)==="right"?"asterisk-right":"asterisk-left",{[i.m("feedback")]:a==null?void 0:a.statusIcon,[i.m(`label-${g.value}`)]:g.value}]),w=y(()=>_t(n.inlineMessage)?n.inlineMessage:(a==null?void 0:a.inlineMessage)||!1),k=y(()=>[i.e("error"),{[i.em("error","inline")]:w.value}]),S=y(()=>n.prop?ke(n.prop)?n.prop.join("."):n.prop:""),$=y(()=>!!(n.label||l.label)),M=y(()=>{var se;return(se=n.for)!=null?se:c.value.length===1?c.value[0]:void 0}),R=y(()=>!M.value&&$.value),N=!!s,O=y(()=>{const se=a==null?void 0:a.model;if(!(!se||!n.prop))return Wo(se,n.prop).value}),P=y(()=>{const{required:se}=n,ge=[];n.rules&&ge.push(...ln(n.rules));const Be=a==null?void 0:a.rules;if(Be&&n.prop){const te=Wo(Be,n.prop).value;te&&ge.push(...ln(te))}if(se!==void 0){const te=ge.map((ce,Ie)=>[ce,Ie]).filter(([ce])=>Object.keys(ce).includes("required"));if(te.length>0)for(const[ce,Ie]of te)ce.required!==se&&(ge[Ie]={...ce,required:se});else ge.push({required:se})}return ge}),W=y(()=>P.value.length>0),K=se=>P.value.filter(Be=>!Be.trigger||!se?!0:ke(Be.trigger)?Be.trigger.includes(se):Be.trigger===se).map(({trigger:Be,...te})=>te),D=y(()=>P.value.some(se=>se.required)),L=y(()=>{var se;return f.value==="error"&&n.showMessage&&((se=a==null?void 0:a.showMessage)!=null?se:!0)}),z=y(()=>`${n.label||""}${(a==null?void 0:a.labelSuffix)||""}`),B=se=>{d.value=se},A=se=>{var ge,Be;const{errors:te,fields:ce}=se;(!te||!ce)&&console.error(se),B("error"),m.value=te?(Be=(ge=te==null?void 0:te[0])==null?void 0:ge.message)!=null?Be:`${n.prop} is required`:"",a==null||a.emit("validate",n.prop,!1,m.value)},ne=()=>{B("success"),a==null||a.emit("validate",n.prop,!0,"")},j=async se=>{const ge=S.value;return new nh({[ge]:se}).validate({[ge]:O.value},{firstFields:!0}).then(()=>(ne(),!0)).catch(te=>(A(te),Promise.reject(te)))},Q=async(se,ge)=>{if(p||!n.prop)return!1;const Be=Qe(ge);if(!W.value)return ge==null||ge(!1),!1;const te=K(se);return te.length===0?(ge==null||ge(!0),!0):(B("validating"),j(te).then(()=>(ge==null||ge(!0),!0)).catch(ce=>{const{fields:Ie}=ce;return ge==null||ge(!1,Ie),Be?!1:Promise.reject(Ie)}))},Z=()=>{B(""),m.value="",p=!1},ee=async()=>{const se=a==null?void 0:a.model;if(!se||!n.prop)return;const ge=Wo(se,n.prop);p=!0,ge.value=lu(h),await Ee(),Z(),p=!1},ae=se=>{c.value.includes(se)||c.value.push(se)},re=se=>{c.value=c.value.filter(ge=>ge!==se)};ie(()=>n.error,se=>{m.value=se||"",B(se?"error":"")},{immediate:!0}),ie(()=>n.validateStatus,se=>B(se||""));const le=kt({...nn(n),$el:v,size:r,validateMessage:m,validateState:d,labelId:u,inputIds:c,isGroup:R,hasLabel:$,fieldValue:O,addInputId:ae,removeInputId:re,resetField:ee,clearValidate:Z,validate:Q,propString:S});return rt(el,le),Xe(()=>{n.prop&&(a==null||a.addField(le),h=lu(O.value))}),Nt(()=>{a==null||a.removeField(le)}),t({size:r,validateMessage:m,validateState:d,validate:Q,clearValidate:Z,resetField:ee}),(se,ge)=>{var Be;return _(),V("div",{ref_key:"formItemRef",ref:v,class:T(o(C)),role:o(R)?"group":void 0,"aria-labelledby":o(R)?o(u):void 0},[H(o(yS),{"is-auto-width":o(b).width==="auto","update-all":((Be=o(a))==null?void 0:Be.labelWidth)==="auto"},{default:U(()=>[o($)?(_(),oe(Ge(o(M)?"label":"div"),{key:0,id:o(u),for:o(M),class:T(o(i).e("label")),style:_e(o(b))},{default:U(()=>[G(se.$slots,"label",{label:o(z)},()=>[st(pe(o(z)),1)])]),_:3},8,["id","for","class","style"])):J("v-if",!0)]),_:3},8,["is-auto-width","update-all"]),F("div",{class:T(o(i).e("content")),style:_e(o(E))},[G(se.$slots,"default"),H(Oc,{name:`${o(i).namespace.value}-zoom-in-top`},{default:U(()=>[o(L)?G(se.$slots,"error",{key:0,error:m.value},()=>[F("div",{class:T(o(k))},pe(m.value),3)]):J("v-if",!0)]),_:3},8,["name"])],6)],10,["role","aria-labelledby"])}}});var Ff=fe(wS,[["__file","form-item.vue"]]);const kS=He(mS,{FormItem:Ff}),SS=At(Ff),ES=de({urlList:{type:Y(Array),default:()=>Vt([])},zIndex:{type:Number},initialIndex:{type:Number,default:0},infinite:{type:Boolean,default:!0},hideOnClickModal:Boolean,teleported:Boolean,closeOnPressEscape:{type:Boolean,default:!0},zoomRate:{type:Number,default:1.2},minScale:{type:Number,default:.2},maxScale:{type:Number,default:7},showProgress:Boolean,crossorigin:{type:Y(String)}}),_S={close:()=>!0,switch:e=>Te(e),rotate:e=>Te(e)},TS=x({name:"ElImageViewer"}),$S=x({...TS,props:ES,emits:_S,setup(e,{expose:t,emit:n}){var l;const a=e,s={CONTAIN:{name:"contain",icon:$l(um)},ORIGINAL:{name:"original",icon:$l(Im)}};let r,i="";const{t:u}=pt(),c=ue("image-viewer"),{nextZIndex:d}=Mo(),f=I(),m=I([]),v=Bp(),h=I(!0),p=I(a.initialIndex),g=Lt(s.CONTAIN),b=I({scale:1,deg:0,offsetX:0,offsetY:0,enableTransition:!1}),E=I((l=a.zIndex)!=null?l:d()),C=y(()=>{const{urlList:re}=a;return re.length<=1}),w=y(()=>p.value===0),k=y(()=>p.value===a.urlList.length-1),S=y(()=>a.urlList[p.value]),$=y(()=>[c.e("btn"),c.e("prev"),c.is("disabled",!a.infinite&&w.value)]),M=y(()=>[c.e("btn"),c.e("next"),c.is("disabled",!a.infinite&&k.value)]),R=y(()=>{const{scale:re,deg:le,offsetX:se,offsetY:ge,enableTransition:Be}=b.value;let te=se/re,ce=ge/re;const Ie=le*Math.PI/180,Ae=Math.cos(Ie),xe=Math.sin(Ie);te=te*Ae+ce*xe,ce=ce*Ae-se/re*xe;const Ye={transform:`scale(${re}) rotate(${le}deg) translate(${te}px, ${ce}px)`,transition:Be?"transform .3s":""};return g.value.name===s.CONTAIN.name&&(Ye.maxWidth=Ye.maxHeight="100%"),Ye}),N=y(()=>`${p.value+1} / ${a.urlList.length}`);function O(){W(),r==null||r(),document.body.style.overflow=i,n("close")}function P(){const re=Hl(se=>{switch(se.code){case Ce.esc:a.closeOnPressEscape&&O();break;case Ce.space:B();break;case Ce.left:ne();break;case Ce.up:Q("zoomIn");break;case Ce.right:j();break;case Ce.down:Q("zoomOut");break}}),le=Hl(se=>{const ge=se.deltaY||se.deltaX;Q(ge<0?"zoomIn":"zoomOut",{zoomRate:a.zoomRate,enableTransition:!1})});v.run(()=>{xt(document,"keydown",re),xt(document,"wheel",le)})}function W(){v.stop()}function K(){h.value=!1}function D(re){h.value=!1,re.target.alt=u("el.image.error")}function L(re){if(h.value||re.button!==0||!f.value)return;b.value.enableTransition=!1;const{offsetX:le,offsetY:se}=b.value,ge=re.pageX,Be=re.pageY,te=Hl(Ie=>{b.value={...b.value,offsetX:le+Ie.pageX-ge,offsetY:se+Ie.pageY-Be}}),ce=xt(document,"mousemove",te);xt(document,"mouseup",()=>{ce()}),re.preventDefault()}function z(){b.value={scale:1,deg:0,offsetX:0,offsetY:0,enableTransition:!1}}function B(){if(h.value)return;const re=ko(s),le=Object.values(s),se=g.value.name,Be=(le.findIndex(te=>te.name===se)+1)%re.length;g.value=s[re[Be]],z()}function A(re){const le=a.urlList.length;p.value=(re+le)%le}function ne(){w.value&&!a.infinite||A(p.value-1)}function j(){k.value&&!a.infinite||A(p.value+1)}function Q(re,le={}){if(h.value)return;const{minScale:se,maxScale:ge}=a,{zoomRate:Be,rotateDeg:te,enableTransition:ce}={zoomRate:a.zoomRate,rotateDeg:90,enableTransition:!0,...le};switch(re){case"zoomOut":b.value.scale>se&&(b.value.scale=Number.parseFloat((b.value.scale/Be).toFixed(3)));break;case"zoomIn":b.value.scale0)return re.preventDefault(),!1}}return ie(S,()=>{Ee(()=>{const re=m.value[0];re!=null&&re.complete||(h.value=!0)})}),ie(p,re=>{z(),n("switch",re)}),Xe(()=>{P(),r=xt("wheel",ae,{passive:!1}),i=document.body.style.overflow,document.body.style.overflow="hidden"}),t({setActiveItem:A}),(re,le)=>(_(),oe(o(Po),{to:"body",disabled:!re.teleported},{default:U(()=>[H(an,{name:"viewer-fade",appear:""},{default:U(()=>[F("div",{ref_key:"wrapper",ref:f,tabindex:-1,class:T(o(c).e("wrapper")),style:_e({zIndex:E.value})},[H(o(Ro),{loop:"",trapped:"","focus-trap-el":f.value,"focus-start-el":"container",onFocusoutPrevented:Z,onReleaseRequested:ee},{default:U(()=>[F("div",{class:T(o(c).e("mask")),onClick:Le(se=>re.hideOnClickModal&&O(),["self"])},null,10,["onClick"]),J(" CLOSE "),F("span",{class:T([o(c).e("btn"),o(c).e("close")]),onClick:O},[H(o(Se),null,{default:U(()=>[H(o(zn))]),_:1})],2),J(" ARROW "),o(C)?J("v-if",!0):(_(),V(Oe,{key:0},[F("span",{class:T(o($)),onClick:ne},[H(o(Se),null,{default:U(()=>[H(o(dl))]),_:1})],2),F("span",{class:T(o(M)),onClick:j},[H(o(Se),null,{default:U(()=>[H(o(Cn))]),_:1})],2)],64)),re.$slots.progress||re.showProgress?(_(),V("div",{key:1,class:T([o(c).e("btn"),o(c).e("progress")])},[G(re.$slots,"progress",{activeIndex:p.value,total:re.urlList.length},()=>[st(pe(o(N)),1)])],2)):J("v-if",!0),J(" ACTIONS "),F("div",{class:T([o(c).e("btn"),o(c).e("actions")])},[F("div",{class:T(o(c).e("actions__inner"))},[G(re.$slots,"toolbar",{actions:Q,prev:ne,next:j,reset:B,activeIndex:p.value,setActiveItem:A},()=>[H(o(Se),{onClick:se=>Q("zoomOut")},{default:U(()=>[H(o(jm))]),_:1},8,["onClick"]),H(o(Se),{onClick:se=>Q("zoomIn")},{default:U(()=>[H(o(dd))]),_:1},8,["onClick"]),F("i",{class:T(o(c).e("actions__divider"))},null,2),H(o(Se),{onClick:B},{default:U(()=>[(_(),oe(Ge(o(g).icon)))]),_:1}),F("i",{class:T(o(c).e("actions__divider"))},null,2),H(o(Se),{onClick:se=>Q("anticlockwise")},{default:U(()=>[H(o(_m))]),_:1},8,["onClick"]),H(o(Se),{onClick:se=>Q("clockwise")},{default:U(()=>[H(o($m))]),_:1},8,["onClick"])])],2)],2),J(" CANVAS "),F("div",{class:T(o(c).e("canvas"))},[(_(!0),V(Oe,null,ut(re.urlList,(se,ge)=>(_(),V(Oe,{key:ge},[ge===p.value?(_(),V("img",{key:0,ref_for:!0,ref:Be=>m.value[ge]=Be,src:se,style:_e(o(R)),class:T(o(c).e("img")),crossorigin:re.crossorigin,onLoad:K,onError:D,onMousedown:L},null,46,["src","crossorigin"])):J("v-if",!0)],64))),128))],2),G(re.$slots,"default")]),_:3},8,["focus-trap-el"])],6)]),_:3})]),_:3},8,["disabled"]))}});var NS=fe($S,[["__file","image-viewer.vue"]]);const xf=He(NS),IS=de({hideOnClickModal:Boolean,src:{type:String,default:""},fit:{type:String,values:["","contain","cover","fill","none","scale-down"],default:""},loading:{type:String,values:["eager","lazy"]},lazy:Boolean,scrollContainer:{type:Y([String,Object])},previewSrcList:{type:Y(Array),default:()=>Vt([])},previewTeleported:Boolean,zIndex:{type:Number},initialIndex:{type:Number,default:0},infinite:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},zoomRate:{type:Number,default:1.2},minScale:{type:Number,default:.2},maxScale:{type:Number,default:7},showProgress:Boolean,crossorigin:{type:Y(String)}}),MS={load:e=>e instanceof Event,error:e=>e instanceof Event,switch:e=>Te(e),close:()=>!0,show:()=>!0},RS=x({name:"ElImage",inheritAttrs:!1}),PS=x({...RS,props:IS,emits:MS,setup(e,{expose:t,emit:n}){const l=e,{t:a}=pt(),s=ue("image"),r=pl(),i=y(()=>qo(Object.entries(r).filter(([L])=>/^(data-|on[A-Z])/i.test(L)||["id","style"].includes(L)))),u=bs({excludeListeners:!0,excludeKeys:y(()=>Object.keys(i.value))}),c=I(),d=I(!1),f=I(!0),m=I(!1),v=I(),h=I(),p=bt&&"loading"in HTMLImageElement.prototype;let g;const b=y(()=>[s.e("inner"),C.value&&s.e("preview"),f.value&&s.is("loading")]),E=y(()=>{const{fit:L}=l;return bt&&L?{objectFit:L}:{}}),C=y(()=>{const{previewSrcList:L}=l;return ke(L)&&L.length>0}),w=y(()=>{const{previewSrcList:L,initialIndex:z}=l;let B=z;return z>L.length-1&&(B=0),B}),k=y(()=>l.loading==="eager"?!1:!p&&l.loading==="lazy"||l.lazy),S=()=>{bt&&(f.value=!0,d.value=!1,c.value=l.src)};function $(L){f.value=!1,d.value=!1,n("load",L)}function M(L){f.value=!1,d.value=!0,n("error",L)}function R(){jC(v.value,h.value)&&(S(),P())}const N=Mc(R,200,!0);async function O(){var L;if(!bt)return;await Ee();const{scrollContainer:z}=l;_n(z)?h.value=z:Ve(z)&&z!==""?h.value=(L=document.querySelector(z))!=null?L:void 0:v.value&&(h.value=jr(v.value)),h.value&&(g=xt(h,"scroll",N),setTimeout(()=>R(),100))}function P(){!bt||!h.value||!N||(g==null||g(),h.value=void 0)}function W(){C.value&&(m.value=!0,n("show"))}function K(){m.value=!1,n("close")}function D(L){n("switch",L)}return ie(()=>l.src,()=>{k.value?(f.value=!0,d.value=!1,P(),O()):S()}),Xe(()=>{k.value?O():S()}),t({showPreview:W}),(L,z)=>(_(),V("div",et({ref_key:"container",ref:v},o(i),{class:[o(s).b(),L.$attrs.class]}),[d.value?G(L.$slots,"error",{key:0},()=>[F("div",{class:T(o(s).e("error"))},pe(o(a)("el.image.error")),3)]):(_(),V(Oe,{key:1},[c.value!==void 0?(_(),V("img",et({key:0},o(u),{src:c.value,loading:L.loading,style:o(E),class:o(b),crossorigin:L.crossorigin,onClick:W,onLoad:$,onError:M}),null,16,["src","loading","crossorigin"])):J("v-if",!0),f.value?(_(),V("div",{key:1,class:T(o(s).e("wrapper"))},[G(L.$slots,"placeholder",{},()=>[F("div",{class:T(o(s).e("placeholder"))},null,2)])],2)):J("v-if",!0)],64)),o(C)?(_(),V(Oe,{key:2},[m.value?(_(),oe(o(xf),{key:0,"z-index":L.zIndex,"initial-index":o(w),infinite:L.infinite,"zoom-rate":L.zoomRate,"min-scale":L.minScale,"max-scale":L.maxScale,"show-progress":L.showProgress,"url-list":L.previewSrcList,crossorigin:L.crossorigin,"hide-on-click-modal":L.hideOnClickModal,teleported:L.previewTeleported,"close-on-press-escape":L.closeOnPressEscape,onClose:K,onSwitch:D},Mn({toolbar:U(B=>[G(L.$slots,"toolbar",On(cl(B)))]),default:U(()=>[L.$slots.viewer?(_(),V("div",{key:0},[G(L.$slots,"viewer")])):J("v-if",!0)]),_:2},[L.$slots.progress?{name:"progress",fn:U(B=>[G(L.$slots,"progress",On(cl(B)))])}:void 0]),1032,["z-index","initial-index","infinite","zoom-rate","min-scale","max-scale","show-progress","url-list","crossorigin","hide-on-click-modal","teleported","close-on-press-escape"])):J("v-if",!0)],64)):J("v-if",!0)],16))}});var OS=fe(PS,[["__file","image.vue"]]);const LS=He(OS),BS=de({id:{type:String,default:void 0},step:{type:Number,default:1},stepStrictly:Boolean,max:{type:Number,default:Number.MAX_SAFE_INTEGER},min:{type:Number,default:Number.MIN_SAFE_INTEGER},modelValue:{type:[Number,null]},readonly:Boolean,disabled:Boolean,size:Jt,controls:{type:Boolean,default:!0},controlsPosition:{type:String,default:"",values:["","right"]},valueOnClear:{type:[String,Number,null],validator:e=>e===null||Te(e)||["min","max"].includes(e),default:null},name:String,placeholder:String,precision:{type:Number,validator:e=>e>=0&&e===Number.parseInt(`${e}`,10)},validateEvent:{type:Boolean,default:!0},...cn(["ariaLabel"]),inputmode:{type:Y(String),default:void 0}}),VS={[nt]:(e,t)=>t!==e,blur:e=>e instanceof FocusEvent,focus:e=>e instanceof FocusEvent,[Zt]:e=>Te(e)||qt(e),[De]:e=>Te(e)||qt(e)},DS=x({name:"ElInputNumber"}),AS=x({...DS,props:BS,emits:VS,setup(e,{expose:t,emit:n}){const l=e,{t:a}=pt(),s=ue("input-number"),r=I(),i=kt({currentValue:l.modelValue,userInput:null}),{formItem:u}=dn(),c=y(()=>Te(l.modelValue)&&l.modelValue<=l.min),d=y(()=>Te(l.modelValue)&&l.modelValue>=l.max),f=y(()=>{const D=b(l.step);return vt(l.precision)?Math.max(b(l.modelValue),D):(D>l.precision,l.precision)}),m=y(()=>l.controls&&l.controlsPosition==="right"),v=Gt(),h=fn(),p=y(()=>{if(i.userInput!==null)return i.userInput;let D=i.currentValue;if(qt(D))return"";if(Te(D)){if(Number.isNaN(D))return"";vt(l.precision)||(D=D.toFixed(l.precision))}return D}),g=(D,L)=>{if(vt(L)&&(L=f.value),L===0)return Math.round(D);let z=String(D);const B=z.indexOf(".");if(B===-1||!z.replace(".","").split("")[B+L])return D;const j=z.length;return z.charAt(j-1)==="5"&&(z=`${z.slice(0,Math.max(0,j-1))}6`),Number.parseFloat(Number(z).toFixed(L))},b=D=>{if(qt(D))return 0;const L=D.toString(),z=L.indexOf(".");let B=0;return z!==-1&&(B=L.length-z-1),B},E=(D,L=1)=>Te(D)?D>=Number.MAX_SAFE_INTEGER&&L===1||D<=Number.MIN_SAFE_INTEGER&&L===-1?D:g(D+l.step*L):i.currentValue,C=()=>{if(l.readonly||h.value||d.value)return;const D=Number(p.value)||0,L=E(D);S(L),n(Zt,i.currentValue),W()},w=()=>{if(l.readonly||h.value||c.value)return;const D=Number(p.value)||0,L=E(D,-1);S(L),n(Zt,i.currentValue),W()},k=(D,L)=>{const{max:z,min:B,step:A,precision:ne,stepStrictly:j,valueOnClear:Q}=l;zz||Zz?z:B,L&&n(De,Z)),Z},S=(D,L=!0)=>{var z;const B=i.currentValue,A=k(D);if(!L){n(De,A);return}B===A&&D||(i.userInput=null,n(De,A),B!==A&&n(nt,A,B),l.validateEvent&&((z=u==null?void 0:u.validate)==null||z.call(u,"change").catch(ne=>void 0)),i.currentValue=A)},$=D=>{i.userInput=D;const L=D===""?null:Number(D);n(Zt,L),S(L,!1)},M=D=>{const L=D!==""?Number(D):"";(Te(L)&&!Number.isNaN(L)||D==="")&&S(L),W(),i.userInput=null},R=()=>{var D,L;(L=(D=r.value)==null?void 0:D.focus)==null||L.call(D)},N=()=>{var D,L;(L=(D=r.value)==null?void 0:D.blur)==null||L.call(D)},O=D=>{n("focus",D)},P=D=>{var L,z;i.userInput=null,i.currentValue===null&&((L=r.value)!=null&&L.input)&&(r.value.input.value=""),n("blur",D),l.validateEvent&&((z=u==null?void 0:u.validate)==null||z.call(u,"blur").catch(B=>void 0))},W=()=>{i.currentValue!==l.modelValue&&(i.currentValue=l.modelValue)},K=D=>{document.activeElement===D.target&&D.preventDefault()};return ie(()=>l.modelValue,(D,L)=>{const z=k(D,!0);i.userInput===null&&z!==L&&(i.currentValue=z)},{immediate:!0}),Xe(()=>{var D;const{min:L,max:z,modelValue:B}=l,A=(D=r.value)==null?void 0:D.input;if(A.setAttribute("role","spinbutton"),Number.isFinite(z)?A.setAttribute("aria-valuemax",String(z)):A.removeAttribute("aria-valuemax"),Number.isFinite(L)?A.setAttribute("aria-valuemin",String(L)):A.removeAttribute("aria-valuemin"),A.setAttribute("aria-valuenow",i.currentValue||i.currentValue===0?String(i.currentValue):""),A.setAttribute("aria-disabled",String(h.value)),!Te(B)&&B!=null){let ne=Number(B);Number.isNaN(ne)&&(ne=null),n(De,ne)}A.addEventListener("wheel",K,{passive:!1})}),hl(()=>{var D,L;const z=(D=r.value)==null?void 0:D.input;z==null||z.setAttribute("aria-valuenow",`${(L=i.currentValue)!=null?L:""}`)}),t({focus:R,blur:N}),(D,L)=>(_(),V("div",{class:T([o(s).b(),o(s).m(o(v)),o(s).is("disabled",o(h)),o(s).is("without-controls",!D.controls),o(s).is("controls-right",o(m))]),onDragstart:Le(()=>{},["prevent"])},[D.controls?We((_(),V("span",{key:0,role:"button","aria-label":o(a)("el.inputNumber.decrease"),class:T([o(s).e("decrease"),o(s).is("disabled",o(c))]),onKeydown:Tt(w,["enter"])},[G(D.$slots,"decrease-icon",{},()=>[H(o(Se),null,{default:U(()=>[o(m)?(_(),oe(o(nl),{key:0})):(_(),oe(o(hm),{key:1}))]),_:1})])],42,["aria-label","onKeydown"])),[[o(qa),w]]):J("v-if",!0),D.controls?We((_(),V("span",{key:1,role:"button","aria-label":o(a)("el.inputNumber.increase"),class:T([o(s).e("increase"),o(s).is("disabled",o(d))]),onKeydown:Tt(C,["enter"])},[G(D.$slots,"increase-icon",{},()=>[H(o(Se),null,{default:U(()=>[o(m)?(_(),oe(o(hs),{key:0})):(_(),oe(o(ud),{key:1}))]),_:1})])],42,["aria-label","onKeydown"])),[[o(qa),C]]):J("v-if",!0),H(o(hn),{id:D.id,ref_key:"input",ref:r,type:"number",step:D.step,"model-value":o(p),placeholder:D.placeholder,readonly:D.readonly,disabled:o(h),size:o(v),max:D.max,min:D.min,name:D.name,"aria-label":D.ariaLabel,"validate-event":!1,inputmode:D.inputmode,onKeydown:[Tt(Le(C,["prevent"]),["up"]),Tt(Le(w,["prevent"]),["down"])],onBlur:P,onFocus:O,onInput:$,onChange:M},Mn({_:2},[D.$slots.prefix?{name:"prefix",fn:U(()=>[G(D.$slots,"prefix")])}:void 0,D.$slots.suffix?{name:"suffix",fn:U(()=>[G(D.$slots,"suffix")])}:void 0]),1032,["id","step","model-value","placeholder","readonly","disabled","size","max","min","name","aria-label","inputmode","onKeydown"])],42,["onDragstart"]))}});var FS=fe(AS,[["__file","input-number.vue"]]);const zf=He(FS),xS=de({modelValue:{type:Y(Array)},max:Number,tagType:{...fl.type,default:"info"},tagEffect:fl.effect,trigger:{type:Y(String),default:Ce.enter},draggable:Boolean,delimiter:{type:[String,RegExp],default:""},size:Jt,clearable:Boolean,disabled:{type:Boolean,default:void 0},validateEvent:{type:Boolean,default:!0},readonly:Boolean,autofocus:Boolean,id:{type:String,default:void 0},tabindex:{type:[String,Number],default:0},maxlength:{type:[String,Number]},minlength:{type:[String,Number]},placeholder:String,autocomplete:{type:String,default:"off"},saveOnBlur:{type:Boolean,default:!0},ariaLabel:String}),zS={[De]:e=>ke(e)||vt(e),[nt]:e=>ke(e)||vt(e),[Zt]:e=>Ve(e),"add-tag":e=>Ve(e)||ke(e),"remove-tag":e=>Ve(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0};function HS({props:e,emit:t,formItem:n}){const l=fn(),a=Gt(),s=Lt(),r=I(),i=y(()=>["small"].includes(a.value)?"small":"default"),u=y(()=>{var O;return(O=e.modelValue)!=null&&O.length?void 0:e.placeholder}),c=y(()=>!(e.readonly||l.value)),d=y(()=>{var O,P;return vt(e.max)?!1:((P=(O=e.modelValue)==null?void 0:O.length)!=null?P:0)>=e.max}),f=O=>{var P;const W=[...(P=e.modelValue)!=null?P:[],...ln(O)];t(De,W),t(nt,W),t("add-tag",O),r.value=void 0},m=O=>{var P,W;const K=O.split(e.delimiter).filter(D=>D&&D!==O);if(e.max){const D=e.max-((W=(P=e.modelValue)==null?void 0:P.length)!=null?W:0);K.splice(D)}return K.length===1?K[0]:K},v=O=>{if(d.value){r.value=void 0;return}if(!$.value){if(e.delimiter&&r.value){const P=m(r.value);P.length&&f(P)}t(Zt,O.target.value)}},h=O=>{var P;if(!$.value)switch(O.code){case e.trigger:O.preventDefault(),O.stopPropagation(),p();break;case Ce.numpadEnter:e.trigger===Ce.enter&&(O.preventDefault(),O.stopPropagation(),p());break;case Ce.backspace:!r.value&&((P=e.modelValue)!=null&&P.length)&&(O.preventDefault(),O.stopPropagation(),g(e.modelValue.length-1));break}},p=()=>{var O;const P=(O=r.value)==null?void 0:O.trim();!P||d.value||f(P)},g=O=>{var P;const W=((P=e.modelValue)!=null?P:[]).slice(),[K]=W.splice(O,1);t(De,W),t(nt,W),t("remove-tag",K)},b=()=>{r.value=void 0,t(De,void 0),t(nt,void 0),t("clear")},E=(O,P,W)=>{var K;const D=((K=e.modelValue)!=null?K:[]).slice(),[L]=D.splice(O,1),z=P>O&&W==="before"?-1:P{var O;(O=s.value)==null||O.focus()},w=()=>{var O;(O=s.value)==null||O.blur()},{wrapperRef:k,isFocused:S}=Ll(s,{disabled:l,afterBlur(){var O;e.saveOnBlur?p():r.value=void 0,e.validateEvent&&((O=n==null?void 0:n.validate)==null||O.call(n,"blur").catch(P=>void 0))}}),{isComposing:$,handleCompositionStart:M,handleCompositionUpdate:R,handleCompositionEnd:N}=ha({afterComposition:v});return ie(()=>e.modelValue,()=>{var O;e.validateEvent&&((O=n==null?void 0:n.validate)==null||O.call(n,nt).catch(P=>void 0))}),{inputRef:s,wrapperRef:k,isFocused:S,isComposing:$,inputValue:r,size:a,tagSize:i,placeholder:u,closable:c,disabled:l,inputLimit:d,handleDragged:E,handleInput:v,handleKeydown:h,handleAddTag:p,handleRemoveTag:g,handleClear:b,handleCompositionStart:M,handleCompositionUpdate:R,handleCompositionEnd:N,focus:C,blur:w}}function KS(){const e=I(!1);return{hovering:e,handleMouseEnter:()=>{e.value=!0},handleMouseLeave:()=>{e.value=!1}}}function Ci(){const e=Lt(),t=I(0),n=11,l=y(()=>({minWidth:`${Math.max(t.value,n)}px`}));return Ft(e,()=>{var s,r;t.value=(r=(s=e.value)==null?void 0:s.getBoundingClientRect().width)!=null?r:0}),{calculatorRef:e,calculatorWidth:t,inputStyle:l}}function WS({wrapperRef:e,handleDragged:t,afterDragged:n}){const l=ue("input-tag"),a=Lt(),s=I(!1);let r,i,u,c;function d(h){return`.${l.e("inner")} .${l.namespace.value}-tag:nth-child(${h+1})`}function f(h,p){r=p,i=e.value.querySelector(d(p)),i&&(i.style.opacity="0.5"),h.dataTransfer.effectAllowed="move"}function m(h,p){if(u=p,h.preventDefault(),h.dataTransfer.dropEffect="move",vt(r)||r===p){s.value=!1;return}const g=e.value.querySelector(d(p)).getBoundingClientRect(),b=r+1!==p,E=r-1!==p,C=h.clientX-g.left,w=b?E?.5:1:-1,k=E?b?.5:0:1;C<=g.width*w?c="before":C>g.width*k?c="after":c=void 0;const S=e.value.querySelector(`.${l.e("inner")}`),$=S.getBoundingClientRect(),M=Number.parseFloat(rl(S,"gap"))/2,R=g.top-$.top;let N=-9999;if(c==="before")N=Math.max(g.left-$.left-M,Math.floor(-M/2));else if(c==="after"){const O=g.right-$.left;N=O+($.width===O?Math.floor(M/2):M)}td(a.value,{top:`${R}px`,left:`${N}px`}),s.value=!!c}function v(h){h.preventDefault(),i&&(i.style.opacity=""),c&&!vt(r)&&!vt(u)&&r!==u&&t(r,u,c),s.value=!1,r=void 0,i=null,u=void 0,c=void 0,n==null||n()}return{dropIndicatorRef:a,showDropIndicator:s,handleDragStart:f,handleDragOver:m,handleDragEnd:v}}function jS({props:e,isFocused:t,hovering:n,disabled:l,inputValue:a,size:s,validateState:r,validateIcon:i,needStatusIcon:u}){const c=pl(),d=Xt(),f=ue("input-tag"),m=ue("input"),v=y(()=>[f.b(),f.is("focused",t.value),f.is("hovering",n.value),f.is("disabled",l.value),f.m(s.value),f.e("wrapper"),c.class]),h=y(()=>[c.style]),p=y(()=>{var E,C;return[f.e("inner"),f.is("draggable",e.draggable),f.is("left-space",!((E=e.modelValue)!=null&&E.length)&&!d.prefix),f.is("right-space",!((C=e.modelValue)!=null&&C.length)&&!b.value)]}),g=y(()=>{var E;return e.clearable&&!l.value&&!e.readonly&&(((E=e.modelValue)==null?void 0:E.length)||a.value)&&(t.value||n.value)}),b=y(()=>d.suffix||g.value||r.value&&i.value&&u.value);return{ns:f,nsInput:m,containerKls:v,containerStyle:h,innerKls:p,showClear:g,showSuffix:b}}const US=x({name:"ElInputTag",inheritAttrs:!1}),YS=x({...US,props:xS,emits:zS,setup(e,{expose:t,emit:n}){const l=e,a=bs(),s=Xt(),{form:r,formItem:i}=dn(),{inputId:u}=Kn(l,{formItemContext:i}),c=y(()=>{var ce;return(ce=r==null?void 0:r.statusIcon)!=null?ce:!1}),d=y(()=>(i==null?void 0:i.validateState)||""),f=y(()=>d.value&&gs[d.value]),{inputRef:m,wrapperRef:v,isFocused:h,inputValue:p,size:g,tagSize:b,placeholder:E,closable:C,disabled:w,handleDragged:k,handleInput:S,handleKeydown:$,handleRemoveTag:M,handleClear:R,handleCompositionStart:N,handleCompositionUpdate:O,handleCompositionEnd:P,focus:W,blur:K}=HS({props:l,emit:n,formItem:i}),{hovering:D,handleMouseEnter:L,handleMouseLeave:z}=KS(),{calculatorRef:B,inputStyle:A}=Ci(),{dropIndicatorRef:ne,showDropIndicator:j,handleDragStart:Q,handleDragOver:Z,handleDragEnd:ee}=WS({wrapperRef:v,handleDragged:k,afterDragged:W}),{ns:ae,nsInput:re,containerKls:le,containerStyle:se,innerKls:ge,showClear:Be,showSuffix:te}=jS({props:l,hovering:D,isFocused:h,inputValue:p,disabled:w,size:g,validateState:d,validateIcon:f,needStatusIcon:c});return t({focus:W,blur:K}),(ce,Ie)=>(_(),V("div",{ref_key:"wrapperRef",ref:v,class:T(o(le)),style:_e(o(se)),onMouseenter:o(L),onMouseleave:o(z)},[o(s).prefix?(_(),V("div",{key:0,class:T(o(ae).e("prefix"))},[G(ce.$slots,"prefix")],2)):J("v-if",!0),F("div",{class:T(o(ge))},[(_(!0),V(Oe,null,ut(ce.modelValue,(Ae,xe)=>(_(),oe(o(So),{key:xe,size:o(b),closable:o(C),type:ce.tagType,effect:ce.tagEffect,draggable:o(C)&&ce.draggable,"disable-transitions":"",onClose:Ye=>o(M)(xe),onDragstart:Ye=>o(Q)(Ye,xe),onDragover:Ye=>o(Z)(Ye,xe),onDragend:o(ee),onDrop:Le(()=>{},["stop"])},{default:U(()=>[G(ce.$slots,"tag",{value:Ae,index:xe},()=>[st(pe(Ae),1)])]),_:2},1032,["size","closable","type","effect","draggable","onClose","onDragstart","onDragover","onDragend","onDrop"]))),128)),F("div",{class:T(o(ae).e("input-wrapper"))},[We(F("input",et({id:o(u),ref_key:"inputRef",ref:m,"onUpdate:modelValue":Ae=>gn(p)?p.value=Ae:null},o(a),{type:"text",minlength:ce.minlength,maxlength:ce.maxlength,disabled:o(w),readonly:ce.readonly,autocomplete:ce.autocomplete,tabindex:ce.tabindex,placeholder:o(E),autofocus:ce.autofocus,ariaLabel:ce.ariaLabel,class:o(ae).e("input"),style:o(A),onCompositionstart:o(N),onCompositionupdate:o(O),onCompositionend:o(P),onInput:o(S),onKeydown:o($)}),null,16,["id","onUpdate:modelValue","minlength","maxlength","disabled","readonly","autocomplete","tabindex","placeholder","autofocus","ariaLabel","onCompositionstart","onCompositionupdate","onCompositionend","onInput","onKeydown"]),[[ds,o(p)]]),F("span",{ref_key:"calculatorRef",ref:B,"aria-hidden":"true",class:T(o(ae).e("input-calculator")),textContent:pe(o(p))},null,10,["textContent"])],2),We(F("div",{ref_key:"dropIndicatorRef",ref:ne,class:T(o(ae).e("drop-indicator"))},null,2),[[mt,o(j)]])],2),o(te)?(_(),V("div",{key:1,class:T(o(ae).e("suffix"))},[G(ce.$slots,"suffix"),o(Be)?(_(),oe(o(Se),{key:0,class:T([o(ae).e("icon"),o(ae).e("clear")]),onMousedown:Le(o(Bt),["prevent"]),onClick:o(R)},{default:U(()=>[H(o(ml))]),_:1},8,["class","onMousedown","onClick"])):J("v-if",!0),o(d)&&o(f)&&o(c)?(_(),oe(o(Se),{key:1,class:T([o(re).e("icon"),o(re).e("validateIcon"),o(re).is("loading",o(d)==="validating")])},{default:U(()=>[(_(),oe(Ge(o(f))))]),_:1},8,["class"])):J("v-if",!0)],2)):J("v-if",!0)],46,["onMouseenter","onMouseleave"]))}});var qS=fe(YS,[["__file","input-tag.vue"]]);const GS=He(qS),XS=de({type:{type:String,values:["primary","success","warning","info","danger","default"],default:void 0},underline:{type:[Boolean,String],values:[!0,!1,"always","never","hover"],default:void 0},disabled:Boolean,href:{type:String,default:""},target:{type:String,default:"_self"},icon:{type:$t}}),ZS={click:e=>e instanceof MouseEvent},JS=x({name:"ElLink"}),QS=x({...JS,props:XS,emits:ZS,setup(e,{emit:t}){const n=e,l=fa("link");ul({scope:"el-link",from:"The underline option (boolean)",replacement:"'always' | 'hover' | 'never'",version:"3.0.0",ref:"https://element-plus.org/en-US/component/link.html#underline"},y(()=>_t(n.underline)));const a=ue("link"),s=y(()=>{var u,c,d;return[a.b(),a.m((d=(c=n.type)!=null?c:(u=l.value)==null?void 0:u.type)!=null?d:"default"),a.is("disabled",n.disabled),a.is("underline",r.value==="always"),a.is("hover-underline",r.value==="hover"&&!n.disabled)]}),r=y(()=>{var u,c,d;return _t(n.underline)?n.underline?"hover":"never":(d=(c=n.underline)!=null?c:(u=l.value)==null?void 0:u.underline)!=null?d:"hover"});function i(u){n.disabled||t("click",u)}return(u,c)=>(_(),V("a",{class:T(o(s)),href:u.disabled||!u.href?void 0:u.href,target:u.disabled||!u.href?void 0:u.target,onClick:i},[u.icon?(_(),oe(o(Se),{key:0},{default:U(()=>[(_(),oe(Ge(u.icon)))]),_:1})):J("v-if",!0),u.$slots.default?(_(),V("span",{key:1,class:T(o(a).e("inner"))},[G(u.$slots,"default")],2)):J("v-if",!0),u.$slots.icon?G(u.$slots,"icon",{key:2}):J("v-if",!0)],10,["href","target"]))}});var e2=fe(QS,[["__file","link.vue"]]);const t2=He(e2);let n2=class{constructor(t,n){this.parent=t,this.domNode=n,this.subIndex=0,this.subIndex=0,this.init()}init(){this.subMenuItems=this.domNode.querySelectorAll("li"),this.addListeners()}gotoSubIndex(t){t===this.subMenuItems.length?t=0:t<0&&(t=this.subMenuItems.length-1),this.subMenuItems[t].focus(),this.subIndex=t}addListeners(){const t=this.parent.domNode;Array.prototype.forEach.call(this.subMenuItems,n=>{n.addEventListener("keydown",l=>{let a=!1;switch(l.code){case Ce.down:{this.gotoSubIndex(this.subIndex+1),a=!0;break}case Ce.up:{this.gotoSubIndex(this.subIndex-1),a=!0;break}case Ce.tab:{La(t,"mouseleave");break}case Ce.enter:case Ce.numpadEnter:case Ce.space:{a=!0,l.currentTarget.click();break}}return a&&(l.preventDefault(),l.stopPropagation()),!1})})}},l2=class{constructor(t,n){this.domNode=t,this.submenu=null,this.submenu=null,this.init(n)}init(t){this.domNode.setAttribute("tabindex","0");const n=this.domNode.querySelector(`.${t}-menu`);n&&(this.submenu=new n2(this,n)),this.addListeners()}addListeners(){this.domNode.addEventListener("keydown",t=>{let n=!1;switch(t.code){case Ce.down:{La(t.currentTarget,"mouseenter"),this.submenu&&this.submenu.gotoSubIndex(0),n=!0;break}case Ce.up:{La(t.currentTarget,"mouseenter"),this.submenu&&this.submenu.gotoSubIndex(this.submenu.subMenuItems.length-1),n=!0;break}case Ce.tab:{La(t.currentTarget,"mouseleave");break}case Ce.enter:case Ce.numpadEnter:case Ce.space:{n=!0,t.currentTarget.click();break}}n&&t.preventDefault()})}},o2=class{constructor(t,n){this.domNode=t,this.init(n)}init(t){const n=this.domNode.childNodes;Array.from(n).forEach(l=>{l.nodeType===1&&new l2(l,t)})}};const a2=x({name:"ElMenuCollapseTransition"}),s2=x({...a2,setup(e){const t=ue("menu"),n={onBeforeEnter:l=>l.style.opacity="0.2",onEnter(l,a){Fn(l,`${t.namespace.value}-opacity-transition`),l.style.opacity="1",a()},onAfterEnter(l){yn(l,`${t.namespace.value}-opacity-transition`),l.style.opacity=""},onBeforeLeave(l){l.dataset||(l.dataset={}),Nn(l,t.m("collapse"))?(yn(l,t.m("collapse")),l.dataset.oldOverflow=l.style.overflow,l.dataset.scrollWidth=l.clientWidth.toString(),Fn(l,t.m("collapse"))):(Fn(l,t.m("collapse")),l.dataset.oldOverflow=l.style.overflow,l.dataset.scrollWidth=l.clientWidth.toString(),yn(l,t.m("collapse"))),l.style.width=`${l.scrollWidth}px`,l.style.overflow="hidden"},onLeave(l){Fn(l,"horizontal-collapse-transition"),l.style.width=`${l.dataset.scrollWidth}px`}};return(l,a)=>(_(),oe(an,et({mode:"out-in"},o(n)),{default:U(()=>[G(l.$slots,"default")]),_:3},16))}});var r2=fe(s2,[["__file","menu-collapse-transition.vue"]]);function Hf(e,t){const n=y(()=>{let a=e.parent;const s=[t.value];for(;a.type.name!=="ElMenu";)a.props.index&&s.unshift(a.props.index),a=a.parent;return s});return{parentMenu:y(()=>{let a=e.parent;for(;a&&!["ElMenu","ElSubMenu"].includes(a.type.name);)a=a.parent;return a}),indexPath:n}}function i2(e){return y(()=>{const n=e.backgroundColor;return n?new vo(n).shade(20).toString():""})}const Kf=(e,t)=>{const n=ue("menu");return y(()=>n.cssVarBlock({"text-color":e.textColor||"","hover-text-color":e.textColor||"","bg-color":e.backgroundColor||"","hover-bg-color":i2(e).value||"","active-color":e.activeTextColor||"",level:`${t}`}))},wi="rootMenu",Ja="subMenu:",u2=de({index:{type:String,required:!0},showTimeout:Number,hideTimeout:Number,popperClass:String,disabled:Boolean,teleported:{type:Boolean,default:void 0},popperOffset:Number,expandCloseIcon:{type:$t},expandOpenIcon:{type:$t},collapseCloseIcon:{type:$t},collapseOpenIcon:{type:$t}}),js="ElSubMenu";var ki=x({name:js,props:u2,setup(e,{slots:t,expose:n}){const l=lt(),{indexPath:a,parentMenu:s}=Hf(l,y(()=>e.index)),r=ue("menu"),i=ue("sub-menu"),u=we(wi);u||jt(js,"can not inject root menu");const c=we(`${Ja}${s.value.uid}`);c||jt(js,"can not inject sub menu");const d=I({}),f=I({});let m;const v=I(!1),h=I(),p=I(),g=y(()=>M.value==="horizontal"&&E.value?"bottom-start":"right-start"),b=y(()=>M.value==="horizontal"&&E.value||M.value==="vertical"&&!u.props.collapse?e.expandCloseIcon&&e.expandOpenIcon?S.value?e.expandOpenIcon:e.expandCloseIcon:nl:e.collapseCloseIcon&&e.collapseOpenIcon?S.value?e.collapseOpenIcon:e.collapseCloseIcon:Cn),E=y(()=>c.level===0),C=y(()=>{const j=e.teleported;return vt(j)?E.value:j}),w=y(()=>u.props.collapse?`${r.namespace.value}-zoom-in-left`:`${r.namespace.value}-zoom-in-top`),k=y(()=>M.value==="horizontal"&&E.value?["bottom-start","bottom-end","top-start","top-end","right-start","left-start"]:["right-start","right","right-end","left-start","bottom-start","bottom-end","top-start","top-end"]),S=y(()=>u.openedMenus.includes(e.index)),$=y(()=>[...Object.values(d.value),...Object.values(f.value)].some(({active:j})=>j)),M=y(()=>u.props.mode),R=y(()=>u.props.persistent),N=kt({index:e.index,indexPath:a,active:$}),O=Kf(u.props,c.level+1),P=y(()=>{var j;return(j=e.popperOffset)!=null?j:u.props.popperOffset}),W=y(()=>{var j;return(j=e.popperClass)!=null?j:u.props.popperClass}),K=y(()=>{var j;return(j=e.showTimeout)!=null?j:u.props.showTimeout}),D=y(()=>{var j;return(j=e.hideTimeout)!=null?j:u.props.hideTimeout}),L=()=>{var j,Q,Z;return(Z=(Q=(j=p.value)==null?void 0:j.popperRef)==null?void 0:Q.popperInstanceRef)==null?void 0:Z.destroy()},z=j=>{j||L()},B=()=>{u.props.menuTrigger==="hover"&&u.props.mode==="horizontal"||u.props.collapse&&u.props.mode==="vertical"||e.disabled||u.handleSubMenuClick({index:e.index,indexPath:a.value,active:$.value})},A=(j,Q=K.value)=>{var Z;if(j.type!=="focus"){if(u.props.menuTrigger==="click"&&u.props.mode==="horizontal"||!u.props.collapse&&u.props.mode==="vertical"||e.disabled){c.mouseInChild.value=!0;return}c.mouseInChild.value=!0,m==null||m(),{stop:m}=Ul(()=>{u.openMenu(e.index,a.value)},Q),C.value&&((Z=s.value.vnode.el)==null||Z.dispatchEvent(new MouseEvent("mouseenter")))}},ne=(j=!1)=>{var Q;if(u.props.menuTrigger==="click"&&u.props.mode==="horizontal"||!u.props.collapse&&u.props.mode==="vertical"){c.mouseInChild.value=!1;return}m==null||m(),c.mouseInChild.value=!1,{stop:m}=Ul(()=>!v.value&&u.closeMenu(e.index,a.value),D.value),C.value&&j&&((Q=c.handleMouseleave)==null||Q.call(c,!0))};ie(()=>u.props.collapse,j=>z(!!j));{const j=Z=>{f.value[Z.index]=Z},Q=Z=>{delete f.value[Z.index]};rt(`${Ja}${l.uid}`,{addSubMenu:j,removeSubMenu:Q,handleMouseleave:ne,mouseInChild:v,level:c.level+1})}return n({opened:S}),Xe(()=>{u.addSubMenu(N),c.addSubMenu(N)}),Nt(()=>{c.removeSubMenu(N),u.removeSubMenu(N)}),()=>{var j;const Q=[(j=t.title)==null?void 0:j.call(t),Re(Se,{class:i.e("icon-arrow"),style:{transform:S.value?e.expandCloseIcon&&e.expandOpenIcon||e.collapseCloseIcon&&e.collapseOpenIcon&&u.props.collapse?"none":"rotateZ(180deg)":"none"}},{default:()=>Ve(b.value)?Re(l.appContext.components[b.value]):Re(b.value)})],Z=u.isMenuPopup?Re(un,{ref:p,visible:S.value,effect:"light",pure:!0,offset:P.value,showArrow:!1,persistent:R.value,popperClass:W.value,placement:g.value,teleported:C.value,fallbackPlacements:k.value,transition:w.value,gpuAcceleration:!1},{content:()=>{var ee;return Re("div",{class:[r.m(M.value),r.m("popup-container"),W.value],onMouseenter:ae=>A(ae,100),onMouseleave:()=>ne(!0),onFocus:ae=>A(ae,100)},[Re("ul",{class:[r.b(),r.m("popup"),r.m(`popup-${g.value}`)],style:O.value},[(ee=t.default)==null?void 0:ee.call(t)])])},default:()=>Re("div",{class:i.e("title"),onClick:B},Q)}):Re(Oe,{},[Re("div",{class:i.e("title"),ref:h,onClick:B},Q),Re(Ss,{},{default:()=>{var ee;return We(Re("ul",{role:"menu",class:[r.b(),r.m("inline")],style:O.value},[(ee=t.default)==null?void 0:ee.call(t)]),[[mt,S.value]])}})]);return Re("li",{class:[i.b(),i.is("active",$.value),i.is("opened",S.value),i.is("disabled",e.disabled)],role:"menuitem",ariaHaspopup:!0,ariaExpanded:S.value,onMouseenter:A,onMouseleave:()=>ne(),onFocus:A},[Z])}}});const c2=de({mode:{type:String,values:["horizontal","vertical"],default:"vertical"},defaultActive:{type:String,default:""},defaultOpeneds:{type:Y(Array),default:()=>Vt([])},uniqueOpened:Boolean,router:Boolean,menuTrigger:{type:String,values:["hover","click"],default:"hover"},collapse:Boolean,backgroundColor:String,textColor:String,activeTextColor:String,closeOnClickOutside:Boolean,collapseTransition:{type:Boolean,default:!0},ellipsis:{type:Boolean,default:!0},popperOffset:{type:Number,default:6},ellipsisIcon:{type:$t,default:()=>bm},popperEffect:{type:Y(String),default:"dark"},popperClass:String,showTimeout:{type:Number,default:300},hideTimeout:{type:Number,default:300},persistent:{type:Boolean,default:!0}}),Us=e=>ke(e)&&e.every(t=>Ve(t)),d2={close:(e,t)=>Ve(e)&&Us(t),open:(e,t)=>Ve(e)&&Us(t),select:(e,t,n,l)=>Ve(e)&&Us(t)&&yt(n)&&(vt(l)||l instanceof Promise)};var f2=x({name:"ElMenu",props:c2,emits:d2,setup(e,{emit:t,slots:n,expose:l}){const a=lt(),s=a.appContext.config.globalProperties.$router,r=I(),i=ue("menu"),u=ue("sub-menu"),c=I(-1),d=I(e.defaultOpeneds&&!e.collapse?e.defaultOpeneds.slice(0):[]),f=I(e.defaultActive),m=I({}),v=I({}),h=y(()=>e.mode==="horizontal"||e.mode==="vertical"&&e.collapse),p=()=>{const D=f.value&&m.value[f.value];if(!D||e.mode==="horizontal"||e.collapse)return;D.indexPath.forEach(z=>{const B=v.value[z];B&&g(z,B.indexPath)})},g=(D,L)=>{d.value.includes(D)||(e.uniqueOpened&&(d.value=d.value.filter(z=>L.includes(z))),d.value.push(D),t("open",D,L))},b=D=>{const L=d.value.indexOf(D);L!==-1&&d.value.splice(L,1)},E=(D,L)=>{b(D),t("close",D,L)},C=({index:D,indexPath:L})=>{d.value.includes(D)?E(D,L):g(D,L)},w=D=>{(e.mode==="horizontal"||e.collapse)&&(d.value=[]);const{index:L,indexPath:z}=D;if(!(qt(L)||qt(z)))if(e.router&&s){const B=D.route||L,A=s.push(B).then(ne=>(ne||(f.value=L),ne));t("select",L,z,{index:L,indexPath:z,route:B},A)}else f.value=L,t("select",L,z,{index:L,indexPath:z})},k=D=>{var L;const z=m.value,B=z[D]||f.value&&z[f.value]||z[e.defaultActive];f.value=(L=B==null?void 0:B.index)!=null?L:D},S=D=>{const L=getComputedStyle(D),z=Number.parseInt(L.marginLeft,10),B=Number.parseInt(L.marginRight,10);return D.offsetWidth+z+B||0},$=()=>{var D,L;if(!r.value)return-1;const z=Array.from((L=(D=r.value)==null?void 0:D.childNodes)!=null?L:[]).filter(ae=>ae.nodeName!=="#text"||ae.nodeValue),B=64,A=getComputedStyle(r.value),ne=Number.parseInt(A.paddingLeft,10),j=Number.parseInt(A.paddingRight,10),Q=r.value.clientWidth-ne-j;let Z=0,ee=0;return z.forEach((ae,re)=>{ae.nodeName!=="#comment"&&(Z+=S(ae),Z<=Q-B&&(ee=re+1))}),ee===z.length?-1:ee},M=D=>v.value[D].indexPath,R=(D,L=33.34)=>{let z;return()=>{z&&clearTimeout(z),z=setTimeout(()=>{D()},L)}};let N=!0;const O=()=>{if(c.value===$())return;const D=()=>{c.value=-1,Ee(()=>{c.value=$()})};N?D():R(D)(),N=!1};ie(()=>e.defaultActive,D=>{m.value[D]||(f.value=""),k(D)}),ie(()=>e.collapse,D=>{D&&(d.value=[])}),ie(m.value,p);let P;bn(()=>{e.mode==="horizontal"&&e.ellipsis?P=Ft(r,O).stop:P==null||P()});const W=I(!1);{const D=A=>{v.value[A.index]=A},L=A=>{delete v.value[A.index]};rt(wi,kt({props:e,openedMenus:d,items:m,subMenus:v,activeIndex:f,isMenuPopup:h,addMenuItem:A=>{m.value[A.index]=A},removeMenuItem:A=>{delete m.value[A.index]},addSubMenu:D,removeSubMenu:L,openMenu:g,closeMenu:E,handleMenuItemClick:w,handleSubMenuClick:C})),rt(`${Ja}${a.uid}`,{addSubMenu:D,removeSubMenu:L,mouseInChild:W,level:0})}Xe(()=>{e.mode==="horizontal"&&new o2(a.vnode.el,i.namespace.value)}),l({open:L=>{const{indexPath:z}=v.value[L];z.forEach(B=>g(B,z))},close:b,updateActiveIndex:k,handleResize:O});const K=Kf(e,0);return()=>{var D,L;let z=(L=(D=n.default)==null?void 0:D.call(n))!=null?L:[];const B=[];if(e.mode==="horizontal"&&r.value){const j=Zn(z),Q=c.value===-1?j:j.slice(0,c.value),Z=c.value===-1?[]:j.slice(c.value);Z!=null&&Z.length&&e.ellipsis&&(z=Q,B.push(Re(ki,{index:"sub-menu-more",class:u.e("hide-arrow"),popperOffset:e.popperOffset},{title:()=>Re(Se,{class:u.e("icon-more")},{default:()=>Re(e.ellipsisIcon)}),default:()=>Z})))}const A=e.closeOnClickOutside?[[vl,()=>{d.value.length&&(W.value||(d.value.forEach(j=>t("close",j,M(j))),d.value=[]))}]]:[],ne=We(Re("ul",{key:String(e.collapse),role:"menubar",ref:r,style:K.value,class:{[i.b()]:!0,[i.m(e.mode)]:!0,[i.m("collapse")]:e.collapse}},[...z,...B]),A);return e.collapseTransition&&e.mode==="vertical"?Re(r2,()=>ne):ne}}});const v2=de({index:{type:Y([String,null]),default:null},route:{type:Y([String,Object])},disabled:Boolean}),p2={click:e=>Ve(e.index)&&ke(e.indexPath)},hr="ElMenuItem",h2=x({name:hr}),m2=x({...h2,props:v2,emits:p2,setup(e,{expose:t,emit:n}){const l=e;In(l.index)&&void 0;const a=lt(),s=we(wi),r=ue("menu"),i=ue("menu-item");s||jt(hr,"can not inject root menu");const{parentMenu:u,indexPath:c}=Hf(a,wt(l,"index")),d=we(`${Ja}${u.value.uid}`);d||jt(hr,"can not inject sub menu");const f=y(()=>l.index===s.activeIndex),m=kt({index:l.index,indexPath:c,active:f}),v=()=>{l.disabled||(s.handleMenuItemClick({index:l.index,indexPath:c.value,route:l.route}),n("click",m))};return Xe(()=>{d.addSubMenu(m),s.addMenuItem(m)}),Nt(()=>{d.removeSubMenu(m),s.removeMenuItem(m)}),t({parentMenu:u,rootMenu:s,active:f,nsMenu:r,nsMenuItem:i,handleClick:v}),(h,p)=>(_(),V("li",{class:T([o(i).b(),o(i).is("active",o(f)),o(i).is("disabled",h.disabled)]),role:"menuitem",tabindex:"-1",onClick:v},[o(u).type.name==="ElMenu"&&o(s).props.collapse&&h.$slots.title?(_(),oe(o(un),{key:0,effect:o(s).props.popperEffect,placement:"right","fallback-placements":["left"],persistent:o(s).props.persistent},{content:U(()=>[G(h.$slots,"title")]),default:U(()=>[F("div",{class:T(o(r).be("tooltip","trigger"))},[G(h.$slots,"default")],2)]),_:3},8,["effect","persistent"])):(_(),V(Oe,{key:1},[G(h.$slots,"default"),G(h.$slots,"title")],64))],2))}});var Wf=fe(m2,[["__file","menu-item.vue"]]);const g2={title:String},b2=x({name:"ElMenuItemGroup"}),y2=x({...b2,props:g2,setup(e){const t=ue("menu-item-group");return(n,l)=>(_(),V("li",{class:T(o(t).b())},[F("div",{class:T(o(t).e("title"))},[n.$slots.title?G(n.$slots,"title",{key:1}):(_(),V(Oe,{key:0},[st(pe(n.title),1)],64))],2),F("ul",null,[G(n.$slots,"default")])],2))}});var jf=fe(y2,[["__file","menu-item-group.vue"]]);const C2=He(f2,{MenuItem:Wf,MenuItemGroup:jf,SubMenu:ki}),w2=At(Wf),k2=At(jf),S2=At(ki),E2=de({icon:{type:$t,default:()=>Hh},title:String,content:{type:String,default:""}}),_2={back:()=>!0},T2=x({name:"ElPageHeader"}),$2=x({...T2,props:E2,emits:_2,setup(e,{emit:t}){const{t:n}=pt(),l=ue("page-header");function a(){t("back")}return(s,r)=>(_(),V("div",{class:T([o(l).b(),{[o(l).m("has-breadcrumb")]:!!s.$slots.breadcrumb,[o(l).m("has-extra")]:!!s.$slots.extra,[o(l).is("contentful")]:!!s.$slots.default}])},[s.$slots.breadcrumb?(_(),V("div",{key:0,class:T(o(l).e("breadcrumb"))},[G(s.$slots,"breadcrumb")],2)):J("v-if",!0),F("div",{class:T(o(l).e("header"))},[F("div",{class:T(o(l).e("left"))},[F("div",{class:T(o(l).e("back")),role:"button",tabindex:"0",onClick:a},[s.icon||s.$slots.icon?(_(),V("div",{key:0,"aria-label":s.title||o(n)("el.pageHeader.title"),class:T(o(l).e("icon"))},[G(s.$slots,"icon",{},()=>[s.icon?(_(),oe(o(Se),{key:0},{default:U(()=>[(_(),oe(Ge(s.icon)))]),_:1})):J("v-if",!0)])],10,["aria-label"])):J("v-if",!0),F("div",{class:T(o(l).e("title"))},[G(s.$slots,"title",{},()=>[st(pe(s.title||o(n)("el.pageHeader.title")),1)])],2)],2),H(o(Nf),{direction:"vertical"}),F("div",{class:T(o(l).e("content"))},[G(s.$slots,"content",{},()=>[st(pe(s.content),1)])],2)],2),s.$slots.extra?(_(),V("div",{key:0,class:T(o(l).e("extra"))},[G(s.$slots,"extra")],2)):J("v-if",!0)],2),s.$slots.default?(_(),V("div",{key:1,class:T(o(l).e("main"))},[G(s.$slots,"default")],2)):J("v-if",!0)],2))}});var N2=fe($2,[["__file","page-header.vue"]]);const I2=He(N2),Uf=Symbol("elPaginationKey"),M2=de({disabled:Boolean,currentPage:{type:Number,default:1},prevText:{type:String},prevIcon:{type:$t}}),R2={click:e=>e instanceof MouseEvent},P2=x({name:"ElPaginationPrev"}),O2=x({...P2,props:M2,emits:R2,setup(e){const t=e,{t:n}=pt(),l=y(()=>t.disabled||t.currentPage<=1);return(a,s)=>(_(),V("button",{type:"button",class:"btn-prev",disabled:o(l),"aria-label":a.prevText||o(n)("el.pagination.prev"),"aria-disabled":o(l),onClick:r=>a.$emit("click",r)},[a.prevText?(_(),V("span",{key:0},pe(a.prevText),1)):(_(),oe(o(Se),{key:1},{default:U(()=>[(_(),oe(Ge(a.prevIcon)))]),_:1}))],8,["disabled","aria-label","aria-disabled","onClick"]))}});var L2=fe(O2,[["__file","prev.vue"]]);const B2=de({disabled:Boolean,currentPage:{type:Number,default:1},pageCount:{type:Number,default:50},nextText:{type:String},nextIcon:{type:$t}}),V2=x({name:"ElPaginationNext"}),D2=x({...V2,props:B2,emits:["click"],setup(e){const t=e,{t:n}=pt(),l=y(()=>t.disabled||t.currentPage===t.pageCount||t.pageCount===0);return(a,s)=>(_(),V("button",{type:"button",class:"btn-next",disabled:o(l),"aria-label":a.nextText||o(n)("el.pagination.next"),"aria-disabled":o(l),onClick:r=>a.$emit("click",r)},[a.nextText?(_(),V("span",{key:0},pe(a.nextText),1)):(_(),oe(o(Se),{key:1},{default:U(()=>[(_(),oe(Ge(a.nextIcon)))]),_:1}))],8,["disabled","aria-label","aria-disabled","onClick"]))}});var A2=fe(D2,[["__file","next.vue"]]);const Yf=Symbol("ElSelectGroup"),Lo=Symbol("ElSelect"),mr="ElOption",F2=de({value:{type:[String,Number,Boolean,Object],required:!0},label:{type:[String,Number]},created:Boolean,disabled:Boolean}),Si=(e="")=>e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d"),_l=e=>Vp(e);function x2(e,t){const n=we(Lo);n||jt(mr,"usage: ");const l=we(Yf,{disabled:!1}),a=y(()=>d(ln(n.props.modelValue),e.value)),s=y(()=>{var v;if(n.props.multiple){const h=ln((v=n.props.modelValue)!=null?v:[]);return!a.value&&h.length>=n.props.multipleLimit&&n.props.multipleLimit>0}else return!1}),r=y(()=>{var v;return(v=e.label)!=null?v:yt(e.value)?"":e.value}),i=y(()=>e.value||e.label||""),u=y(()=>e.disabled||t.groupDisabled||s.value),c=lt(),d=(v=[],h)=>{if(yt(e.value)){const p=n.props.valueKey;return v&&v.some(g=>Uo(Yt(g,p))===Yt(h,p))}else return v&&v.includes(h)},f=()=>{!e.disabled&&!l.disabled&&(n.states.hoveringIndex=n.optionsArray.indexOf(c.proxy))},m=v=>{const h=new RegExp(Si(v),"i");t.visible=h.test(String(r.value))||e.created};return ie(()=>r.value,()=>{!e.created&&!n.props.remote&&n.setSelected()}),ie(()=>e.value,(v,h)=>{const{remote:p,valueKey:g}=n.props;if((p?v!==h:!tn(v,h))&&(n.onOptionDestroy(h,c.proxy),n.onOptionCreate(c.proxy)),!e.created&&!p){if(g&&yt(v)&&yt(h)&&v[g]===h[g])return;n.setSelected()}}),ie(()=>l.disabled,()=>{t.groupDisabled=l.disabled},{immediate:!0}),{select:n,currentLabel:r,currentValue:i,itemSelected:a,isDisabled:u,hoverItem:f,updateOption:m}}const z2=x({name:mr,componentName:mr,props:F2,setup(e){const t=ue("select"),n=sn(),l=y(()=>[t.be("dropdown","item"),t.is("disabled",o(i)),t.is("selected",o(r)),t.is("hovering",o(m))]),a=kt({index:-1,groupDisabled:!1,visible:!0,hover:!1}),{currentLabel:s,itemSelected:r,isDisabled:i,select:u,hoverItem:c,updateOption:d}=x2(e,a),{visible:f,hover:m}=nn(a),v=lt().proxy;u.onOptionCreate(v),Nt(()=>{const p=v.value,{selected:g}=u.states,b=g.some(E=>E.value===v.value);Ee(()=>{u.states.cachedOptions.get(p)===v&&!b&&u.states.cachedOptions.delete(p)}),u.onOptionDestroy(p,v)});function h(){i.value||u.handleOptionSelect(v)}return{ns:t,id:n,containerKls:l,currentLabel:s,itemSelected:r,isDisabled:i,select:u,visible:f,hover:m,states:a,hoverItem:c,updateOption:d,selectOptionClick:h}}});function H2(e,t){return We((_(),V("li",{id:e.id,class:T(e.containerKls),role:"option","aria-disabled":e.isDisabled||void 0,"aria-selected":e.itemSelected,onMousemove:e.hoverItem,onClick:Le(e.selectOptionClick,["stop"])},[G(e.$slots,"default",{},()=>[F("span",null,pe(e.currentLabel),1)])],42,["id","aria-disabled","aria-selected","onMousemove","onClick"])),[[mt,e.visible]])}var Ei=fe(z2,[["render",H2],["__file","option.vue"]]);const K2=x({name:"ElSelectDropdown",componentName:"ElSelectDropdown",setup(){const e=we(Lo),t=ue("select"),n=y(()=>e.props.popperClass),l=y(()=>e.props.multiple),a=y(()=>e.props.fitInputWidth),s=I("");function r(){var i;s.value=`${(i=e.selectRef)==null?void 0:i.offsetWidth}px`}return Xe(()=>{r(),Ft(e.selectRef,r)}),{ns:t,minWidth:s,popperClass:n,isMultiple:l,isFitInputWidth:a}}});function W2(e,t,n,l,a,s){return _(),V("div",{class:T([e.ns.b("dropdown"),e.ns.is("multiple",e.isMultiple),e.popperClass]),style:_e({[e.isFitInputWidth?"width":"minWidth"]:e.minWidth})},[e.$slots.header?(_(),V("div",{key:0,class:T(e.ns.be("dropdown","header"))},[G(e.$slots,"header")],2)):J("v-if",!0),G(e.$slots,"default"),e.$slots.footer?(_(),V("div",{key:1,class:T(e.ns.be("dropdown","footer"))},[G(e.$slots,"footer")],2)):J("v-if",!0)],6)}var j2=fe(K2,[["render",W2],["__file","select-dropdown.vue"]]);const U2=(e,t)=>{const{t:n}=pt(),l=sn(),a=ue("select"),s=ue("input"),r=kt({inputValue:"",options:new Map,cachedOptions:new Map,optionValues:[],selected:[],selectionWidth:0,collapseItemWidth:0,selectedLabel:"",hoveringIndex:-1,previousQuery:null,inputHovering:!1,menuVisibleOnFocus:!1,isBeforeHide:!1}),i=I(),u=I(),c=I(),d=I(),f=I(),m=I(),v=I(),h=I(),p=I(),g=I(),b=I(),E=I(!1),C=I(),{form:w,formItem:k}=dn(),{inputId:S}=Kn(e,{formItemContext:k}),{valueOnClear:$,isEmptyValue:M}=da(e),{isComposing:R,handleCompositionStart:N,handleCompositionUpdate:O,handleCompositionEnd:P}=ha({afterComposition:me=>Rt(me)}),W=y(()=>e.disabled||!!(w!=null&&w.disabled)),{wrapperRef:K,isFocused:D,handleBlur:L}=Ll(f,{disabled:W,afterFocus(){e.automaticDropdown&&!E.value&&(E.value=!0,r.menuVisibleOnFocus=!0)},beforeBlur(me){var ze,Et;return((ze=c.value)==null?void 0:ze.isFocusInsideContent(me))||((Et=d.value)==null?void 0:Et.isFocusInsideContent(me))},afterBlur(){var me;E.value=!1,r.menuVisibleOnFocus=!1,e.validateEvent&&((me=k==null?void 0:k.validate)==null||me.call(k,"blur").catch(ze=>void 0))}}),z=y(()=>ke(e.modelValue)?e.modelValue.length>0:!M(e.modelValue)),B=y(()=>{var me;return(me=w==null?void 0:w.statusIcon)!=null?me:!1}),A=y(()=>e.clearable&&!W.value&&r.inputHovering&&z.value),ne=y(()=>e.remote&&e.filterable&&!e.remoteShowSuffix?"":e.suffixIcon),j=y(()=>a.is("reverse",!!(ne.value&&E.value))),Q=y(()=>(k==null?void 0:k.validateState)||""),Z=y(()=>Q.value&&gs[Q.value]),ee=y(()=>e.remote?300:0),ae=y(()=>e.remote&&!r.inputValue&&r.options.size===0),re=y(()=>e.loading?e.loadingText||n("el.select.loading"):e.filterable&&r.inputValue&&r.options.size>0&&le.value===0?e.noMatchText||n("el.select.noMatch"):r.options.size===0?e.noDataText||n("el.select.noData"):null),le=y(()=>se.value.filter(me=>me.visible).length),se=y(()=>{const me=Array.from(r.options.values()),ze=[];return r.optionValues.forEach(Et=>{const Qt=me.findIndex(vn=>vn.value===Et);Qt>-1&&ze.push(me[Qt])}),ze.length>=me.length?ze:me}),ge=y(()=>Array.from(r.cachedOptions.values())),Be=y(()=>{const me=se.value.filter(ze=>!ze.created).some(ze=>ze.currentLabel===r.inputValue);return e.filterable&&e.allowCreate&&r.inputValue!==""&&!me}),te=()=>{e.filterable&&Qe(e.filterMethod)||e.filterable&&e.remote&&Qe(e.remoteMethod)||se.value.forEach(me=>{var ze;(ze=me.updateOption)==null||ze.call(me,r.inputValue)})},ce=Gt(),Ie=y(()=>["small"].includes(ce.value)?"small":"default"),Ae=y({get(){return E.value&&!ae.value},set(me){E.value=me}}),xe=y(()=>{if(e.multiple&&!vt(e.modelValue))return ln(e.modelValue).length===0&&!r.inputValue;const me=ke(e.modelValue)?e.modelValue[0]:e.modelValue;return e.filterable||vt(me)?!r.inputValue:!0}),Ye=y(()=>{var me;const ze=(me=e.placeholder)!=null?me:n("el.select.placeholder");return e.multiple||!z.value?ze:r.selectedLabel}),$e=y(()=>nr?null:"mouseenter");ie(()=>e.modelValue,(me,ze)=>{e.multiple&&e.filterable&&!e.reserveKeyword&&(r.inputValue="",Me("")),Ze(),!tn(me,ze)&&e.validateEvent&&(k==null||k.validate("change").catch(Et=>void 0))},{flush:"post",deep:!0}),ie(()=>E.value,me=>{me?Me(r.inputValue):(r.inputValue="",r.previousQuery=null,r.isBeforeHide=!0),t("visible-change",me)}),ie(()=>r.options.entries(),()=>{bt&&(Ze(),e.defaultFirstOption&&(e.filterable||e.remote)&&le.value&&Pe())},{flush:"post"}),ie([()=>r.hoveringIndex,se],([me])=>{Te(me)&&me>-1?C.value=se.value[me]||{}:C.value={},se.value.forEach(ze=>{ze.hover=C.value===ze})}),bn(()=>{r.isBeforeHide||te()});const Me=me=>{r.previousQuery===me||R.value||(r.previousQuery=me,e.filterable&&Qe(e.filterMethod)?e.filterMethod(me):e.filterable&&e.remote&&Qe(e.remoteMethod)&&e.remoteMethod(me),e.defaultFirstOption&&(e.filterable||e.remote)&&le.value?Ee(Pe):Ee(at))},Pe=()=>{const me=se.value.filter(vn=>vn.visible&&!vn.disabled&&!vn.states.groupDisabled),ze=me.find(vn=>vn.created),Et=me[0],Qt=se.value.map(vn=>vn.value);r.hoveringIndex=q(Qt,ze||Et)},Ze=()=>{if(e.multiple)r.selectedLabel="";else{const ze=ke(e.modelValue)?e.modelValue[0]:e.modelValue,Et=ot(ze);r.selectedLabel=Et.currentLabel,r.selected=[Et];return}const me=[];vt(e.modelValue)||ln(e.modelValue).forEach(ze=>{me.push(ot(ze))}),r.selected=me},ot=me=>{let ze;const Et=lr(me);for(let yl=r.cachedOptions.size-1;yl>=0;yl--){const Gn=ge.value[yl];if(Et?Yt(Gn.value,e.valueKey)===Yt(me,e.valueKey):Gn.value===me){ze={value:me,currentLabel:Gn.currentLabel,get isDisabled(){return Gn.isDisabled}};break}}if(ze)return ze;const Qt=Et?me.label:me??"";return{value:me,currentLabel:Qt}},at=()=>{r.hoveringIndex=se.value.findIndex(me=>r.selected.some(ze=>wn(ze)===wn(me)))},ct=()=>{r.selectionWidth=Number.parseFloat(window.getComputedStyle(u.value).width)},ye=()=>{r.collapseItemWidth=g.value.getBoundingClientRect().width},Ue=()=>{var me,ze;(ze=(me=c.value)==null?void 0:me.updatePopper)==null||ze.call(me)},It=()=>{var me,ze;(ze=(me=d.value)==null?void 0:me.updatePopper)==null||ze.call(me)},Ot=()=>{r.inputValue.length>0&&!E.value&&(E.value=!0),Me(r.inputValue)},Rt=me=>{if(r.inputValue=me.target.value,e.remote)Mt();else return Ot()},Mt=Ln(()=>{Ot()},ee.value),St=me=>{tn(e.modelValue,me)||t(nt,me)},je=me=>Dc(me,ze=>{const Et=r.cachedOptions.get(ze);return Et&&!Et.disabled&&!Et.states.groupDisabled}),tt=me=>{if(e.multiple&&me.code!==Ce.delete&&me.target.value.length<=0){const ze=ln(e.modelValue).slice(),Et=je(ze);if(Et<0)return;const Qt=ze[Et];ze.splice(Et,1),t(De,ze),St(ze),t("remove-tag",Qt)}},it=(me,ze)=>{const Et=r.selected.indexOf(ze);if(Et>-1&&!W.value){const Qt=ln(e.modelValue).slice();Qt.splice(Et,1),t(De,Qt),St(Qt),t("remove-tag",ze.value)}me.stopPropagation(),Ut()},X=me=>{me.stopPropagation();const ze=e.multiple?[]:$.value;if(e.multiple)for(const Et of r.selected)Et.isDisabled&&ze.push(Et.value);t(De,ze),St(ze),r.hoveringIndex=-1,E.value=!1,t("clear"),Ut()},ve=me=>{var ze;if(e.multiple){const Et=ln((ze=e.modelValue)!=null?ze:[]).slice(),Qt=q(Et,me);Qt>-1?Et.splice(Qt,1):(e.multipleLimit<=0||Et.length{be(me)})},q=(me,ze)=>vt(ze)?-1:yt(ze.value)?me.findIndex(Et=>tn(Yt(Et,e.valueKey),wn(ze))):me.indexOf(ze.value),be=me=>{var ze,Et,Qt,vn,yl;const Gn=ke(me)?me[0]:me;let Cl=null;if(Gn!=null&&Gn.value){const wl=se.value.filter(eo=>eo.value===Gn.value);wl.length>0&&(Cl=wl[0].$el)}if(c.value&&Cl){const wl=(vn=(Qt=(Et=(ze=c.value)==null?void 0:ze.popperRef)==null?void 0:Et.contentRef)==null?void 0:Qt.querySelector)==null?void 0:vn.call(Qt,`.${a.be("dropdown","wrap")}`);wl&&Ur(wl,Cl)}(yl=b.value)==null||yl.handleScroll()},qe=me=>{r.options.set(me.value,me),r.cachedOptions.set(me.value,me)},ft=(me,ze)=>{r.options.get(me)===ze&&r.options.delete(me)},Pt=y(()=>{var me,ze;return(ze=(me=c.value)==null?void 0:me.popperRef)==null?void 0:ze.contentRef}),Kt=()=>{r.isBeforeHide=!1,Ee(()=>{var me;(me=b.value)==null||me.update(),be(r.selected)})},Ut=()=>{var me;(me=f.value)==null||me.focus()},ll=()=>{var me;if(E.value){E.value=!1,Ee(()=>{var ze;return(ze=f.value)==null?void 0:ze.blur()});return}(me=f.value)==null||me.blur()},en=me=>{X(me)},Bn=me=>{if(E.value=!1,D.value){const ze=new FocusEvent("focus",me);Ee(()=>L(ze))}},Ne=()=>{r.inputValue.length>0?r.inputValue="":E.value=!1},gt=()=>{W.value||(nr&&(r.inputHovering=!0),r.menuVisibleOnFocus?r.menuVisibleOnFocus=!1:E.value=!E.value)},Je=()=>{if(!E.value)gt();else{const me=se.value[r.hoveringIndex];me&&!me.isDisabled&&ve(me)}},wn=me=>yt(me.value)?Yt(me.value,e.valueKey):me.value,qn=y(()=>se.value.filter(me=>me.visible).every(me=>me.isDisabled)),bl=y(()=>e.multiple?e.collapseTags?r.selected.slice(0,e.maxCollapseTags):r.selected:[]),Ql=y(()=>e.multiple?e.collapseTags?r.selected.slice(e.maxCollapseTags):[]:[]),ya=me=>{if(!E.value){E.value=!0;return}if(!(r.options.size===0||le.value===0||R.value)&&!qn.value){me==="next"?(r.hoveringIndex++,r.hoveringIndex===r.options.size&&(r.hoveringIndex=0)):me==="prev"&&(r.hoveringIndex--,r.hoveringIndex<0&&(r.hoveringIndex=r.options.size-1));const ze=se.value[r.hoveringIndex];(ze.isDisabled||!ze.visible)&&ya(me),Ee(()=>be(C.value))}},Ps=()=>{if(!u.value)return 0;const me=window.getComputedStyle(u.value);return Number.parseFloat(me.gap||"6px")},Os=y(()=>{const me=Ps();return{maxWidth:`${g.value&&e.maxCollapseTags===1?r.selectionWidth-r.collapseItemWidth-me:r.selectionWidth}px`}}),Ls=y(()=>({maxWidth:`${r.selectionWidth}px`})),Bs=me=>{t("popup-scroll",me)};return Ft(u,ct),Ft(h,Ue),Ft(K,Ue),Ft(p,It),Ft(g,ye),Xe(()=>{Ze()}),{inputId:S,contentId:l,nsSelect:a,nsInput:s,states:r,isFocused:D,expanded:E,optionsArray:se,hoverOption:C,selectSize:ce,filteredOptionsCount:le,updateTooltip:Ue,updateTagTooltip:It,debouncedOnInputChange:Mt,onInput:Rt,deletePrevTag:tt,deleteTag:it,deleteSelected:X,handleOptionSelect:ve,scrollToOption:be,hasModelValue:z,shouldShowPlaceholder:xe,currentPlaceholder:Ye,mouseEnterEventName:$e,needStatusIcon:B,showClose:A,iconComponent:ne,iconReverse:j,validateState:Q,validateIcon:Z,showNewOption:Be,updateOptions:te,collapseTagSize:Ie,setSelected:Ze,selectDisabled:W,emptyText:re,handleCompositionStart:N,handleCompositionUpdate:O,handleCompositionEnd:P,onOptionCreate:qe,onOptionDestroy:ft,handleMenuEnter:Kt,focus:Ut,blur:ll,handleClearClick:en,handleClickOutside:Bn,handleEsc:Ne,toggleMenu:gt,selectOption:Je,getValueKey:wn,navigateOptions:ya,dropdownMenuVisible:Ae,showTagList:bl,collapseTagList:Ql,popupScroll:Bs,tagStyle:Os,collapseTagStyle:Ls,popperRef:Pt,inputRef:f,tooltipRef:c,tagTooltipRef:d,prefixRef:m,suffixRef:v,selectRef:i,wrapperRef:K,selectionRef:u,scrollbarRef:b,menuRef:h,tagMenuRef:p,collapseItemRef:g}};var Y2=x({name:"ElOptions",setup(e,{slots:t}){const n=we(Lo);let l=[];return()=>{var a,s;const r=(a=t.default)==null?void 0:a.call(t),i=[];function u(c){ke(c)&&c.forEach(d=>{var f,m,v,h;const p=(f=(d==null?void 0:d.type)||{})==null?void 0:f.name;p==="ElOptionGroup"?u(!Ve(d.children)&&!ke(d.children)&&Qe((m=d.children)==null?void 0:m.default)?(v=d.children)==null?void 0:v.default():d.children):p==="ElOption"?i.push((h=d.props)==null?void 0:h.value):ke(d.children)&&u(d.children)})}return r.length&&u((s=r[0])==null?void 0:s.children),tn(i,l)||(l=i,n&&(n.states.optionValues=i)),r}}});const q2=de({name:String,id:String,modelValue:{type:Y([Array,String,Number,Boolean,Object]),default:void 0},autocomplete:{type:String,default:"off"},automaticDropdown:Boolean,size:Jt,effect:{type:Y(String),default:"light"},disabled:Boolean,clearable:Boolean,filterable:Boolean,allowCreate:Boolean,loading:Boolean,popperClass:{type:String,default:""},popperOptions:{type:Y(Object),default:()=>({})},remote:Boolean,loadingText:String,noMatchText:String,noDataText:String,remoteMethod:Function,filterMethod:Function,multiple:Boolean,multipleLimit:{type:Number,default:0},placeholder:{type:String},defaultFirstOption:Boolean,reserveKeyword:{type:Boolean,default:!0},valueKey:{type:String,default:"value"},collapseTags:Boolean,collapseTagsTooltip:Boolean,maxCollapseTags:{type:Number,default:1},teleported:Wt.teleported,persistent:{type:Boolean,default:!0},clearIcon:{type:$t,default:ml},fitInputWidth:Boolean,suffixIcon:{type:$t,default:nl},tagType:{...fl.type,default:"info"},tagEffect:{...fl.effect,default:"light"},validateEvent:{type:Boolean,default:!0},remoteShowSuffix:Boolean,showArrow:{type:Boolean,default:!0},offset:{type:Number,default:12},placement:{type:Y(String),values:Xl,default:"bottom-start"},fallbackPlacements:{type:Y(Array),default:["bottom-start","top-start","right","left"]},tabindex:{type:[String,Number],default:0},appendTo:Wt.appendTo,...Zl,...cn(["ariaLabel"])});gd.scroll;const ju="ElSelect",G2=x({name:ju,componentName:ju,components:{ElSelectMenu:j2,ElOption:Ei,ElOptions:Y2,ElTag:So,ElScrollbar:jn,ElTooltip:un,ElIcon:Se},directives:{ClickOutside:vl},props:q2,emits:[De,nt,"remove-tag","clear","visible-change","focus","blur","popup-scroll"],setup(e,{emit:t,slots:n}){const l=lt();l.appContext.config.warnHandler=(...m)=>{!m[0]||m[0].includes('Slot "default" invoked outside of the render function')||console.warn(...m)};const a=y(()=>{const{modelValue:m,multiple:v}=e,h=v?[]:void 0;return ke(m)?v?m:h:v?h:m}),s=kt({...nn(e),modelValue:a}),r=U2(s,t),{calculatorRef:i,inputStyle:u}=Ci(),c=m=>m.reduce((v,h)=>(v.push(h),h.children&&h.children.length>0&&v.push(...c(h.children)),v),[]),d=m=>{Zn(m||[]).forEach(h=>{var p;if(yt(h)&&(h.type.name==="ElOption"||h.type.name==="ElTree")){const g=h.type.name;if(g==="ElTree"){const b=((p=h.props)==null?void 0:p.data)||[];c(b).forEach(C=>{C.currentLabel=C.label||(yt(C.value)?"":C.value),r.onOptionCreate(C)})}else if(g==="ElOption"){const b={...h.props};b.currentLabel=b.label||(yt(b.value)?"":b.value),r.onOptionCreate(b)}}})};ie(()=>{var m;return(m=n.default)==null?void 0:m.call(n)},m=>{e.persistent||d(m)},{immediate:!0}),rt(Lo,kt({props:s,states:r.states,selectRef:r.selectRef,optionsArray:r.optionsArray,setSelected:r.setSelected,handleOptionSelect:r.handleOptionSelect,onOptionCreate:r.onOptionCreate,onOptionDestroy:r.onOptionDestroy}));const f=y(()=>e.multiple?r.states.selected.map(m=>m.currentLabel):r.states.selectedLabel);return Nt(()=>{l.appContext.config.warnHandler=void 0}),{...r,modelValue:a,selectedLabel:f,calculatorRef:i,inputStyle:u}}});function X2(e,t){const n=ht("el-tag"),l=ht("el-tooltip"),a=ht("el-icon"),s=ht("el-option"),r=ht("el-options"),i=ht("el-scrollbar"),u=ht("el-select-menu"),c=fs("click-outside");return We((_(),V("div",{ref:"selectRef",class:T([e.nsSelect.b(),e.nsSelect.m(e.selectSize)]),[Dp(e.mouseEnterEventName)]:d=>e.states.inputHovering=!0,onMouseleave:d=>e.states.inputHovering=!1},[H(l,{ref:"tooltipRef",visible:e.dropdownMenuVisible,placement:e.placement,teleported:e.teleported,"popper-class":[e.nsSelect.e("popper"),e.popperClass],"popper-options":e.popperOptions,"fallback-placements":e.fallbackPlacements,effect:e.effect,pure:"",trigger:"click",transition:`${e.nsSelect.namespace.value}-zoom-in-top`,"stop-popper-mouse-event":!1,"gpu-acceleration":!1,persistent:e.persistent,"append-to":e.appendTo,"show-arrow":e.showArrow,offset:e.offset,onBeforeShow:e.handleMenuEnter,onHide:d=>e.states.isBeforeHide=!1},{default:U(()=>{var d;return[F("div",{ref:"wrapperRef",class:T([e.nsSelect.e("wrapper"),e.nsSelect.is("focused",e.isFocused),e.nsSelect.is("hovering",e.states.inputHovering),e.nsSelect.is("filterable",e.filterable),e.nsSelect.is("disabled",e.selectDisabled)]),onClick:Le(e.toggleMenu,["prevent"])},[e.$slots.prefix?(_(),V("div",{key:0,ref:"prefixRef",class:T(e.nsSelect.e("prefix"))},[G(e.$slots,"prefix")],2)):J("v-if",!0),F("div",{ref:"selectionRef",class:T([e.nsSelect.e("selection"),e.nsSelect.is("near",e.multiple&&!e.$slots.prefix&&!!e.states.selected.length)])},[e.multiple?G(e.$slots,"tag",{key:0,data:e.states.selected,deleteTag:e.deleteTag,selectDisabled:e.selectDisabled},()=>[(_(!0),V(Oe,null,ut(e.showTagList,f=>(_(),V("div",{key:e.getValueKey(f),class:T(e.nsSelect.e("selected-item"))},[H(n,{closable:!e.selectDisabled&&!f.isDisabled,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",style:_e(e.tagStyle),onClose:m=>e.deleteTag(m,f)},{default:U(()=>[F("span",{class:T(e.nsSelect.e("tags-text"))},[G(e.$slots,"label",{label:f.currentLabel,value:f.value},()=>[st(pe(f.currentLabel),1)])],2)]),_:2},1032,["closable","size","type","effect","style","onClose"])],2))),128)),e.collapseTags&&e.states.selected.length>e.maxCollapseTags?(_(),oe(l,{key:0,ref:"tagTooltipRef",disabled:e.dropdownMenuVisible||!e.collapseTagsTooltip,"fallback-placements":["bottom","top","right","left"],effect:e.effect,placement:"bottom","popper-class":e.popperClass,teleported:e.teleported},{default:U(()=>[F("div",{ref:"collapseItemRef",class:T(e.nsSelect.e("selected-item"))},[H(n,{closable:!1,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",style:_e(e.collapseTagStyle)},{default:U(()=>[F("span",{class:T(e.nsSelect.e("tags-text"))}," + "+pe(e.states.selected.length-e.maxCollapseTags),3)]),_:1},8,["size","type","effect","style"])],2)]),content:U(()=>[F("div",{ref:"tagMenuRef",class:T(e.nsSelect.e("selection"))},[(_(!0),V(Oe,null,ut(e.collapseTagList,f=>(_(),V("div",{key:e.getValueKey(f),class:T(e.nsSelect.e("selected-item"))},[H(n,{class:"in-tooltip",closable:!e.selectDisabled&&!f.isDisabled,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",onClose:m=>e.deleteTag(m,f)},{default:U(()=>[F("span",{class:T(e.nsSelect.e("tags-text"))},[G(e.$slots,"label",{label:f.currentLabel,value:f.value},()=>[st(pe(f.currentLabel),1)])],2)]),_:2},1032,["closable","size","type","effect","onClose"])],2))),128))],2)]),_:3},8,["disabled","effect","popper-class","teleported"])):J("v-if",!0)]):J("v-if",!0),F("div",{class:T([e.nsSelect.e("selected-item"),e.nsSelect.e("input-wrapper"),e.nsSelect.is("hidden",!e.filterable)])},[We(F("input",{id:e.inputId,ref:"inputRef","onUpdate:modelValue":f=>e.states.inputValue=f,type:"text",name:e.name,class:T([e.nsSelect.e("input"),e.nsSelect.is(e.selectSize)]),disabled:e.selectDisabled,autocomplete:e.autocomplete,style:_e(e.inputStyle),tabindex:e.tabindex,role:"combobox",readonly:!e.filterable,spellcheck:"false","aria-activedescendant":((d=e.hoverOption)==null?void 0:d.id)||"","aria-controls":e.contentId,"aria-expanded":e.dropdownMenuVisible,"aria-label":e.ariaLabel,"aria-autocomplete":"none","aria-haspopup":"listbox",onKeydown:[Tt(Le(f=>e.navigateOptions("next"),["stop","prevent"]),["down"]),Tt(Le(f=>e.navigateOptions("prev"),["stop","prevent"]),["up"]),Tt(Le(e.handleEsc,["stop","prevent"]),["esc"]),Tt(Le(e.selectOption,["stop","prevent"]),["enter"]),Tt(Le(e.deletePrevTag,["stop"]),["delete"])],onCompositionstart:e.handleCompositionStart,onCompositionupdate:e.handleCompositionUpdate,onCompositionend:e.handleCompositionEnd,onInput:e.onInput,onClick:Le(e.toggleMenu,["stop"])},null,46,["id","onUpdate:modelValue","name","disabled","autocomplete","tabindex","readonly","aria-activedescendant","aria-controls","aria-expanded","aria-label","onKeydown","onCompositionstart","onCompositionupdate","onCompositionend","onInput","onClick"]),[[ds,e.states.inputValue]]),e.filterable?(_(),V("span",{key:0,ref:"calculatorRef","aria-hidden":"true",class:T(e.nsSelect.e("input-calculator")),textContent:pe(e.states.inputValue)},null,10,["textContent"])):J("v-if",!0)],2),e.shouldShowPlaceholder?(_(),V("div",{key:1,class:T([e.nsSelect.e("selected-item"),e.nsSelect.e("placeholder"),e.nsSelect.is("transparent",!e.hasModelValue||e.expanded&&!e.states.inputValue)])},[e.hasModelValue?G(e.$slots,"label",{key:0,label:e.currentPlaceholder,value:e.modelValue},()=>[F("span",null,pe(e.currentPlaceholder),1)]):(_(),V("span",{key:1},pe(e.currentPlaceholder),1))],2)):J("v-if",!0)],2),F("div",{ref:"suffixRef",class:T(e.nsSelect.e("suffix"))},[e.iconComponent&&!e.showClose?(_(),oe(a,{key:0,class:T([e.nsSelect.e("caret"),e.nsSelect.e("icon"),e.iconReverse])},{default:U(()=>[(_(),oe(Ge(e.iconComponent)))]),_:1},8,["class"])):J("v-if",!0),e.showClose&&e.clearIcon?(_(),oe(a,{key:1,class:T([e.nsSelect.e("caret"),e.nsSelect.e("icon"),e.nsSelect.e("clear")]),onClick:e.handleClearClick},{default:U(()=>[(_(),oe(Ge(e.clearIcon)))]),_:1},8,["class","onClick"])):J("v-if",!0),e.validateState&&e.validateIcon&&e.needStatusIcon?(_(),oe(a,{key:2,class:T([e.nsInput.e("icon"),e.nsInput.e("validateIcon"),e.nsInput.is("loading",e.validateState==="validating")])},{default:U(()=>[(_(),oe(Ge(e.validateIcon)))]),_:1},8,["class"])):J("v-if",!0)],2)],10,["onClick"])]}),content:U(()=>[H(u,{ref:"menuRef"},{default:U(()=>[e.$slots.header?(_(),V("div",{key:0,class:T(e.nsSelect.be("dropdown","header")),onClick:Le(()=>{},["stop"])},[G(e.$slots,"header")],10,["onClick"])):J("v-if",!0),We(H(i,{id:e.contentId,ref:"scrollbarRef",tag:"ul","wrap-class":e.nsSelect.be("dropdown","wrap"),"view-class":e.nsSelect.be("dropdown","list"),class:T([e.nsSelect.is("empty",e.filteredOptionsCount===0)]),role:"listbox","aria-label":e.ariaLabel,"aria-orientation":"vertical",onScroll:e.popupScroll},{default:U(()=>[e.showNewOption?(_(),oe(s,{key:0,value:e.states.inputValue,created:!0},null,8,["value"])):J("v-if",!0),H(r,null,{default:U(()=>[G(e.$slots,"default")]),_:3})]),_:3},8,["id","wrap-class","view-class","class","aria-label","onScroll"]),[[mt,e.states.options.size>0&&!e.loading]]),e.$slots.loading&&e.loading?(_(),V("div",{key:1,class:T(e.nsSelect.be("dropdown","loading"))},[G(e.$slots,"loading")],2)):e.loading||e.filteredOptionsCount===0?(_(),V("div",{key:2,class:T(e.nsSelect.be("dropdown","empty"))},[G(e.$slots,"empty",{},()=>[F("span",null,pe(e.emptyText),1)])],2)):J("v-if",!0),e.$slots.footer?(_(),V("div",{key:3,class:T(e.nsSelect.be("dropdown","footer")),onClick:Le(()=>{},["stop"])},[G(e.$slots,"footer")],10,["onClick"])):J("v-if",!0)]),_:3},512)]),_:3},8,["visible","placement","teleported","popper-class","popper-options","fallback-placements","effect","transition","persistent","append-to","show-arrow","offset","onBeforeShow","onHide"])],16,["onMouseleave"])),[[c,e.handleClickOutside,e.popperRef]])}var Z2=fe(G2,[["render",X2],["__file","select.vue"]]);const J2=x({name:"ElOptionGroup",componentName:"ElOptionGroup",props:{label:String,disabled:Boolean},setup(e){const t=ue("select"),n=I(),l=lt(),a=I([]);rt(Yf,kt({...nn(e)}));const s=y(()=>a.value.some(c=>c.visible===!0)),r=c=>{var d;return c.type.name==="ElOption"&&!!((d=c.component)!=null&&d.proxy)},i=c=>{const d=ln(c),f=[];return d.forEach(m=>{var v;Dt(m)&&(r(m)?f.push(m.component.proxy):ke(m.children)&&m.children.length?f.push(...i(m.children)):(v=m.component)!=null&&v.subTree&&f.push(...i(m.component.subTree)))}),f},u=()=>{a.value=i(l.subTree)};return Xe(()=>{u()}),Lc(n,u,{attributes:!0,subtree:!0,childList:!0}),{groupRef:n,visible:s,ns:t}}});function Q2(e,t,n,l,a,s){return We((_(),V("ul",{ref:"groupRef",class:T(e.ns.be("group","wrap"))},[F("li",{class:T(e.ns.be("group","title"))},pe(e.label),3),F("li",null,[F("ul",{class:T(e.ns.b("group"))},[G(e.$slots,"default")],2)])],2)),[[mt,e.visible]])}var qf=fe(J2,[["render",Q2],["__file","option-group.vue"]]);const ql=He(Z2,{Option:Ei,OptionGroup:qf}),Qa=At(Ei),eE=At(qf),_i=()=>we(Uf,{}),tE=de({pageSize:{type:Number,required:!0},pageSizes:{type:Y(Array),default:()=>Vt([10,20,30,40,50,100])},popperClass:{type:String},disabled:Boolean,teleported:Boolean,size:{type:String,values:tl},appendSizeTo:String}),nE=x({name:"ElPaginationSizes"}),lE=x({...nE,props:tE,emits:["page-size-change"],setup(e,{emit:t}){const n=e,{t:l}=pt(),a=ue("pagination"),s=_i(),r=I(n.pageSize);ie(()=>n.pageSizes,(c,d)=>{if(!tn(c,d)&&ke(c)){const f=c.includes(n.pageSize)?n.pageSize:n.pageSizes[0];t("page-size-change",f)}}),ie(()=>n.pageSize,c=>{r.value=c});const i=y(()=>n.pageSizes);function u(c){var d;c!==r.value&&(r.value=c,(d=s.handleSizeChange)==null||d.call(s,Number(c)))}return(c,d)=>(_(),V("span",{class:T(o(a).e("sizes"))},[H(o(ql),{"model-value":r.value,disabled:c.disabled,"popper-class":c.popperClass,size:c.size,teleported:c.teleported,"validate-event":!1,"append-to":c.appendSizeTo,onChange:u},{default:U(()=>[(_(!0),V(Oe,null,ut(o(i),f=>(_(),oe(o(Qa),{key:f,value:f,label:f+o(l)("el.pagination.pagesize")},null,8,["value","label"]))),128))]),_:1},8,["model-value","disabled","popper-class","size","teleported","append-to"])],2))}});var oE=fe(lE,[["__file","sizes.vue"]]);const aE=de({size:{type:String,values:tl}}),sE=x({name:"ElPaginationJumper"}),rE=x({...sE,props:aE,setup(e){const{t}=pt(),n=ue("pagination"),{pageCount:l,disabled:a,currentPage:s,changeEvent:r}=_i(),i=I(),u=y(()=>{var f;return(f=i.value)!=null?f:s==null?void 0:s.value});function c(f){i.value=f?+f:""}function d(f){f=Math.trunc(+f),r==null||r(f),i.value=void 0}return(f,m)=>(_(),V("span",{class:T(o(n).e("jump")),disabled:o(a)},[F("span",{class:T([o(n).e("goto")])},pe(o(t)("el.pagination.goto")),3),H(o(hn),{size:f.size,class:T([o(n).e("editor"),o(n).is("in-pagination")]),min:1,max:o(l),disabled:o(a),"model-value":o(u),"validate-event":!1,"aria-label":o(t)("el.pagination.page"),type:"number","onUpdate:modelValue":c,onChange:d},null,8,["size","class","max","disabled","model-value","aria-label"]),F("span",{class:T([o(n).e("classifier")])},pe(o(t)("el.pagination.pageClassifier")),3)],10,["disabled"]))}});var iE=fe(rE,[["__file","jumper.vue"]]);const uE=de({total:{type:Number,default:1e3}}),cE=x({name:"ElPaginationTotal"}),dE=x({...cE,props:uE,setup(e){const{t}=pt(),n=ue("pagination"),{disabled:l}=_i();return(a,s)=>(_(),V("span",{class:T(o(n).e("total")),disabled:o(l)},pe(o(t)("el.pagination.total",{total:a.total})),11,["disabled"]))}});var fE=fe(dE,[["__file","total.vue"]]);const vE=de({currentPage:{type:Number,default:1},pageCount:{type:Number,required:!0},pagerCount:{type:Number,default:7},disabled:Boolean}),pE=x({name:"ElPaginationPager"}),hE=x({...pE,props:vE,emits:[nt],setup(e,{emit:t}){const n=e,l=ue("pager"),a=ue("icon"),{t:s}=pt(),r=I(!1),i=I(!1),u=I(!1),c=I(!1),d=I(!1),f=I(!1),m=y(()=>{const w=n.pagerCount,k=(w-1)/2,S=Number(n.currentPage),$=Number(n.pageCount);let M=!1,R=!1;$>w&&(S>w-k&&(M=!0),S<$-k&&(R=!0));const N=[];if(M&&!R){const O=$-(w-2);for(let P=O;P<$;P++)N.push(P)}else if(!M&&R)for(let O=2;O["more","btn-quickprev",a.b(),l.is("disabled",n.disabled)]),h=y(()=>["more","btn-quicknext",a.b(),l.is("disabled",n.disabled)]),p=y(()=>n.disabled?-1:0);bn(()=>{const w=(n.pagerCount-1)/2;r.value=!1,i.value=!1,n.pageCount>n.pagerCount&&(n.currentPage>n.pagerCount-w&&(r.value=!0),n.currentPage$&&(S=$)),S!==M&&t(nt,S)}return(w,k)=>(_(),V("ul",{class:T(o(l).b()),onClick:C,onKeyup:Tt(E,["enter"])},[w.pageCount>0?(_(),V("li",{key:0,class:T([[o(l).is("active",w.currentPage===1),o(l).is("disabled",w.disabled)],"number"]),"aria-current":w.currentPage===1,"aria-label":o(s)("el.pagination.currentPage",{pager:1}),tabindex:o(p)}," 1 ",10,["aria-current","aria-label","tabindex"])):J("v-if",!0),r.value?(_(),V("li",{key:1,class:T(o(v)),tabindex:o(p),"aria-label":o(s)("el.pagination.prevPages",{pager:w.pagerCount-2}),onMouseenter:S=>g(!0),onMouseleave:S=>u.value=!1,onFocus:S=>b(!0),onBlur:S=>d.value=!1},[(u.value||d.value)&&!w.disabled?(_(),oe(o(Rl),{key:0})):(_(),oe(o(du),{key:1}))],42,["tabindex","aria-label","onMouseenter","onMouseleave","onFocus","onBlur"])):J("v-if",!0),(_(!0),V(Oe,null,ut(o(m),S=>(_(),V("li",{key:S,class:T([[o(l).is("active",w.currentPage===S),o(l).is("disabled",w.disabled)],"number"]),"aria-current":w.currentPage===S,"aria-label":o(s)("el.pagination.currentPage",{pager:S}),tabindex:o(p)},pe(S),11,["aria-current","aria-label","tabindex"]))),128)),i.value?(_(),V("li",{key:2,class:T(o(h)),tabindex:o(p),"aria-label":o(s)("el.pagination.nextPages",{pager:w.pagerCount-2}),onMouseenter:S=>g(),onMouseleave:S=>c.value=!1,onFocus:S=>b(),onBlur:S=>f.value=!1},[(c.value||f.value)&&!w.disabled?(_(),oe(o(Pl),{key:0})):(_(),oe(o(du),{key:1}))],42,["tabindex","aria-label","onMouseenter","onMouseleave","onFocus","onBlur"])):J("v-if",!0),w.pageCount>1?(_(),V("li",{key:3,class:T([[o(l).is("active",w.currentPage===w.pageCount),o(l).is("disabled",w.disabled)],"number"]),"aria-current":w.currentPage===w.pageCount,"aria-label":o(s)("el.pagination.currentPage",{pager:w.pageCount}),tabindex:o(p)},pe(w.pageCount),11,["aria-current","aria-label","tabindex"])):J("v-if",!0)],42,["onKeyup"]))}});var mE=fe(hE,[["__file","pager.vue"]]);const kn=e=>typeof e!="number",gE=de({pageSize:Number,defaultPageSize:Number,total:Number,pageCount:Number,pagerCount:{type:Number,validator:e=>Te(e)&&Math.trunc(e)===e&&e>4&&e<22&&e%2===1,default:7},currentPage:Number,defaultCurrentPage:Number,layout:{type:String,default:["prev","pager","next","jumper","->","total"].join(", ")},pageSizes:{type:Y(Array),default:()=>Vt([10,20,30,40,50,100])},popperClass:{type:String,default:""},prevText:{type:String,default:""},prevIcon:{type:$t,default:()=>dl},nextText:{type:String,default:""},nextIcon:{type:$t,default:()=>Cn},teleported:{type:Boolean,default:!0},small:Boolean,size:Jt,background:Boolean,disabled:Boolean,hideOnSinglePage:Boolean,appendSizeTo:String}),bE={"update:current-page":e=>Te(e),"update:page-size":e=>Te(e),"size-change":e=>Te(e),change:(e,t)=>Te(e)&&Te(t),"current-change":e=>Te(e),"prev-click":e=>Te(e),"next-click":e=>Te(e)},Uu="ElPagination";var yE=x({name:Uu,props:gE,emits:bE,setup(e,{emit:t,slots:n}){const{t:l}=pt(),a=ue("pagination"),s=lt().vnode.props||{},r=Zc(),i=y(()=>{var k;return e.small?"small":(k=e.size)!=null?k:r.value});ul({from:"small",replacement:"size",version:"3.0.0",scope:"el-pagination",ref:"https://element-plus.org/zh-CN/component/pagination.html"},y(()=>!!e.small));const u="onUpdate:currentPage"in s||"onUpdate:current-page"in s||"onCurrentChange"in s,c="onUpdate:pageSize"in s||"onUpdate:page-size"in s||"onSizeChange"in s,d=y(()=>{if(kn(e.total)&&kn(e.pageCount)||!kn(e.currentPage)&&!u)return!1;if(e.layout.includes("sizes")){if(kn(e.pageCount)){if(!kn(e.total)&&!kn(e.pageSize)&&!c)return!1}else if(!c)return!1}return!0}),f=I(kn(e.defaultPageSize)?10:e.defaultPageSize),m=I(kn(e.defaultCurrentPage)?1:e.defaultCurrentPage),v=y({get(){return kn(e.pageSize)?f.value:e.pageSize},set(k){kn(e.pageSize)&&(f.value=k),c&&(t("update:page-size",k),t("size-change",k))}}),h=y(()=>{let k=0;return kn(e.pageCount)?kn(e.total)||(k=Math.max(1,Math.ceil(e.total/v.value))):k=e.pageCount,k}),p=y({get(){return kn(e.currentPage)?m.value:e.currentPage},set(k){let S=k;k<1?S=1:k>h.value&&(S=h.value),kn(e.currentPage)&&(m.value=S),u&&(t("update:current-page",S),t("current-change",S))}});ie(h,k=>{p.value>k&&(p.value=k)}),ie([p,v],k=>{t(nt,...k)},{flush:"post"});function g(k){p.value=k}function b(k){v.value=k;const S=h.value;p.value>S&&(p.value=S)}function E(){e.disabled||(p.value-=1,t("prev-click",p.value))}function C(){e.disabled||(p.value+=1,t("next-click",p.value))}function w(k,S){k&&(k.props||(k.props={}),k.props.class=[k.props.class,S].join(" "))}return rt(Uf,{pageCount:h,disabled:y(()=>e.disabled),currentPage:p,changeEvent:g,handleSizeChange:b}),()=>{var k,S;if(!d.value)return l("el.pagination.deprecationWarning"),null;if(!e.layout||e.hideOnSinglePage&&h.value<=1)return null;const $=[],M=[],R=Re("div",{class:a.e("rightwrapper")},M),N={prev:Re(L2,{disabled:e.disabled,currentPage:p.value,prevText:e.prevText,prevIcon:e.prevIcon,onClick:E}),jumper:Re(iE,{size:i.value}),pager:Re(mE,{currentPage:p.value,pageCount:h.value,pagerCount:e.pagerCount,onChange:g,disabled:e.disabled}),next:Re(A2,{disabled:e.disabled,currentPage:p.value,pageCount:h.value,nextText:e.nextText,nextIcon:e.nextIcon,onClick:C}),sizes:Re(oE,{pageSize:v.value,pageSizes:e.pageSizes,popperClass:e.popperClass,disabled:e.disabled,teleported:e.teleported,size:i.value,appendSizeTo:e.appendSizeTo}),slot:(S=(k=n==null?void 0:n.default)==null?void 0:k.call(n))!=null?S:null,total:Re(fE,{total:kn(e.total)?0:e.total})},O=e.layout.split(",").map(W=>W.trim());let P=!1;return O.forEach(W=>{if(W==="->"){P=!0;return}P?M.push(N[W]):$.push(N[W])}),w($[0],a.is("first")),w($[$.length-1],a.is("last")),P&&M.length>0&&(w(M[0],a.is("first")),w(M[M.length-1],a.is("last")),$.push(R)),Re("div",{class:[a.b(),a.is("background",e.background),a.m(i.value)]},$)}}});const CE=He(yE),wE=de({title:String,confirmButtonText:String,cancelButtonText:String,confirmButtonType:{type:String,values:or,default:"primary"},cancelButtonType:{type:String,values:or,default:"text"},icon:{type:$t,default:()=>Sm},iconColor:{type:String,default:"#f90"},hideIcon:Boolean,hideAfter:{type:Number,default:200},teleported:Wt.teleported,persistent:Wt.persistent,width:{type:[String,Number],default:150}}),kE={confirm:e=>e instanceof MouseEvent,cancel:e=>e instanceof MouseEvent},SE=x({name:"ElPopconfirm"}),EE=x({...SE,props:wE,emits:kE,setup(e,{emit:t}){const n=e,{t:l}=pt(),a=ue("popconfirm"),s=I(),r=()=>{var m,v;(v=(m=s.value)==null?void 0:m.onClose)==null||v.call(m)},i=y(()=>({width:zt(n.width)})),u=m=>{t("confirm",m),r()},c=m=>{t("cancel",m),r()},d=y(()=>n.confirmButtonText||l("el.popconfirm.confirmButtonText")),f=y(()=>n.cancelButtonText||l("el.popconfirm.cancelButtonText"));return(m,v)=>(_(),oe(o(un),et({ref_key:"tooltipRef",ref:s,trigger:"click",effect:"light"},m.$attrs,{"popper-class":`${o(a).namespace.value}-popover`,"popper-style":o(i),teleported:m.teleported,"fallback-placements":["bottom","top","right","left"],"hide-after":m.hideAfter,persistent:m.persistent}),{content:U(()=>[F("div",{class:T(o(a).b())},[F("div",{class:T(o(a).e("main"))},[!m.hideIcon&&m.icon?(_(),oe(o(Se),{key:0,class:T(o(a).e("icon")),style:_e({color:m.iconColor})},{default:U(()=>[(_(),oe(Ge(m.icon)))]),_:1},8,["class","style"])):J("v-if",!0),st(" "+pe(m.title),1)],2),F("div",{class:T(o(a).e("action"))},[G(m.$slots,"actions",{confirm:u,cancel:c},()=>[H(o(on),{size:"small",type:m.cancelButtonType==="text"?"":m.cancelButtonType,text:m.cancelButtonType==="text",onClick:c},{default:U(()=>[st(pe(o(f)),1)]),_:1},8,["type","text"]),H(o(on),{size:"small",type:m.confirmButtonType==="text"?"":m.confirmButtonType,text:m.confirmButtonType==="text",onClick:u},{default:U(()=>[st(pe(o(d)),1)]),_:1},8,["type","text"])])],2)],2)]),default:U(()=>[m.$slots.reference?G(m.$slots,"reference",{key:0}):J("v-if",!0)]),_:3},16,["popper-class","popper-style","teleported","hide-after","persistent"]))}});var _E=fe(EE,[["__file","popconfirm.vue"]]);const TE=He(_E),$E=de({trigger:mo.trigger,triggerKeys:mo.triggerKeys,placement:Va.placement,disabled:mo.disabled,visible:Wt.visible,transition:Wt.transition,popperOptions:Va.popperOptions,tabindex:Va.tabindex,content:Wt.content,popperStyle:Wt.popperStyle,popperClass:Wt.popperClass,enterable:{...Wt.enterable,default:!0},effect:{...Wt.effect,default:"light"},teleported:Wt.teleported,appendTo:Wt.appendTo,title:String,width:{type:[String,Number],default:150},offset:{type:Number,default:void 0},showAfter:{type:Number,default:0},hideAfter:{type:Number,default:200},autoClose:{type:Number,default:0},showArrow:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},"onUpdate:visible":{type:Function}}),NE={"update:visible":e=>_t(e),"before-enter":()=>!0,"before-leave":()=>!0,"after-enter":()=>!0,"after-leave":()=>!0},IE="onUpdate:visible",ME=x({name:"ElPopover"}),RE=x({...ME,props:$E,emits:NE,setup(e,{expose:t,emit:n}){const l=e,a=y(()=>l[IE]),s=ue("popover"),r=I(),i=y(()=>{var g;return(g=o(r))==null?void 0:g.popperRef}),u=y(()=>[{width:zt(l.width)},l.popperStyle]),c=y(()=>[s.b(),l.popperClass,{[s.m("plain")]:!!l.content}]),d=y(()=>l.transition===`${s.namespace.value}-fade-in-linear`),f=()=>{var g;(g=r.value)==null||g.hide()},m=()=>{n("before-enter")},v=()=>{n("before-leave")},h=()=>{n("after-enter")},p=()=>{n("update:visible",!1),n("after-leave")};return t({popperRef:i,hide:f}),(g,b)=>(_(),oe(o(un),et({ref_key:"tooltipRef",ref:r},g.$attrs,{trigger:g.trigger,"trigger-keys":g.triggerKeys,placement:g.placement,disabled:g.disabled,visible:g.visible,transition:g.transition,"popper-options":g.popperOptions,tabindex:g.tabindex,content:g.content,offset:g.offset,"show-after":g.showAfter,"hide-after":g.hideAfter,"auto-close":g.autoClose,"show-arrow":g.showArrow,"aria-label":g.title,effect:g.effect,enterable:g.enterable,"popper-class":o(c),"popper-style":o(u),teleported:g.teleported,"append-to":g.appendTo,persistent:g.persistent,"gpu-acceleration":o(d),"onUpdate:visible":o(a),onBeforeShow:m,onBeforeHide:v,onShow:h,onHide:p}),{content:U(()=>[g.title?(_(),V("div",{key:0,class:T(o(s).e("title")),role:"title"},pe(g.title),3)):J("v-if",!0),G(g.$slots,"default",{},()=>[st(pe(g.content),1)])]),default:U(()=>[g.$slots.reference?G(g.$slots,"reference",{key:0}):J("v-if",!0)]),_:3},16,["trigger","trigger-keys","placement","disabled","visible","transition","popper-options","tabindex","content","offset","show-after","hide-after","auto-close","show-arrow","aria-label","effect","enterable","popper-class","popper-style","teleported","append-to","persistent","gpu-acceleration","onUpdate:visible"]))}});var PE=fe(RE,[["__file","popover.vue"]]);const Yu=(e,t)=>{const n=t.arg||t.value,l=n==null?void 0:n.popperRef;l&&(l.triggerRef=e)};var OE={mounted(e,t){Yu(e,t)},updated(e,t){Yu(e,t)}};const LE="popover",Gf=Rh(OE,LE),BE=He(PE,{directive:Gf}),VE=de({type:{type:String,default:"line",values:["line","circle","dashboard"]},percentage:{type:Number,default:0,validator:e=>e>=0&&e<=100},status:{type:String,default:"",values:["","success","exception","warning"]},indeterminate:Boolean,duration:{type:Number,default:3},strokeWidth:{type:Number,default:6},strokeLinecap:{type:Y(String),default:"round"},textInside:Boolean,width:{type:Number,default:126},showText:{type:Boolean,default:!0},color:{type:Y([String,Array,Function]),default:""},striped:Boolean,stripedFlow:Boolean,format:{type:Y(Function),default:e=>`${e}%`}}),DE=x({name:"ElProgress"}),AE=x({...DE,props:VE,setup(e){const t=e,n={success:"#13ce66",exception:"#ff4949",warning:"#e6a23c",default:"#20a0ff"},l=ue("progress"),a=y(()=>{const C={width:`${t.percentage}%`,animationDuration:`${t.duration}s`},w=E(t.percentage);return w.includes("gradient")?C.background=w:C.backgroundColor=w,C}),s=y(()=>(t.strokeWidth/t.width*100).toFixed(1)),r=y(()=>["circle","dashboard"].includes(t.type)?Number.parseInt(`${50-Number.parseFloat(s.value)/2}`,10):0),i=y(()=>{const C=r.value,w=t.type==="dashboard";return` - M 50 50 - m 0 ${w?"":"-"}${C} - a ${C} ${C} 0 1 1 0 ${w?"-":""}${C*2} - a ${C} ${C} 0 1 1 0 ${w?"":"-"}${C*2} - `}),u=y(()=>2*Math.PI*r.value),c=y(()=>t.type==="dashboard"?.75:1),d=y(()=>`${-1*u.value*(1-c.value)/2}px`),f=y(()=>({strokeDasharray:`${u.value*c.value}px, ${u.value}px`,strokeDashoffset:d.value})),m=y(()=>({strokeDasharray:`${u.value*c.value*(t.percentage/100)}px, ${u.value}px`,strokeDashoffset:d.value,transition:"stroke-dasharray 0.6s ease 0s, stroke 0.6s ease, opacity ease 0.6s"})),v=y(()=>{let C;return t.color?C=E(t.percentage):C=n[t.status]||n.default,C}),h=y(()=>t.status==="warning"?ms:t.type==="line"?t.status==="success"?Yr:ml:t.status==="success"?va:zn),p=y(()=>t.type==="line"?12+t.strokeWidth*.4:t.width*.111111+2),g=y(()=>t.format(t.percentage));function b(C){const w=100/C.length;return C.map((S,$)=>Ve(S)?{color:S,percentage:($+1)*w}:S).sort((S,$)=>S.percentage-$.percentage)}const E=C=>{var w;const{color:k}=t;if(Qe(k))return k(C);if(Ve(k))return k;{const S=b(k);for(const $ of S)if($.percentage>C)return $.color;return(w=S[S.length-1])==null?void 0:w.color}};return(C,w)=>(_(),V("div",{class:T([o(l).b(),o(l).m(C.type),o(l).is(C.status),{[o(l).m("without-text")]:!C.showText,[o(l).m("text-inside")]:C.textInside}]),role:"progressbar","aria-valuenow":C.percentage,"aria-valuemin":"0","aria-valuemax":"100"},[C.type==="line"?(_(),V("div",{key:0,class:T(o(l).b("bar"))},[F("div",{class:T(o(l).be("bar","outer")),style:_e({height:`${C.strokeWidth}px`})},[F("div",{class:T([o(l).be("bar","inner"),{[o(l).bem("bar","inner","indeterminate")]:C.indeterminate},{[o(l).bem("bar","inner","striped")]:C.striped},{[o(l).bem("bar","inner","striped-flow")]:C.stripedFlow}]),style:_e(o(a))},[(C.showText||C.$slots.default)&&C.textInside?(_(),V("div",{key:0,class:T(o(l).be("bar","innerText"))},[G(C.$slots,"default",{percentage:C.percentage},()=>[F("span",null,pe(o(g)),1)])],2)):J("v-if",!0)],6)],6)],2)):(_(),V("div",{key:1,class:T(o(l).b("circle")),style:_e({height:`${C.width}px`,width:`${C.width}px`})},[(_(),V("svg",{viewBox:"0 0 100 100"},[F("path",{class:T(o(l).be("circle","track")),d:o(i),stroke:`var(${o(l).cssVarName("fill-color-light")}, #e5e9f2)`,"stroke-linecap":C.strokeLinecap,"stroke-width":o(s),fill:"none",style:_e(o(f))},null,14,["d","stroke","stroke-linecap","stroke-width"]),F("path",{class:T(o(l).be("circle","path")),d:o(i),stroke:o(v),fill:"none",opacity:C.percentage?1:0,"stroke-linecap":C.strokeLinecap,"stroke-width":o(s),style:_e(o(m))},null,14,["d","stroke","opacity","stroke-linecap","stroke-width"])]))],6)),(C.showText||C.$slots.default)&&!C.textInside?(_(),V("div",{key:2,class:T(o(l).e("text")),style:_e({fontSize:`${o(p)}px`})},[G(C.$slots,"default",{percentage:C.percentage},()=>[C.status?(_(),oe(o(Se),{key:1},{default:U(()=>[(_(),oe(Ge(o(h))))]),_:1})):(_(),V("span",{key:0},pe(o(g)),1))])],6)):J("v-if",!0)],10,["aria-valuenow"]))}});var FE=fe(AE,[["__file","progress.vue"]]);const Xf=He(FE),xE=de({modelValue:{type:Number,default:0},id:{type:String,default:void 0},lowThreshold:{type:Number,default:2},highThreshold:{type:Number,default:4},max:{type:Number,default:5},colors:{type:Y([Array,Object]),default:()=>Vt(["","",""])},voidColor:{type:String,default:""},disabledVoidColor:{type:String,default:""},icons:{type:Y([Array,Object]),default:()=>[ka,ka,ka]},voidIcon:{type:$t,default:()=>Am},disabledVoidIcon:{type:$t,default:()=>ka},disabled:Boolean,allowHalf:Boolean,showText:Boolean,showScore:Boolean,textColor:{type:String,default:""},texts:{type:Y(Array),default:()=>Vt(["Extremely bad","Disappointed","Fair","Satisfied","Surprise"])},scoreTemplate:{type:String,default:"{value}"},size:Jt,clearable:Boolean,...cn(["ariaLabel"])}),zE={[nt]:e=>Te(e),[De]:e=>Te(e)},HE=x({name:"ElRate"}),KE=x({...HE,props:xE,emits:zE,setup(e,{expose:t,emit:n}){const l=e;function a(L,z){const B=j=>yt(j),A=Object.keys(z).map(j=>+j).filter(j=>{const Q=z[j];return(B(Q)?Q.excluded:!1)?Lj-Q),ne=z[A[0]];return B(ne)&&ne.value||ne}const s=we(Jl,void 0),r=we(el,void 0),i=Gt(),u=ue("rate"),{inputId:c,isLabeledByFormItem:d}=Kn(l,{formItemContext:r}),f=I(l.modelValue),m=I(-1),v=I(!0),h=y(()=>[u.b(),u.m(i.value)]),p=y(()=>l.disabled||(s==null?void 0:s.disabled)),g=y(()=>u.cssVarBlock({"void-color":l.voidColor,"disabled-void-color":l.disabledVoidColor,"fill-color":w.value})),b=y(()=>{let L="";return l.showScore?L=l.scoreTemplate.replace(/\{\s*value\s*\}/,p.value?`${l.modelValue}`:`${f.value}`):l.showText&&(L=l.texts[Math.ceil(f.value)-1]),L}),E=y(()=>l.modelValue*100-Math.floor(l.modelValue)*100),C=y(()=>ke(l.colors)?{[l.lowThreshold]:l.colors[0],[l.highThreshold]:{value:l.colors[1],excluded:!0},[l.max]:l.colors[2]}:l.colors),w=y(()=>{const L=a(f.value,C.value);return yt(L)?"":L}),k=y(()=>{let L="";return p.value?L=`${E.value}%`:l.allowHalf&&(L="50%"),{color:w.value,width:L}}),S=y(()=>{let L=ke(l.icons)?[...l.icons]:{...l.icons};return L=$l(L),ke(L)?{[l.lowThreshold]:L[0],[l.highThreshold]:{value:L[1],excluded:!0},[l.max]:L[2]}:L}),$=y(()=>a(l.modelValue,S.value)),M=y(()=>p.value?Ve(l.disabledVoidIcon)?l.disabledVoidIcon:$l(l.disabledVoidIcon):Ve(l.voidIcon)?l.voidIcon:$l(l.voidIcon)),R=y(()=>a(f.value,S.value));function N(L){const z=p.value&&E.value>0&&L-1l.modelValue,B=l.allowHalf&&v.value&&L-.5<=f.value&&L>f.value;return z||B}function O(L){l.clearable&&L===l.modelValue&&(L=0),n(De,L),l.modelValue!==L&&n(nt,L)}function P(L){p.value||(l.allowHalf&&v.value?O(f.value):O(L))}function W(L){if(p.value)return;let z=f.value;const B=L.code;return B===Ce.up||B===Ce.right?(l.allowHalf?z+=.5:z+=1,L.stopPropagation(),L.preventDefault()):(B===Ce.left||B===Ce.down)&&(l.allowHalf?z-=.5:z-=1,L.stopPropagation(),L.preventDefault()),z=z<0?0:z,z=z>l.max?l.max:z,n(De,z),n(nt,z),z}function K(L,z){if(!p.value){if(l.allowHalf&&z){let B=z.target;Nn(B,u.e("item"))&&(B=B.querySelector(`.${u.e("icon")}`)),(B.clientWidth===0||Nn(B,u.e("decimal")))&&(B=B.parentNode),v.value=z.offsetX*2<=B.clientWidth,f.value=v.value?L-.5:L}else f.value=L;m.value=L}}function D(){p.value||(l.allowHalf&&(v.value=l.modelValue!==Math.floor(l.modelValue)),f.value=l.modelValue,m.value=-1)}return ie(()=>l.modelValue,L=>{f.value=L,v.value=l.modelValue!==Math.floor(l.modelValue)}),l.modelValue||n(De,0),t({setCurrentValue:K,resetCurrentValue:D}),(L,z)=>{var B;return _(),V("div",{id:o(c),class:T([o(h),o(u).is("disabled",o(p))]),role:"slider","aria-label":o(d)?void 0:L.ariaLabel||"rating","aria-labelledby":o(d)?(B=o(r))==null?void 0:B.labelId:void 0,"aria-valuenow":f.value,"aria-valuetext":o(b)||void 0,"aria-valuemin":"0","aria-valuemax":L.max,tabindex:"0",style:_e(o(g)),onKeydown:W},[(_(!0),V(Oe,null,ut(L.max,(A,ne)=>(_(),V("span",{key:ne,class:T(o(u).e("item")),onMousemove:j=>K(A,j),onMouseleave:D,onClick:j=>P(A)},[H(o(Se),{class:T([o(u).e("icon"),{hover:m.value===A},o(u).is("active",A<=f.value)])},{default:U(()=>[N(A)?J("v-if",!0):(_(),V(Oe,{key:0},[We((_(),oe(Ge(o(R)),null,null,512)),[[mt,A<=f.value]]),We((_(),oe(Ge(o(M)),null,null,512)),[[mt,!(A<=f.value)]])],64)),N(A)?(_(),V(Oe,{key:1},[(_(),oe(Ge(o(M)),{class:T([o(u).em("decimal","box")])},null,8,["class"])),H(o(Se),{style:_e(o(k)),class:T([o(u).e("icon"),o(u).e("decimal")])},{default:U(()=>[(_(),oe(Ge(o($))))]),_:1},8,["style","class"])],64)):J("v-if",!0)]),_:2},1032,["class"])],42,["onMousemove","onClick"]))),128)),L.showText||L.showScore?(_(),V("span",{key:0,class:T(o(u).e("text")),style:_e({color:L.textColor})},pe(o(b)),7)):J("v-if",!0)],46,["id","aria-label","aria-labelledby","aria-valuenow","aria-valuetext","aria-valuemax"])}}});var WE=fe(KE,[["__file","rate.vue"]]);const jE=He(WE),Dl={primary:"icon-primary",success:"icon-success",warning:"icon-warning",error:"icon-error",info:"icon-info"},qu={[Dl.primary]:Go,[Dl.success]:Xh,[Dl.warning]:ms,[Dl.error]:qr,[Dl.info]:Go},UE=de({title:{type:String,default:""},subTitle:{type:String,default:""},icon:{type:String,values:["primary","success","warning","info","error"],default:"info"}}),YE=x({name:"ElResult"}),qE=x({...YE,props:UE,setup(e){const t=e,n=ue("result"),l=y(()=>{const a=t.icon,s=a&&Dl[a]?Dl[a]:"icon-info",r=qu[s]||qu["icon-info"];return{class:s,component:r}});return(a,s)=>(_(),V("div",{class:T(o(n).b())},[F("div",{class:T(o(n).e("icon"))},[G(a.$slots,"icon",{},()=>[o(l).component?(_(),oe(Ge(o(l).component),{key:0,class:T(o(l).class)},null,8,["class"])):J("v-if",!0)])],2),a.title||a.$slots.title?(_(),V("div",{key:0,class:T(o(n).e("title"))},[G(a.$slots,"title",{},()=>[F("p",null,pe(a.title),1)])],2)):J("v-if",!0),a.subTitle||a.$slots["sub-title"]?(_(),V("div",{key:1,class:T(o(n).e("subtitle"))},[G(a.$slots,"sub-title",{},()=>[F("p",null,pe(a.subTitle),1)])],2)):J("v-if",!0),a.$slots.extra?(_(),V("div",{key:2,class:T(o(n).e("extra"))},[G(a.$slots,"extra")],2)):J("v-if",!0)],2))}});var GE=fe(qE,[["__file","result.vue"]]);const XE=He(GE),ZE=["start","center","end","space-around","space-between","space-evenly"],JE=["top","middle","bottom"],QE=de({tag:{type:String,default:"div"},gutter:{type:Number,default:0},justify:{type:String,values:ZE,default:"start"},align:{type:String,values:JE}}),e_=x({name:"ElRow"}),t_=x({...e_,props:QE,setup(e){const t=e,n=ue("row"),l=y(()=>t.gutter);rt(lf,{gutter:l});const a=y(()=>{const r={};return t.gutter&&(r.marginRight=r.marginLeft=`-${t.gutter/2}px`),r}),s=y(()=>[n.b(),n.is(`justify-${t.justify}`,t.justify!=="start"),n.is(`align-${t.align}`,!!t.align)]);return(r,i)=>(_(),oe(Ge(r.tag),{class:T(o(s)),style:_e(o(a))},{default:U(()=>[G(r.$slots,"default")]),_:3},8,["class","style"]))}});var n_=fe(t_,[["__file","row.vue"]]);const l_=He(n_),o_=x({props:{item:{type:Object,required:!0},style:{type:Object},height:Number},setup(){return{ns:ue("select")}}});function a_(e,t,n,l,a,s){return _(),V("div",{class:T(e.ns.be("group","title")),style:_e({...e.style,lineHeight:`${e.height}px`})},pe(e.item.label),7)}var s_=fe(o_,[["render",a_],["__file","group-item.vue"]]);function r_(e,{emit:t}){return{hoverItem:()=>{e.disabled||t("hover",e.index)},selectOptionClick:()=>{e.disabled||t("select",e.item,e.index)}}}const Zf={label:"label",value:"value",disabled:"disabled",options:"options"};function $s(e){const t=y(()=>({...Zf,...e.props}));return{aliasProps:t,getLabel:r=>Yt(r,t.value.label),getValue:r=>Yt(r,t.value.value),getDisabled:r=>Yt(r,t.value.disabled),getOptions:r=>Yt(r,t.value.options)}}const i_=de({allowCreate:Boolean,autocomplete:{type:Y(String),default:"none"},automaticDropdown:Boolean,clearable:Boolean,clearIcon:{type:$t,default:ml},effect:{type:Y(String),default:"light"},collapseTags:Boolean,collapseTagsTooltip:Boolean,maxCollapseTags:{type:Number,default:1},defaultFirstOption:Boolean,disabled:Boolean,estimatedOptionHeight:{type:Number,default:void 0},filterable:Boolean,filterMethod:Function,height:{type:Number,default:274},itemHeight:{type:Number,default:34},id:String,loading:Boolean,loadingText:String,modelValue:{type:Y([Array,String,Number,Boolean,Object])},multiple:Boolean,multipleLimit:{type:Number,default:0},name:String,noDataText:String,noMatchText:String,remoteMethod:Function,reserveKeyword:{type:Boolean,default:!0},options:{type:Y(Array),required:!0},placeholder:{type:String},teleported:Wt.teleported,persistent:{type:Boolean,default:!0},popperClass:{type:String,default:""},popperOptions:{type:Y(Object),default:()=>({})},remote:Boolean,size:Jt,props:{type:Y(Object),default:()=>Zf},valueKey:{type:String,default:"value"},scrollbarAlwaysOn:Boolean,validateEvent:{type:Boolean,default:!0},offset:{type:Number,default:12},showArrow:{type:Boolean,default:!0},placement:{type:Y(String),values:Xl,default:"bottom-start"},fallbackPlacements:{type:Y(Array),default:["bottom-start","top-start","right","left"]},tagType:{...fl.type,default:"info"},tagEffect:{...fl.effect,default:"light"},tabindex:{type:[String,Number],default:0},appendTo:Wt.appendTo,fitInputWidth:{type:[Boolean,Number],default:!0,validator(e){return _t(e)||Te(e)}},suffixIcon:{type:$t,default:nl},...Zl,...cn(["ariaLabel"])}),u_=de({data:Array,disabled:Boolean,hovering:Boolean,item:{type:Y(Object),required:!0},index:Number,style:Object,selected:Boolean,created:Boolean}),c_={[De]:e=>!0,[nt]:e=>!0,"remove-tag":e=>!0,"visible-change":e=>!0,focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0},d_={hover:e=>Te(e),select:(e,t)=>!0},Ti=Symbol("ElSelectV2Injection"),f_=x({props:u_,emits:d_,setup(e,{emit:t}){const n=we(Ti),l=ue("select"),{hoverItem:a,selectOptionClick:s}=r_(e,{emit:t}),{getLabel:r}=$s(n.props);return{ns:l,hoverItem:a,selectOptionClick:s,getLabel:r}}});function v_(e,t,n,l,a,s){return _(),V("li",{"aria-selected":e.selected,style:_e(e.style),class:T([e.ns.be("dropdown","item"),e.ns.is("selected",e.selected),e.ns.is("disabled",e.disabled),e.ns.is("created",e.created),e.ns.is("hovering",e.hovering)]),onMousemove:e.hoverItem,onClick:Le(e.selectOptionClick,["stop"])},[G(e.$slots,"default",{item:e.item,index:e.index,disabled:e.disabled},()=>[F("span",null,pe(e.getLabel(e.item)),1)])],46,["aria-selected","onMousemove","onClick"])}var p_=fe(f_,[["render",v_],["__file","option-item.vue"]]);const Jf=()=>{const t=lt().proxy.$props;return y(()=>{const n=(l,a,s)=>({});return t.perfMode?lh(n):oh(n)})},gr=50,es="itemRendered",ts="scroll",po="forward",ns="backward",xn="auto",Ns="smart",ta="start",Jn="center",na="end",To="horizontal",$i="vertical",h_="ltr",go="rtl",la="negative",Ni="positive-ascending",Ii="positive-descending",m_={[To]:"left",[$i]:"top"},g_=20,b_={[To]:"deltaX",[$i]:"deltaY"},y_=({atEndEdge:e,atStartEdge:t,layout:n},l)=>{let a,s=0;const r=u=>u<0&&t.value||u>0&&e.value;return{hasReachedEdge:r,onWheel:u=>{Yl(a);const c=u[b_[n.value]];r(s)&&r(s+c)||(s+=c,Xr()||u.preventDefault(),a=Ml(()=>{l(s),s=0}))}}},br=Un({type:Y([Number,Function]),required:!0}),yr=Un({type:Number}),Cr=Un({type:Number,default:2}),C_=Un({type:String,values:["ltr","rtl"],default:"ltr"}),wr=Un({type:Number,default:0}),ls=Un({type:Number,required:!0}),Qf=Un({type:String,values:["horizontal","vertical"],default:$i}),ev=de({className:{type:String,default:""},containerElement:{type:Y([String,Object]),default:"div"},data:{type:Y(Array),default:()=>Vt([])},direction:C_,height:{type:[String,Number],required:!0},innerElement:{type:[String,Object],default:"div"},style:{type:Y([Object,String,Array])},useIsScrolling:Boolean,width:{type:[Number,String],required:!1},perfMode:{type:Boolean,default:!0},scrollbarAlwaysOn:Boolean}),tv=de({cache:Cr,estimatedItemSize:yr,layout:Qf,initScrollOffset:wr,total:ls,itemSize:br,...ev}),kr={type:Number,default:6},nv={type:Number,default:0},lv={type:Number,default:2},Kl=de({columnCache:Cr,columnWidth:br,estimatedColumnWidth:yr,estimatedRowHeight:yr,initScrollLeft:wr,initScrollTop:wr,itemKey:{type:Y(Function),default:({columnIndex:e,rowIndex:t})=>`${t}:${e}`},rowCache:Cr,rowHeight:br,totalColumn:ls,totalRow:ls,hScrollbarSize:kr,vScrollbarSize:kr,scrollbarStartGap:nv,scrollbarEndGap:lv,role:String,...ev}),ov=de({alwaysOn:Boolean,class:String,layout:Qf,total:ls,ratio:{type:Number,required:!0},clientSize:{type:Number,required:!0},scrollFrom:{type:Number,required:!0},scrollbarSize:kr,startGap:nv,endGap:lv,visible:Boolean}),Fl=(e,t)=>ee===h_||e===go||e===To,Gu=e=>e===go;let ao=null;function os(e=!1){if(ao===null||e){const t=document.createElement("div"),n=t.style;n.width="50px",n.height="50px",n.overflow="scroll",n.direction="rtl";const l=document.createElement("div"),a=l.style;return a.width="100px",a.height="100px",t.appendChild(l),document.body.appendChild(t),t.scrollLeft>0?ao=Ii:(t.scrollLeft=1,t.scrollLeft===0?ao=la:ao=Ni),document.body.removeChild(t),ao}return ao}function w_({move:e,size:t,bar:n},l){const a={},s=`translate${n.axis}(${e}px)`;return a[n.size]=t,a.transform=s,l==="horizontal"?a.height="100%":a.width="100%",a}const Sr=x({name:"ElVirtualScrollBar",props:ov,emits:["scroll","start-move","stop-move"],setup(e,{emit:t}){const n=y(()=>e.startGap+e.endGap),l=ue("virtual-scrollbar"),a=ue("scrollbar"),s=I(),r=I();let i=null,u=null;const c=kt({isDragging:!1,traveled:0}),d=y(()=>md[e.layout]),f=y(()=>e.clientSize-o(n)),m=y(()=>({position:"absolute",width:`${To===e.layout?f.value:e.scrollbarSize}px`,height:`${To===e.layout?e.scrollbarSize:f.value}px`,[m_[e.layout]]:"2px",right:"2px",bottom:"2px",borderRadius:"4px"})),v=y(()=>{const S=e.ratio;if(S>=100)return Number.POSITIVE_INFINITY;if(S>=50)return S*f.value/100;const $=f.value/3;return Math.floor(Math.min(Math.max(S*f.value,g_),$))}),h=y(()=>{if(!Number.isFinite(v.value))return{display:"none"};const S=`${v.value}px`;return w_({bar:d.value,size:S,move:c.traveled},e.layout)}),p=y(()=>Math.ceil(e.clientSize-v.value-o(n))),g=()=>{window.addEventListener("mousemove",w),window.addEventListener("mouseup",C);const S=o(r);S&&(u=document.onselectstart,document.onselectstart=()=>!1,S.addEventListener("touchmove",w,{passive:!0}),S.addEventListener("touchend",C))},b=()=>{window.removeEventListener("mousemove",w),window.removeEventListener("mouseup",C),document.onselectstart=u,u=null;const S=o(r);S&&(S.removeEventListener("touchmove",w),S.removeEventListener("touchend",C))},E=S=>{S.stopImmediatePropagation(),!(S.ctrlKey||[1,2].includes(S.button))&&(c.isDragging=!0,c[d.value.axis]=S.currentTarget[d.value.offset]-(S[d.value.client]-S.currentTarget.getBoundingClientRect()[d.value.direction]),t("start-move"),g())},C=()=>{c.isDragging=!1,c[d.value.axis]=0,t("stop-move"),b()},w=S=>{const{isDragging:$}=c;if(!$||!r.value||!s.value)return;const M=c[d.value.axis];if(!M)return;Yl(i);const R=(s.value.getBoundingClientRect()[d.value.direction]-S[d.value.client])*-1,N=r.value[d.value.offset]-M,O=R-N;i=Ml(()=>{c.traveled=Math.max(0,Math.min(O,p.value)),t("scroll",O,p.value)})},k=S=>{const $=Math.abs(S.target.getBoundingClientRect()[d.value.direction]-S[d.value.client]),M=r.value[d.value.offset]/2,R=$-M;c.traveled=Math.max(0,Math.min(R,p.value)),t("scroll",R,p.value)};return ie(()=>e.scrollFrom,S=>{c.isDragging||(c.traveled=Math.ceil(S*p.value))}),Nt(()=>{b()}),()=>Re("div",{role:"presentation",ref:s,class:[l.b(),e.class,(e.alwaysOn||c.isDragging)&&"always-on"],style:m.value,onMousedown:Le(k,["stop","prevent"]),onTouchstartPrevent:E},Re("div",{ref:r,class:a.e("thumb"),style:h.value,onMousedown:E},[]))}}),av=({name:e,getOffset:t,getItemSize:n,getItemOffset:l,getEstimatedTotalSize:a,getStartIndexForOffset:s,getStopIndexForStartIndex:r,initCache:i,clearCache:u,validateProps:c})=>x({name:e??"ElVirtualList",props:tv,emits:[es,ts],setup(d,{emit:f,expose:m}){c(d);const v=lt(),h=ue("vl"),p=I(i(d,v)),g=Jf(),b=I(),E=I(),C=I(),w=I({isScrolling:!1,scrollDir:"forward",scrollOffset:Te(d.initScrollOffset)?d.initScrollOffset:0,updateRequested:!1,isScrollbarDragging:!1,scrollbarAlwaysOn:d.scrollbarAlwaysOn}),k=y(()=>{const{total:Z,cache:ee}=d,{isScrolling:ae,scrollDir:re,scrollOffset:le}=o(w);if(Z===0)return[0,0,0,0];const se=s(d,le,o(p)),ge=r(d,se,le,o(p)),Be=!ae||re===ns?Math.max(1,ee):1,te=!ae||re===po?Math.max(1,ee):1;return[Math.max(0,se-Be),Math.max(0,Math.min(Z-1,ge+te)),se,ge]}),S=y(()=>a(d,o(p))),$=y(()=>oa(d.layout)),M=y(()=>[{position:"relative",[`overflow-${$.value?"x":"y"}`]:"scroll",WebkitOverflowScrolling:"touch",willChange:"transform"},{direction:d.direction,height:Te(d.height)?`${d.height}px`:d.height,width:Te(d.width)?`${d.width}px`:d.width},d.style]),R=y(()=>{const Z=o(S),ee=o($);return{height:ee?"100%":`${Z}px`,pointerEvents:o(w).isScrolling?"none":void 0,width:ee?`${Z}px`:"100%"}}),N=y(()=>$.value?d.width:d.height),{onWheel:O}=y_({atStartEdge:y(()=>w.value.scrollOffset<=0),atEndEdge:y(()=>w.value.scrollOffset>=S.value),layout:y(()=>d.layout)},Z=>{var ee,ae;(ae=(ee=C.value).onMouseUp)==null||ae.call(ee),z(Math.min(w.value.scrollOffset+Z,S.value-N.value))});xt(b,"wheel",O,{passive:!1});const P=()=>{const{total:Z}=d;if(Z>0){const[le,se,ge,Be]=o(k);f(es,le,se,ge,Be)}const{scrollDir:ee,scrollOffset:ae,updateRequested:re}=o(w);f(ts,ee,ae,re)},W=Z=>{const{clientHeight:ee,scrollHeight:ae,scrollTop:re}=Z.currentTarget,le=o(w);if(le.scrollOffset===re)return;const se=Math.max(0,Math.min(re,ae-ee));w.value={...le,isScrolling:!0,scrollDir:Fl(le.scrollOffset,se),scrollOffset:se,updateRequested:!1},Ee(ne)},K=Z=>{const{clientWidth:ee,scrollLeft:ae,scrollWidth:re}=Z.currentTarget,le=o(w);if(le.scrollOffset===ae)return;const{direction:se}=d;let ge=ae;if(se===go)switch(os()){case la:{ge=-ae;break}case Ii:{ge=re-ee-ae;break}}ge=Math.max(0,Math.min(ge,re-ee)),w.value={...le,isScrolling:!0,scrollDir:Fl(le.scrollOffset,ge),scrollOffset:ge,updateRequested:!1},Ee(ne)},D=Z=>{o($)?K(Z):W(Z),P()},L=(Z,ee)=>{const ae=(S.value-N.value)/ee*Z;z(Math.min(S.value-N.value,ae))},z=Z=>{Z=Math.max(Z,0),Z!==o(w).scrollOffset&&(w.value={...o(w),scrollOffset:Z,scrollDir:Fl(o(w).scrollOffset,Z),updateRequested:!0},Ee(ne))},B=(Z,ee=xn)=>{const{scrollOffset:ae}=o(w);Z=Math.max(0,Math.min(Z,d.total-1)),z(t(d,Z,ee,ae,o(p)))},A=Z=>{const{direction:ee,itemSize:ae,layout:re}=d,le=g.value(u&&ae,u&&re,u&&ee);let se;if(rn(le,String(Z)))se=le[Z];else{const ge=l(d,Z,o(p)),Be=n(d,Z,o(p)),te=o($),ce=ee===go,Ie=te?ge:0;le[Z]=se={position:"absolute",left:ce?void 0:`${Ie}px`,right:ce?`${Ie}px`:void 0,top:te?0:`${ge}px`,height:te?"100%":`${Be}px`,width:te?`${Be}px`:"100%"}}return se},ne=()=>{w.value.isScrolling=!1,Ee(()=>{g.value(-1,null,null)})},j=()=>{const Z=b.value;Z&&(Z.scrollTop=0)};Xe(()=>{if(!bt)return;const{initScrollOffset:Z}=d,ee=o(b);Te(Z)&&ee&&(o($)?ee.scrollLeft=Z:ee.scrollTop=Z),P()}),hl(()=>{const{direction:Z,layout:ee}=d,{scrollOffset:ae,updateRequested:re}=o(w),le=o(b);if(re&&le)if(ee===To)if(Z===go)switch(os()){case la:{le.scrollLeft=-ae;break}case Ni:{le.scrollLeft=ae;break}default:{const{clientWidth:se,scrollWidth:ge}=le;le.scrollLeft=ge-se-ae;break}}else le.scrollLeft=ae;else le.scrollTop=ae}),Fr(()=>{o(b).scrollTop=o(w).scrollOffset});const Q={ns:h,clientSize:N,estimatedTotalSize:S,windowStyle:M,windowRef:b,innerRef:E,innerStyle:R,itemsToRender:k,scrollbarRef:C,states:w,getItemStyle:A,onScroll:D,onScrollbarScroll:L,onWheel:O,scrollTo:z,scrollToItem:B,resetScrollTop:j};return m({windowRef:b,innerRef:E,getItemStyleCache:g,scrollTo:z,scrollToItem:B,resetScrollTop:j,states:w}),Q},render(d){var f;const{$slots:m,className:v,clientSize:h,containerElement:p,data:g,getItemStyle:b,innerElement:E,itemsToRender:C,innerStyle:w,layout:k,total:S,onScroll:$,onScrollbarScroll:M,states:R,useIsScrolling:N,windowStyle:O,ns:P}=d,[W,K]=C,D=Ge(p),L=Ge(E),z=[];if(S>0)for(let j=W;j<=K;j++)z.push(Re(Oe,{key:j},(f=m.default)==null?void 0:f.call(m,{data:g,index:j,isScrolling:N?R.isScrolling:void 0,style:b(j)})));const B=[Re(L,{style:w,ref:"innerRef"},Ve(L)?z:{default:()=>z})],A=Re(Sr,{ref:"scrollbarRef",clientSize:h,layout:k,onScroll:M,ratio:h*100/this.estimatedTotalSize,scrollFrom:R.scrollOffset/(this.estimatedTotalSize-h),total:S,alwaysOn:R.scrollbarAlwaysOn}),ne=Re(D,{class:[P.e("window"),v],style:O,onScroll:$,ref:"windowRef",key:0},Ve(D)?[B]:{default:()=>[B]});return Re("div",{key:0,class:[P.e("wrapper"),R.scrollbarAlwaysOn?"always-on":""]},[ne,A])}}),sv=av({name:"ElFixedSizeList",getItemOffset:({itemSize:e},t)=>t*e,getItemSize:({itemSize:e})=>e,getEstimatedTotalSize:({total:e,itemSize:t})=>t*e,getOffset:({height:e,total:t,itemSize:n,layout:l,width:a},s,r,i)=>{const u=oa(l)?a:e,c=Math.max(0,t*n-u),d=Math.min(c,s*n),f=Math.max(0,(s+1)*n-u);switch(r===Ns&&(i>=f-u&&i<=d+u?r=xn:r=Jn),r){case ta:return d;case na:return f;case Jn:{const m=Math.round(f+(d-f)/2);return mc+Math.floor(u/2)?c:m}case xn:default:return i>=f&&i<=d?i:iMath.max(0,Math.min(e-1,Math.floor(n/t))),getStopIndexForStartIndex:({height:e,total:t,itemSize:n,layout:l,width:a},s,r)=>{const i=s*n,u=oa(l)?a:e,c=Math.ceil((u+r-i)/n);return Math.max(0,Math.min(t-1,s+c-1))},initCache(){},clearCache:!0,validateProps(){}}),ho=(e,t,n)=>{const{itemSize:l}=e,{items:a,lastVisitedIndex:s}=n;if(t>s){let r=0;if(s>=0){const i=a[s];r=i.offset+i.size}for(let i=s+1;i<=t;i++){const u=l(i);a[i]={offset:r,size:u},r+=u}n.lastVisitedIndex=t}return a[t]},k_=(e,t,n)=>{const{items:l,lastVisitedIndex:a}=t;return(a>0?l[a].offset:0)>=n?rv(e,t,0,a,n):S_(e,t,Math.max(0,a),n)},rv=(e,t,n,l,a)=>{for(;n<=l;){const s=n+Math.floor((l-n)/2),r=ho(e,s,t).offset;if(r===a)return s;ra&&(l=s-1)}return Math.max(0,n-1)},S_=(e,t,n,l)=>{const{total:a}=e;let s=1;for(;n{let a=0;if(l>=e&&(l=e-1),l>=0){const i=t[l];a=i.offset+i.size}const r=(e-l-1)*n;return a+r},E_=av({name:"ElDynamicSizeList",getItemOffset:(e,t,n)=>ho(e,t,n).offset,getItemSize:(e,t,{items:n})=>n[t].size,getEstimatedTotalSize:Xu,getOffset:(e,t,n,l,a)=>{const{height:s,layout:r,width:i}=e,u=oa(r)?i:s,c=ho(e,t,a),d=Xu(e,a),f=Math.max(0,Math.min(d-u,c.offset)),m=Math.max(0,c.offset-u+c.size);switch(n===Ns&&(l>=m-u&&l<=f+u?n=xn:n=Jn),n){case ta:return f;case na:return m;case Jn:return Math.round(m+(f-m)/2);case xn:default:return l>=m&&l<=f?l:lk_(e,n,t),getStopIndexForStartIndex:(e,t,n,l)=>{const{height:a,total:s,layout:r,width:i}=e,u=oa(r)?i:a,c=ho(e,t,l),d=n+u;let f=c.offset+c.size,m=t;for(;m{var s,r;n.lastVisitedIndex=Math.min(n.lastVisitedIndex,l-1),(s=t.exposed)==null||s.getItemStyleCache(-1),a&&((r=t.proxy)==null||r.$forceUpdate())},n},clearCache:!1,validateProps:({itemSize:e})=>{}}),__={loading:Boolean,data:{type:Array,required:!0},hoveringIndex:Number,width:Number};var T_=x({name:"ElSelectDropdown",props:__,setup(e,{slots:t,expose:n}){const l=we(Ti),a=ue("select"),{getLabel:s,getValue:r,getDisabled:i}=$s(l.props),u=I([]),c=I(),d=y(()=>e.data.length);ie(()=>d.value,()=>{var O,P;(P=(O=l.tooltipRef.value)==null?void 0:O.updatePopper)==null||P.call(O)});const f=y(()=>vt(l.props.estimatedOptionHeight)),m=y(()=>f.value?{itemSize:l.props.itemHeight}:{estimatedSize:l.props.estimatedOptionHeight,itemSize:O=>u.value[O]}),v=(O=[],P)=>{const{props:{valueKey:W}}=l;return yt(P)?O&&O.some(K=>Uo(Yt(K,W))===Yt(P,W)):O.includes(P)},h=(O,P)=>{if(yt(P)){const{valueKey:W}=l.props;return Yt(O,W)===Yt(P,W)}else return O===P},p=(O,P)=>l.props.multiple?v(O,r(P)):h(O,r(P)),g=(O,P)=>{const{disabled:W,multiple:K,multipleLimit:D}=l.props;return W||!P&&(K?D>0&&O.length>=D:!1)},b=O=>e.hoveringIndex===O;n({listRef:c,isSized:f,isItemDisabled:g,isItemHovering:b,isItemSelected:p,scrollToItem:O=>{const P=c.value;P&&P.scrollToItem(O)},resetScrollTop:()=>{const O=c.value;O&&O.resetScrollTop()}});const k=O=>{const{index:P,data:W,style:K}=O,D=o(f),{itemSize:L,estimatedSize:z}=o(m),{modelValue:B}=l.props,{onSelect:A,onHover:ne}=l,j=W[P];if(j.type==="Group")return H(s_,{item:j,style:K,height:D?L:z},null);const Q=p(B,j),Z=g(B,Q),ee=b(P);return H(p_,et(O,{selected:Q,disabled:i(j)||Z,created:!!j.created,hovering:ee,item:j,onSelect:A,onHover:ne}),{default:ae=>{var re;return((re=t.default)==null?void 0:re.call(t,ae))||H("span",null,[s(j)])}})},{onKeyboardNavigate:S,onKeyboardSelect:$}=l,M=()=>{S("forward")},R=()=>{S("backward")},N=O=>{const{code:P}=O,{tab:W,esc:K,down:D,up:L,enter:z,numpadEnter:B}=Ce;switch([K,D,L,z,B].includes(P)&&(O.preventDefault(),O.stopPropagation()),P){case W:case K:break;case D:M();break;case L:R();break;case z:case B:$();break}};return()=>{var O,P,W,K;const{data:D,width:L}=e,{height:z,multiple:B,scrollbarAlwaysOn:A}=l.props,ne=y(()=>nr?!0:A),j=o(f)?sv:E_;return H("div",{class:[a.b("dropdown"),a.is("multiple",B)],style:{width:`${L}px`}},[(O=t.header)==null?void 0:O.call(t),((P=t.loading)==null?void 0:P.call(t))||((W=t.empty)==null?void 0:W.call(t))||H(j,et({ref:c},o(m),{className:a.be("dropdown","list"),scrollbarAlwaysOn:ne.value,data:D,height:z,width:L,total:D.length,onKeydown:N}),{default:Q=>H(k,Q,null)}),(K=t.footer)==null?void 0:K.call(t)])}}});function $_(e,t){const{aliasProps:n,getLabel:l,getValue:a}=$s(e),s=I(0),r=I(),i=y(()=>e.allowCreate&&e.filterable);function u(v){const h=p=>l(p)===v;return e.options&&e.options.some(h)||t.createdOptions.some(h)}function c(v){i.value&&(e.multiple&&v.created?s.value++:r.value=v)}function d(v){if(i.value)if(v&&v.length>0){if(u(v))return;const h={[n.value.value]:v,[n.value.label]:v,created:!0,[n.value.disabled]:!1};t.createdOptions.length>=s.value?t.createdOptions[s.value]=h:t.createdOptions.push(h)}else if(e.multiple)t.createdOptions.length=s.value;else{const h=r.value;t.createdOptions.length=0,h&&h.created&&t.createdOptions.push(h)}}function f(v){if(!i.value||!v||!v.created||v.created&&e.reserveKeyword&&t.inputValue===l(v))return;const h=t.createdOptions.findIndex(p=>a(p)===a(v));~h&&(t.createdOptions.splice(h,1),s.value--)}function m(){i.value&&(t.createdOptions.length=0,s.value=0)}return{createNewOption:d,removeNewOption:f,selectNewOption:c,clearAllNewOption:m}}const N_=(e,t)=>{const{t:n}=pt(),l=ue("select"),a=ue("input"),{form:s,formItem:r}=dn(),{inputId:i}=Kn(e,{formItemContext:r}),{aliasProps:u,getLabel:c,getValue:d,getDisabled:f,getOptions:m}=$s(e),{valueOnClear:v,isEmptyValue:h}=da(e),p=kt({inputValue:"",cachedOptions:[],createdOptions:[],hoveringIndex:-1,inputHovering:!1,selectionWidth:0,collapseItemWidth:0,previousQuery:null,previousValue:void 0,selectedLabel:"",menuVisibleOnFocus:!1,isBeforeHide:!1}),g=I(-1),b=I(),E=I(),C=I(),w=I(),k=I(),S=I(),$=I(),M=I(),R=I(),N=I(),{isComposing:O,handleCompositionStart:P,handleCompositionEnd:W,handleCompositionUpdate:K}=ha({afterComposition:he=>vn(he)}),D=y(()=>e.disabled||!!(s!=null&&s.disabled)),{wrapperRef:L,isFocused:z,handleBlur:B}=Ll(k,{disabled:D,afterFocus(){e.automaticDropdown&&!Q.value&&(Q.value=!0,p.menuVisibleOnFocus=!0)},beforeBlur(he){var Fe,dt;return((Fe=C.value)==null?void 0:Fe.isFocusInsideContent(he))||((dt=w.value)==null?void 0:dt.isFocusInsideContent(he))},afterBlur(){var he;Q.value=!1,p.menuVisibleOnFocus=!1,e.validateEvent&&((he=r==null?void 0:r.validate)==null||he.call(r,"blur").catch(Fe=>void 0))}}),A=y(()=>Ie("")),ne=y(()=>e.loading?!1:e.options.length>0||p.createdOptions.length>0),j=I([]),Q=I(!1),Z=y(()=>{var he;return(he=s==null?void 0:s.statusIcon)!=null?he:!1}),ee=y(()=>{const he=j.value.length*e.itemHeight;return he>e.height?e.height:he}),ae=y(()=>e.multiple?ke(e.modelValue)&&e.modelValue.length>0:!h(e.modelValue)),re=y(()=>e.clearable&&!D.value&&p.inputHovering&&ae.value),le=y(()=>e.remote&&e.filterable?"":e.suffixIcon),se=y(()=>le.value&&l.is("reverse",Q.value)),ge=y(()=>(r==null?void 0:r.validateState)||""),Be=y(()=>{if(ge.value)return gs[ge.value]}),te=y(()=>e.remote?300:0),ce=y(()=>e.loading?e.loadingText||n("el.select.loading"):e.remote&&!p.inputValue&&!ne.value?!1:e.filterable&&p.inputValue&&ne.value&&j.value.length===0?e.noMatchText||n("el.select.noMatch"):ne.value?null:e.noDataText||n("el.select.noData")),Ie=he=>{const Fe=new RegExp(Si(he),"i"),{filterMethod:dt,remoteMethod:Ct}=Uo(e),pn=e.filterable&&Qe(dt),ol=e.filterable&&e.remote&&Qe(Ct),Vo=Xn=>pn||ol?!0:he?Fe.test(c(Xn)||""):!0;return e.loading?[]:[...p.createdOptions,...e.options].reduce((Xn,to)=>{const Vs=m(to);if(ke(Vs)){const Ca=Vs.filter(Vo);Ca.length>0&&Xn.push({label:c(to),type:"Group"},...Ca)}else(e.remote||Vo(to))&&Xn.push(to);return Xn},[])},Ae=()=>{j.value=Ie(p.inputValue)},xe=y(()=>{const he=new Map;return A.value.forEach((Fe,dt)=>{he.set(en(d(Fe)),{option:Fe,index:dt})}),he}),Ye=y(()=>{const he=new Map;return j.value.forEach((Fe,dt)=>{he.set(en(d(Fe)),{option:Fe,index:dt})}),he}),$e=y(()=>j.value.every(he=>f(he))),Me=Gt(),Pe=y(()=>Me.value==="small"?"small":"default"),Ze=()=>{var he;if(Te(e.fitInputWidth)){g.value=e.fitInputWidth;return}const Fe=((he=b.value)==null?void 0:he.offsetWidth)||200;!e.fitInputWidth&&ne.value?Ee(()=>{g.value=Math.max(Fe,ot())}):g.value=Fe},ot=()=>{var he,Fe;const Ct=document.createElement("canvas").getContext("2d"),pn=l.be("dropdown","item"),Vo=(((Fe=(he=M.value)==null?void 0:he.listRef)==null?void 0:Fe.innerRef)||document).querySelector(`.${pn}`);if(Vo===null||Ct===null)return 0;const Xn=getComputedStyle(Vo),to=Number.parseFloat(Xn.paddingLeft)+Number.parseFloat(Xn.paddingRight);return Ct.font=`bold ${Xn.font.replace(new RegExp(`\\b${Xn.fontWeight}\\b`),"")}`,j.value.reduce((Ca,Sp)=>{const Ep=Ct.measureText(c(Sp));return Math.max(Ep.width,Ca)},0)+to},at=()=>{if(!E.value)return 0;const he=window.getComputedStyle(E.value);return Number.parseFloat(he.gap||"6px")},ct=y(()=>{const he=at();return{maxWidth:`${N.value&&e.maxCollapseTags===1?p.selectionWidth-p.collapseItemWidth-he:p.selectionWidth}px`}}),ye=y(()=>({maxWidth:`${p.selectionWidth}px`})),Ue=y(()=>ke(e.modelValue)?e.modelValue.length===0&&!p.inputValue:e.filterable?!p.inputValue:!0),It=y(()=>{var he;const Fe=(he=e.placeholder)!=null?he:n("el.select.placeholder");return e.multiple||!ae.value?Fe:p.selectedLabel}),Ot=y(()=>{var he,Fe;return(Fe=(he=C.value)==null?void 0:he.popperRef)==null?void 0:Fe.contentRef}),Rt=y(()=>{if(e.multiple){const he=e.modelValue.length;if(e.modelValue.length>0&&Ye.value.has(e.modelValue[he-1])){const{index:Fe}=Ye.value.get(e.modelValue[he-1]);return Fe}}else if(!h(e.modelValue)&&Ye.value.has(e.modelValue)){const{index:he}=Ye.value.get(e.modelValue);return he}return-1}),Mt=y({get(){return Q.value&&ce.value!==!1},set(he){Q.value=he}}),St=y(()=>e.multiple?e.collapseTags?p.cachedOptions.slice(0,e.maxCollapseTags):p.cachedOptions:[]),je=y(()=>e.multiple?e.collapseTags?p.cachedOptions.slice(e.maxCollapseTags):[]:[]),{createNewOption:tt,removeNewOption:it,selectNewOption:X,clearAllNewOption:ve}=$_(e,p),q=()=>{D.value||(p.menuVisibleOnFocus?p.menuVisibleOnFocus=!1:Q.value=!Q.value)},be=()=>{p.inputValue.length>0&&!Q.value&&(Q.value=!0),tt(p.inputValue),Ee(()=>{ft(p.inputValue)})},qe=Ln(be,te.value),ft=he=>{p.previousQuery===he||O.value||(p.previousQuery=he,e.filterable&&Qe(e.filterMethod)?e.filterMethod(he):e.filterable&&e.remote&&Qe(e.remoteMethod)&&e.remoteMethod(he),e.defaultFirstOption&&(e.filterable||e.remote)&&j.value.length?Ee(Pt):Ee(Qt))},Pt=()=>{const he=j.value.filter(Ct=>!Ct.disabled&&Ct.type!=="Group"),Fe=he.find(Ct=>Ct.created),dt=he[0];p.hoveringIndex=ll(j.value,Fe||dt)},Kt=he=>{tn(e.modelValue,he)||t(nt,he)},Ut=he=>{t(De,he),Kt(he),p.previousValue=e.multiple?String(he):he,Ee(()=>{if(e.multiple&&ke(e.modelValue)){const Fe=p.cachedOptions.slice(),dt=e.modelValue.map(Ct=>wl(Ct,Fe));tn(p.cachedOptions,dt)||(p.cachedOptions=dt)}else eo(!0)})},ll=(he=[],Fe)=>{if(!yt(Fe))return he.indexOf(Fe);const dt=e.valueKey;let Ct=-1;return he.some((pn,ol)=>Yt(pn,dt)===Yt(Fe,dt)?(Ct=ol,!0):!1),Ct},en=he=>yt(he)?Yt(he,e.valueKey):he,Bn=()=>{Ze()},Ne=()=>{p.selectionWidth=Number.parseFloat(window.getComputedStyle(E.value).width)},gt=()=>{p.collapseItemWidth=N.value.getBoundingClientRect().width},Je=()=>{var he,Fe;(Fe=(he=C.value)==null?void 0:he.updatePopper)==null||Fe.call(he)},wn=()=>{var he,Fe;(Fe=(he=w.value)==null?void 0:he.updatePopper)==null||Fe.call(he)},qn=he=>{if(e.multiple){let Fe=e.modelValue.slice();const dt=ll(Fe,d(he));dt>-1?(Fe=[...Fe.slice(0,dt),...Fe.slice(dt+1)],p.cachedOptions.splice(dt,1),it(he)):(e.multipleLimit<=0||Fe.length{let dt=e.modelValue.slice();const Ct=ll(dt,d(Fe));Ct>-1&&!D.value&&(dt=[...e.modelValue.slice(0,Ct),...e.modelValue.slice(Ct+1)],p.cachedOptions.splice(Ct,1),Ut(dt),t("remove-tag",d(Fe)),it(Fe)),he.stopPropagation(),Ql()},Ql=()=>{var he;(he=k.value)==null||he.focus()},ya=()=>{var he;if(Q.value){Q.value=!1,Ee(()=>{var Fe;return(Fe=k.value)==null?void 0:Fe.blur()});return}(he=k.value)==null||he.blur()},Ps=()=>{p.inputValue.length>0?p.inputValue="":Q.value=!1},Os=he=>Dc(he,Fe=>!p.cachedOptions.some(dt=>d(dt)===Fe&&f(dt))),Ls=he=>{if(e.multiple&&he.code!==Ce.delete&&p.inputValue.length===0){he.preventDefault();const Fe=e.modelValue.slice(),dt=Os(Fe);if(dt<0)return;const Ct=Fe[dt];Fe.splice(dt,1);const pn=p.cachedOptions[dt];p.cachedOptions.splice(dt,1),it(pn),Ut(Fe),t("remove-tag",Ct)}},Bs=()=>{let he;ke(e.modelValue)?he=[]:he=v.value,p.selectedLabel="",Q.value=!1,Ut(he),t("clear"),ve(),Ql()},me=(he,Fe=void 0)=>{const dt=j.value;if(!["forward","backward"].includes(he)||D.value||dt.length<=0||$e.value||O.value)return;if(!Q.value)return q();vt(Fe)&&(Fe=p.hoveringIndex);let Ct=-1;he==="forward"?(Ct=Fe+1,Ct>=dt.length&&(Ct=0)):he==="backward"&&(Ct=Fe-1,(Ct<0||Ct>=dt.length)&&(Ct=dt.length-1));const pn=dt[Ct];if(f(pn)||pn.type==="Group")return me(he,Ct);p.hoveringIndex=Ct,Cl(Ct)},ze=()=>{if(Q.value)~p.hoveringIndex&&j.value[p.hoveringIndex]&&qn(j.value[p.hoveringIndex]);else return q()},Et=he=>{p.hoveringIndex=he??-1},Qt=()=>{e.multiple?p.hoveringIndex=j.value.findIndex(he=>e.modelValue.some(Fe=>en(Fe)===en(d(he)))):p.hoveringIndex=j.value.findIndex(he=>en(d(he))===en(e.modelValue))},vn=he=>{if(p.inputValue=he.target.value,e.remote)qe();else return be()},yl=he=>{if(Q.value=!1,z.value){const Fe=new FocusEvent("focus",he);B(Fe)}},Gn=()=>(p.isBeforeHide=!1,Ee(()=>{~Rt.value&&Cl(p.hoveringIndex)})),Cl=he=>{M.value.scrollToItem(he)},wl=(he,Fe)=>{const dt=en(he);if(xe.value.has(dt)){const{option:Ct}=xe.value.get(dt);return Ct}if(Fe&&Fe.length){const Ct=Fe.find(pn=>en(d(pn))===dt);if(Ct)return Ct}return{[u.value.value]:he,[u.value.label]:he}},eo=(he=!1)=>{if(e.multiple)if(e.modelValue.length>0){const Fe=p.cachedOptions.slice();p.cachedOptions.length=0,p.previousValue=e.modelValue.toString();for(const dt of e.modelValue){const Ct=wl(dt,Fe);p.cachedOptions.push(Ct)}}else p.cachedOptions=[],p.previousValue=void 0;else if(ae.value){p.previousValue=e.modelValue;const Fe=j.value,dt=Fe.findIndex(Ct=>en(d(Ct))===en(e.modelValue));~dt?p.selectedLabel=c(Fe[dt]):(!p.selectedLabel||he)&&(p.selectedLabel=en(e.modelValue))}else p.selectedLabel="",p.previousValue=void 0;ve(),Ze()};return ie(()=>e.fitInputWidth,()=>{Ze()}),ie(Q,he=>{he?(e.persistent||Ze(),ft("")):(p.inputValue="",p.previousQuery=null,p.isBeforeHide=!0,tt("")),t("visible-change",he)}),ie(()=>e.modelValue,(he,Fe)=>{var dt;(!he||ke(he)&&he.length===0||e.multiple&&!tn(he.toString(),p.previousValue)||!e.multiple&&en(he)!==en(p.previousValue))&&eo(!0),!tn(he,Fe)&&e.validateEvent&&((dt=r==null?void 0:r.validate)==null||dt.call(r,"change").catch(pn=>void 0))},{deep:!0}),ie(()=>e.options,()=>{const he=k.value;(!he||he&&document.activeElement!==he)&&eo()},{deep:!0,flush:"post"}),ie(()=>j.value,()=>(Ze(),M.value&&Ee(M.value.resetScrollTop))),bn(()=>{p.isBeforeHide||Ae()}),bn(()=>{const{valueKey:he,options:Fe}=e,dt=new Map;for(const Ct of Fe){const pn=d(Ct);let ol=pn;if(yt(ol)&&(ol=Yt(pn,he)),dt.get(ol))break;dt.set(ol,!0)}}),Xe(()=>{eo()}),Ft(b,Bn),Ft(E,Ne),Ft(M,Je),Ft(L,Je),Ft(R,wn),Ft(N,gt),{inputId:i,collapseTagSize:Pe,currentPlaceholder:It,expanded:Q,emptyText:ce,popupHeight:ee,debounce:te,allOptions:A,filteredOptions:j,iconComponent:le,iconReverse:se,tagStyle:ct,collapseTagStyle:ye,popperSize:g,dropdownMenuVisible:Mt,hasModelValue:ae,shouldShowPlaceholder:Ue,selectDisabled:D,selectSize:Me,needStatusIcon:Z,showClearBtn:re,states:p,isFocused:z,nsSelect:l,nsInput:a,inputRef:k,menuRef:M,tagMenuRef:R,tooltipRef:C,tagTooltipRef:w,selectRef:b,wrapperRef:L,selectionRef:E,prefixRef:S,suffixRef:$,collapseItemRef:N,popperRef:Ot,validateState:ge,validateIcon:Be,showTagList:St,collapseTagList:je,debouncedOnInputChange:qe,deleteTag:bl,getLabel:c,getValue:d,getDisabled:f,getValueKey:en,handleClear:Bs,handleClickOutside:yl,handleDel:Ls,handleEsc:Ps,focus:Ql,blur:ya,handleMenuEnter:Gn,handleResize:Bn,resetSelectionWidth:Ne,updateTooltip:Je,updateTagTooltip:wn,updateOptions:Ae,toggleMenu:q,scrollTo:Cl,onInput:vn,onKeyboardNavigate:me,onKeyboardSelect:ze,onSelect:qn,onHover:Et,handleCompositionStart:P,handleCompositionEnd:W,handleCompositionUpdate:K}},I_=x({name:"ElSelectV2",components:{ElSelectMenu:T_,ElTag:So,ElTooltip:un,ElIcon:Se},directives:{ClickOutside:vl},props:i_,emits:c_,setup(e,{emit:t}){const n=y(()=>{const{modelValue:i,multiple:u}=e,c=u?[]:void 0;return ke(i)?u?i:c:u?c:i}),l=N_(kt({...nn(e),modelValue:n}),t),{calculatorRef:a,inputStyle:s}=Ci();rt(Ti,{props:kt({...nn(e),height:l.popupHeight,modelValue:n}),expanded:l.expanded,tooltipRef:l.tooltipRef,onSelect:l.onSelect,onHover:l.onHover,onKeyboardNavigate:l.onKeyboardNavigate,onKeyboardSelect:l.onKeyboardSelect});const r=y(()=>e.multiple?l.states.cachedOptions.map(i=>i.label):l.states.selectedLabel);return{...l,modelValue:n,selectedLabel:r,calculatorRef:a,inputStyle:s}}});function M_(e,t,n,l,a,s){const r=ht("el-tag"),i=ht("el-tooltip"),u=ht("el-icon"),c=ht("el-select-menu"),d=fs("click-outside");return We((_(),V("div",{ref:"selectRef",class:T([e.nsSelect.b(),e.nsSelect.m(e.selectSize)]),onMouseenter:f=>e.states.inputHovering=!0,onMouseleave:f=>e.states.inputHovering=!1},[H(i,{ref:"tooltipRef",visible:e.dropdownMenuVisible,teleported:e.teleported,"popper-class":[e.nsSelect.e("popper"),e.popperClass],"gpu-acceleration":!1,"stop-popper-mouse-event":!1,"popper-options":e.popperOptions,"fallback-placements":e.fallbackPlacements,effect:e.effect,placement:e.placement,pure:"",transition:`${e.nsSelect.namespace.value}-zoom-in-top`,trigger:"click",persistent:e.persistent,"append-to":e.appendTo,"show-arrow":e.showArrow,offset:e.offset,onBeforeShow:e.handleMenuEnter,onHide:f=>e.states.isBeforeHide=!1},{default:U(()=>[F("div",{ref:"wrapperRef",class:T([e.nsSelect.e("wrapper"),e.nsSelect.is("focused",e.isFocused),e.nsSelect.is("hovering",e.states.inputHovering),e.nsSelect.is("filterable",e.filterable),e.nsSelect.is("disabled",e.selectDisabled)]),onClick:Le(e.toggleMenu,["prevent"])},[e.$slots.prefix?(_(),V("div",{key:0,ref:"prefixRef",class:T(e.nsSelect.e("prefix"))},[G(e.$slots,"prefix")],2)):J("v-if",!0),F("div",{ref:"selectionRef",class:T([e.nsSelect.e("selection"),e.nsSelect.is("near",e.multiple&&!e.$slots.prefix&&!!e.modelValue.length)])},[e.multiple?G(e.$slots,"tag",{key:0,data:e.states.cachedOptions,deleteTag:e.deleteTag,selectDisabled:e.selectDisabled},()=>[(_(!0),V(Oe,null,ut(e.showTagList,f=>(_(),V("div",{key:e.getValueKey(e.getValue(f)),class:T(e.nsSelect.e("selected-item"))},[H(r,{closable:!e.selectDisabled&&!e.getDisabled(f),size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",style:_e(e.tagStyle),onClose:m=>e.deleteTag(m,f)},{default:U(()=>[F("span",{class:T(e.nsSelect.e("tags-text"))},[G(e.$slots,"label",{label:e.getLabel(f),value:e.getValue(f)},()=>[st(pe(e.getLabel(f)),1)])],2)]),_:2},1032,["closable","size","type","effect","style","onClose"])],2))),128)),e.collapseTags&&e.modelValue.length>e.maxCollapseTags?(_(),oe(i,{key:0,ref:"tagTooltipRef",disabled:e.dropdownMenuVisible||!e.collapseTagsTooltip,"fallback-placements":["bottom","top","right","left"],effect:e.effect,placement:"bottom","popper-class":e.popperClass,teleported:e.teleported},{default:U(()=>[F("div",{ref:"collapseItemRef",class:T(e.nsSelect.e("selected-item"))},[H(r,{closable:!1,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,style:_e(e.collapseTagStyle),"disable-transitions":""},{default:U(()=>[F("span",{class:T(e.nsSelect.e("tags-text"))}," + "+pe(e.modelValue.length-e.maxCollapseTags),3)]),_:1},8,["size","type","effect","style"])],2)]),content:U(()=>[F("div",{ref:"tagMenuRef",class:T(e.nsSelect.e("selection"))},[(_(!0),V(Oe,null,ut(e.collapseTagList,f=>(_(),V("div",{key:e.getValueKey(e.getValue(f)),class:T(e.nsSelect.e("selected-item"))},[H(r,{class:"in-tooltip",closable:!e.selectDisabled&&!e.getDisabled(f),size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",onClose:m=>e.deleteTag(m,f)},{default:U(()=>[F("span",{class:T(e.nsSelect.e("tags-text"))},[G(e.$slots,"label",{label:e.getLabel(f),value:e.getValue(f)},()=>[st(pe(e.getLabel(f)),1)])],2)]),_:2},1032,["closable","size","type","effect","onClose"])],2))),128))],2)]),_:3},8,["disabled","effect","popper-class","teleported"])):J("v-if",!0)]):J("v-if",!0),F("div",{class:T([e.nsSelect.e("selected-item"),e.nsSelect.e("input-wrapper"),e.nsSelect.is("hidden",!e.filterable)])},[We(F("input",{id:e.inputId,ref:"inputRef","onUpdate:modelValue":f=>e.states.inputValue=f,style:_e(e.inputStyle),autocomplete:e.autocomplete,tabindex:e.tabindex,"aria-autocomplete":"list","aria-haspopup":"listbox",autocapitalize:"off","aria-expanded":e.expanded,"aria-label":e.ariaLabel,class:T([e.nsSelect.e("input"),e.nsSelect.is(e.selectSize)]),disabled:e.selectDisabled,role:"combobox",readonly:!e.filterable,spellcheck:"false",type:"text",name:e.name,onInput:e.onInput,onCompositionstart:e.handleCompositionStart,onCompositionupdate:e.handleCompositionUpdate,onCompositionend:e.handleCompositionEnd,onKeydown:[Tt(Le(f=>e.onKeyboardNavigate("backward"),["stop","prevent"]),["up"]),Tt(Le(f=>e.onKeyboardNavigate("forward"),["stop","prevent"]),["down"]),Tt(Le(e.onKeyboardSelect,["stop","prevent"]),["enter"]),Tt(Le(e.handleEsc,["stop","prevent"]),["esc"]),Tt(Le(e.handleDel,["stop"]),["delete"])],onClick:Le(e.toggleMenu,["stop"])},null,46,["id","onUpdate:modelValue","autocomplete","tabindex","aria-expanded","aria-label","disabled","readonly","name","onInput","onCompositionstart","onCompositionupdate","onCompositionend","onKeydown","onClick"]),[[ds,e.states.inputValue]]),e.filterable?(_(),V("span",{key:0,ref:"calculatorRef","aria-hidden":"true",class:T(e.nsSelect.e("input-calculator")),textContent:pe(e.states.inputValue)},null,10,["textContent"])):J("v-if",!0)],2),e.shouldShowPlaceholder?(_(),V("div",{key:1,class:T([e.nsSelect.e("selected-item"),e.nsSelect.e("placeholder"),e.nsSelect.is("transparent",!e.hasModelValue||e.expanded&&!e.states.inputValue)])},[e.hasModelValue?G(e.$slots,"label",{key:0,label:e.currentPlaceholder,value:e.modelValue},()=>[F("span",null,pe(e.currentPlaceholder),1)]):(_(),V("span",{key:1},pe(e.currentPlaceholder),1))],2)):J("v-if",!0)],2),F("div",{ref:"suffixRef",class:T(e.nsSelect.e("suffix"))},[e.iconComponent?We((_(),oe(u,{key:0,class:T([e.nsSelect.e("caret"),e.nsInput.e("icon"),e.iconReverse])},{default:U(()=>[(_(),oe(Ge(e.iconComponent)))]),_:1},8,["class"])),[[mt,!e.showClearBtn]]):J("v-if",!0),e.showClearBtn&&e.clearIcon?(_(),oe(u,{key:1,class:T([e.nsSelect.e("caret"),e.nsInput.e("icon"),e.nsSelect.e("clear")]),onClick:Le(e.handleClear,["prevent","stop"])},{default:U(()=>[(_(),oe(Ge(e.clearIcon)))]),_:1},8,["class","onClick"])):J("v-if",!0),e.validateState&&e.validateIcon&&e.needStatusIcon?(_(),oe(u,{key:2,class:T([e.nsInput.e("icon"),e.nsInput.e("validateIcon"),e.nsInput.is("loading",e.validateState==="validating")])},{default:U(()=>[(_(),oe(Ge(e.validateIcon)))]),_:1},8,["class"])):J("v-if",!0)],2)],10,["onClick"])]),content:U(()=>[H(c,{ref:"menuRef",data:e.filteredOptions,width:e.popperSize,"hovering-index":e.states.hoveringIndex,"scrollbar-always-on":e.scrollbarAlwaysOn},Mn({default:U(f=>[G(e.$slots,"default",On(cl(f)))]),_:2},[e.$slots.header?{name:"header",fn:U(()=>[F("div",{class:T(e.nsSelect.be("dropdown","header"))},[G(e.$slots,"header")],2)])}:void 0,e.$slots.loading&&e.loading?{name:"loading",fn:U(()=>[F("div",{class:T(e.nsSelect.be("dropdown","loading"))},[G(e.$slots,"loading")],2)])}:e.loading||e.filteredOptions.length===0?{name:"empty",fn:U(()=>[F("div",{class:T(e.nsSelect.be("dropdown","empty"))},[G(e.$slots,"empty",{},()=>[F("span",null,pe(e.emptyText),1)])],2)])}:void 0,e.$slots.footer?{name:"footer",fn:U(()=>[F("div",{class:T(e.nsSelect.be("dropdown","footer"))},[G(e.$slots,"footer")],2)])}:void 0]),1032,["data","width","hovering-index","scrollbar-always-on"])]),_:3},8,["visible","teleported","popper-class","popper-options","fallback-placements","effect","placement","transition","persistent","append-to","show-arrow","offset","onBeforeShow","onHide"])],42,["onMouseenter","onMouseleave"])),[[d,e.handleClickOutside,e.popperRef]])}var R_=fe(I_,[["render",M_],["__file","select.vue"]]);const P_=He(R_),O_=de({animated:Boolean,count:{type:Number,default:1},rows:{type:Number,default:3},loading:{type:Boolean,default:!0},throttle:{type:Y([Number,Object])}}),L_=de({variant:{type:String,values:["circle","rect","h1","h3","text","caption","p","image","button"],default:"text"}}),B_=x({name:"ElSkeletonItem"}),V_=x({...B_,props:L_,setup(e){const t=ue("skeleton");return(n,l)=>(_(),V("div",{class:T([o(t).e("item"),o(t).e(n.variant)])},[n.variant==="image"?(_(),oe(o(Cm),{key:0})):J("v-if",!0)],2))}});var as=fe(V_,[["__file","skeleton-item.vue"]]);const D_=(e,t=0)=>{if(t===0)return e;const n=yt(t)&&!!t.initVal,l=I(n);let a=null;const s=i=>{if(vt(i)){l.value=e.value;return}a&&clearTimeout(a),a=setTimeout(()=>{l.value=e.value},i)},r=i=>{i==="leading"?Te(t)?s(t):s(t.leading):yt(t)?s(t.trailing):l.value=!1};return Xe(()=>r("leading")),ie(()=>e.value,i=>{r(i?"leading":"trailing")}),l},A_=x({name:"ElSkeleton"}),F_=x({...A_,props:O_,setup(e,{expose:t}){const n=e,l=ue("skeleton"),a=D_(wt(n,"loading"),n.throttle);return t({uiLoading:a}),(s,r)=>o(a)?(_(),V("div",et({key:0,class:[o(l).b(),o(l).is("animated",s.animated)]},s.$attrs),[(_(!0),V(Oe,null,ut(s.count,i=>(_(),V(Oe,{key:i},[o(a)?G(s.$slots,"template",{key:i},()=>[H(as,{class:T(o(l).is("first")),variant:"p"},null,8,["class"]),(_(!0),V(Oe,null,ut(s.rows,u=>(_(),oe(as,{key:u,class:T([o(l).e("paragraph"),o(l).is("last",u===s.rows&&s.rows>1)]),variant:"p"},null,8,["class"]))),128))]):J("v-if",!0)],64))),128))],16)):G(s.$slots,"default",On(et({key:1},s.$attrs)))}});var x_=fe(F_,[["__file","skeleton.vue"]]);const z_=He(x_,{SkeletonItem:as}),H_=At(as),iv=Symbol("sliderContextKey"),K_=de({modelValue:{type:Y([Number,Array]),default:0},id:{type:String,default:void 0},min:{type:Number,default:0},max:{type:Number,default:100},step:{type:Number,default:1},showInput:Boolean,showInputControls:{type:Boolean,default:!0},size:Jt,inputSize:Jt,showStops:Boolean,showTooltip:{type:Boolean,default:!0},formatTooltip:{type:Y(Function),default:void 0},disabled:Boolean,range:Boolean,vertical:Boolean,height:String,debounce:{type:Number,default:300},rangeStartLabel:{type:String,default:void 0},rangeEndLabel:{type:String,default:void 0},formatValueText:{type:Y(Function),default:void 0},tooltipClass:{type:String,default:void 0},placement:{type:String,values:Xl,default:"top"},marks:{type:Y(Object)},validateEvent:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},...cn(["ariaLabel"])}),Ys=e=>Te(e)||ke(e)&&e.every(Te),W_={[De]:Ys,[Zt]:Ys,[nt]:Ys},j_=de({modelValue:{type:Number,default:0},vertical:Boolean,tooltipClass:String,placement:{type:String,values:Xl,default:"top"}}),U_={[De]:e=>Te(e)},Y_=(e,t,n)=>{const l=I(),a=I(!1),s=y(()=>t.value instanceof Function),r=y(()=>s.value&&t.value(e.modelValue)||e.modelValue),i=Ln(()=>{n.value&&(a.value=!0)},50),u=Ln(()=>{n.value&&(a.value=!1)},50);return{tooltip:l,tooltipVisible:a,formatValue:r,displayTooltip:i,hideTooltip:u}},q_=(e,t,n)=>{const{disabled:l,min:a,max:s,step:r,showTooltip:i,persistent:u,precision:c,sliderSize:d,formatTooltip:f,emitChange:m,resetSize:v,updateDragging:h}=we(iv),{tooltip:p,tooltipVisible:g,formatValue:b,displayTooltip:E,hideTooltip:C}=Y_(e,f,i),w=I(),k=y(()=>`${(e.modelValue-a.value)/(s.value-a.value)*100}%`),S=y(()=>e.vertical?{bottom:k.value}:{left:k.value}),$=()=>{t.hovering=!0,E()},M=()=>{t.hovering=!1,t.dragging||C()},R=Z=>{l.value||(Z.preventDefault(),A(Z),window.addEventListener("mousemove",ne),window.addEventListener("touchmove",ne),window.addEventListener("mouseup",j),window.addEventListener("touchend",j),window.addEventListener("contextmenu",j),w.value.focus())},N=Z=>{l.value||(t.newPosition=Number.parseFloat(k.value)+Z/(s.value-a.value)*100,Q(t.newPosition),m())},O=()=>{N(-r.value)},P=()=>{N(r.value)},W=()=>{N(-r.value*4)},K=()=>{N(r.value*4)},D=()=>{l.value||(Q(0),m())},L=()=>{l.value||(Q(100),m())},z=Z=>{let ee=!0;switch(Z.code){case Ce.left:case Ce.down:O();break;case Ce.right:case Ce.up:P();break;case Ce.home:D();break;case Ce.end:L();break;case Ce.pageDown:W();break;case Ce.pageUp:K();break;default:ee=!1;break}ee&&Z.preventDefault()},B=Z=>{let ee,ae;return Z.type.startsWith("touch")?(ae=Z.touches[0].clientY,ee=Z.touches[0].clientX):(ae=Z.clientY,ee=Z.clientX),{clientX:ee,clientY:ae}},A=Z=>{t.dragging=!0,t.isClick=!0;const{clientX:ee,clientY:ae}=B(Z);e.vertical?t.startY=ae:t.startX=ee,t.startPosition=Number.parseFloat(k.value),t.newPosition=t.startPosition},ne=Z=>{if(t.dragging){t.isClick=!1,E(),v();let ee;const{clientX:ae,clientY:re}=B(Z);e.vertical?(t.currentY=re,ee=(t.startY-t.currentY)/d.value*100):(t.currentX=ae,ee=(t.currentX-t.startX)/d.value*100),t.newPosition=t.startPosition+ee,Q(t.newPosition)}},j=()=>{t.dragging&&(setTimeout(()=>{t.dragging=!1,t.hovering||C(),t.isClick||Q(t.newPosition),m()},0),window.removeEventListener("mousemove",ne),window.removeEventListener("touchmove",ne),window.removeEventListener("mouseup",j),window.removeEventListener("touchend",j),window.removeEventListener("contextmenu",j))},Q=async Z=>{if(Z===null||Number.isNaN(+Z))return;Z<0?Z=0:Z>100&&(Z=100);const ee=100/((s.value-a.value)/r.value);let re=Math.round(Z/ee)*ee*(s.value-a.value)*.01+a.value;re=Number.parseFloat(re.toFixed(c.value)),re!==e.modelValue&&n(De,re),!t.dragging&&e.modelValue!==t.oldValue&&(t.oldValue=e.modelValue),await Ee(),t.dragging&&E(),p.value.updatePopper()};return ie(()=>t.dragging,Z=>{h(Z)}),xt(w,"touchstart",R,{passive:!1}),{disabled:l,button:w,tooltip:p,tooltipVisible:g,showTooltip:i,persistent:u,wrapperStyle:S,formatValue:b,handleMouseEnter:$,handleMouseLeave:M,onButtonDown:R,onKeyDown:z,setPosition:Q}},G_=x({name:"ElSliderButton"}),X_=x({...G_,props:j_,emits:U_,setup(e,{expose:t,emit:n}){const l=e,a=ue("slider"),s=kt({hovering:!1,dragging:!1,isClick:!1,startX:0,currentX:0,startY:0,currentY:0,startPosition:0,newPosition:0,oldValue:l.modelValue}),r=y(()=>d.value?f.value:!1),{disabled:i,button:u,tooltip:c,showTooltip:d,persistent:f,tooltipVisible:m,wrapperStyle:v,formatValue:h,handleMouseEnter:p,handleMouseLeave:g,onButtonDown:b,onKeyDown:E,setPosition:C}=q_(l,s,n),{hovering:w,dragging:k}=nn(s);return t({onButtonDown:b,onKeyDown:E,setPosition:C,hovering:w,dragging:k}),(S,$)=>(_(),V("div",{ref_key:"button",ref:u,class:T([o(a).e("button-wrapper"),{hover:o(w),dragging:o(k)}]),style:_e(o(v)),tabindex:o(i)?-1:0,onMouseenter:o(p),onMouseleave:o(g),onMousedown:o(b),onFocus:o(p),onBlur:o(g),onKeydown:o(E)},[H(o(un),{ref_key:"tooltip",ref:c,visible:o(m),placement:S.placement,"fallback-placements":["top","bottom","right","left"],"stop-popper-mouse-event":!1,"popper-class":S.tooltipClass,disabled:!o(d),persistent:o(r)},{content:U(()=>[F("span",null,pe(o(h)),1)]),default:U(()=>[F("div",{class:T([o(a).e("button"),{hover:o(w),dragging:o(k)}])},null,2)]),_:1},8,["visible","placement","popper-class","disabled","persistent"])],46,["tabindex","onMouseenter","onMouseleave","onMousedown","onFocus","onBlur","onKeydown"]))}});var Zu=fe(X_,[["__file","button.vue"]]);const Z_=de({mark:{type:Y([String,Object]),default:void 0}});var J_=x({name:"ElSliderMarker",props:Z_,setup(e){const t=ue("slider"),n=y(()=>Ve(e.mark)?e.mark:e.mark.label),l=y(()=>Ve(e.mark)?void 0:e.mark.style);return()=>Re("div",{class:t.e("marks-text"),style:l.value},n.value)}});const Q_=(e,t,n)=>{const{form:l,formItem:a}=dn(),s=Lt(),r=I(),i=I(),u={firstButton:r,secondButton:i},c=y(()=>e.disabled||(l==null?void 0:l.disabled)||!1),d=y(()=>Math.min(t.firstValue,t.secondValue)),f=y(()=>Math.max(t.firstValue,t.secondValue)),m=y(()=>e.range?`${100*(f.value-d.value)/(e.max-e.min)}%`:`${100*(t.firstValue-e.min)/(e.max-e.min)}%`),v=y(()=>e.range?`${100*(d.value-e.min)/(e.max-e.min)}%`:"0%"),h=y(()=>e.vertical?{height:e.height}:{}),p=y(()=>e.vertical?{height:m.value,bottom:v.value}:{width:m.value,left:v.value}),g=()=>{s.value&&(t.sliderSize=s.value[`client${e.vertical?"Height":"Width"}`])},b=P=>{const W=e.min+P*(e.max-e.min)/100;if(!e.range)return r;let K;return Math.abs(d.value-W)t.secondValue?"firstButton":"secondButton",u[K]},E=P=>{const W=b(P);return W.value.setPosition(P),W},C=P=>{t.firstValue=P??e.min,k(e.range?[d.value,f.value]:P??e.min)},w=P=>{t.secondValue=P,e.range&&k([d.value,f.value])},k=P=>{n(De,P),n(Zt,P)},S=async()=>{await Ee(),n(nt,e.range?[d.value,f.value]:e.modelValue)},$=P=>{var W,K,D,L,z,B;if(c.value||t.dragging)return;g();let A=0;if(e.vertical){const ne=(D=(K=(W=P.touches)==null?void 0:W.item(0))==null?void 0:K.clientY)!=null?D:P.clientY;A=(s.value.getBoundingClientRect().bottom-ne)/t.sliderSize*100}else{const ne=(B=(z=(L=P.touches)==null?void 0:L.item(0))==null?void 0:z.clientX)!=null?B:P.clientX,j=s.value.getBoundingClientRect().left;A=(ne-j)/t.sliderSize*100}if(!(A<0||A>100))return E(A)};return{elFormItem:a,slider:s,firstButton:r,secondButton:i,sliderDisabled:c,minValue:d,maxValue:f,runwayStyle:h,barStyle:p,resetSize:g,setPosition:E,emitChange:S,onSliderWrapperPrevent:P=>{var W,K;((W=u.firstButton.value)!=null&&W.dragging||(K=u.secondButton.value)!=null&&K.dragging)&&P.preventDefault()},onSliderClick:P=>{$(P)&&S()},onSliderDown:async P=>{const W=$(P);W&&(await Ee(),W.value.onButtonDown(P))},onSliderMarkerDown:P=>{if(c.value||t.dragging)return;E(P)&&S()},setFirstValue:C,setSecondValue:w}},eT=(e,t,n,l)=>({stops:y(()=>{if(!e.showStops||e.min>e.max)return[];if(e.step===0)return[];const r=(e.max-e.min)/e.step,i=100*e.step/(e.max-e.min),u=Array.from({length:r-1}).map((c,d)=>(d+1)*i);return e.range?u.filter(c=>c<100*(n.value-e.min)/(e.max-e.min)||c>100*(l.value-e.min)/(e.max-e.min)):u.filter(c=>c>100*(t.firstValue-e.min)/(e.max-e.min))}),getStopStyle:r=>e.vertical?{bottom:`${r}%`}:{left:`${r}%`}}),tT=e=>y(()=>e.marks?Object.keys(e.marks).map(Number.parseFloat).sort((n,l)=>n-l).filter(n=>n<=e.max&&n>=e.min).map(n=>({point:n,position:(n-e.min)*100/(e.max-e.min),mark:e.marks[n]})):[]),nT=(e,t,n,l,a,s)=>{const r=c=>{a(De,c),a(Zt,c)},i=()=>e.range?![n.value,l.value].every((c,d)=>c===t.oldValue[d]):e.modelValue!==t.oldValue,u=()=>{var c,d;e.min>e.max&&jt("Slider","min should not be greater than max.");const f=e.modelValue;e.range&&ke(f)?f[1]e.max?r([e.max,e.max]):f[0]e.max?r([f[0],e.max]):(t.firstValue=f[0],t.secondValue=f[1],i()&&(e.validateEvent&&((c=s==null?void 0:s.validate)==null||c.call(s,"change").catch(m=>void 0)),t.oldValue=f.slice())):!e.range&&Te(f)&&!Number.isNaN(f)&&(fe.max?r(e.max):(t.firstValue=f,i()&&(e.validateEvent&&((d=s==null?void 0:s.validate)==null||d.call(s,"change").catch(m=>void 0)),t.oldValue=f)))};u(),ie(()=>t.dragging,c=>{c||u()}),ie(()=>e.modelValue,(c,d)=>{t.dragging||ke(c)&&ke(d)&&c.every((f,m)=>f===d[m])&&t.firstValue===c[0]&&t.secondValue===c[1]||u()},{deep:!0}),ie(()=>[e.min,e.max],()=>{u()})},lT=(e,t,n)=>{const l=I();return Xe(async()=>{e.range?(ke(e.modelValue)?(t.firstValue=Math.max(e.min,e.modelValue[0]),t.secondValue=Math.min(e.max,e.modelValue[1])):(t.firstValue=e.min,t.secondValue=e.max),t.oldValue=[t.firstValue,t.secondValue]):(!Te(e.modelValue)||Number.isNaN(e.modelValue)?t.firstValue=e.min:t.firstValue=Math.min(e.max,Math.max(e.min,e.modelValue)),t.oldValue=t.firstValue),xt(window,"resize",n),await Ee(),n()}),{sliderWrapper:l}},oT=x({name:"ElSlider"}),aT=x({...oT,props:K_,emits:W_,setup(e,{expose:t,emit:n}){const l=e,a=ue("slider"),{t:s}=pt(),r=kt({firstValue:0,secondValue:0,oldValue:0,dragging:!1,sliderSize:1}),{elFormItem:i,slider:u,firstButton:c,secondButton:d,sliderDisabled:f,minValue:m,maxValue:v,runwayStyle:h,barStyle:p,resetSize:g,emitChange:b,onSliderWrapperPrevent:E,onSliderClick:C,onSliderDown:w,onSliderMarkerDown:k,setFirstValue:S,setSecondValue:$}=Q_(l,r,n),{stops:M,getStopStyle:R}=eT(l,r,m,v),{inputId:N,isLabeledByFormItem:O}=Kn(l,{formItemContext:i}),P=Gt(),W=y(()=>l.inputSize||P.value),K=y(()=>l.ariaLabel||s("el.slider.defaultLabel",{min:l.min,max:l.max})),D=y(()=>l.range?l.rangeStartLabel||s("el.slider.defaultRangeStartLabel"):K.value),L=y(()=>l.formatValueText?l.formatValueText(Z.value):`${Z.value}`),z=y(()=>l.rangeEndLabel||s("el.slider.defaultRangeEndLabel")),B=y(()=>l.formatValueText?l.formatValueText(ee.value):`${ee.value}`),A=y(()=>[a.b(),a.m(P.value),a.is("vertical",l.vertical),{[a.m("with-input")]:l.showInput}]),ne=tT(l);nT(l,r,m,v,n,i);const j=y(()=>{const le=[l.min,l.max,l.step].map(se=>{const ge=`${se}`.split(".")[1];return ge?ge.length:0});return Math.max.apply(null,le)}),{sliderWrapper:Q}=lT(l,r,g),{firstValue:Z,secondValue:ee,sliderSize:ae}=nn(r),re=le=>{r.dragging=le};return xt(Q,"touchstart",E,{passive:!1}),xt(Q,"touchmove",E,{passive:!1}),rt(iv,{...nn(l),sliderSize:ae,disabled:f,precision:j,emitChange:b,resetSize:g,updateDragging:re}),t({onSliderClick:C}),(le,se)=>{var ge,Be;return _(),V("div",{id:le.range?o(N):void 0,ref_key:"sliderWrapper",ref:Q,class:T(o(A)),role:le.range?"group":void 0,"aria-label":le.range&&!o(O)?o(K):void 0,"aria-labelledby":le.range&&o(O)?(ge=o(i))==null?void 0:ge.labelId:void 0},[F("div",{ref_key:"slider",ref:u,class:T([o(a).e("runway"),{"show-input":le.showInput&&!le.range},o(a).is("disabled",o(f))]),style:_e(o(h)),onMousedown:o(w),onTouchstartPassive:o(w)},[F("div",{class:T(o(a).e("bar")),style:_e(o(p))},null,6),H(Zu,{id:le.range?void 0:o(N),ref_key:"firstButton",ref:c,"model-value":o(Z),vertical:le.vertical,"tooltip-class":le.tooltipClass,placement:le.placement,role:"slider","aria-label":le.range||!o(O)?o(D):void 0,"aria-labelledby":!le.range&&o(O)?(Be=o(i))==null?void 0:Be.labelId:void 0,"aria-valuemin":le.min,"aria-valuemax":le.range?o(ee):le.max,"aria-valuenow":o(Z),"aria-valuetext":o(L),"aria-orientation":le.vertical?"vertical":"horizontal","aria-disabled":o(f),"onUpdate:modelValue":o(S)},null,8,["id","model-value","vertical","tooltip-class","placement","aria-label","aria-labelledby","aria-valuemin","aria-valuemax","aria-valuenow","aria-valuetext","aria-orientation","aria-disabled","onUpdate:modelValue"]),le.range?(_(),oe(Zu,{key:0,ref_key:"secondButton",ref:d,"model-value":o(ee),vertical:le.vertical,"tooltip-class":le.tooltipClass,placement:le.placement,role:"slider","aria-label":o(z),"aria-valuemin":o(Z),"aria-valuemax":le.max,"aria-valuenow":o(ee),"aria-valuetext":o(B),"aria-orientation":le.vertical?"vertical":"horizontal","aria-disabled":o(f),"onUpdate:modelValue":o($)},null,8,["model-value","vertical","tooltip-class","placement","aria-label","aria-valuemin","aria-valuemax","aria-valuenow","aria-valuetext","aria-orientation","aria-disabled","onUpdate:modelValue"])):J("v-if",!0),le.showStops?(_(),V("div",{key:1},[(_(!0),V(Oe,null,ut(o(M),(te,ce)=>(_(),V("div",{key:ce,class:T(o(a).e("stop")),style:_e(o(R)(te))},null,6))),128))])):J("v-if",!0),o(ne).length>0?(_(),V(Oe,{key:2},[F("div",null,[(_(!0),V(Oe,null,ut(o(ne),(te,ce)=>(_(),V("div",{key:ce,style:_e(o(R)(te.position)),class:T([o(a).e("stop"),o(a).e("marks-stop")])},null,6))),128))]),F("div",{class:T(o(a).e("marks"))},[(_(!0),V(Oe,null,ut(o(ne),(te,ce)=>(_(),oe(o(J_),{key:ce,mark:te.mark,style:_e(o(R)(te.position)),onMousedown:Le(Ie=>o(k)(te.position),["stop"])},null,8,["mark","style","onMousedown"]))),128))],2)],64)):J("v-if",!0)],46,["onMousedown","onTouchstartPassive"]),le.showInput&&!le.range?(_(),oe(o(zf),{key:0,ref:"input","model-value":o(Z),class:T(o(a).e("input")),step:le.step,disabled:o(f),controls:le.showInputControls,min:le.min,max:le.max,precision:o(j),debounce:le.debounce,size:o(W),"onUpdate:modelValue":o(S),onChange:o(b)},null,8,["model-value","class","step","disabled","controls","min","max","precision","debounce","size","onUpdate:modelValue","onChange"])):J("v-if",!0)],10,["id","role","aria-label","aria-labelledby"])}}});var sT=fe(aT,[["__file","slider.vue"]]);const rT=He(sT),iT=de({prefixCls:{type:String}}),Ju=x({name:"ElSpaceItem",props:iT,setup(e,{slots:t}){const n=ue("space"),l=y(()=>`${e.prefixCls||n.b()}__item`);return()=>Re("div",{class:l.value},G(t,"default"))}}),Qu={small:8,default:12,large:16};function uT(e){const t=ue("space"),n=y(()=>[t.b(),t.m(e.direction),e.class]),l=I(0),a=I(0),s=y(()=>{const i=e.wrap||e.fill?{flexWrap:"wrap"}:{},u={alignItems:e.alignment},c={rowGap:`${a.value}px`,columnGap:`${l.value}px`};return[i,u,c,e.style]}),r=y(()=>e.fill?{flexGrow:1,minWidth:`${e.fillRatio}%`}:{});return bn(()=>{const{size:i="small",wrap:u,direction:c,fill:d}=e;if(ke(i)){const[f=0,m=0]=i;l.value=f,a.value=m}else{let f;Te(i)?f=i:f=Qu[i||"small"]||Qu.small,(u||d)&&c==="horizontal"?l.value=a.value=f:c==="horizontal"?(l.value=f,a.value=0):(a.value=f,l.value=0)}}),{classes:n,containerStyle:s,itemStyle:r}}const cT=de({direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},class:{type:Y([String,Object,Array]),default:""},style:{type:Y([String,Array,Object]),default:""},alignment:{type:Y(String),default:"center"},prefixCls:{type:String},spacer:{type:Y([Object,String,Number,Array]),default:null,validator:e=>Dt(e)||Te(e)||Ve(e)},wrap:Boolean,fill:Boolean,fillRatio:{type:Number,default:100},size:{type:[String,Array,Number],values:tl,validator:e=>Te(e)||ke(e)&&e.length===2&&e.every(Te)}}),dT=x({name:"ElSpace",props:cT,setup(e,{slots:t}){const{classes:n,containerStyle:l,itemStyle:a}=uT(e);function s(r,i="",u=[]){const{prefixCls:c}=e;return r.forEach((d,f)=>{rr(d)?ke(d.children)&&d.children.forEach((m,v)=>{rr(m)&&ke(m.children)?s(m.children,`${i+v}-`,u):Dt(m)&&(m==null?void 0:m.type)===jl?u.push(m):u.push(H(Ju,{style:a.value,prefixCls:c,key:`nested-${i+v}`},{default:()=>[m]},Vn.PROPS|Vn.STYLE,["style","prefixCls"]))}):Z0(d)&&u.push(H(Ju,{style:a.value,prefixCls:c,key:`LoopKey${i+f}`},{default:()=>[d]},Vn.PROPS|Vn.STYLE,["style","prefixCls"]))}),u}return()=>{var r;const{spacer:i,direction:u}=e,c=G(t,"default",{key:0},()=>[]);if(((r=c.children)!=null?r:[]).length===0)return null;if(ke(c.children)){let d=s(c.children);if(i){const f=d.length-1;d=d.reduce((m,v,h)=>{const p=[...m,v];return h!==f&&p.push(H("span",{style:[a.value,u==="vertical"?"width: 100%":null],key:h},[Dt(i)?i:st(i,Vn.TEXT)],Vn.STYLE)),p},[])}return H("div",{class:n.value,style:l.value},d,Vn.STYLE|Vn.CLASS)}return c.children}}}),fT=He(dT),vT=de({decimalSeparator:{type:String,default:"."},groupSeparator:{type:String,default:","},precision:{type:Number,default:0},formatter:Function,value:{type:Y([Number,Object]),default:0},prefix:String,suffix:String,title:String,valueStyle:{type:Y([String,Object,Array])}}),pT=x({name:"ElStatistic"}),hT=x({...pT,props:vT,setup(e,{expose:t}){const n=e,l=ue("statistic"),a=y(()=>{const{value:s,formatter:r,precision:i,decimalSeparator:u,groupSeparator:c}=n;if(Qe(r))return r(s);if(!Te(s)||Number.isNaN(s))return s;let[d,f=""]=String(s).split(".");return f=f.padEnd(i,"0").slice(0,i>0?i:0),d=d.replace(/\B(?=(\d{3})+(?!\d))/g,c),[d,f].join(f?u:"")});return t({displayValue:a}),(s,r)=>(_(),V("div",{class:T(o(l).b())},[s.$slots.title||s.title?(_(),V("div",{key:0,class:T(o(l).e("head"))},[G(s.$slots,"title",{},()=>[st(pe(s.title),1)])],2)):J("v-if",!0),F("div",{class:T(o(l).e("content"))},[s.$slots.prefix||s.prefix?(_(),V("div",{key:0,class:T(o(l).e("prefix"))},[G(s.$slots,"prefix",{},()=>[F("span",null,pe(s.prefix),1)])],2)):J("v-if",!0),F("span",{class:T(o(l).e("number")),style:_e(s.valueStyle)},pe(o(a)),7),s.$slots.suffix||s.suffix?(_(),V("div",{key:1,class:T(o(l).e("suffix"))},[G(s.$slots,"suffix",{},()=>[F("span",null,pe(s.suffix),1)])],2)):J("v-if",!0)],2)],2))}});var mT=fe(hT,[["__file","statistic.vue"]]);const uv=He(mT),gT=de({format:{type:String,default:"HH:mm:ss"},prefix:String,suffix:String,title:String,value:{type:Y([Number,Object]),default:0},valueStyle:{type:Y([String,Object,Array])}}),bT={finish:()=>!0,[nt]:e=>Te(e)},yT=[["Y",1e3*60*60*24*365],["M",1e3*60*60*24*30],["D",1e3*60*60*24],["H",1e3*60*60],["m",1e3*60],["s",1e3],["S",1]],ec=e=>Te(e)?new Date(e).getTime():e.valueOf(),tc=(e,t)=>{let n=e;const l=/\[([^\]]*)]/g;return yT.reduce((s,[r,i])=>{const u=new RegExp(`${r}+(?![^\\[\\]]*\\])`,"g");if(u.test(s)){const c=Math.floor(n/i);return n-=c*i,s.replace(u,d=>String(c).padStart(d.length,"0"))}return s},t).replace(l,"$1")},CT=x({name:"ElCountdown"}),wT=x({...CT,props:gT,emits:bT,setup(e,{expose:t,emit:n}){const l=e;let a;const s=I(0),r=y(()=>tc(s.value,l.format)),i=d=>tc(d,l.format),u=()=>{a&&(Yl(a),a=void 0)},c=()=>{const d=ec(l.value),f=()=>{let m=d-Date.now();n(nt,m),m<=0?(m=0,u(),n("finish")):a=Ml(f),s.value=m};a=Ml(f)};return Xe(()=>{s.value=ec(l.value)-Date.now(),ie(()=>[l.value,l.format],()=>{u(),c()},{immediate:!0})}),Nt(()=>{u()}),t({displayValue:r}),(d,f)=>(_(),oe(o(uv),{value:s.value,title:d.title,prefix:d.prefix,suffix:d.suffix,"value-style":d.valueStyle,formatter:i},Mn({_:2},[ut(d.$slots,(m,v)=>({name:v,fn:U(()=>[G(d.$slots,v)])}))]),1032,["value","title","prefix","suffix","value-style"]))}});var kT=fe(wT,[["__file","countdown.vue"]]);const ST=He(kT),ET=de({space:{type:[Number,String],default:""},active:{type:Number,default:0},direction:{type:String,default:"horizontal",values:["horizontal","vertical"]},alignCenter:{type:Boolean},simple:{type:Boolean},finishStatus:{type:String,values:["wait","process","finish","error","success"],default:"finish"},processStatus:{type:String,values:["wait","process","finish","error","success"],default:"process"}}),_T={[nt]:(e,t)=>[e,t].every(Te)},cv="ElSteps",TT=x({name:"ElSteps"}),$T=x({...TT,props:ET,emits:_T,setup(e,{emit:t}){const n=e,l=ue("steps"),{children:a,addChild:s,removeChild:r,ChildrenSorter:i}=ks(lt(),"ElStep");return ie(a,()=>{a.value.forEach((u,c)=>{u.setIndex(c)})}),rt(cv,{props:n,steps:a,addStep:s,removeStep:r}),ie(()=>n.active,(u,c)=>{t(nt,u,c)}),(u,c)=>(_(),V("div",{class:T([o(l).b(),o(l).m(u.simple?"simple":u.direction)])},[G(u.$slots,"default"),H(o(i))],2))}});var NT=fe($T,[["__file","steps.vue"]]);const IT=de({title:{type:String,default:""},icon:{type:$t},description:{type:String,default:""},status:{type:String,values:["","wait","process","finish","error","success"],default:""}}),MT=x({name:"ElStep"}),RT=x({...MT,props:IT,setup(e){const t=e,n=ue("step"),l=I(-1),a=I({}),s=I(""),r=we(cv),i=lt();Xe(()=>{ie([()=>r.props.active,()=>r.props.processStatus,()=>r.props.finishStatus],([S])=>{w(S)},{immediate:!0})});const u=y(()=>t.status||s.value),c=y(()=>{const S=r.steps.value[l.value-1];return S?S.currentStatus:"wait"}),d=y(()=>r.props.alignCenter),f=y(()=>r.props.direction==="vertical"),m=y(()=>r.props.simple),v=y(()=>r.steps.value.length),h=y(()=>{var S;return((S=r.steps.value[v.value-1])==null?void 0:S.uid)===i.uid}),p=y(()=>m.value?"":r.props.space),g=y(()=>[n.b(),n.is(m.value?"simple":r.props.direction),n.is("flex",h.value&&!p.value&&!d.value),n.is("center",d.value&&!f.value&&!m.value)]),b=y(()=>{const S={flexBasis:Te(p.value)?`${p.value}px`:p.value?p.value:`${100/(v.value-(d.value?0:1))}%`};return f.value||h.value&&(S.maxWidth=`${100/v.value}%`),S}),E=S=>{l.value=S},C=S=>{const $=S==="wait",M={transitionDelay:`${$?"-":""}${150*l.value}ms`},R=S===r.props.processStatus||$?0:100;M.borderWidth=R&&!m.value?"1px":0,M[r.props.direction==="vertical"?"height":"width"]=`${R}%`,a.value=M},w=S=>{S>l.value?s.value=r.props.finishStatus:S===l.value&&c.value!=="error"?s.value=r.props.processStatus:s.value="wait";const $=r.steps.value[l.value-1];$&&$.calcProgress(s.value)},k=kt({uid:i.uid,getVnode:()=>i.vnode,currentStatus:u,setIndex:E,calcProgress:C});return r.addStep(k),Nt(()=>{r.removeStep(k)}),(S,$)=>(_(),V("div",{style:_e(o(b)),class:T(o(g))},[J(" icon & line "),F("div",{class:T([o(n).e("head"),o(n).is(o(u))])},[o(m)?J("v-if",!0):(_(),V("div",{key:0,class:T(o(n).e("line"))},[F("i",{class:T(o(n).e("line-inner")),style:_e(a.value)},null,6)],2)),F("div",{class:T([o(n).e("icon"),o(n).is(S.icon||S.$slots.icon?"icon":"text")])},[G(S.$slots,"icon",{},()=>[S.icon?(_(),oe(o(Se),{key:0,class:T(o(n).e("icon-inner"))},{default:U(()=>[(_(),oe(Ge(S.icon)))]),_:1},8,["class"])):o(u)==="success"?(_(),oe(o(Se),{key:1,class:T([o(n).e("icon-inner"),o(n).is("status")])},{default:U(()=>[H(o(va))]),_:1},8,["class"])):o(u)==="error"?(_(),oe(o(Se),{key:2,class:T([o(n).e("icon-inner"),o(n).is("status")])},{default:U(()=>[H(o(zn))]),_:1},8,["class"])):o(m)?J("v-if",!0):(_(),V("div",{key:3,class:T(o(n).e("icon-inner"))},pe(l.value+1),3))])],2)],2),J(" title & description "),F("div",{class:T(o(n).e("main"))},[F("div",{class:T([o(n).e("title"),o(n).is(o(u))])},[G(S.$slots,"title",{},()=>[st(pe(S.title),1)])],2),o(m)?(_(),V("div",{key:0,class:T(o(n).e("arrow"))},null,2)):(_(),V("div",{key:1,class:T([o(n).e("description"),o(n).is(o(u))])},[G(S.$slots,"description",{},()=>[st(pe(S.description),1)])],2))],2)],6))}});var dv=fe(RT,[["__file","item.vue"]]);const PT=He(NT,{Step:dv}),OT=At(dv),fv=e=>["",...tl].includes(e),LT=de({modelValue:{type:[Boolean,String,Number],default:!1},disabled:Boolean,loading:Boolean,size:{type:String,validator:fv},width:{type:[String,Number],default:""},inlinePrompt:Boolean,inactiveActionIcon:{type:$t},activeActionIcon:{type:$t},activeIcon:{type:$t},inactiveIcon:{type:$t},activeText:{type:String,default:""},inactiveText:{type:String,default:""},activeValue:{type:[Boolean,String,Number],default:!0},inactiveValue:{type:[Boolean,String,Number],default:!1},name:{type:String,default:""},validateEvent:{type:Boolean,default:!0},beforeChange:{type:Y(Function)},id:String,tabindex:{type:[String,Number]},...cn(["ariaLabel"])}),BT={[De]:e=>_t(e)||Ve(e)||Te(e),[nt]:e=>_t(e)||Ve(e)||Te(e),[Zt]:e=>_t(e)||Ve(e)||Te(e)},vv="ElSwitch",VT=x({name:vv}),DT=x({...VT,props:LT,emits:BT,setup(e,{expose:t,emit:n}){const l=e,{formItem:a}=dn(),s=Gt(),r=ue("switch"),{inputId:i}=Kn(l,{formItemContext:a}),u=fn(y(()=>l.loading)),c=I(l.modelValue!==!1),d=I(),f=I(),m=y(()=>[r.b(),r.m(s.value),r.is("disabled",u.value),r.is("checked",b.value)]),v=y(()=>[r.e("label"),r.em("label","left"),r.is("active",!b.value)]),h=y(()=>[r.e("label"),r.em("label","right"),r.is("active",b.value)]),p=y(()=>({width:zt(l.width)}));ie(()=>l.modelValue,()=>{c.value=!0});const g=y(()=>c.value?l.modelValue:!1),b=y(()=>g.value===l.activeValue);[l.activeValue,l.inactiveValue].includes(g.value)||(n(De,l.inactiveValue),n(nt,l.inactiveValue),n(Zt,l.inactiveValue)),ie(b,k=>{var S;d.value.checked=k,l.validateEvent&&((S=a==null?void 0:a.validate)==null||S.call(a,"change").catch($=>void 0))});const E=()=>{const k=b.value?l.inactiveValue:l.activeValue;n(De,k),n(nt,k),n(Zt,k),Ee(()=>{d.value.checked=b.value})},C=()=>{if(u.value)return;const{beforeChange:k}=l;if(!k){E();return}const S=k();[Yo(S),_t(S)].includes(!0)||jt(vv,"beforeChange must return type `Promise` or `boolean`"),Yo(S)?S.then(M=>{M&&E()}).catch(M=>{}):S&&E()},w=()=>{var k,S;(S=(k=d.value)==null?void 0:k.focus)==null||S.call(k)};return Xe(()=>{d.value.checked=b.value}),t({focus:w,checked:b}),(k,S)=>(_(),V("div",{class:T(o(m)),onClick:Le(C,["prevent"])},[F("input",{id:o(i),ref_key:"input",ref:d,class:T(o(r).e("input")),type:"checkbox",role:"switch","aria-checked":o(b),"aria-disabled":o(u),"aria-label":k.ariaLabel,name:k.name,"true-value":k.activeValue,"false-value":k.inactiveValue,disabled:o(u),tabindex:k.tabindex,onChange:E,onKeydown:Tt(C,["enter"])},null,42,["id","aria-checked","aria-disabled","aria-label","name","true-value","false-value","disabled","tabindex","onKeydown"]),!k.inlinePrompt&&(k.inactiveIcon||k.inactiveText)?(_(),V("span",{key:0,class:T(o(v))},[k.inactiveIcon?(_(),oe(o(Se),{key:0},{default:U(()=>[(_(),oe(Ge(k.inactiveIcon)))]),_:1})):J("v-if",!0),!k.inactiveIcon&&k.inactiveText?(_(),V("span",{key:1,"aria-hidden":o(b)},pe(k.inactiveText),9,["aria-hidden"])):J("v-if",!0)],2)):J("v-if",!0),F("span",{ref_key:"core",ref:f,class:T(o(r).e("core")),style:_e(o(p))},[k.inlinePrompt?(_(),V("div",{key:0,class:T(o(r).e("inner"))},[k.activeIcon||k.inactiveIcon?(_(),oe(o(Se),{key:0,class:T(o(r).is("icon"))},{default:U(()=>[(_(),oe(Ge(o(b)?k.activeIcon:k.inactiveIcon)))]),_:1},8,["class"])):k.activeText||k.inactiveText?(_(),V("span",{key:1,class:T(o(r).is("text")),"aria-hidden":!o(b)},pe(o(b)?k.activeText:k.inactiveText),11,["aria-hidden"])):J("v-if",!0)],2)):J("v-if",!0),F("div",{class:T(o(r).e("action"))},[k.loading?(_(),oe(o(Se),{key:0,class:T(o(r).is("loading"))},{default:U(()=>[H(o(Qn))]),_:1},8,["class"])):o(b)?G(k.$slots,"active-action",{key:1},()=>[k.activeActionIcon?(_(),oe(o(Se),{key:0},{default:U(()=>[(_(),oe(Ge(k.activeActionIcon)))]),_:1})):J("v-if",!0)]):o(b)?J("v-if",!0):G(k.$slots,"inactive-action",{key:2},()=>[k.inactiveActionIcon?(_(),oe(o(Se),{key:0},{default:U(()=>[(_(),oe(Ge(k.inactiveActionIcon)))]),_:1})):J("v-if",!0)])],2)],6),!k.inlinePrompt&&(k.activeIcon||k.activeText)?(_(),V("span",{key:1,class:T(o(h))},[k.activeIcon?(_(),oe(o(Se),{key:0},{default:U(()=>[(_(),oe(Ge(k.activeIcon)))]),_:1})):J("v-if",!0),!k.activeIcon&&k.activeText?(_(),V("span",{key:1,"aria-hidden":!o(b)},pe(k.activeText),9,["aria-hidden"])):J("v-if",!0)],2)):J("v-if",!0)],10,["onClick"]))}});var AT=fe(DT,[["__file","switch.vue"]]);const FT=He(AT),qs=function(e){var t;return(t=e.target)==null?void 0:t.closest("td")},xT=function(e,t,n,l,a){if(!t&&!l&&(!a||ke(a)&&!a.length))return e;Ve(n)?n=n==="descending"?-1:1:n=n&&n<0?-1:1;const s=l?null:function(i,u){return a?Fc(ln(a),c=>Ve(c)?Yt(i,c):c(i,u,e)):(t!=="$key"&&yt(i)&&"$value"in i&&(i=i.$value),[yt(i)?t?Yt(i,t):null:i])},r=function(i,u){var c,d,f,m,v,h;if(l)return l(i.value,u.value);for(let p=0,g=(d=(c=i.key)==null?void 0:c.length)!=null?d:0;p((h=u.key)==null?void 0:h[p]))return 1}return 0};return e.map((i,u)=>({value:i,index:u,key:s?s(i,u):null})).sort((i,u)=>{let c=r(i,u);return c||(c=i.index-u.index),c*+n}).map(i=>i.value)},pv=function(e,t){let n=null;return e.columns.forEach(l=>{l.id===t&&(n=l)}),n},zT=function(e,t){let n=null;for(let l=0;l{if(!e)throw new Error("Row is required when get row identity");if(Ve(t)){if(!t.includes("."))return n?e[t]:`${e[t]}`;const l=t.split(".");let a=e;for(const s of l)a=a[s];return n?a:`${a}`}else if(Qe(t))return t.call(null,e);return""},bo=function(e,t,n=!1,l="children"){const a=e||[],s={};return a.forEach((r,i)=>{if(s[mn(r,t)]={row:r,index:i},n){const u=r[l];ke(u)&&Object.assign(s,bo(u,t,!0,l))}}),s};function HT(e,t){const n={};let l;for(l in e)n[l]=e[l];for(l in t)if(rn(t,l)){const a=t[l];vt(a)||(n[l]=a)}return n}function Mi(e){return e===""||vt(e)||(e=Number.parseInt(e,10),Number.isNaN(e)&&(e="")),e}function hv(e){return e===""||vt(e)||(e=Mi(e),Number.isNaN(e)&&(e=80)),e}function KT(e){return Te(e)?e:Ve(e)?/^\d+(?:px)?$/.test(e)?Number.parseInt(e,10):e:null}function WT(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,n)=>(...l)=>t(n(...l)))}function ss(e,t,n,l,a,s,r){let i=s??0,u=!1;const d=(()=>{if(!r)return e.indexOf(t);const p=mn(t,r);return e.findIndex(g=>mn(g,r)===p)})(),f=d!==-1,m=a==null?void 0:a.call(null,t,i),v=p=>{p==="add"?e.push(t):e.splice(d,1),u=!0},h=p=>{let g=0;const b=(l==null?void 0:l.children)&&p[l.children];return b&&ke(b)&&(g+=b.length,b.forEach(E=>{g+=h(E)})),g};return(!a||m)&&(_t(n)?n&&!f?v("add"):!n&&f&&v("remove"):v(f?"remove":"add")),!(l!=null&&l.checkStrictly)&&(l!=null&&l.children)&&ke(t[l.children])&&t[l.children].forEach(p=>{const g=ss(e,p,n??!f,l,a,i+1,r);i+=h(p)+1,g&&(u=g)}),u}function jT(e,t,n="children",l="hasChildren",a=!1){const s=i=>!(ke(i)&&i.length);function r(i,u,c){t(i,u,c),u.forEach(d=>{if(d[l]&&a){t(d,null,c+1);return}const f=d[n];s(f)||r(d,f,c+1)})}e.forEach(i=>{if(i[l]&&a){t(i,null,0);return}const u=i[n];s(u)||r(i,u,0)})}const UT=(e,t,n,l)=>{const a={strategy:"fixed",...e.popperOptions},s=Qe(l==null?void 0:l.tooltipFormatter)?l.tooltipFormatter({row:n,column:l,cellValue:Wo(n,l.property).value}):void 0;return Dt(s)?{slotContent:s,content:null,...e,popperOptions:a}:{slotContent:null,content:s??t,...e,popperOptions:a}};let $n=null;function YT(e,t,n,l,a,s){var r;const i=UT(e,t,n,l),u={...i,slotContent:void 0};if(($n==null?void 0:$n.trigger)===a){const h=(r=$n.vm)==null?void 0:r.component;Ac(h==null?void 0:h.props,u),h&&i.slotContent&&(h.slots.content=()=>[i.slotContent]);return}$n==null||$n();const c=s==null?void 0:s.refs.tableWrapper,d=c==null?void 0:c.dataset.prefix,f=H(un,{virtualTriggering:!0,virtualRef:a,appendTo:c,placement:"top",transition:"none",offset:0,hideAfter:0,...u},i.slotContent?{content:()=>i.slotContent}:void 0);f.appContext={...s.appContext,...s};const m=document.createElement("div");Il(f,m),f.component.exposed.onOpen();const v=c==null?void 0:c.querySelector(`.${d}-scrollbar__wrap`);$n=()=>{Il(null,m),v==null||v.removeEventListener("scroll",$n),$n=null},$n.trigger=a??void 0,$n.vm=f,v==null||v.addEventListener("scroll",$n)}function mv(e){return e.children?Fc(e.children,mv):[e]}function lc(e,t){return e+t.colSpan}const gv=(e,t,n,l)=>{let a=0,s=e;const r=n.states.columns.value;if(l){const u=mv(l[e]);a=r.slice(0,r.indexOf(u[0])).reduce(lc,0),s=a+u.reduce(lc,0)-1}else a=e;let i;switch(t){case"left":s=r.length-n.states.rightFixedLeafColumnsLength.value&&(i="right");break;default:s=r.length-n.states.rightFixedLeafColumnsLength.value&&(i="right")}return i?{direction:i,start:a,after:s}:{}},Ri=(e,t,n,l,a,s=0)=>{const r=[],{direction:i,start:u,after:c}=gv(t,n,l,a);if(i){const d=i==="left";r.push(`${e}-fixed-column--${i}`),d&&c+s===l.states.fixedLeafColumnsLength.value-1?r.push("is-last-column"):!d&&u-s===l.states.columns.value.length-l.states.rightFixedLeafColumnsLength.value&&r.push("is-first-column")}return r};function oc(e,t){return e+(ca(t.realWidth)||Number.isNaN(t.realWidth)?Number(t.width):t.realWidth)}const Pi=(e,t,n,l)=>{const{direction:a,start:s=0,after:r=0}=gv(e,t,n,l);if(!a)return;const i={},u=a==="left",c=n.states.columns.value;return u?i.left=c.slice(0,s).reduce(oc,0):i.right=c.slice(r+1).reverse().reduce(oc,0),i},$o=(e,t)=>{e&&(Number.isNaN(e[t])||(e[t]=`${e[t]}px`))};function qT(e){const t=lt(),n=I(!1),l=I([]);return{updateExpandRows:()=>{const u=e.data.value||[],c=e.rowKey.value;if(n.value)l.value=u.slice();else if(c){const d=bo(l.value,c);l.value=u.reduce((f,m)=>{const v=mn(m,c);return d[v]&&f.push(m),f},[])}else l.value=[]},toggleRowExpansion:(u,c)=>{ss(l.value,u,c,void 0,void 0,void 0,e.rowKey.value)&&t.emit("expand-change",u,l.value.slice())},setExpandRowKeys:u=>{t.store.assertRowKey();const c=e.data.value||[],d=e.rowKey.value,f=bo(c,d);l.value=u.reduce((m,v)=>{const h=f[v];return h&&m.push(h.row),m},[])},isRowExpanded:u=>{const c=e.rowKey.value;return c?!!bo(l.value,c)[mn(u,c)]:l.value.includes(u)},states:{expandRows:l,defaultExpandAll:n}}}function GT(e){const t=lt(),n=I(null),l=I(null),a=c=>{t.store.assertRowKey(),n.value=c,r(c)},s=()=>{n.value=null},r=c=>{var d;const{data:f,rowKey:m}=e;let v=null;m.value&&(v=(d=(o(f)||[]).find(h=>mn(h,m.value)===c))!=null?d:null),l.value=v??null,t.emit("current-change",l.value,null)};return{setCurrentRowKey:a,restoreCurrentRowKey:s,setCurrentRowByKey:r,updateCurrentRow:c=>{const d=l.value;if(c&&c!==d){l.value=c,t.emit("current-change",l.value,d);return}!c&&d&&(l.value=null,t.emit("current-change",null,d))},updateCurrentRowData:()=>{const c=e.rowKey.value,d=e.data.value||[],f=l.value;if(f&&!d.includes(f)){if(c){const m=mn(f,c);r(m)}else l.value=null;ca(l.value)&&t.emit("current-change",null,f)}else n.value&&(r(n.value),s())},states:{_currentRowKey:n,currentRow:l}}}function XT(e){const t=I([]),n=I({}),l=I(16),a=I(!1),s=I({}),r=I("hasChildren"),i=I("children"),u=I(!1),c=lt(),d=y(()=>{if(!e.rowKey.value)return{};const w=e.data.value||[];return m(w)}),f=y(()=>{const w=e.rowKey.value,k=Object.keys(s.value),S={};return k.length&&k.forEach($=>{if(s.value[$].length){const M={children:[]};s.value[$].forEach(R=>{const N=mn(R,w);M.children.push(N),R[r.value]&&!S[N]&&(S[N]={children:[]})}),S[$]=M}}),S}),m=w=>{const k=e.rowKey.value,S=new Map;return jT(w,($,M,R)=>{const N=mn($,k,!0);ke(M)?S.set(N,{children:M.map(O=>O[k]),level:R}):a.value&&S.set(N,{children:[],lazy:!0,level:R})},i.value,r.value,a.value),S},v=(w=!1,k)=>{var S,$;k||(k=(S=c.store)==null?void 0:S.states.defaultExpandAll.value);const M=d.value,R=f.value,N={};if(M instanceof Map&&M.size){const O=o(n),P=[],W=(D,L)=>{if(w)return t.value?k||t.value.includes(L):!!(k||D!=null&&D.expanded);{const z=k||t.value&&t.value.includes(L);return!!(D!=null&&D.expanded||z)}};M.forEach((D,L)=>{const z=O[L],B={...M.get(L)};if(B.expanded=W(z,L),B.lazy){const{loaded:A=!1,loading:ne=!1}=z||{};B.loaded=!!A,B.loading=!!ne,P.push(L)}N[L]=B});const K=Object.keys(R);a.value&&K.length&&P.length&&K.forEach(D=>{var L;const z=O[D],B=R[D].children;if(P.includes(D)){if(((L=N[D].children)==null?void 0:L.length)!==0)throw new Error("[ElTable]children must be an empty array.");N[D].children=B}else{const{loaded:A=!1,loading:ne=!1}=z||{};N[D]={lazy:!0,loaded:!!A,loading:!!ne,expanded:W(z,D),children:B,level:void 0}}})}n.value=N,($=c.store)==null||$.updateTableScrollY()};ie(()=>t.value,()=>{v(!0)}),ie(()=>d.value,()=>{v()}),ie(()=>f.value,()=>{v()});const h=w=>{t.value=w,v()},p=w=>a.value&&w&&"loaded"in w&&!w.loaded,g=(w,k)=>{c.store.assertRowKey();const S=e.rowKey.value,$=mn(w,S),M=$&&n.value[$];if($&&M&&"expanded"in M){const R=M.expanded;k=vt(k)?!M.expanded:k,n.value[$].expanded=k,R!==k&&c.emit("expand-change",w,k),p(M)&&E(w,$,M),c.store.updateTableScrollY()}},b=w=>{c.store.assertRowKey();const k=e.rowKey.value,S=mn(w,k),$=n.value[S];p($)?E(w,S,$):g(w,void 0)},E=(w,k,S)=>{const{load:$}=c.props;$&&!n.value[k].loaded&&(n.value[k].loading=!0,$(w,S,M=>{if(!ke(M))throw new TypeError("[ElTable] data must be an array");n.value[k].loading=!1,n.value[k].loaded=!0,n.value[k].expanded=!0,M.length&&(s.value[k]=M),c.emit("expand-change",w,!0)}))};return{loadData:E,loadOrToggle:b,toggleTreeExpansion:g,updateTreeExpandKeys:h,updateTreeData:v,updateKeyChildren:(w,k)=>{const{lazy:S,rowKey:$}=c.props;if(S){if(!$)throw new Error("[Table] rowKey is required in updateKeyChild");s.value[w]&&(s.value[w]=k)}},normalize:m,states:{expandRowKeys:t,treeData:n,indent:l,lazy:a,lazyTreeNodeMap:s,lazyColumnIdentifier:r,childrenColumnName:i,checkStrictly:u}}}const ZT=(e,t)=>{const n=t.sortingColumn;return!n||Ve(n.sortable)?e:xT(e,t.sortProp,t.sortOrder,n.sortMethod,n.sortBy)},Da=e=>{const t=[];return e.forEach(n=>{n.children&&n.children.length>0?t.push.apply(t,Da(n.children)):t.push(n)}),t};function JT(){var e;const t=lt(),{size:n}=nn((e=t.proxy)==null?void 0:e.$props),l=I(null),a=I([]),s=I([]),r=I(!1),i=I([]),u=I([]),c=I([]),d=I([]),f=I([]),m=I([]),v=I([]),h=I([]),p=[],g=I(0),b=I(0),E=I(0),C=I(!1),w=I([]),k=I(!1),S=I(!1),$=I(null),M=I({}),R=I(null),N=I(null),O=I(null),P=I(null),W=I(null),K=y(()=>l.value?bo(w.value,l.value):void 0);ie(a,()=>{var je;t.state&&(B(!1),t.props.tableLayout==="auto"&&((je=t.refs.tableHeaderRef)==null||je.updateFixedColumnStyle()))},{deep:!0});const D=()=>{if(!l.value)throw new Error("[ElTable] prop row-key is required")},L=je=>{var tt;(tt=je.children)==null||tt.forEach(it=>{it.fixed=je.fixed,L(it)})},z=()=>{i.value.forEach(be=>{L(be)}),d.value=i.value.filter(be=>[!0,"left"].includes(be.fixed));const je=i.value.find(be=>be.type==="selection");let tt;je&&je.fixed!=="right"&&!d.value.includes(je)&&i.value.indexOf(je)===0&&d.value.length&&(d.value.unshift(je),tt=!0),f.value=i.value.filter(be=>be.fixed==="right");const it=i.value.filter(be=>(tt?be.type!=="selection":!0)&&!be.fixed);u.value=Array.from(d.value).concat(it).concat(f.value);const X=Da(it),ve=Da(d.value),q=Da(f.value);g.value=X.length,b.value=ve.length,E.value=q.length,c.value=Array.from(ve).concat(X).concat(q),r.value=d.value.length>0||f.value.length>0},B=(je,tt=!1)=>{je&&z(),tt?t.state.doLayout():t.state.debouncedUpdateLayout()},A=je=>K.value?!!K.value[mn(je,l.value)]:w.value.includes(je),ne=()=>{C.value=!1;const je=w.value;w.value=[],je.length&&t.emit("selection-change",[])},j=()=>{var je,tt;let it;if(l.value){it=[];const X=(tt=(je=t==null?void 0:t.store)==null?void 0:je.states)==null?void 0:tt.childrenColumnName.value,ve=bo(a.value,l.value,!0,X);for(const q in K.value)rn(K.value,q)&&!ve[q]&&it.push(K.value[q].row)}else it=w.value.filter(X=>!a.value.includes(X));if(it.length){const X=w.value.filter(ve=>!it.includes(ve));w.value=X,t.emit("selection-change",X.slice())}},Q=()=>(w.value||[]).slice(),Z=(je,tt,it=!0,X=!1)=>{var ve,q,be,qe;const ft={children:(q=(ve=t==null?void 0:t.store)==null?void 0:ve.states)==null?void 0:q.childrenColumnName.value,checkStrictly:(qe=(be=t==null?void 0:t.store)==null?void 0:be.states)==null?void 0:qe.checkStrictly.value};if(ss(w.value,je,tt,ft,X?void 0:$.value,a.value.indexOf(je),l.value)){const Kt=(w.value||[]).slice();it&&t.emit("select",Kt,je),t.emit("selection-change",Kt)}},ee=()=>{var je,tt;const it=S.value?!C.value:!(C.value||w.value.length);C.value=it;let X=!1,ve=0;const q=(tt=(je=t==null?void 0:t.store)==null?void 0:je.states)==null?void 0:tt.rowKey.value,{childrenColumnName:be}=t.store.states,qe={children:be.value,checkStrictly:!1};a.value.forEach((ft,Pt)=>{const Kt=Pt+ve;ss(w.value,ft,it,qe,$.value,Kt,q)&&(X=!0),ve+=re(mn(ft,q))}),X&&t.emit("selection-change",w.value?w.value.slice():[]),t.emit("select-all",(w.value||[]).slice())},ae=()=>{var je;if(((je=a.value)==null?void 0:je.length)===0){C.value=!1;return}const{childrenColumnName:tt}=t.store.states;let it=0,X=0;const ve=be=>{var qe;for(const ft of be){const Pt=$.value&&$.value.call(null,ft,it);if(A(ft))X++;else if(!$.value||Pt)return!1;if(it++,(qe=ft[tt.value])!=null&&qe.length&&!ve(ft[tt.value]))return!1}return!0},q=ve(a.value||[]);C.value=X===0?!1:q},re=je=>{var tt;if(!t||!t.store)return 0;const{treeData:it}=t.store.states;let X=0;const ve=(tt=it.value[je])==null?void 0:tt.children;return ve&&(X+=ve.length,ve.forEach(q=>{X+=re(q)})),X},le=(je,tt)=>{const it={};return ln(je).forEach(X=>{M.value[X.id]=tt,it[X.columnKey||X.id]=tt}),it},se=(je,tt,it)=>{N.value&&N.value!==je&&(N.value.order=null),N.value=je,O.value=tt,P.value=it},ge=()=>{let je=o(s);Object.keys(M.value).forEach(tt=>{const it=M.value[tt];if(!it||it.length===0)return;const X=pv({columns:c.value},tt);X&&X.filterMethod&&(je=je.filter(ve=>it.some(q=>X.filterMethod.call(null,q,ve,X))))}),R.value=je},Be=()=>{var je;a.value=ZT((je=R.value)!=null?je:[],{sortingColumn:N.value,sortProp:O.value,sortOrder:P.value})},te=(je=void 0)=>{je!=null&&je.filter||ge(),Be()},ce=je=>{const{tableHeaderRef:tt}=t.refs;if(!tt)return;const it=Object.assign({},tt.filterPanels),X=Object.keys(it);if(X.length)if(Ve(je)&&(je=[je]),ke(je)){const ve=je.map(q=>zT({columns:c.value},q));X.forEach(q=>{const be=ve.find(qe=>qe.id===q);be&&(be.filteredValue=[])}),t.store.commit("filterChange",{column:ve,values:[],silent:!0,multi:!0})}else X.forEach(ve=>{const q=c.value.find(be=>be.id===ve);q&&(q.filteredValue=[])}),M.value={},t.store.commit("filterChange",{column:{},values:[],silent:!0})},Ie=()=>{N.value&&(se(null,null,null),t.store.commit("changeSortCondition",{silent:!0}))},{setExpandRowKeys:Ae,toggleRowExpansion:xe,updateExpandRows:Ye,states:$e,isRowExpanded:Me}=qT({data:a,rowKey:l}),{updateTreeExpandKeys:Pe,toggleTreeExpansion:Ze,updateTreeData:ot,updateKeyChildren:at,loadOrToggle:ct,states:ye}=XT({data:a,rowKey:l}),{updateCurrentRowData:Ue,updateCurrentRow:It,setCurrentRowKey:Ot,states:Rt}=GT({data:a,rowKey:l});return{assertRowKey:D,updateColumns:z,scheduleLayout:B,isSelected:A,clearSelection:ne,cleanSelection:j,getSelectionRows:Q,toggleRowSelection:Z,_toggleAllSelection:ee,toggleAllSelection:null,updateAllSelected:ae,updateFilters:le,updateCurrentRow:It,updateSort:se,execFilter:ge,execSort:Be,execQuery:te,clearFilter:ce,clearSort:Ie,toggleRowExpansion:xe,setExpandRowKeysAdapter:je=>{Ae(je),Pe(je)},setCurrentRowKey:Ot,toggleRowExpansionAdapter:(je,tt)=>{c.value.some(({type:X})=>X==="expand")?xe(je,tt):Ze(je,tt)},isRowExpanded:Me,updateExpandRows:Ye,updateCurrentRowData:Ue,loadOrToggle:ct,updateTreeData:ot,updateKeyChildren:at,states:{tableSize:n,rowKey:l,data:a,_data:s,isComplex:r,_columns:i,originColumns:u,columns:c,fixedColumns:d,rightFixedColumns:f,leafColumns:m,fixedLeafColumns:v,rightFixedLeafColumns:h,updateOrderFns:p,leafColumnsLength:g,fixedLeafColumnsLength:b,rightFixedLeafColumnsLength:E,isAllSelected:C,selection:w,reserveSelection:k,selectOnIndeterminate:S,selectable:$,filters:M,filteredData:R,sortingColumn:N,sortProp:O,sortOrder:P,hoverRow:W,...$e,...ye,...Rt}}}function Er(e,t){return e.map(n=>{var l;return n.id===t.id?t:((l=n.children)!=null&&l.length&&(n.children=Er(n.children,t)),n)})}function _r(e){e.forEach(t=>{var n,l;t.no=(n=t.getColumnIndex)==null?void 0:n.call(t),(l=t.children)!=null&&l.length&&_r(t.children)}),e.sort((t,n)=>t.no-n.no)}function QT(){const e=lt(),t=JT();return{ns:ue("table"),...t,mutations:{setData(r,i){const u=o(r._data)!==i;r.data.value=i,r._data.value=i,e.store.execQuery(),e.store.updateCurrentRowData(),e.store.updateExpandRows(),e.store.updateTreeData(e.store.states.defaultExpandAll.value),o(r.reserveSelection)?e.store.assertRowKey():u?e.store.clearSelection():e.store.cleanSelection(),e.store.updateAllSelected(),e.$ready&&e.store.scheduleLayout()},insertColumn(r,i,u,c){var d;const f=o(r._columns);let m=[];u?(u&&!u.children&&(u.children=[]),(d=u.children)==null||d.push(i),m=Er(f,u)):(f.push(i),m=f),_r(m),r._columns.value=m,r.updateOrderFns.push(c),i.type==="selection"&&(r.selectable.value=i.selectable,r.reserveSelection.value=i.reserveSelection),e.$ready&&(e.store.updateColumns(),e.store.scheduleLayout())},updateColumnOrder(r,i){var u;((u=i.getColumnIndex)==null?void 0:u.call(i))!==i.no&&(_r(r._columns.value),e.$ready&&e.store.updateColumns())},removeColumn(r,i,u,c){var d;const f=o(r._columns)||[];if(u)(d=u.children)==null||d.splice(u.children.findIndex(v=>v.id===i.id),1),Ee(()=>{var v;((v=u.children)==null?void 0:v.length)===0&&delete u.children}),r._columns.value=Er(f,u);else{const v=f.indexOf(i);v>-1&&(f.splice(v,1),r._columns.value=f)}const m=r.updateOrderFns.indexOf(c);m>-1&&r.updateOrderFns.splice(m,1),e.$ready&&(e.store.updateColumns(),e.store.scheduleLayout())},sort(r,i){const{prop:u,order:c,init:d}=i;if(u){const f=o(r.columns).find(m=>m.property===u);f&&(f.order=c,e.store.updateSort(f,u,c),e.store.commit("changeSortCondition",{init:d}))}},changeSortCondition(r,i){const{sortingColumn:u,sortProp:c,sortOrder:d}=r,f=o(u),m=o(c),v=o(d);ca(v)&&(r.sortingColumn.value=null,r.sortProp.value=null);const h={filter:!0};e.store.execQuery(h),(!i||!(i.silent||i.init))&&e.emit("sort-change",{column:f,prop:m,order:v}),e.store.updateTableScrollY()},filterChange(r,i){const{column:u,values:c,silent:d}=i,f=e.store.updateFilters(u,c);e.store.execQuery(),d||e.emit("filter-change",f),e.store.updateTableScrollY()},toggleAllSelection(){var r,i;(i=(r=e.store).toggleAllSelection)==null||i.call(r)},rowSelectedChanged(r,i){e.store.toggleRowSelection(i),e.store.updateAllSelected()},setHoverRow(r,i){r.hoverRow.value=i},setCurrentRow(r,i){e.store.updateCurrentRow(i)}},commit:function(r,...i){const u=e.store.mutations;if(u[r])u[r].apply(e,[e.store.states,...i]);else throw new Error(`Action not found: ${r}`)},updateTableScrollY:function(){Ee(()=>e.layout.updateScrollY.apply(e.layout))}}}const Oi={rowKey:"rowKey",defaultExpandAll:"defaultExpandAll",selectOnIndeterminate:"selectOnIndeterminate",indent:"indent",lazy:"lazy",data:"data","treeProps.hasChildren":{key:"lazyColumnIdentifier",default:"hasChildren"},"treeProps.children":{key:"childrenColumnName",default:"children"},"treeProps.checkStrictly":{key:"checkStrictly",default:!1}};function e$(e,t){if(!e)throw new Error("Table is required.");const n=QT();return n.toggleAllSelection=Ln(n._toggleAllSelection,10),Object.keys(Oi).forEach(l=>{bv(yv(t,l),l,n)}),t$(n,t),n}function t$(e,t){Object.keys(Oi).forEach(n=>{ie(()=>yv(t,n),l=>{bv(l,n,e)})})}function bv(e,t,n){let l=e,a=Oi[t];yt(a)&&(l=l||a.default,a=a.key),n.states[a].value=l}function yv(e,t){if(t.includes(".")){const n=t.split(".");let l=e;return n.forEach(a=>{l=l[a]}),l}else return e[t]}class n${constructor(t){this.observers=[],this.table=null,this.store=null,this.columns=[],this.fit=!0,this.showHeader=!0,this.height=I(null),this.scrollX=I(!1),this.scrollY=I(!1),this.bodyWidth=I(null),this.fixedWidth=I(null),this.rightFixedWidth=I(null),this.gutterWidth=0;for(const n in t)rn(t,n)&&(gn(this[n])?this[n].value=t[n]:this[n]=t[n]);if(!this.table)throw new Error("Table is required for Table Layout");if(!this.store)throw new Error("Store is required for Table Layout")}updateScrollY(){const t=this.height.value;if(ca(t))return!1;const n=this.table.refs.scrollBarRef;if(this.table.vnode.el&&(n!=null&&n.wrapRef)){let l=!0;const a=this.scrollY.value;return l=n.wrapRef.scrollHeight>n.wrapRef.clientHeight,this.scrollY.value=l,a!==l}return!1}setHeight(t,n="height"){if(!bt)return;const l=this.table.vnode.el;if(t=KT(t),this.height.value=Number(t),!l&&(t||t===0)){Ee(()=>this.setHeight(t,n));return}l&&Te(t)?(l.style[n]=`${t}px`,this.updateElsHeight()):l&&Ve(t)&&(l.style[n]=t,this.updateElsHeight())}setMaxHeight(t){this.setHeight(t,"max-height")}getFlattenColumns(){const t=[];return this.table.store.states.columns.value.forEach(l=>{l.isColumnGroup?t.push.apply(t,l.columns):t.push(l)}),t}updateElsHeight(){this.updateScrollY(),this.notifyObservers("scrollable")}headerDisplayNone(t){if(!t)return!0;let n=t;for(;n.tagName!=="DIV";){if(getComputedStyle(n).display==="none")return!0;n=n.parentElement}return!1}updateColumnsWidth(){var t;if(!bt)return;const n=this.fit,l=(t=this.table.vnode.el)==null?void 0:t.clientWidth;let a=0;const s=this.getFlattenColumns(),r=s.filter(c=>!Te(c.width));if(s.forEach(c=>{Te(c.width)&&c.realWidth&&(c.realWidth=null)}),r.length>0&&n){if(s.forEach(c=>{a+=Number(c.width||c.minWidth||80)}),a<=l){this.scrollX.value=!1;const c=l-a;if(r.length===1)r[0].realWidth=Number(r[0].minWidth||80)+c;else{const d=r.reduce((v,h)=>v+Number(h.minWidth||80),0),f=c/d;let m=0;r.forEach((v,h)=>{if(h===0)return;const p=Math.floor(Number(v.minWidth||80)*f);m+=p,v.realWidth=Number(v.minWidth||80)+p}),r[0].realWidth=Number(r[0].minWidth||80)+c-m}}else this.scrollX.value=!0,r.forEach(c=>{c.realWidth=Number(c.minWidth)});this.bodyWidth.value=Math.max(a,l),this.table.state.resizeState.value.width=this.bodyWidth.value}else s.forEach(c=>{!c.width&&!c.minWidth?c.realWidth=80:c.realWidth=Number(c.width||c.minWidth),a+=c.realWidth}),this.scrollX.value=a>l,this.bodyWidth.value=a;const i=this.store.states.fixedColumns.value;if(i.length>0){let c=0;i.forEach(d=>{c+=Number(d.realWidth||d.width)}),this.fixedWidth.value=c}const u=this.store.states.rightFixedColumns.value;if(u.length>0){let c=0;u.forEach(d=>{c+=Number(d.realWidth||d.width)}),this.rightFixedWidth.value=c}this.notifyObservers("columns")}addObserver(t){this.observers.push(t)}removeObserver(t){const n=this.observers.indexOf(t);n!==-1&&this.observers.splice(n,1)}notifyObservers(t){this.observers.forEach(l=>{var a,s;switch(t){case"columns":(a=l.state)==null||a.onColumnsChange(this);break;case"scrollable":(s=l.state)==null||s.onScrollableChange(this);break;default:throw new Error(`Table Layout don't have event ${t}.`)}})}}const{CheckboxGroup:l$}=Hn,o$=x({name:"ElTableFilterPanel",components:{ElCheckbox:Hn,ElCheckboxGroup:l$,ElScrollbar:jn,ElTooltip:un,ElIcon:Se,ArrowDown:nl,ArrowUp:hs},directives:{ClickOutside:vl},props:{placement:{type:String,default:"bottom-start"},store:{type:Object},column:{type:Object},upDataColumn:{type:Function},appendTo:Wt.appendTo},setup(e){const t=lt(),{t:n}=pt(),l=ue("table-filter"),a=t==null?void 0:t.parent;e.column&&!a.filterPanels.value[e.column.id]&&(a.filterPanels.value[e.column.id]=t);const s=I(!1),r=I(null),i=y(()=>e.column&&e.column.filters),u=y(()=>e.column&&e.column.filterClassName?`${l.b()} ${e.column.filterClassName}`:l.b()),c=y({get:()=>{var k;return(((k=e.column)==null?void 0:k.filteredValue)||[])[0]},set:k=>{d.value&&(In(k)?d.value.splice(0,1):d.value.splice(0,1,k))}}),d=y({get(){return e.column?e.column.filteredValue||[]:[]},set(k){var S;e.column&&((S=e.upDataColumn)==null||S.call(e,"filteredValue",k))}}),f=y(()=>e.column?e.column.filterMultiple:!0),m=k=>k.value===c.value,v=()=>{s.value=!1},h=k=>{k.stopPropagation(),s.value=!s.value},p=()=>{s.value=!1},g=()=>{C(d.value),v()},b=()=>{d.value=[],C(d.value),v()},E=k=>{c.value=k,In(k)?C([]):C(d.value),v()},C=k=>{var S,$;(S=e.store)==null||S.commit("filterChange",{column:e.column,values:k}),($=e.store)==null||$.updateAllSelected()};ie(s,k=>{var S;e.column&&((S=e.upDataColumn)==null||S.call(e,"filterOpened",k))},{immediate:!0});const w=y(()=>{var k,S;return(S=(k=r.value)==null?void 0:k.popperRef)==null?void 0:S.contentRef});return{tooltipVisible:s,multiple:f,filterClassName:u,filteredValue:d,filterValue:c,filters:i,handleConfirm:g,handleReset:b,handleSelect:E,isPropAbsent:In,isActive:m,t:n,ns:l,showFilterPanel:h,hideFilterPanel:p,popperPaneRef:w,tooltip:r}}});function a$(e,t,n,l,a,s){const r=ht("el-checkbox"),i=ht("el-checkbox-group"),u=ht("el-scrollbar"),c=ht("arrow-up"),d=ht("arrow-down"),f=ht("el-icon"),m=ht("el-tooltip"),v=fs("click-outside");return _(),oe(m,{ref:"tooltip",visible:e.tooltipVisible,offset:0,placement:e.placement,"show-arrow":!1,"stop-popper-mouse-event":!1,teleported:"",effect:"light",pure:"","popper-class":e.filterClassName,persistent:"","append-to":e.appendTo},{content:U(()=>[e.multiple?(_(),V("div",{key:0},[F("div",{class:T(e.ns.e("content"))},[H(u,{"wrap-class":e.ns.e("wrap")},{default:U(()=>[H(i,{modelValue:e.filteredValue,"onUpdate:modelValue":h=>e.filteredValue=h,class:T(e.ns.e("checkbox-group"))},{default:U(()=>[(_(!0),V(Oe,null,ut(e.filters,h=>(_(),oe(r,{key:h.value,value:h.value},{default:U(()=>[st(pe(h.text),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue","onUpdate:modelValue","class"])]),_:1},8,["wrap-class"])],2),F("div",{class:T(e.ns.e("bottom"))},[F("button",{class:T({[e.ns.is("disabled")]:e.filteredValue.length===0}),disabled:e.filteredValue.length===0,type:"button",onClick:e.handleConfirm},pe(e.t("el.table.confirmFilter")),11,["disabled","onClick"]),F("button",{type:"button",onClick:e.handleReset},pe(e.t("el.table.resetFilter")),9,["onClick"])],2)])):(_(),V("ul",{key:1,class:T(e.ns.e("list"))},[F("li",{class:T([e.ns.e("list-item"),{[e.ns.is("active")]:e.isPropAbsent(e.filterValue)}]),onClick:h=>e.handleSelect(null)},pe(e.t("el.table.clearFilter")),11,["onClick"]),(_(!0),V(Oe,null,ut(e.filters,h=>(_(),V("li",{key:h.value,class:T([e.ns.e("list-item"),e.ns.is("active",e.isActive(h))]),label:h.value,onClick:p=>e.handleSelect(h.value)},pe(h.text),11,["label","onClick"]))),128))],2))]),default:U(()=>[We((_(),V("span",{class:T([`${e.ns.namespace.value}-table__column-filter-trigger`,`${e.ns.namespace.value}-none-outline`]),onClick:e.showFilterPanel},[H(f,null,{default:U(()=>[G(e.$slots,"filter-icon",{},()=>{var h;return[(h=e.column)!=null&&h.filterOpened?(_(),oe(c,{key:0})):(_(),oe(d,{key:1}))]})]),_:3})],10,["onClick"])),[[v,e.hideFilterPanel,e.popperPaneRef]])]),_:3},8,["visible","placement","popper-class","append-to"])}var s$=fe(o$,[["render",a$],["__file","filter-panel.vue"]]);function Li(e){const t=lt();xr(()=>{n.value.addObserver(t)}),Xe(()=>{l(n.value),a(n.value)}),hl(()=>{l(n.value),a(n.value)}),cs(()=>{n.value.removeObserver(t)});const n=y(()=>{const s=e.layout;if(!s)throw new Error("Can not find table layout.");return s}),l=s=>{var r;const i=((r=e.vnode.el)==null?void 0:r.querySelectorAll("colgroup > col"))||[];if(!i.length)return;const u=s.getFlattenColumns(),c={};u.forEach(d=>{c[d.id]=d});for(let d=0,f=i.length;d{var r,i;const u=((r=e.vnode.el)==null?void 0:r.querySelectorAll("colgroup > col[name=gutter]"))||[];for(let d=0,f=u.length;d{p.stopPropagation()},s=(p,g)=>{!g.filters&&g.sortable?h(p,g,!1):g.filterable&&!g.sortable&&a(p),l==null||l.emit("header-click",g,p)},r=(p,g)=>{l==null||l.emit("header-contextmenu",g,p)},i=I(null),u=I(!1),c=I(),d=(p,g)=>{var b,E;if(bt&&!(g.children&&g.children.length>0)&&i.value&&e.border){u.value=!0;const C=l;t("set-drag-visible",!0);const w=C==null?void 0:C.vnode.el,k=w==null?void 0:w.getBoundingClientRect().left,S=(E=(b=n==null?void 0:n.vnode)==null?void 0:b.el)==null?void 0:E.querySelector(`th.${g.id}`),$=S.getBoundingClientRect(),M=$.left-k+30;Fn(S,"noclick"),c.value={startMouseLeft:p.clientX,startLeft:$.right-k,startColumnLeft:$.left-k,tableLeft:k};const R=C==null?void 0:C.refs.resizeProxy;R.style.left=`${c.value.startLeft}px`,document.onselectstart=function(){return!1},document.ondragstart=function(){return!1};const N=P=>{const W=P.clientX-c.value.startMouseLeft,K=c.value.startLeft+W;R.style.left=`${Math.max(M,K)}px`},O=()=>{if(u.value){const{startColumnLeft:P,startLeft:W}=c.value,D=Number.parseInt(R.style.left,10)-P;g.width=g.realWidth=D,C==null||C.emit("header-dragend",g.width,W-P,g,p),requestAnimationFrame(()=>{e.store.scheduleLayout(!1,!0)}),document.body.style.cursor="",u.value=!1,i.value=null,c.value=void 0,t("set-drag-visible",!1)}document.removeEventListener("mousemove",N),document.removeEventListener("mouseup",O),document.onselectstart=null,document.ondragstart=null,setTimeout(()=>{yn(S,"noclick")},0)};document.addEventListener("mousemove",N),document.addEventListener("mouseup",O)}},f=(p,g)=>{var b;if(g.children&&g.children.length>0)return;const E=p.target;if(!_n(E))return;const C=E==null?void 0:E.closest("th");if(!(!g||!g.resizable||!C)&&!u.value&&e.border){const w=C.getBoundingClientRect(),k=document.body.style,S=((b=C.parentNode)==null?void 0:b.lastElementChild)===C,$=e.allowDragLastColumn||!S;w.width>12&&w.right-p.clientX<8&&$?(k.cursor="col-resize",Nn(C,"is-sortable")&&(C.style.cursor="col-resize"),i.value=g):u.value||(k.cursor="",Nn(C,"is-sortable")&&(C.style.cursor="pointer"),i.value=null)}},m=()=>{bt&&(document.body.style.cursor="")},v=({order:p,sortOrders:g})=>{if(p==="")return g[0];const b=g.indexOf(p||null);return g[b>g.length-2?0:b+1]},h=(p,g,b)=>{var E;p.stopPropagation();const C=g.order===b?null:b||v(g),w=(E=p.target)==null?void 0:E.closest("th");if(w&&Nn(w,"noclick")){yn(w,"noclick");return}if(!g.sortable)return;const k=p.currentTarget;if(["ascending","descending"].some(N=>Nn(k,N)&&!g.sortOrders.includes(N)))return;const S=e.store.states;let $=S.sortProp.value,M;const R=S.sortingColumn.value;(R!==g||R===g&&ca(R.order))&&(R&&(R.order=null),S.sortingColumn.value=g,$=g.property),C?M=g.order=C:M=g.order=null,S.sortProp.value=$,S.sortOrder.value=M,l==null||l.store.commit("changeSortCondition")};return{handleHeaderClick:s,handleHeaderContextMenu:r,handleMouseDown:d,handleMouseMove:f,handleMouseOut:m,handleSortClick:h,handleFilterClick:a}}function i$(e){const t=we(Yn),n=ue("table");return{getHeaderRowStyle:i=>{const u=t==null?void 0:t.props.headerRowStyle;return Qe(u)?u.call(null,{rowIndex:i}):u},getHeaderRowClass:i=>{const u=[],c=t==null?void 0:t.props.headerRowClassName;return Ve(c)?u.push(c):Qe(c)&&u.push(c.call(null,{rowIndex:i})),u.join(" ")},getHeaderCellStyle:(i,u,c,d)=>{var f;let m=(f=t==null?void 0:t.props.headerCellStyle)!=null?f:{};Qe(m)&&(m=m.call(null,{rowIndex:i,columnIndex:u,row:c,column:d}));const v=Pi(u,d.fixed,e.store,c);return $o(v,"left"),$o(v,"right"),Object.assign({},m,v)},getHeaderCellClass:(i,u,c,d)=>{const f=Ri(n.b(),u,d.fixed,e.store,c),m=[d.id,d.order,d.headerAlign,d.className,d.labelClassName,...f];d.children||m.push("is-leaf"),d.sortable&&m.push("is-sortable");const v=t==null?void 0:t.props.headerCellClassName;return Ve(v)?m.push(v):Qe(v)&&m.push(v.call(null,{rowIndex:i,columnIndex:u,row:c,column:d})),m.push(n.e("cell")),m.filter(h=>!!h).join(" ")}}}const Cv=e=>{const t=[];return e.forEach(n=>{n.children?(t.push(n),t.push.apply(t,Cv(n.children))):t.push(n)}),t},wv=e=>{let t=1;const n=(s,r)=>{if(r&&(s.level=r.level+1,t{n(u,s),i+=u.colSpan}),s.colSpan=i}else s.colSpan=1};e.forEach(s=>{s.level=1,n(s,void 0)});const l=[];for(let s=0;s{s.children?(s.rowSpan=1,s.children.forEach(r=>r.isSubColumn=!0)):s.rowSpan=t-s.level+1,l[s.level-1].push(s)}),l};function u$(e){const t=we(Yn),n=y(()=>wv(e.store.states.originColumns.value));return{isGroup:y(()=>{const s=n.value.length>1;return s&&t&&(t.state.isGroup.value=!0),s}),toggleAllSelection:s=>{s.stopPropagation(),t==null||t.store.commit("toggleAllSelection")},columnRows:n}}var c$=x({name:"ElTableHeader",components:{ElCheckbox:Hn},props:{fixed:{type:String,default:""},store:{required:!0,type:Object},border:Boolean,defaultSort:{type:Object,default:()=>({prop:"",order:""})},appendFilterPanelTo:{type:String},allowDragLastColumn:{type:Boolean}},setup(e,{emit:t}){const n=lt(),l=we(Yn),a=ue("table"),s=I({}),{onColumnsChange:r,onScrollableChange:i}=Li(l),u=(l==null?void 0:l.props.tableLayout)==="auto",c=kt(new Map),d=I(),f=()=>{setTimeout(()=>{c.size>0&&(c.forEach((N,O)=>{const P=d.value.querySelector(`.${O.replace(/\s/g,".")}`);if(P){const W=P.getBoundingClientRect().width;N.width=W}}),c.clear())})};ie(c,f),Xe(async()=>{await Ee(),await Ee();const{prop:N,order:O}=e.defaultSort;l==null||l.store.commit("sort",{prop:N,order:O,init:!0}),f()});const{handleHeaderClick:m,handleHeaderContextMenu:v,handleMouseDown:h,handleMouseMove:p,handleMouseOut:g,handleSortClick:b,handleFilterClick:E}=r$(e,t),{getHeaderRowStyle:C,getHeaderRowClass:w,getHeaderCellStyle:k,getHeaderCellClass:S}=i$(e),{isGroup:$,toggleAllSelection:M,columnRows:R}=u$(e);return n.state={onColumnsChange:r,onScrollableChange:i},n.filterPanels=s,{ns:a,filterPanels:s,onColumnsChange:r,onScrollableChange:i,columnRows:R,getHeaderRowClass:w,getHeaderRowStyle:C,getHeaderCellClass:S,getHeaderCellStyle:k,handleHeaderClick:m,handleHeaderContextMenu:v,handleMouseDown:h,handleMouseMove:p,handleMouseOut:g,handleSortClick:b,handleFilterClick:E,isGroup:$,toggleAllSelection:M,saveIndexSelection:c,isTableLayoutAuto:u,theadRef:d,updateFixedColumnStyle:f}},render(){const{ns:e,isGroup:t,columnRows:n,getHeaderCellStyle:l,getHeaderCellClass:a,getHeaderRowClass:s,getHeaderRowStyle:r,handleHeaderClick:i,handleHeaderContextMenu:u,handleMouseDown:c,handleMouseMove:d,handleSortClick:f,handleMouseOut:m,store:v,$parent:h,saveIndexSelection:p,isTableLayoutAuto:g}=this;let b=1;return Re("thead",{ref:"theadRef",class:{[e.is("group")]:t}},n.map((E,C)=>Re("tr",{class:s(C),key:C,style:r(C)},E.map((w,k)=>{w.rowSpan>b&&(b=w.rowSpan);const S=a(C,k,E,w);return g&&w.fixed&&p.set(S,w),Re("th",{class:S,colspan:w.colSpan,key:`${w.id}-thead`,rowspan:w.rowSpan,style:l(C,k,E,w),onClick:$=>{var M;(M=$.currentTarget)!=null&&M.classList.contains("noclick")||i($,w)},onContextmenu:$=>u($,w),onMousedown:$=>c($,w),onMousemove:$=>d($,w),onMouseout:m},[Re("div",{class:["cell",w.filteredValue&&w.filteredValue.length>0?"highlight":""]},[w.renderHeader?w.renderHeader({column:w,$index:k,store:v,_self:h}):w.label,w.sortable&&Re("span",{onClick:$=>f($,w),class:"caret-wrapper"},[Re("i",{onClick:$=>f($,w,"ascending"),class:"sort-caret ascending"}),Re("i",{onClick:$=>f($,w,"descending"),class:"sort-caret descending"})]),w.filterable&&Re(s$,{store:v,placement:w.filterPlacement||"bottom-start",appendTo:h==null?void 0:h.appendFilterPanelTo,column:w,upDataColumn:($,M)=>{w[$]=M}},{"filter-icon":()=>w.renderFilterIcon?w.renderFilterIcon({filterOpened:w.filterOpened}):null})])])}))))}});function Gs(e,t,n=.03){return e-t>n}function d$(e){const t=we(Yn),n=I(""),l=I(Re("div")),a=(h,p,g)=>{var b,E,C;const w=t,k=qs(h);let S=null;const $=(b=w==null?void 0:w.vnode.el)==null?void 0:b.dataset.prefix;k&&(S=nc({columns:(C=(E=e.store)==null?void 0:E.states.columns.value)!=null?C:[]},k,$),S&&(w==null||w.emit(`cell-${g}`,p,S,k,h))),w==null||w.emit(`row-${g}`,p,S,h)},s=(h,p)=>{a(h,p,"dblclick")},r=(h,p)=>{var g;(g=e.store)==null||g.commit("setCurrentRow",p),a(h,p,"click")},i=(h,p)=>{a(h,p,"contextmenu")},u=Ln(h=>{var p;(p=e.store)==null||p.commit("setHoverRow",h)},30),c=Ln(()=>{var h;(h=e.store)==null||h.commit("setHoverRow",null)},30),d=h=>{const p=window.getComputedStyle(h,null),g=Number.parseInt(p.paddingLeft,10)||0,b=Number.parseInt(p.paddingRight,10)||0,E=Number.parseInt(p.paddingTop,10)||0,C=Number.parseInt(p.paddingBottom,10)||0;return{left:g,right:b,top:E,bottom:C}},f=(h,p,g)=>{var b;let E=(b=p==null?void 0:p.target)==null?void 0:b.parentNode;for(;h>1&&(E=E==null?void 0:E.nextSibling,!(!E||E.nodeName!=="TR"));)g(E,"hover-row hover-fixed-row"),h--};return{handleDoubleClick:s,handleClick:r,handleContextMenu:i,handleMouseEnter:u,handleMouseLeave:c,handleCellMouseEnter:(h,p,g)=>{var b,E,C,w,k,S;if(!t)return;const $=t,M=qs(h),R=(b=$==null?void 0:$.vnode.el)==null?void 0:b.dataset.prefix;let N=null;if(M){if(N=nc({columns:(C=(E=e.store)==null?void 0:E.states.columns.value)!=null?C:[]},M,R),!N)return;M.rowSpan>1&&f(M.rowSpan,h,Fn);const Z=$.hoverState={cell:M,column:N,row:p};$==null||$.emit("cell-mouse-enter",Z.row,Z.column,Z.cell,h)}if(!g)return;const O=h.target.querySelector(".cell");if(!(Nn(O,`${R}-tooltip`)&&O.childNodes.length))return;const P=document.createRange();P.setStart(O,0),P.setEnd(O,O.childNodes.length);const{width:W,height:K}=P.getBoundingClientRect(),{width:D,height:L}=O.getBoundingClientRect(),{top:z,left:B,right:A,bottom:ne}=d(O),j=B+A,Q=z+ne;Gs(W+j,D)||Gs(K+Q,L)||Gs(O.scrollWidth,D)?YT(g,(w=(M==null?void 0:M.innerText)||(M==null?void 0:M.textContent))!=null?w:"",p,N,M,$):((k=$n)==null?void 0:k.trigger)===M&&((S=$n)==null||S())},handleCellMouseLeave:h=>{const p=qs(h);if(!p)return;p.rowSpan>1&&f(p.rowSpan,h,yn);const g=t==null?void 0:t.hoverState;t==null||t.emit("cell-mouse-leave",g==null?void 0:g.row,g==null?void 0:g.column,g==null?void 0:g.cell,h)},tooltipContent:n,tooltipTrigger:l}}function f$(e){const t=we(Yn),n=ue("table");return{getRowStyle:(c,d)=>{const f=t==null?void 0:t.props.rowStyle;return Qe(f)?f.call(null,{row:c,rowIndex:d}):f||null},getRowClass:(c,d)=>{var f;const m=[n.e("row")];t!=null&&t.props.highlightCurrentRow&&c===((f=e.store)==null?void 0:f.states.currentRow.value)&&m.push("current-row"),e.stripe&&d%2===1&&m.push(n.em("row","striped"));const v=t==null?void 0:t.props.rowClassName;return Ve(v)?m.push(v):Qe(v)&&m.push(v.call(null,{row:c,rowIndex:d})),m},getCellStyle:(c,d,f,m)=>{const v=t==null?void 0:t.props.cellStyle;let h=v??{};Qe(v)&&(h=v.call(null,{rowIndex:c,columnIndex:d,row:f,column:m}));const p=Pi(d,e==null?void 0:e.fixed,e.store);return $o(p,"left"),$o(p,"right"),Object.assign({},h,p)},getCellClass:(c,d,f,m,v)=>{const h=Ri(n.b(),d,e==null?void 0:e.fixed,e.store,void 0,v),p=[m.id,m.align,m.className,...h],g=t==null?void 0:t.props.cellClassName;return Ve(g)?p.push(g):Qe(g)&&p.push(g.call(null,{rowIndex:c,columnIndex:d,row:f,column:m})),p.push(n.e("cell")),p.filter(b=>!!b).join(" ")},getSpan:(c,d,f,m)=>{let v=1,h=1;const p=t==null?void 0:t.props.spanMethod;if(Qe(p)){const g=p({row:c,column:d,rowIndex:f,columnIndex:m});ke(g)?(v=g[0],h=g[1]):yt(g)&&(v=g.rowspan,h=g.colspan)}return{rowspan:v,colspan:h}},getColspanRealWidth:(c,d,f)=>{if(d<1)return c[f].realWidth;const m=c.map(({realWidth:v,width:h})=>v||h).slice(f,f+d);return Number(m.reduce((v,h)=>Number(v)+Number(h),-1))}}}const v$=x({name:"TableTdWrapper"}),p$=x({...v$,props:{colspan:{type:Number,default:1},rowspan:{type:Number,default:1}},setup(e){return(t,n)=>(_(),V("td",{colspan:e.colspan,rowspan:e.rowspan},[G(t.$slots,"default")],8,["colspan","rowspan"]))}});var h$=fe(p$,[["__file","td-wrapper.vue"]]);function m$(e){const t=we(Yn),n=ue("table"),{handleDoubleClick:l,handleClick:a,handleContextMenu:s,handleMouseEnter:r,handleMouseLeave:i,handleCellMouseEnter:u,handleCellMouseLeave:c,tooltipContent:d,tooltipTrigger:f}=d$(e),{getRowStyle:m,getRowClass:v,getCellStyle:h,getCellClass:p,getSpan:g,getColspanRealWidth:b}=f$(e),E=y(()=>{var $;return($=e.store)==null?void 0:$.states.columns.value.findIndex(({type:M})=>M==="default")}),C=($,M)=>{var R;const N=(R=t==null?void 0:t.props)==null?void 0:R.rowKey;return N?mn($,N):M},w=($,M,R,N=!1)=>{const{tooltipEffect:O,tooltipOptions:P,store:W}=e,{indent:K,columns:D}=W.states,L=v($,M);let z=!0;return R&&(L.push(n.em("row",`level-${R.level}`)),z=!!R.display),Re("tr",{style:[z?null:{display:"none"},m($,M)],class:L,key:C($,M),onDblclick:A=>l(A,$),onClick:A=>a(A,$),onContextmenu:A=>s(A,$),onMouseenter:()=>r(M),onMouseleave:i},D.value.map((A,ne)=>{const{rowspan:j,colspan:Q}=g($,A,M,ne);if(!j||!Q)return null;const Z=Object.assign({},A);Z.realWidth=b(D.value,Q,ne);const ee={store:W,_self:e.context||t,column:Z,row:$,$index:M,cellIndex:ne,expanded:N};ne===E.value&&R&&(ee.treeNode={indent:R.level&&R.level*K.value,level:R.level},_t(R.expanded)&&(ee.treeNode.expanded=R.expanded,"loading"in R&&(ee.treeNode.loading=R.loading),"noLazyChildren"in R&&(ee.treeNode.noLazyChildren=R.noLazyChildren)));const ae=`${C($,M)},${ne}`,re=Z.columnKey||Z.rawColumnKey||"",le=A.showOverflowTooltip&&Ac({effect:O},P,A.showOverflowTooltip);return Re(h$,{style:h(M,ne,$,A),class:p(M,ne,$,A,Q-1),key:`${re}${ae}`,rowspan:j,colspan:Q,onMouseenter:se=>u(se,$,le),onMouseleave:c},{default:()=>k(ne,A,ee)})}))},k=($,M,R)=>M.renderCell(R);return{wrappedRowRender:($,M)=>{const R=e.store,{isRowExpanded:N,assertRowKey:O}=R,{treeData:P,lazyTreeNodeMap:W,childrenColumnName:K,rowKey:D}=R.states,L=R.states.columns.value;if(L.some(({type:B})=>B==="expand")){const B=N($),A=w($,M,void 0,B),ne=t==null?void 0:t.renderExpanded;if(!ne)return console.error("[Element Error]renderExpanded is required."),A;const j=[[A]];return(t.props.preserveExpandedContent||B)&&j[0].push(Re("tr",{key:`expanded-row__${A.key}`,style:{display:B?"":"none"}},[Re("td",{colspan:L.length,class:`${n.e("cell")} ${n.e("expanded-cell")}`},[ne({row:$,$index:M,store:R,expanded:B})])])),j}else if(Object.keys(P.value).length){O();const B=mn($,D.value);let A=P.value[B],ne=null;A&&(ne={expanded:A.expanded,level:A.level,display:!0,noLazyChildren:void 0,loading:void 0},_t(A.lazy)&&(ne&&_t(A.loaded)&&A.loaded&&(ne.noLazyChildren=!(A.children&&A.children.length)),ne.loading=A.loading));const j=[w($,M,ne??void 0)];if(A){let Q=0;const Z=(ae,re)=>{ae&&ae.length&&re&&ae.forEach(le=>{const se={display:re.display&&re.expanded,level:re.level+1,expanded:!1,noLazyChildren:!1,loading:!1},ge=mn(le,D.value);if(In(ge))throw new Error("For nested data item, row-key is required.");if(A={...P.value[ge]},A&&(se.expanded=A.expanded,A.level=A.level||se.level,A.display=!!(A.expanded&&se.display),_t(A.lazy)&&(_t(A.loaded)&&A.loaded&&(se.noLazyChildren=!(A.children&&A.children.length)),se.loading=A.loading)),Q++,j.push(w(le,M+Q,se)),A){const Be=W.value[ge]||le[K.value];Z(Be,A)}})};A.display=!0;const ee=W.value[B]||$[K.value];Z(ee,A)}return j}else return w($,M,void 0)},tooltipContent:d,tooltipTrigger:f}}const g$={store:{required:!0,type:Object},stripe:Boolean,tooltipEffect:String,tooltipOptions:{type:Object},context:{default:()=>({}),type:Object},rowClassName:[String,Function],rowStyle:[Object,Function],fixed:{type:String,default:""},highlight:Boolean};var b$=x({name:"ElTableBody",props:g$,setup(e){var t;const n=lt(),l=we(Yn),a=ue("table"),{wrappedRowRender:s,tooltipContent:r,tooltipTrigger:i}=m$(e),{onColumnsChange:u,onScrollableChange:c}=Li(l),d=[];return ie((t=e.store)==null?void 0:t.states.hoverRow,(f,m)=>{var v,h;const p=n==null?void 0:n.vnode.el,g=Array.from((p==null?void 0:p.children)||[]).filter(C=>C==null?void 0:C.classList.contains(`${a.e("row")}`));let b=f;const E=(v=g[b])==null?void 0:v.childNodes;if(E!=null&&E.length){let C=0;Array.from(E).reduce((k,S,$)=>{var M,R;return((M=E[$])==null?void 0:M.colSpan)>1&&(C=(R=E[$])==null?void 0:R.colSpan),S.nodeName!=="TD"&&C===0&&k.push($),C>0&&C--,k},[]).forEach(k=>{var S;for(b=f;b>0;){const $=(S=g[b-1])==null?void 0:S.childNodes;if($[k]&&$[k].nodeName==="TD"&&$[k].rowSpan>1){Fn($[k],"hover-cell"),d.push($[k]);break}b--}})}else d.forEach(C=>yn(C,"hover-cell")),d.length=0;!((h=e.store)!=null&&h.states.isComplex.value)||!bt||Ml(()=>{const C=g[m],w=g[f];C&&!C.classList.contains("hover-fixed-row")&&yn(C,"hover-row"),w&&Fn(w,"hover-row")})}),cs(()=>{var f;(f=$n)==null||f()}),{ns:a,onColumnsChange:u,onScrollableChange:c,wrappedRowRender:s,tooltipContent:r,tooltipTrigger:i}},render(){const{wrappedRowRender:e,store:t}=this,n=(t==null?void 0:t.states.data.value)||[];return Re("tbody",{tabIndex:-1},[n.reduce((l,a)=>l.concat(e(a,l.length)),[])])}});function y$(){const e=we(Yn),t=e==null?void 0:e.store,n=y(()=>{var i;return(i=t==null?void 0:t.states.fixedLeafColumnsLength.value)!=null?i:0}),l=y(()=>{var i;return(i=t==null?void 0:t.states.rightFixedColumns.value.length)!=null?i:0}),a=y(()=>{var i;return(i=t==null?void 0:t.states.columns.value.length)!=null?i:0}),s=y(()=>{var i;return(i=t==null?void 0:t.states.fixedColumns.value.length)!=null?i:0}),r=y(()=>{var i;return(i=t==null?void 0:t.states.rightFixedColumns.value.length)!=null?i:0});return{leftFixedLeafCount:n,rightFixedLeafCount:l,columnsCount:a,leftFixedCount:s,rightFixedCount:r,columns:y(()=>{var i;return(i=t==null?void 0:t.states.columns.value)!=null?i:[]})}}function C$(e){const{columns:t}=y$(),n=ue("table");return{getCellClasses:(s,r)=>{const i=s[r],u=[n.e("cell"),i.id,i.align,i.labelClassName,...Ri(n.b(),r,i.fixed,e.store)];return i.className&&u.push(i.className),i.children||u.push(n.is("leaf")),u},getCellStyles:(s,r)=>{const i=Pi(r,s.fixed,e.store);return $o(i,"left"),$o(i,"right"),i},columns:t}}var w$=x({name:"ElTableFooter",props:{fixed:{type:String,default:""},store:{required:!0,type:Object},summaryMethod:Function,sumText:String,border:Boolean,defaultSort:{type:Object,default:()=>({prop:"",order:""})}},setup(e){const t=we(Yn),n=ue("table"),{getCellClasses:l,getCellStyles:a,columns:s}=C$(e),{onScrollableChange:r,onColumnsChange:i}=Li(t);return{ns:n,onScrollableChange:r,onColumnsChange:i,getCellClasses:l,getCellStyles:a,columns:s}},render(){const{columns:e,getCellStyles:t,getCellClasses:n,summaryMethod:l,sumText:a}=this,s=this.store.states.data.value;let r=[];return l?r=l({columns:e,data:s}):e.forEach((i,u)=>{if(u===0){r[u]=a;return}const c=s.map(v=>Number(v[i.property])),d=[];let f=!0;c.forEach(v=>{if(!Number.isNaN(+v)){f=!1;const h=`${v}`.split(".")[1];d.push(h?h.length:0)}});const m=Math.max.apply(null,d);f?r[u]="":r[u]=c.reduce((v,h)=>{const p=Number(h);return Number.isNaN(+p)?v:Number.parseFloat((v+h).toFixed(Math.min(m,20)))},0)}),Re(Re("tfoot",[Re("tr",{},[...e.map((i,u)=>Re("td",{key:u,colspan:i.colSpan,rowspan:i.rowSpan,class:n(e,u),style:t(i,u)},[Re("div",{class:["cell",i.labelClassName]},[r[u]])]))])]))}});function k$(e){return{setCurrentRow:f=>{e.commit("setCurrentRow",f)},getSelectionRows:()=>e.getSelectionRows(),toggleRowSelection:(f,m,v=!0)=>{e.toggleRowSelection(f,m,!1,v),e.updateAllSelected()},clearSelection:()=>{e.clearSelection()},clearFilter:f=>{e.clearFilter(f)},toggleAllSelection:()=>{e.commit("toggleAllSelection")},toggleRowExpansion:(f,m)=>{e.toggleRowExpansionAdapter(f,m)},clearSort:()=>{e.clearSort()},sort:(f,m)=>{e.commit("sort",{prop:f,order:m})},updateKeyChildren:(f,m)=>{e.updateKeyChildren(f,m)}}}function S$(e,t,n,l){const a=I(!1),s=I(null),r=I(!1),i=z=>{r.value=z},u=I({width:null,height:null,headerHeight:null}),c=I(!1),d={display:"inline-block",verticalAlign:"middle"},f=I(),m=I(0),v=I(0),h=I(0),p=I(0),g=I(0);bn(()=>{var z;t.setHeight((z=e.height)!=null?z:null)}),bn(()=>{var z;t.setMaxHeight((z=e.maxHeight)!=null?z:null)}),ie(()=>[e.currentRowKey,n.states.rowKey],([z,B])=>{!o(B)||!o(z)||n.setCurrentRowKey(`${z}`)},{immediate:!0}),ie(()=>e.data,z=>{l.store.commit("setData",z)},{immediate:!0,deep:!0}),bn(()=>{e.expandRowKeys&&n.setExpandRowKeysAdapter(e.expandRowKeys)});const b=()=>{l.store.commit("setHoverRow",null),l.hoverState&&(l.hoverState=null)},E=(z,B)=>{const{pixelX:A,pixelY:ne}=B;Math.abs(A)>=Math.abs(ne)&&(l.refs.bodyWrapper.scrollLeft+=B.pixelX/5)},C=y(()=>e.height||e.maxHeight||n.states.fixedColumns.value.length>0||n.states.rightFixedColumns.value.length>0),w=y(()=>({width:t.bodyWidth.value?`${t.bodyWidth.value}px`:""})),k=()=>{C.value&&t.updateElsHeight(),t.updateColumnsWidth(),!(typeof window>"u")&&requestAnimationFrame(R)};Xe(async()=>{await Ee(),n.updateColumns(),N(),requestAnimationFrame(k);const z=l.vnode.el,B=l.refs.headerWrapper;e.flexible&&z&&z.parentElement&&(z.parentElement.style.minWidth="0"),u.value={width:f.value=z.offsetWidth,height:z.offsetHeight,headerHeight:e.showHeader&&B?B.offsetHeight:null},n.states.columns.value.forEach(A=>{A.filteredValue&&A.filteredValue.length&&l.store.commit("filterChange",{column:A,values:A.filteredValue,silent:!0})}),l.$ready=!0});const S=(z,B)=>{if(!z)return;const A=Array.from(z.classList).filter(ne=>!ne.startsWith("is-scrolling-"));A.push(t.scrollX.value?B:"is-scrolling-none"),z.className=A.join(" ")},$=z=>{const{tableWrapper:B}=l.refs;S(B,z)},M=z=>{const{tableWrapper:B}=l.refs;return!!(B&&B.classList.contains(z))},R=function(){if(!l.refs.scrollBarRef)return;if(!t.scrollX.value){const ee="is-scrolling-none";M(ee)||$(ee);return}const z=l.refs.scrollBarRef.wrapRef;if(!z)return;const{scrollLeft:B,offsetWidth:A,scrollWidth:ne}=z,{headerWrapper:j,footerWrapper:Q}=l.refs;j&&(j.scrollLeft=B),Q&&(Q.scrollLeft=B);const Z=ne-A-1;B>=Z?$("is-scrolling-right"):$(B===0?"is-scrolling-left":"is-scrolling-middle")},N=()=>{l.refs.scrollBarRef&&(l.refs.scrollBarRef.wrapRef&&xt(l.refs.scrollBarRef.wrapRef,"scroll",R,{passive:!0}),e.fit?Ft(l.vnode.el,O):xt(window,"resize",O),Ft(l.refs.bodyWrapper,()=>{var z,B;O(),(B=(z=l.refs)==null?void 0:z.scrollBarRef)==null||B.update()}))},O=()=>{var z,B,A,ne;const j=l.vnode.el;if(!l.$ready||!j)return;let Q=!1;const{width:Z,height:ee,headerHeight:ae}=u.value,re=f.value=j.offsetWidth;Z!==re&&(Q=!0);const le=j.offsetHeight;(e.height||C.value)&&ee!==le&&(Q=!0);const se=e.tableLayout==="fixed"?l.refs.headerWrapper:(z=l.refs.tableHeaderRef)==null?void 0:z.$el;e.showHeader&&(se==null?void 0:se.offsetHeight)!==ae&&(Q=!0),m.value=((B=l.refs.tableWrapper)==null?void 0:B.scrollHeight)||0,h.value=(se==null?void 0:se.scrollHeight)||0,p.value=((A=l.refs.footerWrapper)==null?void 0:A.offsetHeight)||0,g.value=((ne=l.refs.appendWrapper)==null?void 0:ne.offsetHeight)||0,v.value=m.value-h.value-p.value-g.value,Q&&(u.value={width:re,height:le,headerHeight:e.showHeader&&(se==null?void 0:se.offsetHeight)||0},k())},P=Gt(),W=y(()=>{const{bodyWidth:z,scrollY:B,gutterWidth:A}=t;return z.value?`${z.value-(B.value?A:0)}px`:""}),K=y(()=>e.maxHeight?"fixed":e.tableLayout),D=y(()=>{if(e.data&&e.data.length)return;let z="100%";e.height&&v.value&&(z=`${v.value}px`);const B=f.value;return{width:B?`${B}px`:"",height:z}}),L=y(()=>e.height?{height:"100%"}:e.maxHeight?Number.isNaN(Number(e.maxHeight))?{maxHeight:`calc(${e.maxHeight} - ${h.value+p.value}px)`}:{maxHeight:`${+e.maxHeight-h.value-p.value}px`}:{});return{isHidden:a,renderExpanded:s,setDragVisible:i,isGroup:c,handleMouseLeave:b,handleHeaderFooterMousewheel:E,tableSize:P,emptyBlockStyle:D,resizeProxyVisible:r,bodyWidth:W,resizeState:u,doLayout:k,tableBodyStyles:w,tableLayout:K,scrollbarViewStyle:d,scrollbarStyle:L}}function E$(e){const t=I(),n=()=>{const a=e.vnode.el.querySelector(".hidden-columns"),s={childList:!0,subtree:!0},r=e.store.states.updateOrderFns;t.value=new MutationObserver(()=>{r.forEach(i=>i())}),t.value.observe(a,s)};Xe(()=>{n()}),cs(()=>{var l;(l=t.value)==null||l.disconnect()})}var _$={data:{type:Array,default:()=>[]},size:Jt,width:[String,Number],height:[String,Number],maxHeight:[String,Number],fit:{type:Boolean,default:!0},stripe:Boolean,border:Boolean,rowKey:[String,Function],showHeader:{type:Boolean,default:!0},showSummary:Boolean,sumText:String,summaryMethod:Function,rowClassName:[String,Function],rowStyle:[Object,Function],cellClassName:[String,Function],cellStyle:[Object,Function],headerRowClassName:[String,Function],headerRowStyle:[Object,Function],headerCellClassName:[String,Function],headerCellStyle:[Object,Function],highlightCurrentRow:Boolean,currentRowKey:[String,Number],emptyText:String,expandRowKeys:Array,defaultExpandAll:Boolean,defaultSort:Object,tooltipEffect:String,tooltipOptions:Object,spanMethod:Function,selectOnIndeterminate:{type:Boolean,default:!0},indent:{type:Number,default:16},treeProps:{type:Object,default:()=>({hasChildren:"hasChildren",children:"children",checkStrictly:!1})},lazy:Boolean,load:Function,style:{type:Object,default:()=>({})},className:{type:String,default:""},tableLayout:{type:String,default:"fixed"},scrollbarAlwaysOn:Boolean,flexible:Boolean,showOverflowTooltip:[Boolean,Object],tooltipFormatter:Function,appendFilterPanelTo:String,scrollbarTabindex:{type:[Number,String],default:void 0},allowDragLastColumn:{type:Boolean,default:!0},preserveExpandedContent:Boolean};function kv(e){const t=e.tableLayout==="auto";let n=e.columns||[];t&&n.every(({width:a})=>vt(a))&&(n=[]);const l=a=>{const s={key:`${e.tableLayout}_${a.id}`,style:{},name:void 0};return t?s.style={width:`${a.width}px`}:s.name=a.id,s};return Re("colgroup",{},n.map(a=>Re("col",l(a))))}kv.props=["columns","tableLayout"];const T$=()=>{const e=I(),t=(s,r)=>{const i=e.value;i&&i.scrollTo(s,r)},n=(s,r)=>{const i=e.value;i&&Te(r)&&["Top","Left"].includes(s)&&i[`setScroll${s}`](r)};return{scrollBarRef:e,scrollTo:t,setScrollTop:s=>n("Top",s),setScrollLeft:s=>n("Left",s)}},$$=function(e,t){if(e&&e.addEventListener){const n=function(l){const a=ah(l);t&&Reflect.apply(t,this,[l,a])};e.addEventListener("wheel",n,{passive:!0})}},N$={beforeMount(e,t){$$(e,t.value)}};let I$=1;const M$=x({name:"ElTable",directives:{Mousewheel:N$},components:{TableHeader:c$,TableBody:b$,TableFooter:w$,ElScrollbar:jn,hColgroup:kv},props:_$,emits:["select","select-all","selection-change","cell-mouse-enter","cell-mouse-leave","cell-contextmenu","cell-click","cell-dblclick","row-click","row-contextmenu","row-dblclick","header-click","header-contextmenu","sort-change","filter-change","current-change","header-dragend","expand-change","scroll"],setup(e){const{t}=pt(),n=ue("table"),l=lt();rt(Yn,l);const a=e$(l,e);l.store=a;const s=new n$({store:l.store,table:l,fit:e.fit,showHeader:e.showHeader});l.layout=s;const r=y(()=>(a.states.data.value||[]).length===0),{setCurrentRow:i,getSelectionRows:u,toggleRowSelection:c,clearSelection:d,clearFilter:f,toggleAllSelection:m,toggleRowExpansion:v,clearSort:h,sort:p,updateKeyChildren:g}=k$(a),{isHidden:b,renderExpanded:E,setDragVisible:C,isGroup:w,handleMouseLeave:k,handleHeaderFooterMousewheel:S,tableSize:$,emptyBlockStyle:M,resizeProxyVisible:R,bodyWidth:N,resizeState:O,doLayout:P,tableBodyStyles:W,tableLayout:K,scrollbarViewStyle:D,scrollbarStyle:L}=S$(e,s,a,l),{scrollBarRef:z,scrollTo:B,setScrollLeft:A,setScrollTop:ne}=T$(),j=Ln(P,50),Q=`${n.namespace.value}-table_${I$++}`;l.tableId=Q,l.state={isGroup:w,resizeState:O,doLayout:P,debouncedUpdateLayout:j};const Z=y(()=>{var re;return(re=e.sumText)!=null?re:t("el.table.sumText")}),ee=y(()=>{var re;return(re=e.emptyText)!=null?re:t("el.table.emptyText")}),ae=y(()=>wv(a.states.originColumns.value)[0]);return E$(l),Nt(()=>{j.cancel()}),{ns:n,layout:s,store:a,columns:ae,handleHeaderFooterMousewheel:S,handleMouseLeave:k,tableId:Q,tableSize:$,isHidden:b,isEmpty:r,renderExpanded:E,resizeProxyVisible:R,resizeState:O,isGroup:w,bodyWidth:N,tableBodyStyles:W,emptyBlockStyle:M,debouncedUpdateLayout:j,setCurrentRow:i,getSelectionRows:u,toggleRowSelection:c,clearSelection:d,clearFilter:f,toggleAllSelection:m,toggleRowExpansion:v,clearSort:h,doLayout:P,sort:p,updateKeyChildren:g,t,setDragVisible:C,context:l,computedSumText:Z,computedEmptyText:ee,tableLayout:K,scrollbarViewStyle:D,scrollbarStyle:L,scrollBarRef:z,scrollTo:B,setScrollLeft:A,setScrollTop:ne,allowDragLastColumn:e.allowDragLastColumn}}});function R$(e,t,n,l,a,s){const r=ht("hColgroup"),i=ht("table-header"),u=ht("table-body"),c=ht("table-footer"),d=ht("el-scrollbar"),f=fs("mousewheel");return _(),V("div",{ref:"tableWrapper",class:T([{[e.ns.m("fit")]:e.fit,[e.ns.m("striped")]:e.stripe,[e.ns.m("border")]:e.border||e.isGroup,[e.ns.m("hidden")]:e.isHidden,[e.ns.m("group")]:e.isGroup,[e.ns.m("fluid-height")]:e.maxHeight,[e.ns.m("scrollable-x")]:e.layout.scrollX.value,[e.ns.m("scrollable-y")]:e.layout.scrollY.value,[e.ns.m("enable-row-hover")]:!e.store.states.isComplex.value,[e.ns.m("enable-row-transition")]:(e.store.states.data.value||[]).length!==0&&(e.store.states.data.value||[]).length<100,"has-footer":e.showSummary},e.ns.m(e.tableSize),e.className,e.ns.b(),e.ns.m(`layout-${e.tableLayout}`)]),style:_e(e.style),"data-prefix":e.ns.namespace.value,onMouseleave:e.handleMouseLeave},[F("div",{class:T(e.ns.e("inner-wrapper"))},[F("div",{ref:"hiddenColumns",class:"hidden-columns"},[G(e.$slots,"default")],512),e.showHeader&&e.tableLayout==="fixed"?We((_(),V("div",{key:0,ref:"headerWrapper",class:T(e.ns.e("header-wrapper"))},[F("table",{ref:"tableHeader",class:T(e.ns.e("header")),style:_e(e.tableBodyStyles),border:"0",cellpadding:"0",cellspacing:"0"},[H(r,{columns:e.store.states.columns.value,"table-layout":e.tableLayout},null,8,["columns","table-layout"]),H(i,{ref:"tableHeaderRef",border:e.border,"default-sort":e.defaultSort,store:e.store,"append-filter-panel-to":e.appendFilterPanelTo,"allow-drag-last-column":e.allowDragLastColumn,onSetDragVisible:e.setDragVisible},null,8,["border","default-sort","store","append-filter-panel-to","allow-drag-last-column","onSetDragVisible"])],6)],2)),[[f,e.handleHeaderFooterMousewheel]]):J("v-if",!0),F("div",{ref:"bodyWrapper",class:T(e.ns.e("body-wrapper"))},[H(d,{ref:"scrollBarRef","view-style":e.scrollbarViewStyle,"wrap-style":e.scrollbarStyle,always:e.scrollbarAlwaysOn,tabindex:e.scrollbarTabindex,onScroll:m=>e.$emit("scroll",m)},{default:U(()=>[F("table",{ref:"tableBody",class:T(e.ns.e("body")),cellspacing:"0",cellpadding:"0",border:"0",style:_e({width:e.bodyWidth,tableLayout:e.tableLayout})},[H(r,{columns:e.store.states.columns.value,"table-layout":e.tableLayout},null,8,["columns","table-layout"]),e.showHeader&&e.tableLayout==="auto"?(_(),oe(i,{key:0,ref:"tableHeaderRef",class:T(e.ns.e("body-header")),border:e.border,"default-sort":e.defaultSort,store:e.store,"append-filter-panel-to":e.appendFilterPanelTo,onSetDragVisible:e.setDragVisible},null,8,["class","border","default-sort","store","append-filter-panel-to","onSetDragVisible"])):J("v-if",!0),H(u,{context:e.context,highlight:e.highlightCurrentRow,"row-class-name":e.rowClassName,"tooltip-effect":e.tooltipEffect,"tooltip-options":e.tooltipOptions,"row-style":e.rowStyle,store:e.store,stripe:e.stripe},null,8,["context","highlight","row-class-name","tooltip-effect","tooltip-options","row-style","store","stripe"]),e.showSummary&&e.tableLayout==="auto"?(_(),oe(c,{key:1,class:T(e.ns.e("body-footer")),border:e.border,"default-sort":e.defaultSort,store:e.store,"sum-text":e.computedSumText,"summary-method":e.summaryMethod},null,8,["class","border","default-sort","store","sum-text","summary-method"])):J("v-if",!0)],6),e.isEmpty?(_(),V("div",{key:0,ref:"emptyBlock",style:_e(e.emptyBlockStyle),class:T(e.ns.e("empty-block"))},[F("span",{class:T(e.ns.e("empty-text"))},[G(e.$slots,"empty",{},()=>[st(pe(e.computedEmptyText),1)])],2)],6)):J("v-if",!0),e.$slots.append?(_(),V("div",{key:1,ref:"appendWrapper",class:T(e.ns.e("append-wrapper"))},[G(e.$slots,"append")],2)):J("v-if",!0)]),_:3},8,["view-style","wrap-style","always","tabindex","onScroll"])],2),e.showSummary&&e.tableLayout==="fixed"?We((_(),V("div",{key:1,ref:"footerWrapper",class:T(e.ns.e("footer-wrapper"))},[F("table",{class:T(e.ns.e("footer")),cellspacing:"0",cellpadding:"0",border:"0",style:_e(e.tableBodyStyles)},[H(r,{columns:e.store.states.columns.value,"table-layout":e.tableLayout},null,8,["columns","table-layout"]),H(c,{border:e.border,"default-sort":e.defaultSort,store:e.store,"sum-text":e.computedSumText,"summary-method":e.summaryMethod},null,8,["border","default-sort","store","sum-text","summary-method"])],6)],2)),[[mt,!e.isEmpty],[f,e.handleHeaderFooterMousewheel]]):J("v-if",!0),e.border||e.isGroup?(_(),V("div",{key:2,class:T(e.ns.e("border-left-patch"))},null,2)):J("v-if",!0)],2),We(F("div",{ref:"resizeProxy",class:T(e.ns.e("column-resize-proxy"))},null,2),[[mt,e.resizeProxyVisible]])],46,["data-prefix","onMouseleave"])}var P$=fe(M$,[["render",R$],["__file","table.vue"]]);const O$={selection:"table-column--selection",expand:"table__expand-column"},L$={default:{order:""},selection:{width:48,minWidth:48,realWidth:48,order:""},expand:{width:48,minWidth:48,realWidth:48,order:""},index:{width:48,minWidth:48,realWidth:48,order:""}},B$=e=>O$[e]||"",V$={selection:{renderHeader({store:e,column:t}){var n;function l(){return e.states.data.value&&e.states.data.value.length===0}return Re(Hn,{disabled:l(),size:e.states.tableSize.value,indeterminate:e.states.selection.value.length>0&&!e.states.isAllSelected.value,"onUpdate:modelValue":(n=e.toggleAllSelection)!=null?n:void 0,modelValue:e.states.isAllSelected.value,ariaLabel:t.label})},renderCell({row:e,column:t,store:n,$index:l}){return Re(Hn,{disabled:t.selectable?!t.selectable.call(null,e,l):!1,size:n.states.tableSize.value,onChange:()=>{n.commit("rowSelectedChanged",e)},onClick:a=>a.stopPropagation(),modelValue:n.isSelected(e),ariaLabel:t.label})},sortable:!1,resizable:!1},index:{renderHeader({column:e}){return e.label||"#"},renderCell({column:e,$index:t}){let n=t+1;const l=e.index;return Te(l)?n=t+l:Qe(l)&&(n=l(t)),Re("div",{},[n])},sortable:!1},expand:{renderHeader({column:e}){return e.label||""},renderCell({column:e,row:t,store:n,expanded:l}){const{ns:a}=n,s=[a.e("expand-icon")];return!e.renderExpand&&l&&s.push(a.em("expand-icon","expanded")),Re("div",{class:s,onClick:function(i){i.stopPropagation(),n.toggleRowExpansion(t)}},{default:()=>e.renderExpand?[e.renderExpand({expanded:l})]:[Re(Se,null,{default:()=>[Re(Cn)]})]})},sortable:!1,resizable:!1}};function D$({row:e,column:t,$index:n}){var l;const a=t.property,s=a&&Wo(e,a).value;return t&&t.formatter?t.formatter(e,t,s,n):((l=s==null?void 0:s.toString)==null?void 0:l.call(s))||""}function A$({row:e,treeNode:t,store:n},l=!1){const{ns:a}=n;if(!t)return l?[Re("span",{class:a.e("placeholder")})]:null;const s=[],r=function(i){i.stopPropagation(),!t.loading&&n.loadOrToggle(e)};if(t.indent&&s.push(Re("span",{class:a.e("indent"),style:{"padding-left":`${t.indent}px`}})),_t(t.expanded)&&!t.noLazyChildren){const i=[a.e("expand-icon"),t.expanded?a.em("expand-icon","expanded"):""];let u=Cn;t.loading&&(u=Qn),s.push(Re("div",{class:i,onClick:r},{default:()=>[Re(Se,{class:{[a.is("loading")]:t.loading}},{default:()=>[Re(u)]})]}))}else s.push(Re("span",{class:a.e("placeholder")}));return s}function ac(e,t){return e.reduce((n,l)=>(n[l]=l,n),t)}function F$(e,t){const n=lt();return{registerComplexWatchers:()=>{const s=["fixed"],r={realWidth:"width",realMinWidth:"minWidth"},i=ac(s,r);Object.keys(i).forEach(u=>{const c=r[u];rn(t,c)&&ie(()=>t[c],d=>{let f=d;c==="width"&&u==="realWidth"&&(f=Mi(d)),c==="minWidth"&&u==="realMinWidth"&&(f=hv(d)),n.columnConfig.value[c]=f,n.columnConfig.value[u]=f;const m=c==="fixed";e.value.store.scheduleLayout(m)})})},registerNormalWatchers:()=>{const s=["label","filters","filterMultiple","filteredValue","sortable","index","formatter","className","labelClassName","filterClassName","showOverflowTooltip","tooltipFormatter"],r={property:"prop",align:"realAlign",headerAlign:"realHeaderAlign"},i=ac(s,r);Object.keys(i).forEach(u=>{const c=r[u];rn(t,c)&&ie(()=>t[c],d=>{n.columnConfig.value[u]=d})})}}}function x$(e,t,n){const l=lt(),a=I(""),s=I(!1),r=I(),i=I(),u=ue("table");bn(()=>{r.value=e.align?`is-${e.align}`:null,r.value}),bn(()=>{i.value=e.headerAlign?`is-${e.headerAlign}`:r.value,i.value});const c=y(()=>{let w=l.vnode.vParent||l.parent;for(;w&&!w.tableId&&!w.columnId;)w=w.vnode.vParent||w.parent;return w}),d=y(()=>{const{store:w}=l.parent;if(!w)return!1;const{treeData:k}=w.states,S=k.value;return S&&Object.keys(S).length>0}),f=I(Mi(e.width)),m=I(hv(e.minWidth)),v=w=>(f.value&&(w.width=f.value),m.value&&(w.minWidth=m.value),!f.value&&m.value&&(w.width=void 0),w.minWidth||(w.minWidth=80),w.realWidth=Number(vt(w.width)?w.minWidth:w.width),w),h=w=>{const k=w.type,S=V$[k]||{};Object.keys(S).forEach(M=>{const R=S[M];M!=="className"&&!vt(R)&&(w[M]=R)});const $=B$(k);if($){const M=`${o(u.namespace)}-${$}`;w.className=w.className?`${w.className} ${M}`:M}return w},p=w=>{ke(w)?w.forEach(S=>k(S)):k(w);function k(S){var $;(($=S==null?void 0:S.type)==null?void 0:$.name)==="ElTableColumn"&&(S.vParent=l)}};return{columnId:a,realAlign:r,isSubColumn:s,realHeaderAlign:i,columnOrTableParent:c,setColumnWidth:v,setColumnForcedProps:h,setColumnRenders:w=>{e.renderHeader||w.type!=="selection"&&(w.renderHeader=S=>(l.columnConfig.value.label,G(t,"header",S,()=>[w.label]))),t["filter-icon"]&&(w.renderFilterIcon=S=>G(t,"filter-icon",S)),t.expand&&(w.renderExpand=S=>G(t,"expand",S));let k=w.renderCell;return w.type==="expand"?(w.renderCell=S=>Re("div",{class:"cell"},[k(S)]),n.value.renderExpanded=S=>t.default?t.default(S):t.default):(k=k||D$,w.renderCell=S=>{let $=null;if(t.default){const W=t.default(S);$=W.some(K=>K.type!==jl)?W:k(S)}else $=k(S);const{columns:M}=n.value.store.states,R=M.value.findIndex(W=>W.type==="default"),N=d.value&&S.cellIndex===R,O=A$(S,N),P={class:"cell",style:{}};return w.showOverflowTooltip&&(P.class=`${P.class} ${o(u.namespace)}-tooltip`,P.style={width:`${(S.column.realWidth||Number(S.column.width))-1}px`}),p($),Re("div",P,[O,$])}),w},getPropsData:(...w)=>w.reduce((k,S)=>(ke(S)&&S.forEach($=>{k[$]=e[$]}),k),{}),getColumnElIndex:(w,k)=>Array.prototype.indexOf.call(w,k),updateColumnOrder:()=>{n.value.store.commit("updateColumnOrder",l.columnConfig.value)}}}var z$={type:{type:String,default:"default"},label:String,className:String,labelClassName:String,property:String,prop:String,width:{type:[String,Number],default:""},minWidth:{type:[String,Number],default:""},renderHeader:Function,sortable:{type:[Boolean,String],default:!1},sortMethod:Function,sortBy:[String,Function,Array],resizable:{type:Boolean,default:!0},columnKey:String,align:String,headerAlign:String,showOverflowTooltip:{type:[Boolean,Object],default:void 0},tooltipFormatter:Function,fixed:[Boolean,String],formatter:Function,selectable:Function,reserveSelection:Boolean,filterMethod:Function,filteredValue:Array,filters:Array,filterPlacement:String,filterMultiple:{type:Boolean,default:!0},filterClassName:String,index:[Number,Function],sortOrders:{type:Array,default:()=>["ascending","descending",null],validator:e=>e.every(t=>["ascending","descending",null].includes(t))}};let H$=1;var Sv=x({name:"ElTableColumn",components:{ElCheckbox:Hn},props:z$,setup(e,{slots:t}){const n=lt(),l=I({}),a=y(()=>{let C=n.parent;for(;C&&!C.tableId;)C=C.parent;return C}),{registerNormalWatchers:s,registerComplexWatchers:r}=F$(a,e),{columnId:i,isSubColumn:u,realHeaderAlign:c,columnOrTableParent:d,setColumnWidth:f,setColumnForcedProps:m,setColumnRenders:v,getPropsData:h,getColumnElIndex:p,realAlign:g,updateColumnOrder:b}=x$(e,t,a),E=d.value;i.value=`${"tableId"in E&&E.tableId||"columnId"in E&&E.columnId}_column_${H$++}`,xr(()=>{u.value=a.value!==E;const C=e.type||"default",w=e.sortable===""?!0:e.sortable,k=C==="selection"?!1:vt(e.showOverflowTooltip)?E.props.showOverflowTooltip:e.showOverflowTooltip,S=vt(e.tooltipFormatter)?E.props.tooltipFormatter:e.tooltipFormatter,$={...L$[C],id:i.value,type:C,property:e.prop||e.property,align:g,headerAlign:c,showOverflowTooltip:k,tooltipFormatter:S,filterable:e.filters||e.filterMethod,filteredValue:[],filterPlacement:"",filterClassName:"",isColumnGroup:!1,isSubColumn:!1,filterOpened:!1,sortable:w,index:e.index,rawColumnKey:n.vnode.key};let P=h(["columnKey","label","className","labelClassName","type","renderHeader","formatter","fixed","resizable"],["sortMethod","sortBy","sortOrders"],["selectable","reserveSelection"],["filterMethod","filters","filterMultiple","filterOpened","filteredValue","filterPlacement","filterClassName"]);P=HT($,P),P=WT(v,f,m)(P),l.value=P,s(),r()}),Xe(()=>{var C,w;const k=d.value,S=u.value?(C=k.vnode.el)==null?void 0:C.children:(w=k.refs.hiddenColumns)==null?void 0:w.children,$=()=>p(S||[],n.vnode.el);l.value.getColumnIndex=$,$()>-1&&a.value.store.commit("insertColumn",l.value,u.value?"columnConfig"in k&&k.columnConfig.value:null,b)}),Nt(()=>{const C=l.value.getColumnIndex;(C?C():-1)>-1&&a.value.store.commit("removeColumn",l.value,u.value?"columnConfig"in E&&E.columnConfig.value:null,b)}),n.columnId=i.value,n.columnConfig=l},render(){var e,t,n;try{const l=(t=(e=this.$slots).default)==null?void 0:t.call(e,{row:{},column:{},$index:-1}),a=[];if(ke(l))for(const r of l)((n=r.type)==null?void 0:n.name)==="ElTableColumn"||r.shapeFlag&2?a.push(r):r.type===Oe&&ke(r.children)&&r.children.forEach(i=>{(i==null?void 0:i.patchFlag)!==1024&&!Ve(i==null?void 0:i.children)&&a.push(i)});return Re("div",a)}catch{return Re("div",[])}}});const K$=He(P$,{TableColumn:Sv}),W$=At(Sv);var aa=(e=>(e.ASC="asc",e.DESC="desc",e))(aa||{}),sa=(e=>(e.CENTER="center",e.RIGHT="right",e))(sa||{}),Ev=(e=>(e.LEFT="left",e.RIGHT="right",e))(Ev||{});const Tr={asc:"desc",desc:"asc"},ra=Symbol("placeholder"),j$=(e,t,n)=>{var l;const a={flexGrow:0,flexShrink:0,...n?{}:{flexGrow:e.flexGrow||0,flexShrink:e.flexShrink||1}};n||(a.flexShrink=1);const s={...(l=e.style)!=null?l:{},...a,flexBasis:"auto",width:e.width};return t||(e.maxWidth&&(s.maxWidth=e.maxWidth),e.minWidth&&(s.minWidth=e.minWidth)),s};function U$(e,t,n){const l=y(()=>o(t).map((g,b)=>{var E,C;return{...g,key:(C=(E=g.key)!=null?E:g.dataKey)!=null?C:b}})),a=y(()=>o(l).filter(g=>!g.hidden)),s=y(()=>o(a).filter(g=>g.fixed==="left"||g.fixed===!0)),r=y(()=>o(a).filter(g=>g.fixed==="right")),i=y(()=>o(a).filter(g=>!g.fixed)),u=y(()=>{const g=[];return o(s).forEach(b=>{g.push({...b,placeholderSign:ra})}),o(i).forEach(b=>{g.push(b)}),o(r).forEach(b=>{g.push({...b,placeholderSign:ra})}),g}),c=y(()=>o(s).length||o(r).length),d=y(()=>o(l).reduce((g,b)=>(g[b.key]=j$(b,o(n),e.fixed),g),{})),f=y(()=>o(a).reduce((g,b)=>g+b.width,0)),m=g=>o(l).find(b=>b.key===g),v=g=>o(d)[g],h=(g,b)=>{g.width=b};function p(g){var b;const{key:E}=g.currentTarget.dataset;if(!E)return;const{sortState:C,sortBy:w}=e;let k=aa.ASC;yt(C)?k=Tr[C[E]]:k=Tr[w.order],(b=e.onColumnSort)==null||b.call(e,{column:m(E),key:E,order:k})}return{columns:l,columnsStyles:d,columnsTotalWidth:f,fixedColumnsOnLeft:s,fixedColumnsOnRight:r,hasFixedColumns:c,mainColumns:u,normalColumns:i,visibleColumns:a,getColumn:m,getColumnStyle:v,updateColumnWidth:h,onColumnSorted:p}}const Y$=(e,{mainTableRef:t,leftTableRef:n,rightTableRef:l,onMaybeEndReached:a})=>{const s=I({scrollLeft:0,scrollTop:0});function r(v){var h,p,g;const{scrollTop:b}=v;(h=t.value)==null||h.scrollTo(v),(p=n.value)==null||p.scrollToTop(b),(g=l.value)==null||g.scrollToTop(b)}function i(v){s.value=v,r(v)}function u(v){s.value.scrollTop=v,r(o(s))}function c(v){var h,p;s.value.scrollLeft=v,(p=(h=t.value)==null?void 0:h.scrollTo)==null||p.call(h,o(s))}function d(v){var h;i(v),(h=e.onScroll)==null||h.call(e,v)}function f({scrollTop:v}){const{scrollTop:h}=o(s);v!==h&&u(v)}function m(v,h="auto"){var p;(p=t.value)==null||p.scrollToRow(v,h)}return ie(()=>o(s).scrollTop,(v,h)=>{v>h&&a()}),{scrollPos:s,scrollTo:i,scrollToLeft:c,scrollToTop:u,scrollToRow:m,onScroll:d,onVerticalScroll:f}},q$=(e,{mainTableRef:t,leftTableRef:n,rightTableRef:l,tableInstance:a,ns:s,isScrolling:r})=>{const i=lt(),{emit:u}=i,c=Lt(!1),d=I(e.defaultExpandedRowKeys||[]),f=I(-1),m=Lt(null),v=I({}),h=I({}),p=Lt({}),g=Lt({}),b=Lt({}),E=y(()=>Te(e.estimatedRowHeight));function C(N){var O;(O=e.onRowsRendered)==null||O.call(e,N),N.rowCacheEnd>o(f)&&(f.value=N.rowCacheEnd)}function w({hovered:N,rowKey:O}){if(r.value)return;a.vnode.el.querySelectorAll(`[rowkey="${String(O)}"]`).forEach(K=>{N?K.classList.add(s.is("hovered")):K.classList.remove(s.is("hovered"))})}function k({expanded:N,rowData:O,rowIndex:P,rowKey:W}){var K,D;const L=[...o(d)],z=L.indexOf(W);N?z===-1&&L.push(W):z>-1&&L.splice(z,1),d.value=L,u("update:expandedRowKeys",L),(K=e.onRowExpand)==null||K.call(e,{expanded:N,rowData:O,rowIndex:P,rowKey:W}),(D=e.onExpandedRowsChange)==null||D.call(e,L)}const S=Ln(()=>{var N,O,P,W;c.value=!0,v.value={...o(v),...o(h)},$(o(m),!1),h.value={},m.value=null,(N=t.value)==null||N.forceUpdate(),(O=n.value)==null||O.forceUpdate(),(P=l.value)==null||P.forceUpdate(),(W=i.proxy)==null||W.$forceUpdate(),c.value=!1},0);function $(N,O=!1){o(E)&&[t,n,l].forEach(P=>{const W=o(P);W&&W.resetAfterRowIndex(N,O)})}function M(N,O,P){const W=o(m);(W===null||W>P)&&(m.value=P),h.value[N]=O}function R({rowKey:N,height:O,rowIndex:P},W){W?W===Ev.RIGHT?b.value[N]=O:p.value[N]=O:g.value[N]=O;const K=Math.max(...[p,b,g].map(D=>D.value[N]||0));o(v)[N]!==K&&(M(N,K,P),S())}return{expandedRowKeys:d,lastRenderedRowIndex:f,isDynamic:E,isResetting:c,rowHeights:v,resetAfterIndex:$,onRowExpanded:k,onRowHovered:w,onRowsRendered:C,onRowHeightChange:R}},G$=(e,{expandedRowKeys:t,lastRenderedRowIndex:n,resetAfterIndex:l})=>{const a=I({}),s=y(()=>{const i={},{data:u,rowKey:c}=e,d=o(t);if(!d||!d.length)return u;const f=[],m=new Set;d.forEach(h=>m.add(h));let v=u.slice();for(v.forEach(h=>i[h[c]]=0);v.length>0;){const h=v.shift();f.push(h),m.has(h[c])&&ke(h.children)&&h.children.length>0&&(v=[...h.children,...v],h.children.forEach(p=>i[p[c]]=i[h[c]]+1))}return a.value=i,f}),r=y(()=>{const{data:i,expandColumnKey:u}=e;return u?o(s):i});return ie(r,(i,u)=>{i!==u&&(n.value=-1,l(0,!0))}),{data:r,depthMap:a}},X$=(e,t)=>e+t,Aa=e=>ke(e)?e.reduce(X$,0):e,Gl=(e,t,n={})=>Qe(e)?e(t):e??n,Tl=e=>(["width","maxWidth","minWidth","height"].forEach(t=>{e[t]=zt(e[t])}),e),_v=e=>Dt(e)?t=>Re(e,t):e,Z$=(e,{columnsTotalWidth:t,rowsHeight:n,fixedColumnsOnLeft:l,fixedColumnsOnRight:a})=>{const s=y(()=>{const{fixed:b,width:E,vScrollbarSize:C}=e,w=E-C;return b?Math.max(Math.round(o(t)),w):w}),r=y(()=>{const{height:b=0,maxHeight:E=0,footerHeight:C,hScrollbarSize:w}=e;if(E>0){const k=o(m),S=o(n),M=o(f)+k+S+w;return Math.min(M,E-C)}return b-C}),i=y(()=>{const{maxHeight:b}=e,E=o(r);if(Te(b)&&b>0)return E;const C=o(n)+o(f)+o(m);return Math.min(E,C)}),u=b=>b.width,c=y(()=>Aa(o(l).map(u))),d=y(()=>Aa(o(a).map(u))),f=y(()=>Aa(e.headerHeight)),m=y(()=>{var b;return(((b=e.fixedData)==null?void 0:b.length)||0)*e.rowHeight}),v=y(()=>o(r)-o(f)-o(m)),h=y(()=>{const{style:b={},height:E,width:C}=e;return Tl({...b,height:E,width:C})}),p=y(()=>Tl({height:e.footerHeight})),g=y(()=>({top:zt(o(f)),bottom:zt(e.footerHeight),width:zt(e.width)}));return{bodyWidth:s,fixedTableHeight:i,mainTableHeight:r,leftTableWidth:c,rightTableWidth:d,windowHeight:v,footerHeight:p,emptyStyle:g,rootStyle:h,headerHeight:f}};function J$(e){const t=I(),n=I(),l=I(),{columns:a,columnsStyles:s,columnsTotalWidth:r,fixedColumnsOnLeft:i,fixedColumnsOnRight:u,hasFixedColumns:c,mainColumns:d,onColumnSorted:f}=U$(e,wt(e,"columns"),wt(e,"fixed")),{scrollTo:m,scrollToLeft:v,scrollToTop:h,scrollToRow:p,onScroll:g,onVerticalScroll:b,scrollPos:E}=Y$(e,{mainTableRef:t,leftTableRef:n,rightTableRef:l,onMaybeEndReached:Ie}),C=ue("table-v2"),w=lt(),k=Lt(!1),{expandedRowKeys:S,lastRenderedRowIndex:$,isDynamic:M,isResetting:R,rowHeights:N,resetAfterIndex:O,onRowExpanded:P,onRowHeightChange:W,onRowHovered:K,onRowsRendered:D}=q$(e,{mainTableRef:t,leftTableRef:n,rightTableRef:l,tableInstance:w,ns:C,isScrolling:k}),{data:L,depthMap:z}=G$(e,{expandedRowKeys:S,lastRenderedRowIndex:$,resetAfterIndex:O}),B=y(()=>{const{estimatedRowHeight:Ae,rowHeight:xe}=e,Ye=o(L);return Te(Ae)?Object.values(o(N)).reduce(($e,Me)=>$e+Me,0):Ye.length*xe}),{bodyWidth:A,fixedTableHeight:ne,mainTableHeight:j,leftTableWidth:Q,rightTableWidth:Z,windowHeight:ee,footerHeight:ae,emptyStyle:re,rootStyle:le,headerHeight:se}=Z$(e,{columnsTotalWidth:r,fixedColumnsOnLeft:i,fixedColumnsOnRight:u,rowsHeight:B}),ge=I(),Be=y(()=>{const Ae=o(L).length===0;return ke(e.fixedData)?e.fixedData.length===0&&Ae:Ae});function te(Ae){const{estimatedRowHeight:xe,rowHeight:Ye,rowKey:$e}=e;return xe?o(N)[o(L)[Ae][$e]]||xe:Ye}const ce=I(!1);function Ie(){const{onEndReached:Ae}=e;if(!Ae)return;const{scrollTop:xe}=o(E),Ye=o(B),$e=o(ee),Me=Ye-(xe+$e)+e.hScrollbarSize;!ce.value&&o($)>=0&&Ye<=xe+o(j)-o(se)?(ce.value=!0,Ae(Me)):ce.value=!1}return ie(()=>o(B),()=>ce.value=!1),ie(()=>e.expandedRowKeys,Ae=>S.value=Ae,{deep:!0}),{columns:a,containerRef:ge,mainTableRef:t,leftTableRef:n,rightTableRef:l,isDynamic:M,isResetting:R,isScrolling:k,hasFixedColumns:c,columnsStyles:s,columnsTotalWidth:r,data:L,expandedRowKeys:S,depthMap:z,fixedColumnsOnLeft:i,fixedColumnsOnRight:u,mainColumns:d,bodyWidth:A,emptyStyle:re,rootStyle:le,footerHeight:ae,mainTableHeight:j,fixedTableHeight:ne,leftTableWidth:Q,rightTableWidth:Z,showEmpty:Be,getRowHeight:te,onColumnSorted:f,onRowHovered:K,onRowExpanded:P,onRowsRendered:D,onRowHeightChange:W,scrollTo:m,scrollToLeft:v,scrollToTop:h,scrollToRow:p,onScroll:g,onVerticalScroll:b}}const Bi=Symbol("tableV2"),Tv="tableV2GridScrollLeft",$v=String,ga={type:Y(Array),required:!0},Vi={type:Y(Array)},Nv={...Vi,required:!0},Q$=String,sc={type:Y(Array),default:()=>Vt([])},Al={type:Number,required:!0},Iv={type:Y([String,Number,Symbol]),default:"id"},rc={type:Y(Object)},xl=de({class:String,columns:ga,columnsStyles:{type:Y(Object),required:!0},depth:Number,expandColumnKey:Q$,estimatedRowHeight:{...Kl.estimatedRowHeight,default:void 0},isScrolling:Boolean,onRowExpand:{type:Y(Function)},onRowHover:{type:Y(Function)},onRowHeightChange:{type:Y(Function)},rowData:{type:Y(Object),required:!0},rowEventHandlers:{type:Y(Object)},rowIndex:{type:Number,required:!0},rowKey:Iv,style:{type:Y(Object)}}),Xs={type:Number,required:!0},Di=de({class:String,columns:ga,fixedHeaderData:{type:Y(Array)},headerData:{type:Y(Array),required:!0},headerHeight:{type:Y([Number,Array]),default:50},rowWidth:Xs,rowHeight:{type:Number,default:50},height:Xs,width:Xs}),Fa=de({columns:ga,data:Nv,fixedData:Vi,estimatedRowHeight:xl.estimatedRowHeight,width:Al,height:Al,headerWidth:Al,headerHeight:Di.headerHeight,bodyWidth:Al,rowHeight:Al,cache:tv.cache,useIsScrolling:Boolean,scrollbarAlwaysOn:Kl.scrollbarAlwaysOn,scrollbarStartGap:Kl.scrollbarStartGap,scrollbarEndGap:Kl.scrollbarEndGap,class:$v,style:rc,containerStyle:rc,getRowHeight:{type:Y(Function),required:!0},rowKey:xl.rowKey,onRowsRendered:{type:Y(Function)},onScroll:{type:Y(Function)}}),eN=de({cache:Fa.cache,estimatedRowHeight:xl.estimatedRowHeight,rowKey:Iv,headerClass:{type:Y([String,Function])},headerProps:{type:Y([Object,Function])},headerCellProps:{type:Y([Object,Function])},headerHeight:Di.headerHeight,footerHeight:{type:Number,default:0},rowClass:{type:Y([String,Function])},rowProps:{type:Y([Object,Function])},rowHeight:{type:Number,default:50},cellProps:{type:Y([Object,Function])},columns:ga,data:Nv,dataGetter:{type:Y(Function)},fixedData:Vi,expandColumnKey:xl.expandColumnKey,expandedRowKeys:sc,defaultExpandedRowKeys:sc,class:$v,fixed:Boolean,style:{type:Y(Object)},width:Al,height:Al,maxHeight:Number,useIsScrolling:Boolean,indentSize:{type:Number,default:12},iconSize:{type:Number,default:12},hScrollbarSize:Kl.hScrollbarSize,vScrollbarSize:Kl.vScrollbarSize,scrollbarAlwaysOn:ov.alwaysOn,sortBy:{type:Y(Object),default:()=>({})},sortState:{type:Y(Object),default:void 0},onColumnSort:{type:Y(Function)},onExpandedRowsChange:{type:Y(Function)},onEndReached:{type:Y(Function)},onRowExpand:xl.onRowExpand,onScroll:Fa.onScroll,onRowsRendered:Fa.onRowsRendered,rowEventHandlers:xl.rowEventHandlers}),tN="ElTableV2Header",nN=x({name:tN,props:Di,setup(e,{slots:t,expose:n}){const l=ue("table-v2"),a=we(Tv),s=I(),r=y(()=>Tl({width:e.width,height:e.height})),i=y(()=>Tl({width:e.rowWidth,height:e.height})),u=y(()=>ln(o(e.headerHeight))),c=m=>{const v=o(s);Ee(()=>{v!=null&&v.scroll&&v.scroll({left:m})})},d=()=>{const m=l.e("fixed-header-row"),{columns:v,fixedHeaderData:h,rowHeight:p}=e;return h==null?void 0:h.map((g,b)=>{var E;const C=Tl({height:p,width:"100%"});return(E=t.fixed)==null?void 0:E.call(t,{class:m,columns:v,rowData:g,rowIndex:-(b+1),style:C})})},f=()=>{const m=l.e("dynamic-header-row"),{columns:v}=e;return o(u).map((h,p)=>{var g;const b=Tl({width:"100%",height:h});return(g=t.dynamic)==null?void 0:g.call(t,{class:m,columns:v,headerIndex:p,style:b})})};return hl(()=>{a!=null&&a.value&&c(a.value)}),n({scrollToLeft:c}),()=>{if(!(e.height<=0))return H("div",{ref:s,class:e.class,style:o(r),role:"rowgroup"},[H("div",{style:o(i),class:l.e("header")},[f(),d()])])}}});var lN=nN;const oN=({atXEndEdge:e,atXStartEdge:t,atYEndEdge:n,atYStartEdge:l},a)=>{let s=null,r=0,i=0;const u=(d,f)=>{const m=d<=0&&t.value||d>=0&&e.value,v=f<=0&&l.value||f>=0&&n.value;return m&&v};return{hasReachedEdge:u,onWheel:d=>{Yl(s);let f=d.deltaX,m=d.deltaY;Math.abs(f)>Math.abs(m)?m=0:f=0,d.shiftKey&&m!==0&&(f=m,m=0),!(u(r,i)&&u(r+f,i+m))&&(r+=f,i+=m,d.preventDefault(),s=Ml(()=>{a(r,i),r=0,i=0}))}}},Mv=({name:e,clearCache:t,getColumnPosition:n,getColumnStartIndexForOffset:l,getColumnStopIndexForStartIndex:a,getEstimatedTotalHeight:s,getEstimatedTotalWidth:r,getColumnOffset:i,getRowOffset:u,getRowPosition:c,getRowStartIndexForOffset:d,getRowStopIndexForStartIndex:f,initCache:m,injectToInstance:v,validateProps:h})=>x({name:e??"ElVirtualList",props:Kl,emits:[es,ts],setup(p,{emit:g,expose:b,slots:E}){const C=ue("vl");h(p);const w=lt(),k=I(m(p,w));v==null||v(w,k);const S=I(),$=I(),M=I(),R=I(null),N=I({isScrolling:!1,scrollLeft:Te(p.initScrollLeft)?p.initScrollLeft:0,scrollTop:Te(p.initScrollTop)?p.initScrollTop:0,updateRequested:!1,xAxisScrollDir:po,yAxisScrollDir:po}),O=Jf(),P=y(()=>Number.parseInt(`${p.height}`,10)),W=y(()=>Number.parseInt(`${p.width}`,10)),K=y(()=>{const{totalColumn:$e,totalRow:Me,columnCache:Pe}=p,{isScrolling:Ze,xAxisScrollDir:ot,scrollLeft:at}=o(N);if($e===0||Me===0)return[0,0,0,0];const ct=l(p,at,o(k)),ye=a(p,ct,at,o(k)),Ue=!Ze||ot===ns?Math.max(1,Pe):1,It=!Ze||ot===po?Math.max(1,Pe):1;return[Math.max(0,ct-Ue),Math.max(0,Math.min($e-1,ye+It)),ct,ye]}),D=y(()=>{const{totalColumn:$e,totalRow:Me,rowCache:Pe}=p,{isScrolling:Ze,yAxisScrollDir:ot,scrollTop:at}=o(N);if($e===0||Me===0)return[0,0,0,0];const ct=d(p,at,o(k)),ye=f(p,ct,at,o(k)),Ue=!Ze||ot===ns?Math.max(1,Pe):1,It=!Ze||ot===po?Math.max(1,Pe):1;return[Math.max(0,ct-Ue),Math.max(0,Math.min(Me-1,ye+It)),ct,ye]}),L=y(()=>s(p,o(k))),z=y(()=>r(p,o(k))),B=y(()=>{var $e;return[{position:"relative",overflow:"hidden",WebkitOverflowScrolling:"touch",willChange:"transform"},{direction:p.direction,height:Te(p.height)?`${p.height}px`:p.height,width:Te(p.width)?`${p.width}px`:p.width},($e=p.style)!=null?$e:{}]}),A=y(()=>{const $e=`${o(z)}px`;return{height:`${o(L)}px`,pointerEvents:o(N).isScrolling?"none":void 0,width:$e}}),ne=()=>{const{totalColumn:$e,totalRow:Me}=p;if($e>0&&Me>0){const[ye,Ue,It,Ot]=o(K),[Rt,Mt,St,je]=o(D);g(es,{columnCacheStart:ye,columnCacheEnd:Ue,rowCacheStart:Rt,rowCacheEnd:Mt,columnVisibleStart:It,columnVisibleEnd:Ot,rowVisibleStart:St,rowVisibleEnd:je})}const{scrollLeft:Pe,scrollTop:Ze,updateRequested:ot,xAxisScrollDir:at,yAxisScrollDir:ct}=o(N);g(ts,{xAxisScrollDir:at,scrollLeft:Pe,yAxisScrollDir:ct,scrollTop:Ze,updateRequested:ot})},j=$e=>{const{clientHeight:Me,clientWidth:Pe,scrollHeight:Ze,scrollLeft:ot,scrollTop:at,scrollWidth:ct}=$e.currentTarget,ye=o(N);if(ye.scrollTop===at&&ye.scrollLeft===ot)return;let Ue=ot;if(Gu(p.direction))switch(os()){case la:Ue=-ot;break;case Ii:Ue=ct-Pe-ot;break}N.value={...ye,isScrolling:!0,scrollLeft:Ue,scrollTop:Math.max(0,Math.min(at,Ze-Me)),updateRequested:!0,xAxisScrollDir:Fl(ye.scrollLeft,Ue),yAxisScrollDir:Fl(ye.scrollTop,at)},Ee(()=>se()),ge(),ne()},Q=($e,Me)=>{const Pe=o(P),Ze=(L.value-Pe)/Me*$e;ae({scrollTop:Math.min(L.value-Pe,Ze)})},Z=($e,Me)=>{const Pe=o(W),Ze=(z.value-Pe)/Me*$e;ae({scrollLeft:Math.min(z.value-Pe,Ze)})},{onWheel:ee}=oN({atXStartEdge:y(()=>N.value.scrollLeft<=0),atXEndEdge:y(()=>N.value.scrollLeft>=z.value-o(W)),atYStartEdge:y(()=>N.value.scrollTop<=0),atYEndEdge:y(()=>N.value.scrollTop>=L.value-o(P))},($e,Me)=>{var Pe,Ze,ot,at;(Ze=(Pe=$.value)==null?void 0:Pe.onMouseUp)==null||Ze.call(Pe),(at=(ot=M.value)==null?void 0:ot.onMouseUp)==null||at.call(ot);const ct=o(W),ye=o(P);ae({scrollLeft:Math.min(N.value.scrollLeft+$e,z.value-ct),scrollTop:Math.min(N.value.scrollTop+Me,L.value-ye)})});xt(S,"wheel",ee,{passive:!1});const ae=({scrollLeft:$e=N.value.scrollLeft,scrollTop:Me=N.value.scrollTop})=>{$e=Math.max($e,0),Me=Math.max(Me,0);const Pe=o(N);Me===Pe.scrollTop&&$e===Pe.scrollLeft||(N.value={...Pe,xAxisScrollDir:Fl(Pe.scrollLeft,$e),yAxisScrollDir:Fl(Pe.scrollTop,Me),scrollLeft:$e,scrollTop:Me,updateRequested:!0},Ee(()=>se()),ge(),ne())},re=($e=0,Me=0,Pe=xn)=>{const Ze=o(N);Me=Math.max(0,Math.min(Me,p.totalColumn-1)),$e=Math.max(0,Math.min($e,p.totalRow-1));const ot=nd(C.namespace.value),at=o(k),ct=s(p,at),ye=r(p,at);ae({scrollLeft:i(p,Me,Pe,Ze.scrollLeft,at,ye>p.width?ot:0),scrollTop:u(p,$e,Pe,Ze.scrollTop,at,ct>p.height?ot:0)})},le=($e,Me)=>{const{columnWidth:Pe,direction:Ze,rowHeight:ot}=p,at=O.value(t&&Pe,t&&ot,t&&Ze),ct=`${$e},${Me}`;if(rn(at,ct))return at[ct];{const[,ye]=n(p,Me,o(k)),Ue=o(k),It=Gu(Ze),[Ot,Rt]=c(p,$e,Ue),[Mt]=n(p,Me,Ue);return at[ct]={position:"absolute",left:It?void 0:`${ye}px`,right:It?`${ye}px`:void 0,top:`${Rt}px`,height:`${Ot}px`,width:`${Mt}px`},at[ct]}},se=()=>{N.value.isScrolling=!1,Ee(()=>{O.value(-1,null,null)})};Xe(()=>{if(!bt)return;const{initScrollLeft:$e,initScrollTop:Me}=p,Pe=o(S);Pe&&(Te($e)&&(Pe.scrollLeft=$e),Te(Me)&&(Pe.scrollTop=Me)),ne()});const ge=()=>{const{direction:$e}=p,{scrollLeft:Me,scrollTop:Pe,updateRequested:Ze}=o(N),ot=o(S);if(Ze&&ot){if($e===go)switch(os()){case la:{ot.scrollLeft=-Me;break}case Ni:{ot.scrollLeft=Me;break}default:{const{clientWidth:at,scrollWidth:ct}=ot;ot.scrollLeft=ct-at-Me;break}}else ot.scrollLeft=Math.max(0,Me);ot.scrollTop=Math.max(0,Pe)}},{resetAfterColumnIndex:Be,resetAfterRowIndex:te,resetAfter:ce}=w.proxy;b({windowRef:S,innerRef:R,getItemStyleCache:O,scrollTo:ae,scrollToItem:re,states:N,resetAfterColumnIndex:Be,resetAfterRowIndex:te,resetAfter:ce});const Ie=()=>{const{scrollbarAlwaysOn:$e,scrollbarStartGap:Me,scrollbarEndGap:Pe,totalColumn:Ze,totalRow:ot}=p,at=o(W),ct=o(P),ye=o(z),Ue=o(L),{scrollLeft:It,scrollTop:Ot}=o(N),Rt=Re(Sr,{ref:$,alwaysOn:$e,startGap:Me,endGap:Pe,class:C.e("horizontal"),clientSize:at,layout:"horizontal",onScroll:Z,ratio:at*100/ye,scrollFrom:It/(ye-at),total:ot,visible:!0}),Mt=Re(Sr,{ref:M,alwaysOn:$e,startGap:Me,endGap:Pe,class:C.e("vertical"),clientSize:ct,layout:"vertical",onScroll:Q,ratio:ct*100/Ue,scrollFrom:Ot/(Ue-ct),total:Ze,visible:!0});return{horizontalScrollbar:Rt,verticalScrollbar:Mt}},Ae=()=>{var $e;const[Me,Pe]=o(K),[Ze,ot]=o(D),{data:at,totalColumn:ct,totalRow:ye,useIsScrolling:Ue,itemKey:It}=p,Ot=[];if(ye>0&&ct>0)for(let Rt=Ze;Rt<=ot;Rt++)for(let Mt=Me;Mt<=Pe;Mt++){const St=It({columnIndex:Mt,data:at,rowIndex:Rt});Ot.push(Re(Oe,{key:St},($e=E.default)==null?void 0:$e.call(E,{columnIndex:Mt,data:at,isScrolling:Ue?o(N).isScrolling:void 0,style:le(Rt,Mt),rowIndex:Rt})))}return Ot},xe=()=>{const $e=Ge(p.innerElement),Me=Ae();return[Re($e,{style:o(A),ref:R},Ve($e)?Me:{default:()=>Me})]};return()=>{const $e=Ge(p.containerElement),{horizontalScrollbar:Me,verticalScrollbar:Pe}=Ie(),Ze=xe();return Re("div",{key:0,class:C.e("wrapper"),role:p.role},[Re($e,{class:p.className,style:o(B),onScroll:j,ref:S},Ve($e)?Ze:{default:()=>Ze}),Me,Pe])}}}),{max:rs,min:Rv,floor:Pv}=Math,aN={column:"columnWidth",row:"rowHeight"},$r={column:"lastVisitedColumnIndex",row:"lastVisitedRowIndex"},sl=(e,t,n,l)=>{const[a,s,r]=[n[l],e[aN[l]],n[$r[l]]];if(t>r){let i=0;if(r>=0){const u=a[r];i=u.offset+u.size}for(let u=r+1;u<=t;u++){const c=s(u);a[u]={offset:i,size:c},i+=c}n[$r[l]]=t}return a[t]},Ov=(e,t,n,l,a,s)=>{for(;n<=l;){const r=n+Pv((l-n)/2),i=sl(e,r,t,s).offset;if(i===a)return r;i{const s=a==="column"?e.totalColumn:e.totalRow;let r=1;for(;n{const[a,s]=[t[l],t[$r[l]]];return(s>0?a[s].offset:0)>=n?Ov(e,t,0,s,n,l):sN(e,t,rs(0,s),n,l)},Lv=({totalRow:e},{estimatedRowHeight:t,lastVisitedRowIndex:n,row:l})=>{let a=0;if(n>=e&&(n=e-1),n>=0){const i=l[n];a=i.offset+i.size}const r=(e-n-1)*t;return a+r},Bv=({totalColumn:e},{column:t,estimatedColumnWidth:n,lastVisitedColumnIndex:l})=>{let a=0;if(l>e&&(l=e-1),l>=0){const i=t[l];a=i.offset+i.size}const r=(e-l-1)*n;return a+r},rN={column:Bv,row:Lv},uc=(e,t,n,l,a,s,r)=>{const[i,u]=[s==="row"?e.height:e.width,rN[s]],c=sl(e,t,a,s),d=u(e,a),f=rs(0,Rv(d-i,c.offset)),m=rs(0,c.offset-i+r+c.size);switch(n===Ns&&(l>=m-i&&l<=f+i?n=xn:n=Jn),n){case ta:return f;case na:return m;case Jn:return Math.round(m+(f-m)/2);case xn:default:return l>=m&&l<=f?l:m>f||l{const l=sl(e,t,n,"column");return[l.size,l.offset]},getRowPosition:(e,t,n)=>{const l=sl(e,t,n,"row");return[l.size,l.offset]},getColumnOffset:(e,t,n,l,a,s)=>uc(e,t,n,l,a,"column",s),getRowOffset:(e,t,n,l,a,s)=>uc(e,t,n,l,a,"row",s),getColumnStartIndexForOffset:(e,t,n)=>ic(e,n,t,"column"),getColumnStopIndexForStartIndex:(e,t,n,l)=>{const a=sl(e,t,l,"column"),s=n+e.width;let r=a.offset+a.size,i=t;for(;iic(e,n,t,"row"),getRowStopIndexForStartIndex:(e,t,n,l)=>{const{totalRow:a,height:s}=e,r=sl(e,t,l,"row"),i=n+s;let u=r.size+r.offset,c=t;for(;c{const n=({columnIndex:s,rowIndex:r},i)=>{var u,c;i=vt(i)?!0:i,Te(s)&&(t.value.lastVisitedColumnIndex=Math.min(t.value.lastVisitedColumnIndex,s-1)),Te(r)&&(t.value.lastVisitedRowIndex=Math.min(t.value.lastVisitedRowIndex,r-1)),(u=e.exposed)==null||u.getItemStyleCache.value(-1,null,null),i&&((c=e.proxy)==null||c.$forceUpdate())},l=(s,r)=>{n({columnIndex:s},r)},a=(s,r)=>{n({rowIndex:s},r)};Object.assign(e.proxy,{resetAfterColumnIndex:l,resetAfterRowIndex:a,resetAfter:n})},initCache:({estimatedColumnWidth:e=gr,estimatedRowHeight:t=gr})=>({column:{},estimatedColumnWidth:e,estimatedRowHeight:t,lastVisitedColumnIndex:-1,lastVisitedRowIndex:-1,row:{}}),clearCache:!1,validateProps:({columnWidth:e,rowHeight:t})=>{}}),uN=Mv({name:"ElFixedSizeGrid",getColumnPosition:({columnWidth:e},t)=>[e,t*e],getRowPosition:({rowHeight:e},t)=>[e,t*e],getEstimatedTotalHeight:({totalRow:e,rowHeight:t})=>t*e,getEstimatedTotalWidth:({totalColumn:e,columnWidth:t})=>t*e,getColumnOffset:({totalColumn:e,columnWidth:t,width:n},l,a,s,r,i)=>{n=Number(n);const u=Math.max(0,e*t-n),c=Math.min(u,l*t),d=Math.max(0,l*t-n+i+t);switch(a==="smart"&&(s>=d-n&&s<=c+n?a=xn:a=Jn),a){case ta:return c;case na:return d;case Jn:{const f=Math.round(d+(c-d)/2);return fu+Math.floor(n/2)?u:f}case xn:default:return s>=d&&s<=c?s:d>c||s{t=Number(t);const u=Math.max(0,n*e-t),c=Math.min(u,l*e),d=Math.max(0,l*e-t+i+e);switch(a===Ns&&(s>=d-t&&s<=c+t?a=xn:a=Jn),a){case ta:return c;case na:return d;case Jn:{const f=Math.round(d+(c-d)/2);return fu+Math.floor(t/2)?u:f}case xn:default:return s>=d&&s<=c?s:d>c||sMath.max(0,Math.min(t-1,Math.floor(n/e))),getColumnStopIndexForStartIndex:({columnWidth:e,totalColumn:t,width:n},l,a)=>{const s=l*e,r=Math.ceil((n+a-s)/e);return Math.max(0,Math.min(t-1,l+r-1))},getRowStartIndexForOffset:({rowHeight:e,totalRow:t},n)=>Math.max(0,Math.min(t-1,Math.floor(n/e))),getRowStopIndexForStartIndex:({rowHeight:e,totalRow:t,height:n},l,a)=>{const s=l*e,r=Math.ceil((n+a-s)/e);return Math.max(0,Math.min(t-1,l+r-1))},initCache:()=>{},clearCache:!0,validateProps:({columnWidth:e,rowHeight:t})=>{}}),cN="ElTableV2Grid",dN=e=>{const t=I(),n=I(),l=I(0),a=y(()=>{const{data:g,rowHeight:b,estimatedRowHeight:E}=e;if(!E)return g.length*b}),s=y(()=>{const{fixedData:g,rowHeight:b}=e;return((g==null?void 0:g.length)||0)*b}),r=y(()=>Aa(e.headerHeight)),i=y(()=>{const{height:g}=e;return Math.max(0,g-o(r)-o(s))}),u=y(()=>o(r)+o(s)>0),c=({data:g,rowIndex:b})=>g[b][e.rowKey];function d({rowCacheStart:g,rowCacheEnd:b,rowVisibleStart:E,rowVisibleEnd:C}){var w;(w=e.onRowsRendered)==null||w.call(e,{rowCacheStart:g,rowCacheEnd:b,rowVisibleStart:E,rowVisibleEnd:C})}function f(g,b){var E;(E=n.value)==null||E.resetAfterRowIndex(g,b)}function m(g,b){const E=o(t),C=o(n);yt(g)?(E==null||E.scrollToLeft(g.scrollLeft),l.value=g.scrollLeft,C==null||C.scrollTo(g)):(E==null||E.scrollToLeft(g),l.value=g,C==null||C.scrollTo({scrollLeft:g,scrollTop:b}))}function v(g){var b;(b=o(n))==null||b.scrollTo({scrollTop:g})}function h(g,b){var E;(E=o(n))==null||E.scrollToItem(g,1,b)}function p(){var g,b;(g=o(n))==null||g.$forceUpdate(),(b=o(t))==null||b.$forceUpdate()}return ie(()=>e.bodyWidth,()=>{var g;Te(e.estimatedRowHeight)&&((g=n.value)==null||g.resetAfter({columnIndex:0},!1))}),{bodyRef:n,forceUpdate:p,fixedRowHeight:s,gridHeight:i,hasHeader:u,headerHeight:r,headerRef:t,totalHeight:a,itemKey:c,onItemRendered:d,resetAfterRowIndex:f,scrollTo:m,scrollToTop:v,scrollToRow:h,scrollLeft:l}},fN=x({name:cN,props:Fa,setup(e,{slots:t,expose:n}){const{ns:l}=we(Bi),{bodyRef:a,fixedRowHeight:s,gridHeight:r,hasHeader:i,headerRef:u,headerHeight:c,totalHeight:d,forceUpdate:f,itemKey:m,onItemRendered:v,resetAfterRowIndex:h,scrollTo:p,scrollToTop:g,scrollToRow:b,scrollLeft:E}=dN(e);rt(Tv,E),Fr(async()=>{var w;await Ee();const k=(w=a.value)==null?void 0:w.states.scrollTop;k&&g(Math.round(k)+1)}),n({forceUpdate:f,totalHeight:d,scrollTo:p,scrollToTop:g,scrollToRow:b,resetAfterRowIndex:h});const C=()=>e.bodyWidth;return()=>{const{cache:w,columns:k,data:S,fixedData:$,useIsScrolling:M,scrollbarAlwaysOn:R,scrollbarEndGap:N,scrollbarStartGap:O,style:P,rowHeight:W,bodyWidth:K,estimatedRowHeight:D,headerWidth:L,height:z,width:B,getRowHeight:A,onScroll:ne}=e,j=Te(D),Q=j?iN:uN,Z=o(c);return H("div",{role:"table",class:[l.e("table"),e.class],style:P},[H(Q,{ref:a,data:S,useIsScrolling:M,itemKey:m,columnCache:0,columnWidth:j?C:K,totalColumn:1,totalRow:S.length,rowCache:w,rowHeight:j?A:W,width:B,height:o(r),class:l.e("body"),role:"rowgroup",scrollbarStartGap:O,scrollbarEndGap:N,scrollbarAlwaysOn:R,onScroll:ne,onItemRendered:v,perfMode:!1},{default:ee=>{var ae;const re=S[ee.rowIndex];return(ae=t.row)==null?void 0:ae.call(t,{...ee,columns:k,rowData:re})}}),o(i)&&H(lN,{ref:u,class:l.e("header-wrapper"),columns:k,headerData:S,headerHeight:e.headerHeight,fixedHeaderData:$,rowWidth:L,rowHeight:W,width:B,height:Math.min(Z+o(s),z)},{dynamic:t.header,fixed:t.row})])}}});var Ai=fN;function vN(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Dt(e)}const pN=(e,{slots:t})=>{const{mainTableRef:n,...l}=e;return H(Ai,et({ref:n},l),vN(t)?t:{default:()=>[t]})};var hN=pN;function mN(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Dt(e)}const gN=(e,{slots:t})=>{if(!e.columns.length)return;const{leftTableRef:n,...l}=e;return H(Ai,et({ref:n},l),mN(t)?t:{default:()=>[t]})};var bN=gN;function yN(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Dt(e)}const CN=(e,{slots:t})=>{if(!e.columns.length)return;const{rightTableRef:n,...l}=e;return H(Ai,et({ref:n},l),yN(t)?t:{default:()=>[t]})};var wN=CN;const kN=e=>{const{isScrolling:t}=we(Bi),n=I(!1),l=I(),a=y(()=>Te(e.estimatedRowHeight)&&e.rowIndex>=0),s=(u=!1)=>{const c=o(l);if(!c)return;const{columns:d,onRowHeightChange:f,rowKey:m,rowIndex:v,style:h}=e,{height:p}=c.getBoundingClientRect();n.value=!0,Ee(()=>{if(u||p!==Number.parseInt(h.height)){const g=d[0],b=(g==null?void 0:g.placeholderSign)===ra;f==null||f({rowKey:m,height:p,rowIndex:v},g&&!b&&g.fixed)}})},r=y(()=>{const{rowData:u,rowIndex:c,rowKey:d,onRowHover:f}=e,m=e.rowEventHandlers||{},v={};return Object.entries(m).forEach(([h,p])=>{Qe(p)&&(v[h]=g=>{p({event:g,rowData:u,rowIndex:c,rowKey:d})})}),f&&[{name:"onMouseleave",hovered:!1},{name:"onMouseenter",hovered:!0}].forEach(({name:h,hovered:p})=>{const g=v[h];v[h]=b=>{f({event:b,hovered:p,rowData:u,rowIndex:c,rowKey:d}),g==null||g(b)}}),v}),i=u=>{const{onRowExpand:c,rowData:d,rowIndex:f,rowKey:m}=e;c==null||c({expanded:u,rowData:d,rowIndex:f,rowKey:m})};return Xe(()=>{o(a)&&s(!0)}),{isScrolling:t,measurable:a,measured:n,rowRef:l,eventHandlers:r,onExpand:i}},SN="ElTableV2TableRow",EN=x({name:SN,props:xl,setup(e,{expose:t,slots:n,attrs:l}){const{eventHandlers:a,isScrolling:s,measurable:r,measured:i,rowRef:u,onExpand:c}=kN(e);return t({onExpand:c}),()=>{const{columns:d,columnsStyles:f,expandColumnKey:m,depth:v,rowData:h,rowIndex:p,style:g}=e;let b=d.map((E,C)=>{const w=ke(h.children)&&h.children.length>0&&E.key===m;return n.cell({column:E,columns:d,columnIndex:C,depth:v,style:f[E.key],rowData:h,rowIndex:p,isScrolling:o(s),expandIconProps:w?{rowData:h,rowIndex:p,onExpand:c}:void 0})});if(n.row&&(b=n.row({cells:b.map(E=>ke(E)&&E.length===1?E[0]:E),style:g,columns:d,depth:v,rowData:h,rowIndex:p,isScrolling:o(s)})),o(r)){const{height:E,...C}=g||{},w=o(i);return H("div",et({ref:u,class:e.class,style:w?g:C,role:"row"},l,o(a)),[b])}return H("div",et(l,{ref:u,class:e.class,style:g,role:"row"},o(a)),[b])}}});var _N=EN;function TN(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Dt(e)}const $N=(e,{slots:t})=>{const{columns:n,columnsStyles:l,depthMap:a,expandColumnKey:s,expandedRowKeys:r,estimatedRowHeight:i,hasFixedColumns:u,rowData:c,rowIndex:d,style:f,isScrolling:m,rowProps:v,rowClass:h,rowKey:p,rowEventHandlers:g,ns:b,onRowHovered:E,onRowExpanded:C}=e,w=Gl(h,{columns:n,rowData:c,rowIndex:d},""),k=Gl(v,{columns:n,rowData:c,rowIndex:d}),S=c[p],$=a[S]||0,M=!!s,R=d<0,N=[b.e("row"),w,{[b.e(`row-depth-${$}`)]:M&&d>=0,[b.is("expanded")]:M&&r.includes(S),[b.is("fixed")]:!$&&R,[b.is("customized")]:!!t.row}],O=u?E:void 0,P={...k,columns:n,columnsStyles:l,class:N,depth:$,expandColumnKey:s,estimatedRowHeight:R?void 0:i,isScrolling:m,rowIndex:d,rowData:c,rowKey:S,rowEventHandlers:g,style:f};return H(_N,et(P,{onRowExpand:C,onMouseenter:D=>{O==null||O({hovered:!0,rowKey:S,event:D,rowData:c,rowIndex:d})},onMouseleave:D=>{O==null||O({hovered:!1,rowKey:S,event:D,rowData:c,rowIndex:d})},rowkey:S}),TN(t)?t:{default:()=>[t]})};var NN=$N;const Fi=(e,{slots:t})=>{var n;const{cellData:l,style:a}=e,s=((n=l==null?void 0:l.toString)==null?void 0:n.call(l))||"",r=G(t,"default",e,()=>[s]);return H("div",{class:e.class,title:s,style:a},[r])};Fi.displayName="ElTableV2Cell";Fi.inheritAttrs=!1;var IN=Fi;const MN=e=>{const{expanded:t,expandable:n,onExpand:l,style:a,size:s}=e,r={onClick:n?()=>l(!t):void 0,class:e.class};return H(Se,et(r,{size:s,style:a}),{default:()=>[H(Cn,null,null)]})};var RN=MN;const Vv=({columns:e,column:t,columnIndex:n,depth:l,expandIconProps:a,isScrolling:s,rowData:r,rowIndex:i,style:u,expandedRowKeys:c,ns:d,cellProps:f,expandColumnKey:m,indentSize:v,iconSize:h,rowKey:p},{slots:g})=>{const b=Tl(u);if(t.placeholderSign===ra)return H("div",{class:d.em("row-cell","placeholder"),style:b},null);const{cellRenderer:E,dataKey:C,dataGetter:w}=t,k=Qe(w)?w({columns:e,column:t,columnIndex:n,rowData:r,rowIndex:i}):Yt(r,C??""),S=Gl(f,{cellData:k,columns:e,column:t,columnIndex:n,rowIndex:i,rowData:r}),$={class:d.e("cell-text"),columns:e,column:t,columnIndex:n,cellData:k,isScrolling:s,rowData:r,rowIndex:i},M=_v(E),R=M?M($):G(g,"default",$,()=>[H(IN,$,null)]),N=[d.e("row-cell"),t.class,t.align===sa.CENTER&&d.is("align-center"),t.align===sa.RIGHT&&d.is("align-right")],O=i>=0&&m&&t.key===m,P=i>=0&&c.includes(r[p]);let W;const K=`margin-inline-start: ${l*v}px;`;return O&&(yt(a)?W=H(RN,et(a,{class:[d.e("expand-icon"),d.is("expanded",P)],size:h,expanded:P,style:K,expandable:!0}),null):W=H("div",{style:[K,`width: ${h}px; height: ${h}px;`].join(" ")},null)),H("div",et({class:N,style:b},S,{role:"cell"}),[W,R])};Vv.inheritAttrs=!1;var cc=Vv;const PN=de({class:String,columns:ga,columnsStyles:{type:Y(Object),required:!0},headerIndex:Number,style:{type:Y(Object)}}),ON=x({name:"ElTableV2HeaderRow",props:PN,setup(e,{slots:t}){return()=>{const{columns:n,columnsStyles:l,headerIndex:a,style:s}=e;let r=n.map((i,u)=>t.cell({columns:n,column:i,columnIndex:u,headerIndex:a,style:l[i.key]}));return t.header&&(r=t.header({cells:r.map(i=>ke(i)&&i.length===1?i[0]:i),columns:n,headerIndex:a})),H("div",{class:e.class,style:s,role:"row"},[r])}}});var LN=ON;function BN(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Dt(e)}const VN=({columns:e,columnsStyles:t,headerIndex:n,style:l,headerClass:a,headerProps:s,ns:r},{slots:i})=>{const u={columns:e,headerIndex:n},c=[r.e("header-row"),Gl(a,u,""),{[r.is("customized")]:!!i.header}],d={...Gl(s,u),columnsStyles:t,class:c,columns:e,headerIndex:n,style:l};return H(LN,d,BN(i)?i:{default:()=>[i]})};var DN=VN;const xi=(e,{slots:t})=>G(t,"default",e,()=>{var n,l;return[H("div",{class:e.class,title:(n=e.column)==null?void 0:n.title},[(l=e.column)==null?void 0:l.title])]});xi.displayName="ElTableV2HeaderCell";xi.inheritAttrs=!1;var AN=xi;const FN=e=>{const{sortOrder:t}=e;return H(Se,{size:14,class:e.class},{default:()=>[t===aa.ASC?H(Bm,null,null):H(Om,null,null)]})};var xN=FN;const zN=(e,{slots:t})=>{const{column:n,ns:l,style:a,onColumnSorted:s}=e,r=Tl(a);if(n.placeholderSign===ra)return H("div",{class:l.em("header-row-cell","placeholder"),style:r},null);const{headerCellRenderer:i,headerClass:u,sortable:c}=n,d={...e,class:l.e("header-cell-text")},f=_v(i),m=f?f(d):G(t,"default",d,()=>[H(AN,d,null)]),{sortBy:v,sortState:h,headerCellProps:p}=e;let g,b;if(h){const w=h[n.key];g=!!Tr[w],b=g?w:aa.ASC}else g=n.key===v.key,b=g?v.order:aa.ASC;const E=[l.e("header-cell"),Gl(u,e,""),n.align===sa.CENTER&&l.is("align-center"),n.align===sa.RIGHT&&l.is("align-right"),c&&l.is("sortable")],C={...Gl(p,e),onClick:n.sortable?s:void 0,class:E,style:r,"data-key":n.key};return H("div",et(C,{role:"columnheader"}),[m,c&&H(xN,{class:[l.e("sort-icon"),g&&l.is("sorting")],sortOrder:b},null)])};var dc=zN;const Dv=(e,{slots:t})=>{var n;return H("div",{class:e.class,style:e.style},[(n=t.default)==null?void 0:n.call(t)])};Dv.displayName="ElTableV2Footer";var HN=Dv;const Av=(e,{slots:t})=>{const n=G(t,"default",{},()=>[H(Af,null,null)]);return H("div",{class:e.class,style:e.style},[n])};Av.displayName="ElTableV2Empty";var KN=Av;const Fv=(e,{slots:t})=>{var n;return H("div",{class:e.class,style:e.style},[(n=t.default)==null?void 0:n.call(t)])};Fv.displayName="ElTableV2Overlay";var WN=Fv;function Fo(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Dt(e)}const jN="ElTableV2",UN=x({name:jN,props:eN,setup(e,{slots:t,expose:n}){const l=ue("table-v2"),{columnsStyles:a,fixedColumnsOnLeft:s,fixedColumnsOnRight:r,mainColumns:i,mainTableHeight:u,fixedTableHeight:c,leftTableWidth:d,rightTableWidth:f,data:m,depthMap:v,expandedRowKeys:h,hasFixedColumns:p,mainTableRef:g,leftTableRef:b,rightTableRef:E,isDynamic:C,isResetting:w,isScrolling:k,bodyWidth:S,emptyStyle:$,rootStyle:M,footerHeight:R,showEmpty:N,scrollTo:O,scrollToLeft:P,scrollToTop:W,scrollToRow:K,getRowHeight:D,onColumnSorted:L,onRowHeightChange:z,onRowHovered:B,onRowExpanded:A,onRowsRendered:ne,onScroll:j,onVerticalScroll:Q}=J$(e);return n({scrollTo:O,scrollToLeft:P,scrollToTop:W,scrollToRow:K}),rt(Bi,{ns:l,isResetting:w,isScrolling:k}),()=>{const{cache:Z,cellProps:ee,estimatedRowHeight:ae,expandColumnKey:re,fixedData:le,headerHeight:se,headerClass:ge,headerProps:Be,headerCellProps:te,sortBy:ce,sortState:Ie,rowHeight:Ae,rowClass:xe,rowEventHandlers:Ye,rowKey:$e,rowProps:Me,scrollbarAlwaysOn:Pe,indentSize:Ze,iconSize:ot,useIsScrolling:at,vScrollbarSize:ct,width:ye}=e,Ue=o(m),It={cache:Z,class:l.e("main"),columns:o(i),data:Ue,fixedData:le,estimatedRowHeight:ae,bodyWidth:o(S),headerHeight:se,headerWidth:o(S),height:o(u),mainTableRef:g,rowKey:$e,rowHeight:Ae,scrollbarAlwaysOn:Pe,scrollbarStartGap:2,scrollbarEndGap:ct,useIsScrolling:at,width:ye,getRowHeight:D,onRowsRendered:ne,onScroll:j},Ot=o(d),Rt=o(c),Mt={cache:Z,class:l.e("left"),columns:o(s),data:Ue,fixedData:le,estimatedRowHeight:ae,leftTableRef:b,rowHeight:Ae,bodyWidth:Ot,headerWidth:Ot,headerHeight:se,height:Rt,rowKey:$e,scrollbarAlwaysOn:Pe,scrollbarStartGap:2,scrollbarEndGap:ct,useIsScrolling:at,width:Ot,getRowHeight:D,onScroll:Q},St=o(f),je={cache:Z,class:l.e("right"),columns:o(r),data:Ue,fixedData:le,estimatedRowHeight:ae,rightTableRef:E,rowHeight:Ae,bodyWidth:St,headerWidth:St,headerHeight:se,height:Rt,rowKey:$e,scrollbarAlwaysOn:Pe,scrollbarStartGap:2,scrollbarEndGap:ct,width:St,style:`--${o(l.namespace)}-table-scrollbar-size: ${ct}px`,useIsScrolling:at,getRowHeight:D,onScroll:Q},tt=o(a),it={ns:l,depthMap:o(v),columnsStyles:tt,expandColumnKey:re,expandedRowKeys:o(h),estimatedRowHeight:ae,hasFixedColumns:o(p),rowProps:Me,rowClass:xe,rowKey:$e,rowEventHandlers:Ye,onRowHovered:B,onRowExpanded:A,onRowHeightChange:z},X={cellProps:ee,expandColumnKey:re,indentSize:Ze,iconSize:ot,rowKey:$e,expandedRowKeys:o(h),ns:l},ve={ns:l,headerClass:ge,headerProps:Be,columnsStyles:tt},q={ns:l,sortBy:ce,sortState:Ie,headerCellProps:te,onColumnSorted:L},be={row:Pt=>H(NN,et(Pt,it),{row:t.row,cell:Kt=>{let Ut;return t.cell?H(cc,et(Kt,X,{style:tt[Kt.column.key]}),Fo(Ut=t.cell(Kt))?Ut:{default:()=>[Ut]}):H(cc,et(Kt,X,{style:tt[Kt.column.key]}),null)}}),header:Pt=>H(DN,et(Pt,ve),{header:t.header,cell:Kt=>{let Ut;return t["header-cell"]?H(dc,et(Kt,q,{style:tt[Kt.column.key]}),Fo(Ut=t["header-cell"](Kt))?Ut:{default:()=>[Ut]}):H(dc,et(Kt,q,{style:tt[Kt.column.key]}),null)}})},qe=[e.class,l.b(),l.e("root"),{[l.is("dynamic")]:o(C)}],ft={class:l.e("footer"),style:o(R)};return H("div",{class:qe,style:o(M)},[H(hN,It,Fo(be)?be:{default:()=>[be]}),H(bN,Mt,Fo(be)?be:{default:()=>[be]}),H(wN,je,Fo(be)?be:{default:()=>[be]}),t.footer&&H(HN,ft,{default:t.footer}),o(N)&&H(KN,{class:l.e("empty"),style:o($)},{default:t.empty}),t.overlay&&H(WN,{class:l.e("overlay")},{default:t.overlay})])}}});var YN=UN;const qN=de({disableWidth:Boolean,disableHeight:Boolean,onResize:{type:Y(Function)}}),GN=e=>{const t=I(),n=I(0),l=I(0);let a;return Xe(()=>{a=Ft(t,([s])=>{const{width:r,height:i}=s.contentRect,{paddingLeft:u,paddingRight:c,paddingTop:d,paddingBottom:f}=getComputedStyle(s.target),m=Number.parseInt(u)||0,v=Number.parseInt(c)||0,h=Number.parseInt(d)||0,p=Number.parseInt(f)||0;n.value=r-m-v,l.value=i-h-p}).stop}),Nt(()=>{a==null||a()}),ie([n,l],([s,r])=>{var i;(i=e.onResize)==null||i.call(e,{width:s,height:r})}),{sizer:t,width:n,height:l}},XN=x({name:"ElAutoResizer",props:qN,setup(e,{slots:t}){const n=ue("auto-resizer"),{height:l,width:a,sizer:s}=GN(e),r={width:"100%",height:"100%"};return()=>{var i;return H("div",{ref:s,class:n.b(),style:r},[(i=t.default)==null?void 0:i.call(t,{height:l.value,width:a.value})])}}});var ZN=XN;const JN=He(YN),QN=He(ZN),Is=Symbol("tabsRootContextKey"),eI=de({tabs:{type:Y(Array),default:()=>Vt([])},tabRefs:{type:Y(Object),default:()=>Vt({})}}),xv="ElTabBar",tI=x({name:xv}),nI=x({...tI,props:eI,setup(e,{expose:t}){const n=e,l=we(Is);l||jt(xv,"");const a=ue("tabs"),s=I(),r=I(),i=()=>{let m=0,v=0;const h=["top","bottom"].includes(l.props.tabPosition)?"width":"height",p=h==="width"?"x":"y",g=p==="x"?"left":"top";return n.tabs.every(b=>{if(vt(b.paneName))return!1;const E=n.tabRefs[b.paneName];if(!E)return!1;if(!b.active)return!0;m=E[`offset${_l(g)}`],v=E[`client${_l(h)}`];const C=window.getComputedStyle(E);return h==="width"&&(v-=Number.parseFloat(C.paddingLeft)+Number.parseFloat(C.paddingRight),m+=Number.parseFloat(C.paddingLeft)),!1}),{[h]:`${v}px`,transform:`translate${_l(p)}(${m}px)`}},u=()=>r.value=i(),c=[],d=()=>{c.forEach(m=>m.stop()),c.length=0,Object.values(n.tabRefs).forEach(m=>{c.push(Ft(m,u))})};ie(()=>n.tabs,async()=>{await Ee(),u(),d()},{immediate:!0});const f=Ft(s,()=>u());return Nt(()=>{c.forEach(m=>m.stop()),c.length=0,f.stop()}),t({ref:s,update:u}),(m,v)=>(_(),V("div",{ref_key:"barRef",ref:s,class:T([o(a).e("active-bar"),o(a).is(o(l).props.tabPosition)]),style:_e(r.value)},null,6))}});var lI=fe(nI,[["__file","tab-bar.vue"]]);const oI=de({panes:{type:Y(Array),default:()=>Vt([])},currentName:{type:[String,Number],default:""},editable:Boolean,type:{type:String,values:["card","border-card",""],default:""},stretch:Boolean}),aI={tabClick:(e,t,n)=>n instanceof Event,tabRemove:(e,t)=>t instanceof Event},fc="ElTabNav",sI=x({name:fc,props:oI,emits:aI,setup(e,{expose:t,emit:n}){const l=we(Is);l||jt(fc,"");const a=ue("tabs"),s=Ap(),r=Fp(),i=I(),u=I(),c=I(),d=I({}),f=I(),m=I(!1),v=I(0),h=I(!1),p=I(!0),g=Lt(),b=y(()=>["top","bottom"].includes(l.props.tabPosition)?"width":"height"),E=y(()=>({transform:`translate${b.value==="width"?"X":"Y"}(-${v.value}px)`})),C=()=>{if(!i.value)return;const P=i.value[`offset${_l(b.value)}`],W=v.value;if(!W)return;const K=W>P?W-P:0;v.value=K},w=()=>{if(!i.value||!u.value)return;const P=u.value[`offset${_l(b.value)}`],W=i.value[`offset${_l(b.value)}`],K=v.value;if(P-K<=W)return;const D=P-K>W*2?K+W:P-W;v.value=D},k=async()=>{const P=u.value;if(!m.value||!c.value||!i.value||!P)return;await Ee();const W=d.value[e.currentName];if(!W)return;const K=i.value,D=["top","bottom"].includes(l.props.tabPosition),L=W.getBoundingClientRect(),z=K.getBoundingClientRect(),B=D?P.offsetWidth-z.width:P.offsetHeight-z.height,A=v.value;let ne=A;D?(L.leftz.right&&(ne=A+L.right-z.right)):(L.topz.bottom&&(ne=A+(L.bottom-z.bottom))),ne=Math.max(ne,0),v.value=Math.min(ne,B)},S=()=>{var P;if(!u.value||!i.value)return;e.stretch&&((P=f.value)==null||P.update());const W=u.value[`offset${_l(b.value)}`],K=i.value[`offset${_l(b.value)}`],D=v.value;K0&&(v.value=0))},$=P=>{let W=0;switch(P.code){case Ce.left:case Ce.up:W=-1;break;case Ce.right:case Ce.down:W=1;break;default:return}const K=Array.from(P.currentTarget.querySelectorAll("[role=tab]:not(.is-disabled)"));let L=K.indexOf(P.target)+W;L<0?L=K.length-1:L>=K.length&&(L=0),K[L].focus({preventScroll:!0}),K[L].click(),M()},M=()=>{p.value&&(h.value=!0)},R=()=>h.value=!1,N=(P,W)=>{d.value[W]=P},O=async()=>{await Ee();const P=d.value[e.currentName];P==null||P.focus({preventScroll:!0})};return ie(s,P=>{P==="hidden"?p.value=!1:P==="visible"&&setTimeout(()=>p.value=!0,50)}),ie(r,P=>{P?setTimeout(()=>p.value=!0,50):p.value=!1}),Ft(c,S),Xe(()=>setTimeout(()=>k(),0)),hl(()=>S()),t({scrollToActiveTab:k,removeFocus:R,focusActiveTab:O,tabListRef:u,tabBarRef:f,scheduleRender:()=>Oa(g)}),()=>{const P=m.value?[H("span",{class:[a.e("nav-prev"),a.is("disabled",!m.value.prev)],onClick:C},[H(Se,null,{default:()=>[H(dl,null,null)]})]),H("span",{class:[a.e("nav-next"),a.is("disabled",!m.value.next)],onClick:w},[H(Se,null,{default:()=>[H(Cn,null,null)]})])]:null,W=e.panes.map((K,D)=>{var L,z,B,A;const ne=K.uid,j=K.props.disabled,Q=(z=(L=K.props.name)!=null?L:K.index)!=null?z:`${D}`,Z=!j&&(K.isClosable||e.editable);K.index=`${D}`;const ee=Z?H(Se,{class:"is-icon-close",onClick:le=>n("tabRemove",K,le)},{default:()=>[H(zn,null,null)]}):null,ae=((A=(B=K.slots).label)==null?void 0:A.call(B))||K.props.label,re=!j&&K.active?0:-1;return H("div",{ref:le=>N(le,Q),class:[a.e("item"),a.is(l.props.tabPosition),a.is("active",K.active),a.is("disabled",j),a.is("closable",Z),a.is("focus",h.value)],id:`tab-${Q}`,key:`tab-${ne}`,"aria-controls":`pane-${Q}`,role:"tab","aria-selected":K.active,tabindex:re,onFocus:()=>M(),onBlur:()=>R(),onClick:le=>{R(),n("tabClick",K,Q,le)},onKeydown:le=>{Z&&(le.code===Ce.delete||le.code===Ce.backspace)&&n("tabRemove",K,le)}},[ae,ee])});return g.value,H("div",{ref:c,class:[a.e("nav-wrap"),a.is("scrollable",!!m.value),a.is(l.props.tabPosition)]},[P,H("div",{class:a.e("nav-scroll"),ref:i},[e.panes.length>0?H("div",{class:[a.e("nav"),a.is(l.props.tabPosition),a.is("stretch",e.stretch&&["top","bottom"].includes(l.props.tabPosition))],ref:u,style:E.value,role:"tablist",onKeydown:$},[e.type?null:H(lI,{ref:f,tabs:[...e.panes],tabRefs:d.value},null),W]):null])])}}}),rI=de({type:{type:String,values:["card","border-card",""],default:""},closable:Boolean,addable:Boolean,modelValue:{type:[String,Number]},editable:Boolean,tabPosition:{type:String,values:["top","right","bottom","left"],default:"top"},beforeLeave:{type:Y(Function),default:()=>!0},stretch:Boolean}),Zs=e=>Ve(e)||Te(e),iI={[De]:e=>Zs(e),tabClick:(e,t)=>t instanceof Event,tabChange:e=>Zs(e),edit:(e,t)=>["remove","add"].includes(t),tabRemove:e=>Zs(e),tabAdd:()=>!0},uI=x({name:"ElTabs",props:rI,emits:iI,setup(e,{emit:t,slots:n,expose:l}){var a;const s=ue("tabs"),r=y(()=>["left","right"].includes(e.tabPosition)),{children:i,addChild:u,removeChild:c,ChildrenSorter:d}=ks(lt(),"ElTabPane"),f=I(),m=I((a=e.modelValue)!=null?a:"0"),v=async(E,C=!1)=>{var w,k,S,$;if(!(m.value===E||vt(E)))try{let M;if(e.beforeLeave){const R=e.beforeLeave(E,m.value);M=R instanceof Promise?await R:R}else M=!0;if(M!==!1){const R=(w=i.value.find(N=>N.paneName===m.value))==null?void 0:w.isFocusInsidePane();m.value=E,C&&(t(De,E),t("tabChange",E)),(S=(k=f.value)==null?void 0:k.removeFocus)==null||S.call(k),R&&(($=f.value)==null||$.focusActiveTab())}}catch{}},h=(E,C,w)=>{E.props.disabled||(t("tabClick",E,w),v(C,!0))},p=(E,C)=>{E.props.disabled||vt(E.props.name)||(C.stopPropagation(),t("edit",E.props.name,"remove"),t("tabRemove",E.props.name))},g=()=>{t("edit",void 0,"add"),t("tabAdd")},b=E=>{const C=E.el.firstChild,w=["bottom","right"].includes(e.tabPosition)?E.children[0].el:E.children[1].el;C!==w&&C.before(w)};return ie(()=>e.modelValue,E=>v(E)),ie(m,async()=>{var E;await Ee(),(E=f.value)==null||E.scrollToActiveTab()}),rt(Is,{props:e,currentName:m,registerPane:u,unregisterPane:c,nav$:f}),l({currentName:m,get tabNavRef(){return xc(f.value,["scheduleRender"])}}),()=>{const E=n["add-icon"],C=e.editable||e.addable?H("div",{class:[s.e("new-tab"),r.value&&s.e("new-tab-vertical")],tabindex:"0",onClick:g,onKeydown:$=>{[Ce.enter,Ce.numpadEnter].includes($.code)&&g()}},[E?G(n,"add-icon"):H(Se,{class:s.is("icon-plus")},{default:()=>[H(ud,null,null)]})]):null,w=()=>H(sI,{ref:f,currentName:m.value,editable:e.editable,type:e.type,panes:i.value,stretch:e.stretch,onTabClick:h,onTabRemove:p},null),k=H("div",{class:[s.e("header"),r.value&&s.e("header-vertical"),s.is(e.tabPosition)]},[H(d,null,{default:w,$stable:!0}),C]),S=H("div",{class:s.e("content")},[G(n,"default")]);return H("div",{class:[s.b(),s.m(e.tabPosition),{[s.m("card")]:e.type==="card",[s.m("border-card")]:e.type==="border-card"}],onVnodeMounted:b,onVnodeUpdated:b},[S,k])}}});var cI=uI;const dI=de({label:{type:String,default:""},name:{type:[String,Number]},closable:Boolean,disabled:Boolean,lazy:Boolean}),zv="ElTabPane",fI=x({name:zv}),vI=x({...fI,props:dI,setup(e){const t=e,n=lt(),l=Xt(),a=we(Is);a||jt(zv,"usage: ");const s=ue("tab-pane"),r=I(),i=I(),u=y(()=>t.closable||a.props.closable),c=Ha(()=>{var p;return a.currentName.value===((p=t.name)!=null?p:i.value)}),d=I(c.value),f=y(()=>{var p;return(p=t.name)!=null?p:i.value}),m=Ha(()=>!t.lazy||d.value||c.value),v=()=>{var p;return(p=r.value)==null?void 0:p.contains(document.activeElement)};ie(c,p=>{p&&(d.value=!0)});const h=kt({uid:n.uid,getVnode:()=>n.vnode,slots:l,props:t,paneName:f,active:c,index:i,isClosable:u,isFocusInsidePane:v});return a.registerPane(h),Nt(()=>{a.unregisterPane(h)}),Pc(()=>{var p;l.label&&((p=a.nav$.value)==null||p.scheduleRender())}),(p,g)=>o(m)?We((_(),V("div",{key:0,id:`pane-${o(f)}`,ref_key:"paneRef",ref:r,class:T(o(s).b()),role:"tabpanel","aria-hidden":!o(c),"aria-labelledby":`tab-${o(f)}`},[G(p.$slots,"default")],10,["id","aria-hidden","aria-labelledby"])),[[mt,o(c)]]):J("v-if",!0)}});var Hv=fe(vI,[["__file","tab-pane.vue"]]);const pI=He(cI,{TabPane:Hv}),hI=At(Hv),mI=de({type:{type:String,values:["primary","success","info","warning","danger",""],default:""},size:{type:String,values:tl,default:""},truncated:Boolean,lineClamp:{type:[String,Number]},tag:{type:String,default:"span"}}),gI=x({name:"ElText"}),bI=x({...gI,props:mI,setup(e){const t=e,n=I(),l=Gt(),a=ue("text"),s=y(()=>[a.b(),a.m(t.type),a.m(l.value),a.is("truncated",t.truncated),a.is("line-clamp",!vt(t.lineClamp))]),r=()=>{var i,u,c,d,f,m,v;if(pl().title)return;let p=!1;const g=((i=n.value)==null?void 0:i.textContent)||"";if(t.truncated){const b=(u=n.value)==null?void 0:u.offsetWidth,E=(c=n.value)==null?void 0:c.scrollWidth;b&&E&&E>b&&(p=!0)}else if(!vt(t.lineClamp)){const b=(d=n.value)==null?void 0:d.offsetHeight,E=(f=n.value)==null?void 0:f.scrollHeight;b&&E&&E>b&&(p=!0)}p?(m=n.value)==null||m.setAttribute("title",g):(v=n.value)==null||v.removeAttribute("title")};return Xe(r),hl(r),(i,u)=>(_(),oe(Ge(i.tag),{ref_key:"textRef",ref:n,class:T(o(s)),style:_e({"-webkit-line-clamp":i.lineClamp})},{default:U(()=>[G(i.$slots,"default")]),_:3},8,["class","style"]))}});var yI=fe(bI,[["__file","text.vue"]]);const zi=He(yI),CI=de({format:{type:String,default:"HH:mm"},modelValue:String,disabled:Boolean,editable:{type:Boolean,default:!0},effect:{type:Y(String),default:"light"},clearable:{type:Boolean,default:!0},size:Jt,placeholder:String,start:{type:String,default:"09:00"},end:{type:String,default:"18:00"},step:{type:String,default:"00:30"},minTime:String,maxTime:String,includeEndTime:Boolean,name:String,prefixIcon:{type:Y([String,Object]),default:()=>id},clearIcon:{type:Y([String,Object]),default:()=>ml},...Zl}),il=e=>{const t=(e||"").split(":");if(t.length>=2){let n=Number.parseInt(t[0],10);const l=Number.parseInt(t[1],10),a=e.toUpperCase();return a.includes("AM")&&n===12?n=0:a.includes("PM")&&n!==12&&(n+=12),{hours:n,minutes:l}}return null},Js=(e,t)=>{const n=il(e);if(!n)return-1;const l=il(t);if(!l)return-1;const a=n.minutes+n.hours*60,s=l.minutes+l.hours*60;return a===s?0:a>s?1:-1},vc=e=>`${e}`.padStart(2,"0"),co=e=>`${vc(e.hours)}:${vc(e.minutes)}`,wI=(e,t)=>{const n=il(e);if(!n)return"";const l=il(t);if(!l)return"";const a={hours:n.hours,minutes:n.minutes};return a.minutes+=l.minutes,a.hours+=l.hours,a.hours+=Math.floor(a.minutes/60),a.minutes=a.minutes%60,co(a)},kI=x({name:"ElTimeSelect"}),SI=x({...kI,props:CI,emits:[nt,"blur","focus","clear",De],setup(e,{expose:t}){const n=e;Ke.extend(Hr);const{Option:l}=ql,a=ue("input"),s=I(),r=fn(),{lang:i}=pt(),u=y(()=>n.modelValue),c=y(()=>{const b=il(n.start);return b?co(b):null}),d=y(()=>{const b=il(n.end);return b?co(b):null}),f=y(()=>{const b=il(n.step);return b?co(b):null}),m=y(()=>{const b=il(n.minTime||"");return b?co(b):null}),v=y(()=>{const b=il(n.maxTime||"");return b?co(b):null}),h=y(()=>{var b;const E=[],C=(w,k)=>{E.push({value:w,disabled:Js(k,m.value||"-1:-1")<=0||Js(k,v.value||"100:100")>=0})};if(n.start&&n.end&&n.step){let w=c.value,k;for(;w&&d.value&&Js(w,d.value)<=0;)k=Ke(w,"HH:mm").locale(i.value).format(n.format),C(k,w),w=wI(w,f.value);if(n.includeEndTime&&d.value&&((b=E[E.length-1])==null?void 0:b.value)!==d.value){const S=Ke(d.value,"HH:mm").locale(i.value).format(n.format);C(S,d.value)}}return E});return t({blur:()=>{var b,E;(E=(b=s.value)==null?void 0:b.blur)==null||E.call(b)},focus:()=>{var b,E;(E=(b=s.value)==null?void 0:b.focus)==null||E.call(b)}}),(b,E)=>(_(),oe(o(ql),{ref_key:"select",ref:s,"model-value":o(u),disabled:o(r),clearable:b.clearable,"clear-icon":b.clearIcon,size:b.size,effect:b.effect,placeholder:b.placeholder,"default-first-option":"",filterable:b.editable,"empty-values":b.emptyValues,"value-on-clear":b.valueOnClear,"onUpdate:modelValue":C=>b.$emit(o(De),C),onChange:C=>b.$emit(o(nt),C),onBlur:C=>b.$emit("blur",C),onFocus:C=>b.$emit("focus",C),onClear:()=>b.$emit("clear")},{prefix:U(()=>[b.prefixIcon?(_(),oe(o(Se),{key:0,class:T(o(a).e("prefix-icon"))},{default:U(()=>[(_(),oe(Ge(b.prefixIcon)))]),_:1},8,["class"])):J("v-if",!0)]),default:U(()=>[(_(!0),V(Oe,null,ut(o(h),C=>(_(),oe(o(l),{key:C.value,label:C.value,value:C.value,disabled:C.disabled},null,8,["label","value","disabled"]))),128))]),_:1},8,["model-value","disabled","clearable","clear-icon","size","effect","placeholder","filterable","empty-values","value-on-clear","onUpdate:modelValue","onChange","onBlur","onFocus","onClear"]))}});var EI=fe(SI,[["__file","time-select.vue"]]);const _I=He(EI),TI="timeline",$I=x({name:"ElTimeline",setup(e,{slots:t}){const n=ue("timeline");return rt(TI,t),()=>Re("ul",{class:[n.b()]},[G(t,"default")])}}),NI=de({timestamp:{type:String,default:""},hideTimestamp:Boolean,center:Boolean,placement:{type:String,values:["top","bottom"],default:"bottom"},type:{type:String,values:["primary","success","warning","danger","info"],default:""},color:{type:String,default:""},size:{type:String,values:["normal","large"],default:"normal"},icon:{type:$t},hollow:Boolean}),II=x({name:"ElTimelineItem"}),MI=x({...II,props:NI,setup(e){const t=e,n=ue("timeline-item"),l=y(()=>[n.e("node"),n.em("node",t.size||""),n.em("node",t.type||""),n.is("hollow",t.hollow)]);return(a,s)=>(_(),V("li",{class:T([o(n).b(),{[o(n).e("center")]:a.center}])},[F("div",{class:T(o(n).e("tail"))},null,2),a.$slots.dot?J("v-if",!0):(_(),V("div",{key:0,class:T(o(l)),style:_e({backgroundColor:a.color})},[a.icon?(_(),oe(o(Se),{key:0,class:T(o(n).e("icon"))},{default:U(()=>[(_(),oe(Ge(a.icon)))]),_:1},8,["class"])):J("v-if",!0)],6)),a.$slots.dot?(_(),V("div",{key:1,class:T(o(n).e("dot"))},[G(a.$slots,"dot")],2)):J("v-if",!0),F("div",{class:T(o(n).e("wrapper"))},[!a.hideTimestamp&&a.placement==="top"?(_(),V("div",{key:0,class:T([o(n).e("timestamp"),o(n).is("top")])},pe(a.timestamp),3)):J("v-if",!0),F("div",{class:T(o(n).e("content"))},[G(a.$slots,"default")],2),!a.hideTimestamp&&a.placement==="bottom"?(_(),V("div",{key:1,class:T([o(n).e("timestamp"),o(n).is("bottom")])},pe(a.timestamp),3)):J("v-if",!0)],2)],2))}});var Kv=fe(MI,[["__file","timeline-item.vue"]]);const RI=He($I,{TimelineItem:Kv}),PI=At(Kv),Wv=de({nowrap:Boolean});var jv=(e=>(e.top="top",e.bottom="bottom",e.left="left",e.right="right",e))(jv||{});const OI=Object.values(jv),Hi=de({width:{type:Number,default:10},height:{type:Number,default:10},style:{type:Y(Object),default:null}}),LI=de({side:{type:Y(String),values:OI,required:!0}}),BI=["absolute","fixed"],VI=["top-start","top-end","top","bottom-start","bottom-end","bottom","left-start","left-end","left","right-start","right-end","right"],Ki=de({arrowPadding:{type:Y(Number),default:5},effect:{type:Y(String),default:"light"},contentClass:String,placement:{type:Y(String),values:VI,default:"bottom"},reference:{type:Y(Object),default:null},offset:{type:Number,default:8},strategy:{type:Y(String),values:BI,default:"absolute"},showArrow:Boolean,...cn(["ariaLabel"])}),Wi=de({delayDuration:{type:Number,default:300},defaultOpen:Boolean,open:{type:Boolean,default:void 0},onOpenChange:{type:Y(Function)},"onUpdate:open":{type:Y(Function)}}),so={type:Y(Function)},ji=de({onBlur:so,onClick:so,onFocus:so,onMouseDown:so,onMouseEnter:so,onMouseLeave:so}),DI=de({...Wi,...Hi,...ji,...Ki,alwaysOn:Boolean,fullTransition:Boolean,transitionProps:{type:Y(Object),default:null},teleported:Boolean,to:{type:Y([String,Object]),default:"body"}}),Ms=Symbol("tooltipV2"),Uv=Symbol("tooltipV2Content"),Qs="tooltip_v2.open",AI=x({name:"ElTooltipV2Root"}),FI=x({...AI,props:Wi,setup(e,{expose:t}){const n=e,l=I(n.defaultOpen),a=I(null),s=y({get:()=>In(n.open)?l.value:n.open,set:g=>{var b;l.value=g,(b=n["onUpdate:open"])==null||b.call(n,g)}}),r=y(()=>Te(n.delayDuration)&&n.delayDuration>0),{start:i,stop:u}=Ul(()=>{s.value=!0},y(()=>n.delayDuration),{immediate:!1}),c=ue("tooltip-v2"),d=sn(),f=()=>{u(),s.value=!0},m=()=>{o(r)?i():f()},v=f,h=()=>{u(),s.value=!1};return ie(s,g=>{var b;g&&(document.dispatchEvent(new CustomEvent(Qs)),v()),(b=n.onOpenChange)==null||b.call(n,g)}),Xe(()=>{document.addEventListener(Qs,h)}),Nt(()=>{u(),document.removeEventListener(Qs,h)}),rt(Ms,{contentId:d,triggerRef:a,ns:c,onClose:h,onDelayOpen:m,onOpen:v}),t({onOpen:v,onClose:h}),(g,b)=>G(g.$slots,"default",{open:o(s)})}});var xI=fe(FI,[["__file","root.vue"]]);const zI=x({name:"ElTooltipV2Arrow"}),HI=x({...zI,props:{...Hi,...LI},setup(e){const t=e,{ns:n}=we(Ms),{arrowRef:l}=we(Uv),a=y(()=>{const{style:s,width:r,height:i}=t,u=n.namespace.value;return{[`--${u}-tooltip-v2-arrow-width`]:`${r}px`,[`--${u}-tooltip-v2-arrow-height`]:`${i}px`,[`--${u}-tooltip-v2-arrow-border-width`]:`${r/2}px`,[`--${u}-tooltip-v2-arrow-cover-width`]:r/2-1,...s||{}}});return(s,r)=>(_(),V("span",{ref_key:"arrowRef",ref:l,style:_e(o(a)),class:T(o(n).e("arrow"))},null,6))}});var pc=fe(HI,[["__file","arrow.vue"]]);const KI=de({style:{type:Y([String,Object,Array]),default:()=>({})}}),WI=x({name:"ElVisuallyHidden"}),jI=x({...WI,props:KI,setup(e){const t=e,n=y(()=>[t.style,{position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}]);return(l,a)=>(_(),V("span",et(l.$attrs,{style:o(n)}),[G(l.$slots,"default")],16))}});var UI=fe(jI,[["__file","visual-hidden.vue"]]);de({});const YI=e=>{if(!bt)return;if(!e)return e;const t=ua(e);return t||(gn(e)?t:e)},qI=({middleware:e,placement:t,strategy:n})=>{const l=I(),a=I(),s=I(),r=I(),i=I({}),u={x:s,y:r,placement:t,strategy:n,middlewareData:i},c=async()=>{if(!bt)return;const d=YI(l),f=ua(a);if(!d||!f)return;const m=await Hc(d,f,{placement:o(t),strategy:o(n),middleware:o(e)});ko(u).forEach(v=>{u[v].value=m[v]})};return Xe(()=>{bn(()=>{c()})}),{...u,update:c,referenceRef:l,contentRef:a}},GI=({arrowRef:e,padding:t})=>({name:"arrow",options:{element:e,padding:t},fn(n){const l=o(e);return l?zc({element:l,padding:t}).fn(n):{}}}),XI=x({name:"ElTooltipV2Content"}),ZI=x({...XI,props:{...Ki,...Wv},setup(e){const t=e,{triggerRef:n,contentId:l}=we(Ms),a=I(t.placement),s=I(t.strategy),r=I(null),{referenceRef:i,contentRef:u,middlewareData:c,x:d,y:f,update:m}=qI({placement:a,strategy:s,middleware:y(()=>{const C=[Kc(t.offset)];return t.showArrow&&C.push(GI({arrowRef:r})),C})}),v=Mo().nextZIndex(),h=ue("tooltip-v2"),p=y(()=>a.value.split("-")[0]),g=y(()=>({position:o(s),top:`${o(f)||0}px`,left:`${o(d)||0}px`,zIndex:v})),b=y(()=>{if(!t.showArrow)return{};const{arrow:C}=o(c);return{[`--${h.namespace.value}-tooltip-v2-arrow-x`]:`${C==null?void 0:C.x}px`||"",[`--${h.namespace.value}-tooltip-v2-arrow-y`]:`${C==null?void 0:C.y}px`||""}}),E=y(()=>[h.e("content"),h.is("dark",t.effect==="dark"),h.is(o(s)),t.contentClass]);return ie(r,()=>m()),ie(()=>t.placement,C=>a.value=C),Xe(()=>{ie(()=>t.reference||n.value,C=>{i.value=C||void 0},{immediate:!0})}),rt(Uv,{arrowRef:r}),(C,w)=>(_(),V("div",{ref_key:"contentRef",ref:u,style:_e(o(g)),"data-tooltip-v2-root":""},[C.nowrap?J("v-if",!0):(_(),V("div",{key:0,"data-side":o(p),class:T(o(E))},[G(C.$slots,"default",{contentStyle:o(g),contentClass:o(E)}),H(o(UI),{id:o(l),role:"tooltip"},{default:U(()=>[C.ariaLabel?(_(),V(Oe,{key:0},[st(pe(C.ariaLabel),1)],64)):G(C.$slots,"default",{key:1})]),_:3},8,["id"]),G(C.$slots,"arrow",{style:_e(o(b)),side:o(p)})],10,["data-side"]))],4))}});var hc=fe(ZI,[["__file","content.vue"]]);const JI=de({setRef:{type:Y(Function),required:!0},onlyChild:Boolean});var QI=x({props:JI,setup(e,{slots:t}){const n=I(),l=_s(n,a=>{a?e.setRef(a.nextElementSibling):e.setRef(null)});return()=>{var a;const[s]=((a=t.default)==null?void 0:a.call(t))||[],r=e.onlyChild?Q0(s.children):s.children;return H(Oe,{ref:l},[r])}}});const e4=x({name:"ElTooltipV2Trigger"}),t4=x({...e4,props:{...Wv,...ji},setup(e){const t=e,{onClose:n,onOpen:l,onDelayOpen:a,triggerRef:s,contentId:r}=we(Ms);let i=!1;const u=E=>{s.value=E},c=()=>{i=!1},d=Ht(t.onMouseEnter,a),f=Ht(t.onMouseLeave,n),m=Ht(t.onMouseDown,()=>{n(),i=!0,document.addEventListener("mouseup",c,{once:!0})}),v=Ht(t.onFocus,()=>{i||l()}),h=Ht(t.onBlur,n),p=Ht(t.onClick,E=>{E.detail===0&&n()}),g={blur:h,click:p,focus:v,mousedown:m,mouseenter:d,mouseleave:f},b=(E,C,w)=>{E&&Object.entries(C).forEach(([k,S])=>{E[w](k,S)})};return ie(s,(E,C)=>{b(E,g,"addEventListener"),b(C,g,"removeEventListener"),E&&E.setAttribute("aria-describedby",r.value)}),Nt(()=>{b(s.value,g,"removeEventListener"),document.removeEventListener("mouseup",c)}),(E,C)=>E.nowrap?(_(),oe(o(QI),{key:0,"set-ref":u,"only-child":""},{default:U(()=>[G(E.$slots,"default")]),_:3})):(_(),V("button",et({key:1,ref_key:"triggerRef",ref:s},E.$attrs),[G(E.$slots,"default")],16))}});var n4=fe(t4,[["__file","trigger.vue"]]);const l4=x({name:"ElTooltipV2"}),o4=x({...l4,props:DI,setup(e){const n=nn(e),l=kt(An(n,Object.keys(Hi))),a=kt(An(n,Object.keys(Ki))),s=kt(An(n,Object.keys(Wi))),r=kt(An(n,Object.keys(ji)));return(i,u)=>(_(),oe(xI,On(cl(s)),{default:U(({open:c})=>[H(n4,et(r,{nowrap:""}),{default:U(()=>[G(i.$slots,"trigger")]),_:3},16),H(o(Po),{to:i.to,disabled:!i.teleported},{default:U(()=>[i.fullTransition?(_(),oe(an,On(et({key:0},i.transitionProps)),{default:U(()=>[i.alwaysOn||c?(_(),oe(hc,On(et({key:0},a)),{arrow:U(({style:d,side:f})=>[i.showArrow?(_(),oe(pc,et({key:0},l,{style:d,side:f}),null,16,["style","side"])):J("v-if",!0)]),default:U(()=>[G(i.$slots,"default")]),_:3},16)):J("v-if",!0)]),_:2},1040)):(_(),V(Oe,{key:1},[i.alwaysOn||c?(_(),oe(hc,On(et({key:0},a)),{arrow:U(({style:d,side:f})=>[i.showArrow?(_(),oe(pc,et({key:0},l,{style:d,side:f}),null,16,["style","side"])):J("v-if",!0)]),default:U(()=>[G(i.$slots,"default")]),_:3},16)):J("v-if",!0)],64))]),_:2},1032,["to","disabled"])]),_:3},16))}});var a4=fe(o4,[["__file","tooltip.vue"]]);const s4=He(a4),Yv="left-check-change",qv="right-check-change",fo=de({data:{type:Y(Array),default:()=>[]},titles:{type:Y(Array),default:()=>[]},buttonTexts:{type:Y(Array),default:()=>[]},filterPlaceholder:String,filterMethod:{type:Y(Function)},leftDefaultChecked:{type:Y(Array),default:()=>[]},rightDefaultChecked:{type:Y(Array),default:()=>[]},renderContent:{type:Y(Function)},modelValue:{type:Y(Array),default:()=>[]},format:{type:Y(Object),default:()=>({})},filterable:Boolean,props:{type:Y(Object),default:()=>Vt({label:"label",key:"key",disabled:"disabled"})},targetOrder:{type:String,values:["original","push","unshift"],default:"original"},validateEvent:{type:Boolean,default:!0}}),Nr=(e,t)=>[e,t].every(ke)||ke(e)&&qt(t),r4={[nt]:(e,t,n)=>[e,n].every(ke)&&["left","right"].includes(t),[De]:e=>ke(e),[Yv]:Nr,[qv]:Nr},Ir="checked-change",i4=de({data:fo.data,optionRender:{type:Y(Function)},placeholder:String,title:String,filterable:Boolean,format:fo.format,filterMethod:fo.filterMethod,defaultChecked:fo.leftDefaultChecked,props:fo.props}),u4={[Ir]:Nr},ba=e=>{const t={label:"label",key:"key",disabled:"disabled"};return y(()=>({...t,...e.props}))},c4=(e,t,n)=>{const l=ba(e),a=y(()=>e.data.filter(d=>Qe(e.filterMethod)?e.filterMethod(t.query,d):String(d[l.value.label]||d[l.value.key]).toLowerCase().includes(t.query.toLowerCase()))),s=y(()=>a.value.filter(d=>!d[l.value.disabled])),r=y(()=>{const d=t.checked.length,f=e.data.length,{noChecked:m,hasChecked:v}=e.format;return m&&v?d>0?v.replace(/\${checked}/g,d.toString()).replace(/\${total}/g,f.toString()):m.replace(/\${total}/g,f.toString()):`${d}/${f}`}),i=y(()=>{const d=t.checked.length;return d>0&&d{const d=s.value.map(f=>f[l.value.key]);t.allChecked=d.length>0&&d.every(f=>t.checked.includes(f))},c=d=>{t.checked=d?s.value.map(f=>f[l.value.key]):[]};return ie(()=>t.checked,(d,f)=>{if(u(),t.checkChangeByUser){const m=d.concat(f).filter(v=>!d.includes(v)||!f.includes(v));n(Ir,d,m)}else n(Ir,d),t.checkChangeByUser=!0}),ie(s,()=>{u()}),ie(()=>e.data,()=>{const d=[],f=a.value.map(m=>m[l.value.key]);t.checked.forEach(m=>{f.includes(m)&&d.push(m)}),t.checkChangeByUser=!1,t.checked=d}),ie(()=>e.defaultChecked,(d,f)=>{if(f&&d.length===f.length&&d.every(h=>f.includes(h)))return;const m=[],v=s.value.map(h=>h[l.value.key]);d.forEach(h=>{v.includes(h)&&m.push(h)}),t.checkChangeByUser=!1,t.checked=m},{immediate:!0}),{filteredData:a,checkableData:s,checkedSummary:r,isIndeterminate:i,updateAllChecked:u,handleAllCheckedChange:c}},d4=x({name:"ElTransferPanel"}),f4=x({...d4,props:i4,emits:u4,setup(e,{expose:t,emit:n}){const l=e,a=Xt(),s=({option:C})=>C,{t:r}=pt(),i=ue("transfer"),u=kt({checked:[],allChecked:!1,query:"",checkChangeByUser:!0}),c=ba(l),{filteredData:d,checkedSummary:f,isIndeterminate:m,handleAllCheckedChange:v}=c4(l,u,n),h=y(()=>!Pn(u.query)&&Pn(d.value)),p=y(()=>!Pn(a.default()[0].children)),{checked:g,allChecked:b,query:E}=nn(u);return t({query:E}),(C,w)=>(_(),V("div",{class:T(o(i).b("panel"))},[F("p",{class:T(o(i).be("panel","header"))},[H(o(Hn),{modelValue:o(b),"onUpdate:modelValue":k=>gn(b)?b.value=k:null,indeterminate:o(m),"validate-event":!1,onChange:o(v)},{default:U(()=>[st(pe(C.title)+" ",1),F("span",null,pe(o(f)),1)]),_:1},8,["modelValue","onUpdate:modelValue","indeterminate","onChange"])],2),F("div",{class:T([o(i).be("panel","body"),o(i).is("with-footer",o(p))])},[C.filterable?(_(),oe(o(hn),{key:0,modelValue:o(E),"onUpdate:modelValue":k=>gn(E)?E.value=k:null,class:T(o(i).be("panel","filter")),size:"default",placeholder:C.placeholder,"prefix-icon":o(Rm),clearable:"","validate-event":!1},null,8,["modelValue","onUpdate:modelValue","class","placeholder","prefix-icon"])):J("v-if",!0),We(H(o(Yd),{modelValue:o(g),"onUpdate:modelValue":k=>gn(g)?g.value=k:null,"validate-event":!1,class:T([o(i).is("filterable",C.filterable),o(i).be("panel","list")])},{default:U(()=>[(_(!0),V(Oe,null,ut(o(d),k=>(_(),oe(o(Hn),{key:k[o(c).key],class:T(o(i).be("panel","item")),value:k[o(c).key],disabled:k[o(c).disabled],"validate-event":!1},{default:U(()=>{var S;return[H(s,{option:(S=C.optionRender)==null?void 0:S.call(C,k)},null,8,["option"])]}),_:2},1032,["class","value","disabled"]))),128))]),_:1},8,["modelValue","onUpdate:modelValue","class"]),[[mt,!o(h)&&!o(Pn)(C.data)]]),We(F("div",{class:T(o(i).be("panel","empty"))},[G(C.$slots,"empty",{},()=>[st(pe(o(h)?o(r)("el.transfer.noMatch"):o(r)("el.transfer.noData")),1)])],2),[[mt,o(h)||o(Pn)(C.data)]])],2),o(p)?(_(),V("p",{key:0,class:T(o(i).be("panel","footer"))},[G(C.$slots,"default")],2)):J("v-if",!0)],2))}});var mc=fe(f4,[["__file","transfer-panel.vue"]]);const v4=e=>{const t=ba(e),n=y(()=>e.data.reduce((s,r)=>(s[r[t.value.key]]=r)&&s,{})),l=y(()=>e.data.filter(s=>!e.modelValue.includes(s[t.value.key]))),a=y(()=>e.targetOrder==="original"?e.data.filter(s=>e.modelValue.includes(s[t.value.key])):e.modelValue.reduce((s,r)=>{const i=n.value[r];return i&&s.push(i),s},[]));return{sourceData:l,targetData:a}},p4=(e,t,n)=>{const l=ba(e),a=(i,u,c)=>{n(De,i),n(nt,i,u,c)};return{addToLeft:()=>{const i=e.modelValue.slice();t.rightChecked.forEach(u=>{const c=i.indexOf(u);c>-1&&i.splice(c,1)}),a(i,"left",t.rightChecked)},addToRight:()=>{let i=e.modelValue.slice();const u=e.data.filter(c=>{const d=c[l.value.key];return t.leftChecked.includes(d)&&!e.modelValue.includes(d)}).map(c=>c[l.value.key]);i=e.targetOrder==="unshift"?u.concat(i):i.concat(u),e.targetOrder==="original"&&(i=e.data.filter(c=>i.includes(c[l.value.key])).map(c=>c[l.value.key])),a(i,"right",t.leftChecked)}}},h4=(e,t)=>({onSourceCheckedChange:(a,s)=>{e.leftChecked=a,s&&t(Yv,a,s)},onTargetCheckedChange:(a,s)=>{e.rightChecked=a,s&&t(qv,a,s)}}),m4=x({name:"ElTransfer"}),g4=x({...m4,props:fo,emits:r4,setup(e,{expose:t,emit:n}){const l=e,a=Xt(),{t:s}=pt(),r=ue("transfer"),{formItem:i}=dn(),u=kt({leftChecked:[],rightChecked:[]}),c=ba(l),{sourceData:d,targetData:f}=v4(l),{onSourceCheckedChange:m,onTargetCheckedChange:v}=h4(u,n),{addToLeft:h,addToRight:p}=p4(l,u,n),g=I(),b=I(),E=M=>{switch(M){case"left":g.value.query="";break;case"right":b.value.query="";break}},C=y(()=>l.buttonTexts.length===2),w=y(()=>l.titles[0]||s("el.transfer.titles.0")),k=y(()=>l.titles[1]||s("el.transfer.titles.1")),S=y(()=>l.filterPlaceholder||s("el.transfer.filterPlaceholder"));ie(()=>l.modelValue,()=>{var M;l.validateEvent&&((M=i==null?void 0:i.validate)==null||M.call(i,"change").catch(R=>void 0))});const $=y(()=>M=>{var R;if(l.renderContent)return l.renderContent(Re,M);const N=(((R=a.default)==null?void 0:R.call(a,{option:M}))||[]).filter(O=>O.type!==jl);return N.length?N:Re("span",M[c.value.label]||M[c.value.key])});return t({clearQuery:E,leftPanel:g,rightPanel:b}),(M,R)=>(_(),V("div",{class:T(o(r).b())},[H(mc,{ref_key:"leftPanel",ref:g,data:o(d),"option-render":o($),placeholder:o(S),title:o(w),filterable:M.filterable,format:M.format,"filter-method":M.filterMethod,"default-checked":M.leftDefaultChecked,props:l.props,onCheckedChange:o(m)},{empty:U(()=>[G(M.$slots,"left-empty")]),default:U(()=>[G(M.$slots,"left-footer")]),_:3},8,["data","option-render","placeholder","title","filterable","format","filter-method","default-checked","props","onCheckedChange"]),F("div",{class:T(o(r).e("buttons"))},[H(o(on),{type:"primary",class:T([o(r).e("button"),o(r).is("with-texts",o(C))]),disabled:o(Pn)(u.rightChecked),onClick:o(h)},{default:U(()=>[H(o(Se),null,{default:U(()=>[H(o(dl))]),_:1}),o(vt)(M.buttonTexts[0])?J("v-if",!0):(_(),V("span",{key:0},pe(M.buttonTexts[0]),1))]),_:1},8,["class","disabled","onClick"]),H(o(on),{type:"primary",class:T([o(r).e("button"),o(r).is("with-texts",o(C))]),disabled:o(Pn)(u.leftChecked),onClick:o(p)},{default:U(()=>[o(vt)(M.buttonTexts[1])?J("v-if",!0):(_(),V("span",{key:0},pe(M.buttonTexts[1]),1)),H(o(Se),null,{default:U(()=>[H(o(Cn))]),_:1})]),_:1},8,["class","disabled","onClick"])],2),H(mc,{ref_key:"rightPanel",ref:b,data:o(f),"option-render":o($),placeholder:o(S),filterable:M.filterable,format:M.format,"filter-method":M.filterMethod,title:o(k),"default-checked":M.rightDefaultChecked,props:l.props,onCheckedChange:o(v)},{empty:U(()=>[G(M.$slots,"right-empty")]),default:U(()=>[G(M.$slots,"right-footer")]),_:3},8,["data","option-render","placeholder","filterable","format","filter-method","title","default-checked","props","onCheckedChange"])],2))}});var b4=fe(g4,[["__file","transfer.vue"]]);const y4=He(b4),yo="$treeNodeId",gc=function(e,t){!t||t[yo]||Object.defineProperty(t,yo,{value:e.id,enumerable:!1,configurable:!1,writable:!1})},Ui=(e,t)=>t==null?void 0:t[e||yo],Mr=(e,t,n)=>{const l=e.value.currentNode;n();const a=e.value.currentNode;l!==a&&t("current-change",a?a.data:null,a)},Rr=e=>{let t=!0,n=!0,l=!0;for(let a=0,s=e.length;a0&&n.lazy&&n.defaultExpandAll&&!this.isLeafByUser&&this.expand(),ke(this.data)||gc(this,this.data),!this.data)return;const a=n.defaultExpandedKeys,s=n.key;s&&!qt(this.key)&&a&&a.includes(this.key)&&this.expand(null,n.autoExpandParent),s&&n.currentNodeKey!==void 0&&this.key===n.currentNodeKey&&(n.currentNode=this,n.currentNode.isCurrent=!0),n.lazy&&n._initDefaultCheckedNode(this),this.updateLeafState(),(this.level===1||((t=this.parent)==null?void 0:t.expanded)===!0)&&(this.canFocus=!0)}setData(t){ke(t)||gc(this,t),this.data=t,this.childNodes=[];let n;this.level===0&&ke(this.data)?n=this.data:n=Ma(this,"children")||[];for(let l=0,a=n.length;l-1)return t.childNodes[n+1]}return null}get previousSibling(){const t=this.parent;if(t){const n=t.childNodes.indexOf(this);if(n>-1)return n>0?t.childNodes[n-1]:null}return null}contains(t,n=!0){return(this.childNodes||[]).some(l=>l===t||n&&l.contains(t))}remove(){const t=this.parent;t&&t.removeChild(this)}insertChild(t,n,l){if(!t)throw new Error("InsertChild error: child is required.");if(!(t instanceof Wl)){if(!l){const a=this.getChildren(!0);a!=null&&a.includes(t.data)||(vt(n)||n<0?a==null||a.push(t.data):a==null||a.splice(n,0,t.data))}Object.assign(t,{parent:this,store:this.store}),t=kt(new Wl(t)),t instanceof Wl&&t.initialize()}t.level=this.level+1,vt(n)||n<0?this.childNodes.push(t):this.childNodes.splice(n,0,t),this.updateLeafState()}insertBefore(t,n){let l;n&&(l=this.childNodes.indexOf(n)),this.insertChild(t,l)}insertAfter(t,n){let l;n&&(l=this.childNodes.indexOf(n),l!==-1&&(l+=1)),this.insertChild(t,l)}removeChild(t){const n=this.getChildren()||[],l=n.indexOf(t.data);l>-1&&n.splice(l,1);const a=this.childNodes.indexOf(t);a>-1&&(this.store&&this.store.deregisterNode(t),t.parent=null,this.childNodes.splice(a,1)),this.updateLeafState()}removeChildByData(t){let n=null;for(let l=0;l{if(n){let a=this.parent;for(;a&&a.level>0;)a.expanded=!0,a=a.parent}this.expanded=!0,t&&t(),this.childNodes.forEach(a=>{a.canFocus=!0})};this.shouldLoadData()?this.loadData(a=>{ke(a)&&(this.checked?this.setChecked(!0,!0):this.store.checkStrictly||xo(this),l())}):l()}doCreateChildren(t,n={}){t.forEach(l=>{this.insertChild(Object.assign({data:l},n),void 0,!0)})}collapse(){this.expanded=!1,this.childNodes.forEach(t=>{t.canFocus=!1})}shouldLoadData(){return!!(this.store.lazy===!0&&this.store.load&&!this.loaded)}updateLeafState(){if(this.store.lazy===!0&&this.loaded!==!0&&typeof this.isLeafByUser<"u"){this.isLeaf=this.isLeafByUser;return}const t=this.childNodes;if(!this.store.lazy||this.store.lazy===!0&&this.loaded===!0){this.isLeaf=!t||t.length===0;return}this.isLeaf=!1}setChecked(t,n,l,a){if(this.indeterminate=t==="half",this.checked=t===!0,this.store.checkStrictly)return;if(!(this.shouldLoadData()&&!this.store.checkDescendants)){const{all:r,allWithoutDisable:i}=Rr(this.childNodes);!this.isLeaf&&!r&&i&&(this.checked=!1,t=!1);const u=()=>{if(n){const c=this.childNodes;for(let m=0,v=c.length;m{u(),xo(this)},{checked:t!==!1});return}else u()}const s=this.parent;!s||s.level===0||l||xo(s)}getChildren(t=!1){if(this.level===0)return this.data;const n=this.data;if(!n)return null;const l=this.store.props;let a="children";return l&&(a=l.children||"children"),vt(n[a])&&(n[a]=null),t&&!n[a]&&(n[a]=[]),n[a]}updateChildren(){const t=this.getChildren()||[],n=this.childNodes.map(s=>s.data),l={},a=[];t.forEach((s,r)=>{const i=s[yo];!!i&&n.findIndex(c=>(c==null?void 0:c[yo])===i)>=0?l[i]={index:r,data:s}:a.push({index:r,data:s})}),this.store.lazy||n.forEach(s=>{l[s==null?void 0:s[yo]]||this.removeChildByData(s)}),a.forEach(({index:s,data:r})=>{this.insertChild({data:r},s)}),this.updateLeafState()}loadData(t,n={}){if(this.store.lazy===!0&&this.store.load&&!this.loaded&&(!this.loading||Object.keys(n).length)){this.loading=!0;const l=s=>{this.childNodes=[],this.doCreateChildren(s,n),this.loaded=!0,this.loading=!1,this.updateLeafState(),t&&t.call(this,s)},a=()=>{this.loading=!1};this.store.load(this,l,a)}else t&&t.call(this)}eachNode(t){const n=[this];for(;n.length;){const l=n.shift();n.unshift(...l.childNodes),t(l)}}reInitChecked(){this.store.checkStrictly||xo(this)}}class w4{constructor(t){this.lazy=!1,this.checkStrictly=!1,this.autoExpandParent=!1,this.defaultExpandAll=!1,this.checkDescendants=!1,this.currentNode=null,this.currentNodeKey=null;for(const n in t)rn(t,n)&&(this[n]=t[n]);this.nodesMap={}}initialize(){if(this.root=new Wl({data:this.data,store:this}),this.root.initialize(),this.lazy&&this.load){const t=this.load;t(this.root,n=>{this.root.doCreateChildren(n),this._initDefaultCheckedNodes()},Bt)}else this._initDefaultCheckedNodes()}filter(t){const n=this.filterNodeMethod,l=this.lazy,a=async function(s){const r=s.root?s.root.childNodes:s.childNodes;for(const[i,u]of r.entries())u.visible=!!(n!=null&&n.call(u,t,u.data,u)),i%80===0&&i>0&&await Ee(),await a(u);if(!s.visible&&r.length){let i=!0;i=!r.some(u=>u.visible),s.root?s.root.visible=i===!1:s.visible=i===!1}t&&s.visible&&!s.isLeaf&&(!l||s.loaded)&&s.expand()};a(this)}setData(t){t!==this.root.data?(this.nodesMap={},this.root.setData(t),this._initDefaultCheckedNodes(),this.setCurrentNodeKey(this.currentNodeKey)):this.root.updateChildren()}getNode(t){if(t instanceof Wl)return t;const n=yt(t)?Ui(this.key,t):t;return this.nodesMap[n]||null}insertBefore(t,n){var l;const a=this.getNode(n);(l=a.parent)==null||l.insertBefore({data:t},a)}insertAfter(t,n){var l;const a=this.getNode(n);(l=a.parent)==null||l.insertAfter({data:t},a)}remove(t){const n=this.getNode(t);n&&n.parent&&(n===this.currentNode&&(this.currentNode=null),n.parent.removeChild(n))}append(t,n){const l=In(n)?this.root:this.getNode(n);l&&l.insertChild({data:t})}_initDefaultCheckedNodes(){const t=this.defaultCheckedKeys||[],n=this.nodesMap;t.forEach(l=>{const a=n[l];a&&a.setChecked(!0,!this.checkStrictly)})}_initDefaultCheckedNode(t){const n=this.defaultCheckedKeys||[];!qt(t.key)&&n.includes(t.key)&&t.setChecked(!0,!this.checkStrictly)}setDefaultCheckedKey(t){t!==this.defaultCheckedKeys&&(this.defaultCheckedKeys=t,this._initDefaultCheckedNodes())}registerNode(t){const n=this.key;if(!(!t||!t.data))if(!n)this.nodesMap[t.id]=t;else{const l=t.key;qt(l)||(this.nodesMap[l]=t)}}deregisterNode(t){!this.key||!t||!t.data||(t.childNodes.forEach(l=>{this.deregisterNode(l)}),delete this.nodesMap[t.key])}getCheckedNodes(t=!1,n=!1){const l=[],a=function(s){(s.root?s.root.childNodes:s.childNodes).forEach(i=>{(i.checked||n&&i.indeterminate)&&(!t||t&&i.isLeaf)&&l.push(i.data),a(i)})};return a(this),l}getCheckedKeys(t=!1){return this.getCheckedNodes(t).map(n=>(n||{})[this.key])}getHalfCheckedNodes(){const t=[],n=function(l){(l.root?l.root.childNodes:l.childNodes).forEach(s=>{s.indeterminate&&t.push(s.data),n(s)})};return n(this),t}getHalfCheckedKeys(){return this.getHalfCheckedNodes().map(t=>(t||{})[this.key])}_getAllNodes(){const t=[],n=this.nodesMap;for(const l in n)rn(n,l)&&t.push(n[l]);return t}updateChildren(t,n){const l=this.nodesMap[t];if(!l)return;const a=l.childNodes;for(let s=a.length-1;s>=0;s--){const r=a[s];this.remove(r.data)}for(let s=0,r=n.length;su.level-c.level),s=Object.create(null),r=Object.keys(l);a.forEach(u=>u.setChecked(!1,!1));const i=u=>{u.childNodes.forEach(c=>{var d;s[c.data[t]]=!0,(d=c.childNodes)!=null&&d.length&&i(c)})};for(let u=0,c=a.length;u{g.isLeaf||g.setChecked(!1,!1),v(g)})};v(d)}}}setCheckedNodes(t,n=!1){const l=this.key,a={};t.forEach(s=>{a[(s||{})[l]]=!0}),this._setCheckedKeys(l,n,a)}setCheckedKeys(t,n=!1){this.defaultCheckedKeys=t;const l=this.key,a={};t.forEach(s=>{a[s]=!0}),this._setCheckedKeys(l,n,a)}setDefaultExpandedKeys(t){t=t||[],this.defaultExpandedKeys=t,t.forEach(n=>{const l=this.getNode(n);l&&l.expand(null,this.autoExpandParent)})}setChecked(t,n,l){const a=this.getNode(t);a&&a.setChecked(!!n,l)}getCurrentNode(){return this.currentNode}setCurrentNode(t){const n=this.currentNode;n&&(n.isCurrent=!1),this.currentNode=t,this.currentNode.isCurrent=!0}setUserCurrentNode(t,n=!0){var l;const a=t[this.key],s=this.nodesMap[a];this.setCurrentNode(s),n&&this.currentNode&&this.currentNode.level>1&&((l=this.currentNode.parent)==null||l.expand(null,!0))}setCurrentNodeKey(t,n=!0){var l;if(this.currentNodeKey=t,In(t)){this.currentNode&&(this.currentNode.isCurrent=!1),this.currentNode=null;return}const a=this.getNode(t);a&&(this.setCurrentNode(a),n&&this.currentNode&&this.currentNode.level>1&&((l=this.currentNode.parent)==null||l.expand(null,!0)))}}const Yi="RootTree",Gv="NodeInstance",bc="TreeNodeMap",k4=x({name:"ElTreeNodeContent",props:{node:{type:Object,required:!0},renderContent:Function},setup(e){const t=ue("tree"),n=we(Gv),l=we(Yi);return()=>{const a=e.node,{data:s,store:r}=a;return e.renderContent?e.renderContent(Re,{_self:n,node:a,data:s,store:r}):G(l.ctx.slots,"default",{node:a,data:s},()=>[Re(zi,{tag:"span",truncated:!0,class:t.be("node","label")},()=>[a.label])])}}});var S4=fe(k4,[["__file","tree-node-content.vue"]]);function Xv(e){const t=we(bc,null),n={treeNodeExpand:l=>{var a;e.node!==l&&((a=e.node)==null||a.collapse())},children:[]};return t&&t.children.push(n),rt(bc,n),{broadcastExpanded:l=>{if(e.accordion)for(const a of n.children)a.treeNodeExpand(l)}}}const Zv=Symbol("dragEvents");function E4({props:e,ctx:t,el$:n,dropIndicator$:l,store:a}){const s=ue("tree"),r=I({showDropIndicator:!1,draggingNode:null,dropNode:null,allowDrop:!0,dropType:null});return rt(Zv,{treeNodeDragStart:({event:d,treeNode:f})=>{if(d.dataTransfer){if(Qe(e.allowDrag)&&!e.allowDrag(f.node))return d.preventDefault(),!1;d.dataTransfer.effectAllowed="move";try{d.dataTransfer.setData("text/plain","")}catch{}r.value.draggingNode=f,t.emit("node-drag-start",f.node,d)}},treeNodeDragOver:({event:d,treeNode:f})=>{if(!d.dataTransfer)return;const m=f,v=r.value.dropNode;v&&v.node.id!==m.node.id&&yn(v.$el,s.is("drop-inner"));const h=r.value.draggingNode;if(!h||!m)return;let p=!0,g=!0,b=!0,E=!0;Qe(e.allowDrop)&&(p=e.allowDrop(h.node,m.node,"prev"),E=g=e.allowDrop(h.node,m.node,"inner"),b=e.allowDrop(h.node,m.node,"next")),d.dataTransfer.dropEffect=g||p||b?"move":"none",(p||g||b)&&(v==null?void 0:v.node.id)!==m.node.id&&(v&&t.emit("node-drag-leave",h.node,v.node,d),t.emit("node-drag-enter",h.node,m.node,d)),p||g||b?r.value.dropNode=m:r.value.dropNode=null,m.node.nextSibling===h.node&&(b=!1),m.node.previousSibling===h.node&&(p=!1),m.node.contains(h.node,!1)&&(g=!1),(h.node===m.node||h.node.contains(m.node))&&(p=!1,g=!1,b=!1);const C=m.$el,w=C.querySelector(`.${s.be("node","content")}`).getBoundingClientRect(),k=n.value.getBoundingClientRect();let S;const $=p?g?.25:b?.45:1:-1,M=b?g?.75:p?.55:0:1;let R=-9999;const N=d.clientY-w.top;Nw.height*M?S="after":g?S="inner":S="none";const O=C.querySelector(`.${s.be("node","expand-icon")}`).getBoundingClientRect(),P=l.value;S==="before"?R=O.top-k.top:S==="after"&&(R=O.bottom-k.top),P.style.top=`${R}px`,P.style.left=`${O.right-k.left}px`,S==="inner"?Fn(C,s.is("drop-inner")):yn(C,s.is("drop-inner")),r.value.showDropIndicator=S==="before"||S==="after",r.value.allowDrop=r.value.showDropIndicator||E,r.value.dropType=S,t.emit("node-drag-over",h.node,m.node,d)},treeNodeDragEnd:d=>{var f,m;const{draggingNode:v,dropType:h,dropNode:p}=r.value;if(d.preventDefault(),d.dataTransfer&&(d.dataTransfer.dropEffect="move"),v!=null&&v.node.data&&p){const g={data:v.node.data};h!=="none"&&v.node.remove(),h==="before"?(f=p.node.parent)==null||f.insertBefore(g,p.node):h==="after"?(m=p.node.parent)==null||m.insertAfter(g,p.node):h==="inner"&&p.node.insertChild(g),h!=="none"&&(a.value.registerNode(g),a.value.key&&v.node.eachNode(b=>{var E;(E=a.value.nodesMap[b.data[a.value.key]])==null||E.setChecked(b.checked,!a.value.checkStrictly)})),yn(p.$el,s.is("drop-inner")),t.emit("node-drag-end",v.node,p.node,h,d),h!=="none"&&t.emit("node-drop",v.node,p.node,h,d)}v&&!p&&t.emit("node-drag-end",v.node,null,h,d),r.value.showDropIndicator=!1,r.value.draggingNode=null,r.value.dropNode=null,r.value.allowDrop=!0}}),{dragState:r}}const _4=x({name:"ElTreeNode",components:{ElCollapseTransition:Ss,ElCheckbox:Hn,NodeContent:S4,ElIcon:Se,Loading:Qn},props:{node:{type:Wl,default:()=>({})},props:{type:Object,default:()=>({})},accordion:Boolean,renderContent:Function,renderAfterExpand:Boolean,showCheckbox:Boolean},emits:["node-expand"],setup(e,t){const n=ue("tree"),{broadcastExpanded:l}=Xv(e),a=we(Yi),s=I(!1),r=I(!1),i=I(),u=I(),c=I(),d=we(Zv),f=lt();rt(Gv,f),e.node.expanded&&(s.value=!0,r.value=!0);const m=a.props.props.children||"children";ie(()=>{var R;const N=(R=e.node.data)==null?void 0:R[m];return N&&[...N]},()=>{e.node.updateChildren()}),ie(()=>e.node.indeterminate,R=>{p(e.node.checked,R)}),ie(()=>e.node.checked,R=>{p(R,e.node.indeterminate)}),ie(()=>e.node.childNodes.length,()=>e.node.reInitChecked()),ie(()=>e.node.expanded,R=>{Ee(()=>s.value=R),R&&(r.value=!0)});const v=R=>Ui(a.props.nodeKey,R.data),h=R=>{const N=e.props.class;if(!N)return{};let O;if(Qe(N)){const{data:P}=R;O=N(P,R)}else O=N;return Ve(O)?{[O]:!0}:O},p=(R,N)=>{(i.value!==R||u.value!==N)&&a.ctx.emit("check-change",e.node.data,R,N),i.value=R,u.value=N},g=R=>{Mr(a.store,a.ctx.emit,()=>{var N;if((N=a==null?void 0:a.props)==null?void 0:N.nodeKey){const P=v(e.node);a.store.value.setCurrentNodeKey(P)}else a.store.value.setCurrentNode(e.node)}),a.currentNode.value=e.node,a.props.expandOnClickNode&&E(),(a.props.checkOnClickNode||e.node.isLeaf&&a.props.checkOnClickLeaf&&e.showCheckbox)&&!e.node.disabled&&C(!e.node.checked),a.ctx.emit("node-click",e.node.data,e.node,f,R)},b=R=>{var N;(N=a.instance.vnode.props)!=null&&N.onNodeContextmenu&&(R.stopPropagation(),R.preventDefault()),a.ctx.emit("node-contextmenu",R,e.node.data,e.node,f)},E=()=>{e.node.isLeaf||(s.value?(a.ctx.emit("node-collapse",e.node.data,e.node,f),e.node.collapse()):e.node.expand(()=>{t.emit("node-expand",e.node.data,e.node,f)}))},C=R=>{e.node.setChecked(R,!(a!=null&&a.props.checkStrictly)),Ee(()=>{const N=a.store.value;a.ctx.emit("check",e.node.data,{checkedNodes:N.getCheckedNodes(),checkedKeys:N.getCheckedKeys(),halfCheckedNodes:N.getHalfCheckedNodes(),halfCheckedKeys:N.getHalfCheckedKeys()})})};return{ns:n,node$:c,tree:a,expanded:s,childNodeRendered:r,oldChecked:i,oldIndeterminate:u,getNodeKey:v,getNodeClass:h,handleSelectChange:p,handleClick:g,handleContextMenu:b,handleExpandIconClick:E,handleCheckChange:C,handleChildNodeExpand:(R,N,O)=>{l(N),a.ctx.emit("node-expand",R,N,O)},handleDragStart:R=>{a.props.draggable&&d.treeNodeDragStart({event:R,treeNode:e})},handleDragOver:R=>{R.preventDefault(),a.props.draggable&&d.treeNodeDragOver({event:R,treeNode:{$el:c.value,node:e.node}})},handleDrop:R=>{R.preventDefault()},handleDragEnd:R=>{a.props.draggable&&d.treeNodeDragEnd(R)},CaretRight:rd}}});function T4(e,t,n,l,a,s){const r=ht("el-icon"),i=ht("el-checkbox"),u=ht("loading"),c=ht("node-content"),d=ht("el-tree-node"),f=ht("el-collapse-transition");return We((_(),V("div",{ref:"node$",class:T([e.ns.b("node"),e.ns.is("expanded",e.expanded),e.ns.is("current",e.node.isCurrent),e.ns.is("hidden",!e.node.visible),e.ns.is("focusable",!e.node.disabled),e.ns.is("checked",!e.node.disabled&&e.node.checked),e.getNodeClass(e.node)]),role:"treeitem",tabindex:"-1","aria-expanded":e.expanded,"aria-disabled":e.node.disabled,"aria-checked":e.node.checked,draggable:e.tree.props.draggable,"data-key":e.getNodeKey(e.node),onClick:Le(e.handleClick,["stop"]),onContextmenu:e.handleContextMenu,onDragstart:Le(e.handleDragStart,["stop"]),onDragover:Le(e.handleDragOver,["stop"]),onDragend:Le(e.handleDragEnd,["stop"]),onDrop:Le(e.handleDrop,["stop"])},[F("div",{class:T(e.ns.be("node","content")),style:_e({paddingLeft:(e.node.level-1)*e.tree.props.indent+"px"})},[e.tree.props.icon||e.CaretRight?(_(),oe(r,{key:0,class:T([e.ns.be("node","expand-icon"),e.ns.is("leaf",e.node.isLeaf),{expanded:!e.node.isLeaf&&e.expanded}]),onClick:Le(e.handleExpandIconClick,["stop"])},{default:U(()=>[(_(),oe(Ge(e.tree.props.icon||e.CaretRight)))]),_:1},8,["class","onClick"])):J("v-if",!0),e.showCheckbox?(_(),oe(i,{key:1,"model-value":e.node.checked,indeterminate:e.node.indeterminate,disabled:!!e.node.disabled,onClick:Le(()=>{},["stop"]),onChange:e.handleCheckChange},null,8,["model-value","indeterminate","disabled","onClick","onChange"])):J("v-if",!0),e.node.loading?(_(),oe(r,{key:2,class:T([e.ns.be("node","loading-icon"),e.ns.is("loading")])},{default:U(()=>[H(u)]),_:1},8,["class"])):J("v-if",!0),H(c,{node:e.node,"render-content":e.renderContent},null,8,["node","render-content"])],6),H(f,null,{default:U(()=>[!e.renderAfterExpand||e.childNodeRendered?We((_(),V("div",{key:0,class:T(e.ns.be("node","children")),role:"group","aria-expanded":e.expanded,onClick:Le(()=>{},["stop"])},[(_(!0),V(Oe,null,ut(e.node.childNodes,m=>(_(),oe(d,{key:e.getNodeKey(m),"render-content":e.renderContent,"render-after-expand":e.renderAfterExpand,"show-checkbox":e.showCheckbox,node:m,accordion:e.accordion,props:e.props,onNodeExpand:e.handleChildNodeExpand},null,8,["render-content","render-after-expand","show-checkbox","node","accordion","props","onNodeExpand"]))),128))],10,["aria-expanded","onClick"])),[[mt,e.expanded]]):J("v-if",!0)]),_:1})],42,["aria-expanded","aria-disabled","aria-checked","draggable","data-key","onClick","onContextmenu","onDragstart","onDragover","onDragend","onDrop"])),[[mt,e.node.visible]])}var $4=fe(_4,[["render",T4],["__file","tree-node.vue"]]);function N4({el$:e},t){const n=ue("tree");Xe(()=>{a()}),hl(()=>{Array.from(e.value.querySelectorAll("input[type=checkbox]")).forEach(r=>{r.setAttribute("tabindex","-1")})}),xt(e,"keydown",s=>{const r=s.target;if(!r.className.includes(n.b("node")))return;const i=s.code,u=Array.from(e.value.querySelectorAll(`.${n.is("focusable")}[role=treeitem]`)),c=u.indexOf(r);let d;if([Ce.up,Ce.down].includes(i)){if(s.preventDefault(),i===Ce.up){d=c===-1?0:c!==0?c-1:u.length-1;const m=d;for(;!t.value.getNode(u[d].dataset.key).canFocus;){if(d--,d===m){d=-1;break}d<0&&(d=u.length-1)}}else{d=c===-1?0:c=u.length&&(d=0)}}d!==-1&&u[d].focus()}[Ce.left,Ce.right].includes(i)&&(s.preventDefault(),r.click());const f=r.querySelector('[type="checkbox"]');[Ce.enter,Ce.numpadEnter,Ce.space].includes(i)&&f&&(s.preventDefault(),f.click())});const a=()=>{var s;if(!e.value)return;const r=Array.from(e.value.querySelectorAll(`.${n.is("focusable")}[role=treeitem]`));Array.from(e.value.querySelectorAll("input[type=checkbox]")).forEach(c=>{c.setAttribute("tabindex","-1")});const u=e.value.querySelectorAll(`.${n.is("checked")}[role=treeitem]`);if(u.length){u[0].setAttribute("tabindex","0");return}(s=r[0])==null||s.setAttribute("tabindex","0")}}const I4=x({name:"ElTree",components:{ElTreeNode:$4},props:{data:{type:Y(Array),default:()=>[]},emptyText:{type:String},renderAfterExpand:{type:Boolean,default:!0},nodeKey:String,checkStrictly:Boolean,defaultExpandAll:Boolean,expandOnClickNode:{type:Boolean,default:!0},checkOnClickNode:Boolean,checkOnClickLeaf:{type:Boolean,default:!0},checkDescendants:Boolean,autoExpandParent:{type:Boolean,default:!0},defaultCheckedKeys:Array,defaultExpandedKeys:Array,currentNodeKey:[String,Number],renderContent:{type:Y(Function)},showCheckbox:Boolean,draggable:Boolean,allowDrag:{type:Y(Function)},allowDrop:{type:Y(Function)},props:{type:Object,default:()=>({children:"children",label:"label",disabled:"disabled"})},lazy:Boolean,highlightCurrent:Boolean,load:Function,filterNodeMethod:Function,accordion:Boolean,indent:{type:Number,default:18},icon:{type:$t}},emits:["check-change","current-change","node-click","node-contextmenu","node-collapse","node-expand","check","node-drag-start","node-drag-end","node-drop","node-drag-leave","node-drag-enter","node-drag-over"],setup(e,t){const{t:n}=pt(),l=ue("tree"),a=we(Lo,null),s=I(new w4({key:e.nodeKey,data:e.data,lazy:e.lazy,props:e.props,load:e.load,currentNodeKey:e.currentNodeKey,checkStrictly:e.checkStrictly,checkDescendants:e.checkDescendants,defaultCheckedKeys:e.defaultCheckedKeys,defaultExpandedKeys:e.defaultExpandedKeys,autoExpandParent:e.autoExpandParent,defaultExpandAll:e.defaultExpandAll,filterNodeMethod:e.filterNodeMethod}));s.value.initialize();const r=I(s.value.root),i=I(null),u=I(null),c=I(null),{broadcastExpanded:d}=Xv(e),{dragState:f}=E4({props:e,ctx:t,el$:u,dropIndicator$:c,store:s});N4({el$:u},s);const m=y(()=>{const{childNodes:B}=r.value,A=a?a.hasFilteredOptions!==0:!1;return(!B||B.length===0||B.every(({visible:ne})=>!ne))&&!A});ie(()=>e.currentNodeKey,B=>{s.value.setCurrentNodeKey(B??null)}),ie(()=>e.defaultCheckedKeys,B=>{s.value.setDefaultCheckedKey(B??[])}),ie(()=>e.defaultExpandedKeys,B=>{s.value.setDefaultExpandedKeys(B??[])}),ie(()=>e.data,B=>{s.value.setData(B)},{deep:!0}),ie(()=>e.checkStrictly,B=>{s.value.checkStrictly=B});const v=B=>{if(!e.filterNodeMethod)throw new Error("[Tree] filterNodeMethod is required when filter");s.value.filter(B)},h=B=>Ui(e.nodeKey,B.data),p=B=>{if(!e.nodeKey)throw new Error("[Tree] nodeKey is required in getNodePath");const A=s.value.getNode(B);if(!A)return[];const ne=[A.data];let j=A.parent;for(;j&&j!==r.value;)ne.push(j.data),j=j.parent;return ne.reverse()},g=(B,A)=>s.value.getCheckedNodes(B,A),b=B=>s.value.getCheckedKeys(B),E=()=>{const B=s.value.getCurrentNode();return B?B.data:null},C=()=>{if(!e.nodeKey)throw new Error("[Tree] nodeKey is required in getCurrentKey");const B=E();return B?B[e.nodeKey]:null},w=(B,A)=>{if(!e.nodeKey)throw new Error("[Tree] nodeKey is required in setCheckedNodes");s.value.setCheckedNodes(B,A)},k=(B,A)=>{if(!e.nodeKey)throw new Error("[Tree] nodeKey is required in setCheckedKeys");s.value.setCheckedKeys(B,A)},S=(B,A,ne)=>{s.value.setChecked(B,A,ne)},$=()=>s.value.getHalfCheckedNodes(),M=()=>s.value.getHalfCheckedKeys(),R=(B,A=!0)=>{if(!e.nodeKey)throw new Error("[Tree] nodeKey is required in setCurrentNode");Mr(s,t.emit,()=>{d(B),s.value.setUserCurrentNode(B,A)})},N=(B,A=!0)=>{if(!e.nodeKey)throw new Error("[Tree] nodeKey is required in setCurrentKey");Mr(s,t.emit,()=>{d(),s.value.setCurrentNodeKey(B??null,A)})},O=B=>s.value.getNode(B),P=B=>{s.value.remove(B)},W=(B,A)=>{s.value.append(B,A)},K=(B,A)=>{s.value.insertBefore(B,A)},D=(B,A)=>{s.value.insertAfter(B,A)},L=(B,A,ne)=>{d(A),t.emit("node-expand",B,A,ne)},z=(B,A)=>{if(!e.nodeKey)throw new Error("[Tree] nodeKey is required in updateKeyChild");s.value.updateChildren(B,A)};return rt(Yi,{ctx:t,props:e,store:s,root:r,currentNode:i,instance:lt()}),rt(el,void 0),{ns:l,store:s,root:r,currentNode:i,dragState:f,el$:u,dropIndicator$:c,isEmpty:m,filter:v,getNodeKey:h,getNodePath:p,getCheckedNodes:g,getCheckedKeys:b,getCurrentNode:E,getCurrentKey:C,setCheckedNodes:w,setCheckedKeys:k,setChecked:S,getHalfCheckedNodes:$,getHalfCheckedKeys:M,setCurrentNode:R,setCurrentKey:N,t:n,getNode:O,remove:P,append:W,insertBefore:K,insertAfter:D,handleNodeExpand:L,updateKeyChildren:z}}});function M4(e,t,n,l,a,s){const r=ht("el-tree-node");return _(),V("div",{ref:"el$",class:T([e.ns.b(),e.ns.is("dragging",!!e.dragState.draggingNode),e.ns.is("drop-not-allow",!e.dragState.allowDrop),e.ns.is("drop-inner",e.dragState.dropType==="inner"),{[e.ns.m("highlight-current")]:e.highlightCurrent}]),role:"tree"},[(_(!0),V(Oe,null,ut(e.root.childNodes,i=>(_(),oe(r,{key:e.getNodeKey(i),node:i,props:e.props,accordion:e.accordion,"render-after-expand":e.renderAfterExpand,"show-checkbox":e.showCheckbox,"render-content":e.renderContent,onNodeExpand:e.handleNodeExpand},null,8,["node","props","accordion","render-after-expand","show-checkbox","render-content","onNodeExpand"]))),128)),e.isEmpty?(_(),V("div",{key:0,class:T(e.ns.e("empty-block"))},[G(e.$slots,"empty",{},()=>{var i;return[F("span",{class:T(e.ns.e("empty-text"))},pe((i=e.emptyText)!=null?i:e.t("el.tree.emptyText")),3)]})],2)):J("v-if",!0),We(F("div",{ref:"dropIndicator$",class:T(e.ns.e("drop-indicator"))},null,2),[[mt,e.dragState.showDropIndicator]])],2)}var R4=fe(I4,[["render",M4],["__file","tree.vue"]]);const is=He(R4),P4=(e,{attrs:t,emit:n},{select:l,tree:a,key:s})=>{const r=ue("tree-select");return ie(()=>e.data,()=>{e.filterable&&Ee(()=>{var u,c;(c=a.value)==null||c.filter((u=l.value)==null?void 0:u.states.inputValue)})},{flush:"post"}),{...An(nn(e),Object.keys(ql.props)),...t,class:y(()=>t.class),style:y(()=>t.style),"onUpdate:modelValue":u=>n(De,u),valueKey:s,popperClass:y(()=>{const u=[r.e("popper")];return e.popperClass&&u.push(e.popperClass),u.join(" ")}),filterMethod:(u="")=>{var c;e.filterMethod?e.filterMethod(u):e.remoteMethod?e.remoteMethod(u):(c=a.value)==null||c.filter(u)}}},O4=x({extends:Qa,setup(e,t){const n=Qa.setup(e,t);delete n.selectOptionClick;const l=lt().proxy;return Ee(()=>{n.select.states.cachedOptions.get(l.value)||n.select.onOptionCreate(l)}),ie(()=>t.attrs.visible,a=>{Ee(()=>{n.states.visible=a})},{immediate:!0}),n},methods:{selectOptionClick(){this.$el.parentElement.click()}}});function Pr(e){return e||e===0}function qi(e){return ke(e)&&e.length}function ro(e){return ke(e)?e:Pr(e)?[e]:[]}function xa(e,t,n,l,a){for(let s=0;s{ie([()=>e.modelValue,s],()=>{e.showCheckbox&&Ee(()=>{const m=s.value;m&&!tn(m.getCheckedKeys(),ro(e.modelValue))&&m.setCheckedKeys(ro(e.modelValue))})},{immediate:!0,deep:!0});const i=y(()=>({value:r.value,label:"label",children:"children",disabled:"disabled",isLeaf:"isLeaf",...e.props})),u=(m,v)=>{var h;const p=i.value[m];return Qe(p)?p(v,(h=s.value)==null?void 0:h.getNode(u("value",v))):v[p]},c=ro(e.modelValue).map(m=>xa(e.data||[],v=>u("value",v)===m,v=>u("children",v),(v,h,p,g)=>g&&u("value",g))).filter(m=>Pr(m)),d=y(()=>{if(!e.renderAfterExpand&&!e.lazy)return[];const m=[];return za(e.data.concat(e.cacheData),v=>{const h=u("value",v);m.push({value:h,currentLabel:u("label",v),isDisabled:u("disabled",v)})},v=>u("children",v)),m}),f=()=>{var m;return(m=s.value)==null?void 0:m.getCheckedKeys().filter(v=>{var h;const p=(h=s.value)==null?void 0:h.getNode(v);return!qt(p)&&Pn(p.childNodes)})};return{...An(nn(e),Object.keys(is.props)),...t,nodeKey:r,expandOnClickNode:y(()=>!e.checkStrictly&&e.expandOnClickNode),defaultExpandedKeys:y(()=>e.defaultExpandedKeys?e.defaultExpandedKeys.concat(c):c),renderContent:(m,{node:v,data:h,store:p})=>m(O4,{value:u("value",h),label:u("label",h),disabled:u("disabled",h),visible:v.visible},e.renderContent?()=>e.renderContent(m,{node:v,data:h,store:p}):n.default?()=>n.default({node:v,data:h,store:p}):void 0),filterNodeMethod:(m,v,h)=>e.filterNodeMethod?e.filterNodeMethod(m,v,h):m?new RegExp(Si(m),"i").test(u("label",v)||""):!0,onNodeClick:(m,v,h)=>{var p,g,b,E;if((p=t.onNodeClick)==null||p.call(t,m,v,h),!(e.showCheckbox&&e.checkOnClickNode)){if(!e.showCheckbox&&(e.checkStrictly||v.isLeaf)){if(!u("disabled",m)){const C=(g=a.value)==null?void 0:g.states.options.get(u("value",m));(b=a.value)==null||b.handleOptionSelect(C)}}else e.expandOnClickNode&&h.proxy.handleExpandIconClick();(E=a.value)==null||E.focus()}},onCheck:(m,v)=>{var h;if(!e.showCheckbox)return;const p=u("value",m),g={};za([s.value.store.root],w=>g[w.key]=w,w=>w.childNodes);const b=v.checkedKeys,E=e.multiple?ro(e.modelValue).filter(w=>!(w in g)&&!b.includes(w)):[],C=E.concat(b);if(e.checkStrictly)l(De,e.multiple?C:C.includes(p)?p:void 0);else if(e.multiple){const w=f();l(De,E.concat(w))}else{const w=xa([m],$=>!qi(u("children",$))&&!u("disabled",$),$=>u("children",$)),k=w?u("value",w):void 0,S=Pr(e.modelValue)&&!!xa([m],$=>u("value",$)===e.modelValue,$=>u("children",$));l(De,k===e.modelValue||S?void 0:k)}Ee(()=>{var w;const k=ro(e.modelValue);s.value.setCheckedKeys(k),(w=t.onCheck)==null||w.call(t,m,{checkedKeys:s.value.getCheckedKeys(),checkedNodes:s.value.getCheckedNodes(),halfCheckedKeys:s.value.getHalfCheckedKeys(),halfCheckedNodes:s.value.getHalfCheckedNodes()})}),(h=a.value)==null||h.focus()},onNodeExpand:(m,v,h)=>{var p;(p=t.onNodeExpand)==null||p.call(t,m,v,h),Ee(()=>{if(!e.checkStrictly&&e.lazy&&e.multiple&&v.checked){const g={},b=s.value.getCheckedKeys();za([s.value.store.root],w=>g[w.key]=w,w=>w.childNodes);const E=ro(e.modelValue).filter(w=>!(w in g)&&!b.includes(w)),C=f();l(De,E.concat(C))}})},cacheOptions:d}};var B4=x({props:{data:{type:Array,default:()=>[]}},setup(e){const t=we(Lo);return ie(()=>e.data,()=>{var n;e.data.forEach(a=>{t.states.cachedOptions.has(a.value)||t.states.cachedOptions.set(a.value,a)});const l=((n=t.selectRef)==null?void 0:n.querySelectorAll("input"))||[];bt&&!Array.from(l).includes(document.activeElement)&&t.setSelected()},{flush:"post",immediate:!0}),()=>{}}});const V4=x({name:"ElTreeSelect",inheritAttrs:!1,props:{...ql.props,...is.props,cacheData:{type:Array,default:()=>[]}},setup(e,t){const{slots:n,expose:l}=t,a=I(),s=I(),r=y(()=>e.nodeKey||e.valueKey||"value"),i=P4(e,t,{select:a,tree:s,key:r}),{cacheOptions:u,...c}=L4(e,t,{select:a,tree:s,key:r}),d=kt({});return l(d),Xe(()=>{Object.assign(d,{...An(s.value,["filter","updateKeyChildren","getCheckedNodes","setCheckedNodes","getCheckedKeys","setCheckedKeys","setChecked","getHalfCheckedNodes","getHalfCheckedKeys","getCurrentKey","getCurrentNode","setCurrentKey","setCurrentNode","getNode","remove","append","insertBefore","insertAfter"]),...An(a.value,["focus","blur","selectedLabel"])})}),()=>Re(ql,kt({...i,ref:f=>a.value=f}),{...n,default:()=>[Re(B4,{data:u.value}),Re(is,kt({...c,ref:f=>s.value=f}))]})}});var D4=fe(V4,[["__file","tree-select.vue"]]);const A4=He(D4),Gi=Symbol(),F4={key:-1,level:-1,data:{}};var zo=(e=>(e.KEY="id",e.LABEL="label",e.CHILDREN="children",e.DISABLED="disabled",e.CLASS="",e))(zo||{}),Or=(e=>(e.ADD="add",e.DELETE="delete",e))(Or||{});const Jv={type:Number,default:26},x4=de({data:{type:Y(Array),default:()=>Vt([])},emptyText:{type:String},height:{type:Number,default:200},props:{type:Y(Object),default:()=>Vt({children:"children",label:"label",disabled:"disabled",value:"id",class:""})},highlightCurrent:Boolean,showCheckbox:Boolean,defaultCheckedKeys:{type:Y(Array),default:()=>Vt([])},checkStrictly:Boolean,defaultExpandedKeys:{type:Y(Array),default:()=>Vt([])},indent:{type:Number,default:16},itemSize:Jv,icon:{type:$t},expandOnClickNode:{type:Boolean,default:!0},checkOnClickNode:Boolean,checkOnClickLeaf:{type:Boolean,default:!0},currentNodeKey:{type:Y([String,Number])},accordion:Boolean,filterMethod:{type:Y(Function)},perfMode:{type:Boolean,default:!0},scrollbarAlwaysOn:Boolean}),z4=de({node:{type:Y(Object),default:()=>Vt(F4)},expanded:Boolean,checked:Boolean,indeterminate:Boolean,showCheckbox:Boolean,disabled:Boolean,current:Boolean,hiddenExpandIcon:Boolean,itemSize:Jv}),H4=de({node:{type:Y(Object),required:!0}}),Qv="node-click",ep="node-drop",tp="node-expand",np="node-collapse",lp="current-change",op="check",ap="check-change",sp="node-contextmenu",K4={[Qv]:(e,t,n)=>e&&t&&n,[ep]:(e,t,n)=>e&&t&&n,[tp]:(e,t)=>e&&t,[np]:(e,t)=>e&&t,[lp]:(e,t)=>e&&t,[op]:(e,t)=>e&&t,[ap]:(e,t)=>e&&_t(t),[sp]:(e,t,n)=>e&&t&&n},W4={click:(e,t)=>!!(e&&t),drop:(e,t)=>!!(e&&t),toggle:e=>!!e,check:(e,t)=>e&&_t(t)};function j4(e,t){const n=I(new Set),l=I(new Set),{emit:a}=lt();ie([()=>t.value,()=>e.defaultCheckedKeys],()=>Ee(()=>{E(e.defaultCheckedKeys)}),{immediate:!0});const s=()=>{if(!t.value||!e.showCheckbox||e.checkStrictly)return;const{levelTreeNodeMap:C,maxLevel:w}=t.value,k=n.value,S=new Set;for(let $=w-1;$>=1;--$){const M=C.get($);M&&M.forEach(R=>{const N=R.children;if(N){let O=!0,P=!1;for(const W of N){const K=W.key;if(k.has(K))P=!0;else if(S.has(K)){O=!1,P=!0;break}else O=!1}O?k.add(R.key):P?(S.add(R.key),k.delete(R.key)):(k.delete(R.key),S.delete(R.key))}})}l.value=S},r=C=>n.value.has(C.key),i=C=>l.value.has(C.key),u=(C,w,k=!0,S=!0)=>{const $=n.value,M=(R,N)=>{$[N?Or.ADD:Or.DELETE](R.key);const O=R.children;!e.checkStrictly&&O&&O.forEach(P=>{P.disabled||M(P,N)})};M(C,w),S&&s(),k&&c(C,w)},c=(C,w)=>{const{checkedNodes:k,checkedKeys:S}=h(),{halfCheckedNodes:$,halfCheckedKeys:M}=p();a(op,C.data,{checkedKeys:S,checkedNodes:k,halfCheckedKeys:M,halfCheckedNodes:$}),a(ap,C.data,w)};function d(C=!1){return h(C).checkedKeys}function f(C=!1){return h(C).checkedNodes}function m(){return p().halfCheckedKeys}function v(){return p().halfCheckedNodes}function h(C=!1){const w=[],k=[];if(t!=null&&t.value&&e.showCheckbox){const{treeNodeMap:S}=t.value;n.value.forEach($=>{const M=S.get($);M&&(!C||C&&M.isLeaf)&&(k.push($),w.push(M.data))})}return{checkedKeys:k,checkedNodes:w}}function p(){const C=[],w=[];if(t!=null&&t.value&&e.showCheckbox){const{treeNodeMap:k}=t.value;l.value.forEach(S=>{const $=k.get(S);$&&(w.push(S),C.push($.data))})}return{halfCheckedNodes:C,halfCheckedKeys:w}}function g(C){n.value.clear(),l.value.clear(),Ee(()=>{E(C)})}function b(C,w){if(t!=null&&t.value&&e.showCheckbox){const k=t.value.treeNodeMap.get(C);k&&u(k,w,!1)}}function E(C){if(t!=null&&t.value){const{treeNodeMap:w}=t.value;if(e.showCheckbox&&w&&(C==null?void 0:C.length)>0){for(const k of C){const S=w.get(k);S&&!r(S)&&u(S,!0,!1,!1)}s()}}}return{updateCheckedKeys:s,toggleCheckbox:u,isChecked:r,isIndeterminate:i,getCheckedKeys:d,getCheckedNodes:f,getHalfCheckedKeys:m,getHalfCheckedNodes:v,setChecked:b,setCheckedKeys:g}}function U4(e,t){const n=I(new Set([])),l=I(new Set([])),a=y(()=>Qe(e.filterMethod));function s(i){var u;if(!a.value)return;const c=new Set,d=l.value,f=n.value,m=[],v=((u=t.value)==null?void 0:u.treeNodes)||[],h=e.filterMethod;f.clear();function p(g){g.forEach(b=>{m.push(b),h!=null&&h(i,b.data,b)?m.forEach(C=>{c.add(C.key)}):b.isLeaf&&f.add(b.key);const E=b.children;if(E&&p(E),!b.isLeaf){if(!c.has(b.key))f.add(b.key);else if(E){let C=!0;for(const w of E)if(!f.has(w.key)){C=!1;break}C?d.add(b.key):d.delete(b.key)}}m.pop()})}return p(v),c}function r(i){return l.value.has(i.key)}return{hiddenExpandIconKeySet:l,hiddenNodeKeySet:n,doFilter:s,isForceHiddenExpandIcon:r}}function Y4(e,t){const n=I(new Set),l=I(),a=Lt(),s=I(),{isIndeterminate:r,isChecked:i,toggleCheckbox:u,getCheckedKeys:c,getCheckedNodes:d,getHalfCheckedKeys:f,getHalfCheckedNodes:m,setChecked:v,setCheckedKeys:h}=j4(e,a),{doFilter:p,hiddenNodeKeySet:g,isForceHiddenExpandIcon:b}=U4(e,a),E=y(()=>{var te;return((te=e.props)==null?void 0:te.value)||zo.KEY}),C=y(()=>{var te;return((te=e.props)==null?void 0:te.children)||zo.CHILDREN}),w=y(()=>{var te;return((te=e.props)==null?void 0:te.disabled)||zo.DISABLED}),k=y(()=>{var te;return((te=e.props)==null?void 0:te.label)||zo.LABEL}),S=y(()=>{var te;const ce=n.value,Ie=g.value,Ae=[],xe=((te=a.value)==null?void 0:te.treeNodes)||[],Ye=[];for(let $e=xe.length-1;$e>=0;--$e)Ye.push(xe[$e]);for(;Ye.length;){const $e=Ye.pop();if(!Ie.has($e.key)&&(Ae.push($e),$e.children&&ce.has($e.key)))for(let Me=$e.children.length-1;Me>=0;--Me)Ye.push($e.children[Me])}return Ae}),$=y(()=>S.value.length>0);function M(te){const ce=new Map,Ie=new Map;let Ae=1;function xe($e,Me=1,Pe=void 0){var Ze;const ot=[];for(const at of $e){const ct=O(at),ye={level:Me,key:ct,data:at};ye.label=W(at),ye.parent=Pe;const Ue=N(at);ye.disabled=P(at),ye.isLeaf=!Ue||Ue.length===0,ye.expanded=n.value.has(ct),Ue&&Ue.length&&(ye.children=xe(Ue,Me+1,ye)),ot.push(ye),ce.set(ct,ye),Ie.has(Me)||Ie.set(Me,[]),(Ze=Ie.get(Me))==null||Ze.push(ye)}return Me>Ae&&(Ae=Me),ot}const Ye=xe(te);return{treeNodeMap:ce,levelTreeNodeMap:Ie,maxLevel:Ae,treeNodes:Ye}}function R(te){const ce=p(te);ce&&(n.value=ce)}function N(te){return te[C.value]}function O(te){return te?te[E.value]:""}function P(te){return te[w.value]}function W(te){return te[k.value]}function K(te){n.value.has(te.key)?j(te):ne(te)}function D(te){const ce=new Set,Ie=a.value.treeNodeMap;te.forEach(Ae=>{let xe=Ie.get(Ae);for(;xe&&!ce.has(xe.key);)ce.add(xe.key),xe.expanded=!0,xe=xe.parent}),n.value=ce}function L(te,ce){t(Qv,te.data,te,ce),B(te),e.expandOnClickNode&&K(te),e.showCheckbox&&(e.checkOnClickNode||te.isLeaf&&e.checkOnClickLeaf)&&!te.disabled&&u(te,!i(te),!0)}function z(te,ce){t(ep,te.data,te,ce)}function B(te){Z(te)||(l.value=te.key,t(lp,te.data,te))}function A(te,ce){u(te,ce)}function ne(te){const ce=n.value;if(a.value&&e.accordion){const{treeNodeMap:Ie}=a.value;ce.forEach(Ae=>{const xe=Ie.get(Ae);te&&te.level===(xe==null?void 0:xe.level)&&(ce.delete(Ae),xe.expanded=!1)})}ce.add(te.key),te.expanded=!0,t(tp,te.data,te)}function j(te){n.value.delete(te.key),te.expanded=!1,t(np,te.data,te)}function Q(te){return!!te.disabled}function Z(te){const ce=l.value;return ce!==void 0&&ce===te.key}function ee(){var te,ce;if(l.value)return(ce=(te=a.value)==null?void 0:te.treeNodeMap.get(l.value))==null?void 0:ce.data}function ae(){return l.value}function re(te){l.value=te}function le(te){a.value=M(te)}function se(te){var ce;const Ie=yt(te)?O(te):te;return(ce=a.value)==null?void 0:ce.treeNodeMap.get(Ie)}function ge(te,ce="auto"){const Ie=se(te);Ie&&s.value&&s.value.scrollToItem(S.value.indexOf(Ie),ce)}function Be(te){var ce;(ce=s.value)==null||ce.scrollTo(te)}return ie(()=>e.currentNodeKey,te=>{l.value=te},{immediate:!0}),ie(()=>e.defaultExpandedKeys,te=>{n.value=new Set(te)},{immediate:!0}),ie(()=>e.data,te=>{le(te)},{immediate:!0}),{tree:a,flattenTree:S,isNotEmpty:$,listRef:s,getKey:O,getChildren:N,toggleExpand:K,toggleCheckbox:u,isChecked:i,isIndeterminate:r,isDisabled:Q,isCurrent:Z,isForceHiddenExpandIcon:b,handleNodeClick:L,handleNodeDrop:z,handleNodeCheck:A,getCurrentNode:ee,getCurrentKey:ae,setCurrentKey:re,getCheckedKeys:c,getCheckedNodes:d,getHalfCheckedKeys:f,getHalfCheckedNodes:m,setChecked:v,setCheckedKeys:h,filter:R,setData:le,getNode:se,expandNode:ne,collapseNode:j,setExpandedKeys:D,scrollToNode:ge,scrollTo:Be}}var q4=x({name:"ElTreeNodeContent",props:H4,setup(e){const t=we(Gi),n=ue("tree");return()=>{const l=e.node,{data:a}=l;return t!=null&&t.ctx.slots.default?t.ctx.slots.default({node:l,data:a}):Re(zi,{tag:"span",truncated:!0,class:n.be("node","label")},()=>[l==null?void 0:l.label])}}});const G4=x({name:"ElTreeNode"}),X4=x({...G4,props:z4,emits:W4,setup(e,{emit:t}){const n=e,l=we(Gi),a=ue("tree"),s=y(()=>{var v;return(v=l==null?void 0:l.props.indent)!=null?v:16}),r=y(()=>{var v;return(v=l==null?void 0:l.props.icon)!=null?v:rd}),i=v=>{const h=l==null?void 0:l.props.props.class;if(!h)return{};let p;if(Qe(h)){const{data:g}=v;p=h(g,v)}else p=h;return Ve(p)?{[p]:!0}:p},u=v=>{t("click",n.node,v)},c=v=>{t("drop",n.node,v)},d=()=>{t("toggle",n.node)},f=v=>{t("check",n.node,v)},m=v=>{var h,p,g,b;(g=(p=(h=l==null?void 0:l.instance)==null?void 0:h.vnode)==null?void 0:p.props)!=null&&g.onNodeContextmenu&&(v.stopPropagation(),v.preventDefault()),l==null||l.ctx.emit(sp,v,(b=n.node)==null?void 0:b.data,n.node)};return(v,h)=>{var p,g,b;return _(),V("div",{ref:"node$",class:T([o(a).b("node"),o(a).is("expanded",v.expanded),o(a).is("current",v.current),o(a).is("focusable",!v.disabled),o(a).is("checked",!v.disabled&&v.checked),i(v.node)]),role:"treeitem",tabindex:"-1","aria-expanded":v.expanded,"aria-disabled":v.disabled,"aria-checked":v.checked,"data-key":(p=v.node)==null?void 0:p.key,onClick:Le(u,["stop"]),onContextmenu:m,onDragover:Le(()=>{},["prevent"]),onDragenter:Le(()=>{},["prevent"]),onDrop:Le(c,["stop"])},[F("div",{class:T(o(a).be("node","content")),style:_e({paddingLeft:`${(v.node.level-1)*o(s)}px`,height:v.itemSize+"px"})},[o(r)?(_(),oe(o(Se),{key:0,class:T([o(a).is("leaf",!!((g=v.node)!=null&&g.isLeaf)),o(a).is("hidden",v.hiddenExpandIcon),{expanded:!((b=v.node)!=null&&b.isLeaf)&&v.expanded},o(a).be("node","expand-icon")]),onClick:Le(d,["stop"])},{default:U(()=>[(_(),oe(Ge(o(r))))]),_:1},8,["class","onClick"])):J("v-if",!0),v.showCheckbox?(_(),oe(o(Hn),{key:1,"model-value":v.checked,indeterminate:v.indeterminate,disabled:v.disabled,onChange:f,onClick:Le(()=>{},["stop"])},null,8,["model-value","indeterminate","disabled","onClick"])):J("v-if",!0),H(o(q4),{node:{...v.node,expanded:v.expanded}},null,8,["node"])],6)],42,["aria-expanded","aria-disabled","aria-checked","data-key","onClick","onDragover","onDragenter","onDrop"])}}});var Z4=fe(X4,[["__file","tree-node.vue"]]);const J4=x({name:"ElTreeV2"}),Q4=x({...J4,props:x4,emits:K4,setup(e,{expose:t,emit:n}){const l=e,a=Xt(),s=y(()=>l.itemSize);rt(Gi,{ctx:{emit:n,slots:a},props:l,instance:lt()}),rt(el,void 0);const{t:r}=pt(),i=ue("tree"),{flattenTree:u,isNotEmpty:c,listRef:d,toggleExpand:f,isIndeterminate:m,isChecked:v,isDisabled:h,isCurrent:p,isForceHiddenExpandIcon:g,handleNodeClick:b,handleNodeDrop:E,handleNodeCheck:C,toggleCheckbox:w,getCurrentNode:k,getCurrentKey:S,setCurrentKey:$,getCheckedKeys:M,getCheckedNodes:R,getHalfCheckedKeys:N,getHalfCheckedNodes:O,setChecked:P,setCheckedKeys:W,filter:K,setData:D,getNode:L,expandNode:z,collapseNode:B,setExpandedKeys:A,scrollToNode:ne,scrollTo:j}=Y4(l,n);return t({toggleCheckbox:w,getCurrentNode:k,getCurrentKey:S,setCurrentKey:$,getCheckedKeys:M,getCheckedNodes:R,getHalfCheckedKeys:N,getHalfCheckedNodes:O,setChecked:P,setCheckedKeys:W,filter:K,setData:D,getNode:L,expandNode:z,collapseNode:B,setExpandedKeys:A,scrollToNode:ne,scrollTo:j}),(Q,Z)=>(_(),V("div",{class:T([o(i).b(),{[o(i).m("highlight-current")]:Q.highlightCurrent}]),role:"tree"},[o(c)?(_(),oe(o(sv),{key:0,ref_key:"listRef",ref:d,"class-name":o(i).b("virtual-list"),data:o(u),total:o(u).length,height:Q.height,"item-size":o(s),"perf-mode":Q.perfMode,"scrollbar-always-on":Q.scrollbarAlwaysOn},{default:U(({data:ee,index:ae,style:re})=>[(_(),oe(Z4,{key:ee[ae].key,style:_e(re),node:ee[ae],expanded:ee[ae].expanded,"show-checkbox":Q.showCheckbox,checked:o(v)(ee[ae]),indeterminate:o(m)(ee[ae]),"item-size":o(s),disabled:o(h)(ee[ae]),current:o(p)(ee[ae]),"hidden-expand-icon":o(g)(ee[ae]),onClick:o(b),onToggle:o(f),onCheck:o(C),onDrop:o(E)},null,8,["style","node","expanded","show-checkbox","checked","indeterminate","item-size","disabled","current","hidden-expand-icon","onClick","onToggle","onCheck","onDrop"]))]),_:1},8,["class-name","data","total","height","item-size","perf-mode","scrollbar-always-on"])):(_(),V("div",{key:1,class:T(o(i).e("empty-block"))},[G(Q.$slots,"empty",{},()=>{var ee;return[F("span",{class:T(o(i).e("empty-text"))},pe((ee=Q.emptyText)!=null?ee:o(r)("el.tree.emptyText")),3)]})],2))],2))}});var eM=fe(Q4,[["__file","tree.vue"]]);const tM=He(eM),rp=Symbol("uploadContextKey"),nM="ElUpload";class lM extends Error{constructor(t,n,l,a){super(t),this.name="UploadAjaxError",this.status=n,this.method=l,this.url=a}}function yc(e,t,n){let l;return n.response?l=`${n.response.error||n.response}`:n.responseText?l=`${n.responseText}`:l=`fail to ${t.method} ${e} ${n.status}`,new lM(l,n.status,t.method,e)}function oM(e){const t=e.responseText||e.response;if(!t)return t;try{return JSON.parse(t)}catch{return t}}const aM=e=>{typeof XMLHttpRequest>"u"&&jt(nM,"XMLHttpRequest is undefined");const t=new XMLHttpRequest,n=e.action;t.upload&&t.upload.addEventListener("progress",s=>{const r=s;r.percent=s.total>0?s.loaded/s.total*100:0,e.onProgress(r)});const l=new FormData;if(e.data)for(const[s,r]of Object.entries(e.data))ke(r)&&r.length?l.append(s,...r):l.append(s,r);l.append(e.filename,e.file,e.file.name),t.addEventListener("error",()=>{e.onError(yc(n,e,t))}),t.addEventListener("load",()=>{if(t.status<200||t.status>=300)return e.onError(yc(n,e,t));e.onSuccess(oM(t))}),t.open(e.method,n,!0),e.withCredentials&&"withCredentials"in t&&(t.withCredentials=!0);const a=e.headers||{};if(a instanceof Headers)a.forEach((s,r)=>t.setRequestHeader(r,s));else for(const[s,r]of Object.entries(a))qt(r)||t.setRequestHeader(s,String(r));return t.send(l),t},ip=["text","picture","picture-card"];let sM=1;const Lr=()=>Date.now()+sM++,up=de({action:{type:String,default:"#"},headers:{type:Y(Object)},method:{type:String,default:"post"},data:{type:Y([Object,Function,Promise]),default:()=>Vt({})},multiple:Boolean,name:{type:String,default:"file"},drag:Boolean,withCredentials:Boolean,showFileList:{type:Boolean,default:!0},accept:{type:String,default:""},fileList:{type:Y(Array),default:()=>Vt([])},autoUpload:{type:Boolean,default:!0},listType:{type:String,values:ip,default:"text"},httpRequest:{type:Y(Function),default:aM},disabled:Boolean,limit:Number}),rM=de({...up,beforeUpload:{type:Y(Function),default:Bt},beforeRemove:{type:Y(Function)},onRemove:{type:Y(Function),default:Bt},onChange:{type:Y(Function),default:Bt},onPreview:{type:Y(Function),default:Bt},onSuccess:{type:Y(Function),default:Bt},onProgress:{type:Y(Function),default:Bt},onError:{type:Y(Function),default:Bt},onExceed:{type:Y(Function),default:Bt},crossorigin:{type:Y(String)}}),iM=de({files:{type:Y(Array),default:()=>Vt([])},disabled:Boolean,handlePreview:{type:Y(Function),default:Bt},listType:{type:String,values:ip,default:"text"},crossorigin:{type:Y(String)}}),uM={remove:e=>!!e},cM=x({name:"ElUploadList"}),dM=x({...cM,props:iM,emits:uM,setup(e,{emit:t}){const n=e,{t:l}=pt(),a=ue("upload"),s=ue("icon"),r=ue("list"),i=fn(),u=I(!1),c=y(()=>[a.b("list"),a.bm("list",n.listType),a.is("disabled",n.disabled)]),d=f=>{t("remove",f)};return(f,m)=>(_(),oe(Oc,{tag:"ul",class:T(o(c)),name:o(r).b()},{default:U(()=>[(_(!0),V(Oe,null,ut(f.files,(v,h)=>(_(),V("li",{key:v.uid||v.name,class:T([o(a).be("list","item"),o(a).is(v.status),{focusing:u.value}]),tabindex:"0",onKeydown:Tt(p=>!o(i)&&d(v),["delete"]),onFocus:p=>u.value=!0,onBlur:p=>u.value=!1,onClick:p=>u.value=!1},[G(f.$slots,"default",{file:v,index:h},()=>[f.listType==="picture"||v.status!=="uploading"&&f.listType==="picture-card"?(_(),V("img",{key:0,class:T(o(a).be("list","item-thumbnail")),src:v.url,crossorigin:f.crossorigin,alt:""},null,10,["src","crossorigin"])):J("v-if",!0),v.status==="uploading"||f.listType!=="picture-card"?(_(),V("div",{key:1,class:T(o(a).be("list","item-info"))},[F("a",{class:T(o(a).be("list","item-name")),onClick:Le(p=>f.handlePreview(v),["prevent"])},[H(o(Se),{class:T(o(s).m("document"))},{default:U(()=>[H(o(rm))]),_:1},8,["class"]),F("span",{class:T(o(a).be("list","item-file-name")),title:v.name},pe(v.name),11,["title"])],10,["onClick"]),v.status==="uploading"?(_(),oe(o(Xf),{key:0,type:f.listType==="picture-card"?"circle":"line","stroke-width":f.listType==="picture-card"?6:2,percentage:Number(v.percentage),style:_e(f.listType==="picture-card"?"":"margin-top: 0.5rem")},null,8,["type","stroke-width","percentage","style"])):J("v-if",!0)],2)):J("v-if",!0),F("label",{class:T(o(a).be("list","item-status-label"))},[f.listType==="text"?(_(),oe(o(Se),{key:0,class:T([o(s).m("upload-success"),o(s).m("circle-check")])},{default:U(()=>[H(o(Yr))]),_:1},8,["class"])):["picture-card","picture"].includes(f.listType)?(_(),oe(o(Se),{key:1,class:T([o(s).m("upload-success"),o(s).m("check")])},{default:U(()=>[H(o(va))]),_:1},8,["class"])):J("v-if",!0)],2),o(i)?J("v-if",!0):(_(),oe(o(Se),{key:2,class:T(o(s).m("close")),onClick:p=>d(v)},{default:U(()=>[H(o(zn))]),_:2},1032,["class","onClick"])),J(" Due to close btn only appears when li gets focused disappears after li gets blurred, thus keyboard navigation can never reach close btn"),J(" This is a bug which needs to be fixed "),J(" TODO: Fix the incorrect navigation interaction "),o(i)?J("v-if",!0):(_(),V("i",{key:3,class:T(o(s).m("close-tip"))},pe(o(l)("el.upload.deleteTip")),3)),f.listType==="picture-card"?(_(),V("span",{key:4,class:T(o(a).be("list","item-actions"))},[F("span",{class:T(o(a).be("list","item-preview")),onClick:p=>f.handlePreview(v)},[H(o(Se),{class:T(o(s).m("zoom-in"))},{default:U(()=>[H(o(dd))]),_:1},8,["class"])],10,["onClick"]),o(i)?J("v-if",!0):(_(),V("span",{key:0,class:T(o(a).be("list","item-delete")),onClick:p=>d(v)},[H(o(Se),{class:T(o(s).m("delete"))},{default:U(()=>[H(o(am))]),_:1},8,["class"])],10,["onClick"]))],2)):J("v-if",!0)])],42,["onKeydown","onFocus","onBlur","onClick"]))),128)),G(f.$slots,"append")]),_:3},8,["class","name"]))}});var Cc=fe(dM,[["__file","upload-list.vue"]]);const fM=de({disabled:Boolean}),vM={file:e=>ke(e)},cp="ElUploadDrag",pM=x({name:cp}),hM=x({...pM,props:fM,emits:vM,setup(e,{emit:t}){we(rp)||jt(cp,"usage: ");const l=ue("upload"),a=I(!1),s=fn(),r=c=>{if(s.value)return;a.value=!1,c.stopPropagation();const d=Array.from(c.dataTransfer.files),f=c.dataTransfer.items||[];d.forEach((m,v)=>{var h;const p=f[v],g=(h=p==null?void 0:p.webkitGetAsEntry)==null?void 0:h.call(p);g&&(m.isDirectory=g.isDirectory)}),t("file",d)},i=()=>{s.value||(a.value=!0)},u=c=>{c.currentTarget.contains(c.relatedTarget)||(a.value=!1)};return(c,d)=>(_(),V("div",{class:T([o(l).b("dragger"),o(l).is("dragover",a.value)]),onDrop:Le(r,["prevent"]),onDragover:Le(i,["prevent"]),onDragleave:Le(u,["prevent"])},[G(c.$slots,"default")],42,["onDrop","onDragover","onDragleave"]))}});var mM=fe(hM,[["__file","upload-dragger.vue"]]);const gM=de({...up,beforeUpload:{type:Y(Function),default:Bt},onRemove:{type:Y(Function),default:Bt},onStart:{type:Y(Function),default:Bt},onSuccess:{type:Y(Function),default:Bt},onProgress:{type:Y(Function),default:Bt},onError:{type:Y(Function),default:Bt},onExceed:{type:Y(Function),default:Bt}}),bM=x({name:"ElUploadContent",inheritAttrs:!1}),yM=x({...bM,props:gM,setup(e,{expose:t}){const n=e,l=ue("upload"),a=fn(),s=Lt({}),r=Lt(),i=p=>{if(p.length===0)return;const{autoUpload:g,limit:b,fileList:E,multiple:C,onStart:w,onExceed:k}=n;if(b&&E.length+p.length>b){k(p,E);return}C||(p=p.slice(0,1));for(const S of p){const $=S;$.uid=Lr(),w($),g&&u($)}},u=async p=>{if(r.value.value="",!n.beforeUpload)return d(p);let g,b={};try{const C=n.data,w=n.beforeUpload(p);b=lr(n.data)?Wa(n.data):n.data,g=await w,lr(n.data)&&tn(C,b)&&(b=Wa(n.data))}catch{g=!1}if(g===!1){n.onRemove(p);return}let E=p;g instanceof Blob&&(g instanceof File?E=g:E=new File([g],p.name,{type:p.type})),d(Object.assign(E,{uid:p.uid}),b)},c=async(p,g)=>Qe(p)?p(g):p,d=async(p,g)=>{const{headers:b,data:E,method:C,withCredentials:w,name:k,action:S,onProgress:$,onSuccess:M,onError:R,httpRequest:N}=n;try{g=await c(g??E,p)}catch{n.onRemove(p);return}const{uid:O}=p,P={headers:b||{},withCredentials:w,file:p,data:g,method:C,filename:k,action:S,onProgress:K=>{$(K,p)},onSuccess:K=>{M(K,p),delete s.value[O]},onError:K=>{R(K,p),delete s.value[O]}},W=N(P);s.value[O]=W,W instanceof Promise&&W.then(P.onSuccess,P.onError)},f=p=>{const g=p.target.files;g&&i(Array.from(g))},m=()=>{a.value||(r.value.value="",r.value.click())},v=()=>{m()};return t({abort:p=>{Qc(s.value).filter(p?([b])=>String(p.uid)===b:()=>!0).forEach(([b,E])=>{E instanceof XMLHttpRequest&&E.abort(),delete s.value[b]})},upload:u}),(p,g)=>(_(),V("div",{class:T([o(l).b(),o(l).m(p.listType),o(l).is("drag",p.drag),o(l).is("disabled",o(a))]),tabindex:o(a)?"-1":"0",onClick:m,onKeydown:Tt(Le(v,["self"]),["enter","space"])},[p.drag?(_(),oe(mM,{key:0,disabled:o(a),onFile:i},{default:U(()=>[G(p.$slots,"default")]),_:3},8,["disabled"])):G(p.$slots,"default",{key:1}),F("input",{ref_key:"inputRef",ref:r,class:T(o(l).e("input")),name:p.name,disabled:o(a),multiple:p.multiple,accept:p.accept,type:"file",onChange:f,onClick:Le(()=>{},["stop"])},null,42,["name","disabled","multiple","accept","onClick"])],42,["tabindex","onKeydown"]))}});var wc=fe(yM,[["__file","upload-content.vue"]]);const kc="ElUpload",Sc=e=>{var t;(t=e.url)!=null&&t.startsWith("blob:")&&URL.revokeObjectURL(e.url)},CM=(e,t)=>{const n=Bc(e,"fileList",void 0,{passive:!0}),l=v=>n.value.find(h=>h.uid===v.uid);function a(v){var h;(h=t.value)==null||h.abort(v)}function s(v=["ready","uploading","success","fail"]){n.value=n.value.filter(h=>!v.includes(h.status))}function r(v){n.value=n.value.filter(h=>h.uid!==v.uid)}const i=(v,h)=>{const p=l(h);p&&(console.error(v),p.status="fail",r(p),e.onError(v,p,n.value),e.onChange(p,n.value))},u=(v,h)=>{const p=l(h);p&&(e.onProgress(v,p,n.value),p.status="uploading",p.percentage=Math.round(v.percent))},c=(v,h)=>{const p=l(h);p&&(p.status="success",p.response=v,e.onSuccess(v,p,n.value),e.onChange(p,n.value))},d=v=>{qt(v.uid)&&(v.uid=Lr());const h={name:v.name,percentage:0,status:"ready",size:v.size,raw:v,uid:v.uid};if(e.listType==="picture-card"||e.listType==="picture")try{h.url=URL.createObjectURL(v)}catch(p){p.message,e.onError(p,h,n.value)}n.value=[...n.value,h],e.onChange(h,n.value)},f=async v=>{const h=v instanceof File?l(v):v;h||jt(kc,"file to be removed not found");const p=g=>{a(g),r(g),e.onRemove(g,n.value),Sc(g)};e.beforeRemove?await e.beforeRemove(h,n.value)!==!1&&p(h):p(h)};function m(){n.value.filter(({status:v})=>v==="ready").forEach(({raw:v})=>{var h;return v&&((h=t.value)==null?void 0:h.upload(v))})}return ie(()=>e.listType,v=>{v!=="picture-card"&&v!=="picture"||(n.value=n.value.map(h=>{const{raw:p,url:g}=h;if(!g&&p)try{h.url=URL.createObjectURL(p)}catch(b){e.onError(b,h,n.value)}return h}))}),ie(n,v=>{for(const h of v)h.uid||(h.uid=Lr()),h.status||(h.status="success")},{immediate:!0,deep:!0}),{uploadFiles:n,abort:a,clearFiles:s,handleError:i,handleProgress:u,handleStart:d,handleSuccess:c,handleRemove:f,submit:m,revokeFileObjectURL:Sc}},wM=x({name:"ElUpload"}),kM=x({...wM,props:rM,setup(e,{expose:t}){const n=e,l=fn(),a=Lt(),{abort:s,submit:r,clearFiles:i,uploadFiles:u,handleStart:c,handleError:d,handleRemove:f,handleSuccess:m,handleProgress:v,revokeFileObjectURL:h}=CM(n,a),p=y(()=>n.listType==="picture-card"),g=y(()=>({...n,fileList:u.value,onStart:c,onProgress:v,onSuccess:m,onError:d,onRemove:f}));return Nt(()=>{u.value.forEach(h)}),rt(rp,{accept:wt(n,"accept")}),t({abort:s,submit:r,clearFiles:i,handleStart:c,handleRemove:f}),(b,E)=>(_(),V("div",null,[o(p)&&b.showFileList?(_(),oe(Cc,{key:0,disabled:o(l),"list-type":b.listType,files:o(u),crossorigin:b.crossorigin,"handle-preview":b.onPreview,onRemove:o(f)},Mn({append:U(()=>[H(wc,et({ref_key:"uploadRef",ref:a},o(g)),{default:U(()=>[b.$slots.trigger?G(b.$slots,"trigger",{key:0}):J("v-if",!0),!b.$slots.trigger&&b.$slots.default?G(b.$slots,"default",{key:1}):J("v-if",!0)]),_:3},16)]),_:2},[b.$slots.file?{name:"default",fn:U(({file:C,index:w})=>[G(b.$slots,"file",{file:C,index:w})])}:void 0]),1032,["disabled","list-type","files","crossorigin","handle-preview","onRemove"])):J("v-if",!0),!o(p)||o(p)&&!b.showFileList?(_(),oe(wc,et({key:1,ref_key:"uploadRef",ref:a},o(g)),{default:U(()=>[b.$slots.trigger?G(b.$slots,"trigger",{key:0}):J("v-if",!0),!b.$slots.trigger&&b.$slots.default?G(b.$slots,"default",{key:1}):J("v-if",!0)]),_:3},16)):J("v-if",!0),b.$slots.trigger?G(b.$slots,"default",{key:2}):J("v-if",!0),G(b.$slots,"tip"),!o(p)&&b.showFileList?(_(),oe(Cc,{key:3,disabled:o(l),"list-type":b.listType,files:o(u),crossorigin:b.crossorigin,"handle-preview":b.onPreview,onRemove:o(f)},Mn({_:2},[b.$slots.file?{name:"default",fn:U(({file:C,index:w})=>[G(b.$slots,"file",{file:C,index:w})])}:void 0]),1032,["disabled","list-type","files","crossorigin","handle-preview","onRemove"])):J("v-if",!0)]))}});var SM=fe(kM,[["__file","upload.vue"]]);const EM=He(SM),_M=de({zIndex:{type:Number,default:9},rotate:{type:Number,default:-22},width:Number,height:Number,image:String,content:{type:Y([String,Array]),default:"Element Plus"},font:{type:Y(Object)},gap:{type:Y(Array),default:()=>[100,100]},offset:{type:Y(Array)}});function TM(e){return e.replace(/([A-Z])/g,"-$1").toLowerCase()}function $M(e){return Object.keys(e).map(t=>`${TM(t)}: ${e[t]};`).join(" ")}function NM(){return window.devicePixelRatio||1}const IM=(e,t)=>{let n=!1;return e.removedNodes.length&&t&&(n=Array.from(e.removedNodes).includes(t)),e.type==="attributes"&&e.target===t&&(n=!0),n},dp=3;function er(e,t,n=1){const l=document.createElement("canvas"),a=l.getContext("2d"),s=e*n,r=t*n;return l.setAttribute("width",`${s}px`),l.setAttribute("height",`${r}px`),a.save(),[a,l,s,r]}function MM(){function e(t,n,l,a,s,r,i,u){const[c,d,f,m]=er(a,s,l);if(t instanceof HTMLImageElement)c.drawImage(t,0,0,f,m);else{const{color:j,fontSize:Q,fontStyle:Z,fontWeight:ee,fontFamily:ae,textAlign:re,textBaseline:le}=r,se=Number(Q)*l;c.font=`${Z} normal ${ee} ${se}px/${s}px ${ae}`,c.fillStyle=j,c.textAlign=re,c.textBaseline=le;const ge=ke(t)?t:[t];ge==null||ge.forEach((Be,te)=>{c.fillText(Be??"",f/2,te*(se+dp*l))})}const v=Math.PI/180*Number(n),h=Math.max(a,s),[p,g,b]=er(h,h,l);p.translate(b/2,b/2),p.rotate(v),f>0&&m>0&&p.drawImage(d,-f/2,-m/2);function E(j,Q){const Z=j*Math.cos(v)-Q*Math.sin(v),ee=j*Math.sin(v)+Q*Math.cos(v);return[Z,ee]}let C=0,w=0,k=0,S=0;const $=f/2,M=m/2;[[0-$,0-M],[0+$,0-M],[0+$,0+M],[0-$,0+M]].forEach(([j,Q])=>{const[Z,ee]=E(j,Q);C=Math.min(C,Z),w=Math.max(w,Z),k=Math.min(k,ee),S=Math.max(S,ee)});const N=C+b/2,O=k+b/2,P=w-C,W=S-k,K=i*l,D=u*l,L=(P+K)*2,z=W+D,[B,A]=er(L,z);function ne(j=0,Q=0){B.drawImage(g,N,O,P,W,j,Q,P,W)}return ne(),ne(P+K,-W/2-D/2),ne(P+K,+W/2+D/2),[A.toDataURL(),L/l,z/l]}return e}const RM=x({name:"ElWatermark"}),PM=x({...RM,props:_M,setup(e){const t=e,n={position:"relative"},l=y(()=>{var N,O;return(O=(N=t.font)==null?void 0:N.color)!=null?O:"rgba(0,0,0,.15)"}),a=y(()=>{var N,O;return(O=(N=t.font)==null?void 0:N.fontSize)!=null?O:16}),s=y(()=>{var N,O;return(O=(N=t.font)==null?void 0:N.fontWeight)!=null?O:"normal"}),r=y(()=>{var N,O;return(O=(N=t.font)==null?void 0:N.fontStyle)!=null?O:"normal"}),i=y(()=>{var N,O;return(O=(N=t.font)==null?void 0:N.fontFamily)!=null?O:"sans-serif"}),u=y(()=>{var N,O;return(O=(N=t.font)==null?void 0:N.textAlign)!=null?O:"center"}),c=y(()=>{var N,O;return(O=(N=t.font)==null?void 0:N.textBaseline)!=null?O:"hanging"}),d=y(()=>t.gap[0]),f=y(()=>t.gap[1]),m=y(()=>d.value/2),v=y(()=>f.value/2),h=y(()=>{var N,O;return(O=(N=t.offset)==null?void 0:N[0])!=null?O:m.value}),p=y(()=>{var N,O;return(O=(N=t.offset)==null?void 0:N[1])!=null?O:v.value}),g=()=>{const N={zIndex:t.zIndex,position:"absolute",left:0,top:0,width:"100%",height:"100%",pointerEvents:"none",backgroundRepeat:"repeat"};let O=h.value-m.value,P=p.value-v.value;return O>0&&(N.left=`${O}px`,N.width=`calc(100% - ${O}px)`,O=0),P>0&&(N.top=`${P}px`,N.height=`calc(100% - ${P}px)`,P=0),N.backgroundPosition=`${O}px ${P}px`,N},b=Lt(null),E=Lt(),C=I(!1),w=()=>{E.value&&(E.value.remove(),E.value=void 0)},k=(N,O)=>{var P;b.value&&E.value&&(C.value=!0,E.value.setAttribute("style",$M({...g(),backgroundImage:`url('${N}')`,backgroundSize:`${Math.floor(O)}px`})),(P=b.value)==null||P.append(E.value),setTimeout(()=>{C.value=!1}))},S=N=>{let O=120,P=64;const{image:W,content:K,width:D,height:L,rotate:z}=t;if(!W&&N.measureText){N.font=`${Number(a.value)}px ${i.value}`;const B=ke(K)?K:[K];let A=0,ne=0;B.forEach(Z=>{const{width:ee,fontBoundingBoxAscent:ae,fontBoundingBoxDescent:re,actualBoundingBoxAscent:le,actualBoundingBoxDescent:se}=N.measureText(Z),ge=vt(ae)?le+se:ae+re;ee>A&&(A=Math.ceil(ee)),ge>ne&&(ne=Math.ceil(ge))}),O=A,P=ne*B.length+(B.length-1)*dp;const j=Math.PI/180*Number(z),Q=Math.ceil(Math.abs(Math.sin(j)*P)/2);O+=Q}return[D??O,L??P]},$=MM(),M=()=>{const O=document.createElement("canvas").getContext("2d"),P=t.image,W=t.content,K=t.rotate;if(O){E.value||(E.value=document.createElement("div"));const D=NM(),[L,z]=S(O),B=A=>{const[ne,j]=$(A||"",K,D,L,z,{color:l.value,fontSize:a.value,fontStyle:r.value,fontWeight:s.value,fontFamily:i.value,textAlign:u.value,textBaseline:c.value},d.value,f.value);k(ne,j)};if(P){const A=new Image;A.onload=()=>{B(A)},A.onerror=()=>{B(W)},A.crossOrigin="anonymous",A.referrerPolicy="no-referrer",A.src=P}else B(W)}};return Xe(()=>{M()}),ie(()=>t,()=>{M()},{deep:!0,flush:"post"}),Nt(()=>{w()}),Lc(b,N=>{C.value||N.forEach(O=>{IM(O,E.value)&&(w(),M())})},{attributes:!0,subtree:!0,childList:!0}),(N,O)=>(_(),V("div",{ref_key:"containerRef",ref:b,style:_e([n])},[G(N.$slots,"default")],4))}});var OM=fe(PM,[["__file","watermark.vue"]]);const LM=He(OM),BM=de({zIndex:{type:Number,default:1001},visible:Boolean,fill:{type:String,default:"rgba(0,0,0,0.5)"},pos:{type:Y(Object)},targetAreaClickable:{type:Boolean,default:!0}}),VM=(e,t,n,l,a)=>{const s=I(null),r=()=>{let f;return Ve(e.value)?f=document.querySelector(e.value):Qe(e.value)?f=e.value():f=e.value,f},i=()=>{const f=r();if(!f||!t.value){s.value=null;return}DM(f)||f.scrollIntoView(a.value);const{left:m,top:v,width:h,height:p}=f.getBoundingClientRect();s.value={left:m,top:v,width:h,height:p,radius:0}};Xe(()=>{ie([t,e],()=>{i()},{immediate:!0}),window.addEventListener("resize",i)}),Nt(()=>{window.removeEventListener("resize",i)});const u=f=>{var m;return(m=ke(n.value.offset)?n.value.offset[f]:n.value.offset)!=null?m:6},c=y(()=>{var f;if(!s.value)return s.value;const m=u(0),v=u(1),h=((f=n.value)==null?void 0:f.radius)||2;return{left:s.value.left-m,top:s.value.top-v,width:s.value.width+m*2,height:s.value.height+v*2,radius:h}}),d=y(()=>{const f=r();return!l.value||!f||!window.DOMRect?f||void 0:{getBoundingClientRect(){var m,v,h,p;return window.DOMRect.fromRect({width:((m=c.value)==null?void 0:m.width)||0,height:((v=c.value)==null?void 0:v.height)||0,x:((h=c.value)==null?void 0:h.left)||0,y:((p=c.value)==null?void 0:p.top)||0})}}});return{mergedPosInfo:c,triggerTarget:d}},Rs=Symbol("ElTour");function DM(e){const t=window.innerWidth||document.documentElement.clientWidth,n=window.innerHeight||document.documentElement.clientHeight,{top:l,right:a,bottom:s,left:r}=e.getBoundingClientRect();return l>=0&&r>=0&&a<=t&&s<=n}const AM=(e,t,n,l,a,s,r,i)=>{const u=I(),c=I(),d=I({}),f={x:u,y:c,placement:l,strategy:a,middlewareData:d},m=y(()=>{const b=[Kc(o(s)),sh(),rh(),FM()];return o(i)&&o(n)&&b.push(zc({element:o(n)})),b}),v=async()=>{if(!bt)return;const b=o(e),E=o(t);if(!b||!E)return;const C=await Hc(b,E,{placement:o(l),strategy:o(a),middleware:o(m)});ko(f).forEach(w=>{f[w].value=C[w]})},h=y(()=>{if(!o(e))return{position:"fixed",top:"50%",left:"50%",transform:"translate3d(-50%, -50%, 0)",maxWidth:"100vw",zIndex:o(r)};const{overflow:b}=o(d);return{position:o(a),zIndex:o(r),top:o(c)!=null?`${o(c)}px`:"",left:o(u)!=null?`${o(u)}px`:"",maxWidth:b!=null&&b.maxWidth?`${b==null?void 0:b.maxWidth}px`:""}}),p=y(()=>{if(!o(i))return{};const{arrow:b}=o(d);return{left:(b==null?void 0:b.x)!=null?`${b==null?void 0:b.x}px`:"",top:(b==null?void 0:b.y)!=null?`${b==null?void 0:b.y}px`:""}});let g;return Xe(()=>{const b=o(e),E=o(t);b&&E&&(g=ih(b,E,v)),bn(()=>{v()})}),Nt(()=>{g&&g()}),{update:v,contentStyle:h,arrowStyle:p}},FM=()=>({name:"overflow",async fn(e){const t=await uh(e);let n=0;return t.left>0&&(n=t.left),t.right>0&&(n=t.right),{data:{maxWidth:e.rects.floating.width-n}}}}),xM=x({name:"ElTourMask",inheritAttrs:!1}),zM=x({...xM,props:BM,setup(e){const t=e,{ns:n}=we(Rs),l=y(()=>{var i,u;return(u=(i=t.pos)==null?void 0:i.radius)!=null?u:2}),a=y(()=>{const i=l.value,u=`a${i},${i} 0 0 1`;return{topRight:`${u} ${i},${i}`,bottomRight:`${u} ${-i},${i}`,bottomLeft:`${u} ${-i},${-i}`,topLeft:`${u} ${i},${-i}`}}),s=y(()=>{const i=window.innerWidth,u=window.innerHeight,c=a.value,d=`M${i},0 L0,0 L0,${u} L${i},${u} L${i},0 Z`,f=l.value;return t.pos?`${d} M${t.pos.left+f},${t.pos.top} h${t.pos.width-f*2} ${c.topRight} v${t.pos.height-f*2} ${c.bottomRight} h${-t.pos.width+f*2} ${c.bottomLeft} v${-t.pos.height+f*2} ${c.topLeft} z`:d}),r=y(()=>({fill:t.fill,pointerEvents:"auto",cursor:"auto"}));return mi(wt(t,"visible"),{ns:n}),(i,u)=>i.visible?(_(),V("div",et({key:0,class:o(n).e("mask"),style:{position:"fixed",left:0,right:0,top:0,bottom:0,zIndex:i.zIndex,pointerEvents:i.pos&&i.targetAreaClickable?"none":"auto"}},i.$attrs),[(_(),V("svg",{style:{width:"100%",height:"100%"}},[F("path",{class:T(o(n).e("hollow")),style:_e(o(r)),d:o(s)},null,14,["d"])]))],16)):J("v-if",!0)}});var HM=fe(zM,[["__file","mask.vue"]]);const KM=["absolute","fixed"],WM=["top-start","top-end","top","bottom-start","bottom-end","bottom","left-start","left-end","left","right-start","right-end","right"],Xi=de({placement:{type:Y(String),values:WM,default:"bottom"},reference:{type:Y(Object),default:null},strategy:{type:Y(String),values:KM,default:"absolute"},offset:{type:Number,default:10},showArrow:Boolean,zIndex:{type:Number,default:2001}}),jM={close:()=>!0},UM=x({name:"ElTourContent"}),YM=x({...UM,props:Xi,emits:jM,setup(e,{emit:t}){const n=e,l=I(n.placement),a=I(n.strategy),s=I(null),r=I(null);ie(()=>n.placement,()=>{l.value=n.placement});const{contentStyle:i,arrowStyle:u}=AM(wt(n,"reference"),s,r,l,a,wt(n,"offset"),wt(n,"zIndex"),wt(n,"showArrow")),c=y(()=>l.value.split("-")[0]),{ns:d}=we(Rs),f=()=>{t("close")},m=v=>{v.detail.focusReason==="pointer"&&v.preventDefault()};return(v,h)=>(_(),V("div",{ref_key:"contentRef",ref:s,style:_e(o(i)),class:T(o(d).e("content")),"data-side":o(c),tabindex:"-1"},[H(o(Ro),{loop:"",trapped:"","focus-start-el":"container","focus-trap-el":s.value||void 0,onReleaseRequested:f,onFocusoutPrevented:m},{default:U(()=>[G(v.$slots,"default")]),_:3},8,["focus-trap-el"]),v.showArrow?(_(),V("span",{key:0,ref_key:"arrowRef",ref:r,style:_e(o(u)),class:T(o(d).e("arrow"))},null,6)):J("v-if",!0)],14,["data-side"]))}});var qM=fe(YM,[["__file","content.vue"]]),GM=x({name:"ElTourSteps",props:{current:{type:Number,default:0}},emits:["update-total"],setup(e,{slots:t,emit:n}){let l=0;return()=>{var a,s;const r=(a=t.default)==null?void 0:a.call(t),i=[];let u=0;function c(d){ke(d)&&d.forEach(f=>{var m;((m=(f==null?void 0:f.type)||{})==null?void 0:m.name)==="ElTourStep"&&(i.push(f),u+=1)})}return r.length&&c(Zn((s=r[0])==null?void 0:s.children)),l!==u&&(l=u,n("update-total",u)),i.length?i[e.current]:null}}});const XM=de({modelValue:Boolean,current:{type:Number,default:0},showArrow:{type:Boolean,default:!0},showClose:{type:Boolean,default:!0},closeIcon:{type:$t},placement:Xi.placement,contentStyle:{type:Y([Object])},mask:{type:Y([Boolean,Object]),default:!0},gap:{type:Y(Object),default:()=>({offset:6,radius:2})},zIndex:{type:Number},scrollIntoViewOptions:{type:Y([Boolean,Object]),default:()=>({block:"center"})},type:{type:Y(String)},appendTo:{type:ws.to.type,default:"body"},closeOnPressEscape:{type:Boolean,default:!0},targetAreaClickable:{type:Boolean,default:!0}}),ZM={[De]:e=>_t(e),"update:current":e=>Te(e),close:e=>Te(e),finish:()=>!0,change:e=>Te(e)},JM=x({name:"ElTour"}),QM=x({...JM,props:XM,emits:ZM,setup(e,{emit:t}){const n=e,l=ue("tour"),a=I(0),s=I(),r=Bc(n,"current",t,{passive:!0}),i=y(()=>{var R;return(R=s.value)==null?void 0:R.target}),u=y(()=>[l.b(),g.value==="primary"?l.m("primary"):""]),c=y(()=>{var R;return((R=s.value)==null?void 0:R.placement)||n.placement}),d=y(()=>{var R,N;return(N=(R=s.value)==null?void 0:R.contentStyle)!=null?N:n.contentStyle}),f=y(()=>{var R,N;return(N=(R=s.value)==null?void 0:R.mask)!=null?N:n.mask}),m=y(()=>!!f.value&&n.modelValue),v=y(()=>_t(f.value)?void 0:f.value),h=y(()=>{var R,N;return!!i.value&&((N=(R=s.value)==null?void 0:R.showArrow)!=null?N:n.showArrow)}),p=y(()=>{var R,N;return(N=(R=s.value)==null?void 0:R.scrollIntoViewOptions)!=null?N:n.scrollIntoViewOptions}),g=y(()=>{var R,N;return(N=(R=s.value)==null?void 0:R.type)!=null?N:n.type}),{nextZIndex:b}=Mo(),E=b(),C=y(()=>{var R;return(R=n.zIndex)!=null?R:E}),{mergedPosInfo:w,triggerTarget:k}=VM(i,wt(n,"modelValue"),wt(n,"gap"),f,p);ie(()=>n.modelValue,R=>{R||(r.value=0)});const S=()=>{n.closeOnPressEscape&&(t(De,!1),t("close",r.value))},$=R=>{a.value=R},M=Xt();return rt(Rs,{currentStep:s,current:r,total:a,showClose:wt(n,"showClose"),closeIcon:wt(n,"closeIcon"),mergedType:g,ns:l,slots:M,updateModelValue(R){t(De,R)},onClose(){t("close",r.value)},onFinish(){t("finish")},onChange(){t(nt,r.value)}}),(R,N)=>(_(),V(Oe,null,[H(o(Po),{to:R.appendTo},{default:U(()=>{var O,P;return[F("div",et({class:o(u)},R.$attrs),[H(HM,{visible:o(m),fill:(O=o(v))==null?void 0:O.color,style:_e((P=o(v))==null?void 0:P.style),pos:o(w),"z-index":o(C),"target-area-clickable":R.targetAreaClickable},null,8,["visible","fill","style","pos","z-index","target-area-clickable"]),R.modelValue?(_(),oe(qM,{key:o(r),reference:o(k),placement:o(c),"show-arrow":o(h),"z-index":o(C),style:_e(o(d)),onClose:S},{default:U(()=>[H(o(GM),{current:o(r),onUpdateTotal:$},{default:U(()=>[G(R.$slots,"default")]),_:3},8,["current"])]),_:3},8,["reference","placement","show-arrow","z-index","style"])):J("v-if",!0)],16)]}),_:3},8,["to"]),J(" just for IDE "),J("v-if",!0)],64))}});var e3=fe(QM,[["__file","tour.vue"]]);const t3=de({target:{type:Y([String,Object,Function])},title:String,description:String,showClose:{type:Boolean,default:void 0},closeIcon:{type:$t},showArrow:{type:Boolean,default:void 0},placement:Xi.placement,mask:{type:Y([Boolean,Object]),default:void 0},contentStyle:{type:Y([Object])},prevButtonProps:{type:Y(Object)},nextButtonProps:{type:Y(Object)},scrollIntoViewOptions:{type:Y([Boolean,Object]),default:void 0},type:{type:Y(String)}}),n3={close:()=>!0},l3=x({name:"ElTourStep"}),o3=x({...l3,props:t3,emits:n3,setup(e,{emit:t}){const n=e,{Close:l}=fd,{t:a}=pt(),{currentStep:s,current:r,total:i,showClose:u,closeIcon:c,mergedType:d,ns:f,slots:m,updateModelValue:v,onClose:h,onFinish:p,onChange:g}=we(Rs);ie(n,M=>{s.value=M},{immediate:!0});const b=y(()=>{var M;return(M=n.showClose)!=null?M:u.value}),E=y(()=>{var M,R;return(R=(M=n.closeIcon)!=null?M:c.value)!=null?R:l}),C=M=>{if(M)return xc(M,["children","onClick"])},w=()=>{var M,R;r.value-=1,(M=n.prevButtonProps)!=null&&M.onClick&&((R=n.prevButtonProps)==null||R.onClick()),g()},k=()=>{var M;r.value>=i.value-1?S():r.value+=1,(M=n.nextButtonProps)!=null&&M.onClick&&n.nextButtonProps.onClick(),g()},S=()=>{$(),p()},$=()=>{v(!1),h(),t("close")};return(M,R)=>(_(),V(Oe,null,[o(b)?(_(),V("button",{key:0,"aria-label":"Close",class:T(o(f).e("closebtn")),type:"button",onClick:$},[H(o(Se),{class:T(o(f).e("close"))},{default:U(()=>[(_(),oe(Ge(o(E))))]),_:1},8,["class"])],2)):J("v-if",!0),F("header",{class:T([o(f).e("header"),{"show-close":o(u)}])},[G(M.$slots,"header",{},()=>[F("span",{role:"heading",class:T(o(f).e("title"))},pe(M.title),3)])],2),F("div",{class:T(o(f).e("body"))},[G(M.$slots,"default",{},()=>[F("span",null,pe(M.description),1)])],2),F("footer",{class:T(o(f).e("footer"))},[F("div",{class:T(o(f).b("indicators"))},[o(m).indicators?(_(),oe(Ge(o(m).indicators),{key:0,current:o(r),total:o(i)},null,8,["current","total"])):(_(!0),V(Oe,{key:1},ut(o(i),(N,O)=>(_(),V("span",{key:N,class:T([o(f).b("indicator"),O===o(r)?"is-active":""])},null,2))),128))],2),F("div",{class:T(o(f).b("buttons"))},[o(r)>0?(_(),oe(o(on),et({key:0,size:"small",type:o(d)},C(M.prevButtonProps),{onClick:w}),{default:U(()=>{var N,O;return[st(pe((O=(N=M.prevButtonProps)==null?void 0:N.children)!=null?O:o(a)("el.tour.previous")),1)]}),_:1},16,["type"])):J("v-if",!0),o(r)<=o(i)-1?(_(),oe(o(on),et({key:1,size:"small",type:o(d)==="primary"?"default":"primary"},C(M.nextButtonProps),{onClick:k}),{default:U(()=>{var N,O;return[st(pe((O=(N=M.nextButtonProps)==null?void 0:N.children)!=null?O:o(r)===o(i)-1?o(a)("el.tour.finish"):o(a)("el.tour.next")),1)]}),_:1},16,["type"])):J("v-if",!0)],2)],2)],64))}});var fp=fe(o3,[["__file","step.vue"]]);const a3=He(e3,{TourStep:fp}),s3=At(fp),r3=de({container:{type:Y([String,Object])},offset:{type:Number,default:0},bound:{type:Number,default:15},duration:{type:Number,default:300},marker:{type:Boolean,default:!0},type:{type:Y(String),default:"default"},direction:{type:Y(String),default:"vertical"},selectScrollTop:Boolean}),i3={change:e=>Ve(e),click:(e,t)=>e instanceof MouseEvent&&(Ve(t)||vt(t))},vp=Symbol("anchor"),Ra=e=>{if(!bt||e==="")return null;if(Ve(e))try{return document.querySelector(e)}catch{return null}return e};function u3(e){let t=0;const n=(...l)=>{t&&Yl(t),t=Ml(()=>{e(...l),t=0})};return n.cancel=()=>{Yl(t),t=0},n}const c3=x({name:"ElAnchor"}),d3=x({...c3,props:r3,emits:i3,setup(e,{expose:t,emit:n}){const l=e,a=Xt(),s=I(""),r=I({}),i=I(null),u=I(null),c=I(),d={};let f=!1,m=0;const v=ue("anchor"),h=y(()=>[v.b(),l.type==="underline"?v.m("underline"):"",v.m(l.direction)]),p=N=>{d[N.href]=N.el},g=N=>{delete d[N]},b=N=>{s.value!==N&&(s.value=N,n(nt,N))};let E=null;const C=N=>{if(!c.value)return;const O=Ra(N);if(!O)return;E&&E(),f=!0;const P=iu(O,c.value),W=dr(O,P),K=P.scrollHeight-P.clientHeight,D=Math.min(W-l.offset,K);E=$h(c.value,m,D,l.duration,()=>{setTimeout(()=>{f=!1},20)})},w=N=>{N&&(b(N),C(N))},k=(N,O)=>{n("click",N,O),w(O)},S=u3(()=>{c.value&&(m=uu(c.value));const N=$();f||vt(N)||b(N)}),$=()=>{if(!c.value)return;const N=uu(c.value),O=[];for(const P of Object.keys(d)){const W=Ra(P);if(!W)continue;const K=iu(W,c.value),D=dr(W,K);O.push({top:D-l.offset-l.bound,href:P})}O.sort((P,W)=>P.top-W.top);for(let P=0;PN))return W.href}},M=()=>{const N=Ra(l.container);!N||vs(N)?c.value=window:c.value=N};xt(c,"scroll",S);const R=()=>{Ee(()=>{if(!i.value||!u.value||!s.value){r.value={};return}const N=d[s.value];if(!N){r.value={};return}const O=i.value.getBoundingClientRect(),P=u.value.getBoundingClientRect(),W=N.getBoundingClientRect();if(l.direction==="horizontal"){const K=W.left-O.left;r.value={left:`${K}px`,width:`${W.width}px`,opacity:1}}else{const K=W.top-O.top+(W.height-P.height)/2;r.value={top:`${K}px`,opacity:1}}})};return ie(s,R),ie(()=>{var N;return(N=a.default)==null?void 0:N.call(a)},R),Xe(()=>{M();const N=decodeURIComponent(window.location.hash);Ra(N)?w(N):S()}),ie(()=>l.container,()=>{M()}),rt(vp,{ns:v,direction:l.direction,currentAnchor:s,addLink:p,removeLink:g,handleClick:k}),t({scrollTo:w}),(N,O)=>(_(),V("div",{ref_key:"anchorRef",ref:i,class:T(o(h))},[N.marker?(_(),V("div",{key:0,ref_key:"markerRef",ref:u,class:T(o(v).e("marker")),style:_e(r.value)},null,6)):J("v-if",!0),F("div",{class:T(o(v).e("list"))},[G(N.$slots,"default")],2)],2))}});var f3=fe(d3,[["__file","anchor.vue"]]);const v3=de({title:String,href:String}),p3=x({name:"ElAnchorLink"}),h3=x({...p3,props:v3,setup(e){const t=e,n=I(null),{ns:l,direction:a,currentAnchor:s,addLink:r,removeLink:i,handleClick:u}=we(vp),c=y(()=>[l.e("link"),l.is("active",s.value===t.href)]),d=f=>{u(f,t.href)};return ie(()=>t.href,(f,m)=>{Ee(()=>{m&&i(m),f&&r({href:f,el:n.value})})}),Xe(()=>{const{href:f}=t;f&&r({href:f,el:n.value})}),Nt(()=>{const{href:f}=t;f&&i(f)}),(f,m)=>(_(),V("div",{class:T(o(l).e("item"))},[F("a",{ref_key:"linkRef",ref:n,class:T(o(c)),href:f.href,onClick:d},[G(f.$slots,"default",{},()=>[st(pe(f.title),1)])],10,["href"]),f.$slots["sub-link"]&&o(a)==="vertical"?(_(),V("div",{key:0,class:T(o(l).e("list"))},[G(f.$slots,"sub-link")],2)):J("v-if",!0)],2))}});var pp=fe(h3,[["__file","anchor-link.vue"]]);const m3=He(f3,{AnchorLink:pp}),g3=At(pp),hp={label:"label",value:"value",disabled:"disabled"},b3=de({direction:{type:Y(String),default:"horizontal"},options:{type:Y(Array),default:()=>[]},modelValue:{type:[String,Number,Boolean],default:void 0},props:{type:Y(Object),default:()=>hp},block:Boolean,size:Jt,disabled:Boolean,validateEvent:{type:Boolean,default:!0},id:String,name:String,...cn(["ariaLabel"])}),y3={[De]:e=>Ve(e)||Te(e)||_t(e),[nt]:e=>Ve(e)||Te(e)||_t(e)},C3=x({name:"ElSegmented"}),w3=x({...C3,props:b3,emits:y3,setup(e,{emit:t}){const n=e,l=ue("segmented"),a=sn(),s=Gt(),r=fn(),{formItem:i}=dn(),{inputId:u,isLabeledByFormItem:c}=Kn(n,{formItemContext:i}),d=I(null),f=xp(),m=kt({isInit:!1,width:0,height:0,translateX:0,translateY:0,focusVisible:!1}),v=N=>{const O=p(N);t(De,O),t(nt,O)},h=y(()=>({...hp,...n.props})),p=N=>yt(N)?N[h.value.value]:N,g=N=>yt(N)?N[h.value.label]:N,b=N=>!!(r.value||yt(N)&&N[h.value.disabled]),E=N=>n.modelValue===p(N),C=N=>n.options.find(O=>p(O)===N),w=N=>[l.e("item"),l.is("selected",E(N)),l.is("disabled",b(N))],k=()=>{if(!d.value)return;const N=d.value.querySelector(".is-selected"),O=d.value.querySelector(".is-selected input");if(!N||!O){m.width=0,m.height=0,m.translateX=0,m.translateY=0,m.focusVisible=!1;return}const P=N.getBoundingClientRect();m.isInit=!0,n.direction==="vertical"?(m.height=P.height,m.translateY=N.offsetTop):(m.width=P.width,m.translateX=N.offsetLeft);try{m.focusVisible=O.matches(":focus-visible")}catch{}},S=y(()=>[l.b(),l.m(s.value),l.is("block",n.block)]),$=y(()=>({width:n.direction==="vertical"?"100%":`${m.width}px`,height:n.direction==="vertical"?`${m.height}px`:"100%",transform:n.direction==="vertical"?`translateY(${m.translateY}px)`:`translateX(${m.translateX}px)`,display:m.isInit?"block":"none"})),M=y(()=>[l.e("item-selected"),l.is("disabled",b(C(n.modelValue))),l.is("focus-visible",m.focusVisible)]),R=y(()=>n.name||a.value);return Ft(d,k),ie(f,k),ie(()=>n.modelValue,()=>{var N;k(),n.validateEvent&&((N=i==null?void 0:i.validate)==null||N.call(i,"change").catch(O=>void 0))},{flush:"post"}),(N,O)=>N.options.length?(_(),V("div",{key:0,id:o(u),ref_key:"segmentedRef",ref:d,class:T(o(S)),role:"radiogroup","aria-label":o(c)?void 0:N.ariaLabel||"segmented","aria-labelledby":o(c)?o(i).labelId:void 0},[F("div",{class:T([o(l).e("group"),o(l).m(n.direction)])},[F("div",{style:_e(o($)),class:T(o(M))},null,6),(_(!0),V(Oe,null,ut(N.options,(P,W)=>(_(),V("label",{key:W,class:T(w(P))},[F("input",{class:T(o(l).e("item-input")),type:"radio",name:o(R),disabled:b(P),checked:E(P),onChange:K=>v(P)},null,42,["name","disabled","checked","onChange"]),F("div",{class:T(o(l).e("item-label"))},[G(N.$slots,"default",{item:P},()=>[st(pe(g(P)),1)])],2)],2))),128))],2)],10,["id","aria-label","aria-labelledby"])):J("v-if",!0)}});var k3=fe(w3,[["__file","segmented.vue"]]);const S3=He(k3),E3=(e,t)=>{const n=e.toLowerCase();return(t.label||t.value).toLowerCase().includes(n)},_3=(e,t,n)=>{const{selectionEnd:l}=e;if(l===null)return;const a=e.value,s=ln(t);let r=-1,i;for(let u=l-1;u>=0;--u){const c=a[u];if(c===n||c===` -`||c==="\r"){r=u;continue}if(s.includes(c)){const d=r===-1?l:r;i={pattern:a.slice(u+1,d),start:u+1,end:d,prefix:c,prefixIndex:u,splitIndex:r,selectionEnd:l};break}}return i},T3=(e,t={debug:!1,useSelectionEnd:!1})=>{const n=e.selectionStart!==null?e.selectionStart:0,l=e.selectionEnd!==null?e.selectionEnd:0,a=t.useSelectionEnd?l:n,s=["direction","boxSizing","width","height","overflowX","overflowY","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderStyle","paddingTop","paddingRight","paddingBottom","paddingLeft","fontStyle","fontVariant","fontWeight","fontStretch","fontSize","fontSizeAdjust","lineHeight","fontFamily","textAlign","textTransform","textIndent","textDecoration","letterSpacing","wordSpacing","tabSize","MozTabSize"];if(t.debug){const m=document.querySelector("#input-textarea-caret-position-mirror-div");m!=null&&m.parentNode&&m.parentNode.removeChild(m)}const r=document.createElement("div");r.id="input-textarea-caret-position-mirror-div",document.body.appendChild(r);const i=r.style,u=window.getComputedStyle(e),c=e.nodeName==="INPUT";i.whiteSpace=c?"nowrap":"pre-wrap",c||(i.wordWrap="break-word"),i.position="absolute",t.debug||(i.visibility="hidden"),s.forEach(m=>{if(c&&m==="lineHeight")if(u.boxSizing==="border-box"){const v=Number.parseInt(u.height),h=Number.parseInt(u.paddingTop)+Number.parseInt(u.paddingBottom)+Number.parseInt(u.borderTopWidth)+Number.parseInt(u.borderBottomWidth),p=h+Number.parseInt(u.lineHeight);v>p?i.lineHeight=`${v-h}px`:v===p?i.lineHeight=u.lineHeight:i.lineHeight="0"}else i.lineHeight=u.height;else i[m]=u[m]}),Xr()?e.scrollHeight>Number.parseInt(u.height)&&(i.overflowY="scroll"):i.overflow="hidden",r.textContent=e.value.slice(0,Math.max(0,a)),c&&r.textContent&&(r.textContent=r.textContent.replace(/\s/g," "));const d=document.createElement("span");d.textContent=e.value.slice(Math.max(0,a))||".",d.style.position="relative",d.style.left=`${-e.scrollLeft}px`,d.style.top=`${-e.scrollTop}px`,r.appendChild(d);const f={top:d.offsetTop+Number.parseInt(u.borderTopWidth),left:d.offsetLeft+Number.parseInt(u.borderLeftWidth),height:Number.parseInt(u.fontSize)*1.5};return t.debug?d.style.backgroundColor="#aaa":document.body.removeChild(r),f.left>=e.clientWidth&&(f.left=e.clientWidth),f},$3=de({...pa,options:{type:Y(Array),default:()=>[]},prefix:{type:Y([String,Array]),default:"@",validator:e=>Ve(e)?e.length===1:e.every(t=>Ve(t)&&t.length===1)},split:{type:String,default:" ",validator:e=>e.length===1},filterOption:{type:Y([Boolean,Function]),default:()=>E3,validator:e=>e===!1?!0:Qe(e)},placement:{type:Y(String),default:"bottom"},showArrow:Boolean,offset:{type:Number,default:0},whole:Boolean,checkIsWhole:{type:Y(Function)},modelValue:String,loading:Boolean,popperClass:{type:String,default:""},popperOptions:{type:Y(Object),default:()=>({})}}),N3={[De]:e=>Ve(e),"whole-remove":(e,t)=>Ve(e)&&Ve(t),input:e=>Ve(e),search:(e,t)=>Ve(e)&&Ve(t),select:(e,t)=>Ve(e.value)&&Ve(t),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent},I3=de({options:{type:Y(Array),default:()=>[]},loading:Boolean,disabled:Boolean,contentId:String,ariaLabel:String}),M3={select:e=>Ve(e.value)},R3=x({name:"ElMentionDropdown"}),P3=x({...R3,props:I3,emits:M3,setup(e,{expose:t,emit:n}){const l=e,a=ue("mention"),{t:s}=pt(),r=I(-1),i=I(),u=I(),c=I(),d=(C,w)=>[a.be("dropdown","item"),a.is("hovering",r.value===w),a.is("disabled",C.disabled||l.disabled)],f=C=>{C.disabled||l.disabled||n("select",C)},m=C=>{r.value=C},v=y(()=>l.disabled||l.options.every(C=>C.disabled)),h=y(()=>l.options[r.value]),p=()=>{h.value&&n("select",h.value)},g=C=>{const{options:w}=l;if(w.length===0||v.value)return;C==="next"?(r.value++,r.value===w.length&&(r.value=0)):C==="prev"&&(r.value--,r.value<0&&(r.value=w.length-1));const k=w[r.value];if(k.disabled){g(C);return}Ee(()=>b(k))},b=C=>{var w,k,S,$;const{options:M}=l,R=M.findIndex(O=>O.value===C.value),N=(w=u.value)==null?void 0:w[R];if(N){const O=(S=(k=c.value)==null?void 0:k.querySelector)==null?void 0:S.call(k,`.${a.be("dropdown","wrap")}`);O&&Ur(O,N)}($=i.value)==null||$.handleScroll()};return ie(()=>l.options,()=>{v.value||l.options.length===0?r.value=-1:r.value=0},{immediate:!0}),t({hoveringIndex:r,navigateOptions:g,selectHoverOption:p,hoverOption:h}),(C,w)=>(_(),V("div",{ref_key:"dropdownRef",ref:c,class:T(o(a).b("dropdown"))},[C.$slots.header?(_(),V("div",{key:0,class:T(o(a).be("dropdown","header"))},[G(C.$slots,"header")],2)):J("v-if",!0),We(H(o(jn),{id:C.contentId,ref_key:"scrollbarRef",ref:i,tag:"ul","wrap-class":o(a).be("dropdown","wrap"),"view-class":o(a).be("dropdown","list"),role:"listbox","aria-label":C.ariaLabel,"aria-orientation":"vertical"},{default:U(()=>[(_(!0),V(Oe,null,ut(C.options,(k,S)=>(_(),V("li",{id:`${C.contentId}-${S}`,ref_for:!0,ref_key:"optionRefs",ref:u,key:S,class:T(d(k,S)),role:"option","aria-disabled":k.disabled||C.disabled||void 0,"aria-selected":r.value===S,onMousemove:$=>m(S),onClick:Le($=>f(k),["stop"])},[G(C.$slots,"label",{item:k,index:S},()=>{var $;return[F("span",null,pe(($=k.label)!=null?$:k.value),1)]})],42,["id","aria-disabled","aria-selected","onMousemove","onClick"]))),128))]),_:3},8,["id","wrap-class","view-class","aria-label"]),[[mt,C.options.length>0&&!C.loading]]),C.loading?(_(),V("div",{key:1,class:T(o(a).be("dropdown","loading"))},[G(C.$slots,"loading",{},()=>[st(pe(o(s)("el.mention.loading")),1)])],2)):J("v-if",!0),C.$slots.footer?(_(),V("div",{key:2,class:T(o(a).be("dropdown","footer"))},[G(C.$slots,"footer")],2)):J("v-if",!0)],2))}});var O3=fe(P3,[["__file","mention-dropdown.vue"]]);const L3=x({name:"ElMention",inheritAttrs:!1}),B3=x({...L3,props:$3,emits:N3,setup(e,{expose:t,emit:n}){const l=e,a=y(()=>An(l,Object.keys(pa))),s=ue("mention"),r=fn(),i=sn(),u=I(),c=I(),d=I(),f=I(!1),m=I(),v=I(),h=y(()=>l.showArrow?l.placement:`${l.placement}-start`),p=y(()=>l.showArrow?["bottom","top"]:["bottom-start","top-start"]),g=y(()=>{const{filterOption:P,options:W}=l;return!v.value||!P?W:W.filter(K=>P(v.value.pattern,K))}),b=y(()=>f.value&&(!!g.value.length||l.loading)),E=y(()=>{var P;return`${i.value}-${(P=d.value)==null?void 0:P.hoveringIndex}`}),C=P=>{n(De,P),n(Zt,P),R()},w=P=>{var W,K,D,L;if(!(!("code"in P)||(W=u.value)!=null&&W.isComposing))switch(P.code){case Ce.left:case Ce.right:R();break;case Ce.up:case Ce.down:if(!f.value)return;P.preventDefault(),(K=d.value)==null||K.navigateOptions(P.code===Ce.up?"prev":"next");break;case Ce.enter:case Ce.numpadEnter:if(!f.value)return;P.preventDefault(),(D=d.value)!=null&&D.hoverOption?(L=d.value)==null||L.selectHoverOption():f.value=!1;break;case Ce.esc:if(!f.value)return;P.preventDefault(),f.value=!1;break;case Ce.backspace:if(l.whole&&v.value){const{splitIndex:z,selectionEnd:B,pattern:A,prefixIndex:ne,prefix:j}=v.value,Q=M();if(!Q)return;const Z=Q.value,ee=l.options.find(re=>re.value===A);if((Qe(l.checkIsWhole)?l.checkIsWhole(A,j):ee)&&z!==-1&&z+1===B){P.preventDefault();const re=Z.slice(0,ne)+Z.slice(z+1);n(De,re),n(Zt,re),n("whole-remove",A,j);const le=ne;Ee(()=>{Q.selectionStart=le,Q.selectionEnd=le,O()})}}}},{wrapperRef:k}=Ll(u,{disabled:r,afterFocus(){R()},beforeBlur(P){var W;return(W=c.value)==null?void 0:W.isFocusInsideContent(P)},afterBlur(){f.value=!1}}),S=()=>{R()},$=P=>{if(!v.value)return;const W=M();if(!W)return;const K=W.value,{split:D}=l,L=K.slice(v.value.end),z=L.startsWith(D),B=`${P.value}${z?"":D}`,A=K.slice(0,v.value.start)+B+L;n(De,A),n(Zt,A),n("select",P,v.value.prefix);const ne=v.value.start+B.length+(z?1:0);Ee(()=>{W.selectionStart=ne,W.selectionEnd=ne,W.focus(),O()})},M=()=>{var P,W;return l.type==="textarea"?(P=u.value)==null?void 0:P.textarea:(W=u.value)==null?void 0:W.input},R=()=>{setTimeout(()=>{N(),O(),Ee(()=>{var P;return(P=c.value)==null?void 0:P.updatePopper()})},0)},N=()=>{const P=M();if(!P)return;const W=T3(P),K=P.getBoundingClientRect(),D=u.value.$el.getBoundingClientRect();m.value={position:"absolute",width:0,height:`${W.height}px`,left:`${W.left+K.left-D.left}px`,top:`${W.top+K.top-D.top}px`}},O=()=>{const P=M();if(document.activeElement!==P){f.value=!1;return}const{prefix:W,split:K}=l;if(v.value=_3(P,W,K),v.value&&v.value.splitIndex===-1){f.value=!0,n("search",v.value.pattern,v.value.prefix);return}f.value=!1};return t({input:u,tooltip:c,dropdownVisible:b}),(P,W)=>(_(),V("div",{ref_key:"wrapperRef",ref:k,class:T(o(s).b())},[H(o(hn),et(et(o(a),P.$attrs),{ref_key:"elInputRef",ref:u,"model-value":P.modelValue,disabled:o(r),role:o(b)?"combobox":void 0,"aria-activedescendant":o(b)?o(E)||"":void 0,"aria-controls":o(b)?o(i):void 0,"aria-expanded":o(b)||void 0,"aria-label":P.ariaLabel,"aria-autocomplete":o(b)?"none":void 0,"aria-haspopup":o(b)?"listbox":void 0,onInput:C,onKeydown:w,onMousedown:S}),Mn({_:2},[ut(P.$slots,(K,D)=>({name:D,fn:U(L=>[G(P.$slots,D,On(cl(L)))])}))]),1040,["model-value","disabled","role","aria-activedescendant","aria-controls","aria-expanded","aria-label","aria-autocomplete","aria-haspopup"]),H(o(un),{ref_key:"tooltipRef",ref:c,visible:o(b),"popper-class":[o(s).e("popper"),P.popperClass],"popper-options":P.popperOptions,placement:o(h),"fallback-placements":o(p),effect:"light",pure:"",offset:P.offset,"show-arrow":P.showArrow},{default:U(()=>[F("div",{style:_e(m.value)},null,4)]),content:U(()=>{var K;return[H(O3,{ref_key:"dropdownRef",ref:d,options:o(g),disabled:o(r),loading:P.loading,"content-id":o(i),"aria-label":P.ariaLabel,onSelect:$,onClick:Le((K=u.value)==null?void 0:K.focus,["stop"])},Mn({_:2},[ut(P.$slots,(D,L)=>({name:L,fn:U(z=>[G(P.$slots,L,On(cl(z)))])}))]),1032,["options","disabled","loading","content-id","aria-label","onClick"])]}),_:3},8,["visible","popper-class","popper-options","placement","fallback-placements","offset","show-arrow"])],2))}});var V3=fe(B3,[["__file","mention.vue"]]);const D3=He(V3),A3=de({layout:{type:String,default:"horizontal",values:["horizontal","vertical"]}}),mp=Symbol("splitterRootContextKey");function F3(e){const t=I(),{width:n,height:l}=zp(t),a=y(()=>e.value==="horizontal"?n.value:l.value);return{containerEl:t,containerSize:a}}function Zi(e){return Number(e.slice(0,-1))/100}function Ji(e){return Number(e.slice(0,-2))}function Qi(e){return Ve(e)&&e.endsWith("%")}function eu(e){return Ve(e)&&e.endsWith("px")}function x3(e,t){const n=y(()=>e.value.map(i=>i.size)),l=y(()=>e.value.length),a=I([]);ie([n,l,t],()=>{var i;let u=[],c=0;for(let f=0;ff+(m||0),0);if(d>1||!c){const f=1/d;u=u.map(m=>m===void 0?0:m*f)}else{const f=(1-d)/c;u=u.map(m=>m===void 0?f:m)}a.value=u});const s=i=>i*t.value,r=y(()=>a.value.map(s));return{percentSizes:a,pxSizes:r}}function z3(e,t,n){const l=v=>v*t.value||0;function a(v,h){return Qi(v)?l(Zi(v)):eu(v)?Ji(v):v??h}const s=I(null);let r=[];const i=y(()=>e.value.map(v=>[v.min,v.max])),u=v=>{s.value={index:v,confirmed:!1},r=n.value},c=(v,h)=>{var p,g;let b=null;if((!s.value||!s.value.confirmed)&&h!==0){if(h>0)b=v,s.value={index:v,confirmed:!0};else for(let N=v;N>=0;N-=1)if(r[N]>0){b=N,s.value={index:N,confirmed:!0};break}}const E=(g=b??((p=s.value)==null?void 0:p.index))!=null?g:v,C=[...r],w=E+1,k=a(i.value[E][0],0),S=a(i.value[w][0],0),$=a(i.value[E][1],t.value||0),M=a(i.value[w][1],t.value||0);let R=h;C[E]+R$&&(R=$-C[E]),C[w]-R>M&&(R=C[w]-M),C[E]+=R,C[w]-=R,e.value.forEach((N,O)=>{N.size=C[O]})},d=()=>{s.value=null,r=[]},f=[];return{onMoveStart:u,onMoving:c,onMoveEnd:d,movingIndex:s,onCollapse:(v,h)=>{const p=n.value,g=h==="start"?v:v+1,b=h==="start"?v+1:v,E=p[g],C=p[b];if(E!==0&&C!==0)p[g]=0,p[b]+=E,f[v]=E;else{const w=E+C,k=f[v],S=w-k;p[b]=k,p[g]=S}e.value.forEach((w,k)=>{w.size=p[k]})}}}const H3=x({name:"ElSplitter"}),K3=x({...H3,props:A3,emits:["resizeStart","resize","resizeEnd","collapse"],setup(e,{emit:t}){const n=e,l=ue("splitter"),{containerEl:a,containerSize:s}=F3(wt(n,"layout")),{removeChild:r,children:i,addChild:u,ChildrenSorter:c}=ks(lt(),"ElSplitterPanel");ie(i,()=>{i.value.forEach((k,S)=>{k.setIndex(S)})});const{percentSizes:d,pxSizes:f}=x3(i,s),{onMoveStart:m,onMoving:v,onMoveEnd:h,onCollapse:p,movingIndex:g}=z3(i,s,f),b=k=>{m(k),t("resizeStart",k,f.value)},E=(k,S)=>{v(k,S),t("resize",k,f.value)},C=k=>{h(),t("resizeEnd",k,f.value)},w=(k,S)=>{p(k,S),t("collapse",k,S,f.value)};return rt(mp,kt({panels:i,percentSizes:d,pxSizes:f,layout:n.layout,movingIndex:g,containerSize:s,onMoveStart:b,onMoving:E,onMoveEnd:C,onCollapse:w,registerPanel:u,unregisterPanel:r})),(k,S)=>(_(),V("div",{ref_key:"containerEl",ref:a,class:T([o(l).b(),o(l).e(k.layout)])},[G(k.$slots,"default"),H(o(c)),J(" Prevent iframe touch events from breaking "),o(g)?(_(),V("div",{key:0,class:T([o(l).e("mask"),o(l).e(`mask-${k.layout}`)])},null,2)):J("v-if",!0)],2))}});var W3=fe(K3,[["__file","splitter.vue"]]);function j3(e){return e&&yt(e)?e:{start:!!e,end:!!e}}function Ec(e,t,n,l){return!!(e!=null&&e.collapsible.end&&t>0||n!=null&&n.collapsible.start&&l===0&&t>0)}const U3=x({name:"ElSplitterBar"}),Y3=x({...U3,props:{index:{type:Number,required:!0},layout:{type:String,values:["horizontal","vertical"],default:"horizontal"},resizable:{type:Boolean,default:!0},startCollapsible:{type:Boolean},endCollapsible:{type:Boolean}},emits:["moveStart","moving","moveEnd","collapse"],setup(e,{emit:t}){const n=e,l=ue("splitter-bar"),a=y(()=>n.layout==="horizontal"),s=y(()=>a.value?{width:0}:{height:0}),r=y(()=>({width:a.value?"16px":"100%",height:a.value?"100%":"16px",cursor:a.value?"col-resize":"row-resize",touchAction:"none"})),i=y(()=>{const b=l.e("dragger");let E=a.value?`${b}-horizontal`:`${b}-vertical`;return u.value&&(E+=` ${b}-active`),E}),u=I(null),c=b=>{n.resizable&&(u.value=[b.pageX,b.pageY],t("moveStart",n.index),window.addEventListener("mouseup",v),window.addEventListener("mousemove",f))},d=b=>{if(n.resizable&&b.touches.length===1){b.preventDefault();const E=b.touches[0];u.value=[E.pageX,E.pageY],t("moveStart",n.index),window.addEventListener("touchend",h),window.addEventListener("touchmove",m)}},f=b=>{const{pageX:E,pageY:C}=b,w=E-u.value[0],k=C-u.value[1],S=a.value?w:k;t("moving",n.index,S)},m=b=>{if(b.touches.length===1){b.preventDefault();const E=b.touches[0],C=E.pageX-u.value[0],w=E.pageY-u.value[1],k=a.value?C:w;t("moving",n.index,k)}},v=()=>{u.value=null,window.removeEventListener("mouseup",v),window.removeEventListener("mousemove",f),t("moveEnd",n.index)},h=()=>{u.value=null,window.removeEventListener("touchend",h),window.removeEventListener("touchmove",m),t("moveEnd",n.index)},p=y(()=>a.value?dl:hs),g=y(()=>a.value?Cn:nl);return(b,E)=>(_(),V("div",{class:T([o(l).b()]),style:_e(o(s))},[e.startCollapsible?(_(),V("div",{key:0,class:T([o(l).e("collapse-icon"),o(l).e(`${e.layout}-collapse-icon-start`)]),onClick:C=>t("collapse",e.index,"start")},[G(b.$slots,"start-collapsible",{},()=>[(_(),oe(Ge(o(p)),{style:{width:"12px",height:"12px"}}))])],10,["onClick"])):J("v-if",!0),F("div",{class:T([o(l).e("dragger"),o(i),e.resizable?"":o(l).e("disable")]),style:_e(o(r)),onMousedown:c,onTouchstart:d},null,38),e.endCollapsible?(_(),V("div",{key:1,class:T([o(l).e("collapse-icon"),o(l).e(`${e.layout}-collapse-icon-end`)]),onClick:C=>t("collapse",e.index,"end")},[G(b.$slots,"end-collapsible",{},()=>[(_(),oe(Ge(o(g)),{style:{width:"12px",height:"12px"}}))])],10,["onClick"])):J("v-if",!0)],6))}});var q3=fe(Y3,[["__file","split-bar.vue"]]);const G3=de({min:{type:[String,Number]},max:{type:[String,Number]},size:{type:[String,Number]},resizable:{type:Boolean,default:!0},collapsible:Boolean}),gp="ElSplitterPanel",X3=x({name:gp}),Z3=x({...X3,props:G3,emits:["update:size"],setup(e,{emit:t}){const n=e,l=ue("splitter-panel"),a=we(mp);a||jt(gp,"usage: ");const{panels:s,layout:r,containerSize:i,pxSizes:u}=nn(a),{registerPanel:c,unregisterPanel:d,onCollapse:f,onMoveEnd:m,onMoveStart:v,onMoving:h}=a,p=I(),g=lt(),b=g.uid,E=I(0),C=y(()=>s.value[E.value]),w=D=>{E.value=D},k=y(()=>{var D;return C.value&&(D=u.value[E.value])!=null?D:0}),S=y(()=>{var D;return C.value&&(D=u.value[E.value+1])!=null?D:0}),$=y(()=>C.value?s.value[E.value+1]:null),M=y(()=>{var D;return $.value?n.resizable&&((D=$.value)==null?void 0:D.resizable)&&(k.value!==0||!n.min)&&(S.value!==0||!$.value.min):!1}),R=y(()=>C.value?E.value!==s.value.length-1:!1),N=y(()=>Ec(C.value,k.value,$.value,S.value)),O=y(()=>Ec($.value,S.value,C.value,k.value));function P(D){return Qi(D)?Zi(D)*i.value||0:eu(D)?Ji(D):D??0}let W=!1;ie(()=>n.size,()=>{if(C.value){const D=P(n.size),L=P(n.max),z=P(n.min),B=Math.min(Math.max(D,z||0),L||D);B!==D&&(W=!0,t("update:size",B)),C.value.size=B,Ee(()=>W=!1)}}),ie(()=>{var D;return(D=C.value)==null?void 0:D.size},D=>{!W&&D!==n.size&&t("update:size",D)}),ie(()=>n.resizable,D=>{C.value&&(C.value.resizable=D)});const K=kt({el:p.value,uid:b,getVnode:()=>g.vnode,setIndex:w,...n,collapsible:j3(n.collapsible)});return c(K),Nt(()=>d(K)),(D,L)=>(_(),V(Oe,null,[F("div",et({ref_key:"panelEl",ref:p,class:[o(l).b()],style:{flexBasis:`${o(k)}px`}},D.$attrs),[G(D.$slots,"default")],16),o(R)?(_(),oe(q3,{key:0,index:E.value,layout:o(r),resizable:o(M),"start-collapsible":o(N),"end-collapsible":o(O),onMoveStart:o(v),onMoving:o(h),onMoveEnd:o(m),onCollapse:o(f)},{"start-collapsible":U(()=>[G(D.$slots,"start-collapsible")]),"end-collapsible":U(()=>[G(D.$slots,"end-collapsible")]),_:3},8,["index","layout","resizable","start-collapsible","end-collapsible","onMoveStart","onMoving","onMoveEnd","onCollapse"])):J("v-if",!0)],64))}});var bp=fe(Z3,[["__file","split-panel.vue"]]);const J3=He(W3,{SplitPanel:bp}),Q3=At(bp);var eR=[Ph,Jm,xb,QN,Ub,Qb,Pd,d0,f0,on,Dd,H0,Y0,cy,dy,pC,nf,CC,Hn,_y,Yd,_C,HC,KC,Ss,fw,hw,$w,Nw,Iw,Mw,Rw,R1,z1,H1,ek,Nf,ck,Qk,eS,tS,Af,kS,SS,Se,LS,xf,hn,zf,GS,t2,C2,w2,k2,S2,I2,CE,TE,BE,Nd,Xf,ef,Ay,Dy,jE,XE,l_,jn,ql,Qa,eE,P_,z_,H_,rT,fT,uv,ST,PT,OT,FT,K$,W$,JN,pI,hI,So,zi,Gw,_I,RI,PI,un,s4,y4,is,A4,tM,EM,LM,a3,s3,m3,g3,S3,D3,J3,Q3];const Dn="ElInfiniteScroll",tR=50,nR=200,lR=0,oR={delay:{type:Number,default:nR},distance:{type:Number,default:lR},disabled:{type:Boolean,default:!1},immediate:{type:Boolean,default:!0}},tu=(e,t)=>Object.entries(oR).reduce((n,[l,a])=>{var s,r;const{type:i,default:u}=a,c=e.getAttribute(`infinite-scroll-${l}`);let d=(r=(s=t[c])!=null?s:c)!=null?r:u;return d=d==="false"?!1:d,d=i(d),n[l]=Number.isNaN(d)?u:d,n},{}),yp=e=>{const{observer:t}=e[Dn];t&&(t.disconnect(),delete e[Dn].observer)},aR=(e,t)=>{const{container:n,containerEl:l,instance:a,observer:s,lastScrollTop:r}=e[Dn],{disabled:i,distance:u}=tu(e,a),{clientHeight:c,scrollHeight:d,scrollTop:f}=l,m=f-r;if(e[Dn].lastScrollTop=f,s||i||m<0)return;let v=!1;if(n===e)v=d-(c+f)<=u;else{const{clientTop:h,scrollHeight:p}=e,g=dr(e,l);v=f+c>=g+h+p-u}v&&t.call(a)};function tr(e,t){const{containerEl:n,instance:l}=e[Dn],{disabled:a}=tu(e,l);a||n.clientHeight===0||(n.scrollHeight<=n.clientHeight?t.call(l):yp(e))}const sR={async mounted(e,t){const{instance:n,value:l}=t;Qe(l)||jt(Dn,"'v-infinite-scroll' binding value must be a function"),await Ee();const{delay:a,immediate:s}=tu(e,n),r=jr(e,!0),i=r===window?document.documentElement:r,u=Hl(aR.bind(null,e,l),a);if(r){if(e[Dn]={instance:n,container:r,containerEl:i,delay:a,cb:l,onScroll:u,lastScrollTop:i.scrollTop},s){const c=new MutationObserver(Hl(tr.bind(null,e,l),tR));e[Dn].observer=c,c.observe(e,{childList:!0,subtree:!0}),tr(e,l)}r.addEventListener("scroll",u)}},unmounted(e){if(!e[Dn])return;const{container:t,onScroll:n}=e[Dn];t==null||t.removeEventListener("scroll",n),yp(e)},async updated(e){if(!e[Dn])await Ee();else{const{containerEl:t,cb:n,observer:l}=e[Dn];t.clientHeight&&l&&tr(e,n)}}},Br=sR;Br.install=e=>{e.directive("InfiniteScroll",Br)};const rR=Br;function iR(e,t){let n;const l=I(!1),a=kt({...e,originalPosition:"",originalOverflow:"",visible:!1});function s(v){a.text=v}function r(){const v=a.parent,h=m.ns;if(!v.vLoadingAddClassList){let p=v.getAttribute("loading-number");p=Number.parseInt(p)-1,p?v.setAttribute("loading-number",p.toString()):(yn(v,h.bm("parent","relative")),v.removeAttribute("loading-number")),yn(v,h.bm("parent","hidden"))}i(),f.unmount()}function i(){var v,h;(h=(v=m.$el)==null?void 0:v.parentNode)==null||h.removeChild(m.$el)}function u(){var v;e.beforeClose&&!e.beforeClose()||(l.value=!0,clearTimeout(n),n=setTimeout(c,400),a.visible=!1,(v=e.closed)==null||v.call(e))}function c(){if(!l.value)return;const v=a.parent;l.value=!1,v.vLoadingAddClassList=void 0,r()}const d=x({name:"ElLoading",setup(v,{expose:h}){const{ns:p,zIndex:g}=ps("loading");return h({ns:p,zIndex:g}),()=>{const b=a.spinner||a.svg,E=Re("svg",{class:"circular",viewBox:a.svgViewBox?a.svgViewBox:"0 0 50 50",...b?{innerHTML:b}:{}},[Re("circle",{class:"path",cx:"25",cy:"25",r:"20",fill:"none"})]),C=a.text?Re("p",{class:p.b("text")},[a.text]):void 0;return Re(an,{name:p.b("fade"),onAfterLeave:c},{default:U(()=>[We(H("div",{style:{backgroundColor:a.background||""},class:[p.b("mask"),a.customClass,a.fullscreen?"is-fullscreen":""]},[Re("div",{class:p.b("spinner")},[E,C])]),[[mt,a.visible]])])})}}}),f=Hp(d);Object.assign(f._context,t??{});const m=f.mount(document.createElement("div"));return{...nn(a),setText:s,removeElLoadingChild:i,close:u,handleAfterLeave:c,vm:m,get $el(){return m.$el}}}let Pa;const Co=function(e={}){if(!bt)return;const t=uR(e);if(t.fullscreen&&Pa)return Pa;const n=iR({...t,closed:()=>{var a;(a=t.closed)==null||a.call(t),t.fullscreen&&(Pa=void 0)}},Co._context);cR(t,t.parent,n),_c(t,t.parent,n),t.parent.vLoadingAddClassList=()=>_c(t,t.parent,n);let l=t.parent.getAttribute("loading-number");return l?l=`${Number.parseInt(l)+1}`:l="1",t.parent.setAttribute("loading-number",l),t.parent.appendChild(n.$el),Ee(()=>n.visible.value=t.visible),t.fullscreen&&(Pa=n),n},uR=e=>{var t,n,l,a;let s;return Ve(e.target)?s=(t=document.querySelector(e.target))!=null?t:document.body:s=e.target||document.body,{parent:s===document.body||e.body?document.body:s,background:e.background||"",svg:e.svg||"",svgViewBox:e.svgViewBox||"",spinner:e.spinner||!1,text:e.text||"",fullscreen:s===document.body&&((n=e.fullscreen)!=null?n:!0),lock:(l=e.lock)!=null?l:!1,customClass:e.customClass||"",visible:(a=e.visible)!=null?a:!0,beforeClose:e.beforeClose,closed:e.closed,target:s}},cR=async(e,t,n)=>{const{nextZIndex:l}=n.vm.zIndex||n.vm._.exposed.zIndex,a={};if(e.fullscreen)n.originalPosition.value=rl(document.body,"position"),n.originalOverflow.value=rl(document.body,"overflow"),a.zIndex=l();else if(e.parent===document.body){n.originalPosition.value=rl(document.body,"position"),await Ee();for(const s of["top","left"]){const r=s==="top"?"scrollTop":"scrollLeft";a[s]=`${e.target.getBoundingClientRect()[s]+document.body[r]+document.documentElement[r]-Number.parseInt(rl(document.body,`margin-${s}`),10)}px`}for(const s of["height","width"])a[s]=`${e.target.getBoundingClientRect()[s]}px`}else n.originalPosition.value=rl(t,"position");for(const[s,r]of Object.entries(a))n.$el.style[s]=r},_c=(e,t,n)=>{const l=n.vm.ns||n.vm._.exposed.ns;["absolute","fixed","sticky"].includes(n.originalPosition.value)?yn(t,l.bm("parent","relative")):Fn(t,l.bm("parent","relative")),e.fullscreen&&e.lock?Fn(t,l.bm("parent","hidden")):yn(t,l.bm("parent","hidden"))};Co._context=null;const Ho=Symbol("ElLoading"),Vl=e=>`element-loading-${Kp(e)}`,Tc=(e,t)=>{var n,l,a,s;const r=t.instance,i=v=>yt(t.value)?t.value[v]:void 0,u=v=>{const h=Ve(v)&&(r==null?void 0:r[v])||v;return I(h)},c=v=>u(i(v)||e.getAttribute(Vl(v))),d=(n=i("fullscreen"))!=null?n:t.modifiers.fullscreen,f={text:c("text"),svg:c("svg"),svgViewBox:c("svgViewBox"),spinner:c("spinner"),background:c("background"),customClass:c("customClass"),fullscreen:d,target:(l=i("target"))!=null?l:d?void 0:e,body:(a=i("body"))!=null?a:t.modifiers.body,lock:(s=i("lock"))!=null?s:t.modifiers.lock},m=Co(f);m._context=jo._context,e[Ho]={options:f,instance:m}},dR=(e,t)=>{for(const n of Object.keys(e))gn(e[n])&&(e[n].value=t[n])},jo={mounted(e,t){t.value&&Tc(e,t)},updated(e,t){const n=e[Ho];if(!t.value){n==null||n.instance.close(),e[Ho]=null;return}n?dR(n.options,yt(t.value)?t.value:{text:e.getAttribute(Vl("text")),svg:e.getAttribute(Vl("svg")),svgViewBox:e.getAttribute(Vl("svgViewBox")),spinner:e.getAttribute(Vl("spinner")),background:e.getAttribute(Vl("background")),customClass:e.getAttribute(Vl("customClass"))}):Tc(e,t)},unmounted(e){var t;(t=e[Ho])==null||t.instance.close(),e[Ho]=null}};jo._context=null;const fR={install(e){Co._context=e._context,jo._context=e._context,e.directive("loading",jo),e.config.globalProperties.$loading=Co},directive:jo,service:Co},Cp=["primary","success","info","warning","error"],Sn=Vt({customClass:"",dangerouslyUseHTMLString:!1,duration:3e3,icon:void 0,id:"",message:"",onClose:void 0,showClose:!1,type:"info",plain:!1,offset:16,zIndex:0,grouping:!1,repeatNum:1,appendTo:bt?document.body:void 0}),vR=de({customClass:{type:String,default:Sn.customClass},dangerouslyUseHTMLString:{type:Boolean,default:Sn.dangerouslyUseHTMLString},duration:{type:Number,default:Sn.duration},icon:{type:$t,default:Sn.icon},id:{type:String,default:Sn.id},message:{type:Y([String,Object,Function]),default:Sn.message},onClose:{type:Y(Function),default:Sn.onClose},showClose:{type:Boolean,default:Sn.showClose},type:{type:String,values:Cp,default:Sn.type},plain:{type:Boolean,default:Sn.plain},offset:{type:Number,default:Sn.offset},zIndex:{type:Number,default:Sn.zIndex},grouping:{type:Boolean,default:Sn.grouping},repeatNum:{type:Number,default:Sn.repeatNum}}),pR={destroy:()=>!0},Wn=Wp([]),hR=e=>{const t=Wn.findIndex(a=>a.id===e),n=Wn[t];let l;return t>0&&(l=Wn[t-1]),{current:n,prev:l}},mR=e=>{const{prev:t}=hR(e);return t?t.vm.exposed.bottom.value:0},gR=(e,t)=>Wn.findIndex(l=>l.id===e)>0?16:t,bR=x({name:"ElMessage"}),yR=x({...bR,props:vR,emits:pR,setup(e,{expose:t,emit:n}){const l=e,{Close:a}=Gr,s=I(!1),{ns:r,zIndex:i}=ps("message"),{currentZIndex:u,nextZIndex:c}=i,d=I(),f=I(!1),m=I(0);let v;const h=y(()=>l.type?l.type==="error"?"danger":l.type:"info"),p=y(()=>{const R=l.type;return{[r.bm("icon",R)]:R&&Ol[R]}}),g=y(()=>l.icon||Ol[l.type]||""),b=y(()=>mR(l.id)),E=y(()=>gR(l.id,l.offset)+b.value),C=y(()=>m.value+E.value),w=y(()=>({top:`${E.value}px`,zIndex:u.value}));function k(){l.duration!==0&&({stop:v}=Ul(()=>{$()},l.duration))}function S(){v==null||v()}function $(){f.value=!1,Ee(()=>{var R;s.value||((R=l.onClose)==null||R.call(l),n("destroy"))})}function M({code:R}){R===Ce.esc&&$()}return Xe(()=>{k(),c(),f.value=!0}),ie(()=>l.repeatNum,()=>{S(),k()}),xt(document,"keydown",M),Ft(d,()=>{m.value=d.value.getBoundingClientRect().height}),t({visible:f,bottom:C,close:$}),(R,N)=>(_(),oe(an,{name:o(r).b("fade"),onBeforeEnter:O=>s.value=!0,onBeforeLeave:R.onClose,onAfterLeave:O=>R.$emit("destroy"),persisted:""},{default:U(()=>[We(F("div",{id:R.id,ref_key:"messageRef",ref:d,class:T([o(r).b(),{[o(r).m(R.type)]:R.type},o(r).is("closable",R.showClose),o(r).is("plain",R.plain),R.customClass]),style:_e(o(w)),role:"alert",onMouseenter:S,onMouseleave:k},[R.repeatNum>1?(_(),oe(o(Pd),{key:0,value:R.repeatNum,type:o(h),class:T(o(r).e("badge"))},null,8,["value","type","class"])):J("v-if",!0),o(g)?(_(),oe(o(Se),{key:1,class:T([o(r).e("icon"),o(p)])},{default:U(()=>[(_(),oe(Ge(o(g))))]),_:1},8,["class"])):J("v-if",!0),G(R.$slots,"default",{},()=>[R.dangerouslyUseHTMLString?(_(),V(Oe,{key:1},[J(" Caution here, message could've been compromised, never use user's input as message "),F("p",{class:T(o(r).e("content")),innerHTML:R.message},null,10,["innerHTML"])],2112)):(_(),V("p",{key:0,class:T(o(r).e("content"))},pe(R.message),3))]),R.showClose?(_(),oe(o(Se),{key:2,class:T(o(r).e("closeBtn")),onClick:Le($,["stop"])},{default:U(()=>[H(o(a))]),_:1},8,["class","onClick"])):J("v-if",!0)],46,["id"]),[[mt,f.value]])]),_:3},8,["name","onBeforeEnter","onBeforeLeave","onAfterLeave"]))}});var CR=fe(yR,[["__file","message.vue"]]);let wR=1;const wp=e=>{const t=!e||Ve(e)||Dt(e)||Qe(e)?{message:e}:e,n={...Sn,...t};if(!n.appendTo)n.appendTo=document.body;else if(Ve(n.appendTo)){let l=document.querySelector(n.appendTo);_n(l)||(l=document.body),n.appendTo=l}return _t(Rn.grouping)&&!n.grouping&&(n.grouping=Rn.grouping),Te(Rn.duration)&&n.duration===3e3&&(n.duration=Rn.duration),Te(Rn.offset)&&n.offset===16&&(n.offset=Rn.offset),_t(Rn.showClose)&&!n.showClose&&(n.showClose=Rn.showClose),_t(Rn.plain)&&!n.plain&&(n.plain=Rn.plain),n},kR=e=>{const t=Wn.indexOf(e);if(t===-1)return;Wn.splice(t,1);const{handler:n}=e;n.close()},SR=({appendTo:e,...t},n)=>{const l=`message_${wR++}`,a=t.onClose,s=document.createElement("div"),r={...t,id:l,onClose:()=>{a==null||a(),kR(d)},onDestroy:()=>{Il(null,s)}},i=H(CR,r,Qe(r.message)||Dt(r.message)?{default:Qe(r.message)?r.message:()=>r.message}:null);i.appContext=n||No._context,Il(i,s),e.appendChild(s.firstElementChild);const u=i.component,d={id:l,vnode:i,vm:u,handler:{close:()=>{u.exposed.close()}},props:i.component.props};return d},No=(e={},t)=>{if(!bt)return{close:()=>{}};const n=wp(e);if(n.grouping&&Wn.length){const a=Wn.find(({vnode:s})=>{var r;return((r=s.props)==null?void 0:r.message)===n.message});if(a)return a.props.repeatNum+=1,a.props.type=n.type,a.handler}if(Te(Rn.max)&&Wn.length>=Rn.max)return{close:()=>{}};const l=SR(n,t);return Wn.push(l),l.handler};Cp.forEach(e=>{No[e]=(t={},n)=>{const l=wp(t);return No({...l,type:e},n)}});function ER(e){const t=[...Wn];for(const n of t)(!e||e===n.props.type)&&n.handler.close()}No.closeAll=ER;No._context=null;const _R=od(No,"$message"),Vr="_trap-focus-children",zl=[],$c=e=>{if(zl.length===0)return;const t=zl[zl.length-1][Vr];if(t.length>0&&e.code===Ce.tab){if(t.length===1){e.preventDefault(),document.activeElement!==t[0]&&t[0].focus();return}const n=e.shiftKey,l=e.target===t[0],a=e.target===t[t.length-1];l&&n&&(e.preventDefault(),t[t.length-1].focus()),a&&!n&&(e.preventDefault(),t[0].focus())}},TR={beforeMount(e){e[Vr]=pu(e),zl.push(e),zl.length<=1&&document.addEventListener("keydown",$c)},updated(e){Ee(()=>{e[Vr]=pu(e)})},unmounted(){zl.shift(),zl.length===0&&document.removeEventListener("keydown",$c)}},$R=x({name:"ElMessageBox",directives:{TrapFocus:TR},components:{ElButton:on,ElFocusTrap:Ro,ElInput:hn,ElOverlay:hi,ElIcon:Se,...Gr},inheritAttrs:!1,props:{buttonSize:{type:String,validator:fv},modal:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},showClose:{type:Boolean,default:!0},closeOnClickModal:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},closeOnHashChange:{type:Boolean,default:!0},center:Boolean,draggable:Boolean,overflow:Boolean,roundButton:Boolean,container:{type:String,default:"body"},boxType:{type:String,default:""}},emits:["vanish","action"],setup(e,{emit:t}){const{locale:n,zIndex:l,ns:a,size:s}=ps("message-box",y(()=>e.buttonSize)),{t:r}=n,{nextZIndex:i}=l,u=I(!1),c=kt({autofocus:!0,beforeClose:null,callback:null,cancelButtonText:"",cancelButtonClass:"",confirmButtonText:"",confirmButtonClass:"",customClass:"",customStyle:{},dangerouslyUseHTMLString:!1,distinguishCancelAndClose:!1,icon:"",closeIcon:"",inputPattern:null,inputPlaceholder:"",inputType:"text",inputValue:"",inputValidator:void 0,inputErrorMessage:"",message:"",modalFade:!0,modalClass:"",showCancelButton:!1,showConfirmButton:!0,type:"",title:void 0,showInput:!1,action:"",confirmButtonLoading:!1,cancelButtonLoading:!1,confirmButtonLoadingIcon:$l(Qn),cancelButtonLoadingIcon:$l(Qn),confirmButtonDisabled:!1,editorErrorMessage:"",validateError:!1,zIndex:i()}),d=y(()=>{const L=c.type;return{[a.bm("icon",L)]:L&&Ol[L]}}),f=sn(),m=sn(),v=y(()=>{const L=c.type;return c.icon||L&&Ol[L]||""}),h=y(()=>!!c.message),p=I(),g=I(),b=I(),E=I(),C=I(),w=y(()=>c.confirmButtonClass);ie(()=>c.inputValue,async L=>{await Ee(),e.boxType==="prompt"&&L&&P()},{immediate:!0}),ie(()=>u.value,L=>{var z,B;L&&(e.boxType!=="prompt"&&(c.autofocus?b.value=(B=(z=C.value)==null?void 0:z.$el)!=null?B:p.value:b.value=p.value),c.zIndex=i()),e.boxType==="prompt"&&(L?Ee().then(()=>{var A;E.value&&E.value.$el&&(c.autofocus?b.value=(A=W())!=null?A:p.value:b.value=p.value)}):(c.editorErrorMessage="",c.validateError=!1))});const k=y(()=>e.draggable),S=y(()=>e.overflow);Ef(p,g,k,S),Xe(async()=>{await Ee(),e.closeOnHashChange&&window.addEventListener("hashchange",$)}),Nt(()=>{e.closeOnHashChange&&window.removeEventListener("hashchange",$)});function $(){u.value&&(u.value=!1,Ee(()=>{c.action&&t("action",c.action)}))}const M=()=>{e.closeOnClickModal&&O(c.distinguishCancelAndClose?"close":"cancel")},R=pi(M),N=L=>{if(c.inputType!=="textarea")return L.preventDefault(),O("confirm")},O=L=>{var z;e.boxType==="prompt"&&L==="confirm"&&!P()||(c.action=L,c.beforeClose?(z=c.beforeClose)==null||z.call(c,L,c,$):$())},P=()=>{if(e.boxType==="prompt"){const L=c.inputPattern;if(L&&!L.test(c.inputValue||""))return c.editorErrorMessage=c.inputErrorMessage||r("el.messagebox.error"),c.validateError=!0,!1;const z=c.inputValidator;if(Qe(z)){const B=z(c.inputValue);if(B===!1)return c.editorErrorMessage=c.inputErrorMessage||r("el.messagebox.error"),c.validateError=!0,!1;if(Ve(B))return c.editorErrorMessage=B,c.validateError=!0,!1}}return c.editorErrorMessage="",c.validateError=!1,!0},W=()=>{var L,z;const B=(L=E.value)==null?void 0:L.$refs;return(z=B==null?void 0:B.input)!=null?z:B==null?void 0:B.textarea},K=()=>{O("close")},D=()=>{e.closeOnPressEscape&&K()};return e.lockScroll&&mi(u),{...nn(c),ns:a,overlayEvent:R,visible:u,hasMessage:h,typeClass:d,contentId:f,inputId:m,btnSize:s,iconComponent:v,confirmButtonClasses:w,rootRef:p,focusStartRef:b,headerRef:g,inputRef:E,confirmRef:C,doClose:$,handleClose:K,onCloseRequested:D,handleWrapperClick:M,handleInputEnter:N,handleAction:O,t:r}}});function NR(e,t,n,l,a,s){const r=ht("el-icon"),i=ht("el-input"),u=ht("el-button"),c=ht("el-focus-trap"),d=ht("el-overlay");return _(),oe(an,{name:"fade-in-linear",onAfterLeave:f=>e.$emit("vanish"),persisted:""},{default:U(()=>[We(H(d,{"z-index":e.zIndex,"overlay-class":[e.ns.is("message-box"),e.modalClass],mask:e.modal},{default:U(()=>[F("div",{role:"dialog","aria-label":e.title,"aria-modal":"true","aria-describedby":e.showInput?void 0:e.contentId,class:T(`${e.ns.namespace.value}-overlay-message-box`),onClick:e.overlayEvent.onClick,onMousedown:e.overlayEvent.onMousedown,onMouseup:e.overlayEvent.onMouseup},[H(c,{loop:"",trapped:e.visible,"focus-trap-el":e.rootRef,"focus-start-el":e.focusStartRef,onReleaseRequested:e.onCloseRequested},{default:U(()=>[F("div",{ref:"rootRef",class:T([e.ns.b(),e.customClass,e.ns.is("draggable",e.draggable),{[e.ns.m("center")]:e.center}]),style:_e(e.customStyle),tabindex:"-1",onClick:Le(()=>{},["stop"])},[e.title!==null&&e.title!==void 0?(_(),V("div",{key:0,ref:"headerRef",class:T([e.ns.e("header"),{"show-close":e.showClose}])},[F("div",{class:T(e.ns.e("title"))},[e.iconComponent&&e.center?(_(),oe(r,{key:0,class:T([e.ns.e("status"),e.typeClass])},{default:U(()=>[(_(),oe(Ge(e.iconComponent)))]),_:1},8,["class"])):J("v-if",!0),F("span",null,pe(e.title),1)],2),e.showClose?(_(),V("button",{key:0,type:"button",class:T(e.ns.e("headerbtn")),"aria-label":e.t("el.messagebox.close"),onClick:f=>e.handleAction(e.distinguishCancelAndClose?"close":"cancel"),onKeydown:Tt(Le(f=>e.handleAction(e.distinguishCancelAndClose?"close":"cancel"),["prevent"]),["enter"])},[H(r,{class:T(e.ns.e("close"))},{default:U(()=>[(_(),oe(Ge(e.closeIcon||"close")))]),_:1},8,["class"])],42,["aria-label","onClick","onKeydown"])):J("v-if",!0)],2)):J("v-if",!0),F("div",{id:e.contentId,class:T(e.ns.e("content"))},[F("div",{class:T(e.ns.e("container"))},[e.iconComponent&&!e.center&&e.hasMessage?(_(),oe(r,{key:0,class:T([e.ns.e("status"),e.typeClass])},{default:U(()=>[(_(),oe(Ge(e.iconComponent)))]),_:1},8,["class"])):J("v-if",!0),e.hasMessage?(_(),V("div",{key:1,class:T(e.ns.e("message"))},[G(e.$slots,"default",{},()=>[e.dangerouslyUseHTMLString?(_(),oe(Ge(e.showInput?"label":"p"),{key:1,for:e.showInput?e.inputId:void 0,innerHTML:e.message},null,8,["for","innerHTML"])):(_(),oe(Ge(e.showInput?"label":"p"),{key:0,for:e.showInput?e.inputId:void 0},{default:U(()=>[st(pe(e.dangerouslyUseHTMLString?"":e.message),1)]),_:1},8,["for"]))])],2)):J("v-if",!0)],2),We(F("div",{class:T(e.ns.e("input"))},[H(i,{id:e.inputId,ref:"inputRef",modelValue:e.inputValue,"onUpdate:modelValue":f=>e.inputValue=f,type:e.inputType,placeholder:e.inputPlaceholder,"aria-invalid":e.validateError,class:T({invalid:e.validateError}),onKeydown:Tt(e.handleInputEnter,["enter"])},null,8,["id","modelValue","onUpdate:modelValue","type","placeholder","aria-invalid","class","onKeydown"]),F("div",{class:T(e.ns.e("errormsg")),style:_e({visibility:e.editorErrorMessage?"visible":"hidden"})},pe(e.editorErrorMessage),7)],2),[[mt,e.showInput]])],10,["id"]),F("div",{class:T(e.ns.e("btns"))},[e.showCancelButton?(_(),oe(u,{key:0,loading:e.cancelButtonLoading,"loading-icon":e.cancelButtonLoadingIcon,class:T([e.cancelButtonClass]),round:e.roundButton,size:e.btnSize,onClick:f=>e.handleAction("cancel"),onKeydown:Tt(Le(f=>e.handleAction("cancel"),["prevent"]),["enter"])},{default:U(()=>[st(pe(e.cancelButtonText||e.t("el.messagebox.cancel")),1)]),_:1},8,["loading","loading-icon","class","round","size","onClick","onKeydown"])):J("v-if",!0),We(H(u,{ref:"confirmRef",type:"primary",loading:e.confirmButtonLoading,"loading-icon":e.confirmButtonLoadingIcon,class:T([e.confirmButtonClasses]),round:e.roundButton,disabled:e.confirmButtonDisabled,size:e.btnSize,onClick:f=>e.handleAction("confirm"),onKeydown:Tt(Le(f=>e.handleAction("confirm"),["prevent"]),["enter"])},{default:U(()=>[st(pe(e.confirmButtonText||e.t("el.messagebox.confirm")),1)]),_:1},8,["loading","loading-icon","class","round","disabled","size","onClick","onKeydown"]),[[mt,e.showConfirmButton]])],2)],14,["onClick"])]),_:3},8,["trapped","focus-trap-el","focus-start-el","onReleaseRequested"])],42,["aria-label","aria-describedby","onClick","onMousedown","onMouseup"])]),_:3},8,["z-index","overlay-class","mask"]),[[mt,e.visible]])]),_:3},8,["onAfterLeave"])}var IR=fe($R,[["render",NR],["__file","index.vue"]]);const ia=new Map,MR=e=>{let t=document.body;return e.appendTo&&(Ve(e.appendTo)&&(t=document.querySelector(e.appendTo)),_n(e.appendTo)&&(t=e.appendTo),_n(t)||(t=document.body)),t},RR=(e,t,n=null)=>{const l=H(IR,e,Qe(e.message)||Dt(e.message)?{default:Qe(e.message)?e.message:()=>e.message}:null);return l.appContext=n,Il(l,t),MR(e).appendChild(t.firstElementChild),l.component},PR=()=>document.createElement("div"),OR=(e,t)=>{const n=PR();e.onVanish=()=>{Il(null,n),ia.delete(a)},e.onAction=s=>{const r=ia.get(a);let i;e.showInput?i={value:a.inputValue,action:s}:i=s,e.callback?e.callback(i,l.proxy):s==="cancel"||s==="close"?e.distinguishCancelAndClose&&s!=="cancel"?r.reject("close"):r.reject("cancel"):r.resolve(i)};const l=RR(e,n,t),a=l.proxy;for(const s in e)rn(e,s)&&!rn(a.$props,s)&&(s==="closeIcon"&&yt(e[s])?a[s]=$l(e[s]):a[s]=e[s]);return a.visible=!0,a};function Bo(e,t=null){if(!bt)return Promise.reject();let n;return Ve(e)||Dt(e)?e={message:e}:n=e.callback,new Promise((l,a)=>{const s=OR(e,t??Bo._context);ia.set(s,{options:e,callback:n,resolve:l,reject:a})})}const LR=["alert","confirm","prompt"],BR={alert:{closeOnPressEscape:!1,closeOnClickModal:!1},confirm:{showCancelButton:!0},prompt:{showCancelButton:!0,showInput:!0}};LR.forEach(e=>{Bo[e]=VR(e)});function VR(e){return(t,n,l,a)=>{let s="";return yt(n)?(l=n,s=""):vt(n)?s="":s=n,Bo(Object.assign({title:s,message:t,type:"",...BR[e]},l,{boxType:e}),a)}}Bo.close=()=>{ia.forEach((e,t)=>{t.doClose()}),ia.clear()};Bo._context=null;const El=Bo;El.install=e=>{El._context=e._context,e.config.globalProperties.$msgbox=El,e.config.globalProperties.$messageBox=El,e.config.globalProperties.$alert=El.alert,e.config.globalProperties.$confirm=El.confirm,e.config.globalProperties.$prompt=El.prompt};const DR=El,kp=["primary","success","info","warning","error"],AR=de({customClass:{type:String,default:""},dangerouslyUseHTMLString:Boolean,duration:{type:Number,default:4500},icon:{type:$t},id:{type:String,default:""},message:{type:Y([String,Object,Function]),default:""},offset:{type:Number,default:0},onClick:{type:Y(Function),default:()=>{}},onClose:{type:Y(Function),required:!0},position:{type:String,values:["top-right","top-left","bottom-right","bottom-left"],default:"top-right"},showClose:{type:Boolean,default:!0},title:{type:String,default:""},type:{type:String,values:[...kp,""],default:""},zIndex:Number,closeIcon:{type:$t,default:zn}}),FR={destroy:()=>!0},xR=x({name:"ElNotification"}),zR=x({...xR,props:AR,emits:FR,setup(e,{expose:t}){const n=e,{ns:l,zIndex:a}=ps("notification"),{nextZIndex:s,currentZIndex:r}=a,i=I(!1);let u;const c=y(()=>{const E=n.type;return E&&Ol[n.type]?l.m(E):""}),d=y(()=>n.type&&Ol[n.type]||n.icon),f=y(()=>n.position.endsWith("right")?"right":"left"),m=y(()=>n.position.startsWith("top")?"top":"bottom"),v=y(()=>{var E;return{[m.value]:`${n.offset}px`,zIndex:(E=n.zIndex)!=null?E:r.value}});function h(){n.duration>0&&({stop:u}=Ul(()=>{i.value&&g()},n.duration))}function p(){u==null||u()}function g(){i.value=!1}function b({code:E}){E===Ce.delete||E===Ce.backspace?p():E===Ce.esc?i.value&&g():h()}return Xe(()=>{h(),s(),i.value=!0}),xt(document,"keydown",b),t({visible:i,close:g}),(E,C)=>(_(),oe(an,{name:o(l).b("fade"),onBeforeLeave:E.onClose,onAfterLeave:w=>E.$emit("destroy"),persisted:""},{default:U(()=>[We(F("div",{id:E.id,class:T([o(l).b(),E.customClass,o(f)]),style:_e(o(v)),role:"alert",onMouseenter:p,onMouseleave:h,onClick:E.onClick},[o(d)?(_(),oe(o(Se),{key:0,class:T([o(l).e("icon"),o(c)])},{default:U(()=>[(_(),oe(Ge(o(d))))]),_:1},8,["class"])):J("v-if",!0),F("div",{class:T(o(l).e("group"))},[F("h2",{class:T(o(l).e("title")),textContent:pe(E.title)},null,10,["textContent"]),We(F("div",{class:T(o(l).e("content")),style:_e(E.title?void 0:{margin:0})},[G(E.$slots,"default",{},()=>[E.dangerouslyUseHTMLString?(_(),V(Oe,{key:1},[J(" Caution here, message could've been compromised, never use user's input as message "),F("p",{innerHTML:E.message},null,8,["innerHTML"])],2112)):(_(),V("p",{key:0},pe(E.message),1))])],6),[[mt,E.message]]),E.showClose?(_(),oe(o(Se),{key:0,class:T(o(l).e("closeBtn")),onClick:Le(g,["stop"])},{default:U(()=>[(_(),oe(Ge(E.closeIcon)))]),_:1},8,["class","onClick"])):J("v-if",!0)],2)],46,["id","onClick"]),[[mt,i.value]])]),_:3},8,["name","onBeforeLeave","onAfterLeave"]))}});var HR=fe(zR,[["__file","notification.vue"]]);const us={"top-left":[],"top-right":[],"bottom-left":[],"bottom-right":[]},Dr=16;let KR=1;const Io=function(e={},t){if(!bt)return{close:()=>{}};(Ve(e)||Dt(e))&&(e={message:e});const n=e.position||"top-right";let l=e.offset||0;us[n].forEach(({vm:d})=>{var f;l+=(((f=d.el)==null?void 0:f.offsetHeight)||0)+Dr}),l+=Dr;const a=`notification_${KR++}`,s=e.onClose,r={...e,offset:l,id:a,onClose:()=>{WR(a,n,s)}};let i=document.body;_n(e.appendTo)?i=e.appendTo:Ve(e.appendTo)&&(i=document.querySelector(e.appendTo)),_n(i)||(i=document.body);const u=document.createElement("div"),c=H(HR,r,Qe(r.message)?r.message:Dt(r.message)?()=>r.message:null);return c.appContext=vt(t)?Io._context:t,c.props.onDestroy=()=>{Il(null,u)},Il(c,u),us[n].push({vm:c}),i.appendChild(u.firstElementChild),{close:()=>{c.component.exposed.visible.value=!1}}};kp.forEach(e=>{Io[e]=(t={},n)=>((Ve(t)||Dt(t))&&(t={message:t}),Io({...t,type:e},n))});function WR(e,t,n){const l=us[t],a=l.findIndex(({vm:c})=>{var d;return((d=c.component)==null?void 0:d.props.id)===e});if(a===-1)return;const{vm:s}=l[a];if(!s)return;n==null||n(s);const r=s.el.offsetHeight,i=t.split("-")[0];l.splice(a,1);const u=l.length;if(!(u<1))for(let c=a;c{t.component.exposed.visible.value=!1})}Io.closeAll=jR;Io._context=null;const UR=od(Io,"$notify");var YR=[rR,fR,_R,DR,UR,Gf],QR=kh([...eR,...YR]);/*! Element Plus v2.10.4 */var eP={name:"zh-cn",el:{breadcrumb:{label:"面包屑"},colorpicker:{confirm:"确定",clear:"清空",defaultLabel:"颜色选择器",description:"当前颜色 {color},按 Enter 键选择新颜色",alphaLabel:"选择透明度的值"},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:"请选择"},dropdown:{toggleDropdown:"切换下拉选项"},mention:{loading:"加载中"},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:"合计"},tour:{next:"下一步",previous:"上一步",finish:"结束导览"},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}"}}};export{R1 as E,ql as a,on as b,CE as c,Qa as d,ek as e,un as f,QR as i,eP as z}; diff --git a/web/admin-spa/dist/assets/element-plus-BWHEPMNp.css b/web/admin-spa/dist/assets/element-plus-BWHEPMNp.css new file mode 100644 index 00000000..601b4e55 --- /dev/null +++ b/web/admin-spa/dist/assets/element-plus-BWHEPMNp.css @@ -0,0 +1 @@ +@charset "UTF-8";.el-affix--fixed{position:fixed}.el-alert{--el-alert-padding:8px 16px;--el-alert-border-radius-base:var(--el-border-radius-base);--el-alert-title-font-size:14px;--el-alert-title-with-description-font-size:16px;--el-alert-description-font-size:14px;--el-alert-close-font-size:16px;--el-alert-close-customed-font-size:14px;--el-alert-icon-size:16px;--el-alert-icon-large-size:28px;align-items:center;background-color:var(--el-color-white);border-radius:var(--el-alert-border-radius-base);box-sizing:border-box;display:flex;margin:0;opacity:1;overflow:hidden;padding:var(--el-alert-padding);position:relative;transition:opacity var(--el-transition-duration-fast);width:100%}.el-alert.is-light .el-alert__close-btn{color:var(--el-text-color-placeholder)}.el-alert.is-dark .el-alert__close-btn,.el-alert.is-dark .el-alert__description{color:var(--el-color-white)}.el-alert.is-center{justify-content:center}.el-alert--primary{--el-alert-bg-color:var(--el-color-primary-light-9)}.el-alert--primary.is-light{background-color:var(--el-alert-bg-color)}.el-alert--primary.is-light,.el-alert--primary.is-light .el-alert__description{color:var(--el-color-primary)}.el-alert--primary.is-dark{background-color:var(--el-color-primary);color:var(--el-color-white)}.el-alert--success{--el-alert-bg-color:var(--el-color-success-light-9)}.el-alert--success.is-light{background-color:var(--el-alert-bg-color)}.el-alert--success.is-light,.el-alert--success.is-light .el-alert__description{color:var(--el-color-success)}.el-alert--success.is-dark{background-color:var(--el-color-success);color:var(--el-color-white)}.el-alert--info{--el-alert-bg-color:var(--el-color-info-light-9)}.el-alert--info.is-light{background-color:var(--el-alert-bg-color)}.el-alert--info.is-light,.el-alert--info.is-light .el-alert__description{color:var(--el-color-info)}.el-alert--info.is-dark{background-color:var(--el-color-info);color:var(--el-color-white)}.el-alert--warning{--el-alert-bg-color:var(--el-color-warning-light-9)}.el-alert--warning.is-light{background-color:var(--el-alert-bg-color)}.el-alert--warning.is-light,.el-alert--warning.is-light .el-alert__description{color:var(--el-color-warning)}.el-alert--warning.is-dark{background-color:var(--el-color-warning);color:var(--el-color-white)}.el-alert--error{--el-alert-bg-color:var(--el-color-error-light-9)}.el-alert--error.is-light{background-color:var(--el-alert-bg-color)}.el-alert--error.is-light,.el-alert--error.is-light .el-alert__description{color:var(--el-color-error)}.el-alert--error.is-dark{background-color:var(--el-color-error);color:var(--el-color-white)}.el-alert__content{display:flex;flex-direction:column;gap:4px}.el-alert .el-alert__icon{font-size:var(--el-alert-icon-size);margin-right:8px;width:var(--el-alert-icon-size)}.el-alert .el-alert__icon.is-big{font-size:var(--el-alert-icon-large-size);margin-right:12px;width:var(--el-alert-icon-large-size)}.el-alert__title{font-size:var(--el-alert-title-font-size);line-height:24px}.el-alert__title.with-description{font-size:var(--el-alert-title-with-description-font-size)}.el-alert .el-alert__description{font-size:var(--el-alert-description-font-size);margin:0}.el-alert .el-alert__close-btn{cursor:pointer;font-size:var(--el-alert-close-font-size);opacity:1;position:absolute;right:16px;top:12px}.el-alert .el-alert__close-btn.is-customed{font-size:var(--el-alert-close-customed-font-size);font-style:normal;line-height:24px;top:8px}.el-alert-fade-enter-from,.el-alert-fade-leave-active{opacity:0}.el-aside{box-sizing:border-box;flex-shrink:0;overflow:auto;width:var(--el-aside-width,300px)}.el-autocomplete{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;display:inline-block;position:relative;width:var(--el-input-width)}.el-autocomplete__popper.el-popper{background:var(--el-bg-color-overlay);box-shadow:var(--el-box-shadow-light)}.el-autocomplete__popper.el-popper,.el-autocomplete__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-autocomplete__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-left-color:transparent;border-top-color:transparent}.el-autocomplete__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent;border-right-color:transparent}.el-autocomplete__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:transparent;border-left-color:transparent}.el-autocomplete__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent;border-top-color:transparent}.el-autocomplete-suggestion{border-radius:var(--el-border-radius-base);box-sizing:border-box}.el-autocomplete-suggestion__wrap{box-sizing:border-box;max-height:280px;padding:10px 0}.el-autocomplete-suggestion__list{margin:0;padding:0}.el-autocomplete-suggestion li{color:var(--el-text-color-regular);cursor:pointer;font-size:var(--el-font-size-base);line-height:34px;list-style:none;margin:0;overflow:hidden;padding:0 20px;text-align:left;text-overflow:ellipsis;white-space:nowrap}.el-autocomplete-suggestion li.highlighted,.el-autocomplete-suggestion li:hover{background-color:var(--el-fill-color-light)}.el-autocomplete-suggestion li.divider{border-top:1px solid var(--el-color-black);margin-top:6px}.el-autocomplete-suggestion li.divider:last-child{margin-bottom:-6px}.el-autocomplete-suggestion.is-loading li{color:var(--el-text-color-secondary);font-size:20px;height:100px;line-height:100px;text-align:center}.el-autocomplete-suggestion.is-loading li:after{content:"";display:inline-block;height:100%;vertical-align:middle}.el-autocomplete-suggestion.is-loading li:hover{background-color:var(--el-bg-color-overlay)}.el-autocomplete-suggestion.is-loading .el-icon-loading{vertical-align:middle}.el-avatar{--el-avatar-text-color:var(--el-color-white);--el-avatar-bg-color:var(--el-text-color-disabled);--el-avatar-text-size:14px;--el-avatar-icon-size:18px;--el-avatar-border-radius:var(--el-border-radius-base);--el-avatar-size-large:56px;--el-avatar-size-small:24px;--el-avatar-size:40px;align-items:center;background:var(--el-avatar-bg-color);box-sizing:border-box;color:var(--el-avatar-text-color);display:inline-flex;font-size:var(--el-avatar-text-size);height:var(--el-avatar-size);justify-content:center;outline:none;overflow:hidden;text-align:center;width:var(--el-avatar-size)}.el-avatar>img{display:block;height:100%;width:100%}.el-avatar--circle{border-radius:50%}.el-avatar--square{border-radius:var(--el-avatar-border-radius)}.el-avatar--icon{font-size:var(--el-avatar-icon-size)}.el-avatar--small{--el-avatar-size:24px}.el-avatar--large{--el-avatar-size:56px}.el-backtop{--el-backtop-bg-color:var(--el-bg-color-overlay);--el-backtop-text-color:var(--el-color-primary);--el-backtop-hover-bg-color:var(--el-border-color-extra-light);align-items:center;background-color:var(--el-backtop-bg-color);border-radius:50%;box-shadow:var(--el-box-shadow-lighter);color:var(--el-backtop-text-color);cursor:pointer;display:flex;font-size:20px;height:40px;justify-content:center;position:fixed;width:40px;z-index:5}.el-backtop:hover{background-color:var(--el-backtop-hover-bg-color)}.el-backtop__icon{font-size:20px}.el-badge{--el-badge-bg-color:var(--el-color-danger);--el-badge-radius:10px;--el-badge-font-size:12px;--el-badge-padding:6px;--el-badge-size:18px;display:inline-block;position:relative;vertical-align:middle;width:fit-content}.el-badge__content{align-items:center;background-color:var(--el-badge-bg-color);border:1px solid var(--el-bg-color);border-radius:var(--el-badge-radius);color:var(--el-color-white);display:inline-flex;font-size:var(--el-badge-font-size);height:var(--el-badge-size);justify-content:center;padding:0 var(--el-badge-padding);white-space:nowrap}.el-badge__content.is-fixed{position:absolute;right:calc(1px + var(--el-badge-size)/2);top:0;transform:translateY(-50%) translate(100%);z-index:var(--el-index-normal)}.el-badge__content.is-fixed.is-dot{right:5px}.el-badge__content.is-dot{border-radius:50%;height:8px;padding:0;right:0;width:8px}.el-badge__content.is-hide-zero{display:none}.el-badge__content--primary{background-color:var(--el-color-primary)}.el-badge__content--success{background-color:var(--el-color-success)}.el-badge__content--warning{background-color:var(--el-color-warning)}.el-badge__content--info{background-color:var(--el-color-info)}.el-badge__content--danger{background-color:var(--el-color-danger)}.el-breadcrumb{font-size:14px;line-height:1}.el-breadcrumb:after,.el-breadcrumb:before{content:"";display:table}.el-breadcrumb:after{clear:both}.el-breadcrumb__separator{color:var(--el-text-color-placeholder);font-weight:700;margin:0 9px}.el-breadcrumb__separator.el-icon{font-weight:400;margin:0 6px}.el-breadcrumb__separator.el-icon svg{vertical-align:middle}.el-breadcrumb__item{align-items:center;display:inline-flex;float:left}.el-breadcrumb__inner{color:var(--el-text-color-regular)}.el-breadcrumb__inner a,.el-breadcrumb__inner.is-link{color:var(--el-text-color-primary);font-weight:700;text-decoration:none;transition:var(--el-transition-color)}.el-breadcrumb__inner a:hover,.el-breadcrumb__inner.is-link:hover{color:var(--el-color-primary);cursor:pointer}.el-breadcrumb__item:last-child .el-breadcrumb__inner,.el-breadcrumb__item:last-child .el-breadcrumb__inner a,.el-breadcrumb__item:last-child .el-breadcrumb__inner a:hover,.el-breadcrumb__item:last-child .el-breadcrumb__inner:hover{color:var(--el-text-color-regular);cursor:text;font-weight:400}.el-breadcrumb__item:last-child .el-breadcrumb__separator{display:none}.el-button-group{display:inline-block;vertical-align:middle}.el-button-group:after,.el-button-group:before{content:"";display:table}.el-button-group:after{clear:both}.el-button-group>.el-button{float:left;position:relative}.el-button-group>.el-button+.el-button{margin-left:0}.el-button-group>.el-button:first-child{border-bottom-right-radius:0;border-top-right-radius:0}.el-button-group>.el-button:last-child{border-bottom-left-radius:0;border-top-left-radius:0}.el-button-group>.el-button:first-child:last-child{border-bottom-left-radius:var(--el-border-radius-base);border-bottom-right-radius:var(--el-border-radius-base);border-top-left-radius:var(--el-border-radius-base);border-top-right-radius:var(--el-border-radius-base)}.el-button-group>.el-button:first-child:last-child.is-round{border-radius:var(--el-border-radius-round)}.el-button-group>.el-button:first-child:last-child.is-circle{border-radius:50%}.el-button-group>.el-button:not(:first-child):not(:last-child){border-radius:0}.el-button-group>.el-button:not(:last-child){margin-right:-1px}.el-button-group>.el-button.is-active,.el-button-group>.el-button:active,.el-button-group>.el-button:focus,.el-button-group>.el-button:hover{z-index:1}.el-button-group>.el-dropdown>.el-button{border-bottom-left-radius:0;border-left-color:var(--el-button-divide-border-color);border-top-left-radius:0}.el-button-group .el-button--primary:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--primary:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--primary:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--success:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--success:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--success:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--warning:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--warning:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--warning:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--danger:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--danger:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--danger:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--info:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--info:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--info:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-calendar{--el-calendar-border:var(--el-table-border,1px solid var(--el-border-color-lighter));--el-calendar-header-border-bottom:var(--el-calendar-border);--el-calendar-selected-bg-color:var(--el-color-primary-light-9);--el-calendar-cell-width:85px;background-color:var(--el-fill-color-blank)}.el-calendar__header{border-bottom:var(--el-calendar-header-border-bottom);display:flex;justify-content:space-between;padding:12px 20px}.el-calendar__title{align-self:center;color:var(--el-text-color)}.el-calendar__body{padding:12px 20px 35px}.el-calendar-table{table-layout:fixed;width:100%}.el-calendar-table thead th{color:var(--el-text-color-regular);font-weight:400;padding:12px 0}.el-calendar-table:not(.is-range) td.next,.el-calendar-table:not(.is-range) td.prev{color:var(--el-text-color-placeholder)}.el-calendar-table td{border-bottom:var(--el-calendar-border);border-right:var(--el-calendar-border);transition:background-color var(--el-transition-duration-fast) ease;vertical-align:top}.el-calendar-table td.is-selected{background-color:var(--el-calendar-selected-bg-color)}.el-calendar-table td.is-today{color:var(--el-color-primary)}.el-calendar-table tr:first-child td{border-top:var(--el-calendar-border)}.el-calendar-table tr td:first-child{border-left:var(--el-calendar-border)}.el-calendar-table tr.el-calendar-table__row--hide-border td{border-top:none}.el-calendar-table .el-calendar-day{box-sizing:border-box;height:var(--el-calendar-cell-width);padding:8px}.el-calendar-table .el-calendar-day:hover{background-color:var(--el-calendar-selected-bg-color);cursor:pointer}.el-card{--el-card-border-color:var(--el-border-color-light);--el-card-border-radius:4px;--el-card-padding:20px;--el-card-bg-color:var(--el-fill-color-blank);background-color:var(--el-card-bg-color);border:1px solid var(--el-card-border-color);border-radius:var(--el-card-border-radius);color:var(--el-text-color-primary);overflow:hidden;transition:var(--el-transition-duration)}.el-card.is-always-shadow,.el-card.is-hover-shadow:focus,.el-card.is-hover-shadow:hover{box-shadow:var(--el-box-shadow-light)}.el-card__header{border-bottom:1px solid var(--el-card-border-color);box-sizing:border-box;padding:calc(var(--el-card-padding) - 2px) var(--el-card-padding)}.el-card__body{padding:var(--el-card-padding)}.el-card__footer{border-top:1px solid var(--el-card-border-color);box-sizing:border-box;padding:calc(var(--el-card-padding) - 2px) var(--el-card-padding)}.el-carousel__item{display:inline-block;height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%}.el-carousel__item,.el-carousel__item.is-active{z-index:calc(var(--el-index-normal) - 1)}.el-carousel__item--card,.el-carousel__item.is-animating{transition:transform .4s ease-in-out}.el-carousel__item--card{width:50%}.el-carousel__item--card.is-in-stage{cursor:pointer;z-index:var(--el-index-normal)}.el-carousel__item--card.is-in-stage.is-hover .el-carousel__mask,.el-carousel__item--card.is-in-stage:hover .el-carousel__mask{opacity:.12}.el-carousel__item--card.is-active{z-index:calc(var(--el-index-normal) + 1)}.el-carousel__item--card-vertical{height:50%;width:100%}.el-carousel__mask{background-color:var(--el-color-white);height:100%;left:0;opacity:.24;position:absolute;top:0;transition:var(--el-transition-duration-fast);width:100%}.el-carousel{--el-carousel-arrow-font-size:12px;--el-carousel-arrow-size:36px;--el-carousel-arrow-background:rgba(31,45,61,.11);--el-carousel-arrow-hover-background:rgba(31,45,61,.23);--el-carousel-indicator-width:30px;--el-carousel-indicator-height:2px;--el-carousel-indicator-padding-horizontal:4px;--el-carousel-indicator-padding-vertical:12px;--el-carousel-indicator-out-color:var(--el-border-color-hover);position:relative}.el-carousel--horizontal,.el-carousel--vertical{overflow:hidden}.el-carousel__container{height:300px;position:relative}.el-carousel__arrow{align-items:center;background-color:var(--el-carousel-arrow-background);border:none;border-radius:50%;color:#fff;cursor:pointer;display:inline-flex;font-size:var(--el-carousel-arrow-font-size);height:var(--el-carousel-arrow-size);justify-content:center;margin:0;outline:none;padding:0;position:absolute;text-align:center;top:50%;transform:translateY(-50%);transition:var(--el-transition-duration);width:var(--el-carousel-arrow-size);z-index:10}.el-carousel__arrow--left{left:16px}.el-carousel__arrow--right{right:16px}.el-carousel__arrow:hover{background-color:var(--el-carousel-arrow-hover-background)}.el-carousel__arrow i{cursor:pointer}.el-carousel__indicators{list-style:none;margin:0;padding:0;position:absolute;z-index:calc(var(--el-index-normal) + 1)}.el-carousel__indicators--horizontal{bottom:0;left:50%;transform:translate(-50%)}.el-carousel__indicators--vertical{right:0;top:50%;transform:translateY(-50%)}.el-carousel__indicators--outside{bottom:calc(var(--el-carousel-indicator-height) + var(--el-carousel-indicator-padding-vertical)*2);position:static;text-align:center;transform:none}.el-carousel__indicators--outside .el-carousel__indicator:hover button{opacity:.64}.el-carousel__indicators--outside button{background-color:var(--el-carousel-indicator-out-color);opacity:.24}.el-carousel__indicators--right{right:0}.el-carousel__indicators--labels{left:0;right:0;text-align:center;transform:none}.el-carousel__indicators--labels .el-carousel__button{color:#000;font-size:12px;height:auto;padding:2px 18px;width:auto}.el-carousel__indicators--labels .el-carousel__indicator{padding:6px 4px}.el-carousel__indicator{background-color:transparent;cursor:pointer}.el-carousel__indicator:hover button{opacity:.72}.el-carousel__indicator--horizontal{display:inline-block;padding:var(--el-carousel-indicator-padding-vertical) var(--el-carousel-indicator-padding-horizontal)}.el-carousel__indicator--vertical{padding:var(--el-carousel-indicator-padding-horizontal) var(--el-carousel-indicator-padding-vertical)}.el-carousel__indicator--vertical .el-carousel__button{height:calc(var(--el-carousel-indicator-width)/2);width:var(--el-carousel-indicator-height)}.el-carousel__indicator.is-active button{opacity:1}.el-carousel__button{background-color:#fff;border:none;cursor:pointer;display:block;height:var(--el-carousel-indicator-height);margin:0;opacity:.48;outline:none;padding:0;transition:var(--el-transition-duration);width:var(--el-carousel-indicator-width)}.carousel-arrow-left-enter-from,.carousel-arrow-left-leave-active{opacity:0;transform:translateY(-50%) translate(-10px)}.carousel-arrow-right-enter-from,.carousel-arrow-right-leave-active{opacity:0;transform:translateY(-50%) translate(10px)}.el-transitioning{filter:url(#elCarouselHorizontal)}.el-transitioning-vertical{filter:url(#elCarouselVertical)}.el-cascader-panel{--el-cascader-menu-text-color:var(--el-text-color-regular);--el-cascader-menu-selected-text-color:var(--el-color-primary);--el-cascader-menu-fill:var(--el-bg-color-overlay);--el-cascader-menu-font-size:var(--el-font-size-base);--el-cascader-menu-radius:var(--el-border-radius-base);--el-cascader-menu-border:solid 1px var(--el-border-color-light);--el-cascader-menu-shadow:var(--el-box-shadow-light);--el-cascader-node-background-hover:var(--el-fill-color-light);--el-cascader-node-color-disabled:var(--el-text-color-placeholder);--el-cascader-color-empty:var(--el-text-color-placeholder);--el-cascader-tag-background:var(--el-fill-color);border-radius:var(--el-cascader-menu-radius);display:flex;font-size:var(--el-cascader-menu-font-size)}.el-cascader-panel.is-bordered{border:var(--el-cascader-menu-border);border-radius:var(--el-cascader-menu-radius)}.el-cascader-menu{border-right:var(--el-cascader-menu-border);box-sizing:border-box;color:var(--el-cascader-menu-text-color);min-width:180px}.el-cascader-menu:last-child{border-right:none}.el-cascader-menu:last-child .el-cascader-node{padding-right:20px}.el-cascader-menu__wrap.el-scrollbar__wrap{height:204px}.el-cascader-menu__list{box-sizing:border-box;list-style:none;margin:0;min-height:100%;padding:6px 0;position:relative}.el-cascader-menu__hover-zone{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.el-cascader-menu__empty-text{align-items:center;color:var(--el-cascader-color-empty);display:flex;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.el-cascader-menu__empty-text .is-loading{margin-right:2px}.el-cascader-node{align-items:center;display:flex;height:34px;line-height:34px;outline:none;padding:0 30px 0 20px;position:relative}.el-cascader-node.is-selectable.in-active-path{color:var(--el-cascader-menu-text-color)}.el-cascader-node.in-active-path,.el-cascader-node.is-active,.el-cascader-node.is-selectable.in-checked-path{color:var(--el-cascader-menu-selected-text-color);font-weight:700}.el-cascader-node:not(.is-disabled){cursor:pointer}.el-cascader-node:not(.is-disabled):focus,.el-cascader-node:not(.is-disabled):hover{background:var(--el-cascader-node-background-hover)}.el-cascader-node.is-disabled{color:var(--el-cascader-node-color-disabled);cursor:not-allowed}.el-cascader-node__prefix{left:10px;position:absolute}.el-cascader-node__postfix{position:absolute;right:10px}.el-cascader-node__label{flex:1;overflow:hidden;padding:0 8px;text-align:left;text-overflow:ellipsis;white-space:nowrap}.el-cascader-node>.el-checkbox,.el-cascader-node>.el-radio{margin-right:0}.el-cascader-node>.el-radio .el-radio__label{padding-left:0}.el-cascader{--el-cascader-menu-text-color:var(--el-text-color-regular);--el-cascader-menu-selected-text-color:var(--el-color-primary);--el-cascader-menu-fill:var(--el-bg-color-overlay);--el-cascader-menu-font-size:var(--el-font-size-base);--el-cascader-menu-radius:var(--el-border-radius-base);--el-cascader-menu-border:solid 1px var(--el-border-color-light);--el-cascader-menu-shadow:var(--el-box-shadow-light);--el-cascader-node-background-hover:var(--el-fill-color-light);--el-cascader-node-color-disabled:var(--el-text-color-placeholder);--el-cascader-color-empty:var(--el-text-color-placeholder);--el-cascader-tag-background:var(--el-fill-color);display:inline-block;font-size:var(--el-font-size-base);line-height:32px;outline:none;position:relative;vertical-align:middle}.el-cascader:not(.is-disabled):hover .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset;cursor:pointer}.el-cascader .el-input{cursor:pointer;display:flex}.el-cascader .el-input .el-input__inner{cursor:pointer;text-overflow:ellipsis}.el-cascader .el-input .el-input__suffix-inner .el-icon svg{vertical-align:middle}.el-cascader .el-input .icon-arrow-down{font-size:14px;transition:transform var(--el-transition-duration)}.el-cascader .el-input .icon-arrow-down.is-reverse{transform:rotate(180deg)}.el-cascader .el-input .icon-circle-close:hover{color:var(--el-input-clear-hover-color,var(--el-text-color-secondary))}.el-cascader .el-input.is-focus .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-border-color,var(--el-color-primary)) inset}.el-cascader--large{font-size:14px;line-height:40px}.el-cascader--large .el-cascader__tags{gap:6px;padding:8px}.el-cascader--large .el-cascader__search-input{height:24px;margin-left:7px}.el-cascader--small{font-size:12px;line-height:24px}.el-cascader--small .el-cascader__tags{gap:4px;padding:2px}.el-cascader--small .el-cascader__search-input{height:20px;margin-left:5px}.el-cascader.is-disabled .el-cascader__label{color:var(--el-disabled-text-color);z-index:calc(var(--el-index-normal) + 1)}.el-cascader__dropdown{--el-cascader-menu-text-color:var(--el-text-color-regular);--el-cascader-menu-selected-text-color:var(--el-color-primary);--el-cascader-menu-fill:var(--el-bg-color-overlay);--el-cascader-menu-font-size:var(--el-font-size-base);--el-cascader-menu-radius:var(--el-border-radius-base);--el-cascader-menu-border:solid 1px var(--el-border-color-light);--el-cascader-menu-shadow:var(--el-box-shadow-light);--el-cascader-node-background-hover:var(--el-fill-color-light);--el-cascader-node-color-disabled:var(--el-text-color-placeholder);--el-cascader-color-empty:var(--el-text-color-placeholder);--el-cascader-tag-background:var(--el-fill-color);border-radius:var(--el-cascader-menu-radius);font-size:var(--el-cascader-menu-font-size)}.el-cascader__dropdown.el-popper{background:var(--el-cascader-menu-fill)}.el-cascader__dropdown.el-popper,.el-cascader__dropdown.el-popper .el-popper__arrow:before{border:var(--el-cascader-menu-border)}.el-cascader__dropdown.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-left-color:transparent;border-top-color:transparent}.el-cascader__dropdown.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent;border-right-color:transparent}.el-cascader__dropdown.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:transparent;border-left-color:transparent}.el-cascader__dropdown.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent;border-top-color:transparent}.el-cascader__dropdown.el-popper{box-shadow:var(--el-cascader-menu-shadow)}.el-cascader__tags{box-sizing:border-box;display:flex;flex-wrap:wrap;gap:6px;left:0;line-height:normal;padding:4px;position:absolute;right:30px;text-align:left;top:50%;transform:translateY(-50%)}.el-cascader__tags .el-tag{align-items:center;background:var(--el-cascader-tag-background);display:inline-flex;max-width:100%;text-overflow:ellipsis}.el-cascader__tags .el-tag.el-tag--dark,.el-cascader__tags .el-tag.el-tag--plain{background-color:var(--el-tag-bg-color)}.el-cascader__tags .el-tag:not(.is-hit){border-color:transparent}.el-cascader__tags .el-tag:not(.is-hit).el-tag--dark,.el-cascader__tags .el-tag:not(.is-hit).el-tag--plain{border-color:var(--el-tag-border-color)}.el-cascader__tags .el-tag>span{flex:1;line-height:normal;overflow:hidden;text-overflow:ellipsis}.el-cascader__tags .el-tag .el-icon-close{background-color:var(--el-text-color-placeholder);color:var(--el-color-white);flex:none}.el-cascader__tags .el-tag .el-icon-close:hover{background-color:var(--el-text-color-secondary)}.el-cascader__tags .el-tag+input{margin-left:0}.el-cascader__tags.is-validate{right:55px}.el-cascader__collapse-tags{white-space:normal;z-index:var(--el-index-normal)}.el-cascader__collapse-tags .el-tag{align-items:center;background:var(--el-fill-color);display:inline-flex;max-width:100%;text-overflow:ellipsis}.el-cascader__collapse-tags .el-tag.el-tag--dark,.el-cascader__collapse-tags .el-tag.el-tag--plain{background-color:var(--el-tag-bg-color)}.el-cascader__collapse-tags .el-tag:not(.is-hit){border-color:transparent}.el-cascader__collapse-tags .el-tag:not(.is-hit).el-tag--dark,.el-cascader__collapse-tags .el-tag:not(.is-hit).el-tag--plain{border-color:var(--el-tag-border-color)}.el-cascader__collapse-tags .el-tag>span{flex:1;line-height:normal;overflow:hidden;text-overflow:ellipsis}.el-cascader__collapse-tags .el-tag .el-icon-close{background-color:var(--el-text-color-placeholder);color:var(--el-color-white);flex:none}.el-cascader__collapse-tags .el-tag .el-icon-close:hover{background-color:var(--el-text-color-secondary)}.el-cascader__collapse-tags .el-tag+input{margin-left:0}.el-cascader__collapse-tags .el-tag{margin:2px 0}.el-cascader__suggestion-panel{border-radius:var(--el-cascader-menu-radius)}.el-cascader__suggestion-list{color:var(--el-cascader-menu-text-color);font-size:var(--el-font-size-base);margin:0;max-height:204px;padding:6px 0;text-align:center}.el-cascader__suggestion-item{align-items:center;cursor:pointer;display:flex;height:34px;justify-content:space-between;outline:none;padding:0 15px;text-align:left}.el-cascader__suggestion-item:focus,.el-cascader__suggestion-item:hover{background:var(--el-cascader-node-background-hover)}.el-cascader__suggestion-item.is-checked{color:var(--el-cascader-menu-selected-text-color);font-weight:700}.el-cascader__suggestion-item>span{margin-right:10px}.el-cascader__empty-text{color:var(--el-cascader-color-empty);margin:10px 0}.el-cascader__search-input{background:transparent;border:none;box-sizing:border-box;color:var(--el-cascader-menu-text-color);flex:1;height:24px;margin-left:7px;min-width:60px;outline:none;padding:0}.el-cascader__search-input::placeholder{color:transparent}.el-check-tag{background-color:var(--el-color-info-light-9);border-radius:var(--el-border-radius-base);color:var(--el-color-info);cursor:pointer;display:inline-block;font-size:var(--el-font-size-base);font-weight:700;line-height:var(--el-font-size-base);padding:7px 15px;transition:var(--el-transition-all)}.el-check-tag:hover{background-color:var(--el-color-info-light-7)}.el-check-tag.el-check-tag--primary.is-checked{background-color:var(--el-color-primary-light-8);color:var(--el-color-primary)}.el-check-tag.el-check-tag--primary.is-checked:hover{background-color:var(--el-color-primary-light-7)}.el-check-tag.el-check-tag--primary.is-checked.is-disabled{background-color:var(--el-color-primary-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--primary.is-checked.is-disabled:hover{background-color:var(--el-color-primary-light-8)}.el-check-tag.el-check-tag--primary.is-disabled{background-color:var(--el-color-info-light-9);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--primary.is-disabled:hover{background-color:var(--el-color-info-light-9)}.el-check-tag.el-check-tag--success.is-checked{background-color:var(--el-color-success-light-8);color:var(--el-color-success)}.el-check-tag.el-check-tag--success.is-checked:hover{background-color:var(--el-color-success-light-7)}.el-check-tag.el-check-tag--success.is-checked.is-disabled{background-color:var(--el-color-success-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--success.is-checked.is-disabled:hover{background-color:var(--el-color-success-light-8)}.el-check-tag.el-check-tag--success.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--success.is-disabled,.el-check-tag.el-check-tag--success.is-disabled:hover{background-color:var(--el-color-success-light-9)}.el-check-tag.el-check-tag--warning.is-checked{background-color:var(--el-color-warning-light-8);color:var(--el-color-warning)}.el-check-tag.el-check-tag--warning.is-checked:hover{background-color:var(--el-color-warning-light-7)}.el-check-tag.el-check-tag--warning.is-checked.is-disabled{background-color:var(--el-color-warning-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--warning.is-checked.is-disabled:hover{background-color:var(--el-color-warning-light-8)}.el-check-tag.el-check-tag--warning.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--warning.is-disabled,.el-check-tag.el-check-tag--warning.is-disabled:hover{background-color:var(--el-color-warning-light-9)}.el-check-tag.el-check-tag--danger.is-checked{background-color:var(--el-color-danger-light-8);color:var(--el-color-danger)}.el-check-tag.el-check-tag--danger.is-checked:hover{background-color:var(--el-color-danger-light-7)}.el-check-tag.el-check-tag--danger.is-checked.is-disabled{background-color:var(--el-color-danger-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--danger.is-checked.is-disabled:hover{background-color:var(--el-color-danger-light-8)}.el-check-tag.el-check-tag--danger.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--danger.is-disabled,.el-check-tag.el-check-tag--danger.is-disabled:hover{background-color:var(--el-color-danger-light-9)}.el-check-tag.el-check-tag--error.is-checked{background-color:var(--el-color-error-light-8);color:var(--el-color-error)}.el-check-tag.el-check-tag--error.is-checked:hover{background-color:var(--el-color-error-light-7)}.el-check-tag.el-check-tag--error.is-checked.is-disabled{background-color:var(--el-color-error-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--error.is-checked.is-disabled:hover{background-color:var(--el-color-error-light-8)}.el-check-tag.el-check-tag--error.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--error.is-disabled,.el-check-tag.el-check-tag--error.is-disabled:hover{background-color:var(--el-color-error-light-9)}.el-check-tag.el-check-tag--info.is-checked{background-color:var(--el-color-info-light-8);color:var(--el-color-info)}.el-check-tag.el-check-tag--info.is-checked:hover{background-color:var(--el-color-info-light-7)}.el-check-tag.el-check-tag--info.is-checked.is-disabled{background-color:var(--el-color-info-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--info.is-checked.is-disabled:hover{background-color:var(--el-color-info-light-8)}.el-check-tag.el-check-tag--info.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--info.is-disabled,.el-check-tag.el-check-tag--info.is-disabled:hover{background-color:var(--el-color-info-light-9)}.el-checkbox-button{--el-checkbox-button-checked-bg-color:var(--el-color-primary);--el-checkbox-button-checked-text-color:var(--el-color-white);--el-checkbox-button-checked-border-color:var(--el-color-primary);display:inline-block;position:relative}.el-checkbox-button__inner{-webkit-appearance:none;background:var(--el-button-bg-color,var(--el-fill-color-blank));border:var(--el-border);border-left-color:transparent;border-radius:0;box-sizing:border-box;color:var(--el-button-text-color,var(--el-text-color-regular));cursor:pointer;display:inline-block;font-size:var(--el-font-size-base);font-weight:var(--el-checkbox-font-weight);line-height:1;margin:0;outline:none;padding:8px 15px;position:relative;text-align:center;transition:var(--el-transition-all);-webkit-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.el-checkbox-button__inner.is-round{padding:8px 15px}.el-checkbox-button__inner:hover{color:var(--el-color-primary)}.el-checkbox-button__inner [class*=el-icon-]{line-height:.9}.el-checkbox-button__inner [class*=el-icon-]+span{margin-left:5px}.el-checkbox-button__original{margin:0;opacity:0;outline:none;position:absolute;z-index:-1}.el-checkbox-button.is-checked .el-checkbox-button__inner{background-color:var(--el-checkbox-button-checked-bg-color);border-color:var(--el-checkbox-button-checked-border-color);box-shadow:-1px 0 0 0 var(--el-color-primary-light-7);color:var(--el-checkbox-button-checked-text-color)}.el-checkbox-button.is-checked:first-child .el-checkbox-button__inner{border-left-color:var(--el-checkbox-button-checked-border-color)}.el-checkbox-button.is-disabled .el-checkbox-button__inner{background-color:var(--el-button-disabled-bg-color,var(--el-fill-color-blank));background-image:none;border-color:var(--el-button-disabled-border-color,var(--el-border-color-light));box-shadow:none;color:var(--el-disabled-text-color);cursor:not-allowed}.el-checkbox-button.is-disabled:first-child .el-checkbox-button__inner{border-left-color:var(--el-button-disabled-border-color,var(--el-border-color-light))}.el-checkbox-button:first-child .el-checkbox-button__inner{border-bottom-left-radius:var(--el-border-radius-base);border-left:var(--el-border);border-top-left-radius:var(--el-border-radius-base);box-shadow:none!important}.el-checkbox-button.is-focus .el-checkbox-button__inner{border-color:var(--el-checkbox-button-checked-border-color)}.el-checkbox-button:last-child .el-checkbox-button__inner{border-bottom-right-radius:var(--el-border-radius-base);border-top-right-radius:var(--el-border-radius-base)}.el-checkbox-button--large .el-checkbox-button__inner{border-radius:0;font-size:var(--el-font-size-base);padding:12px 19px}.el-checkbox-button--large .el-checkbox-button__inner.is-round{padding:12px 19px}.el-checkbox-button--small .el-checkbox-button__inner{border-radius:0;font-size:12px;padding:5px 11px}.el-checkbox-button--small .el-checkbox-button__inner.is-round{padding:5px 11px}.el-checkbox-group{font-size:0;line-height:0}.el-checkbox{--el-checkbox-font-size:14px;--el-checkbox-font-weight:var(--el-font-weight-primary);--el-checkbox-text-color:var(--el-text-color-regular);--el-checkbox-input-height:14px;--el-checkbox-input-width:14px;--el-checkbox-border-radius:var(--el-border-radius-small);--el-checkbox-bg-color:var(--el-fill-color-blank);--el-checkbox-input-border:var(--el-border);--el-checkbox-disabled-border-color:var(--el-border-color);--el-checkbox-disabled-input-fill:var(--el-fill-color-light);--el-checkbox-disabled-icon-color:var(--el-text-color-placeholder);--el-checkbox-disabled-checked-input-fill:var(--el-border-color-extra-light);--el-checkbox-disabled-checked-input-border-color:var(--el-border-color);--el-checkbox-disabled-checked-icon-color:var(--el-text-color-placeholder);--el-checkbox-checked-text-color:var(--el-color-primary);--el-checkbox-checked-input-border-color:var(--el-color-primary);--el-checkbox-checked-bg-color:var(--el-color-primary);--el-checkbox-checked-icon-color:var(--el-color-white);--el-checkbox-input-border-color-hover:var(--el-color-primary);align-items:center;color:var(--el-checkbox-text-color);cursor:pointer;display:inline-flex;font-size:var(--el-font-size-base);font-weight:var(--el-checkbox-font-weight);height:var(--el-checkbox-height,32px);margin-right:30px;position:relative;-webkit-user-select:none;user-select:none;white-space:nowrap}.el-checkbox.is-disabled{cursor:not-allowed}.el-checkbox.is-bordered{border:var(--el-border);border-radius:var(--el-border-radius-base);box-sizing:border-box;padding:0 15px 0 9px}.el-checkbox.is-bordered.is-checked{border-color:var(--el-color-primary)}.el-checkbox.is-bordered.is-disabled{border-color:var(--el-border-color-lighter)}.el-checkbox.is-bordered.el-checkbox--large{border-radius:var(--el-border-radius-base);padding:0 19px 0 11px}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__label{font-size:var(--el-font-size-base)}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__inner{height:14px;width:14px}.el-checkbox.is-bordered.el-checkbox--small{border-radius:calc(var(--el-border-radius-base) - 1px);padding:0 11px 0 7px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner{height:12px;width:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner:after{height:6px;width:2px}.el-checkbox input:focus-visible+.el-checkbox__inner{border-radius:var(--el-checkbox-border-radius);outline:2px solid var(--el-checkbox-input-border-color-hover);outline-offset:1px}.el-checkbox__input{cursor:pointer;display:inline-flex;outline:none;position:relative;white-space:nowrap}.el-checkbox__input.is-disabled .el-checkbox__inner{background-color:var(--el-checkbox-disabled-input-fill);border-color:var(--el-checkbox-disabled-border-color);cursor:not-allowed}.el-checkbox__input.is-disabled .el-checkbox__inner:after{border-color:var(--el-checkbox-disabled-icon-color);cursor:not-allowed}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner:after{border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner:before{background-color:var(--el-checkbox-disabled-checked-icon-color);border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled+span.el-checkbox__label{color:var(--el-disabled-text-color);cursor:not-allowed}.el-checkbox__input.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-checked .el-checkbox__inner:after{border-color:var(--el-checkbox-checked-icon-color);transform:translate(-45%,-60%) rotate(45deg) scaleY(1)}.el-checkbox__input.is-checked+.el-checkbox__label{color:var(--el-checkbox-checked-text-color)}.el-checkbox__input.is-focus:not(.is-checked) .el-checkbox__original:not(:focus-visible){border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__input.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-indeterminate .el-checkbox__inner:before{background-color:var(--el-checkbox-checked-icon-color);content:"";display:block;height:2px;left:0;position:absolute;right:0;top:5px;transform:scale(.5)}.el-checkbox__input.is-indeterminate .el-checkbox__inner:after{display:none}.el-checkbox__inner{background-color:var(--el-checkbox-bg-color);border:var(--el-checkbox-input-border);border-radius:var(--el-checkbox-border-radius);box-sizing:border-box;display:inline-block;height:var(--el-checkbox-input-height);position:relative;transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46),outline .25s cubic-bezier(.71,-.46,.29,1.46);width:var(--el-checkbox-input-width);z-index:var(--el-index-normal)}.el-checkbox__inner:hover{border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__inner:after{border:1px solid transparent;border-left:0;border-top:0;box-sizing:content-box;content:"";height:7px;left:50%;position:absolute;top:50%;transform:translate(-45%,-60%) rotate(45deg) scaleY(0);transform-origin:center;transition:transform .15s ease-in .05s;width:3px}.el-checkbox__original{height:0;margin:0;opacity:0;outline:none;position:absolute;width:0;z-index:-1}.el-checkbox__label{display:inline-block;font-size:var(--el-checkbox-font-size);line-height:1;padding-left:8px}.el-checkbox.el-checkbox--large{height:40px}.el-checkbox.el-checkbox--large .el-checkbox__label{font-size:14px}.el-checkbox.el-checkbox--large .el-checkbox__inner{height:14px;width:14px}.el-checkbox.el-checkbox--small{height:24px}.el-checkbox.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.el-checkbox--small .el-checkbox__inner{height:12px;width:12px}.el-checkbox.el-checkbox--small .el-checkbox__input.is-indeterminate .el-checkbox__inner:before{top:4px}.el-checkbox.el-checkbox--small .el-checkbox__inner:after{height:6px;width:2px}.el-checkbox:last-of-type{margin-right:0}[class*=el-col-]{box-sizing:border-box}[class*=el-col-].is-guttered{display:block;min-height:1px}.el-col-0{flex:0 0 0%;max-width:0}.el-col-0,.el-col-0.is-guttered{display:none}.el-col-offset-0{margin-left:0}.el-col-pull-0{position:relative;right:0}.el-col-push-0{left:0;position:relative}.el-col-1{flex:0 0 4.1666666667%;max-width:4.1666666667%}.el-col-1,.el-col-1.is-guttered{display:block}.el-col-offset-1{margin-left:4.1666666667%}.el-col-pull-1{position:relative;right:4.1666666667%}.el-col-push-1{left:4.1666666667%;position:relative}.el-col-2{flex:0 0 8.3333333333%;max-width:8.3333333333%}.el-col-2,.el-col-2.is-guttered{display:block}.el-col-offset-2{margin-left:8.3333333333%}.el-col-pull-2{position:relative;right:8.3333333333%}.el-col-push-2{left:8.3333333333%;position:relative}.el-col-3{flex:0 0 12.5%;max-width:12.5%}.el-col-3,.el-col-3.is-guttered{display:block}.el-col-offset-3{margin-left:12.5%}.el-col-pull-3{position:relative;right:12.5%}.el-col-push-3{left:12.5%;position:relative}.el-col-4{flex:0 0 16.6666666667%;max-width:16.6666666667%}.el-col-4,.el-col-4.is-guttered{display:block}.el-col-offset-4{margin-left:16.6666666667%}.el-col-pull-4{position:relative;right:16.6666666667%}.el-col-push-4{left:16.6666666667%;position:relative}.el-col-5{flex:0 0 20.8333333333%;max-width:20.8333333333%}.el-col-5,.el-col-5.is-guttered{display:block}.el-col-offset-5{margin-left:20.8333333333%}.el-col-pull-5{position:relative;right:20.8333333333%}.el-col-push-5{left:20.8333333333%;position:relative}.el-col-6{flex:0 0 25%;max-width:25%}.el-col-6,.el-col-6.is-guttered{display:block}.el-col-offset-6{margin-left:25%}.el-col-pull-6{position:relative;right:25%}.el-col-push-6{left:25%;position:relative}.el-col-7{flex:0 0 29.1666666667%;max-width:29.1666666667%}.el-col-7,.el-col-7.is-guttered{display:block}.el-col-offset-7{margin-left:29.1666666667%}.el-col-pull-7{position:relative;right:29.1666666667%}.el-col-push-7{left:29.1666666667%;position:relative}.el-col-8{flex:0 0 33.3333333333%;max-width:33.3333333333%}.el-col-8,.el-col-8.is-guttered{display:block}.el-col-offset-8{margin-left:33.3333333333%}.el-col-pull-8{position:relative;right:33.3333333333%}.el-col-push-8{left:33.3333333333%;position:relative}.el-col-9{flex:0 0 37.5%;max-width:37.5%}.el-col-9,.el-col-9.is-guttered{display:block}.el-col-offset-9{margin-left:37.5%}.el-col-pull-9{position:relative;right:37.5%}.el-col-push-9{left:37.5%;position:relative}.el-col-10{flex:0 0 41.6666666667%;max-width:41.6666666667%}.el-col-10,.el-col-10.is-guttered{display:block}.el-col-offset-10{margin-left:41.6666666667%}.el-col-pull-10{position:relative;right:41.6666666667%}.el-col-push-10{left:41.6666666667%;position:relative}.el-col-11{flex:0 0 45.8333333333%;max-width:45.8333333333%}.el-col-11,.el-col-11.is-guttered{display:block}.el-col-offset-11{margin-left:45.8333333333%}.el-col-pull-11{position:relative;right:45.8333333333%}.el-col-push-11{left:45.8333333333%;position:relative}.el-col-12{flex:0 0 50%;max-width:50%}.el-col-12,.el-col-12.is-guttered{display:block}.el-col-offset-12{margin-left:50%}.el-col-pull-12{position:relative;right:50%}.el-col-push-12{left:50%;position:relative}.el-col-13{flex:0 0 54.1666666667%;max-width:54.1666666667%}.el-col-13,.el-col-13.is-guttered{display:block}.el-col-offset-13{margin-left:54.1666666667%}.el-col-pull-13{position:relative;right:54.1666666667%}.el-col-push-13{left:54.1666666667%;position:relative}.el-col-14{flex:0 0 58.3333333333%;max-width:58.3333333333%}.el-col-14,.el-col-14.is-guttered{display:block}.el-col-offset-14{margin-left:58.3333333333%}.el-col-pull-14{position:relative;right:58.3333333333%}.el-col-push-14{left:58.3333333333%;position:relative}.el-col-15{flex:0 0 62.5%;max-width:62.5%}.el-col-15,.el-col-15.is-guttered{display:block}.el-col-offset-15{margin-left:62.5%}.el-col-pull-15{position:relative;right:62.5%}.el-col-push-15{left:62.5%;position:relative}.el-col-16{flex:0 0 66.6666666667%;max-width:66.6666666667%}.el-col-16,.el-col-16.is-guttered{display:block}.el-col-offset-16{margin-left:66.6666666667%}.el-col-pull-16{position:relative;right:66.6666666667%}.el-col-push-16{left:66.6666666667%;position:relative}.el-col-17{flex:0 0 70.8333333333%;max-width:70.8333333333%}.el-col-17,.el-col-17.is-guttered{display:block}.el-col-offset-17{margin-left:70.8333333333%}.el-col-pull-17{position:relative;right:70.8333333333%}.el-col-push-17{left:70.8333333333%;position:relative}.el-col-18{flex:0 0 75%;max-width:75%}.el-col-18,.el-col-18.is-guttered{display:block}.el-col-offset-18{margin-left:75%}.el-col-pull-18{position:relative;right:75%}.el-col-push-18{left:75%;position:relative}.el-col-19{flex:0 0 79.1666666667%;max-width:79.1666666667%}.el-col-19,.el-col-19.is-guttered{display:block}.el-col-offset-19{margin-left:79.1666666667%}.el-col-pull-19{position:relative;right:79.1666666667%}.el-col-push-19{left:79.1666666667%;position:relative}.el-col-20{flex:0 0 83.3333333333%;max-width:83.3333333333%}.el-col-20,.el-col-20.is-guttered{display:block}.el-col-offset-20{margin-left:83.3333333333%}.el-col-pull-20{position:relative;right:83.3333333333%}.el-col-push-20{left:83.3333333333%;position:relative}.el-col-21{flex:0 0 87.5%;max-width:87.5%}.el-col-21,.el-col-21.is-guttered{display:block}.el-col-offset-21{margin-left:87.5%}.el-col-pull-21{position:relative;right:87.5%}.el-col-push-21{left:87.5%;position:relative}.el-col-22{flex:0 0 91.6666666667%;max-width:91.6666666667%}.el-col-22,.el-col-22.is-guttered{display:block}.el-col-offset-22{margin-left:91.6666666667%}.el-col-pull-22{position:relative;right:91.6666666667%}.el-col-push-22{left:91.6666666667%;position:relative}.el-col-23{flex:0 0 95.8333333333%;max-width:95.8333333333%}.el-col-23,.el-col-23.is-guttered{display:block}.el-col-offset-23{margin-left:95.8333333333%}.el-col-pull-23{position:relative;right:95.8333333333%}.el-col-push-23{left:95.8333333333%;position:relative}.el-col-24{flex:0 0 100%;max-width:100%}.el-col-24,.el-col-24.is-guttered{display:block}.el-col-offset-24{margin-left:100%}.el-col-pull-24{position:relative;right:100%}.el-col-push-24{left:100%;position:relative}@media only screen and (max-width:767px){.el-col-xs-0{display:none;flex:0 0 0%;max-width:0}.el-col-xs-0.is-guttered{display:none}.el-col-xs-offset-0{margin-left:0}.el-col-xs-pull-0{position:relative;right:0}.el-col-xs-push-0{left:0;position:relative}.el-col-xs-1{flex:0 0 4.1666666667%;max-width:4.1666666667%}.el-col-xs-1,.el-col-xs-1.is-guttered{display:block}.el-col-xs-offset-1{margin-left:4.1666666667%}.el-col-xs-pull-1{position:relative;right:4.1666666667%}.el-col-xs-push-1{left:4.1666666667%;position:relative}.el-col-xs-2{flex:0 0 8.3333333333%;max-width:8.3333333333%}.el-col-xs-2,.el-col-xs-2.is-guttered{display:block}.el-col-xs-offset-2{margin-left:8.3333333333%}.el-col-xs-pull-2{position:relative;right:8.3333333333%}.el-col-xs-push-2{left:8.3333333333%;position:relative}.el-col-xs-3{flex:0 0 12.5%;max-width:12.5%}.el-col-xs-3,.el-col-xs-3.is-guttered{display:block}.el-col-xs-offset-3{margin-left:12.5%}.el-col-xs-pull-3{position:relative;right:12.5%}.el-col-xs-push-3{left:12.5%;position:relative}.el-col-xs-4{flex:0 0 16.6666666667%;max-width:16.6666666667%}.el-col-xs-4,.el-col-xs-4.is-guttered{display:block}.el-col-xs-offset-4{margin-left:16.6666666667%}.el-col-xs-pull-4{position:relative;right:16.6666666667%}.el-col-xs-push-4{left:16.6666666667%;position:relative}.el-col-xs-5{flex:0 0 20.8333333333%;max-width:20.8333333333%}.el-col-xs-5,.el-col-xs-5.is-guttered{display:block}.el-col-xs-offset-5{margin-left:20.8333333333%}.el-col-xs-pull-5{position:relative;right:20.8333333333%}.el-col-xs-push-5{left:20.8333333333%;position:relative}.el-col-xs-6{flex:0 0 25%;max-width:25%}.el-col-xs-6,.el-col-xs-6.is-guttered{display:block}.el-col-xs-offset-6{margin-left:25%}.el-col-xs-pull-6{position:relative;right:25%}.el-col-xs-push-6{left:25%;position:relative}.el-col-xs-7{flex:0 0 29.1666666667%;max-width:29.1666666667%}.el-col-xs-7,.el-col-xs-7.is-guttered{display:block}.el-col-xs-offset-7{margin-left:29.1666666667%}.el-col-xs-pull-7{position:relative;right:29.1666666667%}.el-col-xs-push-7{left:29.1666666667%;position:relative}.el-col-xs-8{flex:0 0 33.3333333333%;max-width:33.3333333333%}.el-col-xs-8,.el-col-xs-8.is-guttered{display:block}.el-col-xs-offset-8{margin-left:33.3333333333%}.el-col-xs-pull-8{position:relative;right:33.3333333333%}.el-col-xs-push-8{left:33.3333333333%;position:relative}.el-col-xs-9{flex:0 0 37.5%;max-width:37.5%}.el-col-xs-9,.el-col-xs-9.is-guttered{display:block}.el-col-xs-offset-9{margin-left:37.5%}.el-col-xs-pull-9{position:relative;right:37.5%}.el-col-xs-push-9{left:37.5%;position:relative}.el-col-xs-10{display:block;flex:0 0 41.6666666667%;max-width:41.6666666667%}.el-col-xs-10.is-guttered{display:block}.el-col-xs-offset-10{margin-left:41.6666666667%}.el-col-xs-pull-10{position:relative;right:41.6666666667%}.el-col-xs-push-10{left:41.6666666667%;position:relative}.el-col-xs-11{display:block;flex:0 0 45.8333333333%;max-width:45.8333333333%}.el-col-xs-11.is-guttered{display:block}.el-col-xs-offset-11{margin-left:45.8333333333%}.el-col-xs-pull-11{position:relative;right:45.8333333333%}.el-col-xs-push-11{left:45.8333333333%;position:relative}.el-col-xs-12{display:block;flex:0 0 50%;max-width:50%}.el-col-xs-12.is-guttered{display:block}.el-col-xs-offset-12{margin-left:50%}.el-col-xs-pull-12{position:relative;right:50%}.el-col-xs-push-12{left:50%;position:relative}.el-col-xs-13{display:block;flex:0 0 54.1666666667%;max-width:54.1666666667%}.el-col-xs-13.is-guttered{display:block}.el-col-xs-offset-13{margin-left:54.1666666667%}.el-col-xs-pull-13{position:relative;right:54.1666666667%}.el-col-xs-push-13{left:54.1666666667%;position:relative}.el-col-xs-14{display:block;flex:0 0 58.3333333333%;max-width:58.3333333333%}.el-col-xs-14.is-guttered{display:block}.el-col-xs-offset-14{margin-left:58.3333333333%}.el-col-xs-pull-14{position:relative;right:58.3333333333%}.el-col-xs-push-14{left:58.3333333333%;position:relative}.el-col-xs-15{display:block;flex:0 0 62.5%;max-width:62.5%}.el-col-xs-15.is-guttered{display:block}.el-col-xs-offset-15{margin-left:62.5%}.el-col-xs-pull-15{position:relative;right:62.5%}.el-col-xs-push-15{left:62.5%;position:relative}.el-col-xs-16{display:block;flex:0 0 66.6666666667%;max-width:66.6666666667%}.el-col-xs-16.is-guttered{display:block}.el-col-xs-offset-16{margin-left:66.6666666667%}.el-col-xs-pull-16{position:relative;right:66.6666666667%}.el-col-xs-push-16{left:66.6666666667%;position:relative}.el-col-xs-17{display:block;flex:0 0 70.8333333333%;max-width:70.8333333333%}.el-col-xs-17.is-guttered{display:block}.el-col-xs-offset-17{margin-left:70.8333333333%}.el-col-xs-pull-17{position:relative;right:70.8333333333%}.el-col-xs-push-17{left:70.8333333333%;position:relative}.el-col-xs-18{display:block;flex:0 0 75%;max-width:75%}.el-col-xs-18.is-guttered{display:block}.el-col-xs-offset-18{margin-left:75%}.el-col-xs-pull-18{position:relative;right:75%}.el-col-xs-push-18{left:75%;position:relative}.el-col-xs-19{display:block;flex:0 0 79.1666666667%;max-width:79.1666666667%}.el-col-xs-19.is-guttered{display:block}.el-col-xs-offset-19{margin-left:79.1666666667%}.el-col-xs-pull-19{position:relative;right:79.1666666667%}.el-col-xs-push-19{left:79.1666666667%;position:relative}.el-col-xs-20{display:block;flex:0 0 83.3333333333%;max-width:83.3333333333%}.el-col-xs-20.is-guttered{display:block}.el-col-xs-offset-20{margin-left:83.3333333333%}.el-col-xs-pull-20{position:relative;right:83.3333333333%}.el-col-xs-push-20{left:83.3333333333%;position:relative}.el-col-xs-21{display:block;flex:0 0 87.5%;max-width:87.5%}.el-col-xs-21.is-guttered{display:block}.el-col-xs-offset-21{margin-left:87.5%}.el-col-xs-pull-21{position:relative;right:87.5%}.el-col-xs-push-21{left:87.5%;position:relative}.el-col-xs-22{display:block;flex:0 0 91.6666666667%;max-width:91.6666666667%}.el-col-xs-22.is-guttered{display:block}.el-col-xs-offset-22{margin-left:91.6666666667%}.el-col-xs-pull-22{position:relative;right:91.6666666667%}.el-col-xs-push-22{left:91.6666666667%;position:relative}.el-col-xs-23{display:block;flex:0 0 95.8333333333%;max-width:95.8333333333%}.el-col-xs-23.is-guttered{display:block}.el-col-xs-offset-23{margin-left:95.8333333333%}.el-col-xs-pull-23{position:relative;right:95.8333333333%}.el-col-xs-push-23{left:95.8333333333%;position:relative}.el-col-xs-24{display:block;flex:0 0 100%;max-width:100%}.el-col-xs-24.is-guttered{display:block}.el-col-xs-offset-24{margin-left:100%}.el-col-xs-pull-24{position:relative;right:100%}.el-col-xs-push-24{left:100%;position:relative}}@media only screen and (min-width:768px){.el-col-sm-0{display:none;flex:0 0 0%;max-width:0}.el-col-sm-0.is-guttered{display:none}.el-col-sm-offset-0{margin-left:0}.el-col-sm-pull-0{position:relative;right:0}.el-col-sm-push-0{left:0;position:relative}.el-col-sm-1{flex:0 0 4.1666666667%;max-width:4.1666666667%}.el-col-sm-1,.el-col-sm-1.is-guttered{display:block}.el-col-sm-offset-1{margin-left:4.1666666667%}.el-col-sm-pull-1{position:relative;right:4.1666666667%}.el-col-sm-push-1{left:4.1666666667%;position:relative}.el-col-sm-2{flex:0 0 8.3333333333%;max-width:8.3333333333%}.el-col-sm-2,.el-col-sm-2.is-guttered{display:block}.el-col-sm-offset-2{margin-left:8.3333333333%}.el-col-sm-pull-2{position:relative;right:8.3333333333%}.el-col-sm-push-2{left:8.3333333333%;position:relative}.el-col-sm-3{flex:0 0 12.5%;max-width:12.5%}.el-col-sm-3,.el-col-sm-3.is-guttered{display:block}.el-col-sm-offset-3{margin-left:12.5%}.el-col-sm-pull-3{position:relative;right:12.5%}.el-col-sm-push-3{left:12.5%;position:relative}.el-col-sm-4{flex:0 0 16.6666666667%;max-width:16.6666666667%}.el-col-sm-4,.el-col-sm-4.is-guttered{display:block}.el-col-sm-offset-4{margin-left:16.6666666667%}.el-col-sm-pull-4{position:relative;right:16.6666666667%}.el-col-sm-push-4{left:16.6666666667%;position:relative}.el-col-sm-5{flex:0 0 20.8333333333%;max-width:20.8333333333%}.el-col-sm-5,.el-col-sm-5.is-guttered{display:block}.el-col-sm-offset-5{margin-left:20.8333333333%}.el-col-sm-pull-5{position:relative;right:20.8333333333%}.el-col-sm-push-5{left:20.8333333333%;position:relative}.el-col-sm-6{flex:0 0 25%;max-width:25%}.el-col-sm-6,.el-col-sm-6.is-guttered{display:block}.el-col-sm-offset-6{margin-left:25%}.el-col-sm-pull-6{position:relative;right:25%}.el-col-sm-push-6{left:25%;position:relative}.el-col-sm-7{flex:0 0 29.1666666667%;max-width:29.1666666667%}.el-col-sm-7,.el-col-sm-7.is-guttered{display:block}.el-col-sm-offset-7{margin-left:29.1666666667%}.el-col-sm-pull-7{position:relative;right:29.1666666667%}.el-col-sm-push-7{left:29.1666666667%;position:relative}.el-col-sm-8{flex:0 0 33.3333333333%;max-width:33.3333333333%}.el-col-sm-8,.el-col-sm-8.is-guttered{display:block}.el-col-sm-offset-8{margin-left:33.3333333333%}.el-col-sm-pull-8{position:relative;right:33.3333333333%}.el-col-sm-push-8{left:33.3333333333%;position:relative}.el-col-sm-9{flex:0 0 37.5%;max-width:37.5%}.el-col-sm-9,.el-col-sm-9.is-guttered{display:block}.el-col-sm-offset-9{margin-left:37.5%}.el-col-sm-pull-9{position:relative;right:37.5%}.el-col-sm-push-9{left:37.5%;position:relative}.el-col-sm-10{display:block;flex:0 0 41.6666666667%;max-width:41.6666666667%}.el-col-sm-10.is-guttered{display:block}.el-col-sm-offset-10{margin-left:41.6666666667%}.el-col-sm-pull-10{position:relative;right:41.6666666667%}.el-col-sm-push-10{left:41.6666666667%;position:relative}.el-col-sm-11{display:block;flex:0 0 45.8333333333%;max-width:45.8333333333%}.el-col-sm-11.is-guttered{display:block}.el-col-sm-offset-11{margin-left:45.8333333333%}.el-col-sm-pull-11{position:relative;right:45.8333333333%}.el-col-sm-push-11{left:45.8333333333%;position:relative}.el-col-sm-12{display:block;flex:0 0 50%;max-width:50%}.el-col-sm-12.is-guttered{display:block}.el-col-sm-offset-12{margin-left:50%}.el-col-sm-pull-12{position:relative;right:50%}.el-col-sm-push-12{left:50%;position:relative}.el-col-sm-13{display:block;flex:0 0 54.1666666667%;max-width:54.1666666667%}.el-col-sm-13.is-guttered{display:block}.el-col-sm-offset-13{margin-left:54.1666666667%}.el-col-sm-pull-13{position:relative;right:54.1666666667%}.el-col-sm-push-13{left:54.1666666667%;position:relative}.el-col-sm-14{display:block;flex:0 0 58.3333333333%;max-width:58.3333333333%}.el-col-sm-14.is-guttered{display:block}.el-col-sm-offset-14{margin-left:58.3333333333%}.el-col-sm-pull-14{position:relative;right:58.3333333333%}.el-col-sm-push-14{left:58.3333333333%;position:relative}.el-col-sm-15{display:block;flex:0 0 62.5%;max-width:62.5%}.el-col-sm-15.is-guttered{display:block}.el-col-sm-offset-15{margin-left:62.5%}.el-col-sm-pull-15{position:relative;right:62.5%}.el-col-sm-push-15{left:62.5%;position:relative}.el-col-sm-16{display:block;flex:0 0 66.6666666667%;max-width:66.6666666667%}.el-col-sm-16.is-guttered{display:block}.el-col-sm-offset-16{margin-left:66.6666666667%}.el-col-sm-pull-16{position:relative;right:66.6666666667%}.el-col-sm-push-16{left:66.6666666667%;position:relative}.el-col-sm-17{display:block;flex:0 0 70.8333333333%;max-width:70.8333333333%}.el-col-sm-17.is-guttered{display:block}.el-col-sm-offset-17{margin-left:70.8333333333%}.el-col-sm-pull-17{position:relative;right:70.8333333333%}.el-col-sm-push-17{left:70.8333333333%;position:relative}.el-col-sm-18{display:block;flex:0 0 75%;max-width:75%}.el-col-sm-18.is-guttered{display:block}.el-col-sm-offset-18{margin-left:75%}.el-col-sm-pull-18{position:relative;right:75%}.el-col-sm-push-18{left:75%;position:relative}.el-col-sm-19{display:block;flex:0 0 79.1666666667%;max-width:79.1666666667%}.el-col-sm-19.is-guttered{display:block}.el-col-sm-offset-19{margin-left:79.1666666667%}.el-col-sm-pull-19{position:relative;right:79.1666666667%}.el-col-sm-push-19{left:79.1666666667%;position:relative}.el-col-sm-20{display:block;flex:0 0 83.3333333333%;max-width:83.3333333333%}.el-col-sm-20.is-guttered{display:block}.el-col-sm-offset-20{margin-left:83.3333333333%}.el-col-sm-pull-20{position:relative;right:83.3333333333%}.el-col-sm-push-20{left:83.3333333333%;position:relative}.el-col-sm-21{display:block;flex:0 0 87.5%;max-width:87.5%}.el-col-sm-21.is-guttered{display:block}.el-col-sm-offset-21{margin-left:87.5%}.el-col-sm-pull-21{position:relative;right:87.5%}.el-col-sm-push-21{left:87.5%;position:relative}.el-col-sm-22{display:block;flex:0 0 91.6666666667%;max-width:91.6666666667%}.el-col-sm-22.is-guttered{display:block}.el-col-sm-offset-22{margin-left:91.6666666667%}.el-col-sm-pull-22{position:relative;right:91.6666666667%}.el-col-sm-push-22{left:91.6666666667%;position:relative}.el-col-sm-23{display:block;flex:0 0 95.8333333333%;max-width:95.8333333333%}.el-col-sm-23.is-guttered{display:block}.el-col-sm-offset-23{margin-left:95.8333333333%}.el-col-sm-pull-23{position:relative;right:95.8333333333%}.el-col-sm-push-23{left:95.8333333333%;position:relative}.el-col-sm-24{display:block;flex:0 0 100%;max-width:100%}.el-col-sm-24.is-guttered{display:block}.el-col-sm-offset-24{margin-left:100%}.el-col-sm-pull-24{position:relative;right:100%}.el-col-sm-push-24{left:100%;position:relative}}@media only screen and (min-width:992px){.el-col-md-0{display:none;flex:0 0 0%;max-width:0}.el-col-md-0.is-guttered{display:none}.el-col-md-offset-0{margin-left:0}.el-col-md-pull-0{position:relative;right:0}.el-col-md-push-0{left:0;position:relative}.el-col-md-1{flex:0 0 4.1666666667%;max-width:4.1666666667%}.el-col-md-1,.el-col-md-1.is-guttered{display:block}.el-col-md-offset-1{margin-left:4.1666666667%}.el-col-md-pull-1{position:relative;right:4.1666666667%}.el-col-md-push-1{left:4.1666666667%;position:relative}.el-col-md-2{flex:0 0 8.3333333333%;max-width:8.3333333333%}.el-col-md-2,.el-col-md-2.is-guttered{display:block}.el-col-md-offset-2{margin-left:8.3333333333%}.el-col-md-pull-2{position:relative;right:8.3333333333%}.el-col-md-push-2{left:8.3333333333%;position:relative}.el-col-md-3{flex:0 0 12.5%;max-width:12.5%}.el-col-md-3,.el-col-md-3.is-guttered{display:block}.el-col-md-offset-3{margin-left:12.5%}.el-col-md-pull-3{position:relative;right:12.5%}.el-col-md-push-3{left:12.5%;position:relative}.el-col-md-4{flex:0 0 16.6666666667%;max-width:16.6666666667%}.el-col-md-4,.el-col-md-4.is-guttered{display:block}.el-col-md-offset-4{margin-left:16.6666666667%}.el-col-md-pull-4{position:relative;right:16.6666666667%}.el-col-md-push-4{left:16.6666666667%;position:relative}.el-col-md-5{flex:0 0 20.8333333333%;max-width:20.8333333333%}.el-col-md-5,.el-col-md-5.is-guttered{display:block}.el-col-md-offset-5{margin-left:20.8333333333%}.el-col-md-pull-5{position:relative;right:20.8333333333%}.el-col-md-push-5{left:20.8333333333%;position:relative}.el-col-md-6{flex:0 0 25%;max-width:25%}.el-col-md-6,.el-col-md-6.is-guttered{display:block}.el-col-md-offset-6{margin-left:25%}.el-col-md-pull-6{position:relative;right:25%}.el-col-md-push-6{left:25%;position:relative}.el-col-md-7{flex:0 0 29.1666666667%;max-width:29.1666666667%}.el-col-md-7,.el-col-md-7.is-guttered{display:block}.el-col-md-offset-7{margin-left:29.1666666667%}.el-col-md-pull-7{position:relative;right:29.1666666667%}.el-col-md-push-7{left:29.1666666667%;position:relative}.el-col-md-8{flex:0 0 33.3333333333%;max-width:33.3333333333%}.el-col-md-8,.el-col-md-8.is-guttered{display:block}.el-col-md-offset-8{margin-left:33.3333333333%}.el-col-md-pull-8{position:relative;right:33.3333333333%}.el-col-md-push-8{left:33.3333333333%;position:relative}.el-col-md-9{flex:0 0 37.5%;max-width:37.5%}.el-col-md-9,.el-col-md-9.is-guttered{display:block}.el-col-md-offset-9{margin-left:37.5%}.el-col-md-pull-9{position:relative;right:37.5%}.el-col-md-push-9{left:37.5%;position:relative}.el-col-md-10{display:block;flex:0 0 41.6666666667%;max-width:41.6666666667%}.el-col-md-10.is-guttered{display:block}.el-col-md-offset-10{margin-left:41.6666666667%}.el-col-md-pull-10{position:relative;right:41.6666666667%}.el-col-md-push-10{left:41.6666666667%;position:relative}.el-col-md-11{display:block;flex:0 0 45.8333333333%;max-width:45.8333333333%}.el-col-md-11.is-guttered{display:block}.el-col-md-offset-11{margin-left:45.8333333333%}.el-col-md-pull-11{position:relative;right:45.8333333333%}.el-col-md-push-11{left:45.8333333333%;position:relative}.el-col-md-12{display:block;flex:0 0 50%;max-width:50%}.el-col-md-12.is-guttered{display:block}.el-col-md-offset-12{margin-left:50%}.el-col-md-pull-12{position:relative;right:50%}.el-col-md-push-12{left:50%;position:relative}.el-col-md-13{display:block;flex:0 0 54.1666666667%;max-width:54.1666666667%}.el-col-md-13.is-guttered{display:block}.el-col-md-offset-13{margin-left:54.1666666667%}.el-col-md-pull-13{position:relative;right:54.1666666667%}.el-col-md-push-13{left:54.1666666667%;position:relative}.el-col-md-14{display:block;flex:0 0 58.3333333333%;max-width:58.3333333333%}.el-col-md-14.is-guttered{display:block}.el-col-md-offset-14{margin-left:58.3333333333%}.el-col-md-pull-14{position:relative;right:58.3333333333%}.el-col-md-push-14{left:58.3333333333%;position:relative}.el-col-md-15{display:block;flex:0 0 62.5%;max-width:62.5%}.el-col-md-15.is-guttered{display:block}.el-col-md-offset-15{margin-left:62.5%}.el-col-md-pull-15{position:relative;right:62.5%}.el-col-md-push-15{left:62.5%;position:relative}.el-col-md-16{display:block;flex:0 0 66.6666666667%;max-width:66.6666666667%}.el-col-md-16.is-guttered{display:block}.el-col-md-offset-16{margin-left:66.6666666667%}.el-col-md-pull-16{position:relative;right:66.6666666667%}.el-col-md-push-16{left:66.6666666667%;position:relative}.el-col-md-17{display:block;flex:0 0 70.8333333333%;max-width:70.8333333333%}.el-col-md-17.is-guttered{display:block}.el-col-md-offset-17{margin-left:70.8333333333%}.el-col-md-pull-17{position:relative;right:70.8333333333%}.el-col-md-push-17{left:70.8333333333%;position:relative}.el-col-md-18{display:block;flex:0 0 75%;max-width:75%}.el-col-md-18.is-guttered{display:block}.el-col-md-offset-18{margin-left:75%}.el-col-md-pull-18{position:relative;right:75%}.el-col-md-push-18{left:75%;position:relative}.el-col-md-19{display:block;flex:0 0 79.1666666667%;max-width:79.1666666667%}.el-col-md-19.is-guttered{display:block}.el-col-md-offset-19{margin-left:79.1666666667%}.el-col-md-pull-19{position:relative;right:79.1666666667%}.el-col-md-push-19{left:79.1666666667%;position:relative}.el-col-md-20{display:block;flex:0 0 83.3333333333%;max-width:83.3333333333%}.el-col-md-20.is-guttered{display:block}.el-col-md-offset-20{margin-left:83.3333333333%}.el-col-md-pull-20{position:relative;right:83.3333333333%}.el-col-md-push-20{left:83.3333333333%;position:relative}.el-col-md-21{display:block;flex:0 0 87.5%;max-width:87.5%}.el-col-md-21.is-guttered{display:block}.el-col-md-offset-21{margin-left:87.5%}.el-col-md-pull-21{position:relative;right:87.5%}.el-col-md-push-21{left:87.5%;position:relative}.el-col-md-22{display:block;flex:0 0 91.6666666667%;max-width:91.6666666667%}.el-col-md-22.is-guttered{display:block}.el-col-md-offset-22{margin-left:91.6666666667%}.el-col-md-pull-22{position:relative;right:91.6666666667%}.el-col-md-push-22{left:91.6666666667%;position:relative}.el-col-md-23{display:block;flex:0 0 95.8333333333%;max-width:95.8333333333%}.el-col-md-23.is-guttered{display:block}.el-col-md-offset-23{margin-left:95.8333333333%}.el-col-md-pull-23{position:relative;right:95.8333333333%}.el-col-md-push-23{left:95.8333333333%;position:relative}.el-col-md-24{display:block;flex:0 0 100%;max-width:100%}.el-col-md-24.is-guttered{display:block}.el-col-md-offset-24{margin-left:100%}.el-col-md-pull-24{position:relative;right:100%}.el-col-md-push-24{left:100%;position:relative}}@media only screen and (min-width:1200px){.el-col-lg-0{display:none;flex:0 0 0%;max-width:0}.el-col-lg-0.is-guttered{display:none}.el-col-lg-offset-0{margin-left:0}.el-col-lg-pull-0{position:relative;right:0}.el-col-lg-push-0{left:0;position:relative}.el-col-lg-1{flex:0 0 4.1666666667%;max-width:4.1666666667%}.el-col-lg-1,.el-col-lg-1.is-guttered{display:block}.el-col-lg-offset-1{margin-left:4.1666666667%}.el-col-lg-pull-1{position:relative;right:4.1666666667%}.el-col-lg-push-1{left:4.1666666667%;position:relative}.el-col-lg-2{flex:0 0 8.3333333333%;max-width:8.3333333333%}.el-col-lg-2,.el-col-lg-2.is-guttered{display:block}.el-col-lg-offset-2{margin-left:8.3333333333%}.el-col-lg-pull-2{position:relative;right:8.3333333333%}.el-col-lg-push-2{left:8.3333333333%;position:relative}.el-col-lg-3{flex:0 0 12.5%;max-width:12.5%}.el-col-lg-3,.el-col-lg-3.is-guttered{display:block}.el-col-lg-offset-3{margin-left:12.5%}.el-col-lg-pull-3{position:relative;right:12.5%}.el-col-lg-push-3{left:12.5%;position:relative}.el-col-lg-4{flex:0 0 16.6666666667%;max-width:16.6666666667%}.el-col-lg-4,.el-col-lg-4.is-guttered{display:block}.el-col-lg-offset-4{margin-left:16.6666666667%}.el-col-lg-pull-4{position:relative;right:16.6666666667%}.el-col-lg-push-4{left:16.6666666667%;position:relative}.el-col-lg-5{flex:0 0 20.8333333333%;max-width:20.8333333333%}.el-col-lg-5,.el-col-lg-5.is-guttered{display:block}.el-col-lg-offset-5{margin-left:20.8333333333%}.el-col-lg-pull-5{position:relative;right:20.8333333333%}.el-col-lg-push-5{left:20.8333333333%;position:relative}.el-col-lg-6{flex:0 0 25%;max-width:25%}.el-col-lg-6,.el-col-lg-6.is-guttered{display:block}.el-col-lg-offset-6{margin-left:25%}.el-col-lg-pull-6{position:relative;right:25%}.el-col-lg-push-6{left:25%;position:relative}.el-col-lg-7{flex:0 0 29.1666666667%;max-width:29.1666666667%}.el-col-lg-7,.el-col-lg-7.is-guttered{display:block}.el-col-lg-offset-7{margin-left:29.1666666667%}.el-col-lg-pull-7{position:relative;right:29.1666666667%}.el-col-lg-push-7{left:29.1666666667%;position:relative}.el-col-lg-8{flex:0 0 33.3333333333%;max-width:33.3333333333%}.el-col-lg-8,.el-col-lg-8.is-guttered{display:block}.el-col-lg-offset-8{margin-left:33.3333333333%}.el-col-lg-pull-8{position:relative;right:33.3333333333%}.el-col-lg-push-8{left:33.3333333333%;position:relative}.el-col-lg-9{flex:0 0 37.5%;max-width:37.5%}.el-col-lg-9,.el-col-lg-9.is-guttered{display:block}.el-col-lg-offset-9{margin-left:37.5%}.el-col-lg-pull-9{position:relative;right:37.5%}.el-col-lg-push-9{left:37.5%;position:relative}.el-col-lg-10{display:block;flex:0 0 41.6666666667%;max-width:41.6666666667%}.el-col-lg-10.is-guttered{display:block}.el-col-lg-offset-10{margin-left:41.6666666667%}.el-col-lg-pull-10{position:relative;right:41.6666666667%}.el-col-lg-push-10{left:41.6666666667%;position:relative}.el-col-lg-11{display:block;flex:0 0 45.8333333333%;max-width:45.8333333333%}.el-col-lg-11.is-guttered{display:block}.el-col-lg-offset-11{margin-left:45.8333333333%}.el-col-lg-pull-11{position:relative;right:45.8333333333%}.el-col-lg-push-11{left:45.8333333333%;position:relative}.el-col-lg-12{display:block;flex:0 0 50%;max-width:50%}.el-col-lg-12.is-guttered{display:block}.el-col-lg-offset-12{margin-left:50%}.el-col-lg-pull-12{position:relative;right:50%}.el-col-lg-push-12{left:50%;position:relative}.el-col-lg-13{display:block;flex:0 0 54.1666666667%;max-width:54.1666666667%}.el-col-lg-13.is-guttered{display:block}.el-col-lg-offset-13{margin-left:54.1666666667%}.el-col-lg-pull-13{position:relative;right:54.1666666667%}.el-col-lg-push-13{left:54.1666666667%;position:relative}.el-col-lg-14{display:block;flex:0 0 58.3333333333%;max-width:58.3333333333%}.el-col-lg-14.is-guttered{display:block}.el-col-lg-offset-14{margin-left:58.3333333333%}.el-col-lg-pull-14{position:relative;right:58.3333333333%}.el-col-lg-push-14{left:58.3333333333%;position:relative}.el-col-lg-15{display:block;flex:0 0 62.5%;max-width:62.5%}.el-col-lg-15.is-guttered{display:block}.el-col-lg-offset-15{margin-left:62.5%}.el-col-lg-pull-15{position:relative;right:62.5%}.el-col-lg-push-15{left:62.5%;position:relative}.el-col-lg-16{display:block;flex:0 0 66.6666666667%;max-width:66.6666666667%}.el-col-lg-16.is-guttered{display:block}.el-col-lg-offset-16{margin-left:66.6666666667%}.el-col-lg-pull-16{position:relative;right:66.6666666667%}.el-col-lg-push-16{left:66.6666666667%;position:relative}.el-col-lg-17{display:block;flex:0 0 70.8333333333%;max-width:70.8333333333%}.el-col-lg-17.is-guttered{display:block}.el-col-lg-offset-17{margin-left:70.8333333333%}.el-col-lg-pull-17{position:relative;right:70.8333333333%}.el-col-lg-push-17{left:70.8333333333%;position:relative}.el-col-lg-18{display:block;flex:0 0 75%;max-width:75%}.el-col-lg-18.is-guttered{display:block}.el-col-lg-offset-18{margin-left:75%}.el-col-lg-pull-18{position:relative;right:75%}.el-col-lg-push-18{left:75%;position:relative}.el-col-lg-19{display:block;flex:0 0 79.1666666667%;max-width:79.1666666667%}.el-col-lg-19.is-guttered{display:block}.el-col-lg-offset-19{margin-left:79.1666666667%}.el-col-lg-pull-19{position:relative;right:79.1666666667%}.el-col-lg-push-19{left:79.1666666667%;position:relative}.el-col-lg-20{display:block;flex:0 0 83.3333333333%;max-width:83.3333333333%}.el-col-lg-20.is-guttered{display:block}.el-col-lg-offset-20{margin-left:83.3333333333%}.el-col-lg-pull-20{position:relative;right:83.3333333333%}.el-col-lg-push-20{left:83.3333333333%;position:relative}.el-col-lg-21{display:block;flex:0 0 87.5%;max-width:87.5%}.el-col-lg-21.is-guttered{display:block}.el-col-lg-offset-21{margin-left:87.5%}.el-col-lg-pull-21{position:relative;right:87.5%}.el-col-lg-push-21{left:87.5%;position:relative}.el-col-lg-22{display:block;flex:0 0 91.6666666667%;max-width:91.6666666667%}.el-col-lg-22.is-guttered{display:block}.el-col-lg-offset-22{margin-left:91.6666666667%}.el-col-lg-pull-22{position:relative;right:91.6666666667%}.el-col-lg-push-22{left:91.6666666667%;position:relative}.el-col-lg-23{display:block;flex:0 0 95.8333333333%;max-width:95.8333333333%}.el-col-lg-23.is-guttered{display:block}.el-col-lg-offset-23{margin-left:95.8333333333%}.el-col-lg-pull-23{position:relative;right:95.8333333333%}.el-col-lg-push-23{left:95.8333333333%;position:relative}.el-col-lg-24{display:block;flex:0 0 100%;max-width:100%}.el-col-lg-24.is-guttered{display:block}.el-col-lg-offset-24{margin-left:100%}.el-col-lg-pull-24{position:relative;right:100%}.el-col-lg-push-24{left:100%;position:relative}}@media only screen and (min-width:1920px){.el-col-xl-0{display:none;flex:0 0 0%;max-width:0}.el-col-xl-0.is-guttered{display:none}.el-col-xl-offset-0{margin-left:0}.el-col-xl-pull-0{position:relative;right:0}.el-col-xl-push-0{left:0;position:relative}.el-col-xl-1{flex:0 0 4.1666666667%;max-width:4.1666666667%}.el-col-xl-1,.el-col-xl-1.is-guttered{display:block}.el-col-xl-offset-1{margin-left:4.1666666667%}.el-col-xl-pull-1{position:relative;right:4.1666666667%}.el-col-xl-push-1{left:4.1666666667%;position:relative}.el-col-xl-2{flex:0 0 8.3333333333%;max-width:8.3333333333%}.el-col-xl-2,.el-col-xl-2.is-guttered{display:block}.el-col-xl-offset-2{margin-left:8.3333333333%}.el-col-xl-pull-2{position:relative;right:8.3333333333%}.el-col-xl-push-2{left:8.3333333333%;position:relative}.el-col-xl-3{flex:0 0 12.5%;max-width:12.5%}.el-col-xl-3,.el-col-xl-3.is-guttered{display:block}.el-col-xl-offset-3{margin-left:12.5%}.el-col-xl-pull-3{position:relative;right:12.5%}.el-col-xl-push-3{left:12.5%;position:relative}.el-col-xl-4{flex:0 0 16.6666666667%;max-width:16.6666666667%}.el-col-xl-4,.el-col-xl-4.is-guttered{display:block}.el-col-xl-offset-4{margin-left:16.6666666667%}.el-col-xl-pull-4{position:relative;right:16.6666666667%}.el-col-xl-push-4{left:16.6666666667%;position:relative}.el-col-xl-5{flex:0 0 20.8333333333%;max-width:20.8333333333%}.el-col-xl-5,.el-col-xl-5.is-guttered{display:block}.el-col-xl-offset-5{margin-left:20.8333333333%}.el-col-xl-pull-5{position:relative;right:20.8333333333%}.el-col-xl-push-5{left:20.8333333333%;position:relative}.el-col-xl-6{flex:0 0 25%;max-width:25%}.el-col-xl-6,.el-col-xl-6.is-guttered{display:block}.el-col-xl-offset-6{margin-left:25%}.el-col-xl-pull-6{position:relative;right:25%}.el-col-xl-push-6{left:25%;position:relative}.el-col-xl-7{flex:0 0 29.1666666667%;max-width:29.1666666667%}.el-col-xl-7,.el-col-xl-7.is-guttered{display:block}.el-col-xl-offset-7{margin-left:29.1666666667%}.el-col-xl-pull-7{position:relative;right:29.1666666667%}.el-col-xl-push-7{left:29.1666666667%;position:relative}.el-col-xl-8{flex:0 0 33.3333333333%;max-width:33.3333333333%}.el-col-xl-8,.el-col-xl-8.is-guttered{display:block}.el-col-xl-offset-8{margin-left:33.3333333333%}.el-col-xl-pull-8{position:relative;right:33.3333333333%}.el-col-xl-push-8{left:33.3333333333%;position:relative}.el-col-xl-9{flex:0 0 37.5%;max-width:37.5%}.el-col-xl-9,.el-col-xl-9.is-guttered{display:block}.el-col-xl-offset-9{margin-left:37.5%}.el-col-xl-pull-9{position:relative;right:37.5%}.el-col-xl-push-9{left:37.5%;position:relative}.el-col-xl-10{display:block;flex:0 0 41.6666666667%;max-width:41.6666666667%}.el-col-xl-10.is-guttered{display:block}.el-col-xl-offset-10{margin-left:41.6666666667%}.el-col-xl-pull-10{position:relative;right:41.6666666667%}.el-col-xl-push-10{left:41.6666666667%;position:relative}.el-col-xl-11{display:block;flex:0 0 45.8333333333%;max-width:45.8333333333%}.el-col-xl-11.is-guttered{display:block}.el-col-xl-offset-11{margin-left:45.8333333333%}.el-col-xl-pull-11{position:relative;right:45.8333333333%}.el-col-xl-push-11{left:45.8333333333%;position:relative}.el-col-xl-12{display:block;flex:0 0 50%;max-width:50%}.el-col-xl-12.is-guttered{display:block}.el-col-xl-offset-12{margin-left:50%}.el-col-xl-pull-12{position:relative;right:50%}.el-col-xl-push-12{left:50%;position:relative}.el-col-xl-13{display:block;flex:0 0 54.1666666667%;max-width:54.1666666667%}.el-col-xl-13.is-guttered{display:block}.el-col-xl-offset-13{margin-left:54.1666666667%}.el-col-xl-pull-13{position:relative;right:54.1666666667%}.el-col-xl-push-13{left:54.1666666667%;position:relative}.el-col-xl-14{display:block;flex:0 0 58.3333333333%;max-width:58.3333333333%}.el-col-xl-14.is-guttered{display:block}.el-col-xl-offset-14{margin-left:58.3333333333%}.el-col-xl-pull-14{position:relative;right:58.3333333333%}.el-col-xl-push-14{left:58.3333333333%;position:relative}.el-col-xl-15{display:block;flex:0 0 62.5%;max-width:62.5%}.el-col-xl-15.is-guttered{display:block}.el-col-xl-offset-15{margin-left:62.5%}.el-col-xl-pull-15{position:relative;right:62.5%}.el-col-xl-push-15{left:62.5%;position:relative}.el-col-xl-16{display:block;flex:0 0 66.6666666667%;max-width:66.6666666667%}.el-col-xl-16.is-guttered{display:block}.el-col-xl-offset-16{margin-left:66.6666666667%}.el-col-xl-pull-16{position:relative;right:66.6666666667%}.el-col-xl-push-16{left:66.6666666667%;position:relative}.el-col-xl-17{display:block;flex:0 0 70.8333333333%;max-width:70.8333333333%}.el-col-xl-17.is-guttered{display:block}.el-col-xl-offset-17{margin-left:70.8333333333%}.el-col-xl-pull-17{position:relative;right:70.8333333333%}.el-col-xl-push-17{left:70.8333333333%;position:relative}.el-col-xl-18{display:block;flex:0 0 75%;max-width:75%}.el-col-xl-18.is-guttered{display:block}.el-col-xl-offset-18{margin-left:75%}.el-col-xl-pull-18{position:relative;right:75%}.el-col-xl-push-18{left:75%;position:relative}.el-col-xl-19{display:block;flex:0 0 79.1666666667%;max-width:79.1666666667%}.el-col-xl-19.is-guttered{display:block}.el-col-xl-offset-19{margin-left:79.1666666667%}.el-col-xl-pull-19{position:relative;right:79.1666666667%}.el-col-xl-push-19{left:79.1666666667%;position:relative}.el-col-xl-20{display:block;flex:0 0 83.3333333333%;max-width:83.3333333333%}.el-col-xl-20.is-guttered{display:block}.el-col-xl-offset-20{margin-left:83.3333333333%}.el-col-xl-pull-20{position:relative;right:83.3333333333%}.el-col-xl-push-20{left:83.3333333333%;position:relative}.el-col-xl-21{display:block;flex:0 0 87.5%;max-width:87.5%}.el-col-xl-21.is-guttered{display:block}.el-col-xl-offset-21{margin-left:87.5%}.el-col-xl-pull-21{position:relative;right:87.5%}.el-col-xl-push-21{left:87.5%;position:relative}.el-col-xl-22{display:block;flex:0 0 91.6666666667%;max-width:91.6666666667%}.el-col-xl-22.is-guttered{display:block}.el-col-xl-offset-22{margin-left:91.6666666667%}.el-col-xl-pull-22{position:relative;right:91.6666666667%}.el-col-xl-push-22{left:91.6666666667%;position:relative}.el-col-xl-23{display:block;flex:0 0 95.8333333333%;max-width:95.8333333333%}.el-col-xl-23.is-guttered{display:block}.el-col-xl-offset-23{margin-left:95.8333333333%}.el-col-xl-pull-23{position:relative;right:95.8333333333%}.el-col-xl-push-23{left:95.8333333333%;position:relative}.el-col-xl-24{display:block;flex:0 0 100%;max-width:100%}.el-col-xl-24.is-guttered{display:block}.el-col-xl-offset-24{margin-left:100%}.el-col-xl-pull-24{position:relative;right:100%}.el-col-xl-push-24{left:100%;position:relative}}.el-collapse{--el-collapse-border-color:var(--el-border-color-lighter);--el-collapse-header-height:48px;--el-collapse-header-bg-color:var(--el-fill-color-blank);--el-collapse-header-text-color:var(--el-text-color-primary);--el-collapse-header-font-size:13px;--el-collapse-content-bg-color:var(--el-fill-color-blank);--el-collapse-content-font-size:13px;--el-collapse-content-text-color:var(--el-text-color-primary);border-bottom:1px solid var(--el-collapse-border-color);border-top:1px solid var(--el-collapse-border-color)}.el-collapse-item.is-disabled .el-collapse-item__header{color:var(--el-text-color-disabled);cursor:not-allowed}.el-collapse-item__header{align-items:center;background-color:var(--el-collapse-header-bg-color);border:none;border-bottom:1px solid var(--el-collapse-border-color);color:var(--el-collapse-header-text-color);cursor:pointer;display:flex;font-size:var(--el-collapse-header-font-size);font-weight:500;height:var(--el-collapse-header-height);line-height:var(--el-collapse-header-height);outline:none;padding:0;transition:border-bottom-color var(--el-transition-duration);width:100%}.el-collapse-item__arrow{font-weight:300;transition:transform var(--el-transition-duration)}.el-collapse-item__arrow.is-active{transform:rotate(90deg)}.el-collapse-item__title{flex:auto;text-align:left}.el-collapse-item__header.focusing:focus:not(:hover){color:var(--el-color-primary)}.el-collapse-item__header.is-active{border-bottom-color:transparent}.el-collapse-item__wrap{background-color:var(--el-collapse-content-bg-color);border-bottom:1px solid var(--el-collapse-border-color);box-sizing:border-box;overflow:hidden;will-change:height}.el-collapse-item__content{color:var(--el-collapse-content-text-color);font-size:var(--el-collapse-content-font-size);line-height:1.7692307692;padding-bottom:25px}.el-collapse-item:last-child{margin-bottom:-1px}.el-collapse-icon-position-left .el-collapse-item__header{gap:8px}.el-collapse-icon-position-left .el-collapse-item__title{order:1}.el-collapse-icon-position-right .el-collapse-item__header{padding-right:8px}.el-color-predefine{display:flex;font-size:12px;margin-top:8px;width:280px}.el-color-predefine__colors{display:flex;flex:1;flex-wrap:wrap}.el-color-predefine__color-selector{border-radius:4px;cursor:pointer;height:20px;margin:0 0 8px 8px;width:20px}.el-color-predefine__color-selector:nth-child(10n+1){margin-left:0}.el-color-predefine__color-selector.selected{box-shadow:0 0 3px 2px var(--el-color-primary)}.el-color-predefine__color-selector>div{border-radius:3px;display:flex;height:100%}.el-color-predefine__color-selector.is-alpha{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.el-color-hue-slider{background-color:red;box-sizing:border-box;float:right;height:12px;padding:0 2px;position:relative;width:280px}.el-color-hue-slider__bar{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red);height:100%;position:relative}.el-color-hue-slider__thumb{background:#fff;border:1px solid var(--el-border-color-lighter);border-radius:1px;box-shadow:0 0 2px #0009;box-sizing:border-box;cursor:pointer;height:100%;left:0;position:absolute;top:0;width:4px;z-index:1}.el-color-hue-slider__thumb:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:1px}.el-color-hue-slider.is-vertical{height:180px;padding:2px 0;width:12px}.el-color-hue-slider.is-vertical .el-color-hue-slider__bar{background:linear-gradient(180deg,red 0,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.el-color-hue-slider.is-vertical .el-color-hue-slider__thumb{height:4px;left:0;top:0;width:100%}.el-color-svpanel{height:180px;position:relative;width:280px}.el-color-svpanel__black,.el-color-svpanel__white{bottom:0;left:0;position:absolute;right:0;top:0}.el-color-svpanel__white{background:linear-gradient(90deg,#fff,#fff0)}.el-color-svpanel__black{background:linear-gradient(0deg,#000,#0000)}.el-color-svpanel__cursor{position:absolute}.el-color-svpanel__cursor>div{border-radius:50%;box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px #0000004d,0 0 1px 2px #0006;cursor:head;height:4px;transform:translate(-2px,-2px);width:4px}.el-color-alpha-slider{background-image:linear-gradient(45deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(45deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%);background-position:0 0,6px 0,6px -6px,0 6px;background-size:12px 12px;box-sizing:border-box;height:12px;position:relative;width:280px}.el-color-alpha-slider__bar{background:linear-gradient(to right,rgba(255,255,255,0) 0,var(--el-bg-color) 100%);height:100%;position:relative}.el-color-alpha-slider__thumb{background:#fff;border:1px solid var(--el-border-color-lighter);border-radius:1px;box-shadow:0 0 2px #0009;box-sizing:border-box;cursor:pointer;height:100%;left:0;position:absolute;top:0;width:4px;z-index:1}.el-color-alpha-slider__thumb:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:1px}.el-color-alpha-slider.is-vertical{height:180px;width:20px}.el-color-alpha-slider.is-vertical .el-color-alpha-slider__bar{background:linear-gradient(180deg,#fff0 0,#fff)}.el-color-alpha-slider.is-vertical .el-color-alpha-slider__thumb{height:4px;left:0;top:0;width:100%}.el-color-dropdown{width:300px}.el-color-dropdown__main-wrapper{margin-bottom:6px}.el-color-dropdown__main-wrapper:after{clear:both;content:"";display:table}.el-color-dropdown__btns{margin-top:12px;text-align:right}.el-color-dropdown__value{color:#000;float:left;font-size:12px;line-height:26px;width:160px}.el-color-picker{display:inline-block;height:32px;line-height:normal;outline:none;position:relative;width:32px}.el-color-picker:hover:not(.is-disabled,.is-focused) .el-color-picker__trigger{border-color:var(--el-border-color-hover)}.el-color-picker:focus-visible:not(.is-disabled) .el-color-picker__trigger{outline:2px solid var(--el-color-primary);outline-offset:1px}.el-color-picker.is-focused .el-color-picker__trigger{border-color:var(--el-color-primary)}.el-color-picker.is-disabled .el-color-picker__trigger{background-color:var(--el-fill-color-light);cursor:not-allowed}.el-color-picker.is-disabled .el-color-picker__color{opacity:.3}.el-color-picker--large{height:40px;width:40px}.el-color-picker--small{height:24px;width:24px}.el-color-picker--small .el-color-picker__empty,.el-color-picker--small .el-color-picker__icon{transform:scale(.8)}.el-color-picker__trigger{align-items:center;border:1px solid var(--el-border-color);border-radius:4px;cursor:pointer;display:inline-flex;font-size:0;justify-content:center;padding:4px}.el-color-picker__color,.el-color-picker__trigger{box-sizing:border-box;height:100%;position:relative;width:100%}.el-color-picker__color{border:1px solid var(--el-text-color-secondary);border-radius:var(--el-border-radius-small);display:block;text-align:center}.el-color-picker__color.is-alpha{background-image:linear-gradient(45deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(45deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%);background-position:0 0,6px 0,6px -6px,0 6px;background-size:12px 12px}.el-color-picker__color-inner{align-items:center;display:inline-flex;height:100%;justify-content:center;width:100%}.el-color-picker .el-color-picker__empty{color:var(--el-text-color-secondary);font-size:12px}.el-color-picker .el-color-picker__icon{align-items:center;color:#fff;display:inline-flex;font-size:12px;justify-content:center}.el-color-picker__panel{background-color:#fff;border-radius:var(--el-border-radius-base);box-shadow:var(--el-box-shadow-light);box-sizing:content-box;padding:6px;position:absolute;z-index:10}.el-color-picker__panel.el-popper{border:1px solid var(--el-border-color-lighter)}.el-color-picker,.el-color-picker__panel{--el-color-picker-alpha-bg-a:#ccc;--el-color-picker-alpha-bg-b:transparent}.dark .el-color-picker,.dark .el-color-picker__panel{--el-color-picker-alpha-bg-a:#333333}.el-container{box-sizing:border-box;display:flex;flex:1;flex-basis:auto;flex-direction:row;min-width:0}.el-container.is-vertical{flex-direction:column}.el-descriptions{--el-descriptions-table-border:1px solid var(--el-border-color-lighter);--el-descriptions-item-bordered-label-background:var(--el-fill-color-light);box-sizing:border-box;color:var(--el-text-color-primary);font-size:var(--el-font-size-base)}.el-descriptions__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.el-descriptions__title{color:var(--el-text-color-primary);font-size:16px;font-weight:700}.el-descriptions__body{background-color:var(--el-fill-color-blank)}.el-descriptions__body .el-descriptions__table{border-collapse:collapse;width:100%}.el-descriptions__body .el-descriptions__table .el-descriptions__cell{box-sizing:border-box;font-size:14px;line-height:23px;text-align:left}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-left{text-align:left}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-center{text-align:center}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-right{text-align:right}.el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{border:var(--el-descriptions-table-border);padding:8px 11px}.el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:12px}.el-descriptions--large{font-size:14px}.el-descriptions--large .el-descriptions__header{margin-bottom:20px}.el-descriptions--large .el-descriptions__header .el-descriptions__title{font-size:16px}.el-descriptions--large .el-descriptions__body .el-descriptions__table .el-descriptions__cell{font-size:14px}.el-descriptions--large .el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{padding:12px 15px}.el-descriptions--large .el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:16px}.el-descriptions--small{font-size:12px}.el-descriptions--small .el-descriptions__header{margin-bottom:12px}.el-descriptions--small .el-descriptions__header .el-descriptions__title{font-size:14px}.el-descriptions--small .el-descriptions__body .el-descriptions__table .el-descriptions__cell{font-size:12px}.el-descriptions--small .el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{padding:4px 7px}.el-descriptions--small .el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:8px}.el-descriptions__label.el-descriptions__cell.is-bordered-label{background:var(--el-descriptions-item-bordered-label-background);color:var(--el-text-color-regular);font-weight:700}.el-descriptions__label:not(.is-bordered-label){color:var(--el-text-color-primary);margin-right:16px}.el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:6px}.el-descriptions__content.el-descriptions__cell.is-bordered-content{color:var(--el-text-color-primary)}.el-descriptions__content:not(.is-bordered-label){color:var(--el-text-color-regular)}.el-descriptions--large .el-descriptions__label:not(.is-bordered-label){margin-right:16px}.el-descriptions--large .el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:8px}.el-descriptions--small .el-descriptions__label:not(.is-bordered-label){margin-right:12px}.el-descriptions--small .el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:4px}.el-divider{position:relative}.el-divider--horizontal{border-top:1px var(--el-border-color) var(--el-border-style);display:block;height:1px;margin:24px 0;width:100%}.el-divider--vertical{border-left:1px var(--el-border-color) var(--el-border-style);display:inline-block;height:1em;margin:0 8px;position:relative;vertical-align:middle;width:1px}.el-divider__text{background-color:var(--el-bg-color);color:var(--el-text-color-primary);font-size:14px;font-weight:500;padding:0 20px;position:absolute}.el-divider__text.is-left{left:20px;transform:translateY(-50%)}.el-divider__text.is-center{left:50%;transform:translate(-50%) translateY(-50%)}.el-divider__text.is-right{right:20px;transform:translateY(-50%)}.el-drawer{--el-drawer-bg-color:var(--el-dialog-bg-color,var(--el-bg-color));--el-drawer-padding-primary:var(--el-dialog-padding-primary,20px);background-color:var(--el-drawer-bg-color);box-shadow:var(--el-box-shadow-dark);box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden;position:absolute;transition:all var(--el-transition-duration)}.el-drawer .btt,.el-drawer .ltr,.el-drawer .rtl,.el-drawer .ttb{transform:translate(0)}.el-drawer__sr-focus:focus{outline:none!important}.el-drawer__header{align-items:center;color:var(--el-text-color-primary);display:flex;margin-bottom:32px;padding:var(--el-drawer-padding-primary);padding-bottom:0}.el-drawer__header>:first-child{flex:1}.el-drawer__title{flex:1;font-size:16px;line-height:inherit;margin:0}.el-drawer__footer{padding:var(--el-drawer-padding-primary);padding-top:10px;text-align:right}.el-drawer__close-btn{background-color:transparent;border:none;color:inherit;cursor:pointer;display:inline-flex;font-size:var(--el-font-size-extra-large);outline:none}.el-drawer__close-btn:focus i,.el-drawer__close-btn:hover i{color:var(--el-color-primary)}.el-drawer__body{flex:1;overflow:auto;padding:var(--el-drawer-padding-primary)}.el-drawer__body>*{box-sizing:border-box}.el-drawer.ltr,.el-drawer.rtl{bottom:0;height:100%;top:0}.el-drawer.btt,.el-drawer.ttb{left:0;right:0;width:100%}.el-drawer.ltr{left:0}.el-drawer.rtl{right:0}.el-drawer.ttb{top:0}.el-drawer.btt{bottom:0}.el-drawer-fade-enter-active,.el-drawer-fade-leave-active{transition:all var(--el-transition-duration)}.el-drawer-fade-enter-active,.el-drawer-fade-enter-from,.el-drawer-fade-enter-to,.el-drawer-fade-leave-active,.el-drawer-fade-leave-from,.el-drawer-fade-leave-to{overflow:hidden!important}.el-drawer-fade-enter-from,.el-drawer-fade-leave-to{background-color:transparent!important}.el-drawer-fade-enter-from .rtl,.el-drawer-fade-leave-to .rtl{transform:translate(100%)}.el-drawer-fade-enter-from .ltr,.el-drawer-fade-leave-to .ltr{transform:translate(-100%)}.el-drawer-fade-enter-from .ttb,.el-drawer-fade-leave-to .ttb{transform:translateY(-100%)}.el-drawer-fade-enter-from .btt,.el-drawer-fade-leave-to .btt{transform:translateY(100%)}.el-dropdown{--el-dropdown-menu-box-shadow:var(--el-box-shadow-light);--el-dropdown-menuItem-hover-fill:var(--el-color-primary-light-9);--el-dropdown-menuItem-hover-color:var(--el-color-primary);--el-dropdown-menu-index:10;color:var(--el-text-color-regular);display:inline-flex;font-size:var(--el-font-size-base);line-height:1;position:relative;vertical-align:top}.el-dropdown.is-disabled{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-dropdown__popper{--el-dropdown-menu-box-shadow:var(--el-box-shadow-light);--el-dropdown-menuItem-hover-fill:var(--el-color-primary-light-9);--el-dropdown-menuItem-hover-color:var(--el-color-primary);--el-dropdown-menu-index:10}.el-dropdown__popper.el-popper{background:var(--el-bg-color-overlay);box-shadow:var(--el-dropdown-menu-box-shadow)}.el-dropdown__popper.el-popper,.el-dropdown__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-dropdown__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-left-color:transparent;border-top-color:transparent}.el-dropdown__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent;border-right-color:transparent}.el-dropdown__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:transparent;border-left-color:transparent}.el-dropdown__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent;border-top-color:transparent}.el-dropdown__popper .el-dropdown-menu{border:none}.el-dropdown__popper .el-dropdown__popper-selfdefine{outline:none}.el-dropdown__popper .el-scrollbar__bar{z-index:calc(var(--el-dropdown-menu-index) + 1)}.el-dropdown__popper .el-dropdown__list{box-sizing:border-box;list-style:none;margin:0;padding:0}.el-dropdown .el-dropdown__caret-button{align-items:center;border-left:none;display:inline-flex;justify-content:center;padding-left:0;padding-right:0;width:32px}.el-dropdown .el-dropdown__caret-button>span{display:inline-flex}.el-dropdown .el-dropdown__caret-button:before{background:var(--el-overlay-color-lighter);bottom:-1px;content:"";display:block;left:0;position:absolute;top:-1px;width:1px}.el-dropdown .el-dropdown__caret-button.el-button:before{background:var(--el-border-color);opacity:.5}.el-dropdown .el-dropdown__caret-button .el-dropdown__icon{font-size:inherit;padding-left:0}.el-dropdown .el-dropdown-selfdefine{outline:none}.el-dropdown--large .el-dropdown__caret-button{width:40px}.el-dropdown--small .el-dropdown__caret-button{width:24px}.el-dropdown-menu{background-color:var(--el-bg-color-overlay);border:none;border-radius:var(--el-border-radius-base);box-shadow:none;left:0;list-style:none;margin:0;padding:5px 0;position:relative;top:0;z-index:var(--el-dropdown-menu-index)}.el-dropdown-menu__item{align-items:center;color:var(--el-text-color-regular);cursor:pointer;display:flex;font-size:var(--el-font-size-base);line-height:22px;list-style:none;margin:0;outline:none;padding:5px 16px;white-space:nowrap}.el-dropdown-menu__item:not(.is-disabled):focus,.el-dropdown-menu__item:not(.is-disabled):hover{background-color:var(--el-dropdown-menuItem-hover-fill);color:var(--el-dropdown-menuItem-hover-color)}.el-dropdown-menu__item i{margin-right:5px}.el-dropdown-menu__item--divided{border-top:1px solid var(--el-border-color-lighter);margin:6px 0}.el-dropdown-menu__item.is-disabled{color:var(--el-text-color-disabled);cursor:not-allowed}.el-dropdown-menu--large{padding:7px 0}.el-dropdown-menu--large .el-dropdown-menu__item{font-size:14px;line-height:22px;padding:7px 20px}.el-dropdown-menu--large .el-dropdown-menu__item--divided{margin:8px 0}.el-dropdown-menu--small{padding:3px 0}.el-dropdown-menu--small .el-dropdown-menu__item{font-size:12px;line-height:20px;padding:2px 12px}.el-dropdown-menu--small .el-dropdown-menu__item--divided{margin:4px 0}.el-empty{--el-empty-padding:40px 0;--el-empty-image-width:160px;--el-empty-description-margin-top:20px;--el-empty-bottom-margin-top:20px;--el-empty-fill-color-0:var(--el-color-white);--el-empty-fill-color-1:#fcfcfd;--el-empty-fill-color-2:#f8f9fb;--el-empty-fill-color-3:#f7f8fc;--el-empty-fill-color-4:#eeeff3;--el-empty-fill-color-5:#edeef2;--el-empty-fill-color-6:#e9ebef;--el-empty-fill-color-7:#e5e7e9;--el-empty-fill-color-8:#e0e3e9;--el-empty-fill-color-9:#d5d7de;align-items:center;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;padding:var(--el-empty-padding);text-align:center}.el-empty__image{width:var(--el-empty-image-width)}.el-empty__image img{height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;vertical-align:top;width:100%}.el-empty__image svg{color:var(--el-svg-monochrome-grey);fill:currentColor;height:100%;vertical-align:top;width:100%}.el-empty__description{margin-top:var(--el-empty-description-margin-top)}.el-empty__description p{color:var(--el-text-color-secondary);font-size:var(--el-font-size-base);margin:0}.el-empty__bottom{margin-top:var(--el-empty-bottom-margin-top)}.el-footer{--el-footer-padding:0 20px;--el-footer-height:60px;box-sizing:border-box;flex-shrink:0;height:var(--el-footer-height);padding:var(--el-footer-padding)}.el-form{--el-form-label-font-size:var(--el-font-size-base);--el-form-inline-content-width:220px}.el-form--inline .el-form-item{display:inline-flex;margin-right:32px;vertical-align:middle}.el-form--inline.el-form--label-top{display:flex;flex-wrap:wrap}.el-form--inline.el-form--label-top .el-form-item{display:block}.el-form-item{display:flex;--font-size:14px;margin-bottom:18px}.el-form-item .el-form-item{margin-bottom:0}.el-form-item .el-input__validateIcon{display:none}.el-form-item--large{--font-size:14px;--el-form-label-font-size:var(--font-size);margin-bottom:22px}.el-form-item--large .el-form-item__label{height:40px;line-height:40px}.el-form-item--large .el-form-item__content{line-height:40px}.el-form-item--large .el-form-item__error{padding-top:4px}.el-form-item--default{--font-size:14px;--el-form-label-font-size:var(--font-size);margin-bottom:18px}.el-form-item--default .el-form-item__label{height:32px;line-height:32px}.el-form-item--default .el-form-item__content{line-height:32px}.el-form-item--default .el-form-item__error{padding-top:2px}.el-form-item--small{--font-size:12px;--el-form-label-font-size:var(--font-size);margin-bottom:18px}.el-form-item--small .el-form-item__label{height:24px;line-height:24px}.el-form-item--small .el-form-item__content{line-height:24px}.el-form-item--small .el-form-item__error{padding-top:2px}.el-form-item--label-left .el-form-item__label{justify-content:flex-start;text-align:left}.el-form-item--label-right .el-form-item__label{justify-content:flex-end;text-align:right}.el-form-item--label-top{display:block}.el-form-item--label-top .el-form-item__label{display:block;height:auto;line-height:22px;margin-bottom:8px;text-align:left}.el-form-item__label-wrap{display:flex}.el-form-item__label{align-items:flex-start;box-sizing:border-box;color:var(--el-text-color-regular);display:inline-flex;flex:0 0 auto;font-size:var(--el-form-label-font-size);height:32px;line-height:32px;padding:0 12px 0 0}.el-form-item__content{align-items:center;display:flex;flex:1;flex-wrap:wrap;font-size:var(--font-size);line-height:32px;min-width:0;position:relative}.el-form-item__content .el-input-group{vertical-align:top}.el-form-item__error{color:var(--el-color-danger);font-size:12px;left:0;line-height:1;padding-top:2px;position:absolute;top:100%}.el-form-item__error--inline{display:inline-block;left:auto;margin-left:10px;position:relative;top:auto}.el-form-item.is-required:not(.is-no-asterisk).asterisk-left>.el-form-item__label-wrap>.el-form-item__label:before,.el-form-item.is-required:not(.is-no-asterisk).asterisk-left>.el-form-item__label:before{color:var(--el-color-danger);content:"*";margin-right:4px}.el-form-item.is-required:not(.is-no-asterisk).asterisk-right>.el-form-item__label-wrap>.el-form-item__label:after,.el-form-item.is-required:not(.is-no-asterisk).asterisk-right>.el-form-item__label:after{color:var(--el-color-danger);content:"*";margin-left:4px}.el-form-item.is-error .el-form-item__content .el-input-tag__wrapper,.el-form-item.is-error .el-form-item__content .el-input-tag__wrapper.is-focus,.el-form-item.is-error .el-form-item__content .el-input-tag__wrapper:focus,.el-form-item.is-error .el-form-item__content .el-input-tag__wrapper:hover,.el-form-item.is-error .el-form-item__content .el-input__wrapper,.el-form-item.is-error .el-form-item__content .el-input__wrapper.is-focus,.el-form-item.is-error .el-form-item__content .el-input__wrapper:focus,.el-form-item.is-error .el-form-item__content .el-input__wrapper:hover,.el-form-item.is-error .el-form-item__content .el-select__wrapper,.el-form-item.is-error .el-form-item__content .el-select__wrapper.is-focus,.el-form-item.is-error .el-form-item__content .el-select__wrapper:focus,.el-form-item.is-error .el-form-item__content .el-select__wrapper:hover,.el-form-item.is-error .el-form-item__content .el-textarea__inner,.el-form-item.is-error .el-form-item__content .el-textarea__inner.is-focus,.el-form-item.is-error .el-form-item__content .el-textarea__inner:focus,.el-form-item.is-error .el-form-item__content .el-textarea__inner:hover{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-form-item.is-error .el-form-item__content .el-input-group__append .el-input__wrapper,.el-form-item.is-error .el-form-item__content .el-input-group__prepend .el-input__wrapper{box-shadow:inset 0 0 0 1px transparent}.el-form-item.is-error .el-form-item__content .el-input-group__append .el-input__validateIcon,.el-form-item.is-error .el-form-item__content .el-input-group__prepend .el-input__validateIcon{display:none}.el-form-item.is-error .el-form-item__content .el-input__validateIcon{color:var(--el-color-danger)}.el-form-item--feedback .el-input__validateIcon{display:inline-flex}.el-header{--el-header-padding:0 20px;--el-header-height:60px;box-sizing:border-box;flex-shrink:0;height:var(--el-header-height);padding:var(--el-header-padding)}.el-image-viewer__wrapper{bottom:0;left:0;position:fixed;right:0;top:0}.el-image-viewer__wrapper:focus{outline:none!important}.el-image-viewer__btn{align-items:center;border-radius:50%;box-sizing:border-box;cursor:pointer;display:flex;justify-content:center;opacity:.8;position:absolute;-webkit-user-select:none;user-select:none;z-index:1}.el-image-viewer__btn .el-icon{cursor:pointer}.el-image-viewer__close{font-size:40px;height:40px;right:40px;top:40px;width:40px}.el-image-viewer__canvas{align-items:center;display:flex;height:100%;justify-content:center;position:static;-webkit-user-select:none;user-select:none;width:100%}.el-image-viewer__actions{background-color:var(--el-text-color-regular);border-color:#fff;border-radius:22px;bottom:30px;height:44px;left:50%;padding:0 23px;transform:translate(-50%)}.el-image-viewer__actions__inner{align-items:center;color:#fff;cursor:default;display:flex;font-size:23px;gap:22px;height:100%;justify-content:space-around;padding:0 6px;width:100%}.el-image-viewer__actions__divider{margin:0 -6px}.el-image-viewer__progress{bottom:90px;color:#fff;cursor:default;left:50%;transform:translate(-50%)}.el-image-viewer__prev{left:40px}.el-image-viewer__next,.el-image-viewer__prev{background-color:var(--el-text-color-regular);border-color:#fff;color:#fff;font-size:24px;height:44px;top:50%;transform:translateY(-50%);width:44px}.el-image-viewer__next{right:40px;text-indent:2px}.el-image-viewer__close{background-color:var(--el-text-color-regular);border-color:#fff;color:#fff;font-size:24px;height:44px;width:44px}.el-image-viewer__mask{background:#000;height:100%;left:0;opacity:.5;position:absolute;top:0;width:100%}.viewer-fade-enter-active{animation:viewer-fade-in var(--el-transition-duration)}.viewer-fade-leave-active{animation:viewer-fade-out var(--el-transition-duration)}@keyframes viewer-fade-in{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes viewer-fade-out{0%{opacity:1;transform:translateZ(0)}to{opacity:0;transform:translate3d(0,-20px,0)}}.el-image__error,.el-image__inner,.el-image__placeholder,.el-image__wrapper{height:100%;width:100%}.el-image{display:inline-block;overflow:hidden;position:relative}.el-image__inner{opacity:1;vertical-align:top}.el-image__inner.is-loading{opacity:0}.el-image__wrapper{left:0;position:absolute;top:0}.el-image__error,.el-image__placeholder{background:var(--el-fill-color-light)}.el-image__error{align-items:center;color:var(--el-text-color-placeholder);display:flex;font-size:14px;justify-content:center;vertical-align:middle}.el-image__preview{cursor:pointer}.el-input-number{display:inline-flex;line-height:30px;position:relative;vertical-align:middle;width:150px}.el-input-number .el-input__wrapper{padding-left:42px;padding-right:42px}.el-input-number .el-input__inner{-webkit-appearance:none;-moz-appearance:textfield;line-height:1;text-align:center}.el-input-number .el-input__inner::-webkit-inner-spin-button,.el-input-number .el-input__inner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.el-input-number__decrease,.el-input-number__increase{align-items:center;background:var(--el-fill-color-light);bottom:1px;color:var(--el-text-color-regular);cursor:pointer;display:flex;font-size:13px;height:auto;justify-content:center;position:absolute;top:1px;-webkit-user-select:none;user-select:none;width:32px;z-index:1}.el-input-number__decrease:hover,.el-input-number__increase:hover{color:var(--el-color-primary)}.el-input-number__decrease:hover~.el-input:not(.is-disabled) .el-input__wrapper,.el-input-number__increase:hover~.el-input:not(.is-disabled) .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-border-color,var(--el-color-primary)) inset}.el-input-number__decrease.is-disabled,.el-input-number__increase.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-input-number__increase{border-left:var(--el-border);border-radius:0 var(--el-border-radius-base) var(--el-border-radius-base) 0;right:1px}.el-input-number__decrease{border-radius:var(--el-border-radius-base) 0 0 var(--el-border-radius-base);border-right:var(--el-border);left:1px}.el-input-number.is-disabled .el-input-number__decrease,.el-input-number.is-disabled .el-input-number__increase{border-color:var(--el-disabled-border-color);color:var(--el-disabled-border-color)}.el-input-number.is-disabled .el-input-number__decrease:hover,.el-input-number.is-disabled .el-input-number__increase:hover{color:var(--el-disabled-border-color);cursor:not-allowed}.el-input-number--large{line-height:38px;width:180px}.el-input-number--large .el-input-number__decrease,.el-input-number--large .el-input-number__increase{font-size:14px;width:40px}.el-input-number--large.is-controls-right .el-input--large .el-input__wrapper{padding-right:47px}.el-input-number--large .el-input--large .el-input__wrapper{padding-left:47px;padding-right:47px}.el-input-number--small{line-height:22px;width:120px}.el-input-number--small .el-input-number__decrease,.el-input-number--small .el-input-number__increase{font-size:12px;width:24px}.el-input-number--small.is-controls-right .el-input--small .el-input__wrapper{padding-right:31px}.el-input-number--small .el-input--small .el-input__wrapper{padding-left:31px;padding-right:31px}.el-input-number--small .el-input-number__decrease [class*=el-icon],.el-input-number--small .el-input-number__increase [class*=el-icon]{transform:scale(.9)}.el-input-number.is-without-controls .el-input__wrapper{padding-left:15px;padding-right:15px}.el-input-number.is-controls-right .el-input__wrapper{padding-left:15px;padding-right:42px}.el-input-number.is-controls-right .el-input-number__decrease,.el-input-number.is-controls-right .el-input-number__increase{--el-input-number-controls-height:15px;height:var(--el-input-number-controls-height);line-height:var(--el-input-number-controls-height)}.el-input-number.is-controls-right .el-input-number__decrease [class*=el-icon],.el-input-number.is-controls-right .el-input-number__increase [class*=el-icon]{transform:scale(.8)}.el-input-number.is-controls-right .el-input-number__increase{border-bottom:var(--el-border);border-radius:0 var(--el-border-radius-base) 0 0;bottom:auto;left:auto}.el-input-number.is-controls-right .el-input-number__decrease{border-left:var(--el-border);border-radius:0 0 var(--el-border-radius-base) 0;border-right:none;left:auto;right:1px;top:auto}.el-input-number.is-controls-right[class*=large] [class*=decrease],.el-input-number.is-controls-right[class*=large] [class*=increase]{--el-input-number-controls-height:19px}.el-input-number.is-controls-right[class*=small] [class*=decrease],.el-input-number.is-controls-right[class*=small] [class*=increase]{--el-input-number-controls-height:11px}.el-input-tag{--el-input-tag-border-color-hover:var(--el-border-color-hover);--el-input-tag-placeholder-color:var(--el-text-color-placeholder);--el-input-tag-disabled-color:var(--el-disabled-text-color);--el-input-tag-disabled-border:var(--el-disabled-border-color);--el-input-tag-font-size:var(--el-font-size-base);--el-input-tag-close-hover-color:var(--el-text-color-secondary);--el-input-tag-text-color:var(--el-text-color-regular);--el-input-tag-input-focus-border-color:var(--el-color-primary);--el-input-tag-width:100%;--el-input-tag-mini-height:var(--el-component-size);--el-input-tag-gap:6px;--el-input-tag-padding:4px;--el-input-tag-inner-padding:8px;--el-input-tag-line-height:24px;align-items:center;background-color:var(--el-fill-color-blank);border-radius:var(--el-border-radius-base);box-shadow:0 0 0 1px var(--el-border-color) inset;box-sizing:border-box;cursor:pointer;display:flex;font-size:var(--el-input-tag-font-size);line-height:var(--el-input-tag-line-height);min-height:var(--el-input-tag-mini-height);padding:var(--el-input-tag-padding);transform:translateZ(0);transition:var(--el-transition-duration);width:var(--el-input-tag-width)}.el-input-tag.is-focused{box-shadow:0 0 0 1px var(--el-color-primary) inset}.el-input-tag.is-hovering:not(.is-focused){box-shadow:0 0 0 1px var(--el-border-color-hover) inset}.el-input-tag.is-disabled{background-color:var(--el-fill-color-light);cursor:not-allowed}.el-input-tag.is-disabled,.el-input-tag.is-disabled:hover{box-shadow:0 0 0 1px var(--el-input-tag-disabled-border) inset}.el-input-tag.is-disabled.is-focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-input-tag.is-disabled .el-input-tag__inner .el-input-tag__input,.el-input-tag.is-disabled .el-input-tag__inner .el-tag{cursor:not-allowed}.el-input-tag__prefix,.el-input-tag__suffix{align-items:center;color:var(--el-input-icon-color,var(--el-text-color-placeholder));display:flex;flex-shrink:0;padding:0 var(--el-input-tag-inner-padding)}.el-input-tag__suffix{gap:8px}.el-input-tag__inner{align-items:center;display:flex;flex:1;flex-wrap:wrap;gap:var(--el-input-tag-gap);max-width:100%;min-width:0;position:relative}.el-input-tag__inner.is-left-space{margin-left:var(--el-input-tag-inner-padding)}.el-input-tag__inner.is-right-space{margin-right:var(--el-input-tag-inner-padding)}.el-input-tag__inner.is-draggable .el-tag{cursor:move;-webkit-user-select:none;user-select:none}.el-input-tag__drop-indicator{background-color:var(--el-color-primary);height:var(--el-input-tag-line-height);position:absolute;top:0;width:1px}.el-input-tag__inner .el-tag{border-color:transparent;cursor:pointer;max-width:100%}.el-input-tag__inner .el-tag.el-tag--plain{border-color:var(--el-tag-border-color)}.el-input-tag__inner .el-tag .el-tag__content{line-height:normal;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-input-tag__input-wrapper{flex:1}.el-input-tag__input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:none;color:var(--el-input-tag-text-color);font-family:inherit;font-size:inherit;line-height:inherit;outline:none;padding:0;width:100%}.el-input-tag__input::placeholder{color:var(--el-input-tag-placeholder-color)}.el-input-tag__input-calculator{left:0;max-width:100%;overflow:hidden;position:absolute;top:0;visibility:hidden;white-space:pre}.el-input-tag--large{--el-input-tag-gap:6px;--el-input-tag-padding:8px;--el-input-tag-padding-left:8px;--el-input-tag-font-size:14px}.el-input-tag--small{--el-input-tag-gap:4px;--el-input-tag-padding:2px;--el-input-tag-padding-left:6px;--el-input-tag-font-size:12px;--el-input-tag-line-height:20px;--el-input-tag-mini-height:var(--el-component-size-small)}.el-link{--el-link-font-size:var(--el-font-size-base);--el-link-font-weight:var(--el-font-weight-primary);--el-link-text-color:var(--el-text-color-regular);--el-link-hover-text-color:var(--el-color-primary);--el-link-disabled-text-color:var(--el-text-color-placeholder);align-items:center;color:var(--el-link-text-color);cursor:pointer;display:inline-flex;flex-direction:row;font-size:var(--el-link-font-size);font-weight:var(--el-link-font-weight);justify-content:center;outline:none;padding:0;position:relative;text-decoration:none;vertical-align:middle}.el-link.is-hover-underline:hover:after{border-bottom:1px solid var(--el-link-hover-text-color);bottom:0;content:"";height:0;left:0;position:absolute;right:0}.el-link.is-underline:after{border-bottom:1px solid var(--el-link-text-color);bottom:0;content:"";height:0;left:0;position:absolute;right:0}.el-link:hover{color:var(--el-link-hover-text-color)}.el-link:hover:after{border-color:var(--el-link-hover-text-color)}.el-link [class*=el-icon-]+span{margin-left:5px}.el-link__inner{align-items:center;display:inline-flex;justify-content:center}.el-link.el-link--primary{--el-link-text-color:var(--el-color-primary);--el-link-hover-text-color:var(--el-color-primary-light-3);--el-link-disabled-text-color:var(--el-color-primary-light-5)}.el-link.el-link--success{--el-link-text-color:var(--el-color-success);--el-link-hover-text-color:var(--el-color-success-light-3);--el-link-disabled-text-color:var(--el-color-success-light-5)}.el-link.el-link--warning{--el-link-text-color:var(--el-color-warning);--el-link-hover-text-color:var(--el-color-warning-light-3);--el-link-disabled-text-color:var(--el-color-warning-light-5)}.el-link.el-link--danger{--el-link-text-color:var(--el-color-danger);--el-link-hover-text-color:var(--el-color-danger-light-3);--el-link-disabled-text-color:var(--el-color-danger-light-5)}.el-link.el-link--error{--el-link-text-color:var(--el-color-error);--el-link-hover-text-color:var(--el-color-error-light-3);--el-link-disabled-text-color:var(--el-color-error-light-5)}.el-link.el-link--info{--el-link-text-color:var(--el-color-info);--el-link-hover-text-color:var(--el-color-info-light-3);--el-link-disabled-text-color:var(--el-color-info-light-5)}.el-link.is-disabled{color:var(--el-link-disabled-text-color);cursor:not-allowed}.el-link.is-disabled:after{border-color:var(--el-link-disabled-text-color)}:root{--el-loading-spinner-size:42px;--el-loading-fullscreen-spinner-size:50px}.el-loading-parent--relative{position:relative!important}.el-loading-parent--hidden{overflow:hidden!important}.el-loading-mask{background-color:var(--el-mask-color);bottom:0;left:0;margin:0;position:absolute;right:0;top:0;transition:opacity var(--el-transition-duration);z-index:2000}.el-loading-mask.is-fullscreen{position:fixed}.el-loading-mask.is-fullscreen .el-loading-spinner{margin-top:calc((0px - var(--el-loading-fullscreen-spinner-size))/2)}.el-loading-mask.is-fullscreen .el-loading-spinner .circular{height:var(--el-loading-fullscreen-spinner-size);width:var(--el-loading-fullscreen-spinner-size)}.el-loading-spinner{margin-top:calc((0px - var(--el-loading-spinner-size))/2);position:absolute;text-align:center;top:50%;width:100%}.el-loading-spinner .el-loading-text{color:var(--el-color-primary);font-size:14px;margin:3px 0}.el-loading-spinner .circular{animation:loading-rotate 2s linear infinite;display:inline;height:var(--el-loading-spinner-size);width:var(--el-loading-spinner-size)}.el-loading-spinner .path{animation:loading-dash 1.5s ease-in-out infinite;stroke-dasharray:90,150;stroke-dashoffset:0;stroke-width:2;stroke:var(--el-color-primary);stroke-linecap:round}.el-loading-spinner i{color:var(--el-color-primary)}.el-loading-fade-enter-from,.el-loading-fade-leave-to{opacity:0}@keyframes loading-rotate{to{transform:rotate(1turn)}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40px}to{stroke-dasharray:90,150;stroke-dashoffset:-120px}}.el-main{--el-main-padding:20px;box-sizing:border-box;display:block;flex:1;flex-basis:auto;overflow:auto;padding:var(--el-main-padding)}:root{--el-menu-active-color:var(--el-color-primary);--el-menu-text-color:var(--el-text-color-primary);--el-menu-hover-text-color:var(--el-color-primary);--el-menu-bg-color:var(--el-fill-color-blank);--el-menu-hover-bg-color:var(--el-color-primary-light-9);--el-menu-item-height:56px;--el-menu-sub-item-height:calc(var(--el-menu-item-height) - 6px);--el-menu-horizontal-height:60px;--el-menu-horizontal-sub-item-height:36px;--el-menu-item-font-size:var(--el-font-size-base);--el-menu-item-hover-fill:var(--el-color-primary-light-9);--el-menu-border-color:var(--el-border-color);--el-menu-base-level-padding:20px;--el-menu-level-padding:20px;--el-menu-icon-width:24px}.el-menu{background-color:var(--el-menu-bg-color);border-right:1px solid var(--el-menu-border-color);box-sizing:border-box;list-style:none;margin:0;padding-left:0;position:relative}.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-menu-item,.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-menu-item-group__title,.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-sub-menu__title{padding-left:calc(var(--el-menu-base-level-padding) + var(--el-menu-level)*var(--el-menu-level-padding));white-space:nowrap}.el-menu:not(.el-menu--collapse) .el-sub-menu__title{padding-right:calc(var(--el-menu-base-level-padding) + var(--el-menu-icon-width))}.el-menu--horizontal{border-right:none;display:flex;flex-wrap:nowrap;height:var(--el-menu-horizontal-height)}.el-menu--horizontal.el-menu--popup-container{height:unset}.el-menu--horizontal.el-menu{border-bottom:1px solid var(--el-menu-border-color)}.el-menu--horizontal>.el-menu-item{align-items:center;border-bottom:2px solid transparent;color:var(--el-menu-text-color);display:inline-flex;height:100%;justify-content:center;margin:0}.el-menu--horizontal>.el-menu-item a,.el-menu--horizontal>.el-menu-item a:hover{color:inherit}.el-menu--horizontal>.el-sub-menu:focus,.el-menu--horizontal>.el-sub-menu:hover{outline:none}.el-menu--horizontal>.el-sub-menu:hover .el-sub-menu__title{color:var(--el-menu-hover-text-color)}.el-menu--horizontal>.el-sub-menu.is-active .el-sub-menu__title{border-bottom:2px solid var(--el-menu-active-color);color:var(--el-menu-active-color)}.el-menu--horizontal>.el-sub-menu .el-sub-menu__title{border-bottom:2px solid transparent;color:var(--el-menu-text-color);height:100%}.el-menu--horizontal>.el-sub-menu .el-sub-menu__title:hover{background-color:var(--el-menu-bg-color)}.el-menu--horizontal .el-menu .el-menu-item,.el-menu--horizontal .el-menu .el-sub-menu__title{align-items:center;background-color:var(--el-menu-bg-color);color:var(--el-menu-text-color);display:flex;height:var(--el-menu-horizontal-sub-item-height);line-height:var(--el-menu-horizontal-sub-item-height);padding:0 10px}.el-menu--horizontal .el-menu .el-sub-menu__title{padding-right:40px}.el-menu--horizontal .el-menu .el-menu-item.is-active,.el-menu--horizontal .el-menu .el-menu-item.is-active:hover,.el-menu--horizontal .el-menu .el-sub-menu.is-active>.el-sub-menu__title,.el-menu--horizontal .el-menu .el-sub-menu.is-active>.el-sub-menu__title:hover{color:var(--el-menu-active-color)}.el-menu--horizontal .el-menu-item:not(.is-disabled):focus,.el-menu--horizontal .el-menu-item:not(.is-disabled):hover{background-color:var(--el-menu-hover-bg-color);color:var(--el-menu-active-color,var(--el-menu-hover-text-color));outline:none}.el-menu--horizontal>.el-menu-item.is-active{border-bottom:2px solid var(--el-menu-active-color);color:var(--el-menu-active-color)!important}.el-menu--collapse{width:calc(var(--el-menu-icon-width) + var(--el-menu-base-level-padding)*2)}.el-menu--collapse>.el-menu-item [class^=el-icon],.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title [class^=el-icon],.el-menu--collapse>.el-sub-menu>.el-sub-menu__title [class^=el-icon]{margin:0;text-align:center;vertical-align:middle;width:var(--el-menu-icon-width)}.el-menu--collapse>.el-menu-item .el-sub-menu__icon-arrow,.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title .el-sub-menu__icon-arrow,.el-menu--collapse>.el-sub-menu>.el-sub-menu__title .el-sub-menu__icon-arrow{display:none}.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title>span,.el-menu--collapse>.el-menu-item>span,.el-menu--collapse>.el-sub-menu>.el-sub-menu__title>span{display:inline-block;height:0;overflow:hidden;visibility:hidden;width:0}.el-menu--collapse>.el-menu-item.is-active i{color:inherit}.el-menu--collapse .el-menu .el-sub-menu{min-width:200px}.el-menu--collapse .el-sub-menu.is-active .el-sub-menu__title{color:var(--el-menu-active-color)}.el-menu--popup{border:none;border-radius:var(--el-border-radius-small);box-shadow:var(--el-box-shadow-light);min-width:200px;padding:5px 0;z-index:100}.el-menu .el-icon{flex-shrink:0}.el-menu-item{align-items:center;box-sizing:border-box;color:var(--el-menu-text-color);cursor:pointer;display:flex;font-size:var(--el-menu-item-font-size);height:var(--el-menu-item-height);line-height:var(--el-menu-item-height);list-style:none;padding:0 var(--el-menu-base-level-padding);position:relative;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration),color var(--el-transition-duration);white-space:nowrap}.el-menu-item *{vertical-align:bottom}.el-menu-item i{color:inherit}.el-menu-item:focus,.el-menu-item:hover{outline:none}.el-menu-item:hover{background-color:var(--el-menu-hover-bg-color)}.el-menu-item.is-disabled{background:none!important;cursor:not-allowed;opacity:.25}.el-menu-item [class^=el-icon]{font-size:18px;margin-right:5px;text-align:center;vertical-align:middle;width:var(--el-menu-icon-width)}.el-menu-item.is-active{color:var(--el-menu-active-color)}.el-menu-item.is-active i{color:inherit}.el-menu-item .el-menu-tooltip__trigger{align-items:center;box-sizing:border-box;display:inline-flex;height:100%;left:0;padding:0 var(--el-menu-base-level-padding);position:absolute;top:0;width:100%}.el-sub-menu{list-style:none;margin:0;padding-left:0}.el-sub-menu__title{align-items:center;box-sizing:border-box;color:var(--el-menu-text-color);cursor:pointer;display:flex;font-size:var(--el-menu-item-font-size);height:var(--el-menu-item-height);line-height:var(--el-menu-item-height);list-style:none;padding:0 var(--el-menu-base-level-padding);position:relative;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration),color var(--el-transition-duration);white-space:nowrap}.el-sub-menu__title *{vertical-align:bottom}.el-sub-menu__title i{color:inherit}.el-sub-menu__title:focus,.el-sub-menu__title:hover{outline:none}.el-sub-menu__title.is-disabled{background:none!important;cursor:not-allowed;opacity:.25}.el-sub-menu__title:hover{background-color:var(--el-menu-hover-bg-color)}.el-sub-menu .el-menu{border:none}.el-sub-menu .el-menu-item{height:var(--el-menu-sub-item-height);line-height:var(--el-menu-sub-item-height)}.el-sub-menu__hide-arrow .el-sub-menu__icon-arrow{display:none!important}.el-sub-menu.is-active .el-sub-menu__title{border-bottom-color:var(--el-menu-active-color)}.el-sub-menu.is-disabled .el-menu-item,.el-sub-menu.is-disabled .el-sub-menu__title{background:none!important;cursor:not-allowed;opacity:.25}.el-sub-menu .el-icon{font-size:18px;margin-right:5px;text-align:center;vertical-align:middle;width:var(--el-menu-icon-width)}.el-sub-menu .el-icon.el-sub-menu__icon-more{margin-right:0!important}.el-sub-menu .el-sub-menu__icon-arrow{font-size:12px;margin-right:0;margin-top:-6px;position:absolute;right:var(--el-menu-base-level-padding);top:50%;transition:transform var(--el-transition-duration);width:inherit}.el-menu-item-group>ul{padding:0}.el-menu-item-group__title{color:var(--el-text-color-secondary);font-size:12px;line-height:normal;padding:7px 0 7px var(--el-menu-base-level-padding)}.horizontal-collapse-transition .el-sub-menu__title .el-sub-menu__icon-arrow{opacity:0;transition:var(--el-transition-duration-fast)}.el-message-box{--el-messagebox-title-color:var(--el-text-color-primary);--el-messagebox-width:420px;--el-messagebox-border-radius:4px;--el-messagebox-box-shadow:var(--el-box-shadow);--el-messagebox-font-size:var(--el-font-size-large);--el-messagebox-content-font-size:var(--el-font-size-base);--el-messagebox-content-color:var(--el-text-color-regular);--el-messagebox-error-font-size:12px;--el-messagebox-padding-primary:12px;--el-messagebox-font-line-height:var(--el-font-line-height-primary);backface-visibility:hidden;background-color:var(--el-bg-color);border-radius:var(--el-messagebox-border-radius);box-shadow:var(--el-messagebox-box-shadow);box-sizing:border-box;display:inline-block;font-size:var(--el-messagebox-font-size);max-width:var(--el-messagebox-width);overflow:hidden;overflow-wrap:break-word;padding:var(--el-messagebox-padding-primary);position:relative;text-align:left;vertical-align:middle;width:100%}.el-message-box:focus{outline:none!important}.el-overlay.is-message-box .el-overlay-message-box{bottom:0;left:0;overflow:auto;padding:16px;position:fixed;right:0;text-align:center;top:0}.el-overlay.is-message-box .el-overlay-message-box:after{content:"";display:inline-block;height:100%;vertical-align:middle;width:0}.el-message-box.is-draggable .el-message-box__header{cursor:move;-webkit-user-select:none;user-select:none}.el-message-box__header{padding-bottom:var(--el-messagebox-padding-primary)}.el-message-box__header.show-close{padding-right:calc(var(--el-messagebox-padding-primary) + var(--el-message-close-size, 16px))}.el-message-box__title{color:var(--el-messagebox-title-color);font-size:var(--el-messagebox-font-size);line-height:var(--el-messagebox-font-line-height)}.el-message-box__headerbtn{background:transparent;border:none;cursor:pointer;font-size:var(--el-message-close-size,16px);height:40px;outline:none;padding:0;position:absolute;right:0;top:0;width:40px}.el-message-box__headerbtn .el-message-box__close{color:var(--el-color-info);font-size:inherit}.el-message-box__headerbtn:focus .el-message-box__close,.el-message-box__headerbtn:hover .el-message-box__close{color:var(--el-color-primary)}.el-message-box__content{color:var(--el-messagebox-content-color);font-size:var(--el-messagebox-content-font-size)}.el-message-box__container{align-items:center;display:flex;gap:12px}.el-message-box__input{padding-top:12px}.el-message-box__input div.invalid>input,.el-message-box__input div.invalid>input:focus{border-color:var(--el-color-error)}.el-message-box__status{font-size:24px}.el-message-box__status.el-message-box-icon--primary{--el-messagebox-color:var(--el-color-primary);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--success{--el-messagebox-color:var(--el-color-success);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--info{--el-messagebox-color:var(--el-color-info);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--warning{--el-messagebox-color:var(--el-color-warning);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--error{--el-messagebox-color:var(--el-color-error);color:var(--el-messagebox-color)}.el-message-box__message{margin:0;min-width:0}.el-message-box__message p{line-height:var(--el-messagebox-font-line-height);margin:0}.el-message-box__errormsg{color:var(--el-color-error);font-size:var(--el-messagebox-error-font-size);line-height:var(--el-messagebox-font-line-height)}.el-message-box__btns{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-end;padding-top:var(--el-messagebox-padding-primary)}.el-message-box--center .el-message-box__title{align-items:center;display:flex;gap:6px;justify-content:center}.el-message-box--center .el-message-box__status{font-size:inherit}.el-message-box--center .el-message-box__btns,.el-message-box--center .el-message-box__container{justify-content:center}.fade-in-linear-enter-active .el-overlay-message-box{animation:msgbox-fade-in var(--el-transition-duration)}.fade-in-linear-leave-active .el-overlay-message-box{animation:msgbox-fade-in var(--el-transition-duration) reverse}@keyframes msgbox-fade-in{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:translateZ(0)}}.el-message{--el-message-bg-color:var(--el-color-info-light-9);--el-message-border-color:var(--el-border-color-lighter);--el-message-padding:11px 15px;--el-message-close-size:16px;--el-message-close-icon-color:var(--el-text-color-placeholder);--el-message-close-hover-color:var(--el-text-color-secondary);align-items:center;background-color:var(--el-message-bg-color);border-color:var(--el-message-border-color);border-radius:var(--el-border-radius-base);border-style:var(--el-border-style);border-width:var(--el-border-width);box-sizing:border-box;display:flex;gap:8px;left:50%;max-width:calc(100% - 32px);padding:var(--el-message-padding);position:fixed;top:20px;transform:translate(-50%);transition:opacity var(--el-transition-duration),transform .4s,top .4s;width:fit-content}.el-message.is-plain{background-color:var(--el-bg-color-overlay);border-color:var(--el-bg-color-overlay);box-shadow:var(--el-box-shadow-light)}.el-message p{margin:0}.el-message--primary{--el-message-bg-color:var(--el-color-primary-light-9);--el-message-border-color:var(--el-color-primary-light-8);--el-message-text-color:var(--el-color-primary)}.el-message--primary .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--primary{color:var(--el-message-text-color)}.el-message--success{--el-message-bg-color:var(--el-color-success-light-9);--el-message-border-color:var(--el-color-success-light-8);--el-message-text-color:var(--el-color-success)}.el-message--success .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--success{color:var(--el-message-text-color)}.el-message--info{--el-message-bg-color:var(--el-color-info-light-9);--el-message-border-color:var(--el-color-info-light-8);--el-message-text-color:var(--el-color-info)}.el-message--info .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--info{color:var(--el-message-text-color)}.el-message--warning{--el-message-bg-color:var(--el-color-warning-light-9);--el-message-border-color:var(--el-color-warning-light-8);--el-message-text-color:var(--el-color-warning)}.el-message--warning .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--warning{color:var(--el-message-text-color)}.el-message--error{--el-message-bg-color:var(--el-color-error-light-9);--el-message-border-color:var(--el-color-error-light-8);--el-message-text-color:var(--el-color-error)}.el-message--error .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--error{color:var(--el-message-text-color)}.el-message .el-message__badge{position:absolute;right:-8px;top:-8px}.el-message__content{font-size:14px;line-height:1;padding:0}.el-message__content:focus{outline-width:0}.el-message .el-message__closeBtn{color:var(--el-message-close-icon-color);cursor:pointer;font-size:var(--el-message-close-size)}.el-message .el-message__closeBtn:focus{outline-width:0}.el-message .el-message__closeBtn:hover{color:var(--el-message-close-hover-color)}.el-message-fade-enter-from,.el-message-fade-leave-to{opacity:0;transform:translate(-50%,-100%)}.el-notification{--el-notification-width:330px;--el-notification-padding:14px 26px 14px 13px;--el-notification-radius:8px;--el-notification-shadow:var(--el-box-shadow-light);--el-notification-border-color:var(--el-border-color-lighter);--el-notification-icon-size:24px;--el-notification-close-font-size:var(--el-message-close-size,16px);--el-notification-group-margin-left:13px;--el-notification-group-margin-right:8px;--el-notification-content-font-size:var(--el-font-size-base);--el-notification-content-color:var(--el-text-color-regular);--el-notification-title-font-size:16px;--el-notification-title-color:var(--el-text-color-primary);--el-notification-close-color:var(--el-text-color-secondary);--el-notification-close-hover-color:var(--el-text-color-regular);background-color:var(--el-bg-color-overlay);border:1px solid var(--el-notification-border-color);border-radius:var(--el-notification-radius);box-shadow:var(--el-notification-shadow);box-sizing:border-box;display:flex;overflow:hidden;overflow-wrap:break-word;padding:var(--el-notification-padding);position:fixed;transition:opacity var(--el-transition-duration),transform var(--el-transition-duration),left var(--el-transition-duration),right var(--el-transition-duration),top .4s,bottom var(--el-transition-duration);width:var(--el-notification-width);z-index:9999}.el-notification.right{right:16px}.el-notification.left{left:16px}.el-notification__group{flex:1;margin-left:var(--el-notification-group-margin-left);margin-right:var(--el-notification-group-margin-right);min-width:0}.el-notification__title{color:var(--el-notification-title-color);font-size:var(--el-notification-title-font-size);font-weight:700;line-height:var(--el-notification-icon-size);margin:0}.el-notification__content{color:var(--el-notification-content-color);font-size:var(--el-notification-content-font-size);line-height:24px;margin:6px 0 0}.el-notification__content p{margin:0}.el-notification .el-notification__icon{flex-shrink:0;font-size:var(--el-notification-icon-size);height:var(--el-notification-icon-size);width:var(--el-notification-icon-size)}.el-notification .el-notification__closeBtn{color:var(--el-notification-close-color);cursor:pointer;font-size:var(--el-notification-close-font-size);position:absolute;right:15px;top:18px}.el-notification .el-notification__closeBtn:hover{color:var(--el-notification-close-hover-color)}.el-notification .el-notification--primary{--el-notification-icon-color:var(--el-color-primary);color:var(--el-notification-icon-color)}.el-notification .el-notification--success{--el-notification-icon-color:var(--el-color-success);color:var(--el-notification-icon-color)}.el-notification .el-notification--info{--el-notification-icon-color:var(--el-color-info);color:var(--el-notification-icon-color)}.el-notification .el-notification--warning{--el-notification-icon-color:var(--el-color-warning);color:var(--el-notification-icon-color)}.el-notification .el-notification--error{--el-notification-icon-color:var(--el-color-error);color:var(--el-notification-icon-color)}.el-notification-fade-enter-from.right{right:0;transform:translate(100%)}.el-notification-fade-enter-from.left{left:0;transform:translate(-100%)}.el-notification-fade-leave-to{opacity:0}.el-page-header.is-contentful .el-page-header__main{border-top:1px solid var(--el-border-color-light);margin-top:16px}.el-page-header__header{align-items:center;display:flex;justify-content:space-between;line-height:24px}.el-page-header__left{align-items:center;display:flex;margin-right:40px;position:relative}.el-page-header__back{align-items:center;cursor:pointer;display:flex}.el-page-header__left .el-divider--vertical{margin:0 16px}.el-page-header__icon{align-items:center;display:flex;font-size:16px;margin-right:10px}.el-page-header__icon .el-icon{font-size:inherit}.el-page-header__title{font-size:14px;font-weight:500}.el-page-header__content{color:var(--el-text-color-primary);font-size:18px}.el-page-header__breadcrumb{margin-bottom:16px}.el-popconfirm__main{align-items:center;display:flex}.el-popconfirm__icon{margin-right:5px}.el-popconfirm__action{margin-top:8px;text-align:right}.el-popover{--el-popover-bg-color:var(--el-bg-color-overlay);--el-popover-font-size:var(--el-font-size-base);--el-popover-border-color:var(--el-border-color-lighter);--el-popover-padding:12px;--el-popover-padding-large:18px 20px;--el-popover-title-font-size:16px;--el-popover-title-text-color:var(--el-text-color-primary);--el-popover-border-radius:4px}.el-popover.el-popper{background:var(--el-popover-bg-color);border:1px solid var(--el-popover-border-color);border-radius:var(--el-popover-border-radius);box-shadow:var(--el-box-shadow-light);box-sizing:border-box;color:var(--el-text-color-regular);font-size:var(--el-popover-font-size);line-height:1.4;min-width:150px;overflow-wrap:break-word;padding:var(--el-popover-padding);z-index:var(--el-index-popper)}.el-popover.el-popper--plain{padding:var(--el-popover-padding-large)}.el-popover__title{color:var(--el-popover-title-text-color);font-size:var(--el-popover-title-font-size);line-height:1;margin-bottom:12px}.el-popover__reference:focus:hover,.el-popover__reference:focus:not(.focusing){outline-width:0}.el-popover.el-popper.is-dark{--el-popover-bg-color:var(--el-text-color-primary);--el-popover-border-color:var(--el-text-color-primary);--el-popover-title-text-color:var(--el-bg-color);color:var(--el-bg-color)}.el-popover.el-popper:focus,.el-popover.el-popper:focus:active{outline-width:0}.el-progress{align-items:center;display:flex;line-height:1;position:relative}.el-progress__text{color:var(--el-text-color-regular);font-size:14px;line-height:1;margin-left:5px;min-width:50px}.el-progress__text i{display:block;vertical-align:middle}.el-progress--circle,.el-progress--dashboard{display:inline-block}.el-progress--circle .el-progress__text,.el-progress--dashboard .el-progress__text{left:0;margin:0;position:absolute;text-align:center;top:50%;transform:translateY(-50%);width:100%}.el-progress--circle .el-progress__text i,.el-progress--dashboard .el-progress__text i{display:inline-block;vertical-align:middle}.el-progress--without-text .el-progress__text{display:none}.el-progress--without-text .el-progress-bar{display:block;margin-right:0;padding-right:0}.el-progress--text-inside .el-progress-bar{margin-right:0;padding-right:0}.el-progress.is-success .el-progress-bar__inner{background-color:var(--el-color-success)}.el-progress.is-success .el-progress__text{color:var(--el-color-success)}.el-progress.is-warning .el-progress-bar__inner{background-color:var(--el-color-warning)}.el-progress.is-warning .el-progress__text{color:var(--el-color-warning)}.el-progress.is-exception .el-progress-bar__inner{background-color:var(--el-color-danger)}.el-progress.is-exception .el-progress__text{color:var(--el-color-danger)}.el-progress-bar{box-sizing:border-box;flex-grow:1}.el-progress-bar__outer{background-color:var(--el-border-color-lighter);border-radius:100px;height:6px;overflow:hidden;position:relative;vertical-align:middle}.el-progress-bar__inner{background-color:var(--el-color-primary);border-radius:100px;height:100%;left:0;line-height:1;position:absolute;text-align:right;top:0;transition:width .6s ease;white-space:nowrap}.el-progress-bar__inner:after{content:"";display:inline-block;height:100%;vertical-align:middle}.el-progress-bar__inner--indeterminate{animation:indeterminate 3s infinite;transform:translateZ(0)}.el-progress-bar__inner--striped{background-image:linear-gradient(45deg,rgba(0,0,0,.1) 25%,transparent 0,transparent 50%,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 75%,transparent 0,transparent);background-size:1.25em 1.25em}.el-progress-bar__inner--striped.el-progress-bar__inner--striped-flow{animation:striped-flow 3s linear infinite}.el-progress-bar__innerText{color:#fff;display:inline-block;font-size:12px;margin:0 5px;vertical-align:middle}@keyframes progress{0%{background-position:0 0}to{background-position:32px 0}}@keyframes indeterminate{0%{left:-100%}to{left:100%}}@keyframes striped-flow{0%{background-position:-100%}to{background-position:100%}}.el-radio-button{--el-radio-button-checked-bg-color:var(--el-color-primary);--el-radio-button-checked-text-color:var(--el-color-white);--el-radio-button-checked-border-color:var(--el-color-primary);--el-radio-button-disabled-checked-fill:var(--el-border-color-extra-light)}.el-radio-button,.el-radio-button__inner{display:inline-block;outline:none;position:relative}.el-radio-button__inner{-webkit-appearance:none;background:var(--el-button-bg-color,var(--el-fill-color-blank));border:var(--el-border);border-left:0;border-radius:0;box-sizing:border-box;color:var(--el-button-text-color,var(--el-text-color-regular));cursor:pointer;font-size:var(--el-font-size-base);font-weight:var(--el-button-font-weight,var(--el-font-weight-primary));line-height:1;margin:0;padding:8px 15px;text-align:center;transition:var(--el-transition-all);-webkit-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.el-radio-button__inner.is-round{padding:8px 15px}.el-radio-button__inner:hover{color:var(--el-color-primary)}.el-radio-button__inner [class*=el-icon-]{line-height:.9}.el-radio-button__inner [class*=el-icon-]+span{margin-left:5px}.el-radio-button:first-child .el-radio-button__inner{border-left:var(--el-border);border-radius:var(--el-border-radius-base) 0 0 var(--el-border-radius-base);box-shadow:none!important}.el-radio-button.is-active .el-radio-button__original-radio:not(:disabled)+.el-radio-button__inner{background-color:var(--el-radio-button-checked-bg-color,var(--el-color-primary));border-color:var(--el-radio-button-checked-border-color,var(--el-color-primary));box-shadow:-1px 0 0 0 var(--el-radio-button-checked-border-color,var(--el-color-primary));color:var(--el-radio-button-checked-text-color,var(--el-color-white))}.el-radio-button__original-radio{opacity:0;outline:none;position:absolute;z-index:-1}.el-radio-button__original-radio:focus-visible+.el-radio-button__inner{border-left:var(--el-border);border-left-color:var(--el-radio-button-checked-border-color,var(--el-color-primary));border-radius:var(--el-border-radius-base);box-shadow:none;outline:2px solid var(--el-radio-button-checked-border-color);outline-offset:1px;z-index:2}.el-radio-button__original-radio:disabled+.el-radio-button__inner{background-color:var(--el-button-disabled-bg-color,var(--el-fill-color-blank));background-image:none;border-color:var(--el-button-disabled-border-color,var(--el-border-color-light));box-shadow:none;color:var(--el-disabled-text-color);cursor:not-allowed}.el-radio-button__original-radio:disabled:checked+.el-radio-button__inner{background-color:var(--el-radio-button-disabled-checked-fill)}.el-radio-button:last-child .el-radio-button__inner{border-radius:0 var(--el-border-radius-base) var(--el-border-radius-base) 0}.el-radio-button:first-child:last-child .el-radio-button__inner{border-radius:var(--el-border-radius-base)}.el-radio-button--large .el-radio-button__inner{border-radius:0;font-size:var(--el-font-size-base);padding:12px 19px}.el-radio-button--large .el-radio-button__inner.is-round{padding:12px 19px}.el-radio-button--small .el-radio-button__inner{border-radius:0;font-size:12px;padding:5px 11px}.el-radio-button--small .el-radio-button__inner.is-round{padding:5px 11px}.el-radio-group{align-items:center;display:inline-flex;flex-wrap:wrap;font-size:0}.el-radio{--el-radio-font-size:var(--el-font-size-base);--el-radio-text-color:var(--el-text-color-regular);--el-radio-font-weight:var(--el-font-weight-primary);--el-radio-input-height:14px;--el-radio-input-width:14px;--el-radio-input-border-radius:var(--el-border-radius-circle);--el-radio-input-bg-color:var(--el-fill-color-blank);--el-radio-input-border:var(--el-border);--el-radio-input-border-color:var(--el-border-color);--el-radio-input-border-color-hover:var(--el-color-primary);align-items:center;color:var(--el-radio-text-color);cursor:pointer;display:inline-flex;font-size:var(--el-font-size-base);font-weight:var(--el-radio-font-weight);height:32px;margin-right:30px;outline:none;position:relative;-webkit-user-select:none;user-select:none;white-space:nowrap}.el-radio.el-radio--large{height:40px}.el-radio.el-radio--small{height:24px}.el-radio.is-bordered{border:var(--el-border);border-radius:var(--el-border-radius-base);box-sizing:border-box;padding:0 15px 0 9px}.el-radio.is-bordered.is-checked{border-color:var(--el-color-primary)}.el-radio.is-bordered.is-disabled{border-color:var(--el-border-color-lighter);cursor:not-allowed}.el-radio.is-bordered.el-radio--large{border-radius:var(--el-border-radius-base);padding:0 19px 0 11px}.el-radio.is-bordered.el-radio--large .el-radio__label{font-size:var(--el-font-size-base)}.el-radio.is-bordered.el-radio--large .el-radio__inner{height:14px;width:14px}.el-radio.is-bordered.el-radio--small{border-radius:var(--el-border-radius-base);padding:0 11px 0 7px}.el-radio.is-bordered.el-radio--small .el-radio__label{font-size:12px}.el-radio.is-bordered.el-radio--small .el-radio__inner{height:12px;width:12px}.el-radio:last-child{margin-right:0}.el-radio__input{cursor:pointer;display:inline-flex;outline:none;position:relative;vertical-align:middle;white-space:nowrap}.el-radio__input.is-disabled .el-radio__inner{border-color:var(--el-disabled-border-color)}.el-radio__input.is-disabled .el-radio__inner,.el-radio__input.is-disabled .el-radio__inner:after{background-color:var(--el-disabled-bg-color);cursor:not-allowed}.el-radio__input.is-disabled .el-radio__inner+.el-radio__label{cursor:not-allowed}.el-radio__input.is-disabled.is-checked .el-radio__inner{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color)}.el-radio__input.is-disabled.is-checked .el-radio__inner:after{background-color:var(--el-text-color-placeholder)}.el-radio__input.is-disabled+span.el-radio__label{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-radio__input.is-checked .el-radio__inner{background:var(--el-color-primary);border-color:var(--el-color-primary)}.el-radio__input.is-checked .el-radio__inner:after{background-color:var(--el-color-white);transform:translate(-50%,-50%) scale(1)}.el-radio__input.is-checked+.el-radio__label{color:var(--el-color-primary)}.el-radio__input.is-focus .el-radio__inner{border-color:var(--el-radio-input-border-color-hover)}.el-radio__inner{background-color:var(--el-radio-input-bg-color);border:var(--el-radio-input-border);border-radius:var(--el-radio-input-border-radius);box-sizing:border-box;cursor:pointer;display:inline-block;height:var(--el-radio-input-height);position:relative;width:var(--el-radio-input-width)}.el-radio__inner:hover{border-color:var(--el-radio-input-border-color-hover)}.el-radio__inner:after{border-radius:var(--el-radio-input-border-radius);content:"";height:4px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%) scale(0);transition:transform .15s ease-in;width:4px}.el-radio__original{bottom:0;left:0;margin:0;opacity:0;outline:none;position:absolute;right:0;top:0;z-index:-1}.el-radio__original:focus-visible+.el-radio__inner{border-radius:var(--el-radio-input-border-radius);outline:2px solid var(--el-radio-input-border-color-hover);outline-offset:1px}.el-radio:focus:not(:focus-visible):not(.is-focus):not(:active):not(.is-disabled) .el-radio__inner{box-shadow:0 0 2px 2px var(--el-radio-input-border-color-hover)}.el-radio__label{font-size:var(--el-radio-font-size);padding-left:8px}.el-radio.el-radio--large .el-radio__label{font-size:14px}.el-radio.el-radio--large .el-radio__inner{height:14px;width:14px}.el-radio.el-radio--small .el-radio__label{font-size:12px}.el-radio.el-radio--small .el-radio__inner{height:12px;width:12px}.el-rate{--el-rate-height:20px;--el-rate-font-size:var(--el-font-size-base);--el-rate-icon-size:18px;--el-rate-icon-margin:6px;--el-rate-void-color:var(--el-border-color-darker);--el-rate-fill-color:#f7ba2a;--el-rate-disabled-void-color:var(--el-fill-color);--el-rate-text-color:var(--el-text-color-primary);align-items:center;display:inline-flex;height:32px}.el-rate:active,.el-rate:focus{outline:none}.el-rate__item{color:var(--el-rate-void-color);cursor:pointer;display:inline-block;font-size:0;line-height:normal;position:relative;vertical-align:middle}.el-rate .el-rate__icon{display:inline-block;font-size:var(--el-rate-icon-size);margin-right:var(--el-rate-icon-margin);position:relative;transition:var(--el-transition-duration)}.el-rate .el-rate__icon.hover{transform:scale(1.15)}.el-rate .el-rate__icon .path2{left:0;position:absolute;top:0}.el-rate .el-rate__icon.is-active{color:var(--el-rate-fill-color)}.el-rate__decimal{color:var(--el-rate-fill-color);display:inline-block;overflow:hidden}.el-rate__decimal,.el-rate__decimal--box{left:0;position:absolute;top:0}.el-rate__text{color:var(--el-rate-text-color);font-size:var(--el-rate-font-size);vertical-align:middle}.el-rate--large{height:40px}.el-rate--small{height:24px}.el-rate--small .el-rate__icon{font-size:14px}.el-rate.is-disabled .el-rate__item{color:var(--el-rate-disabled-void-color);cursor:auto}.el-result{--el-result-padding:40px 30px;--el-result-icon-font-size:64px;--el-result-title-font-size:20px;--el-result-title-margin-top:20px;--el-result-subtitle-margin-top:10px;--el-result-extra-margin-top:30px;align-items:center;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;padding:var(--el-result-padding);text-align:center}.el-result__icon svg{height:var(--el-result-icon-font-size);width:var(--el-result-icon-font-size)}.el-result__title{margin-top:var(--el-result-title-margin-top)}.el-result__title p{color:var(--el-text-color-primary);font-size:var(--el-result-title-font-size);line-height:1.3;margin:0}.el-result__subtitle{margin-top:var(--el-result-subtitle-margin-top)}.el-result__subtitle p{color:var(--el-text-color-regular);font-size:var(--el-font-size-base);line-height:1.3;margin:0}.el-result__extra{margin-top:var(--el-result-extra-margin-top)}.el-result .icon-primary{--el-result-color:var(--el-color-primary);color:var(--el-result-color)}.el-result .icon-success{--el-result-color:var(--el-color-success);color:var(--el-result-color)}.el-result .icon-warning{--el-result-color:var(--el-color-warning);color:var(--el-result-color)}.el-result .icon-danger{--el-result-color:var(--el-color-danger);color:var(--el-result-color)}.el-result .icon-error{--el-result-color:var(--el-color-error);color:var(--el-result-color)}.el-result .icon-info{--el-result-color:var(--el-color-info);color:var(--el-result-color)}.el-row{box-sizing:border-box;display:flex;flex-wrap:wrap;position:relative}.el-row.is-justify-center{justify-content:center}.el-row.is-justify-end{justify-content:flex-end}.el-row.is-justify-space-between{justify-content:space-between}.el-row.is-justify-space-around{justify-content:space-around}.el-row.is-justify-space-evenly{justify-content:space-evenly}.el-row.is-align-top{align-items:flex-start}.el-row.is-align-middle{align-items:center}.el-row.is-align-bottom{align-items:flex-end}.el-select-dropdown.is-multiple .el-select-dropdown__item.is-selected:after{background-color:var(--el-color-primary);background-position:50%;background-repeat:no-repeat;border-right:none;border-top:none;content:"";height:12px;-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;mask-size:100% 100%;-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;-webkit-mask-size:100% 100%;position:absolute;right:20px;top:50%;transform:translateY(-50%);width:12px}.el-skeleton{--el-skeleton-circle-size:var(--el-avatar-size)}.el-skeleton__item{background:var(--el-skeleton-color);border-radius:var(--el-border-radius-base);display:inline-block;height:16px;width:100%}.el-skeleton__circle{border-radius:50%;height:var(--el-skeleton-circle-size);line-height:var(--el-skeleton-circle-size);width:var(--el-skeleton-circle-size)}.el-skeleton__button{border-radius:4px;height:40px;width:64px}.el-skeleton__p{width:100%}.el-skeleton__p.is-last{width:61%}.el-skeleton__p.is-first{width:33%}.el-skeleton__text{height:var(--el-font-size-small);width:100%}.el-skeleton__caption{height:var(--el-font-size-extra-small)}.el-skeleton__h1{height:var(--el-font-size-extra-large)}.el-skeleton__h3{height:var(--el-font-size-large)}.el-skeleton__h5{height:var(--el-font-size-medium)}.el-skeleton__image{align-items:center;border-radius:0;display:flex;justify-content:center;width:unset}.el-skeleton__image svg{color:var(--el-svg-monochrome-grey);fill:currentColor;height:22%;width:22%}.el-skeleton{--el-skeleton-color:var(--el-fill-color);--el-skeleton-to-color:var(--el-fill-color-darker)}@keyframes el-skeleton-loading{0%{background-position:100% 50%}to{background-position:0 50%}}.el-skeleton{width:100%}.el-skeleton__first-line,.el-skeleton__paragraph{background:var(--el-skeleton-color);height:16px;margin-top:16px}.el-skeleton.is-animated .el-skeleton__item{animation:el-skeleton-loading 1.4s ease infinite;background:linear-gradient(90deg,var(--el-skeleton-color) 25%,var(--el-skeleton-to-color) 37%,var(--el-skeleton-color) 63%);background-size:400% 100%}.el-slider{--el-slider-main-bg-color:var(--el-color-primary);--el-slider-runway-bg-color:var(--el-border-color-light);--el-slider-stop-bg-color:var(--el-color-white);--el-slider-disabled-color:var(--el-text-color-placeholder);--el-slider-border-radius:3px;--el-slider-height:6px;--el-slider-button-size:20px;--el-slider-button-wrapper-size:36px;--el-slider-button-wrapper-offset:-15px;align-items:center;display:flex;height:32px;width:100%}.el-slider__runway{background-color:var(--el-slider-runway-bg-color);border-radius:var(--el-slider-border-radius);cursor:pointer;flex:1;height:var(--el-slider-height);position:relative}.el-slider__runway.show-input{margin-right:30px;width:auto}.el-slider__runway.is-disabled{cursor:default}.el-slider__runway.is-disabled .el-slider__bar{background-color:var(--el-slider-disabled-color)}.el-slider__runway.is-disabled .el-slider__button{border-color:var(--el-slider-disabled-color)}.el-slider__runway.is-disabled .el-slider__button-wrapper.dragging,.el-slider__runway.is-disabled .el-slider__button-wrapper.hover,.el-slider__runway.is-disabled .el-slider__button-wrapper:hover{cursor:not-allowed}.el-slider__runway.is-disabled .el-slider__button.dragging,.el-slider__runway.is-disabled .el-slider__button.hover,.el-slider__runway.is-disabled .el-slider__button:hover{transform:scale(1);cursor:not-allowed}.el-slider__input{flex-shrink:0;width:130px}.el-slider__bar{background-color:var(--el-slider-main-bg-color);border-bottom-left-radius:var(--el-slider-border-radius);border-top-left-radius:var(--el-slider-border-radius);height:var(--el-slider-height);position:absolute}.el-slider__button-wrapper{background-color:transparent;height:var(--el-slider-button-wrapper-size);line-height:normal;outline:none;position:absolute;text-align:center;top:var(--el-slider-button-wrapper-offset);transform:translate(-50%);-webkit-user-select:none;user-select:none;width:var(--el-slider-button-wrapper-size);z-index:1}.el-slider__button-wrapper:after{content:"";display:inline-block;height:100%;vertical-align:middle}.el-slider__button-wrapper.hover,.el-slider__button-wrapper:hover{cursor:grab}.el-slider__button-wrapper.dragging{cursor:grabbing}.el-slider__button{background-color:var(--el-color-white);border:2px solid var(--el-slider-main-bg-color);border-radius:50%;box-sizing:border-box;display:inline-block;height:var(--el-slider-button-size);transition:var(--el-transition-duration-fast);-webkit-user-select:none;user-select:none;vertical-align:middle;width:var(--el-slider-button-size)}.el-slider__button.dragging,.el-slider__button.hover,.el-slider__button:hover{transform:scale(1.2)}.el-slider__button.hover,.el-slider__button:hover{cursor:grab}.el-slider__button.dragging{cursor:grabbing}.el-slider__stop{background-color:var(--el-slider-stop-bg-color);border-radius:var(--el-border-radius-circle);height:var(--el-slider-height);position:absolute;transform:translate(-50%);width:var(--el-slider-height)}.el-slider__marks{height:100%;left:12px;top:0;width:18px}.el-slider__marks-text{color:var(--el-color-info);font-size:14px;margin-top:15px;position:absolute;transform:translate(-50%);white-space:pre}.el-slider.is-vertical{display:inline-flex;flex:0;height:100%;position:relative;width:auto}.el-slider.is-vertical .el-slider__runway{height:100%;margin:0 16px;width:var(--el-slider-height)}.el-slider.is-vertical .el-slider__bar{border-radius:0 0 3px 3px;height:auto;width:var(--el-slider-height)}.el-slider.is-vertical .el-slider__button-wrapper{left:var(--el-slider-button-wrapper-offset);top:auto;transform:translateY(50%)}.el-slider.is-vertical .el-slider__stop{transform:translateY(50%)}.el-slider.is-vertical .el-slider__marks-text{left:15px;margin-top:0;transform:translateY(50%)}.el-slider--large{height:40px}.el-slider--small{height:24px}.el-space{display:inline-flex;vertical-align:top}.el-space__item{display:flex;flex-wrap:wrap}.el-space__item>*{flex:1}.el-space--vertical{flex-direction:column}.el-time-spinner{white-space:nowrap;width:100%}.el-spinner{display:inline-block;vertical-align:middle}.el-spinner-inner{animation:rotate 2s linear infinite;height:50px;width:50px}.el-spinner-inner .path{stroke:var(--el-border-color-lighter);stroke-linecap:round;animation:dash 1.5s ease-in-out infinite}@keyframes rotate{to{transform:rotate(1turn)}}@keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}.el-step{flex-shrink:1;position:relative}.el-step:last-of-type .el-step__line{display:none}.el-step:last-of-type.is-flex{flex-basis:auto!important;flex-grow:0;flex-shrink:0}.el-step:last-of-type .el-step__description,.el-step:last-of-type .el-step__main{padding-right:0}.el-step__head{position:relative;width:100%}.el-step__head.is-process{border-color:var(--el-text-color-primary);color:var(--el-text-color-primary)}.el-step__head.is-wait{border-color:var(--el-text-color-placeholder);color:var(--el-text-color-placeholder)}.el-step__head.is-success{border-color:var(--el-color-success);color:var(--el-color-success)}.el-step__head.is-error{border-color:var(--el-color-danger);color:var(--el-color-danger)}.el-step__head.is-finish{border-color:var(--el-color-primary);color:var(--el-color-primary)}.el-step__icon{align-items:center;background:var(--el-bg-color);box-sizing:border-box;display:inline-flex;font-size:14px;height:24px;justify-content:center;position:relative;transition:.15s ease-out;width:24px;z-index:1}.el-step__icon.is-text{border:2px solid;border-radius:50%}.el-step__icon.is-icon{width:40px}.el-step__icon-inner{color:inherit;display:inline-block;font-weight:700;line-height:1;text-align:center;-webkit-user-select:none;user-select:none}.el-step__icon-inner[class*=el-icon]:not(.is-status){font-size:25px;font-weight:400}.el-step__icon-inner.is-status{transform:translateY(1px)}.el-step__line{background-color:var(--el-text-color-placeholder);border-color:currentColor;position:absolute}.el-step__line-inner{border:1px solid;box-sizing:border-box;display:block;height:0;transition:.15s ease-out;width:0}.el-step__main{text-align:left;white-space:normal}.el-step__title{font-size:16px;line-height:38px}.el-step__title.is-process{color:var(--el-text-color-primary);font-weight:700}.el-step__title.is-wait{color:var(--el-text-color-placeholder)}.el-step__title.is-success{color:var(--el-color-success)}.el-step__title.is-error{color:var(--el-color-danger)}.el-step__title.is-finish{color:var(--el-color-primary)}.el-step__description{font-size:12px;font-weight:400;line-height:20px;margin-top:-5px;padding-right:10%}.el-step__description.is-process{color:var(--el-text-color-primary)}.el-step__description.is-wait{color:var(--el-text-color-placeholder)}.el-step__description.is-success{color:var(--el-color-success)}.el-step__description.is-error{color:var(--el-color-danger)}.el-step__description.is-finish{color:var(--el-color-primary)}.el-step.is-horizontal{display:inline-block}.el-step.is-horizontal .el-step__line{height:2px;left:0;right:0;top:11px}.el-step.is-vertical{display:flex}.el-step.is-vertical .el-step__head{flex-grow:0;width:24px}.el-step.is-vertical .el-step__main{flex-grow:1;padding-left:10px}.el-step.is-vertical .el-step__title{line-height:24px;padding-bottom:8px}.el-step.is-vertical .el-step__line{bottom:0;left:11px;top:0;width:2px}.el-step.is-vertical .el-step__icon.is-icon{width:24px}.el-step.is-center .el-step__head,.el-step.is-center .el-step__main{text-align:center}.el-step.is-center .el-step__description{padding-left:20%;padding-right:20%}.el-step.is-center .el-step__line{left:50%;right:-50%}.el-step.is-simple{align-items:center;display:flex}.el-step.is-simple .el-step__head{font-size:0;padding-right:10px;width:auto}.el-step.is-simple .el-step__icon{background:transparent;font-size:12px;height:16px;width:16px}.el-step.is-simple .el-step__icon-inner[class*=el-icon]:not(.is-status){font-size:18px}.el-step.is-simple .el-step__icon-inner.is-status{transform:scale(.8) translateY(1px)}.el-step.is-simple .el-step__main{align-items:stretch;display:flex;flex-grow:1;position:relative}.el-step.is-simple .el-step__title{font-size:16px;line-height:20px}.el-step.is-simple:not(:last-of-type) .el-step__title{max-width:50%;overflow-wrap:break-word}.el-step.is-simple .el-step__arrow{align-items:center;display:flex;flex-grow:1;justify-content:center}.el-step.is-simple .el-step__arrow:after,.el-step.is-simple .el-step__arrow:before{background:var(--el-text-color-placeholder);content:"";display:inline-block;height:15px;position:absolute;width:1px}.el-step.is-simple .el-step__arrow:before{transform:rotate(-45deg) translateY(-4px);transform-origin:0 0}.el-step.is-simple .el-step__arrow:after{transform:rotate(45deg) translateY(4px);transform-origin:100% 100%}.el-step.is-simple:last-of-type .el-step__arrow{display:none}.el-steps{display:flex}.el-steps--simple{background:var(--el-fill-color-light);border-radius:4px;padding:13px 8%}.el-steps--horizontal{white-space:nowrap}.el-steps--vertical{flex-flow:column;height:100%}.el-switch{--el-switch-on-color:var(--el-color-primary);--el-switch-off-color:var(--el-border-color);align-items:center;display:inline-flex;font-size:14px;height:32px;line-height:20px;position:relative;vertical-align:middle}.el-switch.is-disabled .el-switch__core,.el-switch.is-disabled .el-switch__label{cursor:not-allowed}.el-switch__label{color:var(--el-text-color-primary);cursor:pointer;display:inline-block;font-size:14px;font-weight:500;height:20px;transition:var(--el-transition-duration-fast);vertical-align:middle}.el-switch__label.is-active{color:var(--el-color-primary)}.el-switch__label--left{margin-right:10px}.el-switch__label--right{margin-left:10px}.el-switch__label *{display:inline-block;font-size:14px;line-height:1}.el-switch__label .el-icon{height:inherit}.el-switch__label .el-icon svg{vertical-align:middle}.el-switch__input{height:0;margin:0;opacity:0;position:absolute;width:0}.el-switch__input:focus-visible~.el-switch__core{outline:2px solid var(--el-switch-on-color);outline-offset:1px}.el-switch__core{align-items:center;background:var(--el-switch-off-color);border:1px solid var(--el-switch-border-color,var(--el-switch-off-color));border-radius:10px;box-sizing:border-box;cursor:pointer;display:inline-flex;height:20px;min-width:40px;outline:none;position:relative;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration)}.el-switch__core .el-switch__inner{align-items:center;display:flex;height:16px;justify-content:center;overflow:hidden;padding:0 4px 0 18px;transition:all var(--el-transition-duration);width:100%}.el-switch__core .el-switch__inner .is-icon,.el-switch__core .el-switch__inner .is-text{color:var(--el-color-white);font-size:12px;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none;white-space:nowrap}.el-switch__core .el-switch__action{align-items:center;background-color:var(--el-color-white);border-radius:var(--el-border-radius-circle);color:var(--el-switch-off-color);display:flex;height:16px;justify-content:center;left:1px;position:absolute;transition:all var(--el-transition-duration);width:16px}.el-switch.is-checked .el-switch__core{background-color:var(--el-switch-on-color);border-color:var(--el-switch-border-color,var(--el-switch-on-color))}.el-switch.is-checked .el-switch__core .el-switch__action{color:var(--el-switch-on-color);left:calc(100% - 17px)}.el-switch.is-checked .el-switch__core .el-switch__inner{padding:0 18px 0 4px}.el-switch.is-disabled{opacity:.6}.el-switch--wide .el-switch__label.el-switch__label--left span{left:10px}.el-switch--wide .el-switch__label.el-switch__label--right span{right:10px}.el-switch .label-fade-enter-from,.el-switch .label-fade-leave-active{opacity:0}.el-switch--large{font-size:14px;height:40px;line-height:24px}.el-switch--large .el-switch__label{font-size:14px;height:24px}.el-switch--large .el-switch__label *{font-size:14px}.el-switch--large .el-switch__core{border-radius:12px;height:24px;min-width:50px}.el-switch--large .el-switch__core .el-switch__inner{height:20px;padding:0 6px 0 22px}.el-switch--large .el-switch__core .el-switch__action{height:20px;width:20px}.el-switch--large.is-checked .el-switch__core .el-switch__action{left:calc(100% - 21px)}.el-switch--large.is-checked .el-switch__core .el-switch__inner{padding:0 22px 0 6px}.el-switch--small{font-size:12px;height:24px;line-height:16px}.el-switch--small .el-switch__label{font-size:12px;height:16px}.el-switch--small .el-switch__label *{font-size:12px}.el-switch--small .el-switch__core{border-radius:8px;height:16px;min-width:30px}.el-switch--small .el-switch__core .el-switch__inner{height:12px;padding:0 2px 0 14px}.el-switch--small .el-switch__core .el-switch__action{height:12px;width:12px}.el-switch--small.is-checked .el-switch__core .el-switch__action{left:calc(100% - 13px)}.el-switch--small.is-checked .el-switch__core .el-switch__inner{padding:0 14px 0 2px}.el-table-column--selection .cell{padding-left:14px;padding-right:14px}.el-table-filter{background-color:#fff;border:1px solid var(--el-border-color-lighter);border-radius:2px;box-shadow:var(--el-box-shadow-light);box-sizing:border-box}.el-table-filter__list{list-style:none;margin:0;min-width:100px;padding:5px 0}.el-table-filter__list-item{cursor:pointer;font-size:var(--el-font-size-base);line-height:36px;padding:0 10px}.el-table-filter__list-item:hover{background-color:var(--el-color-primary-light-9);color:var(--el-color-primary)}.el-table-filter__list-item.is-active{background-color:var(--el-color-primary);color:#fff}.el-table-filter__content{min-width:100px}.el-table-filter__bottom{border-top:1px solid var(--el-border-color-lighter);padding:8px}.el-table-filter__bottom button{background:transparent;border:none;color:var(--el-text-color-regular);cursor:pointer;font-size:var(--el-font-size-small);padding:0 3px}.el-table-filter__bottom button:hover{color:var(--el-color-primary)}.el-table-filter__bottom button:focus{outline:none}.el-table-filter__bottom button.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-table-filter__wrap{max-height:280px}.el-table-filter__checkbox-group{padding:10px}.el-table-filter__checkbox-group label.el-checkbox{align-items:center;display:flex;height:unset;margin-bottom:12px;margin-left:5px;margin-right:5px}.el-table-filter__checkbox-group .el-checkbox:last-child{margin-bottom:0}.el-table{--el-table-border-color:var(--el-border-color-lighter);--el-table-border:1px solid var(--el-table-border-color);--el-table-text-color:var(--el-text-color-regular);--el-table-header-text-color:var(--el-text-color-secondary);--el-table-row-hover-bg-color:var(--el-fill-color-light);--el-table-current-row-bg-color:var(--el-color-primary-light-9);--el-table-header-bg-color:var(--el-bg-color);--el-table-fixed-box-shadow:var(--el-box-shadow-light);--el-table-bg-color:var(--el-fill-color-blank);--el-table-tr-bg-color:var(--el-bg-color);--el-table-expanded-cell-bg-color:var(--el-fill-color-blank);--el-table-fixed-left-column:inset 10px 0 10px -10px rgba(0,0,0,.15);--el-table-fixed-right-column:inset -10px 0 10px -10px rgba(0,0,0,.15);--el-table-index:var(--el-index-normal);background-color:var(--el-table-bg-color);box-sizing:border-box;color:var(--el-table-text-color);font-size:var(--el-font-size-base);height:fit-content;max-width:100%;overflow:hidden;position:relative;width:100%}.el-table__inner-wrapper{display:flex;flex-direction:column;height:100%;position:relative}.el-table__inner-wrapper:before{bottom:0;height:1px;left:0}.el-table tbody:focus-visible{outline:none}.el-table.has-footer.el-table--fluid-height tr:last-child td.el-table__cell,.el-table.has-footer.el-table--scrollable-y tr:last-child td.el-table__cell{border-bottom-color:transparent}.el-table__empty-block{align-items:center;display:flex;justify-content:center;left:0;min-height:60px;position:sticky;text-align:center;width:100%}.el-table__empty-text{color:var(--el-text-color-secondary);line-height:60px;width:50%}.el-table__expand-column .cell{padding:0;text-align:center;-webkit-user-select:none;user-select:none}.el-table__expand-icon{color:var(--el-text-color-regular);cursor:pointer;font-size:12px;height:20px;position:relative;transition:transform var(--el-transition-duration-fast) ease-in-out}.el-table__expand-icon--expanded{transform:rotate(90deg)}.el-table__expand-icon>.el-icon{font-size:12px}.el-table__expanded-cell{background-color:var(--el-table-expanded-cell-bg-color)}.el-table__expanded-cell[class*=cell]{padding:20px 50px}.el-table__expanded-cell:hover{background-color:transparent!important}.el-table__placeholder{display:inline-block;width:20px}.el-table__append-wrapper{overflow:hidden}.el-table--fit{border-bottom:0;border-right:0}.el-table--fit .el-table__cell.gutter{border-right-width:1px}.el-table--fit .el-table__inner-wrapper:before{width:100%}.el-table thead{color:var(--el-table-header-text-color)}.el-table thead th{font-weight:600}.el-table thead.is-group th.el-table__cell{background:var(--el-fill-color-light)}.el-table .el-table__cell{box-sizing:border-box;min-width:0;padding:8px 0;position:relative;text-align:left;text-overflow:ellipsis;vertical-align:middle;z-index:var(--el-table-index)}.el-table .el-table__cell.is-center{text-align:center}.el-table .el-table__cell.is-right{text-align:right}.el-table .el-table__cell.gutter{border-bottom-width:0;border-right-width:0;padding:0;width:15px}.el-table .el-table__cell.is-hidden>*{visibility:hidden}.el-table .cell{box-sizing:border-box;line-height:23px;overflow:hidden;overflow-wrap:break-word;padding:0 12px;text-overflow:ellipsis;white-space:normal}.el-table .cell.el-tooltip{min-width:50px;white-space:nowrap}.el-table--large{font-size:var(--el-font-size-base)}.el-table--large .el-table__cell{padding:12px 0}.el-table--large .cell{padding:0 16px}.el-table--default{font-size:var(--el-font-size-base)}.el-table--default .el-table__cell{padding:8px 0}.el-table--default .cell{padding:0 12px}.el-table--small{font-size:var(--el-font-size-extra-small)}.el-table--small .el-table__cell{padding:4px 0}.el-table--small .cell{padding:0 8px}.el-table tr{background-color:var(--el-table-tr-bg-color)}.el-table tr input[type=checkbox]{margin:0}.el-table td.el-table__cell,.el-table th.el-table__cell.is-leaf{border-bottom:var(--el-table-border)}.el-table th.el-table__cell.is-sortable{cursor:pointer}.el-table th.el-table__cell{background-color:var(--el-table-header-bg-color)}.el-table th.el-table__cell>.cell.highlight{color:var(--el-color-primary)}.el-table th.el-table__cell.required>div:before{background:#ff4d51;border-radius:50%;content:"";display:inline-block;height:8px;margin-right:5px;vertical-align:middle;width:8px}.el-table td.el-table__cell div{box-sizing:border-box}.el-table td.el-table__cell.gutter{width:0}.el-table--border .el-table__inner-wrapper:after,.el-table--border:after,.el-table--border:before,.el-table__inner-wrapper:before{background-color:var(--el-table-border-color);content:"";position:absolute;z-index:calc(var(--el-table-index) + 2)}.el-table--border .el-table__inner-wrapper:after{height:1px;left:0;top:0;width:100%;z-index:calc(var(--el-table-index) + 2)}.el-table--border:before{height:100%;left:0;top:-1px;width:1px}.el-table--border:after{height:100%;right:0;top:-1px;width:1px}.el-table--border .el-table__inner-wrapper{border-bottom:none;border-right:none}.el-table--border .el-table__footer-wrapper{flex-shrink:0;position:relative}.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table--border th.el-table__cell.gutter:last-of-type{border-bottom:var(--el-table-border);border-bottom-width:1px}.el-table--border th.el-table__cell{border-bottom:var(--el-table-border)}.el-table--hidden{visibility:hidden}.el-table__body-wrapper,.el-table__footer-wrapper,.el-table__header-wrapper{width:100%}.el-table__body-wrapper tr td.el-table-fixed-column--left,.el-table__body-wrapper tr td.el-table-fixed-column--right,.el-table__body-wrapper tr th.el-table-fixed-column--left,.el-table__body-wrapper tr th.el-table-fixed-column--right,.el-table__footer-wrapper tr td.el-table-fixed-column--left,.el-table__footer-wrapper tr td.el-table-fixed-column--right,.el-table__footer-wrapper tr th.el-table-fixed-column--left,.el-table__footer-wrapper tr th.el-table-fixed-column--right,.el-table__header-wrapper tr td.el-table-fixed-column--left,.el-table__header-wrapper tr td.el-table-fixed-column--right,.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right{background:inherit;position:sticky!important;z-index:calc(var(--el-table-index) + 1)}.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before{bottom:-1px;box-shadow:none;content:"";overflow-x:hidden;overflow-y:hidden;pointer-events:none;position:absolute;top:0;touch-action:none;width:10px}.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before{left:-10px}.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before{right:-10px}.el-table__body-wrapper tr td.el-table__fixed-right-patch,.el-table__body-wrapper tr th.el-table__fixed-right-patch,.el-table__footer-wrapper tr td.el-table__fixed-right-patch,.el-table__footer-wrapper tr th.el-table__fixed-right-patch,.el-table__header-wrapper tr td.el-table__fixed-right-patch,.el-table__header-wrapper tr th.el-table__fixed-right-patch{background:#fff;position:sticky!important;right:0;z-index:calc(var(--el-table-index) + 1)}.el-table__header-wrapper{flex-shrink:0}.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__body,.el-table__footer,.el-table__header{border-collapse:separate;table-layout:fixed}.el-table__header-wrapper{overflow:hidden}.el-table__header-wrapper tbody td.el-table__cell{background-color:var(--el-table-row-hover-bg-color);color:var(--el-table-text-color)}.el-table__footer-wrapper{flex-shrink:0;overflow:hidden}.el-table__footer-wrapper tfoot td.el-table__cell{background-color:var(--el-table-row-hover-bg-color);color:var(--el-table-text-color)}.el-table__body-wrapper .el-table-column--selection>.cell,.el-table__header-wrapper .el-table-column--selection>.cell{align-items:center;display:inline-flex;height:23px}.el-table__body-wrapper .el-table-column--selection .el-checkbox,.el-table__header-wrapper .el-table-column--selection .el-checkbox{height:unset}.el-table.is-scrolling-left .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-left.el-table--border .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:var(--el-table-border)}.el-table.is-scrolling-left th.el-table-fixed-column--left{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-right th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-middle .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-none .el-table-fixed-column--left.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--left.is-last-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-last-column:before{box-shadow:none}.el-table.is-scrolling-none th.el-table-fixed-column--left,.el-table.is-scrolling-none th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__body-wrapper{flex:1;overflow:hidden;position:relative}.el-table__body-wrapper .el-scrollbar__bar{z-index:calc(var(--el-table-index) + 2)}.el-table .caret-wrapper{align-items:center;cursor:pointer;display:inline-flex;flex-direction:column;height:14px;overflow:initial;position:relative;vertical-align:middle;width:24px}.el-table .sort-caret{border:5px solid transparent;height:0;left:7px;position:absolute;width:0}.el-table .sort-caret.ascending{border-bottom-color:var(--el-text-color-placeholder);top:-5px}.el-table .sort-caret.descending{border-top-color:var(--el-text-color-placeholder);bottom:-3px}.el-table .ascending .sort-caret.ascending{border-bottom-color:var(--el-color-primary)}.el-table .descending .sort-caret.descending{border-top-color:var(--el-color-primary)}.el-table .hidden-columns{position:absolute;visibility:hidden;z-index:-1}.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{background:var(--el-fill-color-lighter)}.el-table--striped .el-table__body tr.el-table__row--striped.current-row td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table__body tr.hover-row.current-row>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped.current-row>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped>td.el-table__cell,.el-table__body tr.hover-row>td.el-table__cell,.el-table__body tr>td.hover-cell{background-color:var(--el-table-row-hover-bg-color)}.el-table__body tr.current-row>td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table.el-table--scrollable-y .el-table__body-header{position:sticky;top:0;z-index:calc(var(--el-table-index) + 2)}.el-table.el-table--scrollable-y .el-table__body-footer{bottom:0;position:sticky;z-index:calc(var(--el-table-index) + 2)}.el-table__column-resize-proxy{border-left:var(--el-table-border);bottom:0;left:200px;position:absolute;top:0;width:0;z-index:calc(var(--el-table-index) + 9)}.el-table__column-filter-trigger{cursor:pointer;display:inline-block}.el-table__column-filter-trigger i{color:var(--el-color-info);font-size:14px;vertical-align:middle}.el-table__border-left-patch{height:100%;top:0;width:1px}.el-table__border-bottom-patch,.el-table__border-left-patch{background-color:var(--el-table-border-color);left:0;position:absolute;z-index:calc(var(--el-table-index) + 2)}.el-table__border-bottom-patch{height:1px}.el-table__border-right-patch{background-color:var(--el-table-border-color);height:100%;position:absolute;top:0;width:1px;z-index:calc(var(--el-table-index) + 2)}.el-table--enable-row-transition .el-table__body td.el-table__cell{transition:background-color .25s ease}.el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell{background-color:var(--el-table-row-hover-bg-color)}.el-table [class*=el-table__row--level] .el-table__expand-icon{display:inline-block;height:12px;line-height:12px;margin-right:8px;text-align:center;width:12px}.el-table .el-table.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table:not(.el-table--border) .el-table__cell{border-right:none}.el-table:not(.el-table--border)>.el-table__inner-wrapper:after{content:none}.el-table-v2{--el-table-border-color:var(--el-border-color-lighter);--el-table-border:1px solid var(--el-table-border-color);--el-table-text-color:var(--el-text-color-regular);--el-table-header-text-color:var(--el-text-color-secondary);--el-table-row-hover-bg-color:var(--el-fill-color-light);--el-table-current-row-bg-color:var(--el-color-primary-light-9);--el-table-header-bg-color:var(--el-bg-color);--el-table-fixed-box-shadow:var(--el-box-shadow-light);--el-table-bg-color:var(--el-fill-color-blank);--el-table-tr-bg-color:var(--el-bg-color);--el-table-expanded-cell-bg-color:var(--el-fill-color-blank);--el-table-fixed-left-column:inset 10px 0 10px -10px rgba(0,0,0,.15);--el-table-fixed-right-column:inset -10px 0 10px -10px rgba(0,0,0,.15);--el-table-index:var(--el-index-normal);font-size:var(--el-font-size-base)}.el-table-v2 *{box-sizing:border-box}.el-table-v2__root{position:relative}.el-table-v2__root:hover .el-table-v2__main .el-virtual-scrollbar{opacity:1}.el-table-v2__main{background-color:var(--el-bg-color);display:flex;flex-direction:column-reverse;left:0;overflow:hidden;position:absolute;top:0}.el-table-v2__main .el-vl__horizontal,.el-table-v2__main .el-vl__vertical{z-index:2}.el-table-v2__left{background-color:var(--el-bg-color);box-shadow:2px 0 4px #0000000f;display:flex;flex-direction:column-reverse;left:0;overflow:hidden;position:absolute;top:0}.el-table-v2__left .el-virtual-scrollbar{opacity:0}.el-table-v2__left .el-vl__horizontal,.el-table-v2__left .el-vl__vertical{z-index:-1}.el-table-v2__right{background-color:var(--el-bg-color);box-shadow:-2px 0 4px #0000000f;display:flex;flex-direction:column-reverse;overflow:hidden;position:absolute;right:0;top:0}.el-table-v2__right .el-virtual-scrollbar{opacity:0}.el-table-v2__right .el-vl__horizontal,.el-table-v2__right .el-vl__vertical{z-index:-1}.el-table-v2__header-row,.el-table-v2__row{padding-inline-end:var(--el-table-scrollbar-size)}.el-table-v2__header-wrapper{overflow:hidden}.el-table-v2__header{overflow:hidden;position:relative}.el-table-v2__header .el-checkbox{z-index:0}.el-table-v2__footer{bottom:0;overflow:hidden;right:0}.el-table-v2__empty,.el-table-v2__footer,.el-table-v2__overlay{left:0;position:absolute}.el-table-v2__overlay{bottom:0;right:0;top:0;z-index:9999}.el-table-v2__header-row{border-bottom:var(--el-table-border);display:flex}.el-table-v2__header-cell{align-items:center;background-color:var(--el-table-header-bg-color);color:var(--el-table-header-text-color);display:flex;font-weight:700;height:100%;overflow:hidden;padding:0 8px;-webkit-user-select:none;user-select:none}.el-table-v2__header-cell.is-align-center{justify-content:center;text-align:center}.el-table-v2__header-cell.is-align-right{justify-content:flex-end;text-align:right}.el-table-v2__header-cell.is-sortable{cursor:pointer}.el-table-v2__header-cell:hover .el-icon{display:block}.el-table-v2__sort-icon{display:none;opacity:.6;transition:opacity,display var(--el-transition-duration)}.el-table-v2__sort-icon.is-sorting{display:block;opacity:1}.el-table-v2__row{align-items:center;border-bottom:var(--el-table-border);display:flex;transition:background-color var(--el-transition-duration)}.el-table-v2__row.is-hovered,.el-table-v2__row:hover{background-color:var(--el-table-row-hover-bg-color)}.el-table-v2__row-cell{align-items:center;display:flex;height:100%;overflow:hidden;padding:0 8px}.el-table-v2__row-cell.is-align-center{justify-content:center;text-align:center}.el-table-v2__row-cell.is-align-right{justify-content:flex-end;text-align:right}.el-table-v2__expand-icon{cursor:pointer;margin:0 4px;-webkit-user-select:none;user-select:none}.el-table-v2__expand-icon svg{transition:transform var(--el-transition-duration)}.el-table-v2__expand-icon.is-expanded svg{transform:rotate(90deg)}.el-table-v2:not(.is-dynamic) .el-table-v2__cell-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-table-v2.is-dynamic .el-table-v2__row{align-items:stretch;overflow:hidden}.el-table-v2.is-dynamic .el-table-v2__row .el-table-v2__row-cell{overflow-wrap:break-word}.el-tabs{--el-tabs-header-height:40px;display:flex}.el-tabs__header{align-items:center;display:flex;justify-content:space-between;margin:0 0 15px;padding:0;position:relative}.el-tabs__header-vertical{flex-direction:column}.el-tabs__active-bar{background-color:var(--el-color-primary);bottom:0;height:2px;left:0;list-style:none;position:absolute;transition:width var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier),transform var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);z-index:1}.el-tabs__new-tab{align-items:center;border:1px solid var(--el-border-color);border-radius:3px;color:var(--el-text-color-primary);cursor:pointer;display:flex;flex-shrink:0;font-size:12px;height:20px;justify-content:center;line-height:20px;margin:10px 0 10px 10px;text-align:center;transition:all .15s;width:20px}.el-tabs__new-tab .is-icon-plus{height:inherit;transform:scale(.8);width:inherit}.el-tabs__new-tab .is-icon-plus svg{vertical-align:middle}.el-tabs__new-tab:hover{color:var(--el-color-primary)}.el-tabs__new-tab-vertical{margin-left:0}.el-tabs__nav-wrap{flex:1 auto;margin-bottom:-1px;overflow:hidden;position:relative}.el-tabs__nav-wrap:after{background-color:var(--el-border-color-light);bottom:0;content:"";height:2px;left:0;position:absolute;width:100%;z-index:var(--el-index-normal)}.el-tabs__nav-wrap.is-scrollable{box-sizing:border-box;padding:0 20px}.el-tabs__nav-scroll{overflow:hidden}.el-tabs__nav-next,.el-tabs__nav-prev{color:var(--el-text-color-secondary);cursor:pointer;font-size:12px;line-height:44px;position:absolute;text-align:center;width:20px}.el-tabs__nav-next{right:0}.el-tabs__nav-prev{left:0}.el-tabs__nav{display:flex;float:left;position:relative;transition:transform var(--el-transition-duration);white-space:nowrap;z-index:calc(var(--el-index-normal) + 1)}.el-tabs__nav.is-stretch{display:flex;min-width:100%}.el-tabs__nav.is-stretch>*{flex:1;text-align:center}.el-tabs__item{align-items:center;box-sizing:border-box;color:var(--el-text-color-primary);display:flex;font-size:var(--el-font-size-base);font-weight:500;height:var(--el-tabs-header-height);justify-content:center;list-style:none;padding:0 20px;position:relative}.el-tabs__item:focus,.el-tabs__item:focus:active{outline:none}.el-tabs__item:focus-visible{border-radius:3px;box-shadow:0 0 2px 2px var(--el-color-primary) inset}.el-tabs__item .is-icon-close{border-radius:50%;margin-left:5px;text-align:center;transition:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier)}.el-tabs__item .is-icon-close:before{display:inline-block;transform:scale(.9)}.el-tabs__item .is-icon-close:hover{background-color:var(--el-text-color-placeholder);color:#fff}.el-tabs__item.is-active,.el-tabs__item:hover{color:var(--el-color-primary)}.el-tabs__item:hover{cursor:pointer}.el-tabs__item.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-tabs__content{flex-grow:1;overflow:hidden;position:relative}.el-tabs--bottom>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top>.el-tabs__header .el-tabs__item:nth-child(2){padding-left:0}.el-tabs--bottom>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top>.el-tabs__header .el-tabs__item:last-child{padding-right:0}.el-tabs--bottom.el-tabs--border-card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom.el-tabs--card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top.el-tabs--border-card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top.el-tabs--card>.el-tabs__header .el-tabs__item:nth-child(2){padding-left:20px}.el-tabs--bottom.el-tabs--border-card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom.el-tabs--card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top.el-tabs--border-card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top.el-tabs--card>.el-tabs__header .el-tabs__item:last-child{padding-right:20px}.el-tabs--card>.el-tabs__header{border-bottom:1px solid var(--el-border-color-light);height:var(--el-tabs-header-height)}.el-tabs--card>.el-tabs__header .el-tabs__nav-wrap:after{content:none}.el-tabs--card>.el-tabs__header .el-tabs__nav{border:1px solid var(--el-border-color-light);border-bottom:none;border-radius:4px 4px 0 0;box-sizing:border-box}.el-tabs--card>.el-tabs__header .el-tabs__active-bar{display:none}.el-tabs--card>.el-tabs__header .el-tabs__item .is-icon-close{font-size:12px;height:14px;overflow:hidden;position:relative;right:-2px;transform-origin:100% 50%;width:0}.el-tabs--card>.el-tabs__header .el-tabs__item{border-bottom:1px solid transparent;border-left:1px solid var(--el-border-color-light);transition:color var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier),padding var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier)}.el-tabs--card>.el-tabs__header .el-tabs__item:first-child{border-left:none}.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover{padding-left:13px;padding-right:13px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover .is-icon-close{width:14px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active{border-bottom-color:var(--el-bg-color)}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable{padding-left:20px;padding-right:20px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable .is-icon-close{width:14px}.el-tabs--border-card{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color)}.el-tabs--border-card>.el-tabs__content{padding:15px}.el-tabs--border-card>.el-tabs__header{background-color:var(--el-fill-color-light);border-bottom:1px solid var(--el-border-color-light);margin:0}.el-tabs--border-card>.el-tabs__header .el-tabs__nav-wrap:after{content:none}.el-tabs--border-card>.el-tabs__header .el-tabs__item{border:1px solid transparent;color:var(--el-text-color-secondary);margin-top:-1px;transition:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier)}.el-tabs--border-card>.el-tabs__header .el-tabs__item+.el-tabs__item,.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child{margin-left:-1px}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active{background-color:var(--el-bg-color-overlay);border-left-color:var(--el-border-color);border-right-color:var(--el-border-color);color:var(--el-color-primary)}.el-tabs--border-card>.el-tabs__header .el-tabs__item:not(.is-disabled):hover{color:var(--el-color-primary)}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-disabled{color:var(--el-disabled-text-color)}.el-tabs--border-card>.el-tabs__header .is-scrollable .el-tabs__item:first-child{margin-left:0}.el-tabs--bottom{flex-direction:column}.el-tabs--bottom .el-tabs__header.is-bottom{margin-bottom:0;margin-top:10px}.el-tabs--bottom.el-tabs--border-card .el-tabs__header.is-bottom{border-bottom:0;border-top:1px solid var(--el-border-color)}.el-tabs--bottom.el-tabs--border-card .el-tabs__nav-wrap.is-bottom{margin-bottom:0;margin-top:-1px}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom:not(.is-active){border:1px solid transparent}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom{margin:0 -1px -1px}.el-tabs--left,.el-tabs--right{overflow:hidden}.el-tabs--left .el-tabs__header.is-left,.el-tabs--left .el-tabs__header.is-right,.el-tabs--left .el-tabs__nav-scroll,.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__header.is-left,.el-tabs--right .el-tabs__header.is-right,.el-tabs--right .el-tabs__nav-scroll,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right{height:100%}.el-tabs--left .el-tabs__active-bar.is-left,.el-tabs--left .el-tabs__active-bar.is-right,.el-tabs--right .el-tabs__active-bar.is-left,.el-tabs--right .el-tabs__active-bar.is-right{bottom:auto;height:auto;top:0;width:2px}.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right{margin-bottom:0}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev{cursor:pointer;height:30px;line-height:30px;text-align:center;width:100%}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i{transform:rotate(90deg)}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev{left:auto;top:0}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next{bottom:0;right:auto}.el-tabs--left .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--left .el-tabs__nav-wrap.is-right.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-right.is-scrollable{padding:30px 0}.el-tabs--left .el-tabs__nav-wrap.is-left:after,.el-tabs--left .el-tabs__nav-wrap.is-right:after,.el-tabs--right .el-tabs__nav-wrap.is-left:after,.el-tabs--right .el-tabs__nav-wrap.is-right:after{bottom:auto;height:100%;top:0;width:2px}.el-tabs--left .el-tabs__nav.is-left,.el-tabs--left .el-tabs__nav.is-right,.el-tabs--right .el-tabs__nav.is-left,.el-tabs--right .el-tabs__nav.is-right{flex-direction:column}.el-tabs--left .el-tabs__item.is-left,.el-tabs--right .el-tabs__item.is-left{justify-content:flex-end}.el-tabs--left .el-tabs__item.is-right,.el-tabs--right .el-tabs__item.is-right{justify-content:flex-start}.el-tabs--bottom .el-tabs__nav,.el-tabs--top .el-tabs__nav{height:var(--el-tabs-header-height)}.el-tabs--left{flex-direction:row}.el-tabs--left .el-tabs__header.is-left{margin-bottom:0;margin-right:10px}.el-tabs--left .el-tabs__nav-wrap.is-left{margin-right:-1px}.el-tabs--left .el-tabs__active-bar.is-left,.el-tabs--left .el-tabs__nav-wrap.is-left:after{left:auto;right:0}.el-tabs--left .el-tabs__item.is-left{text-align:right}.el-tabs--left.el-tabs--card .el-tabs__active-bar.is-left{display:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left{border-bottom:none;border-left:none;border-right:1px solid var(--el-border-color-light);border-top:1px solid var(--el-border-color-light);text-align:left}.el-tabs--left.el-tabs--card .el-tabs__item.is-left:first-child{border-right:1px solid var(--el-border-color-light);border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active{border:1px solid var(--el-border-color-light);border-bottom:none;border-left:none;border-right:1px solid #fff}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:first-child{border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:last-child{border-bottom:none}.el-tabs--left.el-tabs--card .el-tabs__nav{border-bottom:1px solid var(--el-border-color-light);border-radius:4px 0 0 4px;border-right:none}.el-tabs--left.el-tabs--card .el-tabs__new-tab{float:none}.el-tabs--left.el-tabs--border-card .el-tabs__header.is-left{border-right:1px solid var(--el-border-color)}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left{border:1px solid transparent;margin:-1px 0 -1px -1px}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left.is-active{border-color:rgb(209,219,229) transparent}.el-tabs--left>.el-tabs__content+.el-tabs__header{order:-1}.el-tabs--right .el-tabs__header.is-right{margin-bottom:0;margin-left:10px}.el-tabs--right .el-tabs__nav-wrap.is-right{margin-left:-1px}.el-tabs--right .el-tabs__nav-wrap.is-right:after{left:0;right:auto}.el-tabs--right .el-tabs__active-bar.is-right{left:0}.el-tabs--right.el-tabs--card .el-tabs__active-bar.is-right{display:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right{border-bottom:none;border-top:1px solid var(--el-border-color-light)}.el-tabs--right.el-tabs--card .el-tabs__item.is-right:first-child{border-left:1px solid var(--el-border-color-light);border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active{border:1px solid var(--el-border-color-light);border-bottom:none;border-left:1px solid #fff;border-right:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:first-child{border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:last-child{border-bottom:none}.el-tabs--right.el-tabs--card .el-tabs__nav{border-bottom:1px solid var(--el-border-color-light);border-left:none;border-radius:0 4px 4px 0}.el-tabs--right.el-tabs--border-card .el-tabs__header.is-right{border-left:1px solid var(--el-border-color)}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right{border:1px solid transparent;margin:-1px -1px -1px 0}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right.is-active{border-color:rgb(209,219,229) transparent}.el-tabs--top{flex-direction:column}.el-tabs--top>.el-tabs__content+.el-tabs__header{order:-1}.slideInLeft-transition,.slideInRight-transition{display:inline-block}.slideInRight-enter{animation:slideInRight-enter var(--el-transition-duration)}.slideInRight-leave{animation:slideInRight-leave var(--el-transition-duration);left:0;position:absolute;right:0}.slideInLeft-enter{animation:slideInLeft-enter var(--el-transition-duration)}.slideInLeft-leave{animation:slideInLeft-leave var(--el-transition-duration);left:0;position:absolute;right:0}@keyframes slideInRight-enter{0%{opacity:0;transform:translate(100%);transform-origin:0 0}to{opacity:1;transform:translate(0);transform-origin:0 0}}@keyframes slideInRight-leave{0%{opacity:1;transform:translate(0);transform-origin:0 0}to{opacity:0;transform:translate(100%);transform-origin:0 0}}@keyframes slideInLeft-enter{0%{opacity:0;transform:translate(-100%);transform-origin:0 0}to{opacity:1;transform:translate(0);transform-origin:0 0}}@keyframes slideInLeft-leave{0%{opacity:1;transform:translate(0);transform-origin:0 0}to{opacity:0;transform:translate(-100%);transform-origin:0 0}}.el-text{--el-text-font-size:var(--el-font-size-base);--el-text-color:var(--el-text-color-regular);align-self:center;color:var(--el-text-color);font-size:var(--el-text-font-size);margin:0;overflow-wrap:break-word;padding:0}.el-text.is-truncated{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-text.is-line-clamp{display:-webkit-inline-box;-webkit-box-orient:vertical;overflow:hidden}.el-text--large{--el-text-font-size:var(--el-font-size-medium)}.el-text--default{--el-text-font-size:var(--el-font-size-base)}.el-text--small{--el-text-font-size:var(--el-font-size-extra-small)}.el-text.el-text--primary{--el-text-color:var(--el-color-primary)}.el-text.el-text--success{--el-text-color:var(--el-color-success)}.el-text.el-text--warning{--el-text-color:var(--el-color-warning)}.el-text.el-text--danger{--el-text-color:var(--el-color-danger)}.el-text.el-text--error{--el-text-color:var(--el-color-error)}.el-text.el-text--info{--el-text-color:var(--el-color-info)}.el-text>.el-icon{vertical-align:-2px}.time-select{margin:5px 0;min-width:0}.time-select .el-picker-panel__content{margin:0;max-height:200px}.time-select-item{font-size:14px;line-height:20px;padding:8px 10px}.time-select-item.disabled{color:var(--el-datepicker-border-color);cursor:not-allowed}.time-select-item:hover{background-color:var(--el-fill-color-light);cursor:pointer;font-weight:700}.time-select .time-select-item.selected:not(.disabled){color:var(--el-color-primary);font-weight:700}.el-timeline-item{padding-bottom:20px;position:relative}.el-timeline-item__wrapper{padding-left:28px;position:relative;top:-3px}.el-timeline-item__tail{border-left:2px solid var(--el-timeline-node-color);height:100%;left:4px;position:absolute}.el-timeline-item .el-timeline-item__icon{color:var(--el-color-white);font-size:var(--el-font-size-small)}.el-timeline-item__node{align-items:center;background-color:var(--el-timeline-node-color);border-color:var(--el-timeline-node-color);border-radius:50%;box-sizing:border-box;display:flex;justify-content:center;position:absolute}.el-timeline-item__node--normal{height:var(--el-timeline-node-size-normal);left:-1px;width:var(--el-timeline-node-size-normal)}.el-timeline-item__node--large{height:var(--el-timeline-node-size-large);left:-2px;width:var(--el-timeline-node-size-large)}.el-timeline-item__node.is-hollow{background:var(--el-color-white);border-style:solid;border-width:2px}.el-timeline-item__node--primary{background-color:var(--el-color-primary);border-color:var(--el-color-primary)}.el-timeline-item__node--success{background-color:var(--el-color-success);border-color:var(--el-color-success)}.el-timeline-item__node--warning{background-color:var(--el-color-warning);border-color:var(--el-color-warning)}.el-timeline-item__node--danger{background-color:var(--el-color-danger);border-color:var(--el-color-danger)}.el-timeline-item__node--info{background-color:var(--el-color-info);border-color:var(--el-color-info)}.el-timeline-item__dot{align-items:center;display:flex;justify-content:center;position:absolute}.el-timeline-item__content{color:var(--el-text-color-primary)}.el-timeline-item__timestamp{color:var(--el-text-color-secondary);font-size:var(--el-font-size-small);line-height:1}.el-timeline-item__timestamp.is-top{margin-bottom:8px;padding-top:4px}.el-timeline-item__timestamp.is-bottom{margin-top:8px}.el-timeline{--el-timeline-node-size-normal:12px;--el-timeline-node-size-large:14px;--el-timeline-node-color:var(--el-border-color-light);font-size:var(--el-font-size-base);list-style:none;margin:0}.el-timeline .el-timeline-item:last-child .el-timeline-item__tail{display:none}.el-timeline .el-timeline-item__center{align-items:center;display:flex}.el-timeline .el-timeline-item__center .el-timeline-item__wrapper{width:100%}.el-timeline .el-timeline-item__center .el-timeline-item__tail{top:0}.el-timeline .el-timeline-item__center:first-child .el-timeline-item__tail{height:calc(50% + 10px);top:calc(50% - 10px)}.el-timeline .el-timeline-item__center:last-child .el-timeline-item__tail{display:block;height:calc(50% - 10px)}.el-tooltip-v2__content{--el-tooltip-v2-padding:5px 10px;--el-tooltip-v2-border-radius:4px;--el-tooltip-v2-border-color:var(--el-border-color);background-color:var(--el-color-white);border:1px solid var(--el-border-color);border-radius:var(--el-tooltip-v2-border-radius);color:var(--el-color-black);padding:var(--el-tooltip-v2-padding)}.el-tooltip-v2__arrow{color:var(--el-color-white);height:var(--el-tooltip-v2-arrow-height);left:var(--el-tooltip-v2-arrow-x);pointer-events:none;position:absolute;top:var(--el-tooltip-v2-arrow-y);width:var(--el-tooltip-v2-arrow-width)}.el-tooltip-v2__arrow:after,.el-tooltip-v2__arrow:before{border:var(--el-tooltip-v2-arrow-border-width) solid transparent;content:"";height:0;position:absolute;width:0}.el-tooltip-v2__content[data-side^=top] .el-tooltip-v2__arrow{bottom:0}.el-tooltip-v2__content[data-side^=top] .el-tooltip-v2__arrow:before{border-bottom:0;border-top-color:var(--el-color-white);border-top-width:var(--el-tooltip-v2-arrow-border-width);top:calc(100% - 1px)}.el-tooltip-v2__content[data-side^=top] .el-tooltip-v2__arrow:after{border-bottom:0;border-top-color:var(--el-border-color);border-top-width:var(--el-tooltip-v2-arrow-border-width);top:100%;z-index:-1}.el-tooltip-v2__content[data-side^=bottom] .el-tooltip-v2__arrow{top:0}.el-tooltip-v2__content[data-side^=bottom] .el-tooltip-v2__arrow:before{border-bottom-color:var(--el-color-white);border-bottom-width:var(--el-tooltip-v2-arrow-border-width);border-top:0;bottom:calc(100% - 1px)}.el-tooltip-v2__content[data-side^=bottom] .el-tooltip-v2__arrow:after{border-bottom-color:var(--el-border-color);border-bottom-width:var(--el-tooltip-v2-arrow-border-width);border-top:0;bottom:100%;z-index:-1}.el-tooltip-v2__content[data-side^=left] .el-tooltip-v2__arrow{right:0}.el-tooltip-v2__content[data-side^=left] .el-tooltip-v2__arrow:before{border-left-color:var(--el-color-white);border-left-width:var(--el-tooltip-v2-arrow-border-width);border-right:0;left:calc(100% - 1px)}.el-tooltip-v2__content[data-side^=left] .el-tooltip-v2__arrow:after{border-left-color:var(--el-border-color);border-left-width:var(--el-tooltip-v2-arrow-border-width);border-right:0;left:100%;z-index:-1}.el-tooltip-v2__content[data-side^=right] .el-tooltip-v2__arrow{left:0}.el-tooltip-v2__content[data-side^=right] .el-tooltip-v2__arrow:before{border-left:0;border-right-color:var(--el-color-white);border-right-width:var(--el-tooltip-v2-arrow-border-width);right:calc(100% - 1px)}.el-tooltip-v2__content[data-side^=right] .el-tooltip-v2__arrow:after{border-left:0;border-right-color:var(--el-border-color);border-right-width:var(--el-tooltip-v2-arrow-border-width);right:100%;z-index:-1}.el-tooltip-v2__content.is-dark{--el-tooltip-v2-border-color:transparent;color:var(--el-color-white)}.el-tooltip-v2__content.is-dark,.el-tooltip-v2__content.is-dark .el-tooltip-v2__arrow{background-color:var(--el-color-black);border-color:transparent}.el-transfer{--el-transfer-border-color:var(--el-border-color-lighter);--el-transfer-border-radius:var(--el-border-radius-base);--el-transfer-panel-width:200px;--el-transfer-panel-header-height:40px;--el-transfer-panel-header-bg-color:var(--el-fill-color-light);--el-transfer-panel-footer-height:40px;--el-transfer-panel-body-height:278px;--el-transfer-item-height:30px;--el-transfer-filter-height:32px;font-size:var(--el-font-size-base)}.el-transfer__buttons{display:inline-block;padding:0 30px;vertical-align:middle}.el-transfer__button{vertical-align:top}.el-transfer__button:nth-child(2){margin:0 0 0 10px}.el-transfer__button i,.el-transfer__button span{font-size:14px}.el-transfer__button .el-icon+span{margin-left:0}.el-transfer-panel{background:var(--el-bg-color-overlay);box-sizing:border-box;display:inline-block;max-height:100%;overflow:hidden;position:relative;text-align:left;vertical-align:middle;width:var(--el-transfer-panel-width)}.el-transfer-panel__body{border-bottom:1px solid var(--el-transfer-border-color);border-bottom-left-radius:var(--el-transfer-border-radius);border-bottom-right-radius:var(--el-transfer-border-radius);border-left:1px solid var(--el-transfer-border-color);border-right:1px solid var(--el-transfer-border-color);height:var(--el-transfer-panel-body-height);overflow:hidden}.el-transfer-panel__body.is-with-footer{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.el-transfer-panel__list{box-sizing:border-box;height:var(--el-transfer-panel-body-height);list-style:none;margin:0;overflow:auto;padding:6px 0}.el-transfer-panel__list.is-filterable{height:calc(100% - var(--el-transfer-filter-height) - 30px);padding-top:0}.el-transfer-panel__item{display:block!important;height:var(--el-transfer-item-height);line-height:var(--el-transfer-item-height);padding-left:15px}.el-transfer-panel__item+.el-transfer-panel__item{margin-left:0}.el-transfer-panel__item.el-checkbox{color:var(--el-text-color-regular)}.el-transfer-panel__item:hover{color:var(--el-color-primary)}.el-transfer-panel__item.el-checkbox .el-checkbox__label{box-sizing:border-box;display:block;line-height:var(--el-transfer-item-height);overflow:hidden;padding-left:22px;text-overflow:ellipsis;white-space:nowrap;width:100%}.el-transfer-panel__item .el-checkbox__input{position:absolute;top:8px}.el-transfer-panel__filter{box-sizing:border-box;padding:15px;text-align:center}.el-transfer-panel__filter .el-input__inner{box-sizing:border-box;display:inline-block;font-size:12px;height:var(--el-transfer-filter-height);width:100%}.el-transfer-panel__filter .el-icon-circle-close{cursor:pointer}.el-transfer-panel .el-transfer-panel__header{align-items:center;background:var(--el-transfer-panel-header-bg-color);border:1px solid var(--el-transfer-border-color);border-top-left-radius:var(--el-transfer-border-radius);border-top-right-radius:var(--el-transfer-border-radius);box-sizing:border-box;color:var(--el-color-black);display:flex;height:var(--el-transfer-panel-header-height);margin:0;padding-left:15px}.el-transfer-panel .el-transfer-panel__header .el-checkbox{align-items:center;display:flex;position:relative;width:100%}.el-transfer-panel .el-transfer-panel__header .el-checkbox .el-checkbox__label{color:var(--el-text-color-primary);font-size:16px;font-weight:400}.el-transfer-panel .el-transfer-panel__header .el-checkbox .el-checkbox__label span{color:var(--el-text-color-secondary);font-size:12px;font-weight:400;position:absolute;right:15px;top:50%;transform:translate3d(0,-50%,0)}.el-transfer-panel .el-transfer-panel__footer{background:var(--el-bg-color-overlay);border:1px solid var(--el-transfer-border-color);border-bottom-left-radius:var(--el-transfer-border-radius);border-bottom-right-radius:var(--el-transfer-border-radius);height:var(--el-transfer-panel-footer-height);margin:0;padding:0}.el-transfer-panel .el-transfer-panel__footer:after{content:"";display:inline-block;height:100%;vertical-align:middle}.el-transfer-panel .el-transfer-panel__footer .el-checkbox{color:var(--el-text-color-regular);padding-left:20px}.el-transfer-panel .el-transfer-panel__empty{color:var(--el-text-color-secondary);height:var(--el-transfer-item-height);line-height:var(--el-transfer-item-height);margin:0;padding:6px 15px 0;text-align:center}.el-transfer-panel .el-checkbox__label{padding-left:8px}.el-transfer-panel .el-checkbox__inner{border-radius:3px;height:14px;width:14px}.el-transfer-panel .el-checkbox__inner:after{height:6px;left:4px;width:3px}.el-tree{--el-tree-node-content-height:26px;--el-tree-node-hover-bg-color:var(--el-fill-color-light);--el-tree-text-color:var(--el-text-color-regular);--el-tree-expand-icon-color:var(--el-text-color-placeholder);background:var(--el-fill-color-blank);color:var(--el-tree-text-color);cursor:default;font-size:var(--el-font-size-base);position:relative}.el-tree__empty-block{height:100%;min-height:60px;position:relative;text-align:center;width:100%}.el-tree__empty-text{color:var(--el-text-color-secondary);font-size:var(--el-font-size-base);left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.el-tree__drop-indicator{background-color:var(--el-color-primary);height:1px;left:0;position:absolute;right:0}.el-tree-node{outline:none;white-space:nowrap}.el-tree-node:focus>.el-tree-node__content{background-color:var(--el-tree-node-hover-bg-color)}.el-tree-node.is-drop-inner>.el-tree-node__content .el-tree-node__label{background-color:var(--el-color-primary);color:#fff}.el-tree-node__content{--el-checkbox-height:var(--el-tree-node-content-height);align-items:center;cursor:pointer;display:flex;height:var(--el-tree-node-content-height)}.el-tree-node__content>.el-tree-node__expand-icon{box-sizing:content-box;padding:6px}.el-tree-node__content>label.el-checkbox{margin-right:8px}.el-tree-node__content:hover{background-color:var(--el-tree-node-hover-bg-color)}.el-tree.is-dragging .el-tree-node__content{cursor:move}.el-tree.is-dragging .el-tree-node__content *{pointer-events:none}.el-tree.is-dragging.is-drop-not-allow .el-tree-node__content{cursor:not-allowed}.el-tree-node__expand-icon{color:var(--el-tree-expand-icon-color);cursor:pointer;font-size:12px;transform:rotate(0);transition:transform var(--el-transition-duration) ease-in-out}.el-tree-node__expand-icon.expanded{transform:rotate(90deg)}.el-tree-node__expand-icon.is-leaf{color:transparent;cursor:default;visibility:hidden}.el-tree-node__expand-icon.is-hidden{visibility:hidden}.el-tree-node__loading-icon{color:var(--el-tree-expand-icon-color);font-size:var(--el-font-size-base);margin-right:8px}.el-tree-node>.el-tree-node__children{background-color:transparent;overflow:hidden}.el-tree-node.is-expanded>.el-tree-node__children{display:block}.el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content{background-color:var(--el-color-primary-light-9)}.el-tree-select{--el-tree-node-content-height:26px;--el-tree-node-hover-bg-color:var(--el-fill-color-light);--el-tree-text-color:var(--el-text-color-regular);--el-tree-expand-icon-color:var(--el-text-color-placeholder)}.el-tree-select__popper .el-tree-node__expand-icon{margin-left:8px}.el-tree-select__popper .el-tree-node.is-checked>.el-tree-node__content .el-select-dropdown__item.selected:after{content:none}.el-tree-select__popper .el-select-dropdown__list>.el-select-dropdown__item{padding-left:32px}.el-tree-select__popper .el-select-dropdown__item{background:transparent!important;flex:1;height:20px;line-height:20px;padding-left:0}.el-upload{--el-upload-dragger-padding-horizontal:40px;--el-upload-dragger-padding-vertical:10px;align-items:center;cursor:pointer;display:inline-flex;justify-content:center;outline:none}.el-upload.is-disabled{cursor:not-allowed}.el-upload.is-disabled:focus{color:inherit}.el-upload.is-disabled:focus,.el-upload.is-disabled:focus .el-upload-dragger{border-color:var(--el-border-color-darker)}.el-upload.is-disabled .el-upload-dragger{background-color:var(--el-disabled-bg-color);cursor:not-allowed}.el-upload.is-disabled .el-upload-dragger .el-upload__text{color:var(--el-text-color-placeholder)}.el-upload.is-disabled .el-upload-dragger .el-upload__text em{color:var(--el-disabled-text-color)}.el-upload.is-disabled .el-upload-dragger:hover{border-color:var(--el-border-color-darker)}.el-upload__input{display:none}.el-upload__tip{color:var(--el-text-color-regular);font-size:12px;margin-top:7px}.el-upload iframe{filter:alpha(opacity=0);left:0;opacity:0;position:absolute;top:0;z-index:-1}.el-upload--picture-card{--el-upload-picture-card-size:148px;align-items:center;background-color:var(--el-fill-color-lighter);border:1px dashed var(--el-border-color-darker);border-radius:6px;box-sizing:border-box;cursor:pointer;display:inline-flex;height:var(--el-upload-picture-card-size);justify-content:center;vertical-align:top;width:var(--el-upload-picture-card-size)}.el-upload--picture-card>i{color:var(--el-text-color-secondary);font-size:28px}.el-upload--picture-card:hover{border-color:var(--el-color-primary);color:var(--el-color-primary)}.el-upload.is-drag{display:block}.el-upload:focus{color:var(--el-color-primary)}.el-upload:focus,.el-upload:focus .el-upload-dragger{border-color:var(--el-color-primary)}.el-upload-dragger{background-color:var(--el-fill-color-blank);border:1px dashed var(--el-border-color);border-radius:6px;box-sizing:border-box;cursor:pointer;overflow:hidden;padding:var(--el-upload-dragger-padding-horizontal) var(--el-upload-dragger-padding-vertical);position:relative;text-align:center}.el-upload-dragger .el-icon--upload{color:var(--el-text-color-placeholder);font-size:67px;line-height:50px;margin-bottom:16px}.el-upload-dragger+.el-upload__tip{text-align:center}.el-upload-dragger~.el-upload__files{border-top:var(--el-border);margin-top:7px;padding-top:5px}.el-upload-dragger .el-upload__text{color:var(--el-text-color-regular);font-size:14px;text-align:center}.el-upload-dragger .el-upload__text em{color:var(--el-color-primary);font-style:normal}.el-upload-dragger:hover{border-color:var(--el-color-primary)}.el-upload-dragger.is-dragover{background-color:var(--el-color-primary-light-9);border:2px dashed var(--el-color-primary);padding:calc(var(--el-upload-dragger-padding-horizontal) - 1px) calc(var(--el-upload-dragger-padding-vertical) - 1px)}.el-upload-list{list-style:none;margin:10px 0 0;padding:0;position:relative}.el-upload-list__item{border-radius:4px;box-sizing:border-box;color:var(--el-text-color-regular);font-size:14px;margin-bottom:5px;position:relative;transition:all .5s cubic-bezier(.55,0,.1,1);width:100%}.el-upload-list__item .el-progress{position:absolute;top:20px;width:100%}.el-upload-list__item .el-progress__text{position:absolute;right:0;top:-13px}.el-upload-list__item .el-progress-bar{margin-right:0;padding-right:0}.el-upload-list__item .el-icon--upload-success{color:var(--el-color-success)}.el-upload-list__item .el-icon--close{color:var(--el-text-color-regular);cursor:pointer;display:none;opacity:.75;position:absolute;right:5px;top:50%;transform:translateY(-50%);transition:opacity var(--el-transition-duration)}.el-upload-list__item .el-icon--close:hover{color:var(--el-color-primary);opacity:1}.el-upload-list__item .el-icon--close-tip{color:var(--el-color-primary);cursor:pointer;display:none;font-size:12px;font-style:normal;opacity:1;position:absolute;right:5px;top:1px}.el-upload-list__item:hover{background-color:var(--el-fill-color-light)}.el-upload-list__item:hover .el-icon--close{display:inline-flex}.el-upload-list__item:hover .el-progress__text{display:none}.el-upload-list__item .el-upload-list__item-info{display:inline-flex;flex-direction:column;justify-content:center;margin-left:4px;width:calc(100% - 30px)}.el-upload-list__item.is-success .el-upload-list__item-status-label{display:inline-flex}.el-upload-list__item.is-success .el-upload-list__item-name:focus,.el-upload-list__item.is-success .el-upload-list__item-name:hover{color:var(--el-color-primary);cursor:pointer}.el-upload-list__item.is-success:focus:not(:hover) .el-icon--close-tip{display:inline-block}.el-upload-list__item.is-success:active,.el-upload-list__item.is-success:not(.focusing):focus{outline-width:0}.el-upload-list__item.is-success:active .el-icon--close-tip,.el-upload-list__item.is-success:not(.focusing):focus .el-icon--close-tip{display:none}.el-upload-list__item.is-success:focus .el-upload-list__item-status-label,.el-upload-list__item.is-success:hover .el-upload-list__item-status-label{display:none;opacity:0}.el-upload-list__item-name{align-items:center;color:var(--el-text-color-regular);display:inline-flex;font-size:var(--el-font-size-base);padding:0 4px;text-align:center;transition:color var(--el-transition-duration)}.el-upload-list__item-name .el-icon{color:var(--el-text-color-secondary);margin-right:6px}.el-upload-list__item-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-upload-list__item-status-label{align-items:center;display:none;height:100%;justify-content:center;line-height:inherit;position:absolute;right:5px;top:0;transition:opacity var(--el-transition-duration)}.el-upload-list__item-delete{color:var(--el-text-color-regular);display:none;font-size:12px;position:absolute;right:10px;top:0}.el-upload-list__item-delete:hover{color:var(--el-color-primary)}.el-upload-list--picture-card{--el-upload-list-picture-card-size:148px;display:inline-flex;flex-wrap:wrap;margin:0}.el-upload-list--picture-card .el-upload-list__item{background-color:var(--el-fill-color-blank);border:1px solid var(--el-border-color);border-radius:6px;box-sizing:border-box;display:inline-flex;height:var(--el-upload-list-picture-card-size);margin:0 8px 8px 0;overflow:hidden;padding:0;width:var(--el-upload-list-picture-card-size)}.el-upload-list--picture-card .el-upload-list__item .el-icon--check,.el-upload-list--picture-card .el-upload-list__item .el-icon--circle-check{color:#fff}.el-upload-list--picture-card .el-upload-list__item .el-icon--close{display:none}.el-upload-list--picture-card .el-upload-list__item:hover .el-upload-list__item-status-label{display:block;opacity:0}.el-upload-list--picture-card .el-upload-list__item:hover .el-progress__text{display:block}.el-upload-list--picture-card .el-upload-list__item .el-upload-list__item-name{display:none}.el-upload-list--picture-card .el-upload-list__item-thumbnail{height:100%;object-fit:contain;width:100%}.el-upload-list--picture-card .el-upload-list__item-status-label{background:var(--el-color-success);height:24px;right:-15px;text-align:center;top:-6px;transform:rotate(45deg);width:40px}.el-upload-list--picture-card .el-upload-list__item-status-label i{font-size:12px;margin-top:11px;transform:rotate(-45deg)}.el-upload-list--picture-card .el-upload-list__item-actions{align-items:center;background-color:var(--el-overlay-color-lighter);color:#fff;cursor:default;display:inline-flex;font-size:20px;height:100%;justify-content:center;left:0;opacity:0;position:absolute;top:0;transition:opacity var(--el-transition-duration);width:100%}.el-upload-list--picture-card .el-upload-list__item-actions span{cursor:pointer;display:none}.el-upload-list--picture-card .el-upload-list__item-actions span+span{margin-left:16px}.el-upload-list--picture-card .el-upload-list__item-actions .el-upload-list__item-delete{color:inherit;font-size:inherit;position:static}.el-upload-list--picture-card .el-upload-list__item-actions:hover{opacity:1}.el-upload-list--picture-card .el-upload-list__item-actions:hover span{display:inline-flex}.el-upload-list--picture-card .el-progress{bottom:auto;left:50%;top:50%;transform:translate(-50%,-50%);width:126px}.el-upload-list--picture-card .el-progress .el-progress__text{top:50%}.el-upload-list--picture .el-upload-list__item{align-items:center;background-color:var(--el-fill-color-blank);border:1px solid var(--el-border-color);border-radius:6px;box-sizing:border-box;display:flex;margin-top:10px;overflow:hidden;padding:10px;z-index:0}.el-upload-list--picture .el-upload-list__item .el-icon--check,.el-upload-list--picture .el-upload-list__item .el-icon--circle-check{color:#fff}.el-upload-list--picture .el-upload-list__item:hover .el-upload-list__item-status-label{display:inline-flex;opacity:0}.el-upload-list--picture .el-upload-list__item:hover .el-progress__text{display:block}.el-upload-list--picture .el-upload-list__item.is-success .el-upload-list__item-name i{display:none}.el-upload-list--picture .el-upload-list__item .el-icon--close{top:5px;transform:translateY(0)}.el-upload-list--picture .el-upload-list__item-thumbnail{align-items:center;background-color:var(--el-color-white);display:inline-flex;height:70px;justify-content:center;object-fit:contain;position:relative;width:70px;z-index:1}.el-upload-list--picture .el-upload-list__item-status-label{background:var(--el-color-success);height:26px;position:absolute;right:-17px;text-align:center;top:-7px;transform:rotate(45deg);width:46px}.el-upload-list--picture .el-upload-list__item-status-label i{font-size:12px;margin-top:12px;transform:rotate(-45deg)}.el-upload-list--picture .el-progress{position:relative;top:-7px}.el-upload-cover{cursor:default;height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:10}.el-upload-cover:after{content:"";display:inline-block;height:100%;vertical-align:middle}.el-upload-cover img{display:block;height:100%;width:100%}.el-upload-cover__label{background:var(--el-color-success);height:24px;right:-15px;text-align:center;top:-6px;transform:rotate(45deg);width:40px}.el-upload-cover__label i{color:#fff;font-size:12px;margin-top:11px;transform:rotate(-45deg)}.el-upload-cover__progress{display:inline-block;position:static;vertical-align:middle;width:243px}.el-upload-cover__progress+.el-upload__inner{opacity:0}.el-upload-cover__content{height:100%;left:0;position:absolute;top:0;width:100%}.el-upload-cover__interact{background-color:var(--el-overlay-color-light);bottom:0;height:100%;left:0;position:absolute;text-align:center;width:100%}.el-upload-cover__interact .btn{color:#fff;cursor:pointer;display:inline-block;font-size:14px;margin-top:60px;transition:var(--el-transition-md-fade);vertical-align:middle}.el-upload-cover__interact .btn i{margin-top:0}.el-upload-cover__interact .btn span{opacity:0;transition:opacity .15s linear}.el-upload-cover__interact .btn:not(:first-child){margin-left:35px}.el-upload-cover__interact .btn:hover{transform:translateY(-13px)}.el-upload-cover__interact .btn:hover span{opacity:1}.el-upload-cover__interact .btn i{color:#fff;display:block;font-size:24px;line-height:inherit;margin:0 auto 5px}.el-upload-cover__title{background-color:#fff;bottom:0;color:var(--el-text-color-primary);font-size:14px;font-weight:400;height:36px;left:0;line-height:36px;margin:0;overflow:hidden;padding:0 10px;position:absolute;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:100%}.el-upload-cover+.el-upload__inner{opacity:0;position:relative;z-index:1}.el-vl__wrapper{position:relative}.el-vl__wrapper.always-on .el-virtual-scrollbar,.el-vl__wrapper:hover .el-virtual-scrollbar{opacity:1}.el-vl__window{scrollbar-width:none}.el-vl__window::-webkit-scrollbar{display:none}.el-virtual-scrollbar{opacity:0;transition:opacity .34s ease-out}.el-virtual-scrollbar.always-on{opacity:1}.el-vg__wrapper{position:relative}.el-statistic{--el-statistic-title-font-weight:400;--el-statistic-title-font-size:var(--el-font-size-extra-small);--el-statistic-title-color:var(--el-text-color-regular);--el-statistic-content-font-weight:400;--el-statistic-content-font-size:var(--el-font-size-extra-large);--el-statistic-content-color:var(--el-text-color-primary)}.el-statistic__head{color:var(--el-statistic-title-color);font-size:var(--el-statistic-title-font-size);font-weight:var(--el-statistic-title-font-weight);line-height:20px;margin-bottom:4px}.el-statistic__content{color:var(--el-statistic-content-color);font-size:var(--el-statistic-content-font-size);font-weight:var(--el-statistic-content-font-weight)}.el-statistic__value{display:inline-block}.el-statistic__prefix{display:inline-block;margin-right:4px}.el-statistic__suffix{display:inline-block;margin-left:4px}.el-tour{--el-tour-width:520px;--el-tour-padding-primary:12px;--el-tour-font-line-height:var(--el-font-line-height-primary);--el-tour-title-font-size:16px;--el-tour-title-text-color:var(--el-text-color-primary);--el-tour-title-font-weight:400;--el-tour-close-color:var(--el-color-info);--el-tour-font-size:14px;--el-tour-color:var(--el-text-color-primary);--el-tour-bg-color:var(--el-bg-color);--el-tour-border-radius:4px}.el-tour__hollow{transition:all var(--el-transition-duration) ease}.el-tour__content{border-radius:var(--el-tour-border-radius);box-shadow:var(--el-box-shadow-light);outline:none;overflow-wrap:break-word;padding:var(--el-tour-padding-primary);width:var(--el-tour-width)}.el-tour__arrow,.el-tour__content{background:var(--el-tour-bg-color);box-sizing:border-box}.el-tour__arrow{height:10px;pointer-events:none;position:absolute;transform:rotate(45deg);width:10px}.el-tour__content[data-side^=top] .el-tour__arrow{border-left-color:transparent;border-top-color:transparent}.el-tour__content[data-side^=bottom] .el-tour__arrow{border-bottom-color:transparent;border-right-color:transparent}.el-tour__content[data-side^=left] .el-tour__arrow{border-bottom-color:transparent;border-left-color:transparent}.el-tour__content[data-side^=right] .el-tour__arrow{border-right-color:transparent;border-top-color:transparent}.el-tour__content[data-side^=top] .el-tour__arrow{bottom:-5px}.el-tour__content[data-side^=bottom] .el-tour__arrow{top:-5px}.el-tour__content[data-side^=left] .el-tour__arrow{right:-5px}.el-tour__content[data-side^=right] .el-tour__arrow{left:-5px}.el-tour__closebtn{background:transparent;border:none;cursor:pointer;font-size:var(--el-message-close-size,16px);height:40px;outline:none;padding:0;position:absolute;right:0;top:0;width:40px}.el-tour__closebtn .el-tour__close{color:var(--el-tour-close-color);font-size:inherit}.el-tour__closebtn:focus .el-tour__close,.el-tour__closebtn:hover .el-tour__close{color:var(--el-color-primary)}.el-tour__header{padding-bottom:var(--el-tour-padding-primary)}.el-tour__header.show-close{padding-right:calc(var(--el-tour-padding-primary) + var(--el-message-close-size, 16px))}.el-tour__title{color:var(--el-tour-title-text-color);font-size:var(--el-tour-title-font-size);font-weight:var(--el-tour-title-font-weight);line-height:var(--el-tour-font-line-height)}.el-tour__body{color:var(--el-tour-text-color);font-size:var(--el-tour-font-size)}.el-tour__body img,.el-tour__body video{max-width:100%}.el-tour__footer{box-sizing:border-box;display:flex;justify-content:space-between;padding-top:var(--el-tour-padding-primary)}.el-tour__content .el-tour-indicators{display:inline-block;flex:1}.el-tour__content .el-tour-indicator{background:var(--el-color-info-light-9);border-radius:50%;display:inline-block;height:6px;margin-right:6px;width:6px}.el-tour__content .el-tour-indicator.is-active{background:var(--el-color-primary)}.el-tour.el-tour--primary{--el-tour-title-text-color:#fff;--el-tour-text-color:#fff;--el-tour-bg-color:var(--el-color-primary);--el-tour-close-color:#fff}.el-tour.el-tour--primary .el-tour__closebtn:focus .el-tour__close,.el-tour.el-tour--primary .el-tour__closebtn:hover .el-tour__close{color:var(--el-tour-title-text-color)}.el-tour.el-tour--primary .el-button--default{background:#fff;border-color:var(--el-color-primary);color:var(--el-color-primary)}.el-tour.el-tour--primary .el-button--primary{border-color:#fff}.el-tour.el-tour--primary .el-tour-indicator{background:#ffffff26}.el-tour.el-tour--primary .el-tour-indicator.is-active{background:#fff}.el-tour-parent--hidden{overflow:hidden}.el-anchor{--el-anchor-bg-color:var(--el-bg-color);--el-anchor-padding-indent:14px;--el-anchor-line-height:22px;--el-anchor-font-size:12px;--el-anchor-color:var(--el-text-color-secondary);--el-anchor-active-color:var(--el-color-primary);--el-anchor-marker-bg-color:var(--el-color-primary);background-color:var(--el-anchor-bg-color);position:relative}.el-anchor__marker{background-color:var(--el-anchor-marker-bg-color);border-radius:4px;opacity:0;position:absolute;z-index:0}.el-anchor.el-anchor--vertical .el-anchor__marker{height:14px;left:0;top:8px;transition:top .25s ease-in-out,opacity .25s;width:4px}.el-anchor.el-anchor--vertical .el-anchor__list{padding-left:var(--el-anchor-padding-indent)}.el-anchor.el-anchor--vertical.el-anchor--underline:before{background-color:#0505050f;content:"";height:100%;left:0;position:absolute;width:2px}.el-anchor.el-anchor--vertical.el-anchor--underline .el-anchor__marker{border-radius:unset;width:2px}.el-anchor.el-anchor--horizontal .el-anchor__marker{bottom:0;height:2px;transition:left .25s ease-in-out,opacity .25s,width .25s;width:20px}.el-anchor.el-anchor--horizontal .el-anchor__list{display:flex;padding-bottom:4px}.el-anchor.el-anchor--horizontal .el-anchor__list .el-anchor__item{padding-left:16px}.el-anchor.el-anchor--horizontal .el-anchor__list .el-anchor__item:first-child{padding-left:0}.el-anchor.el-anchor--horizontal.el-anchor--underline:before{background-color:#0505050f;bottom:0;content:"";height:2px;position:absolute;width:100%}.el-anchor.el-anchor--horizontal.el-anchor--underline .el-anchor__marker{border-radius:unset;height:2px}.el-anchor__item{display:flex;flex-direction:column;overflow:hidden}.el-anchor__link{cursor:pointer;font-size:var(--el-anchor-font-size);line-height:var(--el-anchor-line-height);max-width:100%;outline:none;overflow:hidden;padding:4px 0;text-decoration:none;text-overflow:ellipsis;transition:color var(--el-transition-duration);white-space:nowrap}.el-anchor__link,.el-anchor__link:focus,.el-anchor__link:hover{color:var(--el-anchor-color)}.el-anchor__link.is-active{color:var(--el-anchor-active-color)}.el-anchor .el-anchor__list .el-anchor__item a{display:inline-block}.el-segmented--vertical{flex-direction:column}.el-segmented--vertical .el-segmented__item{padding:11px}.el-segmented{--el-segmented-color:var(--el-text-color-regular);--el-segmented-bg-color:var(--el-fill-color-light);--el-segmented-padding:2px;--el-segmented-item-selected-color:var(--el-color-white);--el-segmented-item-selected-bg-color:var(--el-color-primary);--el-segmented-item-selected-disabled-bg-color:var(--el-color-primary-light-5);--el-segmented-item-hover-color:var(--el-text-color-primary);--el-segmented-item-hover-bg-color:var(--el-fill-color-dark);--el-segmented-item-active-bg-color:var(--el-fill-color-darker);--el-segmented-item-disabled-color:var(--el-text-color-placeholder);align-items:stretch;background:var(--el-segmented-bg-color);border-radius:var(--el-border-radius-base);box-sizing:border-box;color:var(--el-segmented-color);display:inline-flex;font-size:14px;min-height:32px;padding:var(--el-segmented-padding)}.el-segmented__group{align-items:stretch;display:flex;position:relative;width:100%}.el-segmented__item-selected{background:var(--el-segmented-item-selected-bg-color);border-radius:calc(var(--el-border-radius-base) - 2px);height:100%;left:0;pointer-events:none;position:absolute;top:0;transition:all .3s;width:10px}.el-segmented__item-selected.is-disabled{background:var(--el-segmented-item-selected-disabled-bg-color)}.el-segmented__item-selected.is-focus-visible:before{border-radius:inherit;content:"";top:0;right:0;bottom:0;left:0;outline:2px solid var(--el-segmented-item-selected-bg-color);outline-offset:1px;position:absolute}.el-segmented__item{align-items:center;border-radius:calc(var(--el-border-radius-base) - 2px);cursor:pointer;display:flex;flex:1;padding:0 11px}.el-segmented__item:not(.is-disabled):not(.is-selected):hover{background:var(--el-segmented-item-hover-bg-color);color:var(--el-segmented-item-hover-color)}.el-segmented__item:not(.is-disabled):not(.is-selected):active{background:var(--el-segmented-item-active-bg-color)}.el-segmented__item.is-selected,.el-segmented__item.is-selected.is-disabled{color:var(--el-segmented-item-selected-color)}.el-segmented__item.is-disabled{color:var(--el-segmented-item-disabled-color);cursor:not-allowed}.el-segmented__item-input{height:0;margin:0;opacity:0;pointer-events:none;position:absolute;width:0}.el-segmented__item-label{flex:1;line-height:normal;overflow:hidden;text-align:center;text-overflow:ellipsis;transition:color .3s;white-space:nowrap;z-index:1}.el-segmented.is-block{display:flex}.el-segmented.is-block .el-segmented__item{min-width:0}.el-segmented--large{border-radius:var(--el-border-radius-base);font-size:16px;min-height:40px}.el-segmented--large .el-segmented__item-selected{border-radius:calc(var(--el-border-radius-base) - 2px)}.el-segmented--large .el-segmented--vertical .el-segmented__item{padding:11px}.el-segmented--large .el-segmented__item{border-radius:calc(var(--el-border-radius-base) - 2px);padding:0 11px}.el-segmented--small{border-radius:calc(var(--el-border-radius-base) - 1px);font-size:14px;min-height:24px}.el-segmented--small .el-segmented__item-selected{border-radius:calc(var(--el-border-radius-base) - 3px)}.el-segmented--small .el-segmented--vertical .el-segmented__item{padding:7px}.el-segmented--small .el-segmented__item{border-radius:calc(var(--el-border-radius-base) - 3px);padding:0 7px}.el-mention{position:relative;width:100%}.el-mention__popper.el-popper{background:var(--el-bg-color-overlay);box-shadow:var(--el-box-shadow-light)}.el-mention__popper.el-popper,.el-mention__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-mention__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-left-color:transparent;border-top-color:transparent}.el-mention__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent;border-right-color:transparent}.el-mention__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:transparent;border-left-color:transparent}.el-mention__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent;border-top-color:transparent}.el-mention-dropdown{--el-mention-font-size:var(--el-font-size-base);--el-mention-bg-color:var(--el-bg-color-overlay);--el-mention-shadow:var(--el-box-shadow-light);--el-mention-border:1px solid var(--el-border-color-light);--el-mention-option-color:var(--el-text-color-regular);--el-mention-option-height:34px;--el-mention-option-min-width:100px;--el-mention-option-hover-background:var(--el-fill-color-light);--el-mention-option-selected-color:var(--el-color-primary);--el-mention-option-disabled-color:var(--el-text-color-placeholder);--el-mention-option-loading-color:var(--el-text-color-secondary);--el-mention-option-loading-padding:10px 0;--el-mention-max-height:174px;--el-mention-padding:6px 0;--el-mention-header-padding:10px;--el-mention-footer-padding:10px}.el-mention-dropdown__item{box-sizing:border-box;color:var(--el-mention-option-color);cursor:pointer;font-size:var(--el-mention-font-size);height:var(--el-mention-option-height);line-height:var(--el-mention-option-height);min-width:var(--el-mention-option-min-width);overflow:hidden;padding:0 20px;position:relative;text-overflow:ellipsis;white-space:nowrap}.el-mention-dropdown__item.is-hovering{background-color:var(--el-mention-option-hover-background)}.el-mention-dropdown__item.is-selected{color:var(--el-mention-option-selected-color);font-weight:700}.el-mention-dropdown__item.is-disabled{background-color:unset;color:var(--el-mention-option-disabled-color);cursor:not-allowed}.el-mention-dropdown{border-radius:var(--el-border-radius-base);box-sizing:border-box;z-index:calc(var(--el-index-top) + 1)}.el-mention-dropdown__loading{color:var(--el-mention-option-loading-color);font-size:12px;margin:0;min-width:var(--el-mention-option-min-width);padding:10px 0;text-align:center}.el-mention-dropdown__wrap{max-height:var(--el-mention-max-height)}.el-mention-dropdown__list{box-sizing:border-box;list-style:none;margin:0;padding:var(--el-mention-padding)}.el-mention-dropdown__header{border-bottom:var(--el-mention-border);padding:var(--el-mention-header-padding)}.el-mention-dropdown__footer{border-top:var(--el-mention-border);padding:var(--el-mention-footer-padding)}.el-splitter{display:flex;height:100%;margin:0;padding:0;position:relative;width:100%}.el-splitter__mask{top:0;right:0;bottom:0;left:0;position:absolute;z-index:999}.el-splitter__mask-horizontal{cursor:col-resize}.el-splitter__mask-vertical{cursor:row-resize}.el-splitter__horizontal{flex-direction:row}.el-splitter__vertical{flex-direction:column}.el-splitter-bar{flex:none;position:relative;-webkit-user-select:none;user-select:none}.el-splitter-bar__disable{cursor:auto!important}.el-splitter-bar__disable:before{background-color:var(--el-border-color-light)!important}.el-splitter-bar__dragger{background:transparent;z-index:1}.el-splitter-bar__dragger,.el-splitter-bar__dragger:before{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.el-splitter-bar__dragger:before{background-color:var(--el-border-color-light);content:""}.el-splitter-bar__dragger:hover:before{background-color:var(--el-color-primary-light-5)}.el-splitter-bar__dragger-horizontal:before{height:100%;width:2px}.el-splitter-bar__dragger-vertical:before{height:2px;width:100%}.el-splitter-bar__dragger-active:before{background-color:var(--el-color-primary-light-3)}.el-splitter-bar:hover .el-splitter-bar__collapse-icon{opacity:1}.el-splitter-bar__collapse-icon{align-items:center;background:var(--el-border-color-light);border-radius:2px;cursor:pointer;display:flex;justify-content:center;opacity:0;position:absolute;z-index:9}.el-splitter-bar__collapse-icon:hover{background-color:var(--el-color-primary-light-5);opacity:1}.el-splitter-bar__horizontal-collapse-icon-start{height:24px;left:-12px;top:50%;transform:translate(-50%,-50%);width:16px}.el-splitter-bar__horizontal-collapse-icon-end{height:24px;left:12px;top:50%;transform:translate(-50%,-50%);width:16px}.el-splitter-bar__vertical-collapse-icon-start{height:16px;right:50%;top:-12px;transform:translate(50%,-50%);width:24px}.el-splitter-bar__vertical-collapse-icon-end{height:16px;right:50%;top:12px;transform:translate(50%,-50%);width:24px}.el-splitter-panel{box-sizing:border-box;flex-grow:0;overflow:auto;scrollbar-width:thin}html.dark{color-scheme:dark;--el-color-primary:#409eff;--el-color-primary-light-3:rgb(51,117,185);--el-color-primary-light-5:rgb(42,89,138);--el-color-primary-light-7:rgb(33,61,91);--el-color-primary-light-8:rgb(29,48,67);--el-color-primary-light-9:rgb(24,34,43);--el-color-primary-dark-2:rgb(102,177,255);--el-color-success:#67c23a;--el-color-success-light-3:rgb(78,142,47);--el-color-success-light-5:rgb(62,107,39);--el-color-success-light-7:rgb(45,72,31);--el-color-success-light-8:rgb(37,55,28);--el-color-success-light-9:rgb(28,37,24);--el-color-success-dark-2:rgb(133,206,97);--el-color-warning:#e6a23c;--el-color-warning-light-3:rgb(167,119,48);--el-color-warning-light-5:rgb(125,91,40);--el-color-warning-light-7:rgb(83,63,32);--el-color-warning-light-8:rgb(62,48,28);--el-color-warning-light-9:rgb(41,34,24);--el-color-warning-dark-2:rgb(235,181,99);--el-color-danger:#f56c6c;--el-color-danger-light-3:rgb(178,82,82);--el-color-danger-light-5:rgb(133,64,64);--el-color-danger-light-7:rgb(88,46,46);--el-color-danger-light-8:rgb(65,38,38);--el-color-danger-light-9:rgb(42,29,29);--el-color-danger-dark-2:rgb(247,137,137);--el-color-error:#f56c6c;--el-color-error-light-3:rgb(178,82,82);--el-color-error-light-5:rgb(133,64,64);--el-color-error-light-7:rgb(88,46,46);--el-color-error-light-8:rgb(65,38,38);--el-color-error-light-9:rgb(42,29,29);--el-color-error-dark-2:rgb(247,137,137);--el-color-info:#909399;--el-color-info-light-3:rgb(107,109,113);--el-color-info-light-5:rgb(82,84,87);--el-color-info-light-7:rgb(57,58,60);--el-color-info-light-8:rgb(45,45,47);--el-color-info-light-9:rgb(32,33,33);--el-color-info-dark-2:rgb(166,169,173);--el-box-shadow:0px 12px 32px 4px rgba(0,0,0,.36),0px 8px 20px rgba(0,0,0,.72);--el-box-shadow-light:0px 0px 12px rgba(0,0,0,.72);--el-box-shadow-lighter:0px 0px 6px rgba(0,0,0,.72);--el-box-shadow-dark:0px 16px 48px 16px rgba(0,0,0,.72),0px 12px 32px #000000,0px 8px 16px -8px #000000;--el-bg-color-page:#0a0a0a;--el-bg-color:#141414;--el-bg-color-overlay:#1d1e1f;--el-text-color-primary:#E5EAF3;--el-text-color-regular:#CFD3DC;--el-text-color-secondary:#A3A6AD;--el-text-color-placeholder:#8D9095;--el-text-color-disabled:#6C6E72;--el-border-color-darker:#636466;--el-border-color-dark:#58585B;--el-border-color:#4C4D4F;--el-border-color-light:#414243;--el-border-color-lighter:#363637;--el-border-color-extra-light:#2B2B2C;--el-fill-color-darker:#424243;--el-fill-color-dark:#39393A;--el-fill-color:#303030;--el-fill-color-light:#262727;--el-fill-color-lighter:#1D1D1D;--el-fill-color-extra-light:#191919;--el-fill-color-blank:transparent;--el-mask-color:rgba(0,0,0,.8);--el-mask-color-extra-light:rgba(0,0,0,.3)}html.dark .el-button{--el-button-disabled-text-color:rgba(255,255,255,.5)}html.dark .el-card{--el-card-bg-color:var(--el-bg-color-overlay)}html.dark .el-empty{--el-empty-fill-color-0:var(--el-color-black);--el-empty-fill-color-1:#4b4b52;--el-empty-fill-color-2:#36383d;--el-empty-fill-color-3:#1e1e20;--el-empty-fill-color-4:#262629;--el-empty-fill-color-5:#202124;--el-empty-fill-color-6:#212224;--el-empty-fill-color-7:#1b1c1f;--el-empty-fill-color-8:#1c1d1f;--el-empty-fill-color-9:#18181a}:root{--el-color-white:#ffffff;--el-color-black:#000000;--el-color-primary-rgb:64,158,255;--el-color-success-rgb:103,194,58;--el-color-warning-rgb:230,162,60;--el-color-danger-rgb:245,108,108;--el-color-error-rgb:245,108,108;--el-color-info-rgb:144,147,153;--el-font-size-extra-large:20px;--el-font-size-large:18px;--el-font-size-medium:16px;--el-font-size-base:14px;--el-font-size-small:13px;--el-font-size-extra-small:12px;--el-font-family:"Helvetica Neue",Helvetica,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","微软雅黑",Arial,sans-serif;--el-font-weight-primary:500;--el-font-line-height-primary:24px;--el-index-normal:1;--el-index-top:1000;--el-index-popper:2000;--el-border-radius-base:4px;--el-border-radius-small:2px;--el-border-radius-round:20px;--el-border-radius-circle:100%;--el-transition-duration:.3s;--el-transition-duration-fast:.2s;--el-transition-function-ease-in-out-bezier:cubic-bezier(.645,.045,.355,1);--el-transition-function-fast-bezier:cubic-bezier(.23,1,.32,1);--el-transition-all:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);--el-transition-fade:opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-md-fade:transform var(--el-transition-duration) var(--el-transition-function-fast-bezier),opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-fade-linear:opacity var(--el-transition-duration-fast) linear;--el-transition-border:border-color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-box-shadow:box-shadow var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-color:color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-component-size-large:40px;--el-component-size:32px;--el-component-size-small:24px;color-scheme:light;--el-color-primary:#409eff;--el-color-primary-light-3:rgb(121,187,255);--el-color-primary-light-5:rgb(160,207,255);--el-color-primary-light-7:rgb(198,226,255);--el-color-primary-light-8:rgb(217,236,255);--el-color-primary-light-9:rgb(236,245,255);--el-color-primary-dark-2:rgb(51,126,204);--el-color-success:#67c23a;--el-color-success-light-3:rgb(149,212,117);--el-color-success-light-5:rgb(179,225,157);--el-color-success-light-7:rgb(209,237,196);--el-color-success-light-8:rgb(225,243,216);--el-color-success-light-9:rgb(240,249,235);--el-color-success-dark-2:rgb(82,155,46);--el-color-warning:#e6a23c;--el-color-warning-light-3:rgb(238,190,119);--el-color-warning-light-5:rgb(243,209,158);--el-color-warning-light-7:rgb(248,227,197);--el-color-warning-light-8:rgb(250,236,216);--el-color-warning-light-9:rgb(253,246,236);--el-color-warning-dark-2:rgb(184,130,48);--el-color-danger:#f56c6c;--el-color-danger-light-3:rgb(248,152,152);--el-color-danger-light-5:rgb(250,182,182);--el-color-danger-light-7:rgb(252,211,211);--el-color-danger-light-8:rgb(253,226,226);--el-color-danger-light-9:rgb(254,240,240);--el-color-danger-dark-2:rgb(196,86,86);--el-color-error:#f56c6c;--el-color-error-light-3:rgb(248,152,152);--el-color-error-light-5:rgb(250,182,182);--el-color-error-light-7:rgb(252,211,211);--el-color-error-light-8:rgb(253,226,226);--el-color-error-light-9:rgb(254,240,240);--el-color-error-dark-2:rgb(196,86,86);--el-color-info:#909399;--el-color-info-light-3:rgb(177,179,184);--el-color-info-light-5:rgb(200,201,204);--el-color-info-light-7:rgb(222,223,224);--el-color-info-light-8:rgb(233,233,235);--el-color-info-light-9:rgb(244,244,245);--el-color-info-dark-2:rgb(115,118,122);--el-bg-color:#ffffff;--el-bg-color-page:#f2f3f5;--el-bg-color-overlay:#ffffff;--el-text-color-primary:#303133;--el-text-color-regular:#606266;--el-text-color-secondary:#909399;--el-text-color-placeholder:#a8abb2;--el-text-color-disabled:#c0c4cc;--el-border-color:#dcdfe6;--el-border-color-light:#e4e7ed;--el-border-color-lighter:#ebeef5;--el-border-color-extra-light:#f2f6fc;--el-border-color-dark:#d4d7de;--el-border-color-darker:#cdd0d6;--el-fill-color:#f0f2f5;--el-fill-color-light:#f5f7fa;--el-fill-color-lighter:#fafafa;--el-fill-color-extra-light:#fafcff;--el-fill-color-dark:#ebedf0;--el-fill-color-darker:#e6e8eb;--el-fill-color-blank:#ffffff;--el-box-shadow:0px 12px 32px 4px rgba(0,0,0,.04),0px 8px 20px rgba(0,0,0,.08);--el-box-shadow-light:0px 0px 12px rgba(0,0,0,.12);--el-box-shadow-lighter:0px 0px 6px rgba(0,0,0,.12);--el-box-shadow-dark:0px 16px 48px 16px rgba(0,0,0,.08),0px 12px 32px rgba(0,0,0,.12),0px 8px 16px -8px rgba(0,0,0,.16);--el-disabled-bg-color:var(--el-fill-color-light);--el-disabled-text-color:var(--el-text-color-placeholder);--el-disabled-border-color:var(--el-border-color-light);--el-overlay-color:rgba(0,0,0,.8);--el-overlay-color-light:rgba(0,0,0,.7);--el-overlay-color-lighter:rgba(0,0,0,.5);--el-mask-color:rgba(255,255,255,.9);--el-mask-color-extra-light:rgba(255,255,255,.3);--el-border-width:1px;--el-border-style:solid;--el-border-color-hover:var(--el-text-color-disabled);--el-border:var(--el-border-width) var(--el-border-style) var(--el-border-color);--el-svg-monochrome-grey:var(--el-border-color)}.el-icon-loading{animation:rotating 2s linear infinite}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.el-icon{--color:inherit;align-items:center;display:inline-flex;height:1em;justify-content:center;line-height:1em;position:relative;width:1em;fill:currentColor;color:var(--color);font-size:inherit}.el-icon.is-loading{animation:rotating 2s linear infinite}.el-icon svg{height:1em;width:1em}.el-date-table{font-size:12px;-webkit-user-select:none;user-select:none}.el-date-table.is-week-mode .el-date-table__row:hover .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-date-table.is-week-mode .el-date-table__row:hover td.available:hover{color:var(--el-datepicker-text-color)}.el-date-table.is-week-mode .el-date-table__row:hover td:first-child .el-date-table-cell{border-bottom-left-radius:15px;border-top-left-radius:15px;margin-left:5px}.el-date-table.is-week-mode .el-date-table__row:hover td:last-child .el-date-table-cell{border-bottom-right-radius:15px;border-top-right-radius:15px;margin-right:5px}.el-date-table.is-week-mode .el-date-table__row.current .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-date-table td{box-sizing:border-box;cursor:pointer;height:30px;padding:4px 0;position:relative;text-align:center;width:32px}.el-date-table td .el-date-table-cell{box-sizing:border-box;height:30px;padding:3px 0}.el-date-table td .el-date-table-cell .el-date-table-cell__text{border-radius:50%;display:block;height:24px;left:50%;line-height:24px;margin:0 auto;position:absolute;transform:translate(-50%);width:24px}.el-date-table td.next-month,.el-date-table td.prev-month{color:var(--el-datepicker-off-text-color)}.el-date-table td.today{position:relative}.el-date-table td.today .el-date-table-cell__text{color:var(--el-color-primary);font-weight:700}.el-date-table td.today.end-date .el-date-table-cell__text,.el-date-table td.today.start-date .el-date-table-cell__text{color:#fff}.el-date-table td.available:hover{color:var(--el-datepicker-hover-text-color)}.el-date-table td.in-range .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-date-table td.in-range .el-date-table-cell:hover{background-color:var(--el-datepicker-inrange-hover-bg-color)}.el-date-table td.current:not(.disabled) .el-date-table-cell__text{background-color:var(--el-datepicker-active-color);color:#fff}.el-date-table td.current:not(.disabled):focus-visible .el-date-table-cell__text{outline:2px solid var(--el-datepicker-active-color);outline-offset:1px}.el-date-table td.end-date .el-date-table-cell,.el-date-table td.start-date .el-date-table-cell{color:#fff}.el-date-table td.end-date .el-date-table-cell__text,.el-date-table td.start-date .el-date-table-cell__text{background-color:var(--el-datepicker-active-color)}.el-date-table td.start-date .el-date-table-cell{border-bottom-left-radius:15px;border-top-left-radius:15px;margin-left:5px}.el-date-table td.end-date .el-date-table-cell{border-bottom-right-radius:15px;border-top-right-radius:15px;margin-right:5px}.el-date-table td.disabled .el-date-table-cell{background-color:var(--el-fill-color-light);color:var(--el-text-color-placeholder);cursor:not-allowed;opacity:1}.el-date-table td.selected .el-date-table-cell{border-radius:15px;margin-left:5px;margin-right:5px}.el-date-table td.selected .el-date-table-cell__text{background-color:var(--el-datepicker-active-color);border-radius:15px;color:#fff}.el-date-table td.week{color:var(--el-datepicker-off-text-color);cursor:default;font-size:80%}.el-date-table td:focus{outline:none}.el-date-table th{border-bottom:1px solid var(--el-border-color-lighter);color:var(--el-datepicker-header-text-color);font-weight:400;padding:5px}.el-date-table th.el-date-table__week-header{padding:0;width:24px}.el-month-table{border-collapse:collapse;font-size:12px;margin:-1px}.el-month-table td{cursor:pointer;padding:8px 0;position:relative;text-align:center;width:68px}.el-month-table td .el-date-table-cell{box-sizing:border-box;height:48px;padding:6px 0}.el-month-table td.today .el-date-table-cell__text{color:var(--el-color-primary);font-weight:700}.el-month-table td.today.end-date .el-date-table-cell__text,.el-month-table td.today.start-date .el-date-table-cell__text{color:#fff}.el-month-table td.disabled .el-date-table-cell__text{background-color:var(--el-fill-color-light);color:var(--el-text-color-placeholder);cursor:not-allowed}.el-month-table td.disabled .el-date-table-cell__text:hover{color:var(--el-text-color-placeholder)}.el-month-table td .el-date-table-cell__text{border-radius:18px;color:var(--el-datepicker-text-color);display:block;height:36px;left:50%;line-height:36px;margin:0 auto;position:absolute;transform:translate(-50%);width:54px}.el-month-table td .el-date-table-cell__text:hover{color:var(--el-datepicker-hover-text-color)}.el-month-table td.in-range .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-month-table td.in-range .el-date-table-cell:hover{background-color:var(--el-datepicker-inrange-hover-bg-color)}.el-month-table td.end-date .el-date-table-cell,.el-month-table td.start-date .el-date-table-cell{color:#fff}.el-month-table td.end-date .el-date-table-cell__text,.el-month-table td.start-date .el-date-table-cell__text{background-color:var(--el-datepicker-active-color);color:#fff}.el-month-table td.start-date .el-date-table-cell{border-bottom-left-radius:24px;border-top-left-radius:24px;margin-left:3px}.el-month-table td.end-date .el-date-table-cell{border-bottom-right-radius:24px;border-top-right-radius:24px;margin-right:3px}.el-month-table td.current:not(.disabled) .el-date-table-cell{border-radius:24px;margin-left:3px;margin-right:3px}.el-month-table td.current:not(.disabled) .el-date-table-cell__text{background-color:var(--el-datepicker-active-color);color:#fff}.el-month-table td:focus-visible{outline:none}.el-month-table td:focus-visible .el-date-table-cell__text{outline:2px solid var(--el-datepicker-active-color);outline-offset:1px}.el-year-table{border-collapse:collapse;font-size:12px;margin:-1px}.el-year-table .el-icon{color:var(--el-datepicker-icon-color)}.el-year-table td{cursor:pointer;padding:8px 0;position:relative;text-align:center;width:68px}.el-year-table td .el-date-table-cell{box-sizing:border-box;height:48px;padding:6px 0}.el-year-table td.today .el-date-table-cell__text{color:var(--el-color-primary);font-weight:700}.el-year-table td.today.end-date .el-date-table-cell__text,.el-year-table td.today.start-date .el-date-table-cell__text{color:#fff}.el-year-table td.disabled .el-date-table-cell__text{background-color:var(--el-fill-color-light);color:var(--el-text-color-placeholder);cursor:not-allowed}.el-year-table td.disabled .el-date-table-cell__text:hover{color:var(--el-text-color-placeholder)}.el-year-table td .el-date-table-cell__text{border-radius:18px;color:var(--el-datepicker-text-color);display:block;height:36px;left:50%;line-height:36px;margin:0 auto;position:absolute;transform:translate(-50%);width:60px}.el-year-table td .el-date-table-cell__text:hover{color:var(--el-datepicker-hover-text-color)}.el-year-table td.in-range .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-year-table td.in-range .el-date-table-cell:hover{background-color:var(--el-datepicker-inrange-hover-bg-color)}.el-year-table td.end-date .el-date-table-cell,.el-year-table td.start-date .el-date-table-cell{color:#fff}.el-year-table td.end-date .el-date-table-cell__text,.el-year-table td.start-date .el-date-table-cell__text{background-color:var(--el-datepicker-active-color);color:#fff}.el-year-table td.start-date .el-date-table-cell{border-bottom-left-radius:24px;border-top-left-radius:24px}.el-year-table td.end-date .el-date-table-cell{border-bottom-right-radius:24px;border-top-right-radius:24px}.el-year-table td.current:not(.disabled) .el-date-table-cell__text{background-color:var(--el-datepicker-active-color);color:#fff}.el-year-table td:focus-visible{outline:none}.el-year-table td:focus-visible .el-date-table-cell__text{outline:2px solid var(--el-datepicker-active-color);outline-offset:1px}.el-time-spinner.has-seconds .el-time-spinner__wrapper{width:33.3%}.el-time-spinner__wrapper{display:inline-block;max-height:192px;overflow:auto;position:relative;vertical-align:top;width:50%}.el-time-spinner__wrapper.el-scrollbar__wrap:not(.el-scrollbar__wrap--hidden-default){padding-bottom:15px}.el-time-spinner__wrapper.is-arrow{box-sizing:border-box;overflow:hidden;text-align:center}.el-time-spinner__wrapper.is-arrow .el-time-spinner__list{transform:translateY(-32px)}.el-time-spinner__wrapper.is-arrow .el-time-spinner__item:hover:not(.is-disabled):not(.is-active){background:var(--el-fill-color-light);cursor:default}.el-time-spinner__arrow{color:var(--el-text-color-secondary);cursor:pointer;font-size:12px;height:30px;left:0;line-height:30px;position:absolute;text-align:center;width:100%;z-index:var(--el-index-normal)}.el-time-spinner__arrow:hover{color:var(--el-color-primary)}.el-time-spinner__arrow.arrow-up{top:10px}.el-time-spinner__arrow.arrow-down{bottom:10px}.el-time-spinner__input.el-input{width:70%}.el-time-spinner__input.el-input .el-input__inner,.el-time-spinner__list{padding:0;text-align:center}.el-time-spinner__list{list-style:none;margin:0}.el-time-spinner__list:after,.el-time-spinner__list:before{content:"";display:block;height:80px;width:100%}.el-time-spinner__item{color:var(--el-text-color-regular);font-size:12px;height:32px;line-height:32px}.el-time-spinner__item:hover:not(.is-disabled):not(.is-active){background:var(--el-fill-color-light);cursor:pointer}.el-time-spinner__item.is-active:not(.is-disabled){color:var(--el-text-color-primary);font-weight:700}.el-time-spinner__item.is-disabled{color:var(--el-text-color-placeholder);cursor:not-allowed}.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transform:scaleY(1);transform-origin:center top;transition:var(--el-transition-md-fade)}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:center bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transform:scaleY(1);transform-origin:center bottom;transition:var(--el-transition-md-fade)}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transform:scale(1);transform-origin:top left;transition:var(--el-transition-md-fade)}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-enter-active,.el-collapse-transition-leave-active{transition:var(--el-transition-duration) max-height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-picker__popper{--el-datepicker-border-color:var(--el-disabled-border-color)}.el-picker__popper.el-popper{background:var(--el-bg-color-overlay);box-shadow:var(--el-box-shadow-light)}.el-picker__popper.el-popper,.el-picker__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-datepicker-border-color)}.el-picker__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-left-color:transparent;border-top-color:transparent}.el-picker__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent;border-right-color:transparent}.el-picker__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:transparent;border-left-color:transparent}.el-picker__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent;border-top-color:transparent}.el-date-editor{--el-date-editor-width:220px;--el-date-editor-monthrange-width:300px;--el-date-editor-daterange-width:350px;--el-date-editor-datetimerange-width:400px;--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;position:relative;text-align:left;vertical-align:middle}.el-date-editor.el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset}.el-date-editor.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-date-editor.el-input,.el-date-editor.el-input__wrapper{height:var(--el-input-height,var(--el-component-size));width:var(--el-date-editor-width)}.el-date-editor--monthrange{--el-date-editor-width:var(--el-date-editor-monthrange-width)}.el-date-editor--daterange,.el-date-editor--timerange{--el-date-editor-width:var(--el-date-editor-daterange-width)}.el-date-editor--datetimerange{--el-date-editor-width:var(--el-date-editor-datetimerange-width)}.el-date-editor--dates .el-input__wrapper{text-overflow:ellipsis;white-space:nowrap}.el-date-editor .clear-icon,.el-date-editor .close-icon{cursor:pointer}.el-date-editor .clear-icon:hover{color:var(--el-input-clear-hover-color)}.el-date-editor .el-range__icon{color:var(--el-text-color-placeholder);float:left;font-size:14px;height:inherit}.el-date-editor .el-range__icon svg{vertical-align:middle}.el-date-editor .el-range-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:none;color:var(--el-text-color-regular);display:inline-block;font-size:var(--el-font-size-base);height:30px;line-height:30px;margin:0;outline:none;padding:0;text-align:center;width:39%}.el-date-editor .el-range-input::placeholder{color:var(--el-text-color-placeholder)}.el-date-editor .el-range-separator{align-items:center;color:var(--el-text-color-primary);display:inline-flex;flex:1;font-size:14px;height:100%;justify-content:center;margin:0;overflow-wrap:break-word;padding:0 5px}.el-date-editor .el-range__close-icon{color:var(--el-text-color-placeholder);cursor:pointer;font-size:14px;height:inherit;width:unset}.el-date-editor .el-range__close-icon:hover{color:var(--el-input-clear-hover-color)}.el-date-editor .el-range__close-icon svg{vertical-align:middle}.el-date-editor .el-range__close-icon--hidden{opacity:0;visibility:hidden}.el-range-editor.el-input__wrapper{align-items:center;display:inline-flex;padding:0 10px;vertical-align:middle}.el-range-editor.is-active,.el-range-editor.is-active:hover{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-range-editor--large{line-height:var(--el-component-size-large)}.el-range-editor--large.el-input__wrapper{height:var(--el-component-size-large)}.el-range-editor--large .el-range-separator{font-size:14px;line-height:40px}.el-range-editor--large .el-range-input{font-size:14px;height:38px;line-height:38px}.el-range-editor--small{line-height:var(--el-component-size-small)}.el-range-editor--small.el-input__wrapper{height:var(--el-component-size-small)}.el-range-editor--small .el-range-separator{font-size:12px;line-height:24px}.el-range-editor--small .el-range-input{font-size:12px;height:22px;line-height:22px}.el-range-editor.is-disabled{background-color:var(--el-disabled-bg-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-range-editor.is-disabled,.el-range-editor.is-disabled:focus,.el-range-editor.is-disabled:hover{border-color:var(--el-disabled-border-color)}.el-range-editor.is-disabled input{background-color:var(--el-disabled-bg-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-range-editor.is-disabled input::placeholder{color:var(--el-text-color-placeholder)}.el-range-editor.is-disabled .el-range-separator{color:var(--el-disabled-text-color)}.el-picker-panel{background:var(--el-bg-color-overlay);border-radius:var(--el-popper-border-radius,var(--el-border-radius-base));color:var(--el-text-color-regular);line-height:30px}.el-picker-panel .el-time-panel{background-color:var(--el-bg-color-overlay);border:1px solid var(--el-datepicker-border-color);box-shadow:var(--el-box-shadow-light);margin:5px 0}.el-picker-panel__body-wrapper:after,.el-picker-panel__body:after{clear:both;content:"";display:table}.el-picker-panel__content{margin:15px;position:relative}.el-picker-panel__footer{background-color:var(--el-bg-color-overlay);border-top:1px solid var(--el-datepicker-inner-border-color);font-size:0;padding:4px 12px;position:relative;text-align:right}.el-picker-panel__shortcut{background-color:transparent;border:0;color:var(--el-datepicker-text-color);cursor:pointer;display:block;font-size:14px;line-height:28px;outline:none;padding-left:12px;text-align:left;width:100%}.el-picker-panel__shortcut:hover{color:var(--el-datepicker-hover-text-color)}.el-picker-panel__shortcut.active{background-color:#e6f1fe;color:var(--el-datepicker-active-color)}.el-picker-panel__btn{background-color:transparent;border:1px solid var(--el-fill-color-darker);border-radius:2px;color:var(--el-text-color-primary);cursor:pointer;font-size:12px;line-height:24px;outline:none;padding:0 20px}.el-picker-panel__btn[disabled]{color:var(--el-text-color-disabled);cursor:not-allowed}.el-picker-panel__icon-btn{background:transparent;border:0;color:var(--el-datepicker-icon-color);cursor:pointer;font-size:12px;margin-top:8px;outline:none}.el-picker-panel__icon-btn:hover{color:var(--el-datepicker-hover-text-color)}.el-picker-panel__icon-btn:focus-visible{color:var(--el-datepicker-hover-text-color)}.el-picker-panel__icon-btn.is-disabled{color:var(--el-text-color-disabled)}.el-picker-panel__icon-btn.is-disabled:hover{cursor:not-allowed}.el-picker-panel__icon-btn .el-icon{cursor:pointer;font-size:inherit}.el-picker-panel__link-btn{vertical-align:middle}.el-picker-panel [slot=sidebar],.el-picker-panel__sidebar{border-right:1px solid var(--el-datepicker-inner-border-color);bottom:0;box-sizing:border-box;overflow:auto;padding-top:6px;position:absolute;top:0;width:110px}.el-picker-panel [slot=sidebar]+.el-picker-panel__body,.el-picker-panel__sidebar+.el-picker-panel__body{margin-left:110px}.el-date-picker{--el-datepicker-text-color:var(--el-text-color-regular);--el-datepicker-off-text-color:var(--el-text-color-placeholder);--el-datepicker-header-text-color:var(--el-text-color-regular);--el-datepicker-icon-color:var(--el-text-color-primary);--el-datepicker-border-color:var(--el-disabled-border-color);--el-datepicker-inner-border-color:var(--el-border-color-light);--el-datepicker-inrange-bg-color:var(--el-border-color-extra-light);--el-datepicker-inrange-hover-bg-color:var(--el-border-color-extra-light);--el-datepicker-active-color:var(--el-color-primary);--el-datepicker-hover-text-color:var(--el-color-primary);width:322px}.el-date-picker.has-sidebar.has-time{width:434px}.el-date-picker.has-sidebar{width:438px}.el-date-picker.has-time .el-picker-panel__body-wrapper{position:relative}.el-date-picker .el-picker-panel__content{width:292px}.el-date-picker table{table-layout:fixed;width:100%}.el-date-picker__editor-wrap{display:table-cell;padding:0 5px;position:relative}.el-date-picker__time-header{border-bottom:1px solid var(--el-datepicker-inner-border-color);box-sizing:border-box;display:table;font-size:12px;padding:8px 5px 5px;position:relative;width:100%}.el-date-picker__header{padding:12px 12px 0;text-align:center}.el-date-picker__header--bordered{border-bottom:1px solid var(--el-border-color-lighter);margin-bottom:0;padding-bottom:12px}.el-date-picker__header--bordered+.el-picker-panel__content{margin-top:0}.el-date-picker__header-label{color:var(--el-text-color-regular);cursor:pointer;font-size:16px;font-weight:500;line-height:22px;padding:0 5px;text-align:center}.el-date-picker__header-label:hover{color:var(--el-datepicker-hover-text-color)}.el-date-picker__header-label:focus-visible{color:var(--el-datepicker-hover-text-color);outline:none}.el-date-picker__header-label.active{color:var(--el-datepicker-active-color)}.el-date-picker__prev-btn{float:left}.el-date-picker__next-btn{float:right}.el-date-picker__time-wrap{padding:10px;text-align:center}.el-date-picker__time-label{cursor:pointer;float:left;line-height:30px;margin-left:10px}.el-date-picker .el-time-panel{position:absolute}.el-date-range-picker{--el-datepicker-text-color:var(--el-text-color-regular);--el-datepicker-off-text-color:var(--el-text-color-placeholder);--el-datepicker-header-text-color:var(--el-text-color-regular);--el-datepicker-icon-color:var(--el-text-color-primary);--el-datepicker-border-color:var(--el-disabled-border-color);--el-datepicker-inner-border-color:var(--el-border-color-light);--el-datepicker-inrange-bg-color:var(--el-border-color-extra-light);--el-datepicker-inrange-hover-bg-color:var(--el-border-color-extra-light);--el-datepicker-active-color:var(--el-color-primary);--el-datepicker-hover-text-color:var(--el-color-primary);width:646px}.el-date-range-picker.has-sidebar{width:756px}.el-date-range-picker.has-time .el-picker-panel__body-wrapper{position:relative}.el-date-range-picker table{table-layout:fixed;width:100%}.el-date-range-picker .el-picker-panel__body{min-width:513px}.el-date-range-picker .el-picker-panel__content{margin:0}.el-date-range-picker__header{height:28px;position:relative;text-align:center}.el-date-range-picker__header [class*=arrow-left]{float:left}.el-date-range-picker__header [class*=arrow-right]{float:right}.el-date-range-picker__header div{font-size:16px;font-weight:500;margin-right:50px}.el-date-range-picker__header-label{color:var(--el-text-color-regular);cursor:pointer;font-size:16px;font-weight:500;line-height:22px;padding:0 5px;text-align:center}.el-date-range-picker__header-label:hover{color:var(--el-datepicker-hover-text-color)}.el-date-range-picker__header-label:focus-visible{color:var(--el-datepicker-hover-text-color);outline:none}.el-date-range-picker__header-label.active{color:var(--el-datepicker-active-color)}.el-date-range-picker__content{box-sizing:border-box;float:left;margin:0;padding:16px;width:50%}.el-date-range-picker__content.is-left{border-right:1px solid var(--el-datepicker-inner-border-color)}.el-date-range-picker__content .el-date-range-picker__header div{margin-left:50px;margin-right:50px}.el-date-range-picker__editors-wrap{box-sizing:border-box;display:table-cell}.el-date-range-picker__editors-wrap.is-right{text-align:right}.el-date-range-picker__time-header{border-bottom:1px solid var(--el-datepicker-inner-border-color);box-sizing:border-box;display:table;font-size:12px;padding:8px 5px 5px;position:relative;width:100%}.el-date-range-picker__time-header>.el-icon-arrow-right{color:var(--el-datepicker-icon-color);display:table-cell;font-size:20px;vertical-align:middle}.el-date-range-picker__time-picker-wrap{display:table-cell;padding:0 5px;position:relative}.el-date-range-picker__time-picker-wrap .el-picker-panel{background:#fff;position:absolute;right:0;top:13px;z-index:1}.el-date-range-picker__time-picker-wrap .el-time-panel{position:absolute}.el-time-range-picker{overflow:visible;width:354px}.el-time-range-picker__content{padding:10px;position:relative;text-align:center;z-index:1}.el-time-range-picker__cell{box-sizing:border-box;display:inline-block;margin:0;padding:4px 7px 7px;width:50%}.el-time-range-picker__header{font-size:14px;margin-bottom:5px;text-align:center}.el-time-range-picker__body{border:1px solid var(--el-datepicker-border-color);border-radius:2px}.el-time-panel{border-radius:2px;box-sizing:content-box;left:0;position:relative;-webkit-user-select:none;user-select:none;width:180px;z-index:var(--el-index-top)}.el-time-panel__content{font-size:0;overflow:hidden;position:relative}.el-time-panel__content:after,.el-time-panel__content:before{box-sizing:border-box;content:"";height:32px;left:0;margin-top:-16px;padding-top:6px;position:absolute;right:0;text-align:left;top:50%;z-index:-1}.el-time-panel__content:after{left:50%;margin-left:12%;margin-right:12%}.el-time-panel__content:before{border-bottom:1px solid var(--el-border-color-light);border-top:1px solid var(--el-border-color-light);margin-left:12%;margin-right:12%;padding-left:50%}.el-time-panel__content.has-seconds:after{left:66.6666666667%}.el-time-panel__content.has-seconds:before{padding-left:33.3333333333%}.el-time-panel__footer{border-top:1px solid var(--el-timepicker-inner-border-color,var(--el-border-color-light));box-sizing:border-box;height:36px;line-height:25px;padding:4px;text-align:right}.el-time-panel__btn{background-color:transparent;border:none;color:var(--el-text-color-primary);cursor:pointer;font-size:12px;line-height:28px;margin:0 5px;outline:none;padding:0 5px}.el-time-panel__btn.confirm{color:var(--el-timepicker-active-color,var(--el-color-primary));font-weight:800}.el-textarea{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;display:inline-block;font-size:var(--el-font-size-base);position:relative;vertical-align:bottom;width:100%}.el-textarea__inner{-webkit-appearance:none;background-color:var(--el-input-bg-color,var(--el-fill-color-blank));background-image:none;border:none;border-radius:var(--el-input-border-radius,var(--el-border-radius-base));box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset;box-sizing:border-box;color:var(--el-input-text-color,var(--el-text-color-regular));display:block;font-family:inherit;font-size:inherit;line-height:1.5;padding:5px 11px;position:relative;resize:vertical;transition:var(--el-transition-box-shadow);width:100%}.el-textarea__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-textarea__inner:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-textarea__inner:focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset;outline:none}.el-textarea .el-input__count{background:var(--el-fill-color-blank);bottom:5px;color:var(--el-color-info);font-size:12px;line-height:14px;position:absolute;right:10px}.el-textarea.is-disabled .el-textarea__inner{background-color:var(--el-disabled-bg-color);box-shadow:0 0 0 1px var(--el-disabled-border-color) inset;color:var(--el-disabled-text-color);cursor:not-allowed}.el-textarea.is-disabled .el-textarea__inner::placeholder{color:var(--el-text-color-placeholder)}.el-textarea.is-exceed .el-textarea__inner{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-textarea.is-exceed .el-input__count{color:var(--el-color-danger)}.el-input{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;--el-input-height:var(--el-component-size);box-sizing:border-box;display:inline-flex;font-size:var(--el-font-size-base);line-height:var(--el-input-height);position:relative;vertical-align:middle;width:var(--el-input-width)}.el-input::-webkit-scrollbar{width:6px;z-index:11}.el-input::-webkit-scrollbar:horizontal{height:6px}.el-input::-webkit-scrollbar-thumb{background:var(--el-text-color-disabled);border-radius:5px;width:6px}.el-input::-webkit-scrollbar-corner,.el-input::-webkit-scrollbar-track{background:var(--el-fill-color-blank)}.el-input::-webkit-scrollbar-track-piece{background:var(--el-fill-color-blank);width:6px}.el-input .el-input__clear,.el-input .el-input__password{color:var(--el-input-icon-color);cursor:pointer;font-size:14px}.el-input .el-input__clear:hover,.el-input .el-input__password:hover{color:var(--el-input-clear-hover-color)}.el-input .el-input__count{align-items:center;color:var(--el-color-info);display:inline-flex;font-size:12px;height:100%}.el-input .el-input__count .el-input__count-inner{background:var(--el-fill-color-blank);display:inline-block;line-height:normal;padding-left:8px}.el-input__wrapper{align-items:center;background-color:var(--el-input-bg-color,var(--el-fill-color-blank));background-image:none;border-radius:var(--el-input-border-radius,var(--el-border-radius-base));box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset;cursor:text;display:inline-flex;flex-grow:1;justify-content:center;padding:1px 11px;transform:translateZ(0);transition:var(--el-transition-box-shadow)}.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-input__wrapper.is-focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-input{--el-input-inner-height:calc(var(--el-input-height, 32px) - 2px)}.el-input__inner{-webkit-appearance:none;background:none;border:none;box-sizing:border-box;color:var(--el-input-text-color,var(--el-text-color-regular));flex-grow:1;font-size:inherit;height:var(--el-input-inner-height);line-height:var(--el-input-inner-height);outline:none;padding:0;width:100%}.el-input__inner:focus{outline:none}.el-input__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-input__inner[type=password]::-ms-reveal{display:none}.el-input__inner[type=number]{line-height:1}.el-input__prefix{color:var(--el-input-icon-color,var(--el-text-color-placeholder));display:inline-flex;flex-shrink:0;flex-wrap:nowrap;height:100%;line-height:var(--el-input-inner-height);pointer-events:none;text-align:center;transition:all var(--el-transition-duration);white-space:nowrap}.el-input__prefix-inner{align-items:center;display:inline-flex;justify-content:center;pointer-events:all}.el-input__prefix-inner>:last-child{margin-right:8px}.el-input__prefix-inner>:first-child,.el-input__prefix-inner>:first-child.el-input__icon{margin-left:0}.el-input__suffix{color:var(--el-input-icon-color,var(--el-text-color-placeholder));display:inline-flex;flex-shrink:0;flex-wrap:nowrap;height:100%;line-height:var(--el-input-inner-height);pointer-events:none;text-align:center;transition:all var(--el-transition-duration);white-space:nowrap}.el-input__suffix-inner{align-items:center;display:inline-flex;justify-content:center;pointer-events:all}.el-input__suffix-inner>:first-child{margin-left:8px}.el-input .el-input__icon{align-items:center;display:flex;height:inherit;justify-content:center;line-height:inherit;margin-left:8px;transition:all var(--el-transition-duration)}.el-input__validateIcon{pointer-events:none}.el-input.is-active .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-color, ) inset}.el-input.is-disabled{cursor:not-allowed}.el-input.is-disabled .el-input__wrapper{background-color:var(--el-disabled-bg-color);box-shadow:0 0 0 1px var(--el-disabled-border-color) inset;cursor:not-allowed}.el-input.is-disabled .el-input__inner{color:var(--el-disabled-text-color);-webkit-text-fill-color:var(--el-disabled-text-color);cursor:not-allowed}.el-input.is-disabled .el-input__inner::placeholder{color:var(--el-text-color-placeholder)}.el-input.is-disabled .el-input__icon{cursor:not-allowed}.el-input.is-exceed .el-input__wrapper{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-input.is-exceed .el-input__suffix .el-input__count{color:var(--el-color-danger)}.el-input--large{--el-input-height:var(--el-component-size-large);font-size:14px}.el-input--large .el-input__wrapper{padding:1px 15px}.el-input--large{--el-input-inner-height:calc(var(--el-input-height, 40px) - 2px)}.el-input--small{--el-input-height:var(--el-component-size-small);font-size:12px}.el-input--small .el-input__wrapper{padding:1px 7px}.el-input--small{--el-input-inner-height:calc(var(--el-input-height, 24px) - 2px)}.el-input-group{align-items:stretch;display:inline-flex;width:100%}.el-input-group__append,.el-input-group__prepend{align-items:center;background-color:var(--el-fill-color-light);border-radius:var(--el-input-border-radius);color:var(--el-color-info);display:inline-flex;justify-content:center;min-height:100%;padding:0 20px;position:relative;white-space:nowrap}.el-input-group__append:focus,.el-input-group__prepend:focus{outline:none}.el-input-group__append .el-button,.el-input-group__append .el-select,.el-input-group__prepend .el-button,.el-input-group__prepend .el-select{display:inline-block;margin:0 -20px}.el-input-group__append button.el-button,.el-input-group__append button.el-button:hover,.el-input-group__append div.el-select .el-select__wrapper,.el-input-group__append div.el-select:hover .el-select__wrapper,.el-input-group__prepend button.el-button,.el-input-group__prepend button.el-button:hover,.el-input-group__prepend div.el-select .el-select__wrapper,.el-input-group__prepend div.el-select:hover .el-select__wrapper{background-color:transparent;border-color:transparent;color:inherit}.el-input-group__append .el-button,.el-input-group__append .el-input,.el-input-group__prepend .el-button,.el-input-group__prepend .el-input{font-size:inherit}.el-input-group__prepend{border-bottom-right-radius:0;border-right:0;border-top-right-radius:0;box-shadow:1px 0 0 0 var(--el-input-border-color) inset,0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset}.el-input-group__append{border-left:0;box-shadow:0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset,-1px 0 0 0 var(--el-input-border-color) inset}.el-input-group--prepend>.el-input__wrapper,.el-input-group__append{border-bottom-left-radius:0;border-top-left-radius:0}.el-input-group--prepend .el-input-group__prepend .el-select .el-select__wrapper{border-bottom-right-radius:0;border-top-right-radius:0;box-shadow:1px 0 0 0 var(--el-input-border-color) inset,0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset}.el-input-group--append>.el-input__wrapper{border-bottom-right-radius:0;border-top-right-radius:0}.el-input-group--append .el-input-group__append .el-select .el-select__wrapper{border-bottom-left-radius:0;border-top-left-radius:0;box-shadow:0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset,-1px 0 0 0 var(--el-input-border-color) inset}.el-input-hidden{display:none!important}.el-scrollbar{--el-scrollbar-opacity:.3;--el-scrollbar-bg-color:var(--el-text-color-secondary);--el-scrollbar-hover-opacity:.5;--el-scrollbar-hover-bg-color:var(--el-text-color-secondary);height:100%;overflow:hidden;position:relative}.el-scrollbar__wrap{height:100%;overflow:auto}.el-scrollbar__wrap--hidden-default{scrollbar-width:none}.el-scrollbar__wrap--hidden-default::-webkit-scrollbar{display:none}.el-scrollbar__thumb{background-color:var(--el-scrollbar-bg-color,var(--el-text-color-secondary));border-radius:inherit;cursor:pointer;display:block;height:0;opacity:var(--el-scrollbar-opacity,.3);position:relative;transition:var(--el-transition-duration) background-color;width:0}.el-scrollbar__thumb:hover{background-color:var(--el-scrollbar-hover-bg-color,var(--el-text-color-secondary));opacity:var(--el-scrollbar-hover-opacity,.5)}.el-scrollbar__bar{border-radius:4px;bottom:2px;position:absolute;right:2px;z-index:1}.el-scrollbar__bar.is-vertical{top:2px;width:6px}.el-scrollbar__bar.is-vertical>div{width:100%}.el-scrollbar__bar.is-horizontal{height:6px;left:2px}.el-scrollbar__bar.is-horizontal>div{height:100%}.el-scrollbar-fade-enter-active{transition:opacity .34s ease-out}.el-scrollbar-fade-leave-active{transition:opacity .12s ease-out}.el-scrollbar-fade-enter-from,.el-scrollbar-fade-leave-active{opacity:0}.el-popper{--el-popper-border-radius:var(--el-popover-border-radius,4px);border-radius:var(--el-popper-border-radius);font-size:12px;line-height:20px;min-width:10px;overflow-wrap:break-word;padding:5px 11px;position:absolute;visibility:visible;word-break:break-all;z-index:2000}.el-popper.is-dark{color:var(--el-bg-color)}.el-popper.is-dark,.el-popper.is-dark>.el-popper__arrow:before{background:var(--el-text-color-primary);border:1px solid var(--el-text-color-primary)}.el-popper.is-dark>.el-popper__arrow:before{right:0}.el-popper.is-light,.el-popper.is-light>.el-popper__arrow:before{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light)}.el-popper.is-light>.el-popper__arrow:before{right:0}.el-popper.is-pure{padding:0}.el-popper__arrow,.el-popper__arrow:before{height:10px;position:absolute;width:10px;z-index:-1}.el-popper__arrow:before{background:var(--el-text-color-primary);box-sizing:border-box;content:" ";transform:rotate(45deg)}.el-popper[data-popper-placement^=top]>.el-popper__arrow{bottom:-5px}.el-popper[data-popper-placement^=top]>.el-popper__arrow:before{border-bottom-right-radius:2px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow{top:-5px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow:before{border-top-left-radius:2px}.el-popper[data-popper-placement^=left]>.el-popper__arrow{right:-5px}.el-popper[data-popper-placement^=left]>.el-popper__arrow:before{border-top-right-radius:2px}.el-popper[data-popper-placement^=right]>.el-popper__arrow{left:-5px}.el-popper[data-popper-placement^=right]>.el-popper__arrow:before{border-bottom-left-radius:2px}.el-popper[data-popper-placement^=top]>.el-popper__arrow:before{border-left-color:transparent!important;border-top-color:transparent!important}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow:before{border-bottom-color:transparent!important;border-right-color:transparent!important}.el-popper[data-popper-placement^=left]>.el-popper__arrow:before{border-bottom-color:transparent!important;border-left-color:transparent!important}.el-popper[data-popper-placement^=right]>.el-popper__arrow:before{border-right-color:transparent!important;border-top-color:transparent!important}.el-button{--el-button-font-weight:var(--el-font-weight-primary);--el-button-border-color:var(--el-border-color);--el-button-bg-color:var(--el-fill-color-blank);--el-button-text-color:var(--el-text-color-regular);--el-button-disabled-text-color:var(--el-disabled-text-color);--el-button-disabled-bg-color:var(--el-fill-color-blank);--el-button-disabled-border-color:var(--el-border-color-light);--el-button-divide-border-color:rgba(255,255,255,.5);--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-color-primary-light-9);--el-button-hover-border-color:var(--el-color-primary-light-7);--el-button-active-text-color:var(--el-button-hover-text-color);--el-button-active-border-color:var(--el-color-primary);--el-button-active-bg-color:var(--el-button-hover-bg-color);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-hover-link-text-color:var(--el-text-color-secondary);--el-button-active-color:var(--el-text-color-primary);align-items:center;-webkit-appearance:none;background-color:var(--el-button-bg-color);border:var(--el-border);border-color:var(--el-button-border-color);box-sizing:border-box;color:var(--el-button-text-color);cursor:pointer;display:inline-flex;font-weight:var(--el-button-font-weight);height:32px;justify-content:center;line-height:1;outline:none;text-align:center;transition:.1s;-webkit-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.el-button:hover{background-color:var(--el-button-hover-bg-color);border-color:var(--el-button-hover-border-color);color:var(--el-button-hover-text-color);outline:none}.el-button:active{background-color:var(--el-button-active-bg-color);border-color:var(--el-button-active-border-color);color:var(--el-button-active-text-color);outline:none}.el-button:focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px;transition:outline-offset 0s,outline 0s}.el-button>span{align-items:center;display:inline-flex}.el-button+.el-button{margin-left:12px}.el-button{border-radius:var(--el-border-radius-base);font-size:var(--el-font-size-base)}.el-button,.el-button.is-round{padding:8px 15px}.el-button::-moz-focus-inner{border:0}.el-button [class*=el-icon]+span{margin-left:6px}.el-button [class*=el-icon] svg{vertical-align:bottom}.el-button.is-plain{--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-fill-color-blank);--el-button-hover-border-color:var(--el-color-primary)}.el-button.is-active{background-color:var(--el-button-active-bg-color);border-color:var(--el-button-active-border-color);color:var(--el-button-active-text-color);outline:none}.el-button.is-disabled,.el-button.is-disabled:hover{background-color:var(--el-button-disabled-bg-color);background-image:none;border-color:var(--el-button-disabled-border-color);color:var(--el-button-disabled-text-color);cursor:not-allowed}.el-button.is-loading{pointer-events:none;position:relative}.el-button.is-loading:before{background-color:var(--el-mask-color-extra-light);border-radius:inherit;bottom:-1px;content:"";left:-1px;pointer-events:none;position:absolute;right:-1px;top:-1px;z-index:1}.el-button.is-round{border-radius:var(--el-border-radius-round)}.el-button.is-circle{border-radius:50%;padding:8px;width:32px}.el-button.is-text{background-color:transparent;border:0 solid transparent;color:var(--el-button-text-color)}.el-button.is-text.is-disabled{background-color:transparent!important;color:var(--el-button-disabled-text-color)}.el-button.is-text:not(.is-disabled):hover{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled):focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px;transition:outline-offset 0s,outline 0s}.el-button.is-text:not(.is-disabled):active{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled).is-has-bg:hover{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg:active{background-color:var(--el-fill-color-dark)}.el-button__text--expand{letter-spacing:.3em;margin-right:-.3em}.el-button.is-link{background:transparent;border-color:transparent;color:var(--el-button-text-color);height:auto;padding:2px}.el-button.is-link:hover{color:var(--el-button-hover-link-text-color)}.el-button.is-link.is-disabled{background-color:transparent!important;border-color:transparent!important;color:var(--el-button-disabled-text-color)}.el-button.is-link:not(.is-disabled):active,.el-button.is-link:not(.is-disabled):hover{background-color:transparent;border-color:transparent}.el-button.is-link:not(.is-disabled):active{color:var(--el-button-active-color)}.el-button--text{background:transparent;border-color:transparent;color:var(--el-color-primary);padding-left:0;padding-right:0}.el-button--text.is-disabled{background-color:transparent!important;border-color:transparent!important;color:var(--el-button-disabled-text-color)}.el-button--text:not(.is-disabled):hover{background-color:transparent;border-color:transparent;color:var(--el-color-primary-light-3)}.el-button--text:not(.is-disabled):active{background-color:transparent;border-color:transparent;color:var(--el-color-primary-dark-2)}.el-button__link--expand{letter-spacing:.3em;margin-right:-.3em}.el-button--primary{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-primary);--el-button-border-color:var(--el-color-primary);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-active-color:var(--el-color-primary-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-primary-light-5);--el-button-hover-bg-color:var(--el-color-primary-light-3);--el-button-hover-border-color:var(--el-color-primary-light-3);--el-button-active-bg-color:var(--el-color-primary-dark-2);--el-button-active-border-color:var(--el-color-primary-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-primary-light-5);--el-button-disabled-border-color:var(--el-color-primary-light-5)}.el-button--primary.is-link,.el-button--primary.is-plain,.el-button--primary.is-text{--el-button-text-color:var(--el-color-primary);--el-button-bg-color:var(--el-color-primary-light-9);--el-button-border-color:var(--el-color-primary-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-primary);--el-button-hover-border-color:var(--el-color-primary);--el-button-active-text-color:var(--el-color-white)}.el-button--primary.is-link.is-disabled,.el-button--primary.is-link.is-disabled:active,.el-button--primary.is-link.is-disabled:focus,.el-button--primary.is-link.is-disabled:hover,.el-button--primary.is-plain.is-disabled,.el-button--primary.is-plain.is-disabled:active,.el-button--primary.is-plain.is-disabled:focus,.el-button--primary.is-plain.is-disabled:hover,.el-button--primary.is-text.is-disabled,.el-button--primary.is-text.is-disabled:active,.el-button--primary.is-text.is-disabled:focus,.el-button--primary.is-text.is-disabled:hover{background-color:var(--el-color-primary-light-9);border-color:var(--el-color-primary-light-8);color:var(--el-color-primary-light-5)}.el-button--success{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-success);--el-button-border-color:var(--el-color-success);--el-button-outline-color:var(--el-color-success-light-5);--el-button-active-color:var(--el-color-success-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-success-light-5);--el-button-hover-bg-color:var(--el-color-success-light-3);--el-button-hover-border-color:var(--el-color-success-light-3);--el-button-active-bg-color:var(--el-color-success-dark-2);--el-button-active-border-color:var(--el-color-success-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-success-light-5);--el-button-disabled-border-color:var(--el-color-success-light-5)}.el-button--success.is-link,.el-button--success.is-plain,.el-button--success.is-text{--el-button-text-color:var(--el-color-success);--el-button-bg-color:var(--el-color-success-light-9);--el-button-border-color:var(--el-color-success-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-success);--el-button-hover-border-color:var(--el-color-success);--el-button-active-text-color:var(--el-color-white)}.el-button--success.is-link.is-disabled,.el-button--success.is-link.is-disabled:active,.el-button--success.is-link.is-disabled:focus,.el-button--success.is-link.is-disabled:hover,.el-button--success.is-plain.is-disabled,.el-button--success.is-plain.is-disabled:active,.el-button--success.is-plain.is-disabled:focus,.el-button--success.is-plain.is-disabled:hover,.el-button--success.is-text.is-disabled,.el-button--success.is-text.is-disabled:active,.el-button--success.is-text.is-disabled:focus,.el-button--success.is-text.is-disabled:hover{background-color:var(--el-color-success-light-9);border-color:var(--el-color-success-light-8);color:var(--el-color-success-light-5)}.el-button--warning{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-warning);--el-button-border-color:var(--el-color-warning);--el-button-outline-color:var(--el-color-warning-light-5);--el-button-active-color:var(--el-color-warning-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-warning-light-5);--el-button-hover-bg-color:var(--el-color-warning-light-3);--el-button-hover-border-color:var(--el-color-warning-light-3);--el-button-active-bg-color:var(--el-color-warning-dark-2);--el-button-active-border-color:var(--el-color-warning-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-warning-light-5);--el-button-disabled-border-color:var(--el-color-warning-light-5)}.el-button--warning.is-link,.el-button--warning.is-plain,.el-button--warning.is-text{--el-button-text-color:var(--el-color-warning);--el-button-bg-color:var(--el-color-warning-light-9);--el-button-border-color:var(--el-color-warning-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-warning);--el-button-hover-border-color:var(--el-color-warning);--el-button-active-text-color:var(--el-color-white)}.el-button--warning.is-link.is-disabled,.el-button--warning.is-link.is-disabled:active,.el-button--warning.is-link.is-disabled:focus,.el-button--warning.is-link.is-disabled:hover,.el-button--warning.is-plain.is-disabled,.el-button--warning.is-plain.is-disabled:active,.el-button--warning.is-plain.is-disabled:focus,.el-button--warning.is-plain.is-disabled:hover,.el-button--warning.is-text.is-disabled,.el-button--warning.is-text.is-disabled:active,.el-button--warning.is-text.is-disabled:focus,.el-button--warning.is-text.is-disabled:hover{background-color:var(--el-color-warning-light-9);border-color:var(--el-color-warning-light-8);color:var(--el-color-warning-light-5)}.el-button--danger{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-danger);--el-button-border-color:var(--el-color-danger);--el-button-outline-color:var(--el-color-danger-light-5);--el-button-active-color:var(--el-color-danger-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-danger-light-5);--el-button-hover-bg-color:var(--el-color-danger-light-3);--el-button-hover-border-color:var(--el-color-danger-light-3);--el-button-active-bg-color:var(--el-color-danger-dark-2);--el-button-active-border-color:var(--el-color-danger-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-danger-light-5);--el-button-disabled-border-color:var(--el-color-danger-light-5)}.el-button--danger.is-link,.el-button--danger.is-plain,.el-button--danger.is-text{--el-button-text-color:var(--el-color-danger);--el-button-bg-color:var(--el-color-danger-light-9);--el-button-border-color:var(--el-color-danger-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-danger);--el-button-hover-border-color:var(--el-color-danger);--el-button-active-text-color:var(--el-color-white)}.el-button--danger.is-link.is-disabled,.el-button--danger.is-link.is-disabled:active,.el-button--danger.is-link.is-disabled:focus,.el-button--danger.is-link.is-disabled:hover,.el-button--danger.is-plain.is-disabled,.el-button--danger.is-plain.is-disabled:active,.el-button--danger.is-plain.is-disabled:focus,.el-button--danger.is-plain.is-disabled:hover,.el-button--danger.is-text.is-disabled,.el-button--danger.is-text.is-disabled:active,.el-button--danger.is-text.is-disabled:focus,.el-button--danger.is-text.is-disabled:hover{background-color:var(--el-color-danger-light-9);border-color:var(--el-color-danger-light-8);color:var(--el-color-danger-light-5)}.el-button--info{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-info);--el-button-border-color:var(--el-color-info);--el-button-outline-color:var(--el-color-info-light-5);--el-button-active-color:var(--el-color-info-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-info-light-5);--el-button-hover-bg-color:var(--el-color-info-light-3);--el-button-hover-border-color:var(--el-color-info-light-3);--el-button-active-bg-color:var(--el-color-info-dark-2);--el-button-active-border-color:var(--el-color-info-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-info-light-5);--el-button-disabled-border-color:var(--el-color-info-light-5)}.el-button--info.is-link,.el-button--info.is-plain,.el-button--info.is-text{--el-button-text-color:var(--el-color-info);--el-button-bg-color:var(--el-color-info-light-9);--el-button-border-color:var(--el-color-info-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-info);--el-button-hover-border-color:var(--el-color-info);--el-button-active-text-color:var(--el-color-white)}.el-button--info.is-link.is-disabled,.el-button--info.is-link.is-disabled:active,.el-button--info.is-link.is-disabled:focus,.el-button--info.is-link.is-disabled:hover,.el-button--info.is-plain.is-disabled,.el-button--info.is-plain.is-disabled:active,.el-button--info.is-plain.is-disabled:focus,.el-button--info.is-plain.is-disabled:hover,.el-button--info.is-text.is-disabled,.el-button--info.is-text.is-disabled:active,.el-button--info.is-text.is-disabled:focus,.el-button--info.is-text.is-disabled:hover{background-color:var(--el-color-info-light-9);border-color:var(--el-color-info-light-8);color:var(--el-color-info-light-5)}.el-button--large{--el-button-size:40px;height:var(--el-button-size)}.el-button--large [class*=el-icon]+span{margin-left:8px}.el-button--large{border-radius:var(--el-border-radius-base);font-size:var(--el-font-size-base);padding:12px 19px}.el-button--large.is-round{padding:12px 19px}.el-button--large.is-circle{padding:12px;width:var(--el-button-size)}.el-button--small{--el-button-size:24px;height:var(--el-button-size)}.el-button--small [class*=el-icon]+span{margin-left:4px}.el-button--small{border-radius:calc(var(--el-border-radius-base) - 1px);font-size:12px;padding:5px 11px}.el-button--small.is-round{padding:5px 11px}.el-button--small.is-circle{padding:5px;width:var(--el-button-size)}.el-pagination{--el-pagination-font-size:14px;--el-pagination-bg-color:var(--el-fill-color-blank);--el-pagination-text-color:var(--el-text-color-primary);--el-pagination-border-radius:2px;--el-pagination-button-color:var(--el-text-color-primary);--el-pagination-button-width:32px;--el-pagination-button-height:32px;--el-pagination-button-disabled-color:var(--el-text-color-placeholder);--el-pagination-button-disabled-bg-color:var(--el-fill-color-blank);--el-pagination-button-bg-color:var(--el-fill-color);--el-pagination-hover-color:var(--el-color-primary);--el-pagination-font-size-small:12px;--el-pagination-button-width-small:24px;--el-pagination-button-height-small:24px;--el-pagination-button-width-large:40px;--el-pagination-button-height-large:40px;--el-pagination-item-gap:16px;align-items:center;color:var(--el-pagination-text-color);display:flex;font-size:var(--el-pagination-font-size);font-weight:400;white-space:nowrap}.el-pagination .el-input__inner{-moz-appearance:textfield;text-align:center}.el-pagination .el-select{width:128px}.el-pagination button{align-items:center;background:var(--el-pagination-bg-color);border:none;border-radius:var(--el-pagination-border-radius);box-sizing:border-box;color:var(--el-pagination-button-color);cursor:pointer;display:flex;font-size:var(--el-pagination-font-size);height:var(--el-pagination-button-height);justify-content:center;line-height:var(--el-pagination-button-height);min-width:var(--el-pagination-button-width);padding:0 4px;text-align:center}.el-pagination button *{pointer-events:none}.el-pagination button:focus{outline:none}.el-pagination button.is-active,.el-pagination button:hover{color:var(--el-pagination-hover-color)}.el-pagination button.is-active{cursor:default;font-weight:700}.el-pagination button.is-active.is-disabled{color:var(--el-text-color-secondary);font-weight:700}.el-pagination button.is-disabled,.el-pagination button:disabled{background-color:var(--el-pagination-button-disabled-bg-color);color:var(--el-pagination-button-disabled-color);cursor:not-allowed}.el-pagination button:focus-visible{outline:1px solid var(--el-pagination-hover-color);outline-offset:-1px}.el-pagination .btn-next .el-icon,.el-pagination .btn-prev .el-icon{display:block;font-size:12px;font-weight:700;width:inherit}.el-pagination>.is-first{margin-left:0!important}.el-pagination>.is-last{margin-right:0!important}.el-pagination .btn-prev{margin-left:var(--el-pagination-item-gap)}.el-pagination__sizes,.el-pagination__total{color:var(--el-text-color-regular);font-weight:400;margin-left:var(--el-pagination-item-gap)}.el-pagination__total[disabled=true]{color:var(--el-text-color-placeholder)}.el-pagination__jump{align-items:center;color:var(--el-text-color-regular);display:flex;font-weight:400;margin-left:var(--el-pagination-item-gap)}.el-pagination__jump[disabled=true]{color:var(--el-text-color-placeholder)}.el-pagination__goto{margin-right:8px}.el-pagination__editor{box-sizing:border-box;text-align:center}.el-pagination__editor.el-input{width:56px}.el-pagination__editor .el-input__inner::-webkit-inner-spin-button,.el-pagination__editor .el-input__inner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.el-pagination__classifier{margin-left:8px}.el-pagination__rightwrapper{align-items:center;display:flex;flex:1;justify-content:flex-end}.el-pagination.is-background .btn-next,.el-pagination.is-background .btn-prev,.el-pagination.is-background .el-pager li{background-color:var(--el-pagination-button-bg-color);margin:0 4px}.el-pagination.is-background .btn-next.is-active,.el-pagination.is-background .btn-prev.is-active,.el-pagination.is-background .el-pager li.is-active{background-color:var(--el-color-primary);color:var(--el-color-white)}.el-pagination.is-background .btn-next.is-disabled,.el-pagination.is-background .btn-next:disabled,.el-pagination.is-background .btn-prev.is-disabled,.el-pagination.is-background .btn-prev:disabled,.el-pagination.is-background .el-pager li.is-disabled,.el-pagination.is-background .el-pager li:disabled{background-color:var(--el-disabled-bg-color);color:var(--el-text-color-placeholder)}.el-pagination.is-background .btn-next.is-disabled.is-active,.el-pagination.is-background .btn-next:disabled.is-active,.el-pagination.is-background .btn-prev.is-disabled.is-active,.el-pagination.is-background .btn-prev:disabled.is-active,.el-pagination.is-background .el-pager li.is-disabled.is-active,.el-pagination.is-background .el-pager li:disabled.is-active{background-color:var(--el-fill-color-dark);color:var(--el-text-color-secondary)}.el-pagination.is-background .btn-prev{margin-left:var(--el-pagination-item-gap)}.el-pagination--small .btn-next,.el-pagination--small .btn-prev,.el-pagination--small .el-pager li{font-size:var(--el-pagination-font-size-small);height:var(--el-pagination-button-height-small);line-height:var(--el-pagination-button-height-small);min-width:var(--el-pagination-button-width-small)}.el-pagination--small button,.el-pagination--small span:not([class*=suffix]){font-size:var(--el-pagination-font-size-small)}.el-pagination--small .el-select{width:100px}.el-pagination--large .btn-next,.el-pagination--large .btn-prev,.el-pagination--large .el-pager li{height:var(--el-pagination-button-height-large);line-height:var(--el-pagination-button-height-large);min-width:var(--el-pagination-button-width-large)}.el-pagination--large .el-select .el-input{width:160px}.el-pager{font-size:0;list-style:none;margin:0;padding:0;-webkit-user-select:none;user-select:none}.el-pager,.el-pager li{align-items:center;display:flex}.el-pager li{background:var(--el-pagination-bg-color);border:none;border-radius:var(--el-pagination-border-radius);box-sizing:border-box;color:var(--el-pagination-button-color);cursor:pointer;font-size:var(--el-pagination-font-size);height:var(--el-pagination-button-height);justify-content:center;line-height:var(--el-pagination-button-height);min-width:var(--el-pagination-button-width);padding:0 4px;text-align:center}.el-pager li *{pointer-events:none}.el-pager li:focus{outline:none}.el-pager li.is-active,.el-pager li:hover{color:var(--el-pagination-hover-color)}.el-pager li.is-active{cursor:default;font-weight:700}.el-pager li.is-active.is-disabled{color:var(--el-text-color-secondary);font-weight:700}.el-pager li.is-disabled,.el-pager li:disabled{background-color:var(--el-pagination-button-disabled-bg-color);color:var(--el-pagination-button-disabled-color);cursor:not-allowed}.el-pager li:focus-visible{outline:1px solid var(--el-pagination-hover-color);outline-offset:-1px}.el-tag{--el-tag-font-size:12px;--el-tag-border-radius:4px;--el-tag-border-radius-rounded:9999px;align-items:center;background-color:var(--el-tag-bg-color);border-color:var(--el-tag-border-color);border-radius:var(--el-tag-border-radius);border-style:solid;border-width:1px;box-sizing:border-box;color:var(--el-tag-text-color);display:inline-flex;font-size:var(--el-tag-font-size);height:24px;justify-content:center;line-height:1;padding:0 9px;vertical-align:middle;white-space:nowrap;--el-icon-size:14px}.el-tag,.el-tag.el-tag--primary{--el-tag-bg-color:var(--el-color-primary-light-9);--el-tag-border-color:var(--el-color-primary-light-8);--el-tag-hover-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-bg-color:var(--el-color-success-light-9);--el-tag-border-color:var(--el-color-success-light-8);--el-tag-hover-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-bg-color:var(--el-color-warning-light-9);--el-tag-border-color:var(--el-color-warning-light-8);--el-tag-hover-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-bg-color:var(--el-color-danger-light-9);--el-tag-border-color:var(--el-color-danger-light-8);--el-tag-hover-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-bg-color:var(--el-color-error-light-9);--el-tag-border-color:var(--el-color-error-light-8);--el-tag-hover-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-bg-color:var(--el-color-info-light-9);--el-tag-border-color:var(--el-color-info-light-8);--el-tag-hover-color:var(--el-color-info)}.el-tag.is-hit{border-color:var(--el-color-primary)}.el-tag.is-round{border-radius:var(--el-tag-border-radius-rounded)}.el-tag .el-tag__close{color:var(--el-tag-text-color);flex-shrink:0}.el-tag .el-tag__close:hover{background-color:var(--el-tag-hover-color);color:var(--el-color-white)}.el-tag.el-tag--primary{--el-tag-text-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-text-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-text-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-text-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-text-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-text-color:var(--el-color-info)}.el-tag .el-icon{border-radius:50%;cursor:pointer;font-size:calc(var(--el-icon-size) - 2px);height:var(--el-icon-size);width:var(--el-icon-size)}.el-tag .el-tag__close{margin-left:6px}.el-tag--dark{--el-tag-text-color:var(--el-color-white)}.el-tag--dark,.el-tag--dark.el-tag--primary{--el-tag-bg-color:var(--el-color-primary);--el-tag-border-color:var(--el-color-primary);--el-tag-hover-color:var(--el-color-primary-light-3)}.el-tag--dark.el-tag--success{--el-tag-bg-color:var(--el-color-success);--el-tag-border-color:var(--el-color-success);--el-tag-hover-color:var(--el-color-success-light-3)}.el-tag--dark.el-tag--warning{--el-tag-bg-color:var(--el-color-warning);--el-tag-border-color:var(--el-color-warning);--el-tag-hover-color:var(--el-color-warning-light-3)}.el-tag--dark.el-tag--danger{--el-tag-bg-color:var(--el-color-danger);--el-tag-border-color:var(--el-color-danger);--el-tag-hover-color:var(--el-color-danger-light-3)}.el-tag--dark.el-tag--error{--el-tag-bg-color:var(--el-color-error);--el-tag-border-color:var(--el-color-error);--el-tag-hover-color:var(--el-color-error-light-3)}.el-tag--dark.el-tag--info{--el-tag-bg-color:var(--el-color-info);--el-tag-border-color:var(--el-color-info);--el-tag-hover-color:var(--el-color-info-light-3)}.el-tag--dark.el-tag--danger,.el-tag--dark.el-tag--error,.el-tag--dark.el-tag--info,.el-tag--dark.el-tag--primary,.el-tag--dark.el-tag--success,.el-tag--dark.el-tag--warning{--el-tag-text-color:var(--el-color-white)}.el-tag--plain,.el-tag--plain.el-tag--primary{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-primary-light-5);--el-tag-hover-color:var(--el-color-primary)}.el-tag--plain.el-tag--success{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-success-light-5);--el-tag-hover-color:var(--el-color-success)}.el-tag--plain.el-tag--warning{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-warning-light-5);--el-tag-hover-color:var(--el-color-warning)}.el-tag--plain.el-tag--danger{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-danger-light-5);--el-tag-hover-color:var(--el-color-danger)}.el-tag--plain.el-tag--error{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-error-light-5);--el-tag-hover-color:var(--el-color-error)}.el-tag--plain.el-tag--info{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-info-light-5);--el-tag-hover-color:var(--el-color-info)}.el-tag.is-closable{padding-right:5px}.el-tag--large{height:32px;padding:0 11px;--el-icon-size:16px}.el-tag--large .el-tag__close{margin-left:8px}.el-tag--large.is-closable{padding-right:7px}.el-tag--small{height:20px;padding:0 7px;--el-icon-size:12px}.el-tag--small .el-tag__close{margin-left:4px}.el-tag--small.is-closable{padding-right:3px}.el-tag--small .el-icon-close{transform:scale(.8)}.el-tag.el-tag--primary.is-hit{border-color:var(--el-color-primary)}.el-tag.el-tag--success.is-hit{border-color:var(--el-color-success)}.el-tag.el-tag--warning.is-hit{border-color:var(--el-color-warning)}.el-tag.el-tag--danger.is-hit{border-color:var(--el-color-danger)}.el-tag.el-tag--error.is-hit{border-color:var(--el-color-error)}.el-tag.el-tag--info.is-hit{border-color:var(--el-color-info)}.el-select-dropdown.is-multiple .el-select-dropdown__item.is-selected:after{background-color:var(--el-color-primary);background-position:50%;background-repeat:no-repeat;border-right:none;border-top:none;content:"";height:12px;-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;mask-size:100% 100%;-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;-webkit-mask-size:100% 100%;position:absolute;right:20px;top:50%;transform:translateY(-50%);width:12px}.el-select-dropdown{border-radius:var(--el-border-radius-base);box-sizing:border-box;z-index:calc(var(--el-index-top) + 1)}.el-select-dropdown .el-scrollbar.is-empty .el-select-dropdown__list{padding:0}.el-select-dropdown__empty,.el-select-dropdown__loading{color:var(--el-text-color-secondary);font-size:var(--el-select-font-size);margin:0;padding:10px 0;text-align:center}.el-select-dropdown__wrap{max-height:274px}.el-select-dropdown__list{box-sizing:border-box;list-style:none;margin:0;padding:6px 0}.el-select-dropdown__list.el-vl__window{margin:6px 0;padding:0}.el-select-dropdown__header{border-bottom:1px solid var(--el-border-color-light);padding:10px}.el-select-dropdown__footer{border-top:1px solid var(--el-border-color-light);padding:10px}.el-select-dropdown__item{box-sizing:border-box;color:var(--el-text-color-regular);cursor:pointer;font-size:var(--el-font-size-base);height:34px;line-height:34px;overflow:hidden;padding:0 32px 0 20px;position:relative;text-overflow:ellipsis;white-space:nowrap}.el-select-dropdown__item.is-hovering{background-color:var(--el-fill-color-light)}.el-select-dropdown__item.is-selected{color:var(--el-color-primary);font-weight:700}.el-select-dropdown__item.is-disabled{background-color:unset;color:var(--el-text-color-placeholder);cursor:not-allowed}.el-select-dropdown.is-multiple .el-select-dropdown__item.is-selected:after{background-color:var(--el-color-primary);background-position:50%;background-repeat:no-repeat;border-right:none;border-top:none;content:"";height:12px;-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;mask-size:100% 100%;-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;-webkit-mask-size:100% 100%;position:absolute;right:20px;top:50%;transform:translateY(-50%);width:12px}.el-select-dropdown.is-multiple .el-select-dropdown__item.is-disabled:after{background-color:var(--el-text-color-placeholder)}.el-select-group{margin:0;padding:0}.el-select-group__wrap{list-style:none;margin:0;padding:0;position:relative}.el-select-group__title{box-sizing:border-box;color:var(--el-color-info);font-size:12px;line-height:34px;overflow:hidden;padding:0 20px;text-overflow:ellipsis;white-space:nowrap}.el-select-group .el-select-dropdown__item{padding-left:20px}.el-select{--el-select-border-color-hover:var(--el-border-color-hover);--el-select-disabled-color:var(--el-disabled-text-color);--el-select-disabled-border:var(--el-disabled-border-color);--el-select-font-size:var(--el-font-size-base);--el-select-close-hover-color:var(--el-text-color-secondary);--el-select-input-color:var(--el-text-color-placeholder);--el-select-multiple-input-color:var(--el-text-color-regular);--el-select-input-focus-border-color:var(--el-color-primary);--el-select-input-font-size:14px;--el-select-width:100%;display:inline-block;position:relative;vertical-align:middle;width:var(--el-select-width)}.el-select__wrapper{align-items:center;background-color:var(--el-fill-color-blank);border-radius:var(--el-border-radius-base);box-shadow:0 0 0 1px var(--el-border-color) inset;box-sizing:border-box;cursor:pointer;display:flex;font-size:14px;gap:6px;line-height:24px;min-height:32px;padding:4px 12px;position:relative;text-align:left;transform:translateZ(0);transition:var(--el-transition-duration)}.el-select__wrapper.is-filterable{cursor:text}.el-select__wrapper.is-focused{box-shadow:0 0 0 1px var(--el-color-primary) inset}.el-select__wrapper.is-hovering:not(.is-focused){box-shadow:0 0 0 1px var(--el-border-color-hover) inset}.el-select__wrapper.is-disabled{background-color:var(--el-fill-color-light);color:var(--el-text-color-placeholder);cursor:not-allowed}.el-select__wrapper.is-disabled,.el-select__wrapper.is-disabled:hover{box-shadow:0 0 0 1px var(--el-select-disabled-border) inset}.el-select__wrapper.is-disabled.is-focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-select__wrapper.is-disabled .el-select__selected-item{color:var(--el-select-disabled-color)}.el-select__wrapper.is-disabled .el-select__caret,.el-select__wrapper.is-disabled .el-tag,.el-select__wrapper.is-disabled input{cursor:not-allowed}.el-select__prefix,.el-select__suffix{align-items:center;color:var(--el-input-icon-color,var(--el-text-color-placeholder));display:flex;flex-shrink:0;gap:6px}.el-select__caret{color:var(--el-select-input-color);cursor:pointer;font-size:var(--el-select-input-font-size);transform:rotate(0);transition:var(--el-transition-duration)}.el-select__caret.is-reverse{transform:rotate(180deg)}.el-select__clear{cursor:pointer}.el-select__clear:hover{color:var(--el-select-close-hover-color)}.el-select__selection{align-items:center;display:flex;flex:1;flex-wrap:wrap;gap:6px;min-width:0;position:relative}.el-select__selection.is-near{margin-left:-8px}.el-select__selection .el-tag{border-color:transparent;cursor:pointer}.el-select__selection .el-tag.el-tag--plain{border-color:var(--el-tag-border-color)}.el-select__selection .el-tag .el-tag__content{min-width:0}.el-select__selected-item{display:flex;flex-wrap:wrap;-webkit-user-select:none;user-select:none}.el-select__tags-text{line-height:normal}.el-select__placeholder,.el-select__tags-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-select__placeholder{color:var(--el-input-text-color,var(--el-text-color-regular));position:absolute;top:50%;transform:translateY(-50%);width:100%;z-index:-1}.el-select__placeholder.is-transparent{color:var(--el-text-color-placeholder);-webkit-user-select:none;user-select:none}.el-select__popper.el-popper{background:var(--el-bg-color-overlay);box-shadow:var(--el-box-shadow-light)}.el-select__popper.el-popper,.el-select__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-select__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-left-color:transparent;border-top-color:transparent}.el-select__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent;border-right-color:transparent}.el-select__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:transparent;border-left-color:transparent}.el-select__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent;border-top-color:transparent}.el-select__input-wrapper{flex:1}.el-select__input-wrapper.is-hidden{opacity:0;position:absolute;z-index:-1}.el-select__input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:none;color:var(--el-select-multiple-input-color);font-family:inherit;font-size:inherit;height:24px;outline:none;padding:0;width:100%}.el-select__input.is-disabled{cursor:not-allowed}.el-select__input-calculator{left:0;max-width:100%;overflow:hidden;position:absolute;top:0;visibility:hidden;white-space:pre}.el-select--large .el-select__wrapper{font-size:14px;gap:6px;line-height:24px;min-height:40px;padding:8px 16px}.el-select--large .el-select__selection{gap:6px}.el-select--large .el-select__selection.is-near{margin-left:-8px}.el-select--large .el-select__prefix,.el-select--large .el-select__suffix{gap:6px}.el-select--large .el-select__input{height:24px}.el-select--small .el-select__wrapper{font-size:12px;gap:4px;line-height:20px;min-height:24px;padding:2px 8px}.el-select--small .el-select__selection{gap:4px}.el-select--small .el-select__selection.is-near{margin-left:-6px}.el-select--small .el-select__prefix,.el-select--small .el-select__suffix{gap:4px}.el-select--small .el-select__input{height:20px}:root{--el-popup-modal-bg-color:var(--el-color-black);--el-popup-modal-opacity:.5}.v-modal-enter{animation:v-modal-in var(--el-transition-duration-fast) ease}.v-modal-leave{animation:v-modal-out var(--el-transition-duration-fast) ease forwards}@keyframes v-modal-in{0%{opacity:0}}@keyframes v-modal-out{to{opacity:0}}.v-modal{background:var(--el-popup-modal-bg-color);height:100%;left:0;opacity:var(--el-popup-modal-opacity);position:fixed;top:0;width:100%}.el-popup-parent--hidden{overflow:hidden}.el-dialog{--el-dialog-width:50%;--el-dialog-margin-top:15vh;--el-dialog-bg-color:var(--el-bg-color);--el-dialog-box-shadow:var(--el-box-shadow);--el-dialog-title-font-size:var(--el-font-size-large);--el-dialog-content-font-size:14px;--el-dialog-font-line-height:var(--el-font-line-height-primary);--el-dialog-padding-primary:16px;--el-dialog-border-radius:var(--el-border-radius-base);background:var(--el-dialog-bg-color);border-radius:var(--el-dialog-border-radius);box-shadow:var(--el-dialog-box-shadow);box-sizing:border-box;margin:var(--el-dialog-margin-top,15vh) auto 50px;overflow-wrap:break-word;padding:var(--el-dialog-padding-primary);position:relative;width:var(--el-dialog-width,50%)}.el-dialog:focus{outline:none!important}.el-dialog.is-align-center{margin:auto}.el-dialog.is-fullscreen{--el-dialog-width:100%;--el-dialog-margin-top:0;border-radius:0;height:100%;margin-bottom:0;overflow:auto}.el-dialog__wrapper{bottom:0;left:0;margin:0;overflow:auto;position:fixed;right:0;top:0}.el-dialog.is-draggable .el-dialog__header{cursor:move;-webkit-user-select:none;user-select:none}.el-dialog__header{padding-bottom:var(--el-dialog-padding-primary)}.el-dialog__header.show-close{padding-right:calc(var(--el-dialog-padding-primary) + var(--el-message-close-size, 16px))}.el-dialog__headerbtn{background:transparent;border:none;cursor:pointer;font-size:var(--el-message-close-size,16px);height:48px;outline:none;padding:0;position:absolute;right:0;top:0;width:48px}.el-dialog__headerbtn .el-dialog__close{color:var(--el-color-info);font-size:inherit}.el-dialog__headerbtn:focus .el-dialog__close,.el-dialog__headerbtn:hover .el-dialog__close{color:var(--el-color-primary)}.el-dialog__title{color:var(--el-text-color-primary);font-size:var(--el-dialog-title-font-size);line-height:var(--el-dialog-font-line-height)}.el-dialog__body{color:var(--el-text-color-regular);font-size:var(--el-dialog-content-font-size)}.el-dialog__footer{box-sizing:border-box;padding-top:var(--el-dialog-padding-primary);text-align:right}.el-dialog--center{text-align:center}.el-dialog--center .el-dialog__body{text-align:initial}.el-dialog--center .el-dialog__footer{text-align:inherit}.el-overlay-dialog{bottom:0;left:0;overflow:auto;position:fixed;right:0;top:0}.dialog-fade-enter-active{animation:modal-fade-in var(--el-transition-duration)}.dialog-fade-enter-active .el-overlay-dialog{animation:dialog-fade-in var(--el-transition-duration)}.dialog-fade-leave-active{animation:modal-fade-out var(--el-transition-duration)}.dialog-fade-leave-active .el-overlay-dialog{animation:dialog-fade-out var(--el-transition-duration)}@keyframes dialog-fade-in{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes dialog-fade-out{0%{opacity:1;transform:translateZ(0)}to{opacity:0;transform:translate3d(0,-20px,0)}}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-fade-out{0%{opacity:1}to{opacity:0}}.el-overlay{background-color:var(--el-overlay-color-lighter);bottom:0;height:100%;left:0;overflow:auto;position:fixed;right:0;top:0;z-index:2000}.el-overlay .el-overlay-root{height:0} diff --git a/web/admin-spa/dist/assets/fa-brands-400-D1LuMI3I.ttf b/web/admin-spa/dist/assets/fa-brands-400-D1LuMI3I.ttf new file mode 100644 index 0000000000000000000000000000000000000000..0f82a8360517d2c8b7d16e85434d40c6fb735954 GIT binary patch literal 210792 zcmd4437DKkwfJ52_P%#d?>$>j_ssN6W+s`Qt&@;t2#F*RAj-ZdK}3-?YLLhx!zSp} zOHdY3#Hh&iDk>r>D(YNCL`CI#@# z-rDQbsZ*y;oqD6RQYxq>luH$lJAT>FnLA!}sZzR!(5+`*c-FQrw;XjC3H(YW-~74@ z-tyYDH*9`hscyG&_NC4}=d9QCeY$WDY3~Kb&LzNog8NAP&j6k0UbuaS_XvN0@@`bh zKXJjuXP@PKwdFpgS|@nF?!vQnY;!ibUrs#btKvmxU3kuCKKJZZ%GI1x%H6u{;x}#o z$nVQrl&gKYQn{sywz_;C^@Gb!*>PrU)jkz+$fnevypyM;$D=0Toq0I5-#!Mi`;SQ zlyC#{bB=AtyeWTT{x8%Oc5Hsfzw!FJ)Z0wi zj;U+Xv_rzAY%k!Kbk5aEoB9bSZlSM@JSL6JBlr)>`%8h8Ys%h3yg)r2n3;AG=QioaP1ynBZ1}c%U8YW3hl!&e(l<5A zYoy1G>EG1bK)uxCC(N{W!5vpV^0h6h?_i @@Z|Lo2o%N8V+8O&i2d+$8BHR07ve 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 z

    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